参考书籍:《计算机网络》第八版 谢希仁编著
- 点此链接可跳转到:计算机网络笔记整理——目录索引页
- 域名系统DNS
- 域名服务器
- 域名服务器的种类
- 域名的解析过程
- 递归查询
- 迭代查询
- 文件传送协议FTP
- 主进程的工作步骤
- 两个连接
- 万维网
- 统一资源定位符URL
- 超文本传送协议HTTP
- 访问响应时间
- 电子邮件
- 电子邮件使用的协议
- 简单邮件传送协议SMTP
- 邮件读取协议POP3和IMAP
- 通用互联网邮件扩充MIME
- 动态主机配置协议DHCP
应用层确定进程之间通信的性质
域名系统DNS域名:因特网上主机的名字;与IP地址对应。 域名系统DNS:是因特网使用的命名系统,用来把便于人们使用的域名(机器名字)转换为IP地址。
互联网采用层次结构的命名树作为主机的名字,并使用分布式的域名系统DNS
一个服务器所负责管辖的范围叫做区,每一个区设置相应的权限域名服务器,用来保存该区中的所有主机的域名到IP地址的映射。DNS服务器的管辖范围以“区”为单位。
- 根域名服务器 最高层次的域名服务器,也是最重要的域名服务器,所有的根域名服务器都知道所有的顶级域名服务器的域名和IP地址。 根域名服务器并不直接把域名转换成IP地址 在使用迭代查询时,根域名服务器把下一步应当找的顶级域名服务器的IP地址告诉本地域名服务器
- 顶级域名服务器 顶级域名服务器(即TLD服务器)负责管理在该顶级域名服务器注册的所有二级域名。 当收到DNS查询请求时,就给出相应的回答(可能是最后的结果,也可能是下一步应当找的域名服务器的IP地址)
- 权限域名服务器 负责一个区的域名服务器 当一个权限域名服务器不能给出最后的查询回答时,就会告诉发出查询请求的DNS客户,下一步应当找哪一个权限域名服务器。
- 本地域名服务器(又称为默认域名服务器) 当一个主机发出DNS查询请求时,这个请求报文就发送给本地域名服务器。每一个互联网服务提供ISP,或一个大学,甚至一个大学里的系,都可以拥有一个本地域名服务器,当所要查询的主机也属于同一个本地ISP时,该本地域名服务器立即就能将所查询的主机名转换为它的IP地址,而不需要再去询问其他的域名服务器。
主机向本地域名服务器的查询一般都是采用递归查询,如果主机所询问的本地域名服务器不知道被查询域名的IP地址,那么本地域名服务器就以DNS客户的身份,向其他根域名服务器继续发出查询请求报文
迭代查询本地域名服务器向根域名服务器的查询通常采用迭代查询,当根域名服务器收到本地域名服务器发出的迭代查询请求报文时,要么给出所要查询的IP地址,要么告诉本地域名服务器:“你下一步应当向哪一个域名服务器进行查询”。然后让本地域名服务器进行后续的查询
文件传送协议FTP是互联网上使用的最广泛的文件传送协议
FTP提供交互式的访问,允许客户指明文件的类型与格式,并允许文件具有存取权限
FTP屏蔽了个计算机系统的细节,因而适合于在异构网络中任意计算机之间传送文件。
FTP只提供文件传送的一些基本的服务,它使用TCP可靠的运输服务。FTP的主要功能是减少或消除在不同操作系统下处理文件的不兼容性
FTP使用客户服务器方式,一个FTP服务器进程可同时为多个客户进程提供服务。FTP的服务器进程由两大部分组成:一个主进程,负责接受新的请求;另外有若干个从属进程,负责处理单个请求
主进程的工作步骤- 打开熟知端口(端口号为21),使客户进程能够连接上
- 等待客户进程发出连接请求
- 启动从属进程来处理客户进程发来的请求。从属进程对客户进程的请求处理完毕后即终止
- 回到等待状态,继续接受其他客户进程发来的请求。主进程与从属进程的处理是并发地进行。
在进行文件传输时,FTP的客户和服务器之间要建立两个并行的TCP连接:“控制连接”和“数据连接”。
控制连接在整个会话期间一直保持打开,FTP客户端发出的传送请求通过控制连接发送给服务器端的控制进程,但控制连接不用来传送文件。
实际用于传输文件的是数据连接。服务器端的控制进程在接收到FTP客户发送来的文件传输请求后就创建数据传送进程和数据连接,用来连接客户端和服务器端的数据传送进程。数据传送进程实际完成文件的传送,在传送完毕后关闭“数据传送连接”并结束运行
FTP使用了一个分离的控制连接,因此FTP的控制信息是带外传送的
客户进程发起连接请求时要连接服务器进程的熟知端口(21),同时还要告诉服务器进程自己的另一个端口号码,用于建立数据传送连接。接着,服务器进程用自己传送数据的熟知端口(20),与客户进程所提供的的端口号建立数据传送连接。使用了两个不同的端口号,所以数据连接与控制连接不会发生混乱。
万维网万维网WWW(world Wide Web)并非某种特殊的计算机网络,而是一个大规模的、联机式的信息储藏所。
万维网以客户-服务器访视工作,浏览器就是客户程序,万维网文档所驻留的计算机则运行服务器程序,因此这个计算机也称为万维网服务器
统一资源定位符URL由以冒号隔开的两大部分组成,在URL中的字符对大小写没有要求
协议:指出使用何种协议来获取该万维网文档,必写 主机名:万维网文档所存放主机的域名,通常以www开头,也可用点分十进制IP地址代替。 :端口:端口号,通常就是协议默认端口号(如:HTTP默认端口号为80),可省略,如不使用默认端口则必须写明。 路径:有时也不需要使用
有些浏览器再输入URL时,可以把最前面的“http://”甚至把主机名最前面的“www”省略,由浏览器自动补全。
超文本传送协议HTTPHTTP是一个面向事务的应用层协议,它使用TCP连接进行可靠的传送 定义了浏览器与万维网服务器通信的格式和规则。
建立TCP连接需要使用三报文握手,当前两个报文完成后,万维网客户就把HTTP请求报文,作为三报文握手中的第三个报文的数据,发送给万维网服务器。
HTTP/1.0协议的主要缺点——非持续连接
HTTP/1.1协议使用持续连接 持续连接:万维网服务器在发送响应后仍然在一段时间内保持这条连接,不局限于传送同一页面上链接的文档,而是只要这些文档都在同一个服务器上就行 两种工作方式: 非流水线方式: 流水线方式:
HTTP/2协议 1.可以并行发回响应 2.允许客户复用TCP连接进行多个请求 3.所有报文划分为较小的二进制编码帧,采用新的压缩算法,不发送重复首部字段,减小了首部开销,提高了传输效率 4.向后兼容
电子邮件电子邮件把邮件发送到收件人使用的邮件服务器,并放在其中的收件人的邮箱中,收件人可随时上网到自己使用的邮件服务器进行读取。
简单邮件传送协议:SMTP,由于SMTP只能传送可打印的7位ASCII码邮件,在1996年又发布了通用互联网邮件扩充协议MIME
一个电子邮件系统应具有下图中的三个主要组成构件:用户代理、邮件服务、以及邮件发送协议和邮件读取协议
- 用户代理UA:用户与电子邮件系统的接口,大多数情况下它就是运行在用户计算机中的一个程序。因此用户代理又称为电子邮件客户端软件。 用户代理的功能: 撰写:给用户提供编辑信件的环境 显示:能方便地在计算机屏幕上显示邮件内容 处理:包括发送、接受、转发、删除等 通信:发信人写完邮件后,要利用邮件发送协议将邮件发送到用户所使用的邮件服务器。收件人在接收邮件时,要使用邮件读取协议从本地邮件服务器接收邮件。
- 邮件服务器:邮件服务器的功能是发送和接受邮件,同时还要向发信人报告邮件传送的情况。 邮件服务器按照客户-服务器方式工作。邮件服务器需要使用两个不同的协议。 SMTP:用于发送邮件 邮局协议POP:用于用户代理UA接收邮件
SMTP和POP3都是使用TCP连接来传送邮件的,目的是为了保证可靠地传送邮件。
电子邮件由信封和内容两部分组成,在邮件的信封上,最重要的就是收件人的地址。
电子邮件使用的协议简单邮件传送协议:SMTP 通用因特网扩充协议:MIME 邮局协议:POP 因特网报文存取协议:IMAP
简单邮件传送协议SMTPSMTP所规定的就是在两个相互通信的SMTP进程之间应如何交换信息
SMTP使用客户服务器方式,因此,负责发送邮件的SMTP进程就是SMTP的客户,而负责接受邮件的SMTP进程就是SMTP服务器。
SMTP通信的三个阶段
- 连接建立:SMTP客户每隔一定时间(如30分钟)对邮件缓存扫描一次。如发现有邮件,就是用SMTP的熟知端口25与接收方邮件服务器的SMTP服务器建立TCP连接。SMTP不使用中间的邮件服务器。
- 邮件传送
- 连接释放:邮件发送完毕后,SMTP应释放TCP连接
POP也使用客户-服务器的工作方式 接受邮件的用户PC机中运行POP客户程序 在用户所连接的ISP的邮件服务器中运行POP服务器程序
IMAP也是客户服务器的工作方式 用户在自己的PC机上就可以操纵ISP的邮件服务器的邮箱,就像在本地操作一样 IMAP是一个联机协议
通用互联网邮件扩充MIMEMIME并没有改动SMTP或取代他,但增加了邮件主体的结构,并定义了非ASCII码的编码规则
base64编码 先把二进制代码划分为一个个24位长的单元,然后把每一个24位单元划分为4个6位组。每一个6位组按以下方法转换成ASCII码 6位二进制共有64种取值,从0到63.用A表示0,用B表示1,以此类推,等26个大写字母排列完毕后,,再排26个小写字母,再后面是10个数字,最后用“+”表示62,用“/”表示63。再用两个连在一起的等号“==”和一个等号“=”分别表示最后一组的代码只有8位或16位。
因特网上的主机需要配置的项目:
- IP地址
- 子网掩码
- 默认路由器的IP地址
- 域名服务器的IP地址
互联网广泛使用的动态主机配置协议DHCP提供了即插即用连网的机制 这种机制允许一台计算机加入新的网络和获取IP地址而不用手工参与
- 需要IP地址的主机在启动时就向DHCP服务器广播发送发现报文,这时该主机就成为DHCP客户
- 本地网络上所有主机都能收到此广播报文,但只有DHCP服务器才回答此广播报文
- DHCP服务器现在其数据库中查找该计算机的配置信息。若找到,则返回找到的信息。若找不到,则从服务器的IP地址池中取一个地址分配给该计算机。DHCP服务器的回答报文叫做提供报文。
租用期:DHCP服务器分配给DHCP客户的IP地址是临时的,DHCP客户只能在一段时间内使用这个IP地址,DHCP称这段时间为租用期。租用期的数值由DHCP服务器自己决定,DHCP客户也可在自己发送的报文中提出对租用期的要求。
DHCP协议的工作过程:
- DHCP服务器被动打开UDP端口67,等待客户端发来的报文
- DHCP客户从UDP端口68发送DHCP发现报文
- 凡受到DHCP发现报文的DHCP服务器都发出DHCP提供报文,因此在DHCP客户可能收到多个DHCP提供报文
- DHCP客户从几个DHCP服务器中选择其中的一个,并向所选择的DHCP服务器发送DHCP请求报文
- 被选择的DHCP服务器发送确认报文,进入已绑定状态,并可开始使用得到的临时IP地址了 DHCP客户现在要根据服务器提供的租用期T设置两个计时器T1和T2,它们的超时时间分别是0.5T和0.875T。当超时时间到就要请求更新租用期。
- 租用期过了一半(T1时间到),DHCP发送请求报文要求更新租用期
- DHCP服务器若同意,则发回确认报文。DHCP客户得到了新的租用期,重新设置计时器。
- DHCP服务器若不同意,则发回否认报文。这时DHCP客户立即停止使用原来的IP地址,而必须重新申请IP地址,若DHCP服务器不响应步骤6的请求报文,则在租用期过了87.5%时,DHCP客户必须重新发送请求报文(重复步骤6),继续后面的步骤
- DHCP客户可随时提前终止服务器所提供的租用期,这时只需向DHCP服务器发送释放报文即可