尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
计算机网络期末冲刺:CRC、香农公式与TCP拥塞控制高频计算题精讲
简介这份资源是面向高校学生与备考人员的《计算机网络》期末复习电子版资料依据谢希仁第8版教材整理适合需要系统梳理考点、快速回顾知识框架的学习者。内容覆盖互联网连通性与共享两大特点、边缘与核心部分结构、C/S与P2P通信方式以及电路交换、报文交换、分组交换三种数据传送方式同时梳理速率、带宽、吞吐量、时延、时延带宽积与RTT等性能指标并延伸至OSI七层与TCP/IP四层体系结构、协议三要素、物理层四大特性、奈氏准则与香农公式、导引型与非导引型传输媒体以及FDM、TDM、STDM、CDM等信道复用技术知识点按章节归纳便于对照课本查漏补缺。资源包共1个docx文档压缩包约1.36MB轻量易存可直接在电脑或手机上打开复习。目前已有19418人学习说明其内容受到较多备考者认可适合作为期末冲刺阶段的随身复习材料。1. 从一道 CRC 计算题说起这场期末考到底考什么很多人复习计算机网络一上来就抱着书从第一章硬啃结果啃到物理层就困了翻到运输层已经忘了网络层在讲什么。但如果你把近几年的期末卷子摊开看会发现一个很反直觉的事实这张卷子并不考你背了多少概念而是考你会不会算、会不会画、会不会把分层关系串起来。比如 CRC 冗余码的计算题目给你一串待发送数据和生成多项式你只要记得“被除数后面补 n-1 个 0”这一步10 分就到手可如果你把接收端的数据也补了 0这 10 分就没了。再比如 CSMA/CD 的最小帧长推导、香农公式结合信噪比求极限速率、RIP 距离向量算法的路由表更新、TCP 拥塞窗口的变化曲线——这些才是卷面上的硬通货。这份谢希仁第 8 版的复习资料把概述、物理层、数据链路层、网络层、运输层、应用层六块内容按考点密度重新排了一遍适合已经学过一遍、需要抓重点冲刺的人也适合刚开始复习、想直接对着高频考点练手的人。下面按考点模块拆开讲每一块都告诉你考什么、怎么答、哪里容易翻车。2. 概述与物理层性能指标计算和香农公式怎么拿分2.1 性能指标里藏着的计算题套路概述这一章看起来全是概念但真正拉分的是性能指标的计算。速率、带宽、吞吐量、时延这四个词几乎每年都会以选择题或填空题的形式出现。你要分清楚速率是额定值单位是 bit/s前面加 K、M、G 时是十进制K10³而文件大小、存储容量用的是二进制K2¹⁰1024。这个区别在选择题里经常设坑比如问你“一个 100 MB 的文件在 100 Mbit/s 的链路上传完需要多久”你得先把 MB 换成 Mbit再除以速率。时延的四种类型是必考的点。发送时延是数据帧从网卡出去的时间等于帧长除以发送速率传播时延是电磁波在信道里跑的时间等于信道长度除以传播速率处理时延和排队时延发生在路由器内部。题目里如果只问“从发送到接收的总时间”通常只算发送时延加传播时延处理时延和排队时延忽略不计。时延带宽积等于传播时延乘以带宽单位是比特意思是“链路里能塞下多少比特”。往返时间 RTT是双向交互一次的时间后面 TCP 三次握手会反复用到。提示信道利用率 U 1 - 空闲时延 / 当前时延这个公式在计算题里经常和吞吐量一起出现别只背公式不理解含义。2.2 奈氏准则与香农公式两道必考计算物理层最核心的两个公式一个是奈氏准则一个是香农公式。奈氏准则说在带宽为 W 的低通信道中不考虑噪声时码元最高传输速率是 2W 码元/秒。注意单位是“码元/秒”不是 bit/s。如果每个码元携带 n 个比特那信息传输速率就是 2W × n bit/s。香农公式则是C W × log₂(1 S/N)其中 W 是信道带宽单位 HzS/N 是信噪比。题目通常不会直接给你 S/N而是给你分贝值你要先用信噪比(dB) 10 × log₁₀(S/N)反推出 S/N。比如给你 30 dB那 S/N 10^(30/10) 1000再代入香农公式算 C。来看一道典型题题目信道带宽为 3 kHz信噪比为 30 dB求该信道的极限信息传输速率。答题思路 第一步把 30 dB 转成 S/N30 10 × log₁₀(S/N)所以 S/N 1000。 第二步代入香农公式C 3000 × log₂(1 1000) ≈ 3000 × 9.97 ≈ 29910 bit/s。 第三步写答案时带上单位约等于 30 kbit/s。这类题面试官最想听的是你先转分贝再代公式的顺序而不是直接背一个结果。很多人错在把 30 dB 当成 S/N 30 直接代入算出来差了一个数量级。2.3 信道复用与码分多址计算信道复用技术里频分复用 FDM、时分复用 TDM、统计时分复用 STDM 都是概念题但码分复用 CDM会考计算。码分多址 CDMA 的计算要点是码片序列里用 -1 表示 0用 1 表示 1。当 S 站发送比特 1 时在 X 站计算内积结果是 1发送比特 0 时内积结果是 -1内积结果为 0 则表示没发送。题目A 站码片序列为 (-1 -1 -1 1 1 -1 1 1)收到信号为 (-1 -1 1 -1 1 1 1 -1)问 A 站发送了什么答题思路 把收到信号和 A 站码片逐位相乘再求和 (-1)×(-1) (-1)×(-1) (1)×(-1) (-1)×(1) (1)×(1) (1)×(-1) (1)×(1) (-1)×(1) 1 1 - 1 - 1 1 - 1 1 - 1 0。 内积为 0说明 A 站没有发送数据。注意码分多址的计算题一定要逐位对齐别跳步跳一步就容易把正负号搞反。3. 数据链路层CRC 计算、CSMA/CD 与以太网帧的失分点3.1 CRC 循环冗余检验补零还是不补零CRC 是数据链路层必考的计算题也是期末考里最容易翻车的地方。步骤本身不复杂通过生成多项式得到除数 P把待传送的数据后面加上 n-1 个 0除以 P 得到余数 R这个 R 就是冗余码 FCS。把 R 加到原数据后面接收端用同样的 P 去除余数为 0 就判定无差错。但这里有一个血泪教训如果题目给你的是接收端收到的数据就不要再补 n-1 个 0 了。很多人看到 CRC 就条件反射地补零结果接收端的题也补零10 分直接没了。判断方法很简单题目说“待发送的数据”就补零说“接收到的数据”就直接除。来看一道题题目待发送数据为 1101011011生成多项式为 x⁴ x 1求 CRC 冗余码。答题思路 生成多项式对应二进制 10011共 5 位所以 n-1 4数据后面补 4 个 0变成 11010110110000。 用 10011 做模 2 除法得到余数 1110。 所以冗余码 FCS 1110发送的帧就是 11010110111110。代码块演示模 2 除法的逻辑def crc_remainder(data, generator): # data: 待发送数据位串generator: 生成多项式位串 data list(data) gen list(generator) gen_len len(gen) # 在数据后面补 len(gen)-1 个 0 data [0] * (gen_len - 1) # 逐位做模 2 除法 for i in range(len(data) - gen_len 1): if data[i] 1: for j in range(gen_len): data[i j] str(int(data[i j]) ^ int(gen[j])) # 余数就是最后 gen_len-1 位 return .join(data[-(gen_len - 1):]) print(crc_remainder(1101011011, 10011)) # 输出 1110这段代码的关键是data[i j] str(int(data[i j]) ^ int(gen[j]))用异或实现模 2 减法。参数data是待发送位串generator是生成多项式对应的二进制串。注意补零的位数是len(generator) - 1不是随便补。3.2 CSMA/CD先听后发、边听边发、冲突停止、延迟重发CSMA/CD 是数据链路层的另一个必考点十六个字概括就是“先听后发边听边发冲突停止延迟重发”。这里要理解几个关键数字争用期是 2t对于 10 Mbit/s 以太网争用期是 51.2 µs也就是 512 比特时间。最小帧长 2t × 数据传输速率以太网规定最小帧长是 64 字节。题目为什么以太网的最小帧长是 64 字节答题思路 因为发送方必须在发送完一帧之前就能检测到碰撞。如果帧太短发送完了碰撞信号还没回来就检测不到冲突。最小帧长 2 × 端到端传播时延 × 数据传输速率。对于 10 Mbit/s 以太网端到端传播时延取 25.6 µs所以最小帧长 2 × 25.6 µs × 10 Mbit/s 512 bit 64 字节。面试官最想听的是你从碰撞检测的原理推导出公式而不是直接背“64 字节”这个结论。另外要注意使用 CSMA/CD 的以太网只能半双工通信因为一个站不可能同时发送和接收。3.3 以太网 MAC 帧与无效帧判断以太网 MAC 帧的格式里类型字段、数据字段、FCS 字段都要记清楚。IEEE 802.3 规定出现以下情况之一即为无效 MAC 帧帧的长度不是整数个字节用 FCS 查出有错数据字段不在 461500 字节之间。这里的数据字段范围对应最大传送单元 MTUMTU 是帧的数据部分最大长度不包括帧头和帧尾。提示MAC 帧传到物理层时还要在前面加 8 字节首部这 8 字节不算在帧长里别搞混。3.4 易错点CRC 补零、CSMA/CD 半双工、MTU 范围错在哪CRC 计算时接收端数据也补 n-1 个 0。为什么错补零只针对待发送数据接收端直接用收到的数据除以生成多项式。怎么答对先看题目说的是“待发送”还是“接收”待发送才补零。错在哪认为使用 CSMA/CD 的以太网可以全双工通信。为什么错CSMA/CD 要求边发边听一个站不能同时发送和接收。怎么答对记住 CSMA/CD 对应半双工全双工交换式以太网不使用 CSMA/CD。错在哪把 MTU 当成整个帧的长度。为什么错MTU 只是帧的数据部分最大长度不包括帧头和帧尾。怎么答对题目问 MTU 时只算数据部分问帧长时才加上首部和尾部。4. 网络层IP 地址、分片计算与路由协议4.1 IP 地址分类与 CIDR 地址块网络层的第一道坎是 IP 地址分类。A 类地址以 0 开头网络号 1 字节主机号 3 字节B 类以 10 开头网络号 2 字节C 类以 110 开头网络号 3 字节。特殊地址里127 开头的是环回测试地址主机号全 1 是广播地址主机号全 0 是网络地址。CIDR 把网络号改称网络前缀用斜线记法表示。比如 192.168.1.0/24斜杠后面的 24 就是网络前缀位数。网络前缀越短地址块越大网络前缀越长路由越具体。地址掩码是网络前缀全为 1、主机号全为 0把 IP 地址和掩码按位与 AND 运算就能得到网络地址。题目某主机的 IP 地址是 192.168.5.121子网掩码是 255.255.255.248求该主机所在子网的网络地址。答题思路 把掩码换成二进制255.255.255.248 /29网络前缀 29 位。 IP 地址最后一段 121 01111001掩码最后一段 248 11111000。 按位与01111001 AND 11111000 01111000 120。 所以网络地址是 192.168.5.120。4.2 IP 数据报分片计算片偏移与 MF 标志IP 数据报分片是网络层计算题的重灾区。首部长度单位是 4 字节固定部分 20 字节所以首部长度最小是 0101。总长度是首部加数据部分之和单位是 1 字节。分片时除了最后一个分片其他每个分片的数据部分长度必须是 8 字节的整数倍片偏移以 8 字节为单位。题目一个 IP 数据报总长度 3200 字节首部长度 160 bit要经过 MTU 为 1200 字节的链路求分片结果。答题思路 首部长度 160 bit 20 字节数据部分 3200 - 20 3180 字节。 MTU 1200 字节每个分片数据部分最大 1200 - 20 1180 字节。 但数据部分必须是 8 的整数倍1180 ÷ 8 147.5取 147 × 8 1176 字节。 分片数 3180 ÷ 1176 ≈ 2.7向上取整为 3 片。 前两片数据部分 1176 字节片偏移分别为 0 和 147第三片数据部分 3180 - 1176 × 2 828 字节片偏移为 294。 MF 标志前两片 MF1最后一片 MF0。注意片偏移的单位是 8 字节计算时用数据部分长度除以 8不是用总长度除以 8。4.3 RIP 距离向量算法与 OSPF 对比RIP 是基于距离向量的路由选择协议只适用于小型互联网只和相邻路由器交换信息。距离向量算法的步骤是收到相邻路由器 B 的路由表后先把 B 表中每一项的距离加 1下一跳改为 B然后和本机路由表逐项比较没有的插入下一跳相同的直接更新下一跳不同的比较距离更小才更新。题目路由器 A 收到 B 发来的路由表B 到 Net1 距离为 3下一跳为 CA 到 Net1 距离为 4下一跳为 D。问 A 是否更新答题思路 B 到 Net1 距离 3加 1 后为 4下一跳改为 B。 A 原来到 Net1 距离 4下一跳为 D。 两者距离相同但下一跳不同RIP 规定距离相同时不更新。 所以 A 不更新。OSPF 则使用链路状态协议用洪泛法向本自治系统内所有路由器发送链路状态信息只有链路变化时才发送。OSPF 直接采用 IP 数据报传送而 RIP 报文作为 UDP 的数据部分传送。BGP 是外部网关协议报文作为 TCP 的数据部分传送四种报文是 OPEN、UPDATE、KEEPALIVE、NOTIFICATION。4.4 易错点分片取整、RIP 更新条件、CIDR 聚合错在哪分片时数据部分不取 8 的整数倍。为什么错片偏移以 8 字节为单位不取整会导致偏移量不是整数。怎么答对先算最大数据部分再向下取 8 的倍数。错在哪RIP 更新时距离相同也更新。为什么错RIP 规定距离相同时不更新只有更小才更新。怎么答对记住“距离更小才更新下一跳相同直接更新”。错在哪CIDR 聚合时把不同前缀的地址块强行合并。为什么错只有网络前缀相同的连续地址块才能聚合。怎么答对先把地址块写成二进制找共同前缀。5. 运输层TCP 三次握手、拥塞控制与端口号5.1 TCP 与 UDP 的核心区别运输层两个协议UDP 无连接、不靠谱、尽最大努力交付、面向报文、没有拥塞控制、首部 8 字节TCP 面向连接、点对点、可靠交付、不丢不重、全双工、面向字节流。端口号分两类服务器端使用的熟知端口号 01023登记端口号 102449151客户端使用的短暂端口号 4915265535。题目为什么 TCP 首部最小是 20 字节而 UDP 首部只有 8 字节答题思路 TCP 需要序号、确认号、窗口、标志位等字段来实现可靠传输和流量控制固定首部 20 字节。UDP 只提供最基本的复用和分用首部只有源端口、目的端口、长度、检验和四个字段共 8 字节。5.2 TCP 拥塞控制慢开始、拥塞避免、快重传、快恢复拥塞控制的四种算法是必考的画图题。慢开始阶段拥塞窗口 cwnd 从 1 开始每收到一个确认就翻倍拥塞避免阶段cwnd 每经过一个 RTT 加 1超时的时候cwnd 直接降为 1重新慢开始收到三个重复确认时cwnd 降为当前的一半执行快恢复。题目TCP 连接初始 cwnd 1经过 5 个 RTT 后 cwnd 是多少如果第 6 个 RTT 发生超时cwnd 变成多少答题思路 慢开始阶段RTT1 后 cwnd2RTT2 后 cwnd4RTT3 后 cwnd8RTT4 后 cwnd16RTT5 后 cwnd32。 第 6 个 RTT 超时cwnd 降为 1重新慢开始。提示画拥塞窗口变化曲线时横轴是 RTT纵轴是 cwnd慢开始是指数上升拥塞避免是线性上升超时是垂直下降。5.3 三次握手与四次挥手TCP 三次握手客户端发 SYN服务器回 SYNACK客户端再发 ACK。四次挥手主动方发 FIN被动方回 ACK被动方再发 FIN主动方回 ACK。这里的关键是理解 ack 的含义ack 是我对你的期望即我希望你下一个传来的序号是多少。题目为什么 TCP 建立连接是三次握手而释放连接是四次挥手答题思路 三次握手是因为服务器收到 SYN 后可以把 SYN 和 ACK 合并成一个报文。四次挥手是因为 TCP 是全双工的主动方发 FIN 只表示自己没有数据要发了被动方可能还有数据要发所以 ACK 和 FIN 不能合并需要分两次发送。5.4 易错点端口号范围、拥塞窗口跳水、ack 含义错在哪把客户端端口号范围记成 01023。为什么错01023 是服务器端熟知端口号客户端用的是 4915265535。怎么答对记住“服务器熟知客户端短暂”。错在哪拥塞避免阶段 cwnd 翻倍。为什么错翻倍只发生在慢开始阶段拥塞避免是每 RTT 加 1。怎么答对画图时慢开始指数上升拥塞避免线性上升。错在哪把 ack 理解成“我收到了”。为什么错ack 是“我希望你下一个传的序号”不是确认已收到的序号。怎么答对ack 收到的 seq 数据长度。6. 应用层与答题技巧DNS 解析、HTTP 过程和押题思路6.1 DNS 递归与迭代查询应用层知识点碎但 DNS 解析是重点。递归查询是“靠别人”客户端只发一次请求剩下的交给本地域名服务器迭代查询是“靠自己”本地域名服务器逐级向根域名服务器、顶级域名服务器、权限域名服务器查询。题目简述 DNS 解析过程中递归和迭代的区别。答题思路递归是客户端到本地域名服务器本地域名服务器代替客户端去查迭代是本地域名服务器逐级查询每次返回下一级服务器的地址由本地域名服务器继续查。6.2 从 HTTP 请求到以太网 MAC 帧的封装过程一个 HTTP 请求从应用层到物理层要经过层层封装应用层 HTTP 报文 - 运输层加 TCP 首部变成 TCP 报文段 - 网络层加 IP 首部变成 IP 数据报 - 数据链路层加 MAC 首部和尾部变成 MAC 帧 - 物理层变成比特流。题目描述浏览器输入网址到收到网页的完整过程。答题思路DNS 解析得到 IP 地址TCP 三次握手建立连接发送 HTTP 请求服务器返回 HTTP 响应TCP 四次挥手释放连接浏览器渲染页面。6.3 押题思路六个模块的分值分布模块高频考点预估分值概述性能指标计算、OSI 与 TCP/IP 对比1015 分物理层奈氏准则、香农公式、码分多址1015 分数据链路层CRC 计算、CSMA/CD、MAC 帧2025 分网络层IP 分片、CIDR、RIP、OSPF2530 分运输层三次握手、拥塞控制、端口号2025 分应用层DNS、HTTP、DHCP1015 分6.4 答题习惯从那以后我每次算 CRC 都强制走一遍期末考最怕的不是不会而是会了却算错。我自己的习惯是拿到 CRC 题先看题目说的是“待发送”还是“接收”待发送才补零拿到分片题先算最大数据部分再向下取 8 的倍数拿到拥塞控制题先画横轴 RTT、纵轴 cwnd再标慢开始和拥塞避免的分界点。这套动作看起来笨但能挡住大部分低级失分。希望帮到你。本文还有配套的精品资源点击获取
RELATED

