应用层

一、DNS域名系统

互联网采用层次结构的命名树作为主机的名字,并使用分布式的域名系统 DNS。

域名服务器程序在专设的结点上运行,运行该程序的机器称为域名服务器。

域名只是个逻辑概念,并不代表计算机所在的物理地点。

DNS 服务器的管辖范围不是以“域”为单位,而是以“区”为单位。一个服务器所负责管辖的(或有权限的)范围叫做区 (zone)

1.1常见的域名含义

(1) 国家顶级域名 nTLD

  • .cn 表示中国,
  • .us 表示美国,
  • .uk 表示英国,等等。

(2) 通用顶级域名 gTLD

最早的顶级域名是:

  • .com (公司和企业)
  • .net (网络服务机构
  • .org (非赢利性组织)
  • .edu (美国专用的教育机构)
  • .gov (美国专用的政府部门)
  • .mil (美国专用的军事部门)
  • .int (国际组织)

新增的通用顶级域名:

  • .aero (航空运输企业)
  • .biz (公司和企业)
  • .cat (加泰隆人的语言和文化团体)
  • .coop (合作团体)
  • .info (各种情况)
  • .jobs (人力资源管理者)
  • .mobi (移动产品与服务的用户和提供者)
  • .museum (博物馆)
  • .name (个人)
  • .pro (有证书的专业人员)
  • .travel (旅游业)

1.2域名解析过程

  • 主机向本地域名服务器的查询一般都是采用递归查询。如果主机所询问的本地域名服务器不知道被查询域名的 IP 地址,那么本地域名服务器就以 DNS 客户的身份,向其他根域名服务器继续发出查询请求报文。
  • 本地域名服务器向根域名服务器的查询通常是采用迭代查询。当根域名服务器收到本地域名服务器的迭代查询请求报文时,要么给出所要查询的 IP 地址,要么告诉本地域名服务器:“你下一步应当向哪一个域名服务器进行查询”。然后让本地域名服务器进行后续的查询。

二、FTP协议以及端口

文件传送协议 FTP (File Transfer Protocol) 是互联网上使用得最广泛的文件传送协议。 FTP 提供交互式的访问,允许客户指明文件的类型与格式,并允许文件具有存取权限

网络环境下复制文件的复杂性:

  • (1) 计算机存储数据的格式不同。
  • (2) 文件的目录结构和文件命名的规定不同。
  • (3) 对于相同的文件存取功能,操作系统使用的命令不同。
  • (4) 访问控制方法不同。

正是因为网络环境下复制文件的复杂性,因此就需要用到了FTP协议了。

2.1过程

  1. 打开熟知端口(端口号为 21),使客户进程能够连接上。
  2. 等待客户进程发出连接请求。
  3. 启动从属进程来处理客户进程发来的请求。从属进程对客户进程的请求处理完毕后即终止,但从属进程在运行期间根据需要还可能创建其他一些子进程。
  4. 回到等待状态,继续接受其他客户进程发来的请求。主进程与从属进程的处理是并发地进行。
  5. 当客户进程向服务器进程发出建立连接请求时,要寻找连接服务器进程的熟知端口 (21),同时还要告诉服务器进程自己的另一个端口号码,用于建立数据传送连接。
  6. 接着,服务器进程用自己传送数据的熟知端口 (20) 与客户进程所提供的端口号码建立数据传送连接。
  7. 由于 FTP 使用了两个不同的端口号,所以数据连接与控制连接不会发生混乱

FTP是使用了两个TCP连接的。好处:

  • 使协议更加简单和更容易实现。
  • 在传输文件时还可以利用控制连接(例如,客户发送请求终止传输)。

三、电子邮件协议SMTP、POP3、IMAP

  • 不要将邮件读取协议 POP 或 IMAP 与邮件传送协议 SMTP 弄混。
  • 发信人的用户代理向源邮件服务器发送邮件,以及源邮件服务器向目的邮件服务器发送邮件,都是使用 SMTP 协议。
  • 而 POP 协议或 IMAP 协议则是用户从目的邮件服务器上读取邮件所使用的协议。

四、DHCP

为了将软件协议做成通用的和便于移植,协议软件的编写者把协议软件参数化。这就使得在很多台计算机上使用同一个经过编译的二进制代码成为可能。 一台计算机和另一台计算机的区别,都可通过一些不同的参数来体现。 在软件协议运行之前,必须给每一个参数赋值。 在协议软件中给这些参数赋值的动作叫做协议配置。

互联网广泛使用的动态主机配置协议 DHCP (Dynamic Host Configuration Protocol) 提供了即插即用连网 (plug-and-play networking) 的机制。

并不是每个网络上都有 DHCP 服务器,这样会使 DHCP 服务器的数量太多。现在是每一个网络至少有一个 DHCP 中继代理,它配置了 DHCP 服务器的 IP 地址信息。

五、简单网络管理协议 SNMP

网络管理包括对硬件、软件和人力的使用、综合与协调,以便对网络资源进行监视、测试、配置、分析、评价和控制,这样就能以合理的价格满足网络的一些需求,如实时运行性能,服务质量等。网络管理常简称为网管。

含义:

  • 网络管理协议简称为网管协议。
  • 需要注意的是,并不是网管协议本身来管理网络。网管协议是管理程序和代理程序之间进行通信的规则。

CS模式:

  • 管理程序和代理程序按客户服务器方式工作。
  • 管理程序运行 SNMP 客户程序,向某个代理程序发出请求(或命令),代理程序运行 SNMP 服务器程序,返回响应(或执行某个动作)。

功能:

  • SNMP 最重要的指导思想就是要尽可能简单
  • SNMP 的基本功能包括监视网络性能、检测分析网络差错和配置网络设备等。

过程:

  • 整个系统必须有一个管理站
  • 管理进程和代理进程利用 SNMP 报文进行通信,而 SNMP 报文又使用 UDP 来传送。
  • 若网络元素使用的不是 SNMP 而是另一种网络管理协议,SNMP 协议就无法控制该网络元素。这时可使用委托代理 (proxy agent)。委托代理能提供如协议转换和过滤操作等功能对被管对象进行管理。
  • SNMP 定义了管理站和代理之间所交换的分组格式。所交换的分组包含各代理中的对象(变量)名及其状态(值)。
  • SNMP 负责读取和改变这些数值。

六、HTTP协议

HTTP协议我已经写过三篇了,详情可看:

最后

如果大家有更好的理解方式或者文章有错误的地方还请大家不吝在评论区留言,大家互相学习交流~~~

如果想看更多的原创技术文章,欢迎大家关注我的微信公众号:Java3y。Java技术群讨论:742919422。公众号还有海量的视频资源哦,关注即可免费领取。

可能感兴趣的链接:

  • 文章的目录导航(微信公众号端):https://zhongfucheng.bitcron.com/post/shou-ji/wen-zhang-dao-hang
  • 文章的目录导航(PC端):http://www.zhongfucheng.bitcron.com/post/shou-ji/pcduan-wen-zhang-dao-hang
  • 海量精美脑图:http://www.zhongfucheng.bitcron.com/post/shou-ji/nao-tu-da-quan

原文发布于微信公众号 - Java3y(java3y)

原文发表时间:2018-08-13

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏用户2442861的专栏

高并发服务端分布式系统设计概要(上)

http://www.cnblogs.com/ccdev/p/3338412.html

14130
来自专栏京东技术

99%的人都理解错了HTTP中GET与POST的区别

21420
来自专栏Java进阶干货

用Redis轻松实现秒杀系统

用上这三招,不论秒杀时负载多大,都能轻松应对。更好的是,Redis能够满足上述三点。因此,用Redis就能轻松实现秒杀系统。

58810
来自专栏花叔的专栏

喂喂,3块钱的小程序服务器还剩下一天了

今天义务提醒一下,腾讯云关于小程序两个月的体验活动快要结束了。 (怎么听起来像个广告) 不是广告啦!花3块钱,一台业务服务器+一台会话服务器+一台Mysql服务...

71680
来自专栏安恒信息

安恒紧急漏洞预警: ElasticSearch存在远程代码执行漏洞

ElasticSearch爆出远程代码漏洞(CVE-2015-1427),该漏洞可造成远程代码执行,允许攻击者利用漏洞提交特制的HTTP请求,以root权限执行...

41850
来自专栏HappenLee的技术杂谈

分布式系统的一致性算法------《Designing Data-Intensive Applications》读书笔记13

原子提交防止了数据库处于半更新的状态,这对于需要满足多对象事务和维护次级索引的数据库尤为重要。每个次级索引都是从主数据中分离出来的数据结构,因此,如果修改某些数...

10120
来自专栏数据和云

【全局出发,追根溯源】一则集群故障案例分析

作者简介: ? 董冰,混迹DBA圈子十余载的闲云野鹤,曾服务过政府行业、银行数据中心、互联网游戏上市公司,辗转蛰伏于中国铁塔,励志做一个社会主义的螺丝钉。 故...

36660
来自专栏腾讯Bugly的专栏

Android 插件技术实战总结

前言 安卓应用开发的大量难题,其实最后都需要插件技术去解决。 现今插件技术的使用非常普遍,比如微信、QQ、淘宝、天猫、空间、携程、大众点评、手机管家等等这些大家...

39260
来自专栏工科狗和生物喵

如何构建局域网极速云盘(速度神快)--局域网内共享文件详解

下面我来介绍一下。跟我上面所说的话完全无关的一个东西,局域网内共享文件夹的办法。~~另外我多说一句,我共享文件夹的共享方法只在windows下成功,mac下无论...

30220
来自专栏WeTest质量开放平台团队的专栏

https大势已来?看腾讯专家如何在高并发压测中支持https

用epoll编写一个高并发网络程序是很常见的任务,但在epoll中加入ssl层的支持则是一个不常见的场景。腾讯WeTest服务器压力测产品,在用户反馈中收到了不...

20730

扫码关注云+社区

领取腾讯云代金券