传输层协议与典型网络应用
掌握端口与 UDP、TCP 的区别,会推算 TCP 三次握手和数据传送中的序号与确认号,理解滑动窗口、流量控制和拥塞控制并会推算拥塞窗口;熟悉 DNS、HTTP、电子邮件、FTP、DHCP 等典型应用。
本节导读
这一节对应大纲「Internet 的体系结构和各层协议」中的传输层,以及「典型网络应用」。传输层把网络层「主机到主机」的通信,扩展为「进程到进程」的通信;应用层则是我们每天用到的域名解析、网页浏览、电子邮件和文件传送。
常见的考法:TCP 连接建立和数据传送中的序号、确认号推算;拥塞窗口随传输轮次的变化;按窗口和往返时间估算最大吞吐量;以及 DNS 查询过程、各应用使用的协议和端口这类名词解释与简答。学完你应该能画出三次握手的报文交换,并能逐轮推出拥塞窗口的值。
端口与 UDP
传输层用 16 位端口号区分同一主机上的不同进程,IP 地址加端口号叫套接字。0 到 1023 是熟知端口:
| 应用 | 协议 | 端口 | 传输层协议 |
|---|---|---|---|
| 文件传送 | FTP | 21(控制)、20(数据) | TCP |
| 远程登录 | Telnet / SSH | 23 / 22 | TCP |
| 发送电子邮件 | SMTP | 25 | TCP |
| 域名解析 | DNS | 53 | 主要用 UDP |
| 网页浏览 | HTTP / HTTPS | 80 / 443 | TCP |
| 读取电子邮件 | POP3 / IMAP | 110 / 143 | TCP |
| 动态主机配置 | DHCP | 67(服务器)、68(客户) | UDP |
UDP 是无连接、不可靠的:首部只有 8 字节(源端口、目的端口、长度、检验和),不保证交付、没有流量控制和拥塞控制,面向报文、支持广播和多播。它开销小、时延低,适合域名查询、网络管理、实时音视频这类应用。
TCP 报文段与连接管理
TCP 面向连接、可靠、全双工,把应用层数据看成无结构的字节流。首部至少 20 字节,主要字段:序号(本报文段数据第一个字节的编号)、确认号(期望收到对方下一个字节的编号)、首部长度、六个控制位(URG、ACK、PSH、RST、SYN、FIN)、窗口、检验和、紧急指针。
建立连接用三次握手:客户发送 SYN,序号 x;服务器回送 SYN 和 ACK,序号 y、确认号 x + 1;客户再发 ACK,序号 x + 1、确认号 y + 1。SYN 报文段不带数据,但要消耗一个序号。释放连接用四次挥手:一方发 FIN,对方确认;对方数据发完后也发 FIN,这一方再确认。主动关闭的一方发出最后的确认后要等待 2MSL(报文段最长寿命的两倍)才真正关闭,一是保证最后的确认能到达(丢了还能重发),二是让本连接的旧报文段在网络中消失。
可靠传输与流量控制
最简单的可靠传输是停止等待协议:发一个、等确认、再发下一个,超时就重传。它的信道利用率很低,例如发送时间 1 ms、往返时间 20 ms,利用率只有 1+201≈4.8%。连续 ARQ 允许连续发送窗口内的多个分组:回退 N 帧协议出错时从出错处起全部重传,发送窗口不能超过 2n−1(n 是序号位数);选择重传协议只重传出错的分组,发送窗口和接收窗口都不能超过 2n−1。
TCP 用以字节为单位的滑动窗口实现可靠传输和流量控制:接收方在确认中通告接收窗口 rwnd,发送窗口取接收窗口和拥塞窗口 cwnd 中较小的一个。接收方通告零窗口时,发送方启动持续计时器,定期发零窗口探测报文。一条 TCP 连接的最大吞吐量约为「发送窗口 ÷ 往返时间」。
拥塞控制
TCP 用四种算法控制拥塞窗口(以最大报文段长度 MSS 为单位):
| 算法 | 做法 |
|---|---|
| 慢开始 | cwnd 从 1 开始,每经过一个传输轮次翻一倍,直到达到慢开始门限 ssthresh |
| 拥塞避免 | cwnd 达到 ssthresh 后,每经过一个传输轮次只加 1 |
| 超时 | ssthresh 改为当前 cwnd 的一半,cwnd 回到 1,重新慢开始 |
| 快重传与快恢复 | 连收 3 个重复确认就立即重传;ssthresh 改为 cwnd 的一半,cwnd 设为新的 ssthresh,接着执行拥塞避免 |
快恢复时 cwnd 的取值教材写法不一:本课按「cwnd = ssthresh」写,有的教材写成 ssthresh + 3,以题目说明为准。「慢开始」的「慢」是指从 1 开始,增长其实是指数级的。
典型网络应用
域名系统 DNS 把域名解析为 IP 地址。域名服务器分为根域名服务器、顶层域名服务器、权限域名服务器,主机先问本地域名服务器。主机向本地域名服务器一般用递归查询(由本地服务器负责给出最终结果);本地域名服务器向其他服务器一般用迭代查询(对方只告诉下一步该问谁)。为了减少查询,各级服务器和主机都有缓存。常见的资源记录有 A(域名对应的 IPv4 地址)、NS(域名服务器)、CNAME(别名)、MX(邮件服务器)。
本节后面还有约 1628 字:报名学员看全文
每门课前 10 节免费看全文;从第 11 节起,完整教程要报名后由顾问在后台为你的账号开通才能看。
题库账号可以直接登录,但第 11 节起的完整教程要报名后由后台开通才能看。
学完练一练
按本节考点从本课的课后练习里抽题(每次 10 道以内),做完看解析、错题自动进错题本。第 11 节起的课后练习报名学员才能练。
本节内容由 AI 辅助编写,配图由 AI 生成,仅供备考参考;考试要求以《全国各类成人高等学校招生考试大纲(2024 年版)》及浙江省教育考试院当年公布为准。