☰
北师大计算机网络期末样卷解析:CRC、香农公式与滑动窗口考点全拆解
2026/10/6 15:12:02 网站建设 项目流程

简介:北京师范大学计算机网络课程期末考试样卷(B卷)以一份 docx 文档呈现,面向计网课程学习者、期末备考学生及考研复习者。试卷系统覆盖信道分配方案、纠错编码、数据链路层与传输层协议、CRC校验、ADSL技术、信道利用率、缓冲区管理、曼彻斯特编码、IP数据报分片与重组、TCP拥塞控制、奈奎斯特与香农定理、距离矢量路由等核心考点,题型包括单选、填空与判断,并配有知识点详细解读,便于对照自查、查漏补缺。资源包共含1个docx文件,总大小769KB,适合直接打印或电子阅读。已有119人学习使用,对希望快速掌握计算机网络高频考点、检验复习效果的学习者颇具参考价值。

1. 期末周最该刷的不是题库,是这张北师大计网样卷

期末周最戳人的场景,不是《计算机网络》还没翻完,而是翻完了谢希仁、刷完了王道选择题,拿到一套真题风格的卷子照样发懵。这份北师大《计算机网络》期末样卷(B 卷)就是来戳破这种幻觉的:闭卷 100 分钟、满分 100,单选 20 分、填空 30 分、判断 20 分、问答 30 分,每个空基本锚定一个考点——信道分配选 FDM 还是 ALOHA、CRC 余数几位、Go-back-N 为什么最多 15 个未确认帧、香农公式怎么代数字。它适合期末前做限时自测的本科生,也适合拿 408 计算题练手的考研党,按《计算机网络:自顶向下方法》复习的,同样能拿它对照查漏。卷面不偏难怪,但坑位很密,下面按题型拆透。

2. 把卷面拆开看:60 分客观题的考点地图和答题顺序

2.1 单选 20 分:十道题对应教材的哪几章

这套卷子的命题线索特别清楚,题目顺序基本是照着教材章节推的:信道分配(第 1 题)、差错编码(第 2、5 题)、链路层数据单元(第 3 题)、可靠传输与重传(第 4 题)、物理层编码与介质(第 6、9 题)、信道竞争概率(第 7 题)、流量整形与缓冲(第 8 题)、IP 分片重组(第 10 题)。我按考点整理成一张表,答案是照着常见教材口径给的:

题号考点正确项关键理由
1信道分配方案C(FDM 和 TDM)站点少且固定、流量连续,静态分配无冲突开销
2海明距离与纠错A(2,2d+1)两码字逐位比较,第 4、5 位不同,距离为 2
3链路层数据单元B(帧)链路层协议数据单元叫帧
4RTT 抖动与重传A(大,小,信道)端到端跨多条链路,时延方差大;单跳链路方差小
5CRC 校验C(1110)生成多项式 10011,模 2 除法余数为 1110
6ADSL 传输介质D(电话线路)ADSL 跑在普通电话双绞线上
7竞争信道成功概率B(p(1-p)^(k-1))某一站发送且其余 k-1 站都不发送
8接收方 Buffer 尺寸A(6 秒)按图中输入输出速率累积差取峰值
9曼彻斯特编码频率B(20MHz,20MHz)两种编码每比特至少一次跳变,频率是数据率的 2 倍
10IP 分片重组位置D(目的主机)重组只在目的主机完成,路由器只转发分片

最容易误判的是第 1 题和第 10 题。第 1 题题干给了“数量小且固定不变”和“流量连续”两个限定词,这就是静态分配(FDM/TDM)的适用条件;CSMA、CSMA/CD 这类争用协议在流量连续时冲突率反而高,ALOHA 更差。网上不少解析说选 ALOHA,理由是站少冲突少,但那是只看了前半句,没看“流量连续”。第 10 题考的是“重组”,重组永远只在目的主机,选项 B 的“目的主机或路由器”是把分片和重组混在一起,路由器只做分片、不负责重组,原书习题里专门挖过这个坑。

第 4 题和第 8 题值得多说一句。第 4 题答案是“大、小、信道”:传输层 RTT 是端到端的,要跨多条链路、经过多级排队,方差自然大;链路层只有一条物理链路,时延基本稳定。第 8 题的 Buffer 尺寸不用背公式,图里给的是接收速率和输出速率的累积差值,画两条曲线叠加,取最大差额就是 6 秒。

