计算机网络第四版(课后练习+答案) 联系客服

发布时间 : 星期一 文章计算机网络第四版(课后练习+答案)更新完毕开始阅读985d8a5d26d3240c844769eae009581b6bd9bd30

计算机网络第四版(课后练习+答案)

答:多生成树是可能的。它们中的一个是:

27. 在一个6Mbps 的网络上,有一台主机通过一个令牌桶进行流量调整。令牌桶的填充速率为1 Mbps 。初始时候它被填充到8Mb的容量. 请问该计算机以6Mbps 的全速率可以传输多长时间?

答:本题乍看起来,似乎以6Mb/s 速率发送用4/3 秒的时间可以发送完桶内8Mb 的数据,使漏桶变空。然而,这样回答是错误的,因为在这期间,已有更多的令牌到达。正确的答案应该使用公式S= C /(M-P ),这里的S表示以秒计量的突发时间长度,M 表示以每秒字节计量的最大输出速率,C 表示以字节计的桶的容量,P 表示以每秒字节计量的令牌到达速率。则:

因此,计算机可以用完全速率6Mb/s 发送1.6 s 的时间。 35.一台路由器往外发送大量的总投度(数据+头)为1024字节的IP 分组。假定这些分组生存10 秒钟时间长,请问,路由器运行的最大线速度为多少才不至于发生IP数据报的ID编号空间重绕的危险?

答:如果线路的比特率是B,那么路由器可以发射的包/秒数是B / 8192,所以发射分组所需的秒数是8192 / B.要拿出65536包需要229 /秒。这等同于包的最长寿命,我们得到229 / B10。然后,B是约53687091个基点。

38.如果一个IP地址的十六进制表示为C22 F1582 ,请将它转换成点分十进制标记。

答:The address is 194.47.21.130.

39. Internet 上一个网络的子网掩码为255.255.240.0. 请问它最多能够处理多少台主机?

答:对于一个B 类网络,高端16 位形成网络号,低端16 位是子网或主机域。在子网掩码的低端16 位中,最高有效4 位为1111,因此剩下12 位用于主机号。因此,存在4096 个主机地址。但由于全0 和全1 是特别地址,因此最大的主机数目为4094。

4 0. 假定从198.16.0.0 开始有大量连续的IP地址可以使用. 现在4 个组织A 、B 、C和D 按照顺序依技申请4000 、2000 、4000 和8000 个地址。对于每一个申请,请利用w. x. y. z/ s 的形式写出所分配的第一个lP 地址、最后一个IP 地址.以及掩码。

答:To start with, all the requests are rounded up to a power of two. The starting address, ending address, and mask are as follows:

A: 198.16.0.0 –198.16.15.255 written as 198.16.0.0/20

B: 198.16.16.0 – 198.23.15.255 written as 198.16.16.0/21 C: 198.16.32.0 – 198.47.15.255 written as 198.16.32.0/20 D: 198.16.64.0 – 198.95.15.255 written as 198.16.64.0/19

41. 一台路由器刚刚接收到以下新的IP 地址: 57.6.96.0 / 21 、57.6.104.0/21 、57.6.112.0/21 和57.6.120.0/21. 如果所有这些地址都使用同一条输出线路.那么,它们可以被聚集起来吗?

计算机网络第四版(课后练习+答案)

如果可以的话,它们被聚集到哪个地址上?如果不可以的话,请问为什么?

答:They can be aggregated to 57.6.96/19. 43 . 一台路由器的路由表中有以下的( CIDR) 表项:

答:The packets are routed as follows:

(a) Interface 1 (b) Interface 0 (c) Router 2 (d) Router 1 (e) Router 2

56. 编写一个函数来完成IP 路由器中的转发过程。该函数有一个IP 地址参数。它也要访问一张全局表,全局表白许多三元组构成。每个三元组包含三个整数:一个IP 地址、一个子网掩码和所用的输出线路。该函数利用ClDR 在表中查找由参数指定的IP 地址,然后返回对应的输出线路值。

57. 使用traceroute(UNIX 环境)或者tracert (Windows 环境)程序跟踪一下从你的

计算机到其他各洲的大学的路由路径。你将可以发现一些跨越大洋的链路。以下有些站 点你可以试一试。

