发布时间:2023-10-04 13:00
本书为计算机网络(第五版)Andrew S. Tanenbaum、David J. Wetherall著 ;严伟 潘爱民 译 习题为课堂作业
11、参考图中的网络。试问若使用一下方法,从B发出的一次广播将生产多少个数据包?(1)逆向路径转发(2)汇集树
解:(1) 逆向路径转发算法需要五次传播完成,五次接收者分别是 AC, DFIJ, DEGHIJKN, GHKN, 和
LMO。一共需要生成21个数据包。 () 汇集树需要4次传播,一共14个数据包。
13、请计算下面网络中路由器C生成的组播生成树。组成员分布在路由器A、B、C、D、E、F、I、K上。
解:生成树有多种可能,其中一个是:
19、在一个6Mbps网络上有一台主机,其流量通过一个令牌桶整型,令牌桶的填充速率为1Mbps。初始时令牌桶被填满到容量8MB。试问该计算机能以6Mbps的全速率传输多长时间。
解:用公式s=c/(m−ρ)可以得到正确的答案。我们得到s=8/(6−1)或1.6秒。
20、图中的网络使用RSVP预留资源主机1和主机2的组播树如图所示。假设主机3请求一条带宽为2Mbps的信道用于接收主机1的流,以及一条带宽为1Mbps的信道用于接收主机2的流。同时,主机4请求一条带宽为2Mbps的信道用于接收主机1 的流;主机5请求一条带宽为1Mbps的信道用于接收主机2 的流。试问在路由器A、B、C、E、H、K、J和L上,总共需要为这些请求预留多少带宽?
解:分别为2Mbps,0Mbps,1Mbps,3Mbps,3Mbps,3Mbps,2Mbps,1Mbps。
23、假设主机A和路由器R1连接,R1又与另一个路由器R2连接,R2与主机B连接,假定一个要发给主机B的TCP消息被传递给主机A的IP代码,其中包含了900个字节的数据包和20个字节的TCP头。请写出在三条链路上传输的每个数据包中IP头部的 Total length、Identification、DF、MF、和Fragment offset字段。假定链路A-R1链路可以支持的最大帧长为1024字节,其中包括14字节的帧头;链路R1-R2可以支持的最大帧长为512字节,其中包括8字节的帧头;链路R2-B可以支持的最大帧长为512字节,其中包括12字节的帧头。
解:在第一条线路上不需要分段,数据包包括900个字节的数据,20字节的TCP头以及20字节的IP头。
在第二条和第三条线路上需要分成两个包,所以会增加一个20字节的IP头。
(解释一下,offset的意思是偏移量,这个字段在ipv4协议上有13位,分段的长度必须是8的字节的倍数,为什么要是8的倍数?表示的多呗,14亿人口乘个8试试。本题中ip数据包的payload字段是920字节,第二三线路均分为两个包,第一个包是480字节加上ip头,所以下一个字段在整个数据中的偏移量自然是60乘8等于480字节了。)
A-R1:
Length = 940; ID = x; DF = 0; MF = 0; Offset = 0
R1-R2:
(1) Length = 500; ID = x; DF = 0; MF = 1; Offset = 0
(2) Length = 460; ID = x; DF = 0; MF = 0; Offset = 60
R2-B:
(1) Length = 500; ID = x; DF = 0; MF = 1; Offset = 0
(2) Length = 460; ID = x; DF = 0; MF = 0; Offset = 60
25、一个IP数据报使用了严格源路由选项,现在它必须被分段。你认为该选项应该被复制到每个段中,还是只需放到第一个段中就去足够了?
解:由于路由每个片段都需要该信息,该选项必须出现在每个片段中。
26、假定最初的B类地址的网络部分不是16位,而是20位。试问将有多少个B类网络。
解:B类网络地址开端为10,如果使用20位网络地址,那么还有18位可以分配,即网络数为 218=262,144,但是全0与全1不能使用,所以一共有262142个网络。
27、一个IP地址的十六进制表示为C22F1582,请将它转换为点分十进制表示法。
解:194.47.21.130。
28、Internet上一个网络的子网掩码为255.255.240.0。试问它最多能容纳多少主机。
解:易知主机位数为12位,所以可以容纳的主机数为:212-2=4094。(全0与全1一般不使用)。
30、从198.16.0.0开始有大量连续的IP地址可以使用。假设4个组织A、B、C、D按照顺序依次申请4000、2000、4000、和8000个地址。对于每一个申请,请用w.x.y.z/s的形式写出所分配的第一个IP地址、最后一个IP地址以及掩码。
解:A: 198.16.0.0 – 198.16.15.255 written as 198.16.0.0/20
B: 198.16.16.0 – 198.16.23.255 written as 198.16.16.0/21
C: 198.16.32.0 – 198.16.47.255 written as 198.16.32.0/20
D: 198.16.64.0 – 198.16.95.255 written as 198.16.64.0/19
31、一个路由器刚刚接收到以下新的IP地址:57.6.96.0/21,57.6.104.0/21,57.6.112.0/21和57.6.120.0./21。如果所有这些地址都使用同一条出境线路,试问它们可以被聚合吗?如果可以,将被聚合到哪个地址上?
解:聚合地址为57.6.96.0/19。
32、从29.18.0.0到29.18.128.255的一组IP地址已经被聚合到29.18.0.0/17。然而,这里有一个空闲地址块,即从29.18.60.0到29.18.63.255之间的1024个地址还没有分配。现在这块空闲地址要分配给一台使用不同出境线路的主机。试问是否有必要将聚合地址分割成几块,然后把新的地址加入到路由表中,再来看是否可以重新聚合?如果没有必要,应该怎么办?
解:为新块添加一个新表条目就足够了:29.18.0.0/22。如果一个传入的数据包匹配29.18.0.0/17和29.18.0.0/22,最长的数据包将获胜。此规则可以将一个大块分配给一个传出行,但对其范围内的一个或多个小块做一个例外。
33、一个路由器的路由表中有如下表项:
地址/掩码 | 下一跳 |
---|---|
135.46.56.0/22 | Interface 0 |
135.46.60.0/22 | Interface 1 |
135.46.40.0/23 | Router 1 |
default | Router 2 |
对于下列IP地址,如果到达的数据包带有这些地址,试问路由器如何处理?
(1)135.46.63.10(2)135.46.57.14(3)135.46.52.2(4)192.53.40.7(5)192.53.56.7
解:(1)下一跳为interface1(2)下一跳为interface0(3)下一跳为router2(4)下一跳为router1(5)下一跳为router2。