资讯动态

《计算机网络第5版》课后答案怎么用?严伟潘爱民版复习避坑指南

发布时间:2026/10/4 1:47:16 来源:尧图企业网站定制
简介《计算机网络》第5版严伟、潘爱民译本的课后答案定位为计算机专业学生、考研者及自学者的习题辅导资料覆盖教材第一章至第二章课后习题帮助核对解题过程、理解网络核心原理。内含1个doc文档压缩包仅733KB节选内容涉及数据传输时间计算、LAN模型可拓展性与单一线路风险、互联网高延迟与带宽特点、数字语音及视频流量对投递时间的要求、交换机延迟影响、请求响应传输延迟计算、路由选择复杂性、协议层次模型、报文流与字节流边界差异、协商参数、TCP面向连接与UDP无连接区别、移动运营商位置知晓利弊、同轴电缆光速与比特长度、图像数据量计算、隐藏节点问题及标准化优缺点等并配有具体数值推导便于逐题对照。已有273人学习下载适合课后自测、考前梳理与教学参考能有效提升对网络分层、传输协议和性能计算的综合把握。1. 先弄清这份答案属于哪本“计算机网络”严伟、潘爱民译本是哪个版本网上流传的这份《计算机网络_第5版_严伟_潘爱民_课后答案.doc》很多人下载后翻两页就懵了题号对不上、章节对不上甚至和另一本同名教材的答案混在一起。原因很简单——严伟、潘爱民是 Andrew S. Tanenbaum《计算机网络第5版》中文版的译者这本书以 OSI 七层模型为主线和谢希仁的《计算机网络》、Kurose 的《计算机网络自顶向下方法》是三条完全不同的复习路径。这份 doc 的价值不是让你背答案而是当你做完全书课后题后用来校验推导过程的草稿纸。下面按这本书的章节顺序讲清楚课后答案怎么用、哪些题必须亲手算、哪些答案本身有坑最后落到计算机网络期末复习和 408 备考的可执行动作上。2. 用课后答案反推复习主线七个章节的知识权重与优先级2.1 从目录结构看复习顺序物理层不是入门是硬骨头Tanenbaum《计算机网络第5版》的目录是从第 1 章“引言”开始但真正劝退人的是第 2 章物理层。很多初学者以为物理层就是网线、光纤这些实物翻到课后题才发现要算奈奎斯特准则、香农公式、dB 与线性信噪比换算直接破防。这本书的复习顺序和“计算机网络自顶向下”那本完全相反自顶向下先把应用层和 HTTP 摆在你面前让你觉得网络很简单Tanenbaum 则从物理层一路往上每一层都给你一堆公式和协议状态机计算机网络基础不扎实的人很容易在第 2 章就放弃。所以拿到这份课后答案第一件事不是做题而是把目录翻出来按“物理层→数据链路层→介质访问控制子层→网络层→传输层→应用层→网络安全”的顺序过一遍确认每个章节下有哪些题型。这本书第 1 章是概念题的大本营协议分层、OSI 与 TCP/IP 的对应关系、面向连接与无连接服务的区别这些在复习题里反复出现答案里的表述可以直接作为简答题的答题模板。而第 2 章、第 3 章、第 5 章、第 6 章是计算题重灾区答案里往往只有最终数值没有推导过程这恰恰说明你需要自己把过程补出来。一个实用做法把这份 doc 打印出来或者用 PDF 阅读器做标注按章节在每道题旁边标三个状态——已独立做对、看答案才懂、答案本身存疑。这个三档标注法会在第 6 章展开细说但它从复习第一天就该开始而不是考前一周才临时抱佛脚。2.2 课后题分档必做基础题、核心计算题、选做扩展题Tanenbaum 这本书每章的课后题分“复习题”和“习题”两类但很多流传的答案 doc 并没有保留这个分类而是把所有题目混编在一起。如果按混编顺序硬刷效率很低。我一般会按题型把题目拆成三档这份答案的定位也就清楚了。第一档是必做基础题集中在第 1 章引言和第 7 章应用层题型是“什么是协议”“DNS 的递归查询和迭代查询有什么区别”这类概念题。做这一档的目的是建立答题语感——用书上的术语、按书上的逻辑组织答案而不是用自己的大白话。课后答案里这些题的表述通常很规范值得逐字对照。第二档是核心计算题集中在第 2 章物理层奈奎斯特、香农、第 3 章数据链路层CRC、海明码、滑动窗口、第 5 章网络层距离向量路由、链路状态路由、子网划分、第 6 章传输层TCP 拥塞控制、往返时间估算。这一档必须亲手算到最后一个数字而且算完一定要对着答案问一句如果带宽从 3kHz 改成 4kHz结果怎么变如果信噪比从 30dB 改成 20dB结果差多少这些变式才是考试的真正考法。第三档是选做扩展题比如第 8 章网络安全里的 RSA 计算题、数字签名流程题。这些题如果考研院校不考网络安全章节可以战略性跳过但答案里涉及“公钥和私钥谁加密谁解密”的结论性表述值得扫一眼因为面试会被问到。下面是按章节的优先级参考表可以直接照着排复习计划章节典型题型复习优先级建议投入时间1 引言概念问答、OSI/TCP-IP 对比高背诵为主1~2 天2 物理层奈奎斯特、香农公式、dB 换算高计算密集3~4 天3 数据链路层CRC、海明码、滑动窗口时序图高计算画图3~4 天4 介质访问控制子层CSMA/CD、二进制指数退避中计算量适中2~3 天5 网络层路由算法迭代、IP 子网划分极高全书核心5~7 天6 传输层TCP 拥塞控制、滑动窗口、RTT 估算极高面试热点4~5 天7 应用层DNS、HTTP、电子邮件协议中概念问答2 天8 网络安全RSA、对称/公钥密码概念低~中按考纲定1~2 天2.3 一个可复制的三周刷题节奏答案在最前面还是最后面这份课后答案最常见的误用方式是把 doc 放在手边做一题看一眼答案。这等于把推导过程外包给了参考答案合上书还是不会。我建议把复习分成三轮每轮一星期答案的出场顺序完全不同。第一轮做“拆题”不看答案把每章的复习题和习题按上面的表格快速过一遍能写出多少算多少。目标不是做对而是标记出“完全没思路”的题号和“有点思路但算不出”的题号。这一轮结束后翻开答案只看这两类题目的最终结论确认自己卡在哪一步。第一轮最忌讳的是逐题对答案那会让“看答案以为自己懂了”的错觉提前出现。第二轮做“重算”针对第一轮标记的计算题闭卷重算算完拿答案比对最终数值。数值对不上就回看书上的公式定义不要急着说“答案错了”——大概率是你的信噪比换算少了一步或者滑动窗口的序列号空间算错了边界。第二轮是投入产出比最高的阶段因为此时你对每道题已经有过一次思考重新推导的记忆深度远超第一轮。第三轮做“变式”把答案里的数值全改掉自己出题自己算。带宽、传播时延、窗口大小、链路开销都换一遍然后用第 3 章的脚本验算。这一轮做完这本书的课后题才算真正消化。提示第 5 版英文原版的书后习题编号和中文版存在差异答案 doc 里如果出现“题号对不上”先检查你手里的是不是“第 5 版中文翻译版”而不是“第 5 版英文影印版”两者的习题顺序不完全一致。3. 让答案自己说话用 Python 重算课后计算题验证每一道关键题Tanenbaum 课后答案里最让人头疼的不是题难而是很多 doc 版本只给最终结果过程全被跳过。尤其是路由表迭代、CRC 校验这类需要多步计算的大题答案直接扔给你一张收敛后的表你根本不知道中间过程长什么样。解决这个问题不需要什么高深工具三个 Python 脚本就能把物理层、数据链路层、网络层的典型计算题完整复现出来。3.1 香农公式与奈奎斯特准则一道物理层经典题的自动验算第 2 章物理层最经典的课后题是给定带宽和信噪比求信道容量。很多新手直接拿信噪比的 dB 值代公式算出个离谱结果然后怀疑答案错了。实际上香农公式里的 S/N 必须是线性比值而题目给的 30dB 是分贝值必须先换算再代入。import math def shannon_capacity(bandwidth_hz, snr_db): # 将 dB 形式的信噪比转换为线性比值这是最常见的错误来源 snr_linear 10 ** (snr_db / 10) # C W * log2(1 S/N) capacity_bps bandwidth_hz * math.log2(1 snr_linear) return capacity_bps # 例带宽 3kHz信噪比 30dB —— Tanenbaum 书中的经典数据 capacity shannon_capacity(3000, 30) print(f信道容量: {capacity:.2f} bps) # 输出约为 29907 bps即约 30kbps # 变式练习把信噪比改成 20dB看容量变化 capacity_20db shannon_capacity(3000, 20) print(f信噪比 20dB 时: {capacity_20db:.2f} bps)代码逻辑很直接先完成 dB 到线性比值的换算——10 的dB 值除以 10次幂这是香农公式唯一容易出错的前置步骤然后代入 C W·log₂(1S/N)。参数说明bandwidth_hz 用赫兹Hzsnr_db 用分贝dB。课后题如果给的是线性信噪比比如 1000:1那就把 snr_db 参数换成 snr_linear直接做math.log2(1 snr_linear)不要重复换算。做题时拿这个脚本验算一遍你会发现答案里那些整数值比如约等于 30kbps背后的十进制展开全都能对上。3.2 CRC 校验与海明码手算和脚本对照的验算姿势第 3 章数据链路层的 CRC 计算题也是重灾区。手算 CRC 的过程是在二进制序列上做模 2 除每步异或、逐位后移书里讲得清楚但手算极易错位。尤其是生成多项式位数较多时答案 doc 里经常直接给余数过程一笔带过。用脚本复现多项式除法的过程就能看到每一步的异或结果。def crc_remainder(data_bits, divisor_bits): # data_bits: 待计算的数据位列表如 [1,1,0,1,0,1] # divisor_bits: 生成多项式的系数列表如 [1,1,0,1] data list(data_bits) divisor list(divisor_bits) # 在数据后补 (len(divisor)-1) 个零 padded data [0] * (len(divisor) - 1) # 逐位做模 2 异或 for i in range(len(data)): if padded[i] 1: for j in range(len(divisor)): padded[i j] ^ divisor[j] # 返回余数部分末尾 len(divisor)-1 位 return padded[-(len(divisor)-1):] # 例数据 110101生成多项式 1101对应 x^3 x^2 1 data [1,1,0,1,0,1] divisor [1,1,0,1] remainder crc_remainder(data, divisor) print(CRC 余数:, remainder) # 输出 [0,0,1] 即余数为 001与手算结果对照这段代码模拟的是模 2 除法从被除数最高位开始遇到 1 就对当前位起的一段序列做异或相当于把除数“减”下去然后继续右移。参数说明data_bits 和 divisor_bits 都用 0/1 列表传入方便对照书上的二进制表达式注意生成多项式的写法是“系数列表”比如 x³x²1 对应 [1,1,0,1]最高位一定是 1。有些答案 doc 把余数写成十进制或八进制对照前先统一成二进制位串。数据链路层的差错检验题做完你顺带也能理解头歌这类实训平台上的以太网帧校验实验为什么总让你先算再抓包——抓包工具显示的 FCS 字段本质就是同一套 CRC 余数。3.3 距离向量路由的迭代表用代码复现 Bellman-Ford 的每一轮第 5 章网络层的距离向量路由题可以说是这份课后答案里最容易让人“看不懂过程”的题型。答案通常直接给最终路由表但考试考的是中间迭代过程——比如“第一轮后 B 的路由表是什么”。用下面这段 Bellman-Ford 风格的迭代脚本可以逐轮打印每台路由器的距离向量变化。def distance_vector_iteration(nodes, links, max_rounds10): # nodes: 节点列表如 [A,B,C,D] # links: 无向链路列表每项为 (u, v, cost) INF float(inf) dist {n: {m: INF for m in nodes} for n in nodes} next_hop {n: {m: None for m in nodes} for n in nodes} for n in nodes: dist[n][n] 0 for round_no in range(1, max_rounds 1): updated False for (u, v, cost) in links: # 每个邻居交换自己当前的距离向量 for dest in nodes: if dist[u][dest] cost dist[v][dest]: dist[v][dest] dist[u][dest] cost next_hop[v][dest] u updated True if dist[v][dest] cost dist[u][dest]: dist[u][dest] dist[v][dest] cost next_hop[u][dest] v updated True print(f第 {round_no} 轮后各节点距离向量: {dist}) if not updated: break return dist, next_hop # 例A-B 开销 2B-C 开销 1C-D 开销 3D-A 开销 6 nodes [A,B,C,D] links [(A,B,2), (B,C,1), (C,D,3), (D,A,6)] dist, next_hop distance_vector_iteration(nodes, links)这段代码的关键是按“轮”同步迭代而不是像最短路径算法那样直接扫一遍所有边收敛。距离向量协议的特性就是每轮只和直连邻居交换路由表所以打印结果能和课后答案的迭代表逐行对上。参数说明max_rounds 设大一点没关系循环会在距离向量不再变化时提前 break链路开销建议用整数避免浮点比较误差。如果答案里的最终路由表和脚本算出的不一致先检查是不是把单向链路误当双向链路——课后题经常在这里埋坑。4. 避坑这份课后答案常见的五个翻车现场4.1 题号对不上答案像“黑匣子”现象做第 3 章 CRC 相关习题时按中文版题号去找答案发现答案文档里的题目内容和自己的书完全对不上。原因严伟、潘爱民翻译的《计算机网络第 5 版》依据的是英文原版第 5 版但很多流传的答案 doc 其实是从英文原版第 4 版或更早的配套答案整理来的题号自然不一样。解决先花十分钟做“题号映射”用题目内容而不是题号去匹配。比如答案里写“Problem 3-12”你去看内容是不是“计算一个 12 位数据序列的 CRC 余数”内容对上再往下做。4.2 混入其他教材答案现象一份 doc 里前半部分还在讲 OSI 七层模型后半部分突然冒出“套接字编程作业”这种自顶向下教材才有的题型。原因这个 doc 在网盘被多次转载整理者把不同书的答案合并保存了文件名却只写了“计算机网络第5版”。解决遇到这种混编情况直接看章节关键词——Tanenbaum 版习题很少出现“编写一个 HTTP 客户端”这类套接字编程题那是“计算机网络自顶向下答案”的特征Tanenbaum 更喜欢“计算传播时延”“画出滑动窗口时序图”这类计算与画图题。混编内容可以直接跳过。4.3 答案跳步路由表只给收敛结果现象距离向量路由题和链路状态路由题的答案只有最终路由表没有“第 1 轮后”“第 2 轮后”的中间表。原因doc 最早由学生手打整理计算过程被省略只保留了最终结果。解决用前文第 3.3 节的迭代脚本把过程补出来逐轮打印后对照最终表是否一致。这也算一种验算方式——中间表既然答案不给你就自己生成一份考试时按脚本输出的顺序默写即可。4.4 背答案换参数就翻车现象把答案背得滚瓜烂熟期末试卷上把“带宽 3kHz”改成“带宽 4kHz”把“信噪比 30dB”改成“25dB”当场卡壳。原因课后题考察的不是某个数值而是公式的使用边界和单位换算过程。解决每次对完答案把题目里的一个参数改掉用自己的推导重算一遍。用第 3.1 节的香农公式脚本做变式练习几分钟就能覆盖五六个改参版本。这个习惯在计算机网络期末复习阶段尤其值钱。4.5 把它当 408 真题复习方向错了现象考 408 的同学拿这本书的课后答案当刷题资料背了大量“面向连接与无连接服务”的概念问答结果真题里考的是综合组网和抓包分析。原因Tanenbaum 这本书偏重原理推导和 408 的考法不完全匹配——408 更接近“给一个网络拓扑算子网”“给一段 TCP 时序画拥塞窗口”的工程应用题。解决把这本书的课后答案当“原理词典”用用来理解概念和推导过程做题训练还是回到王道或谢希仁配套的题目上去。这本书适合打底子不适合当真题库。5. 把课后题变成面试弹药从原理问答到追问链5.1 一个追问链模板TCP 拥塞控制课后题怎么变成面试连环问第 6 章传输层有一道经典课后题描述 TCP 拥塞控制中慢启动、拥塞避免、快重传和快恢复的工作过程。答案 doc 里通常给出一段完整的书面表述可以背但面试官不会让你背他们会追问“慢启动的窗口为什么是翻倍而不是加一”“ssthresh 是怎么定的”“如果收到三个重复 ACK窗口减半还是减到 1”把这道题变成追问链需要按“现象→原因→边界”三层拆解。现象层慢启动阶段每经过一个 RTT拥塞窗口翻倍。原因层指数增长是为了快速探测可用带宽因为新连接不知道网络状况只能从小窗口开始试。边界层ssthresh 通常设为检测到拥塞时窗口的一半一旦发生丢包窗口减半而不是回到 1这是快恢复和慢启动的关键区别。你在面试时把这三层说全比背答案里那段规范表述有用得多。整理追问链时可以拿这份课后答案当索引——答案里的每段长句都是“现象层”书里的图比如拥塞窗口随时间变化的折线图就是“边界层”而“原因层”需要你自己补。下面是一个可以直接套用的追问链模板课后题知识点现象层照答案说原因层自己补边界层面试追问TCP 三次握手客户端发 SYN服务端回 SYN-ACK客户端再回 ACK防止历史重复连接请求建立错误连接为什么不是两次第三次握手丢了会怎样滑动窗口发送端维护发送窗口接收端通告接收窗口对流量进行端到端控制避免接收方来不及处理窗口零怎么办窗口探测距离向量路由路由器只和邻居交换路由表坏消息传播慢可能出现计数到无穷问题毒性逆转技术怎么消除环路5.2 用课后题清单自检 408 覆盖度哪些题可以直接对标真题很多人问湖科大教书匠这类细讲视频适合考 408 吗我的看法是视频能帮你把推导讲透但真正让你记住推导的是自己动手算一遍——而课后题就是最廉价的动手材料。把 408 考纲上的知识节点拿出来逐个对照这本书的课后题物理层的奈奎斯特和香农公式对应“数据通信基础”数据链路层的 CRC 和滑动窗口对应“流量控制与可靠传输”网络层的路由算法对应“路由与转发”传输层的拥塞控制对应“TCP 可靠传输”。每找到一个对应题号就在考纲清单上打个勾。这个动作的价值是查出“考纲覆盖盲区”。比如 408 考纲里“IPv6 基本概念”和“移动 IP 的概念”这两条在这本书里能找到对应章节的复习题但答案 doc 往往只有一两行结论。如果你只是对着答案背就很难应对考试里那些绕弯的题。覆盖度清单做完后你会发现大部分计算题的知识点都集中在网络层和传输层这与王道那类复习资料把网络层和传输层列为重点章节的做法完全一致——不是资料编得偏心而是考点本身就这么分配。5.3 组一个“答案校对小组”用抓包结果反查答案课后答案不是不能质疑而是要有依据地质疑。第 4 章避坑里提到答案可能跳步、可能混编但真正判断一道题“答错了”最好用实验事实说话。这本书第 6 章的 TCP 状态转换图有配套课后题答案里写“主动关闭方最后要经过 TIME_WAIT 状态等待 2 倍最大报文段生存时间”这个结论用 Wireshark 抓一次包就能验证本机发起一次 HTTP 请求后关闭连接在过滤器中输入tcp.flags.fin 1观察最后一个 FIN 之后的状态就能看到 TIME_WAIT 的实际表现。这种做法本质上是在给答案做“双盲测试”——先自己写答案再用工具验证最后才翻开 doc 对照。很多学校的计算机网络实验一就是抓包看三次握手本质是同一件事协议栈的行为是公开的课后答案只是对协议行为的文字描述描述得对不对抓包一看便知。把这种习惯带到复习中这份 doc 就不再是权威而是你学习过程中的一个普通核对对象。6. 最后一章期末冲刺的一个验证技巧给每道题标三档状态期末冲刺阶段别再从头到尾翻答案了。把做过的每道课后题按“能默写结论、能独立推导、能给别人讲明白”三档重新标注一遍。能默写结论是最低档说明只是短期记忆能独立推导是中间档说明你掌握了公式和过程能给别人讲明白是最高档说明你连边界条件和易错点都心里有数。每道计算题都问自己一句“如果把信噪比从 30dB 改成 20dB我能不能不查公式直接写出推导”能写出这道题才真正属于你。这个方法我当年期末复习时没做到代价是考试考了一道变式题——把书上的经典例题改了带宽参数我按背下来的答案填结果整个数量级都错了。那次之后我才明白课后答案最大的陷阱不是答案本身有错而是它让你误以为“看懂了”就等于“会做了”。从那以后凡是涉及公式的题我都坚持把公式推导手写一遍再用脚本验算确认数值对得上才在题号前打勾。这套做法放到现在依然适用网络上这份严伟、潘爱民版的课后答案 doc 不会消失它仍然是很多人期末冲刺时的救命稻草。但真正让计算机网络这门课变得有用的从来不是背下答案里的哪句话而是你能不能在遇到一个没见过的网络问题时自己把那句话推导出来。希望这份复习思路帮到你也祝你把这本书啃透之后面对任何网络问题都能心里有底。本文还有配套的精品资源点击获取

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