谢希仁计算机网络第五版(第4章)课后习题答案

发布时间 : 星期一 文章谢希仁计算机网络第五版(第4章)课后习题答案更新完毕开始阅读

4-10 试辨认以下IP地址的网络类别。

(1) 128.36.199.3 (2) 21.12.240.17 (3) 183.194.76.253 (4) 192.12.69.248 (5) 89.3.0.1 (6) 200.3.6.2

答案:(1) 128.36.199.3 B类网

(2) 21.12.240.17 A类网 (3) 183.194.76.253 B类网 (4) 192.12.69.248 C类网 (5) 89.3.0.1 A类网 (6) 200.3.6.2 C类网 4-11 IP数据报中的首部检验和并不检验数据报中的数据。这样做的最大好处是什么?坏处是什么?

答案:好处是数据报每经过一个结点,结点只检查首部的检验和,使结点工作量降低,网络速度加快。

坏处是只检验首部,不包括数据部分,即使数据出错也无法得知,只有到目的主机才能发现。

4-12 当某个路由器发现一IP数据报的检验和有差错时,为什么采取丢弃的办法而不是要求源站重传此数据报?计算首部检验和为什么不采用CRC检验码?

答案:之所以不要求源站重发,是因为地址子段也有可能出错,从而找不到正确的源站。

数据报每经过一个结点,结点处理机就要计算一下校验和。不用CRC,就是为了简化计算。

4-13.设IP数据报使用固定首部,其各字段的具体数值如图所示(除IP地址外,均为十进制表示)。试用二进制运算方法计算应当写入到首部检验和字段中的数值(用二进制表示)。

4

5

1

4

17

10.12.14.5

12.6.7.9

0

0

28

0

1000101 00000000 00000000-00011100 00000000 00000001 00000000-00000000 00000100 00010001 xxxxxxxx xxxxxxxx 00001010 00001100 00001110 00000101

00001100 00000110 00000111 00001001 作二进制检验和(XOR) 01110100 01001110取反码 10001011 10110001

4-14. 重新计算上题,但使用十六进制运算方法(没16位二进制数字转换为4个十六进制数字,再按十六进制加法规则计算)。比较这两种方法。

01000101 00000000 00000000-00011100 4 5 0 0 0 0 1 C

00000000 00000001 00000000-00000000 0 0 0 1 0 0 0 0 00000100 000010001 xxxxxxxx xxxxxxxx 0 4 1 1 0 0 0 0 00001010 00001100 00001110 00000101 0 A 0 C 0 E 0 5 00001100 00000110 00000111 00001001 0 C 0 6 0 7 0 9 01011111 00100100 00010101 00101010 5 F 2 4 1 5 2 A

5 F 2 4 1 5 2 A

7 4 4 E-?8 B B 1

4-15.什么是最大传送单元MTU?它和IP数据报的首部中的哪个字段有关系? 答:IP层下面数据链里层所限定的帧格式中数据字段的最大长度,与IP数据报首部中的总长度字段有关系

4-16 在因特网中将IP数据报分片传送的数据报在最后的目的主机进行组装。还可以有另一种做法,即数据报片通过一个网络就进行一次组装。试比较这两种方法的优劣。 答案:前一种方法对于所传数据报来将仅需要进行一次分段一次组装,用于分段和组装的开销相对较小。

但主机若在最终组装时发现分组丢失,则整个数据报要重新传输,时间开销很大。 后一种方法分段和组装的次数要由各个网络所允许的最大数据报长度来决定,分段和组装的开销相对较大。但若通过一个网络后组装时发现分段丢失,可以及时地重传数据报,时间开销较前者小,同时可靠性提高。

4-17 一个3200位长的TCP报文传到IP层,加上160位的首部后成为数据报。下面的互联网由两个局域网通过路由器连接起来。但第二个局域网所能传送的最长数据帧中的数据部分只有1200位。因此数据报在路由器必须进行分片。试问第二个局域网向其上层要传送多少比特的数据(这里的“数据”当然指的是局域网看见的数据)? 答案:IP数据报的长为:3200+160=3360 bit

第二个局域网分片应分为 [3200/1200]=3片。 三片的首部共为:160*3=480 bit

则总共要传送的数据共3200+480=3680 bit。

4-18(1)有人认为:“ARP协议向网络层提供了转换地址的服务,因此ARP应当属于数据链路层。”这种说法为什么是错误的?

(2)试解释为什么ARP高速缓存每存入一个项目就要设置10~20分钟的超时计时器。这个时间设置得太大或太小会出现什么问题?

(3)至少举出两种不需要发送ARP请求分组的情况(即不需要请求将某个项目的IP地址解析为相应的硬件地址)。 答案:(1)ARP不是向网络层提供服务,它本身就是网络层的一部分,帮助向传输层提供服务。在数据链路层不存在IP地址的问题。数据链路层协议是像HDLC和PPP这样的协议,它们把比特串从线路的一端传送到另一端。

