应用层
第六层_应用层
6.1 网络应用模型
6.1.1 C/S 模型

6.1.2 P2P 模型

6.2 域名系统(DNS)
6.2.1 DNS 概述
DNS(Domain Name System)的基本概念不过多做解释,值得注意的是,主机最开始得知 DNS 服务器的地址一般通过 DHCP 协议进行动态配置。
DNS 的基本特点如图所示:

6.2.2 DNS 层次域名空间
DNS 域名具有层次书写的规则,如下图所示:
注意: 没有一级域名,口头上说的一级域名通常是顶级域名
这种层次划分方式也方便了进行管理,其划分与管理规则如下图所示:
关于顶级域名的分类如下图所示:

6.2.3 DNS 域名服务器,域名解析过程
四种域名服务器相互配合完成域名解析,四种域名服务器介绍如下图所示:
本地域名服务器就是 DHCP 默认会分配的 DNS 服务器地址。
而对于域名解析过程,通常主机会先向本地域名服务器发起请求。若没有命中缓存,本地域名服务器则会向其他域名服务器发送请求。
有两种查询方式,即 递归查询 和 迭代查询:
- 主机向本地域名服务器的查询都采用递归查询。
- 本地域名服务器向其它域名服务器的查询能采用递归查询或迭代查询。
如图所示:
用两道真题来熟悉:

6.3 FTP 协议
文件传输协议(File Transfer Protocol,FTP)是互联网上使用最广泛的文件传输协议。FTP 采用客户 / 服务器工作模式,基于 TCP 提供可靠的传输服务。适用于在异构网络中的任意两台计算机之间可靠地传送文件。
服务器进程由两部分组成:一个主进程,负责接收新请求;另外有若干从属进程,分别处理单个客户的请求。其工作步骤如下:
- 打开熟知端口 21(控制端口),供客户进程连接。
- 等待客户进程发起连接请求。
- 启动从属进程处理该请求,处理完毕后从属进程终止。
- 主进程返回等待状态,继续接收其他客户请求。主进程与从属进程并发执行。
FTP 在工作时使用两个并行的 TCP 连接:控制连接(服务器端口 21) 和 数据连接(服务器端口 20)。采用两个独立端口有助于协议的清晰实现。其控制信息属于带外传送(就是控制信息不用数据连接传送)。 其中,数据连接支持两种传输模式:主动模式(PORT)和被动模式(PASV):
- 主动模式(PORT):
客户端首先连接服务器的 21 号端口,并完成登录。需要传输数据时,客户端随机选择一个本地端口,并通过 PORT 命令将该端口号告知服务器。随后,服务器通过 20 号端口主动连接到客户端指定的端口以传输数据。
如图所示:

- 被动模式(PASV):
客户端登录后发送 PASV 命令。服务器收到后,在本地随机开放一个端口,并通过控制连接将该端口号返回给客户端。客户端再主动连接到该端口以传输数据。
两种模式的区别在于:是服务器主动连接客户端(主动模式)还是服务器被动响应客户端的连接(被动模式),由客户端决定。
最后通过登出即可,如图所示:
关于 FTP 的一些拓展如下图所示:

6.4 电子邮件
本小节内容总览如下图所示:
SMTP:简单邮件传输协议(Simple Mail Transfer Protocol)—— 用于实现发邮件。
POP3:邮局协议(Post Office Protocol v3)—— 用于实现接收邮件。
MIME:多用途因特网邮件扩展(Multipurpose Internet Mail Extensions)—— 不是协议,只是格式规范(描述邮件内容长什么样,如何编码)。
现代浏览器向邮件服务器发送邮件常用 http / https,作为 1980s 诞生的 SMTP 与 POP3 协议虽然有了更优的替代品,但仍然被广泛使用。
电子邮件系统主要有三大组成结构:
- 用户代理
- 邮件服务器
- 电子邮件协议
如图所示:

电子邮件格式主要由 信封 + 内容 组成,而内容主要由 首部 + 主体组成。
如图所示:

MIME:
而由于 SMTP 的局限性,导致邮件内容仅支持纯英文。为了解决这个问题,MIME 应运而生,其内容如图所示:
注意:MIME 不是协议,只是规范(描述邮件内容长什么样子,怎么编码)。

SMTP 与 POP3:
整个邮件的传输过程如下图所示:
注意:SMTP 用于发送邮件,而 POP3 用于收取邮件

6.5 万维网WWW
本小节内容总览如下图所示:
关于访问一个网站的步骤,如图所示:
值得注意的是采用的三种 http 协议的工作方式,有很多细小的坑,如图所示:
非持续连接:
持续连接,非流水线:
持续连接,流水线:

6.6 超文本传输协议 HTTP
那几个月天天看,我已经很熟悉了,HTTP 报文格式如下:
以一个真题来熟悉:

附言
计网收官!!