《计算机网络原理与实践》课后习题及参考答案

《计算机网络原理与实践》 2007-2008学年度第2学期 网络工程0501-0502班

客户端服务器1. CLOSEDsrc_port=p1,dst_port=p2SYN=1, seq=x2. SYN_SENDsrc_port=p2,dst_port=p1,SYN=1, ACK=1,seq=y,ack=x+13.ESTABLISHEDsrc_port=p1,dst_port=p2ACK=1,seq=x+1,ack=y+14.ESTABLISHEDLISTENSYN-RECEIVEDSYN-RECEIVEDESTABLISHED

(2)TCP关闭连接过程

客户端服务器FIN=1, seq=xACK=1,seq=y,ack=x+1FIN=1,seq=y,ack=x+1ACK=1,seq=x+1,ack=y+1

4. 简述TCP流量控制的原理。

TCP主要使用首部中的窗口字段来进行流量控制。首部中的窗口字段用来将自己目前的

接收缓存大小通知对方的TCP,在数据传递过程中,接收缓存会随时变化,TCP在向对方发送确认或发送数据时,都将现在的接收缓存大小写入首部的窗口字段中,发送给对方,对方收到后,所发送数据的大小不会超过窗口字段的值,从而保证了接收方缓存不会溢出,TCP依此实现了流量控制。

5. TCP是如何保证数据传输的可靠性的?

TCP主要采用确认和重传机制来实现数据传输的可靠性。每一方的TCP都要为所传输的

数据编号,编号是以字节为单位的。发送字节的起始编号是在建立连接的过程中确定的,并且已经通过三次握手过程告知了对方。

如果收到了编号正确的数据,那么就要给对方发送确认。收到确认后,就可以继续发送后面的数据。发出一个TCP报文段后,就启动一个定时器,如果定时器时间到了但确认还

第 16 页 共 27 页

《计算机网络原理与实践》 2007-2008学年度第2学期 网络工程0501-0502班

没有来,那么就重传一次这个报文。

如果数据中途丢失,那么发送端会收不到确认,定时器超时就会重传。

如果数据出错,接收端会丢弃这个报文,发送端会同样收不到确认,定时器超时也会重

传。

如果确认丢失了,发送方会因为定时器超时而重传报文,这样接收方会收到重复的报文,

接收方将直接丢弃重复的报文,并发送确认。

对于乱序到达的TCP报文段,TCP会缓存这些乱序的报文,将其排好序后在上传给应用

层。

6. 为什么要进行拥塞控制?TCP是怎样进行拥塞控制的?

当大量的数据涌入网络时,网络中的部分路由器可能会因为过载而被迫丢弃一些分组,

产生拥塞。同时,发送方会因为定时器超时重传那些被路由器丢弃的分组,从而引起更严重的拥塞,使整个网络陷入瘫痪。因此,发送端要进行拥塞控制。

TCP认为,如果出现了丢包现象,确认没有及时回来,就发生了拥塞。一个连接两端的

TCP都维持一个变量,称为拥塞窗口,用来限制TCP向网络中注入数据的大小和速率。当网络的状况很好,每个确认都能及时回来时,就增大拥塞窗口,增加注入网络的数据;如果产生了拥塞,确认没有及时回来,就主动减小拥塞窗口,以缓解网络的压力。

当刚刚建立TCP连接后,TCP拥塞窗口的大小为最大报文长度MSS。开始阶段每收到

一个确认,拥塞窗口大小就增加一个MSS,拥塞窗口的大小是以1,2,4,8,…指数方式递增的,即每经过一个RTT,拥塞窗口的大小就翻倍。这个过程称为慢启动。

当拥塞窗口的值达到一定大时,发送速率就超过了网络的接收能力,这时丢包现象就产

生了。一旦发现丢包,TCP就要减小拥塞窗口。如果连续若干个数据包的确认都没有收到,说明网络拥塞状况比较严重,那么TCP迅速将拥塞窗口的大小降为1,并进入慢启动阶段;同时还要设置一个门限值,这个值是发生拥塞时拥塞窗口大小的一半。当慢启动以指数方式增加到这个门限值后,拥塞窗口的增长变为线性增长。此后在一个RTT内不论收到多少确认,只增加一个MSS,直到再次发生丢包。如果TCP收到了连续的几个相同的确认,TCP会将拥塞窗口的大小降为原来的一半,同时拥塞窗口的增加变为线性增长,在一个RTT内,拥塞窗口最多只增加一个MSS,直到再次发生丢包。 7.TCP协议用到了几个定时器,各有什么作用?