2.2 填空 30 分:先算计算题,再填概念题

填空的分布正好一半计算一半概念。我建议拿到卷子先扫一眼计算填空(第 2、5、9、10 题),这类题答案唯一,写错一个数整空没分;概念填空(第 1、4、6、7、8 题)就算记不全,写出关键术语也能拿一半分。这十个空的答案要点如下:

题号答案要点
1A:发送方产生大量小报文(小包问题);B:接收方通告超小窗口
2A:12000 bps;B:约 19940 bps(约 20 kbps)
3A:取所有邻居到 F 的距离 + 链路开销的最小值;B:路由环路(计数到无穷)
4A:拥塞窗口;B:接收窗口;C:两者中的较小值
5A:15;B:需要区分“所有帧都已确认”和“0 号帧待确认”
6A:127.0.0.1(回环地址);B:协议栈;C:协议栈;D:回环地址
7A:通信双方约定的规则;B:服务;C/D/E:差错控制、流量控制、分帧(任取三个)
8双绞线、同轴电缆、光纤、无线介质(电磁波)
94800 bps(2400 波特 × 2 bit)
10海明码纠错后发送位串,手算过程见 3.3

有几个空特别能体现教材版本差异,这是这套卷最值得玩味的地方。比如“愚笨窗口综合症”是 Tanenbaum《计算机网络》的译法,谢希仁教材叫“糊涂窗口综合症”,《自顶向下》根本不展开这块。如果你只按谢希仁复习,第一次见到“Nagle 算法解决 A 问题”会完全不知道 A 填什么。这里 A 是发送方侧问题,B 是接收方侧问题,按协议角色去记就不会混。

2.3 判断与问答 50 分:不写理由等于白丢一半分

判断题每题 4 分,题干开头写着“要求简要说明理由”。这类题的给分逻辑通常是:只写“对/错”给 1~2 分,理由涉及关键机制才给满。五道题的结论和理由要点:

题号结论理由要点
1错TCP 同时打开仍只建立一条连接,三次握手在对称状态下同样收敛
2错确认只代表接收方传输实体收到并上交上层,不保证应用处理完成
3错中继器、集线器是物理层,网桥、交换机是链路层,路由器是网络层
4错IP 头有 TTL,每跳减 1,归零即丢弃,不会无休止传送
5错二元指数回退是在 0 到 2^k-1 个时隙里随机选,不是按 2 的幂递增,超过最大次数会放弃发送

问答题每题 6 分,给分点集中在“机制 + 条件 + 例子”三件套。逆向转发那道,光答“沿最短路径转发”不够,要补上“从通往源的最短路径接口到达才转发,否则丢弃”;MACA 那道,要分别说清隐藏站点靠 CTS 抑制、暴露节点靠听不到 CTS 来判断可否并发发送;隧道技术那道,必须写“封装/解封装”和一个具体例子,只写概念不给例子通常扣一半。

提示:主观题先写一句结论式短句,再补机制。判卷老师按点给分,结论句错了后面写得再多也难拿分。

3. 计算题逐题手算:CRC、奈奎斯特/香农、海明码与星座图

3.1 CRC 手算:补 4 个 0,除到余数正好 4 位

CRC 是这套卷里最机械的一题,丢分的人却特别多,基本都是当普通除法算的。正确流程:生成多项式 x^4+x+1 转成二进制 10011;在帧 1101011011 后面补 4 个 0,补零个数等于生成多项式的最高次幂 4;得到 11010110110000;用 10011 对这段做模 2 除法,异或运算、不借位。除法过程的关键轮次如下:

轮次当前 5 位窗口首位为 1?异或 10011 后的余数补入下一位
111010是10011 → 10011
210011是00001 → 00001
300001否直接落位0 → 00010
400010否直接落位1 → 00101
500101否直接落位1 → 01011
601011否直接落位0 → 10110
710110是01010 → 01010
801010否直接落位0 → 10100
910100是01110 → 01110

