【408计网笔记】传输层与应用层高频考点:TCP/UDP特性、端口映射与交互逻辑


在 408 计算机网络的复习中,传输层和应用层是各种选择题和大题的"重灾区"。今天整理了自己在复习过程中的手写笔记,重点串联了 TCP/UDP 的核心差异、常见协议的端口映射,以及最经典的 TCP 三次握手/四次挥手机制。


一、 核心概念:网络层 vs 传输层

很多同学在初期容易混淆这两层的定位,一句话总结:

  • 网络层: 负责主机与主机之间的通信。
  • 传输层: 负责进程与进程(端到端)之间的通信。

传输层的差错检测策略差异

传输层在遇到数据出错时,两种核心协议的处理方式截然不同,这也决定了它们的应用场景:

  • TCP: 出错 →\rightarrow→ 重传(保证可靠交付)。
  • UDP: 出错 →\rightarrow→ 丢弃 (不保证可靠交付,但实时性高,具备复用、分用和差错检测的基础功能)。

二、 记忆阵地:端口号划分与应用层协议映射

这是 408 选择题的"必争之地",必须刻在脑子里。

1. 端口号的范围划分

  • 熟知端口: 0∼10230 \sim 10230∼1023(系统保留给重要应用)
  • 登记端口: 1024∼491511024 \sim 491511024∼49151
  • 短暂端口(动态端口): 49152∼6553549152 \sim 6553549152∼65535(客户端经常使用的临时端口)

2. 高频协议与端口号映射

我将常考的协议按照其底层的传输层协议进行了分类:

应用层协议 常用端口号 底层支撑协议 核心功能速记
FTP 21 TCP 文件传输(可靠性要求高)
TELNET 23 TCP 远程登录
SMTP 25 TCP 电子邮件发送
HTTP 80 TCP 万维网超文本传输
HTTPS 443 TCP 安全超文本传输
DNS 53 UDP 域名解析(追求响应速度)
TFTP 69 UDP 简单文件传输
SNMP 161 UDP 简单网络管理
RIP 520 (补充) UDP 路由信息协议
DHCP 67/68 (补充) UDP 动态主机配置

三、 TCP 首部核心字段拆解

TCP 之所以能做到可靠传输,全靠它复杂的首部设计。笔记中提取了以下几个最关键的字段:

  • 序号 (seq):标记当前发送的数据字节流位置。
  • 确认号 (ack)累计确认机制的核心!表示期望收到对方下一个报文段的第一个数据字节的序号。
  • 数据偏移 :指出 TCP 报文段的数据起始处距离 TCP 报文段的起始处有多远。 💡 考点补充: 数据偏移的单位是 4B(字节) 。如果该字段值为 15,则 TCP 首部长度为 15×4B=60B15 \times 4B = 60B15×4B=60B(这也是 TCP 首部的最大长度)。
  • 关键标志位:
    • ACK = 1:确认位有效。
    • SYN = 1:请求建立连接。
    • PSH = 1接收方快交付(催促接收方赶紧将数据上交应用层,别在缓存里压着了)。
    • URG = 1发送方快发(紧急指针有效,数据直接插队到发送缓存最前方)。

四、 灵魂机制:TCP 的连接与释放

1. 三次握手(Connection Establishment)

标准的交互流程如下:

  1. Client: SYN=1, seq=x
  2. Server: SYN=1, ACK=1, seq=y, ack=x+1
  3. Client: ACK=1, seq=x+1, ack=y+1

🌟 博主独家"拟人化"记忆法:

理解三次握手不要死记硬背!我的理解是:

Client 发出 xxx,Server 回应 SYN=1 同意连接,并发出自己的序列号 yyy;与此同时,Server 要表扬 Client 刚才的 xxx 发送得不错(于是令确认号 ack=x+1,表示"x我收到了,期待你的x+1")。第三次握手 Client 也是同理,表扬 Server 的 yyy。
用这个"表扬"模型,做题时绝不会把 seqack 搞混!

2. 四次挥手(Connection Termination)

释放连接的关键在于数据的传输完毕状态的等待

  1. Client: FIN=1, seq=u(请求断开)
  2. Server: ACK=1, seq=v, ack=u+1(同意断开客户端到服务端的连接)
  3. Server →\rightarrow→ Client:传输剩余数据(此阶段 Server 可能还有数据没发完,处于 CLOSE-WAIT 状态)
  4. Server: FIN=1, ACK=1, seq=w, ack=u+1(Server 数据发完,请求断开服务端到客户端的连接)
  5. Client: ACK=1, seq=u+1, ack=w+1(Client 最后确认)

⚠️ 核心重点:Time-wait 状态

Client 发送完最后的 ACK 后,必须等待 2MSL (最长报文段寿命的两倍)才能关闭。
原因补充:

  1. 保证 Client 发送的最后一个 ACK 能够到达 Server(如果丢包,Server 会超时重传 FIN,Client 在 2MSL 内还能补发 ACK)。
  2. 防止"已失效的连接请求报文段"出现在本连接中。

五、 应用层:网络体系与 DNS

1. 网络架构模型

  • C/S 架构(Client/Server): 传统的客户端-服务器模型(如 Web 访问)。
  • P2P 架构(Peer-to-Peer): 点对点模型,分为集中式和分布式结构。

2. DNS 域名系统

DNS 是将人类可读的域名转化为 IP 地址的核心系统。

  • 层级结构: 根域名服务器 →\rightarrow→ 顶级域名服务器 →\rightarrow→ 二级域名服务器 →\rightarrow→ 本地域名服务器。

  • 查询方式:

    • 递归查询: 靠别人(我问本地,本地去帮我问到底,最后把结果给我)。
    • 迭代查询: 靠自己(本地 DNS 依次去问根、顶级、二级,别人只指路不代劳)。

    补充: 实际应用中,主机到本地域名服务器通常是递归查询 ,而本地域名服务器向外查询通常是迭代查询


小结:

计网的知识点比较繁杂,但只要理清了协议的交互逻辑,很多参数和标志位都能推导出来。祝大家 408 备考顺利,一起加油!


相关推荐
BizViewStudio7 小时前
小程序泛在化时代:2026 年跨平台开发技术选型指南
大数据·网络·人工智能·小程序·媒体
阿Y加油吧7 小时前
二刷 LeetCode:152. 乘积最大子数组 & 416. 分割等和子集 复盘笔记
笔记·算法·leetcode
发光小北13 小时前
Modbus TCP 转 Profinet 主站网关如何应用?
网络·网络协议·tcp/ip
码途漫谈16 小时前
Easy-Vibe开发篇阅读笔记(四)——前端开发之结合 Agent Skills 美化界面
人工智能·笔记·ai·开源·ai编程
易连EDI—EasyLink16 小时前
易连EDI–EasyLink实现OCR智能数据采集
网络·人工智能·安全·汽车·ocr·edi
@insist12317 小时前
信息安全工程师考点精讲:身份认证核心原理与分类体系(上篇)
大数据·网络·分类·信息安全工程师·软件水平考试
SmartRadio17 小时前
ESP32-S3 双模式切换实现:兼顾手机_路由器连接与WiFi长距离通信
开发语言·网络·智能手机·esp32·长距离wifi
_.Switch17 小时前
东方财富股票数据JS逆向:secids字段和AES加密实战
开发语言·前端·javascript·网络·爬虫·python·ecmascript
软件技术NINI17 小时前
webkit简介及工作流程
开发语言·前端·javascript·udp·ecmascript·webkit·yarn