ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

计算机网络谢希仁第七版课后题答案:分组交换时延与CRC计算避坑指南

计算机网络谢希仁第七版课后题答案:分组交换时延与CRC计算避坑指南 简介计算机网络谢希仁第七版课后题答案完整版适合计算机考研及网络基础学习者使用对应广工等高校指定参考书可帮助系统梳理课后习题与核心考点。资源共包含1个docx文档大小约10.23MB内容为按章节编排的完整答案便于检索和打印。文档覆盖计算机网络服务、分组交换、电路交换与报文交换比较、因特网发展历程、网络分类等核心知识点并对时延计算、分组最小时延等典型题目附有推导过程同时解释了边缘部分与核心部分、主干网与接入网等易混淆概念每道题答案简洁明确关键公式推导完整适合对照教材逐章自测与巩固。尤其适合总复习阶段快速回顾核心考点。已有2041人学习下载是备考生与自学者查漏补缺的实用资料。1. 从课后答案反推考点这份《计算机网络谢希仁第七版课后题答案完整版.docx》能帮你省多少时间第一次翻开谢希仁《计算机网络》第七版的人多半会在第一章的 1-10 和 1-11 两题上卡很久。这两道题问的是同一件事分组交换到底比电路交换快多少分组长度取多大总时延最小。考研 408 和高校期末卷子都爱拿它们出计算题而答案里那个s (k-1)×(p/b)的结论很多同学背下来了却不知道它是怎么推出来的。这份 docx 的价值在于它把全书课后题的解答过程按章节整理好了不是只给一个最终数字而是带着推导步骤和公式来源。适合三类人——准备考研 408 计算机网络部分的考生、本科期末考前突击的学生以及工作后想快速回补网络基础的工程师。接下来我按资源覆盖的章节顺序把里面值得反复看的考点和容易踩的坑拆开讲。2. 交换时延与分组交换先搞懂三类考法的计算差别2.1 电路交换、报文交换、分组交换的取舍逻辑谢希仁第一章开篇就要求从多个方面比较三种交换方式。很多初学者直接背表格但题目稍微变一下就不会做。我一般建议先抓到本质区别电路交换是预约资源报文交换是整包存储转发分组交换是把报文拆小后再存储转发。从资源占用角度看电路交换一旦建立连接信道带宽就固定给这对通信双方哪怕不说话也占着报文交换和分组交换都是共享信道谁有数据谁用。从时延构成看电路交换的时延里多了一项电路建立时间s分组交换的时延里多了一项每跳路由器的存储转发时延。下面这个表基本覆盖了考试里所有对比题的得分点交换方式资源分配时延来源适用场景电路交换预先分配独占信道建立时间 传输时延 传播时延连续大数据量传输如传统电话报文交换动态逐段占用存储转发 传输时延 传播时延突发性数据但报文过大时排队明显分组交换动态逐段占用每跳存储转发 传输时延 传播时延互联网主流方式适合交互式应用2.2 分组交换时延公式为什么答案里有(k-1)×(p/b)这一项题目 1-10 是这一章最典型的计算题。要传送报文共xbit源点到终点共k段链路每段传播时延d数据率b电路建立时间s分组长度p。答案给出的分组交换时延是分组交换时延 kd (x/p)×(p/b) (k-1)×(p/b)关键在前两项的理解。kd是每段链路的传播时延之和这个好办。(x/p)×(p/b)是所有分组的发送时延总和——因为每个分组都要在链路上花p/b秒发送一共有x/p个分组这个跟链路段数无关因为分组是流水线式发出的第一个分组还没到终点时后续分组已经在路上。真正容易漏的是(k-1)×(p/b)这一项它代表每个分组在中间路由器上的存储转发延迟。注意是k-1而不是k因为最后一个路由器转发完后分组到达终点不需要再转发一次。做这道题时我习惯先画一条线标出源点、终点和中间的k-1个路由器数一遍转发次数。很多同学把k当成结点数结果k-1算成了k白白丢分。答案里那句“当s (k-1)×(p/b)时电路交换时延比分组交换大”就是直接比较两式得来的。2.3 最小时延的分组长度对 p 求导那个“玄学”考点1-11 题是 1-10 的进阶版。报文长度和分组长度分别为x和(ph)其中p是数据部分h是每个分组的控制信息固定长度。求使总时延最小的p。答案是p [(xh)/(k-1)]^0.5这个根号让很多人不理解来由。这里要控制信息h带来的额外开销也计入发送时延。总时延 D 的完整表达式是D (x/p)×((ph)/b) (k-1)×((ph)/b)传播时延和排队时延被忽略后D 只由发送时延和存储转发时延组成。把 D 展开D (x/b)×(1 h/p) (k-1)/b×(p h)第一项里p越大每个分组携带的有效数据越多分组数x/p越少总开销越小但第二项里p越大每个分组在路由器上的存储转发时间(ph)/b越长。两边是矛盾的所以存在一个最优值。求导令 D 0就得到p [(xh)/(k-1)]^0.5。理解了这个平衡逻辑考试时就算忘了公式也能现场推。2.4 关键计算题用十几行脚本验算比手推快得多这类时延计算题很适合用 Python 验算避免考场手算出错。以 1-28 题的四种情况为例file_size 1.5 * 1024 * 1024 * 8 # 1.5MB 换算成比特这里 M 2^20 packet_size 1024 * 8 # 1KB 分组换算成比特 rtt 0.08 # RTT 80ms rate 10 * 10**6 # 10Mb/s total_packets file_size // packet_size # 1536 个分组 send_time file_size / rate # 情况1连续发送最后分组还需要 0.5 RTT 的传播时间 t1 2 * rtt send_time 0.5 * rtt print(f情况1: {t1:.3f}s) # 情况2每发一个分组等一个 RTT t2 2 * rtt send_time 0.5 * rtt (total_packets - 1) * rtt print(f情况2: {t2:.3f}s)输出分别是1.458s和124.258s跟答案一致。注意代码里file_size的换算1.5MB里的M是2^20不是10^6这个坑每年都有人踩。参数设计上packet_size必须先把 KB 换算成 bit 再参与除法否则分组数和发送时延都会差 8 倍。3. 分层体系与协议栈为什么“协议—服务”是必考题3.1 五层体系各层边界一张图看清每层的 PDU 和职责谢希仁在 1-24 题里要求论述五层协议的网络体系结构要点。这道题几乎每年都出现在考研真题的简答题里值得完整背下来。五层结构融合了 OSI 七层和 TCP/IP 四层的优点各层职责和协议数据单元 PDU 的对应关系如下层次典型设备PDU核心职责应用层主机进程报文为用户应用进程提供服务如 HTTP、DNS运输层主机端口报文段端到端通信复用分用如 TCP、UDP网络层路由器分组/数据报路由选择跨网络寻址如 IP数据链路层交换机/网卡帧相邻结点间可靠传输差错检测物理层中继器/集线器比特流透明传输比特流定义接口标准这里有个细节经常被忽略物理层传递信息的媒体如双绞线、光缆是“第 0 层”不是物理层本身。谢希仁特意在题解里标注了这一点考试时如果问“物理层包括传输媒体吗”答案是明确不包括。这一章还有一种出题方式是把某层功能描述混在一起让你判断属于哪一层比如“选择路由使分组到达目的主机”是网络层“通过复用分用向两个进程提供端到端服务”是运输层。3.2 协议是“水平的”服务是“垂直的”1-21 题问协议与服务的区别和联系这是另一个高频简答题。核心就是两句话联系是协议控制对等实体通信本层靠协议向上层提供服务同时还要用下层提供的服务区别是协议是水平的服务是垂直的。所谓“水平”是指两个对等层实体之间的通信规则比如两台主机的运输层之间靠 TCP 协议沟通“垂直”是指下层通过层间接口向上层提供服务这是本地的、单向的。考试里最常见的考察方式是先解释这两个词再问“服务用户能看见协议吗”。答案是不能。本层的服务用户只能看见服务看不见下面的协议——就像你使用微信聊天能感知到的是应用层的服务底层 TCP 怎么分片、IP 怎么路由对你完全透明。这也是“透明”这个概念的考试意义。1-25 题问日常生活中的“透明”例子电视、操作系统窗口都是考试里如果遇到“透明传输是什么”核心就是“不管所传数据是什么样的比特组合都应该能在链路上传送”对应到 3-11 题里电话通信不透明、电子邮件一般透明。3.3 从 internet 和 Internet 看 TCP/IP 协议的考试套路1-07 题区分小写开头的internet和大写开头的Internet。前者是通用名词泛指多个计算机网络互连而成的网络通信协议可任意选择后者是专用名词特指采用 TCP/IP 协议的互联网络。答案里那句“后者实际上是前者的双向应用”说的就是Internet 是 internet 的一个具体实例只是它强制使用 TCP/IP 协议族。这个区分在之后的“everything over IP”和“IP over everything”里会再次出现。1-27 题问这两个短语的含义everything over IP 指 TCP/IP 协议可以为各式各样的应用提供服务也就是应用层不管是什么业务——网页、视频、文件传输——都能跑在 IP 之上IP over everything 指 IP 协议可以在各式各样的网络上运行不管是以太网还是点到点链路。这两句话合起来就是 TCP/IP 协议栈设计哲学的精髓IP 层作为“万能承载网”向上屏蔽异构网络的差异向下兼容几乎所有物理网络。考试里如果出判断题说“IP 只能运行在以太网上”那一定是错的。4. 物理层与数据链路层香农、CRC、PPP 三座大山怎么搬4.1 奈氏准则与香农公式信噪比的计算别只会背公式第二章最核心的计算集中在奈氏准则和香农公式。奈氏准则给出了码元传输速率的极限理想低通信道下最高码元速率是带宽的两倍。香农公式给出了信息传输速率的极限C W×log2(1 S/N)。2-08 题要求计算 3kHz 带宽电话信道传 64kb/s 数据所需的信噪比答案是约 64.2dB。很多同学算出比值后不知道怎么转成分贝这里记住公式信噪比(dB) 10×log10(S/N)64.2dB 对应的 S/N 大约是 2.63×10^6说明这个信道对信噪比的要求极高。2-09 题是香农公式的进阶考法带宽 3100Hz最大传输速率 35kb/s想让速率增加 60%问信噪比增大到多少倍。解法分三步C1/W 35000/3100 ≈ 11.29 S/N1 2^11.29 - 1 S/N2 2^(1.6×11.29) - 1 2^18.06 - 1 S/N2 / S/N1 ≈ 109.5所以信噪比要增大到约 109.5 倍。接着问如果信噪比再增大十倍最大信息速率能否再增 20%。算出来的结果是只能再增约 18.3%达不到 20%。这说明什么对数函数增长缓慢想靠堆信噪比换速率边际效果递减。考试时遇到这种题先把公式写出来再逐层代入注意W的单位是 HzC的单位是 b/s。4.2 CRC 校验模 2 除法的考场速算与验算第三章 3-07 题是 CRC 校验的经典题数据 1101011011生成多项式P(X) X^4 X 1求余数。生成多项式对应的除数是 100114 次方所以后面补 4 个 0把数据左移 4 位变成 11010110110000做模 2 除法。模 2 除法跟普通除法的区别在于每一步做减法时按位异或不借位。手算步骤长我一般直接用 Python 验算def crc_remainder(data: str, divisor: str) - str: # 补齐除数长度减一个零 data data 0 * (len(divisor) - 1) data list(data) div_len len(divisor) for i in range(len(data) - div_len 1): if data[i] 1: for j in range(div_len): data[i j] str(int(data[i j]) ^ int(divisor[j])) return .join(data[-(div_len - 1):]) print(crc_remainder(1101011011, 10011)) # 输出 1110crc_remainder函数把数据补零后逐位异或最后取除数长度减 1 的余数。输出1110与答案一致。接收端收到数据和余数后用同样的多项式再除一次如果余数为 0则认为没有出错不为 0 说明传输有误。3-07 题里说“最后一位 1 变 0”和“最后两位 1 都变 0”都能被查出是因为 CRC 的检错能力跟多项式有关这两个错误模式都能被 10011 检测出来。注意一个结论CRC 能检错但数据链路层还不是可靠传输因为它没有重传机制。这个考点在 3-07 答案里专门强调了。4.3 PPP 协议字节填充与零比特填充的“隐形陷阱”PPP 协议是第三章必考内容最容易丢分的点是帧填充。3-09 题给出一段十六进制数据7D 5E FE 27 7D 5D 7D 5D 65 7D 5E问真正的数据是多少。规则是异步传输时信息字段里出现0x7E帧定界符就转成0x7D 5E出现0x7D转义字符就转成0x7D 5D。所以反过来7D 5E还原成7E7D 5D还原成7D答案就是7E FE 27 7D 7D 65 7E。注意原数据里FE 27和65没有转义保留原样。3-10 题考同步传输的零比特填充数据 0110111111111100遇到连续 5 个 1 就填入一个 0。发送端处理后的结果是 0110111110111110。接收端收到 0001110111110111110110 后删掉 5 个连续 1 后面的 0还原成 000111011111111110。这个“逢五填零、见零删零”的口诀考试时特别容易数错连续 1 的个数。我建议在草稿纸上给原比特串从右往左分组每 8 个一组数到第 5 个连续 1 时停下来看后面是不是 1如果是就填 0这样不容易漏。PPP 不采用帧编号的原因是它只检错不纠错可靠传输交给上层 TCP 处理。4.4 CDMA 码片序列内积归一化判断“谁在说话”2-16 题是 CDMA 计算的必考题。题目给了 4 个站的码片序列 A、B、C、D收到的码片序列 S问哪个站发了数据、发的是 0 还是 1。解法就是做内积后除以 8码片长度结果大于 0 表示发 1小于 0 表示发 0等于 0 表示没有发送。A 和 D 的结果是 1B 是 -1C 是 0所以 A、D 发 1B 发 0C 没发。这里有一个计算技巧码片序列里-1和1的乘法要特别细心一不留神符号就反了。我一般先把 S 的每一位和目标的码片逐位相乘然后累加结果除以码片长度。推荐在草稿纸上列一个两行的对齐表格上下对应相乘减少符号错误。2-15 题解释 CDMA 为什么能不干扰——各用户使用相互正交的码片序列正交意味着内积为 0所以同时同频通信也互不影响。优点是抗干扰强、保密性好缺点是占用带宽大。5. 避坑指南课后题答案里没写透的五个高频失分点5.1 单位换算“M”到底是10^6还是2^20现象算 1-28 题时把 1.5MB 当成1.5×10^6字节结果发送时延差了 4.86%最终答案跟标准答案对不上。原因谢希仁教材里数据量用二进制单位1MB 2^20字节数据率用十进制单位1Mb/s 10^6b/s。两种“M”混用是最大坑。解决做题前先统一单位。数据量一律换算成比特且 1MB 2^20 × 8bit速率里的 M 按10^6处理。实在记不住就在草稿纸上写明“数据量 M 2^20速率 M 10^6”每次列式子前强制核对一遍。5.2 存储转发次数k段链路不等于k次转发现象计算分组交换时延漏掉(k-1)×(p/b)或写成k×(p/b)导致整个时延差了一项。原因把“k 段链路”理解成“k 个路由器”。实际上 k 段链路中间有k-1个路由器每个路由器转发一次所以存储转发时延的系数是k-1不是k。解决画一条水平线左边源点、右边终点中间画k-1个小圆圈代表路由器标上序号。每层的存储转发发生在路由器上终点只接收不转发。画完图再列公式错误率能降一半。5.3 RTT 计算建立连接的2×RTT和最后分组的0.5×RTT总被漏现象算 1-28 题第一种情况直接写了发送时延 0.5×RTT忘加建立 TCP 连接的2×RTT结果少了 0.16s。原因建立 TCP 连接需要三次握手前两次各占一个 RTT这对应答案里的2×RTT。最后一个分组到达接收方只需要半个 RTT是因为传播时延是单向的而 RTT 是往返时间。解决把“总时间 连接建立 发送阶段 最后一个分组的传播”拆成三段分别计算最后再加总。连接建立固定2×RTT最后一段固定0.5×RTT中间才是发送时间。5.4 CRC 模 2 除法减法不借位按位异或现象手算 3-07 题的 CRC 余数按普通除法做减法结果算出一个跟标准答案完全不同的余数。原因模 2 除法里“减”是异或运算1-10、0-11没有借位。初次手算的人很容易套用十进制除法的借位规则。解决第一步先把生成多项式对应的二进制写出来比如X^4X1对应 10011。做除法时当前位是 1 就对除数逐位异或当前位是 0 就跳过。每步只操作高位的len(divisor)位算完再补位。不确定时用前面给的小函数验算一遍。5.5 PPP 转义只处理7E和7D别把普通字节也转义了现象做 3-09 题把FE 27也当成需要转义的字节结果还原后的数据多出了7D。原因PPP 异步传输只对0x7E和0x7D两个字节做转义。FE、27不在这两个值范围内原样保留。解决先圈出数据中的7D 5E和7D 5D组合分别替换成7E和7D其他字节不动。还原后重新数一遍字节数原数据有几个字节还原后也必须是一样多——这是自检的好办法。6. 把这套答案用出最大价值配合视频课与真题的复习节奏拿到这份 docx别从头到尾当小说看。我一般是按“解题答案 → 考点总结 → 错题标记 → 真题验证”四个步骤循环使用。具体操作是每学完一章先不看答案把课后题做一遍再打开 docx 对照。做对的题简单扫一眼答案的表述就行重点看那些做错的和没思路的。对照时不要只看结果数字要看答案里的推导过程——比如 1-11 题求导答案直接给了p [(xh)/(k-1)]^0.5但如果只是记住这个式子换一道数据题还是不会。要顺着答案把求导过程推一遍确认自己理解 D 的展开式里哪一项来自发送时延、哪一项来自存储转发。如果配着湖科大教书匠或王道计算机网络的视频课复习建议以课程章节为骨架、这份答案为练习题册。算法题如 CRC、香农公式直接看答案的最终数是没用的要自己在草稿纸推一遍再对照。视频课讲到某个知识点时比如“分组交换为什么是互联网的核心”立刻翻到对应题号做一遍趁热打铁。对于期末考前突击的优先吃透第一章、第二章的计算题和第三章的协议分析题这些是最容易考原题或改编题的部分。这份 docx 是 Word 格式里面包含公式和表格在 Windows 上用“搜索正文内容”功能可以直接定位到指定题号。另有一个进阶用法把里面反复错的题摘出来做成 Markdown 格式的错题本每题附上自己的推导过程。还有同学把答案里的大题结论整理成一张速查表考前只看表上那十几个公式和结论比如奈氏准则C 2W、香农公式C W log2(1S/N)、分组交换时延公式、CRC 生成多项式余数表背熟比临时翻书快得多。第八版教材出来后有一部分题号跟第七版对不上但核心考点基本一致用这份答案复习时注意按知识点对照不必完全按题号走。我自己备考时吃过一次亏当时只看答案不手算以为把公式记下来就够了结果模拟卷上一道 CRC 计算题手算了三遍每次余数都不一样。从那以后我每次做题都强制自己在草稿纸上完整走一遍计算过程再跟 docx 对照。现在我把这个习惯推荐给身边每个学网络的人不管是考研还是期末计算题一定亲手算到和答案一致再算过。这份资源的题解足够完整剩下的就是把它真正“练进”手里。希望帮到你。本文还有配套的精品资源点击获取
返回列表