所有 14 位处理完后,取最后窗口的后 4 位作为余数,01110 去掉前导 0 就是 1110,对应选项 C。注意这里不能用十进制除法,也不能把异或结果的进位带到下一位,很多答案是 1010 或 0111 的,基本都是在“异或是否保留前导 0”这一环出错。

提示:验证方法是把 1110 拼回帧尾,得到 11010110111110,再用 10011 除一次,余数为 0 就说明算对了。我每次手算 CRC 都强制走一遍这个验证,因为这类题一步错后面全错,重算一遍不如验证成本低。

3.2 奈奎斯特是 12000,香农约 19940:两套公式别混

填空题第 2 题给了两个典型条件:带宽 2000Hz、8 种电压编码、信噪比 30dB。这题考察的是两套公式的边界感。

无噪声信道用奈奎斯特公式:C = 2B log₂M,B 是带宽 2000,M 是电平数 8,log₂8 = 3,算出来是 2 × 2000 × 3 = 12000 bps。最常见的错误是漏乘 2,记成 2000 × 3 = 6000,这一漏就是 6 分。

有噪声信道用香农公式:C = B log₂(1 + S/N)。这里唯一的坑是分贝换算,30dB 对应信噪比是 10 的 3 次方,也就是 1000 倍,不是 30 倍。代入得 2000 × log₂(1001),log₂(1001) 怎么估?记住 2¹⁰ = 1024,所以 log₂(1001) 略小于 10,约 9.97,结果就是 19940 bps,约 20 kbps。题干里“香龙定理”是“香农定理”的音译笔误,不必纠结。

这两套公式的分工建议这么记:奈奎斯特给的是“无噪声前提下的码元速率上限”,香农给的是“噪声信道下的比特速率上限”,一个管波特率、一个管比特率,实际系统取两者共同约束下的较小值。

3.3 海明距离、曼彻斯特与星座图:比特级换算一起算

单选第 2、9 题和填空第 9、10 题放在一起算,因为它们本质都是“码元和比特的换算”。

海明距离:把 10101001 和 10110001 逐位对齐,只有第 4 位和第 5 位不同,距离是 2。纠 d 个错误需要编码距离 2d+1,所以选 A(2,2d+1)。注意选项 B 写的是“3,d+1”,这是把“检测 d 个错误需要 d+1”和“纠正 d 个错误需要 2d+1”两组结论各取一半拼出来的干扰项,一旦你把距离算成 3,会连错两空。

曼彻斯特编码:10Mbps 的数据率下,曼彻斯特编码每个比特中间必有一次跳变,信号翻转频率是数据率的 2 倍,也就是 20MHz;差分曼彻斯特同样每比特有中间跳变,也是 20MHz,选 B。常见资料里“曼彻斯特信号频率等于数据率”的说法,是把“跳变次数”和“频率”混为一谈了,10BASE-T 以太网的实际波特率就是 20 Mbaud。

星座图:4 个坐标点意味着每符号携带 2 bit(log₂4 = 2),2400 波特 × 2 = 4800 bps。这类题的通用做法是先数星座点数,算 log₂ 得每符号比特数,再乘波特率。

填空第 10 题的海明码,收到位串 00011100101 共 11 位,校验位在第 1、2、4、8 位。按位分组算奇偶:

校验位覆盖位置异或结果
P11、3、5、7、9、110⊕0⊕1⊕0⊕1⊕1 = 1
P22、3、6、7、10、110⊕0⊕1⊕0⊕0⊕1 = 0
P44、5、6、71⊕1⊕1⊕0 = 1
P88、9、10、110⊕1⊕0⊕1 = 0

把 syndrome 按 P8P4P2P1 排成 0101,十进制是 5,说明第 5 位出错,把 1 翻转为 0,发送位串就是 00010100101。这个计算用的是偶校验,如果你的教材默认奇校验,把每组的异或结果取反再定位,步骤完全一致。

4. 协议与窗口类考点:滑动窗口上限、Nagle 分工和路由环路

4.1 Go-back-N 的 15 个未确认帧上限:为什么不是 16