(1)保活定时器:在服务器端设置,用来测试一个连接是否有效。在保活定时器时间内,如果收到了客户端的信息,那么定时器就复位,重新计时;如果2小时内没有收到客户端的任何数据,那么服务器TCP就会给客户端TCP发送一个探测报文。如果收到了正确的应答,说明连接有效,计时器就复位,重新计时;否则就关闭这个连接,释放相关的资源。 (2)重传定时器:在发送一个TCP报文后,会启动重传定时器。如果在定时器截止时间之前收到了确认,就撤销这个定时器。如果定时器时间到了,确认还没有收到,就重传该报文并将定时器复位。

第 17 页 共 27 页

《计算机网络原理与实践》 2007-2008学年度第2学期 网络工程0501-0502班

(3)坚持定时器:在TCP流量控制中,可能会因为零窗口通告而产生双方死锁的现象。为避免这种现象,在收到了一个零窗口通告后,就启动一个坚持定时器,定时器时间到时就发送一个探测报文。这个报文大小为1字节,接收方收到后要发送确认报文,同时将新的窗口大小通知发送方。

习题5 参考答案

5-1 填空题

1. 默认路由 2. 4

3. 距离矢量算法 4. 16 5. ARP

6. 255.252.0.0 7. 128.1.144.0 8. 32

9. 网络号、主机号 10. RIP、OSPF

11. Membership Query、Membership Report、LeaveGroup 5-2 选择题

1. B 2.A 3.C 4.D 5.D 6.D 7.B 8.A 9.A 10.C 11.A 12.A 13.B 14.B 15.C 16.C 17.A 5-3 简答题

1.简述IP地址的分类及每类的特点。

根据网络号和主机号所占比特位数的不同,IP地址可以分为A、B、C、D、E五大类。

A类IP地址网络号占1字节,主机号占3字节,第1个比特固定是0。B类IP地址网络号占2字节,主机号占2字节,前两个比特固定是10。C类IP地址网络号占3字节,主机号占1字节,前三个比特固定是110。A、B、C类地址用来分配给主机和路由器。D类地址前4个比特固定是1110,作为组播地址。E类地址前5个比特固定的是11110,作为保留地址。 2. 简述NAT的工作原理

NAT是网络地址翻译技术,利用NAT能够让多个主机共用一个公共IP地址访问因特网。

运行有NAT模块的路由器通常具有两个IP地址,一个是专用IP地址(如192.168.1.*),和内网连接;一个是公共IP地址,和Internet连接。内部网的主机都设置成专用IP地址(192.168.1.*),并将路由器设置成网关。当内部网络的主机要访问外网时,IP数据报发送到路由器,路由器将其中的源IP替换成路由器的公共IP地址,再将IP数据报发送出去,并在一个表中记录专用IP地址和公共IP地址的对应关系。当应答的数据报回来时,路由器通过查找表中的对应关系,将数据报中的目的IP替换成对应的专用IP地址,发送给内部网的主机。

3.专用IP地址有什么样特点?它的地址范围是什么?

第 18 页 共 27 页

《计算机网络原理与实践》 2007-2008学年度第2学期 网络工程0501-0502班

专用IP地址不需要申请,直接就可以使用,但专用IP地址只能在一个机构内部使用,

不能和因特网上的主机通信,因为路由器默认对于目的地址是专用地址的IP 数据报一律不与转发。专用IP地址的范围是: (1) 10.0.0.0~10.2555.255.255 (2) 172.16.0.0~172.31.255.255 (3) 192.168.0.0~192.168.255.255 4.简述ARP协议的作用和工作原理。

ARP协议完成IP地址到物理地址的映射。主机使用ARP协议来查找某个IP地址所对应

的物理地址。ARP协议的工作原理是:

(1) 主机A想给主机B发送IP数据报,但只知道B的IP地址IPB,不知道B的物

理地址。于是A在网络中发送一个ARP广播,询问IP地址是IPB的主机,要求其告诉A它的物理地址。

(2) 网络中的所有主机都会收到这个ARP广播,但只有主机B会应答。主机B将自

己的IP地址和物理地址放入ARP应答报文中,发送给主机A。

(3) 主机A从ARP应答报文中获得了B的物理地址,从而将IP数据报封装在帧中,

