1、第四章 网络层1.网络层向上提供的服务有哪两种?是比较其优缺点。 网络层向运输层提供 “面向连接”虚电路(Virtual Circuit)服务或“无连接”数据报服务前者预约了双方通信所需的一切网络资源。优点是能提供服务质量的承诺。即所传送的分组不出错、丢失、重复和失序(不按序列到达终点) ,也保证分组传送的时限,缺点是路由器复杂,网络成本高;后者无网络资源障碍,尽力而为,优缺点与前者互易2.网络互连有何实际意义?进行网络互连时,有哪些共同的问题需要解决? 网络互联可扩大用户共享资源范围和更大的通信区域进行网络互连时,需要解决共同的问题有:不同的寻址方案不同的最大分组长度不同的网络接入机制不同的
2、超时控制不同的差错恢复方法不同的状态报告方法不同的路由选择技术不同的用户接入控制不同的服务(面向连接服务和无连接服务)不同的管理与控制方式 3.作为中间设备,转发器、网桥、路由器和网关有何区别? 中间设备又称为中间系统或中继(relay)系统。物理层中继系统:转发器(repeater)。数据链路层中继系统:网桥或桥接器(bridge)。网络层中继系统:路由器(router)。网桥和路由器的混合物:桥路器(brouter)。网络层以上的中继系统:网关(gateway)。 4.试简单说明下列协议的作用:IP、ARP、RARP 和 ICMP。IP 协议:实现网络互连。使参与互连的性能各异的网络从用户
3、看起来好像是一个统一的网络。网际协议 IP 是 TCP/IP 体系中两个最主要的协议之一,与 IP 协议配套使用的还有四个协议。ARP 协议:是解决同一个局域网上的主机或路由器的 IP 地址和硬件地址的映射问题。RARP:是解决同一个局域网上的主机或路由器的硬件地址和 IP 地址的映射问题。ICMP:提供差错报告和询问报文,以提高 IP 数据交付成功的机会因特网组管理协议 IGMP:用于探寻、转发本局域网内的组成员关系。5.IP 地址分为几类?各如何表示?IP 地址的主要特点是什么?分为 ABCDE 5 类;每一类地址都由两个固定长度的字段组成,其中一个字段是网络号 net-id,它标志主机(
4、或路由器)所连接到的网络,而另一个字段则是主机号 host-id,它标志该主机(或路由器) 。各类地址的网络号字段 net-id 分别为 1,2,3,0,0 字节;主机号字段 host-id 分别为 3 字节、2 字节、1 字节、4 字节、4 字节。特点:(1)IP 地址是一种分等级的地址结构。分两个等级的好处是:第一,IP 地址管理机构在分配 IP 地址时只分配网络号,而剩下的主机号则由得到该网络号的单位自行分配。这样就方便了 IP 地址的管理。第二,路由器仅根据目的主机所连接的网络号来转发分组(而不考虑目的主机号) ,这样就可以使路由表中的项目数大幅度减少,从而减小了路由表所占的存储空间。
5、 (2)实际上 IP 地址是标志一个主机(或路由器)和一条链路的接口。 当一个主机同时连接到两个网络上时,该主机就必须同时具有两个相应的 IP 地址,其网络号 net-id 必须是不同的。这种主机称为多归属主机(multihomed host)。由于一个路由器至少应当连接到两个网络(这样它才能将 IP 数据报从一个网络转发到另一个网络) ,因此一个路由器至少应当有两个不同的 IP 地址。 (3) 用转发器或网桥连接起来的若干个局域网仍为一个网络,因此这些局域网都具有同样的网络号 net-id。(4) 所有分配到网络号 net-id 的网络,范围很小的局域网,还是可能覆盖很大地理范围的广域网,都
6、是平等的。 6.试根据 IP 地址的规定,计算出表 4-2 中的各项数据。解:1)A 类网中,网络号占七个 bit, 则允许用的网络数为 2 的 7 次方,为 128,但是要 除去 0 和 127 的情况,所以能用的最大网络数是 126,第一个网络号是 1,最后一个网络号是 126。主机号占 24 个 bit, 则允许用的最大主机数为 2 的 24 次方,为 16777216,但是也要除 去全 0 和全 1 的情况,所以能用的最大主机数是 16777214。 2) B 类网中,网络号占 14 个 bit,则能用的最大网络数为 2 的 14 次方,为16384,第 一个网络号是 128.0,因为
7、 127 要用作本地软件回送测试,所以从 128 开始,其点后的还可以 容纳 2 的 8 次方为 256,所以以 128 为开始的网络号为 128.0128.255,共256 个,以此类 推,第 16384 个网络号的计算方法是:16384/256=64128+64=192,则可推算出为 191.255。主机号占 16 个 bit, 则允许用的最大主机数为 2 的 16 次方,为 65536,但是也要除去全 0 和全 1 的情况,所以能用的最大主机数是 65534。 3)C 类网中,网络号占 21 个 bit, 则能用的网络数为 2 的 21 次方,为 2097152,第一个 网络号是 192
8、.0.0,各个点后的数占一个字节,所以以 192 为开始的网络号为192.0.0192.255.255,共 256*256=65536,以此类推,第 2097152 个网络号的计算方法是:2097152/65536=32192+32=224,则可推算出为 223.255.255。主机号占 8 个 bit, 则允许用的最大主机数为 2 的 8 次方,为 256,但是也要除去全 0 和全 1 的情况,所以能用的最大主机数是 254。 7.试说明 IP 地址与硬件地址的区别,为什么要使用这两种不同的地址?IP 地址就是给每个连接在因特网上的主机(或路由器)分配一个在全世界范围是唯一的 32 位的标识
9、符。从而把整个因特网看成为一个单一的、抽象的网络在实际网络的链路上传送数据帧时,最终还是必须使用硬件地址。MAC 地址在一定程度上与硬件一致,基于物理、能够标识具体的链路通信对象、IP地址给予逻辑域的划分、不受硬件限制。8.IP 地址方案与我国的电话号码体制的主要不同点是什么?于网络的地理分布无关9.(1)子网掩码为 255.255.255.0 代表什么意思?有三种含义其一是一个 A 类网的子网掩码,对于 A 类网络的 IP 地址,前 8 位表示网络号,后 24 位表示主机号,使用子网掩码 255.255.255.0 表示前 8 位为网络号,中间 16 位用于子网段的划分,最后 8 位为主机号
10、。第二种情况为一个 B 类网,对于 B 类网络的 IP 地址,前 16 位表示网络号,后 16 位表示主机号,使用子网掩码 255.255.255.0 表示前 16 位为网络号,中间 8 位用于子网段的划分,最后 8 位为主机号。第三种情况为一个 C 类网,这个子网掩码为 C 类网的默认子网掩码。(2)一网络的现在掩码为 255.255.255.248,问该网络能够连接多少个主机?255.255.255.248 即 11111111.11111111.11111111.11111000.每一个子网上的主机为(23)=6 台掩码位数 29,该网络能够连接 8 个主机,扣除全 1 和全 0 后为
11、6 台。(3)一 A 类网络和一 B 网络的子网号 subnet-id 分别为 16 个 1 和 8 个 1,问这两个子网掩码有何不同?A 类网络:11111111 11111111 11111111 00000000给定子网号(16 位“1” )则子网掩码为 255.255.255.0B 类网络 11111111 11111111 11111111 00000000给定子网号(8 位“1” )则子网掩码为 255.255.255.0 但子网数目不同(4)一个 B 类地址的子网掩码是 255.255.240.0。试问在其中每一个子网上的主机数最多是多少?(240)10=(128+64+32+1
12、6)10=(11110000)2Host-id 的位数为 4+8=12,因此,最大主机数为:212-2=4096-2=409411111111.11111111.11110000.00000000 主机数 212-2(5)一 A 类网络的子网掩码为 255.255.0.255;它是否为一个有效的子网掩码?是 10111111 11111111 00000000 11111111(6)某个 IP 地址的十六进制表示 C2.2F.14.81,试将其转化为点分十进制的形式。这个地址是哪一类 IP 地址?C2 2F 14 81-(12*16+2).(2*16+15).(16+4).(8*16+1)-1
13、94.47.20.129C2 2F 14 81 -11000010.00101111.00010100.10000001C 类地址(7)C 类网络使用子网掩码有无实际意义?为什么?有实际意义.C 类子网 IP 地址的 32 位中,前 24 位用于确定网络号,后 8 位用于确定主机号.如果划分子网,可以选择后 8 位中的高位,这样做可以进一步划分网络,并且不增加路由表的内容,但是代价是主机数相信减少.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 (
14、6)200.3.6.2(2)和(5)是 A 类,(1)和(3) 是 B 类,(4)和(6) 是 C 类.11. IP 数据报中的首部检验和并不检验数据报中的数据。这样做的最大好处是什么?坏处是什么?在首部中的错误比在数据中的错误更严重,例如,一个坏的地址可能导致分组被投寄到错误的主机。许多主机并不检查投递给他们的分组是否确实是要投递给它们,它们假定网络从来不会把本来是要前往另一主机的分组投递给它们。数据不参与检验和的计算,因为这样做代价大,上层协议通常也做这种检验工作,从前,从而引起重复和多余。因此,这样做可以加快分组的转发,但是数据部分出现差错时不能及早发现。12.当某个路由器发现一 IP
15、数据报的检验和有差错时,为什么采取丢弃的办法而不是要求源站重传此数据报?计算首部检验和为什么不采用 CRC 检验码?答:纠错控制由上层(传输层)执行IP 首部中的源站地址也可能出错请错误的源地址重传数据报是没有意义的不采用 CRC 简化解码计算量,提高路由器的吞吐量13.设 IP 数据报使用固定首部,其各字段的具体数值如图所示(除 IP 地址外,均为十进制表示) 。试用二进制运算方法计算应当写入到首部检验和字段中的数值(用二进制表示) 。4 5 0 281 0 04 1710.12.14.512.6.7.91000101 00000000 00000000-0001110000000000 0
16、0000001 00000000-0000000000000100 00010001 xxxxxxxx xxxxxxxx00001010 00001100 00001110 0000010100001100 00000110 00000111 00001001 作二进制检验和(XOR)01110100 01001110 取反码10001011 10110001 14. 重新计算上题,但使用十六进制运算方法(没 16 位二进制数字转换为 4 个十六进制数字,再按十六进制加法规则计算) 。比较这两种方法。01000101 00000000 00000000-00011100 4 5 0 0 0 0
17、 1 C00000000 00000001 00000000-00000000 0 0 0 1 0 0 0 000000100 000010001 xxxxxxxx xxxxxxxx 0 4 1 1 0 0 0 000001010 00001100 00001110 00000101 0 A 0 C 0 E 0 500001100 00000110 00000111 00001001 0 C 0 6 0 7 0 901011111 00100100 00010101 00101010 5 F 2 4 1 5 2 A5 F 2 4 1 5 2 A7 4 4 E-8 B B 115.什么是最大传送
18、单元 MTU?它和 IP 数据报的首部中的哪个字段有关系?答:IP 层下面数据链里层所限定的帧格式中数据字段的最大长度,与 IP 数据报首部中的总长度字段有关系 16.在因特网中将 IP 数据报分片传送的数据报在最后的目的主机进行组装。还可以有另一种做法,即数据报片通过一个网络就进行一次组装。是比较这两种方法的优劣。在目的站而不是在中间的路由器进行组装是由于:(1)路由器处理数据报更简单些;效率高,延迟小。(2)数据报的各分片可能经过各自的路径。因此在每一个中间的路由器进行组装可能总会缺少几个数据报片;(3)也许分组后面还要经过一个网络,它还要给这些数据报片划分成更小的片。如果在中间的路由器进
19、行组装就可能会组装多次。(为适应路径上不同链路段所能许可的不同分片规模,可能要重新分片或组装)17. 一个 3200 位长的 TCP 报文传到 IP 层,加上 160 位的首部后成为数据报。下面的互联网由两个局域网通过路由器连接起来。但第二个局域网所能传送的最长数据帧中的数据部分只有 1200 位。因此数据报在路由器必须进行分片。试问第二个局域网向其上层要传送多少比特的数据(这里的“数据”当然指的是局域网看见的数据)?答:第二个局域网所能传送的最长数据帧中的数据部分只有 1200bit,即每个 IP 数据片的数据部分250,共有子网数=28-2=25416,能满足实际需求。可给每个地点分配如下
20、子网号码地点: 子网号(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.2543: 00000011 129.250.3.0 129.250.3.1-129.250.3.2544: 00000100 129.250.4.0 129.250.4.1-129.250.4.2545: 00000101 129.250.5.0 129.250.5.1-129.250.5.2546: 00000110
21、 129.250.6.0 129.250.6.1-129.250.6.2547: 00000111 129.250.7.0 129.250.7.1-129.250.7.2548: 00001000 129.250.8.0 129.250.8.1-129.250.8.2549: 00001001 129.250.9.0 129.250.9.1-129.250.9.25410: 00001010 129.250.10.0 129.250.10.1-129.250.10.25411: 00001011 129.250.11.0 129.250.11.1-129.250.11.25412: 00001
22、100 129.250.12.0 129.250.12.1-129.250.12.25413: 00001101 129.250.13.0 129.250.13.1-129.250.13.25414: 00001110 129.250.14.0 129.250.14.1-129.250.14.25415: 00001111 129.250.15.0 129.250.15.1-129.250.15.25416: 00010000 129.250.16.0 129.250.16.1-129.250.16.25422.一个数据报长度为 4000 字节(固定首部长度) 。现在经过一个网络传送,但此网络
23、能够传送的最大数据长度为 1500 字节。试问应当划分为几个短些的数据报片?各数据报片的数据字段长度、片偏移字段和 MF 标志应为何数值?IP 数据报固定首部长度为 20 字节总长度( 字节) 数据长度( 字节) MF 片偏移原始数据报 4000 3980 0 0数据报片 1 1500 1480 1 0数据报片 2 1500 1480 1 185数据报片 3 1040 1020 0 37023 分两种情况(使用子网掩码和使用 CIDR)写出因特网的 IP 成查找路由的算法。见课本 P134、P13924.试找出可产生以下数目的 A 类子网的子网掩码(采用连续掩码) 。(1)2, (2)6, (
24、3)30, (4)62, (5)122, (6)250.(1)255.192.0.0, (2)255.224.0.0, (3)255.248.0.0, (4)255.252.0.0, (5)255.254.0.0, (6)255.255.0.025.以下有 4 个子网掩码。哪些是不推荐使用的?为什么? (1)176.0.0.0, (2)96.0.0.0, (3)127.192.0.0, (4)255.128.0.0。只有(4)是连续的 1 和连续的 0 的掩码,是推荐使用的26.有如下的 4 个/24 地址块,试进行最大可能性的聚会。212.56.132.0/24212.56.133.0/24
25、212.56.134.0/24212.56.135.0/24212=(11010100)2,56= (00111000)2132=(10000100) 2,133=(10000101) 2134=(10000110) 2,135=(10000111) 2所以共同的前缀有 22 位,即 11010100 00111000 100001,聚合的 CIDR 地址块是:212.56.132.0/2227.有两个 CIDR 地址块 208.128/11 和 208.130.28/22。是否有那一个地址块包含了另一个地址?如果有,请指出,并说明理由。208.128/11 的前缀为:11010000 100
26、208.130.28/22 的前缀为:11010000 10000010 000101,它的前 11 位与 208.128/11 的前缀是一致的,所以 208.128/11 地址块包含了 208.130.28/22 这一地址块。28.已知路由器 R1 的路由表如表 412 所示。表 4-12 习题 4-28 中路由器 R1 的路由表地址掩码 目的网络地址 下一跳地址路由器接口/26 140.5.12.64 180.15.2.5 m2/24 130.5.8.0 190.16.6.2 m1/16 110.71.0.0 m0/16 180.15.0.0 m2/16 196.16.0.0 m1默认 默
27、认 110.71.4.5 m0试画出个网络和必要的路由器的连接拓扑,标注出必要的 IP 地址和接口。对不能确定的情应该指明。图形见课后答案 P38029.一个自治系统有 5 个局域网,其连接图如图 4-55 示。LAN2 至 LAN5 上的主机数分别为:91,150,3 和 15.该自治系统分配到的 IP 地址块为 30.138.118/23。试给出每一个局域网的地址块(包括前缀) 。30.138.118/23-30.138.0111 011分配网络前缀时应先分配地址数较多的前缀题目没有说 LAN1 上有几个主机,但至少需要 3 个地址给三个路由器用。本题的解答有很多种,下面给出两种不同的答案
28、:第一组答案 第二组答案 LAN1 30.138.119.192/29 30.138.118.192/27LAN2 30.138.119.0/25 30.138.118.0/25 LAN3 30.138.118.0/24 30.138.119.0/24LAN4 30.138.119.200/29 30.138.118.224/27LAN5 30.138.119.128/26 30.138.118.128/2730. 一个大公司有一个总部和三个下属部门。公司分配到的网络前缀是 192.77.33/24.公司的网络布局如图 4-56 示。总部共有五个局域网,其中的 LAN1-LAN4 都连接到路由
29、器 R1 上,R1 再通过 LAN5 与路由器 R5 相连。R5 和远地的三个部门的局域网 LAN6LAN8 通过广域网相连。每一个局域网旁边标明的数字是局域网上的主机数。试给每一个局域网分配一个合适的网络的前缀。见课后答案 P38031.以下地址中的哪一个和 86.32/12 匹配:请说明理由。(1)86.33.224123:(2)86.79.65.216;(3)86.58.119.74; (4)86.68.206.154 。 86.32/12 86.00100000 下划线上为 12 位前缀说明第二字节的前 4 位在前缀中。给出的四个地址的第二字节的前 4 位分别为:0010 ,0100
30、,0011 和 0100。因此只有(1)是匹配的。32.以下地址中的哪一个地址 2.52.90。140 匹配?请说明理由。(1)0/4;(2)32/4;(3)4/6(4)152.0/11前缀(1)和地址 2.52.90.140 匹配2.52.90.140 0000 0010.52.90.1400/4 0000 000032/4 0010 00004/6 0000 010080/4 0101 000033.下面的前缀中的哪一个和地址 152.7.77.159 及 152.31.47.252 都匹配?请说明理由。(1)152.40/13;(2)153.40/9;(3)152.64/12;(4)15
31、2.0/11。 前缀(4)和这两个地址都匹配34. 与下列掩码相对应的网络前缀各有多少位?(1)192.0.0.0;(2)240.0.0.0;(3)255.254.0.0;(4)255.255.255.252。(1)/2 ; (2) /4 ; (3) /11 ; (4) /30 。35. 已知地址块中的一个地址是 140.120.84.24/20。试求这个地址块中的最小地址和最大地址。地址掩码是什么?地址块中共有多少个地址?相当于多少个 C 类地址?140.120.84.24 140.120.(0101 0100).24最小地址是 140.120.(0101 0000).0/20 (80)最大
32、地址是 140.120.(0101 1111).255/20 (95)地址数是 4096.相当于 16 个 C 类地址。36.已知地址块中的一个地址是 190.87.140.202/29。重新计算上题。 190.87.140.202/29 190.87.140.(1100 1010)/29最小地址是 190.87.140.(1100 1000)/29 200最大地址是 190.87.140.(1100 1111)/29 207地址数是 8.相当于 1/32 个 C 类地址。37. 某单位分配到一个地址块 136.23.12.64/26。现在需要进一步划分为 4 个一样大的子网。试问:(1)每一
33、个子网的网络前缀有多长?(2)每一个子网中有多少个地址?(3)每一个子网的地址是什么?(4)每一个子网可分配给主机使用的最小地址和最大地址是什么?(1)每个子网前缀 28 位。(2)每个子网的地址中有 4 位留给主机用,因此共有 16 个地址。(3)四个子网的地址块是:第一个地址块 136.23.12.64/28,可分配给主机使用的最小地址:136.23.12.01000001136.23.12.65/28最大地址:136.23.12.01001110136.23.12.78/28第二个地址块 136.23.12.80/28,可分配给主机使用的最小地址:136.23.12.0101000113
34、6.23.12.81/28最大地址:136.23.12.01011110136.23.12.94/28第三个地址块 136.23.12.96/28,可分配给主机使用的最小地址:136.23.12.01100001136.23.12.97/28最大地址:136.23.12.01101110136.23.12.110/28第四个地址块 136.23.12.112/28,可分配给主机使用的最小地址:136.23.12.01110001136.23.12.113/28最大地址:136.23.12.01111110136.23.12.126/2838. IGP 和 EGP 这两类协议的主要区别是什么?IGP:在自治系统内部使用的路由协议;力求最佳路由EGP:在不同自治系统便捷使用的路由协议;力求较好路由(不兜圈子)EGP 必须考虑其他方面的政策,需要多条路由。代价费用方面可能可达性更重要。IGP:内部网关协议,只关心本自治系统内如何传送数据报,与互联网中其他自治系统使用什么协议无关。EGP:外部网关协议,在不同的 AS 边界传递路由信息的协议,不关心 AS 内部使用何种协议。注:IGP 主要考虑 AS 内部如何高效地工作,绝大多数情况找到最佳路由,对费用和代价的有多种解释。39. 试简述 RIP,OSPF 和 BGP 路由选择协议的主要特点。