填空第 5 题是个经典陷阱:序列号空间是 0 到 15 共 16 个,看起来窗口开 16 正好用完,但标准结论是未确认帧最多 15 个。原因是接收方需要靠序列号区分“新帧”和“重传帧”:如果窗口大小等于序列号总数 16,发送方发完 0 到 15 后,下一个新帧的序列号又会从 0 开始,而这时候上一轮的某个帧可能还没被确认。假设 0 号帧的 ACK 丢了,发送方超时重传 0 号帧,接收方此时等的新帧恰好也是 0 号,它无法判断这个 0 号是重传还是新帧,只能把它当新帧收下,窗口就乱了。

所以 Go-back-N 的发送窗口必须满足 maxWindow ≤ 2^m − 1,m 是序列号位数。4 位序列号对应 16 个编号,窗口上限就是 15。这里的填空 A 填 15,B 写“区分所有帧已确认与 0 号帧待确认的情况”或“避免新旧帧序列号歧义”都对。顺带说一句,选择重传 SR 比 Go-back-N 更严格,窗口上限是 2^(m−1),因为 SR 要同时保留接收窗口里对乱序帧的缓存,序列号不够会直接重影。

4.2 Nagle 补发送方,Clark 补接收方:愚笨窗口的分工

“愚笨窗口综合症”指的是 TCP 双方把带宽浪费在极小报文上:发送方一次只发几个字节,接收方通告的可用窗口也只有几个字节。填空第 1 题考的就是这两个方向的解决方案,标准表述是:Nagle 算法试图解决“发送方产生大量小报文”的问题;Clark 则试图解决“接收方通告超小窗口”的问题。

Nagle 的做法是:发送方有一个未确认的小报文在途时,后续新产生的小数据不立即发送,先攒在缓冲区里,等收到 ACK 或者数据积到一整段 MSS 再一起发。这里的参数是 MSS(最大报文段长度),攒数据时以 MSS 为上限,不是无限攒。Clark 的做法相反,它约束接收方:只有在能通告一整段 MSS 的窗口时,才更新接收窗口,否则通告 0,不让发送方把数据挤成小段。

这两种方案一个管发送速率、一个管接收通告,互不冲突,所以题干说“这两种方案都是有效的,而且可以一起工作”。复习时按“谁的问题谁负责”记:发小包找 Nagle,收小窗口找 Clark。现代 TCP 实现里还会配延迟 ACK,但那是另一套机制,别混进来。

4.3 慢启动双窗口与距离矢量路由环路

填空第 4 题考慢启动的两个窗口:拥塞窗口(congestion window)和接收窗口(接收方通告窗口)。慢启动阶段拥塞窗口每个 RTT 翻倍,指数增长,但发送方的实际发送量不是只看 cwnd,而是取 min(cwnd, rwnd),也就是“网络容量”和“接收方容量”同时约束。这里最容易漏填的是 C 空:每次发送的字节数取决于两者中的较小值,光填“拥塞窗口”会丢分。

填空第 3 题的距离矢量算法,J 到 F 的距离在题目给的拓扑里没有直接标出,计算方法是取所有邻居的“到 F 距离 + 与 J 的开销”的最小值,这是 Bellman-Ford 的标准操作。这个算法的出名缺陷是路由环路(计数到无穷):当某条链路断开,坏消息要一步步传播,最坏情况下要迭代到无穷大才会收敛。判断题第 4 题说的“路由环让 IP 包无休止传送”是错的,因为 IP 层有 TTL 兜底;但距离矢量协议层面的“环路”是另一回事,它说的是路由表收敛慢,不是数据包无限转发。这两个概念经常被混着问,答题时先分清楚是网络层丢包问题还是路由协议收敛问题。

5. 避坑指南:这份样卷里最容易丢分的五个点

5.1 判断题与单选里的三处经典翻车

翻车点一:同时打开连接,判成“建立两个连接”。现象:判断题第 1 题,看到图(b)里双方同时发 SYN 就认为各建各的连接。原因:把三次握手理解成只能一端发起、另一端被动响应,忽略了 TCP 的对称性。解决:TCP 同时打开时,双方都发 SYN、都回 SYN+ACK、都收到 SYN+ACK,最终收敛到一条连接,应用层只看到一个 socket 对。抓包时看到交叉的 SYN 段不要慌,这不是两条连接。