相关推荐

OpenMAIC 开源多智能体交互课堂:一键生成课件、测验与仿真的完整指南

OpenMAIC 开源多智能体交互课堂:一键生成课件、测验与仿真的完整指南

OpenMAIC 开源多智能体交互课堂:一键生成课件、测验与仿真的完整指南 【免费下载链接】OpenMAIC Open Multi-Agent Interactive Classroom — Get an immersive, multi-agent learning experience in just one click 项目地址: https://gitcode.com/GitHub_Trendi…

📅 2026/10/20 12:26:34
AI写作工具如何助力专著写作:流程、边界与实操指南

AI写作工具如何助力专著写作:流程、边界与实操指南

这几年我前前后后参与过好几本专业著作的整理与写作,最深的体会是:写书的难点从来不在“打字”,而在“决定写什么”和“决定怎么写”——结构怎么安排、材料怎么取舍、论证怎么推进。直到我把AI写作工具真正塞进工作流,才对“高效…

📅 2026/10/20 12:26:34
9.7K Star开源项目:零成本AI生成产品宣传片全流程指南

9.7K Star开源项目:零成本AI生成产品宣传片全流程指南

9.7K Star,开源,零成本,AI 帮你拍产品宣传片——这几个关键词放一起,足够让我毫不犹豫地开始折腾。做电商、搞独立开发、接私单做设计的朋友应该都有同感:产品宣传片这东西,贵得离谱。传统流程里&#xff0…