www. berkeley. edu (California ,美国的拥利福尼亚州) www. mit. edu (Massachusetts ,美国的马萨诸塞州) www.vu.nl (Amsterdam ,荷兰的阿姆斯特丹) www.ucl. ac. uk (London ,英国的伦敦)

www.usyd.edu.au (Sydney ,澳大利亚的悉尼) www.u-tokyo.ac.jp (Tokyo ,日本的东京) www.uct.ac.za (Cape Town ,南非的开普敦)

第六章

3. 在图6.6 的两部分中,有一条注释说明T SERVER_PORT 在客户和服务器中必须相同。为什么这一条如此重要?

答:如果客户端发送一个数据包server3port和服务器没有听这些端口,数据包将不会被发送给服务器。

4. 假设采用时钟驱动方案来生成初始序列号,该方案用到了 (一个15位宽度的时钟计数器。并且,每隔100ms 时钟滴答一次,最大分组生存期为60s 。请问.每隔多久;需要重新同步一次?

(a)在最差情况下?

(b)当数据每分钟用掉240 个序列号的时候?

答:在具体解答这个问题之前,需要先熟悉一下时钟驱动方案的内容。首先我们引入参数T,假定在发送出一个分组之后等待长度等于T 的时间,我们就可以肯定,所有关于

计算机网络第四版(课后练习+答案)

该分组的踪迹都已消失,不管是该分组本身,还是对于它的确认都不会再以外的出现。我们还假定,每个主机都配有一个表示一天的时间的时钟,不同主机上的时钟不必同步。每个时钟都采用二进制计数器的形式,并且以长度一致的间隔时间递增。而且,计数器的比特数必须等于或超过序列号所使用的比特数。最后一点,时钟被假定是连续运行,即使主机关闭时也不间断。

时钟驱动方案的基本思想是同一时间不会有两个活动的TPDUs 使用相同的序列号。在一条连接建立的时候,时钟的低端k 个比特被用作初始序列号(也是k 位)。因此,每条连接可以从不同的序列号开始为TPDU 编号。序列号空间应该足够大,使得当编号循环一周时,具有相同号码的旧的TPDU 已经不复存在。

当主机系统崩溃时会产生一些问题。在重新启动后,主机的传输层实体不知道它曾经处在序列号空间的什么位置。一种解决方法是要求传输实体在恢复后的T 秒内处于空闲状态,让所有老的TPDUs 都消失。然而,在一个复杂的互联网上,T 值可能很大,所以这不是一个好的解决方法。

为了避免从崩溃恢复后的T 秒不工作状态,需要对序列号的使用施加新的限制。在一些编号可能被用作初始序列号之前,必须在长度为T 的时间内禁止使用这些编号。在任何连接上发送TPDU 之前,传输层实体必须读一次时钟,检查该TPDU 的编号是否在禁止区内。

显然,在任何连接上的最大数据率是每个时钟滴答发送一个TPDU。在系统崩溃后重启动时,在打开一条新的连接之前,传输实体必须等待到下一个时钟滴答,以避免同样的号码重复使用。如果数据速率低于始终速率,实际使用的序列号对于时间的曲线将最终从左边进入禁止区。如果这样的情况发生了,要么延迟TPDU 达T 长度时间,或者重新同步序列号。

作为例子,如果在坐标起点发1 号TPDU,到接近时钟大循环编码的末尾才发送第2 个TPDU,此时为避免在下一大循环开始重复使用序列号,就需要在大循环接近末尾处重新同步,使用大的初始序列号,以避免使用禁止区号码。

(a) 时钟大循环周期是215,即32768 滴答,每滴答100ms,即0.1 秒,所以大循环周期是3276.8s 。假定数据产生速率非常低(接近零),那么发送方在3276.8-60=3271.8 秒时进入禁止区,需要进行一次重新同步。

(b) 每分钟使用240 个序列号,即每秒使用4 个号码,如果时间以t 表示(以秒为单位),那么实际的序列号是4t。当接近大循环的末尾时以及在下一大循环的开始阶段,4t 有一定的大小,位于禁止区的上方,现在由于每秒钟10个滴答,禁止区的左边是10(t-3216.8)。令 =10(t-3216.8),得=5316.3秒。即当 =5316.3时,开始进入禁止区,因此当 =5316.3时需要进行一次重新同步。

7. 想象一个泛化的n -军队问题,在这个问题中,任何两支蓝军达成一致的意见之后就足以取得胜利。是否存在一个能保证蓝军必赢的协议?

答:(a)参见教材。

(b)不存在。对于多于两支部队的情况,问题在实质上是同样的。

9. 对于正文中描述的传输实体(见图6.20) ,死锁有可能吗?

答:该传输实体有可能死锁。当双方同时执行RECEIVE 时就会进入死锁状态。 14. UDP 为什么有必要在在?难道只让用户进程发送原始的IP 分组还不够吗?

答:仅仅使用IP 分组还不够。IP 分组包含IP 地址,该地址指定一个目的地机器。一旦这样的分组到达了目的地机器,网络控制程序如何知道该把它交给哪个进程呢?UDP 分组包含一个目的地端口,这一信息是必须的,因为有了它,分组才能够被投递给正确的进程。

16. 一个客户向100km 以外的服务器发送一个128 字节的请求,两者之间通过一条lGbps 的

计算机网络第四版(课后练习+答案)

光纤进行通信。在远过程调用中这条线路的效率是多少?

答:128 字节等于1024 位,在1Gb/s 的线路上发送1000 位需要1的时间。光在光导纤维中的传播速度是200km/ms,请求到达服务器需要传输0.5ms 的时间,应答返回又需要0.5ms 的传输时间。总的看来,1000 位在1ms 的时间内传输完成。这等效于1Mb/s,即线路效率是0.1%。

31.一台TCP 机器正在-通过一条lGbps 的信道发送65535字节的满窗口数据.该信道的单向 延迟为10ms。请问,可以达到的最大吞吐量是多少?线路的效率是多少?

答:10ms*2=20ms

每20ms 可以发送一个窗口大小的交通量,因此每秒50 个窗口。 65536×8×50=26.2Mb/s 26.2/1000=2.6 %

所以,最大的数据吞吐率为26.2Mb/s,线路效率为2.6%

32. 一台主机在一条线路上发送1500 字节的TCP 净荷,其巾最大分组生存期为120s,要想不让序列号回绕,该线路的最快速度为多少?将TCP 、IP 以太网的开销都考虑进去,假设以太网帧可以被连续发迭。

答:我们的目标是发送232字节在120秒或35791394有效负载字节/秒。这是1500个23860字节的帧/秒。TCP的开销是20个字节。IP开销是20字节。以太网开销是26字节。这意味着,1500字节的有效载荷,必须发送1566字节。如果我们把23860帧的1566个字节的每一秒,我们需要一条299 Mbps。有什么东西比这我们运行在同一时间有相同的序列号不同的TCP段风险更快。

33.在一个网络中,最大的TPDU K.度为128 字节,最大的TPDU 生存期为30s ,序列号为8 位,请问每个连接的最大数据率是多少?

答:具有相同编号的TPDU 不应该同时在网络中传输,必须保证,当序列号循环回来重复使用的时候,具有相同序列号的TPDU 已经从网络中消失。现在存活时间是30 秒,那么在30 秒的时间内发送方发送的TPDU 的数目不能多于255 个。

255×128×8/30=

所以,每条连接的最大数据速率是8738b/s。

34. 假设你正在测量接收一个TPDU 所需要的时间。当一个中断发生的时候.你读出系统时钟的值(以毫秒为单位)。当TPDU 被完全处理之后,你再次读出时钟的值。你测量的结果是: 270000 次为0ms ,730000 次为lms. 请间,接收一个TPDU 需要多长时间?

答:计算平均值:

因此,接收一个TPDU 花730微秒的时间。

40. 对于一个运行在4000km 距离上的lGbps 网络,限制的因素是延迟,而并非带宽。请考虑这样一个MAN: 源端和目标端之间的平均距离为20km 。请问在什么数据率上,由于光速导致的往返时间等于lKB 分组的传输延迟?

答:光在光纤和铜导线中的速度大约为每毫秒200km。对于一条20km 的线路,单向延迟是100,往返延迟是200。1K 字节就是8192 位。如果发送8192 位的时间为200,那么发送延迟就等于传播延迟。设W 是发送1 位的时间,那么

则1 /W=8192/(2×10

-4

=40×10。所以,数据传输速率为40Mb/s。

6