《用TCP/IP进行通信》第一卷答案

来源:互联网 发布:php空格 编辑:程序博客网 时间:2024/04/29 15:38

最近在看《用TCP/IP进行通信》这本书,却发现网上没有相应的课后习题的答案,因此我便自己做了一份答案和大家交流。

我现在只写完前5章的答案,先发上来了。当答案写到第五章时,我发现用中文来进行这种技术文章的写作实在是不方便,因此我从第六章开始用英文来写。

 

 

答案:

2.2 OC-192的传输速率是9.952Gbps,最大的帧的大小为1518B,所以传输时间为1518B/9.952Gbps=1.525E-7s.同理,传输一个最小的帧需要时间为:64B/9.952Gpbs=6.431E-9s.
2.3 Hub工作在物理层(OSI模型的第一层),只能传输设备的帧(frame);而switch工作在网络层(OSI模型的第三层),可以传输高层协议定义的数据报文,如TCP/IP中的datagram.
2.6 在一个Ethernet的frame中,preamble占8个octet,header和CRC占18个octet,inter-packet gap占12个octet,而data最大可达1500个octet.因此10M的Ethernet的最大传输速率是10Mbps*1500/(8+18+12+1500)=9.753Mbps.
2.7 卫星通信的最大的优点是不用铺设线路,最大的缺点是速度非常慢.
2.8 可参照2.6来得到答案.

3.3 在图3.3(b)中,最重要的是下面的2个router,而上面3个router只需要任意2个,图中的所有网络都可以正常运行.

4.1 (1)A类网络数:2E7-1=127,每个A类网络的主机数:2E24-2;(2)B类网络数:2E14,每个B类网络的主机数:2E16-2;(3)C类网络数:2E21,每个C类网络的主机数:2E8-2=254.

5.2 如果一个主机的物理地址可以直接从它的IP地址计算得到,那么就不需要ARP或者ARP cache.
5.3 如果这个主机需要发送packet到那个被替换的IP地址,那么这个主机将要重新发送ARP request广播,从而引起不必要的网络流量.
5.4 应该.当一个主机接收到IP地址到物理地址的映射信息时,如果这个主机原有的ARP cache中有这个IP的映射信息,就更新此IP的映射信息.这样可以减少不必要的网络流量.
5.5 当这个主机从ARP request中得到一个IP地址到物理地址的映射信息时,如果这个主机原来的ARP cache中有这个IP的映射信息,那么即使这个主机不是此ARP request的接收者,它也应该更新它的ARP cache中此IP的映射信息.
5.6 当一个主机用固定大小的ARP cache来储存映射信息时,如果这个网络上有很多主机与它通信,那么它将非常频繁地使用ARP request广播来获取物理地址.由于这个网络有非常多的主机,所以一个ARP request的消耗是非常大的,这会有极大的可能导致一个非常大的延迟,从而使ARP request无法获取映射信息.
5.7 ARP使用广播的方式来获取IP地址到物理地址的映射信息.一个主机发送一个ARP request,而同一网络上的主机可以发送一个假冒的ARP reply给此主机,而ARP没有一个可以验证信息正确性的机制,这会导致安全漏洞的产生.
5.8 不应该.C虽然有B的IP地址到物理地址的映射信息,但它无法保证此映射信息的有效性(如B有可能与网络断开了连接等),所以C不应该响应此ARP request.
5.9 这不是一个好主意.预先建立一个网络上所有可能存在的主机的映射信息的cache,会占用很多储存空间,而维护此cache的花费将更为可怕.而一个主机可能只与同一网络上的少数主机通信,维持全部主机的映射信息将会是一个极大的浪费.
5.10 只应该对最近有过通信的主机实行提前重新验证映射信息.最近并没有发生相互通讯的主机,有极大可能在将来(定时器有效的时间内)也不发生通讯,因此重新验证这些主机的IP映射信息会是一种浪费.
5.11 这个主机可以通过发送目标为自己原先的IP地址的ARP request广播来实现此目的.如果有主机回复ARP reply,则证明此主机在冒充自己.缺点就是会导致所有主机的ARP cache信息被更新,即使主机的通讯目标是那个假冒的主机.
5.12 当一个packet被发送到远处网络中的不存在的主机时,传输路径中的最后一个router(也即直接与目标主机所在网络相连的router),其ARP cache中必不存在此主机的映射信息,则其会发送ARP request广播来查询此主机的物理地址.