翻车点二:路由环,判成“IP 包无休止传送”。现象:判断题第 4 题,认为路由环会形成死循环,数据包永远转圈。原因:只想到网络层的转发,忽略了 IP 报文头的 TTL 字段。解决:每经过一个路由器 TTL 减 1,减到 0 直接丢弃,同时向上层报 ICMP 超时。TTL 存在的意义之一就是掐断这类环路。

翻车点三:曼彻斯特编码频率,选了 20/10 或 10/20。现象:单选第 9 题,觉得曼彻斯特“每个位变一次”,差分曼彻斯特“每一位都要变”,所以频率不一样。原因:把“中间跳变”和“编码频率”的关系记反了。解决:两种编码都是每比特周期至少一次跳变,10Mbps 数据率对应 20MHz 信号频率,选 B(20MHz,20MHz)。记住 10BASE-T 的波特率是 20 Mbaud 就够了。

5.2 填空与计算里的两个丢分重灾区

丢分点四:奈奎斯特和香农公式混用。现象:填空题第 2 题,无噪声的算成 6000,有噪声的算成 2000。原因:奈奎斯特漏乘 2,香农那边把 30dB 当 30 倍用。解决:做题第一件事是看题干有没有“噪声”二字——没噪声用 2B log₂M,有噪声用 B log₂(1+S/N);分贝换算固定写成 10 lg(S/N) = 30,解出 S/N = 1000。这两个公式混用是计网期末的保留节目,几乎年年有人翻车。

丢分点五:Go-back-N 未确认帧填 16。现象:填空第 5 题,序列号有 0 到 15 共 16 个,就填“最大数量是 16”。原因:觉得序列号空间就是窗口容量,忽略了“区分新帧与重传帧”这件事。解决:窗口上限 = 2^m − 1 = 15;如果题目换成选择重传 SR,窗口上限是 2^(m−1) = 8。看到窗口和序列号数量的题,先判断协议类型,再套上限公式。

6. 拿这套卷自测的三个姿势:限时、归因、外推

这份样卷最值钱的地方不是答案,而是它能当一面照妖镜,照出你复习里的认知偏差。我建议按三个姿势用它,而不是对着答案背一遍就算完。

姿势一:全真限时。严格按卷面要求闭卷 100 分钟,判断题也逼自己写出理由,问答先写结论句再补机制。做完不要立刻对答案,先把“自己觉得没把握”的题圈出来,再对照答案。这个顺序很重要:先暴露不确定性,再看正确解法,记忆留存率比直接看答案高得多。计分不用太纠结,重点看哪些题是“蒙对的”——蒙对的和做错的,本质上都是没掌握。

姿势二:错题归因。对完答案后,把错题按下面这张表归类,再决定补什么:

错题特征归因补救动作
概念型:凭印象选,说不清理由教材对应章节没读透回到谢希仁或《自顶向下》对应章,重读概念框
计算型:公式对但数字错进制或分贝换算不过关每题重算一遍,写下每一步公式与代入值
术语型:题干看不懂教材版本术语差异补 Tanenbaum 译法表,如愚笨窗口、尼亏斯特
粗心型:会做但漏看限定词读题习惯问题圈出“固定、连续、重组、目的主机”这类限定词

姿势三:考点外推。样卷上的每个考点都是锚点,可以向外推一个变体题。信道分配那道考了 FDM/TDM 和争用协议的取舍,就可以外推无线场景的 CSMA/CA 和 RTS/CTS——事实上这份卷子的问答第 4 题 MACA 就是从同一个考点延伸的,说明出题人是故意前后呼应的。滑动窗口考了 Go-back-N 的 2^m−1,外推选择重传的 2^(m−1),再外推 TCP 的窗口缩放选项怎么影响序列号空间。距离矢量考了环路,外推 OSPF 链路状态为什么要维护全网拓扑、收敛为什么快。如果某个考点你想看动画讲法,把湖科大教书匠那套计网课对应章节拉出来对照看一遍,基本能把这个考点彻底焊死在脑子里。

从那以后,我每次考前都把样卷当标尺:先闭卷限时做一遍,对完答案走一遍归因表,再推两个变体题。这套流程走下来,考场上很少再遇到“见过但没算过”的尴尬。希望帮到你。

本文还有配套的精品资源,点击获取

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询