📅 2026/10/20 12:26:34
MORE NEWS

更多资讯

📰

输送机目标检测实战:数据集构建与YOLO训练全流程

在自动化分拣线上,最难的不是把设备跑起来,而是让算法在传送带那种“一眼全是零碎物件”的环境里稳定地把纸箱、玻璃、金属、纸、塑料分清楚。很多人直接套用公开数据集训练,到了现场就翻车——泛黄胶带、金属反光、玻璃透底,通用…

📰

图像识别从入门到实战:CNN原理、迁移学习与部署全解析

1. 为什么从图像识别切入AI,是一条最稳的路线看过太多人后台问我同一个问题:人工智能学了一大堆,数学公式背了几个本子,框架也装了删、删了装,最后还是写不出一个能跑通的实际项目。问题出在哪儿?我说句实在…

📰

响尾蛇机动Matlab仿真:空战轨迹建模与三维动画实现

简介:响尾蛇机动Matlab仿真资源面向航空工程、飞行力学与空战战术研究者,可用于对响尾蛇机动、盘旋机动等基本动作建立包含牛顿第二定律、欧拉方程及空气动力学因素的飞行器模型,并通过数值计算和图形工具箱生成三维飞行轨迹。压缩包仅3KB&am…

📰

事件驱动架构实战:用轻量级框架替代定时任务扫描,解决系统性能瓶颈

1. 项目缘起:从一次接口延迟事故说起做后端开发的人大多经历过这样的深夜:系统在线率指标飘红,监控面板上接口平均响应时间从 80ms 一路爬升到 1800ms,数据库连接池被打满,缓存命中率断崖式下跌。我遇到的那次事故&…

📰

用双栈模拟浏览器导航:Web导航题目的完整解法与边界分析

每天打开浏览器,你都会下意识点左上角的后退和前进箭头,但很少会想这两个按钮背后到底是什么数据结构在支撑。程序训练题里的“3-21 Web导航”就是把这个日常操作抽成一道模拟题:让你用代码实现浏览器的访问、后退、前进逻辑。我第一次刷到这…

📰

把涂鸦设备搬回局域网:Tuya-Local 本地控制与 Home Assistant 配置指南

把涂鸦设备搬回局域网:Tuya-Local 本地控制与 Home Assistant 配置指南 【免费下载链接】tuya-local Local support for Tuya devices in Home Assistant 项目地址: https://gitcode.com/GitHub_Trending/tu/tuya-local Tuya-Local 是 Home Assistant 的一个…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