ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

软考网络工程师|第 5 章 TCP/UDP 完整备考笔记

软考网络工程师|第 5 章 TCP/UDP 完整备考笔记 一、TCP 与 UDP 基础对比★★★★1 核心特性总览维度TCP传输控制协议UDP用户数据报协议连接属性面向连接传输前建立连接无连接直接发送报文可靠性可靠传输重传、确认、有序不可靠尽力交付无确认重传头部长度可变 20~60 字节偏移 4bit单位 4B固定 8 字节无复杂控制字段控制机制序列号、ACK、滑动窗口、拥塞控制无流量 / 拥塞控制仅端口 校验和适用业务文件、网页、邮件、远程登录直播、语音、DNS、TFTP、游戏优缺点稳定可靠开销大、延迟高低延迟、开销小存在丢包风险2 分层可靠区分高频选择题数据链路层点到点单段链路可靠传输层 TCP端到端全程可靠源主机→目标主机。二、UDP 报文结构与计算考点★★★1 UDP 固定 8 字节头部组成16 位源端口 16 位目的端口 16 位总长度 16 位校验和2 必考数值计算总长度字段 16bit最大值 65535 字节UDP 最大有效负载 65535 - 8 头部 65527 字节易错坑题目问总长度选 65535问数据负载选 65527。3 UDP 典型应用UDP 口诀扔石头蛋蛋RIP(520)、SNMP(161)、TFTP(69)、DNS(53)、DHCP(67/68)三、TCP 报文完整头部字段★★★★★源端口、目的端口各 16bit0~6553532 位序列号 seq每个数据字节独立编号32 位最大可标识\(2^{32}\)字节4GB32 位确认号 ackack 对方 seq 已接收数据字节数表示 ack 之前全部收到4 位数据偏移IHL单位 4 字节最小值 520B最大值 1560B6 位保留位后续 6 个控制标志位必考URG紧急数据搭配紧急指针使用URG 标志 存在带外数据指针标记紧急数据末尾ACK除第一次 SYN 报文外所有 TCP 报文 ACK1PSH推送接收端不缓存立即上交应用层RST重置连接异常强制断开SYN同步三次握手建立连接FIN结束四次挥手释放连接16 位窗口字段流量控制滑动窗口通告接收缓冲区剩余容量16 位校验和校验 TCP 头部 数据16 位紧急指针仅 URG 置 1 时有意义标记紧急数据位置可变选项字段MSS、时间戳等最长 40 字节配套计算题MSS 最大分段大小 以太网 MTU1500 - IP 头 20 - TCP 头 20 1460 字节四、TCP 三次握手建立连接★★★★★1 三步报文标志与 seq/ack 规则客户端→服务端SYN1ACK0随机初始 seqx状态CLOSED→SYN_SENT服务端→客户端SYN1ACK1seqyackx1状态LISTEN→SYN_RCVD客户端→服务端SYN0ACK1seqx1acky1双方进入 ESTABLISHED可携带业务数据2 核心规则ack 永远等于对方上一条 seq 本条数据长度SYN/FIN 控制报文单独占用 1 个序列号。3 异常状态考点SYN_SENT 长时间无响应超时后回到 CLOSED。五、TCP 四次挥手断开连接客户端发 FIN1主动关闭发送通道仍可接收数据FIN_WAIT1服务端回 ACK1确认关闭请求FIN_WAIT2服务端发 FIN1服务端无数据发送客户端回 ACK1进入 TIME_WAIT等待 2MSL 防止残留报文服务端直接 CLOSED六、TCP 序列号与确认号计算真题题型示例客户端 seq42发送 1 字节字符 C客户端 seq42数据长度 1服务端回复 ack42143自身 seq 取对方 ack三次握手 seq2000FIN 报文 seq8001 有效数据范围 2001~8000总字节 8000-20006000 字节七、TCP 流量控制滑动窗口★★★★1 作用防止发送方发送速率过快超出接收缓冲区处理能力造成丢包重传。2 实现机制接收端通过 TCP 头部窗口字段通告剩余缓存容量发送方每次发送数据总量不能超过通告窗口。3 规则发送窗口 min (接收通告滑动窗口本地拥塞窗口) 窗口值为 0 时发送方暂停发送等待新 ACK 更新窗口。八、TCP 拥塞控制全网链路管控★★★★★流量控制 vs 拥塞控制区分流量控制两端主机缓冲区匹配接收方限制拥塞控制整条网络链路负载发送方本地 cwnd 控制四大核心阶段慢启动初始拥塞窗口 cwnd1每收到一组 ACKcwnd×2指数增长直到达到慢启动阈值 ssthresh。拥塞避免cwnd≥ssthresh 后每个 RTT 往返时间 cwnd1线性缓慢增长。超时丢包处理ssthresh 当前 cwnd / 2cwnd 重置为 1重新慢启动。快重传 快恢复3 个重复 ACK 触发快重传无需等待超时计时器直接重传丢失报文快恢复ssthresh cwnd/2cwndssthresh直接进入拥塞避免不重置为 1。真题计算公式收到 3 个冗余 ACK新 cwnd 原 cwnd ÷ 2例原 cwnd4000 字节快恢复 cwnd2000 字节九、知名端口与应用层协议速记★★★TCP 可靠协议需要完整数据21 FTP 控制、20 FTP 数据22 SSH、23 Telnet25 SMTP 发邮件、110 POP3 收、143 IMAP80 HTTP、443 HTTPS179 BGPUDP 实时协议口诀扔石头蛋蛋53 DNS、67/68 DHCP69 TFTP、161 SNMP、520 RIP端口通用规则客户端源端口随机大于 1024服务器目的端口0~1023 知名端口。端口扫描考点FIN 扫描目标端口开放无应答端口关闭返回 RST 报文。十、本章综合重难点速查表知识点模块核心结论高频易错点考试星级UDP 头部固定 8B最大负载 65527把总长度 65535 当作数据长度★★TCP 头部20~60B偏移单位 4 字节偏移单位 1 字节★★★★TCP 标志SYN 建、FIN 断、URG 紧急ACK 握手第一帧置 1★★★★三次握手SYN→SYNACK→ACKackseq1SYN 报文 ack1★★★★★序列号计算SYN/FIN 占 1 字节序号控制报文不计序号★★★流量控制滑动窗口接收端通告窗口字段是拥塞窗口★★★拥塞控制慢启动指数、拥塞避免线性丢包直接 cwnd 减半★★★★快重传3 个重复 ACK 触发超时才重传★★★端口规则客户端源 1024客户端使用 80 作源端口★★★
返回列表