(2)ARP将保存在高速缓存中的每一个映射地址项目都设置生存时间(例如,10~20分钟)。凡超过生存时间的项目就从高速缓存中删除掉。设置这种地址映射项目的生存时间是很重要的。设想有一种情况,主机A和B通信,A的ARP高速缓存里保存有B的物理地址,但B的网卡突然坏了,B立即更换了一块,因此B的硬件地址就改变了。A还要和B继续通

信。A在其ARP高速缓存中查找到B原先的硬件地址,并使用该硬件地址向B发送数据帧,但B原先的硬件地址已经失效了,因此A无法找到主机B。是过了一段时间,A的ARP高速缓存中已经删除了B原先的硬件地址(因为它的生存时间到了),于是A重新广播发送ARP请求分组,又找到了B。

时间设置太大,造成A一直空等而产生通讯时延,网络传输缓慢。若太小,有可能网络状况不好,B暂时没有应答A,但A已经认为B的地址失效,A重新发送ARP请求分组,造成通讯时延。

(3)主机A和B通讯,A的ARP高速缓存里保存有B的物理地址,此时不需要发送ARP请求分组。

当主机A向B发送数据报时,很可能不久以后主机B还要向A发送数据报,因而主机B也可能要向A发送ARP请求分组。为了减少网络上的通信量,主机A在发送其ARP请求分组时,就将自己IP地址到硬件的映射写入ARP请求分组。当主机B收到A的ARP请求分组时,就将主机A的这一地址映射写入主机B自己的ARP高速缓存中。这对主机B以后向A发送数据报时就更方便了。

4-19. 主机A发送IP数据报给主机B,途中经过了5个路由器。试问在IP数据报的发送过程总共使用几次ARP?

解:前提,理论上当前主机路由器arp表中都没有下一跳路由器MAC 共需6次,主机A先通过arp得到第一个路由器的MAC,之后每一个路由器转发前都通过ARP得到下一跳路由器的MAC,最后一条路由器将IP包发给B前仍要通过ARP得到B的MAC,共6次。

4-20. 设某路由器建立了如下路由表(这三列分别是目的网络、子网掩码和下一跳路由器,若直接交付则最后一列表示应当从哪一个接口转发出去):

目的网络 子网掩码 下一跳

128.96.39.0 255.255.255.128 接口0

128.96.39.128 255.255.255.128 接口1

128.96.40.0 255.255.255.128 R2

192.4.153.0 255.255.255.192 R3

*(默认) - R4

现共收到5个分组,其目的站IP地址分别为: (1)128.96.39.10 (2)128.96.40.12 (3)128.96.40.151 (4)192.4.153.17 (5)192.4.153.90 试分别计算其下一跳。

解:(1)分组的目的站IP地址为:128.96.39.10。先与子网掩码255.255.255.128

相与,得128.96.39.0,可见该分组经接口0转发。

(2)分组的目的IP地址为:128.96.40.12。

① 与子网掩码255.255.255.128相与得128.96.40.0,不等于128.96.39.0。 ② 与子网掩码255.255.255.128相与得128.96.40.0,经查路由表可知,该项分组经R2转发。

(3)分组的目的IP地址为:128.96.40.151,与子网掩码255.255.255.128相与后得128.96.40.128,与子网掩码255.255.255.192相与后得128.96.40.128,经查路由表知,该分组转发选择默认路由,经R4转发。

(4)分组的目的IP地址为:192.4.153.17。与子网掩码255.255.255.128相与后得192.4.153.0。与子网掩码255.255.255.192相与后得192.4.153.0,经查路由表知,该分组经R3转发。

(5)分组的目的IP地址为:192.4.153.90,与子网掩码255.255.255.128相与后得192.4.153.0。与子网掩码255.255.255.192相与后得192.4.153.64,经查路由表知,该分组转发选择默认路由,经R4转发。

4-21某单位分配到一个B类IP地址,其net-id为129.250.0.0。该单位有4000台机器,平均分布在16个不同的地点。如选用子网掩码为255.255.255.0,试给每一地点分配一个子网号码,并计算出每个地点主机号码的最小值和最大值。

答:4000/16=250,平均每个地点250台机器。如选255.255.255.0为掩码,则每个网络所连主机数=28-2=254>250,共有子网数=28-2=254>16,能满足实际需求。

可给每个地点分配如下子网号码

地点: 子网号(subnet-id) 子网网络号 主机IP的最小值和最大值

1: 00000001 129.250.1.0 129.250.1.1---129.250.1.254

2: 00000010 129.250.2.0 129.250.2.1---129.250.2.254

3: 00000011 129.250.3.0 129.250.3.1---129.250.3.254

4: 00000100 129.250.4.0 129.250.4.1---129.250.4.254

5: 00000101 129.250.5.0 129.250.5.1---129.250.5.254

6: 00000110 129.250.6.0 129.250.6.1---129.250.6.254

7: 00000111 129.250.7.0 129.250.7.1---129.250.7.254

8: 00001000 129.250.8.0 129.250.8.1---129.250.8.254

9: 00001001 129.250.9.0 129.250.9.1---129.250.9.254

10: 00001010 129.250.10.0 129.250.10.1---129.250.10.254

11: 00001011 129.250.11.0 129.250.11.1---129.250.11.254

联系合同范文客服:xxxxx#qq.com(#替换为@)