发给主机B。

5.简述动态路由和静态路由的区别。

静态路由是指网络管理员根据其所掌握的网络连通信息以手工配置方式创建的路由表表

项。静态路由实现简单,开销小,但要求管理员对网络拓扑结构和网络状态有非常清晰的了解;并且当网络连通状态发生变化时,静态路由的更新也要通过手动的方式完成。

动态路由是指路由器依靠路由协议自主学习来获得的路由信息,生成路由表。通过在路

由器上运行路由协议并进行相应的配置就可以保证路由器自动生成并动态维护有关的路由信息。使用路由协议动态构建路由表不仅能比较好地适应网络状态的变化(如网络拓扑和网络流量的变化),同时也减少了人工生成与维护路由表的工作量。 6.简述RIP协议和OSPF协议的工作原理。

RIP协议是基于距离矢量的路由选择协议。每个路由器每隔30s给自己的所有的领居路

由器广播RIP报文,报文的内容是这个路由器当前的路由表信息。收到领居路由器的路由表信息后,每个路由器都要更新自己的路由表,填加新的路由表项,更改旧的路由表项。下一次再将更新后的路由表告诉自己的领居。这样经过一段时间后,每个路由器都会知道到达每个网络的路由,构建出完整的路由表。

OSPF是基于链路状态的路由选择协议。每个路由器会周期性地向相邻路由器发送HELLO报文,检测其是否可达。如果邻站给与应答,说明链路正常;否则说明链路出了故障。如果一个路由器检测到某条链路状态发生了变化,该路由器就发送链路状态更新报文,使用泛洪法对全网更新链路状态。即便链路状态没有发生变化,每隔30分钟路由器要向网络中的其他路由器广播链路状态信息,以确保链路状态数据库与全网保持一致。每个路由器收

第 19 页 共 27 页

《计算机网络原理与实践》 2007-2008学年度第2学期 网络工程0501-0502班

到其他路由器的链路状态信息后,更新链路状态数据库,构建整个网络的拓扑图,利用Dijkstra的最短路径算法计算出到达每个网络的最短路径。 7.简述IP单播和IP组播的区别。

IP单播是指一台主机将IP数据报发送给另一台主机,IP数据报中的目的IP是目的主机

的IP地址。IP组播是一台主机将IP数据报发送给若干个主机,这些主机都属于同一个组播组。在IP组播中,IP数据报中的目的IP是一个组播IP地址。 8.什么是超网?它和子网有什么区别?

对于若干个IP网络,如果它们前面的一些网络位相同,那么这些网络就可以组成一个超

网。超网可以看成是划分子网的逆过程。划分子网时,从主机部分借位,将其作为网络位的一部分;在超网中,则将原先是网络位的一些位数作为主机位来处理。利用超网可以大大缩减路由表项,提高了路由器的工作效率。

5-4 计算题

1.(1)最少需要借3个主机位,子网掩码是255.255.255.224

(2) 第1个子网为192.168.2.32, IP地址范围是192.168.2.33~ 192.168.2.62 第2个子网为192.168.2.64, IP地址范围是192.168.2.65~ 192.168.2.94 第3个子网为192.168.2.96, IP地址范围是192.168.2.97~ 192.168.2.126 第4个子网为192.168.2.128, IP地址范围是192.168.2.129~ 192.168.2.158 第5个子网为192.168.2.160, IP地址范围是192.168.2.161~ 192.168.2.190 第6个子网为192.168.2.192, IP地址范围是192.168.2.193~ 192.168.2.222 2.

(1) 2^10=1024,1024大于1000,所以主机位为10为,子网为16-10=6位,所以需要借6位主机位,子网掩码为:255.255.252.0

(2)最终可以得到2^6=64个子网,除去全0和全1的子网 64-2=62个。每个子网中有可用的IP地址=2^10-2=1022个。

3.

(1) 136.9.40.151 下一跳为 R4 (2)

136.9.12.130 下一跳为 接口1

(3) 192.4.153.9 下一跳为 R3

4. 路由器A收到路由器C发来的路由信息后,会计算出如果从C出发,到达各个网络的距离,如下所示:

目的网络 N1 N2 N3 N5 目的网络 N1 N2 N3 距离 4 3 2 4 距离 4 3 1 下一跳 C C C C 下一跳 C C 直接 结合A原用的路由表,A的路由表更新结果如下: 第 20 页 共 27 页

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4