计算机网络网络层 习题答案
1. 考虑使用32比特主机地址的某数据报网络。假定一台路由器具有4条链路,编号为0~3,分组能被转发到如下的各链路接口:
a. 提供一个具有4个表项的转发表,使用最长前缀匹配,转发分组到正确的链路接口。
b. 描述你的转发表是如何为具有下列目的地址的数据报决定适当链路接口的。
11001000 10010001 01010001 01010101
11100001 01000000 11000011 00111100
11100001 10000000 00010001 01110111
2. 考虑下面的网络。对于标明的链路费用,用Dijkstra的最短路径算法计算出从x到所有网络结点的最短路径。通过计算一个类似于PPT中所讲的表,说明该算法是如何工作的。
3. 考虑上题中所示的网络。使用Dijkstra算法
a. 计算出从t到所有网络结点的最短路径。
b. 计算出从u到所有网络结点的最短路径。
c. 计算出从v到所有网络结点的最短路径。
d. 计算出从w到所有网络结点的最短路径。
e. 计算出从y到所有网络结点的最短路径。
f. 计算出从z到所有网络结点的最短路径。
4. 考虑下图所示的网络段。x只有两个相连邻居w和y。w有一条通向目的地u(没有显示)的最低费用路径,其值为5;y有一条通向目的地u的最低费用路径,其值为6。从w与y到u(以及w与y之间)的完整路径未显示出来。网络中所有链路费用皆为正整数值。
a. 给出x对目的地w、y和u的距离向量。
b. 给出对c(x,w)或c(x,y)的链路费用的变化,使得执行了距离向量算法后,x将通知其邻居有一条通向u的新最低费用路径。
c. 给出对c(x,w)或c(x,y)的链路费用的变化,使得执行了距离向量算法后,x将不通知其邻居有一条通向u的新最低费用路径。
a. Dx(w) = 2, Dx(y) = 4, Dx(u) = 7
b. 首先考虑c(x,y)变化。可能变大或者变小(只要c(x,y)大于 0),从x到u的最低费用路径还是要经过w,所需费用为7。因此,c(x,y)链路费用的变化,使得执行了距离向量算法后,x不用通知其邻居发生了变化。
现在考虑c(x,w)的变化,如果 c(x,w)=m<=5,那么到 u 的最小费用路径还是要经过w,而费用变为5+m。 x将会通知它的邻居费发生了变化。如果c(x,w)=n>5,那么最小费用路径变为经过y,费用为10;x将通知它的邻居费用发生了变化.。
c. 由2中的分析可知,c(x,y)发生任何变化,执行距离向量算法后,x将不通知其邻居有一条通向u的新的最低费用路径。
4-01.网络层向上提供的服务有哪两种?试比较其优缺点。
答:网络层向运输层提供 “面向连接”虚电路(Virtual Circuit)服务或“无连接”数据报服务
前者预约了双方通信所需的一切网络资源。优点是能提供服务质量的承诺。即所传送的分组不出错、丢失、重复和失序(不按序列到达终点),也保证分组传送的时限,缺点是路由器复杂,网络成本高;
后者无网络资源障碍,尽力而为,优缺点与前者互易。
4-03.作为中间设备,转发器、网桥、路由器和网关有何区别?
答:中间设备又称为中间系统或中继(relay)系统。
物理层中继系统:转发器(repeater)。
数据链路层中继系统:网桥或桥接器(bridge)。
网络层中继系统:路由器(router)。
网桥和路由器的混合物:桥路器(brouter)。
网络层以上的中继系统:网关(gateway)。
4-09.(1)子网掩码为255.255.255.0代表什么意思?
答:有三种含义
其一是一个A类网的子网掩码,对于A类网络的IP地址,前8位表示网络号,后24位表示主机号,使用子网掩码255.255.255.0表示前8位为网络号,中间16位用于子网段的划分,最后8位为主机号。
第二种情况为一个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.
每一个子网上的主机为(2^3)=8台
掩码位数29,该网络能够连接8个主机,扣除全1和全0后为6台。
(3)一A类网络和一B网络的子网号subnet-id分别为16个1和8个1,问这两个子网掩码有何不同?
答:A类网络:11111111 11111111 11111111 00000000
给定子网号(16位“1”)则子网掩码为255.255.255.0
B类网络 11111111 11111111 11111111 00000000
给定子网号(8位“1”)则子网掩码为255.255.255.0
但子网数目不同
(4)一个B类地址的子网掩码是255.255.240.0。试问在其中每一个子网上的主机数最多是多少?
答:(240)10=(128+64+32+16)10=(11110000)2
Host-id的位数为4+8=12,因此,最大主机数为:
2^12-2=4096-2=4094
11111111.11111111.11110000.00000000 主机数2^12-2
(5)一A类网络的子网掩码为255.255.0.255;它是否为一个有效的子网掩码?
答:是 11111111 11111111 00000000 11111111
但不是一个方便使用的子网掩码(现在业界标准是使用连续的子网掩码,也就是在二进制表示的时候,左边的1是连续的,右边的0也是连续的,否则就是不可用的掩码。windows里面也不能配置这个掩码。现有的路由器也不支持这样的掩码格式。只是在做路由过滤的时候,有可能作为通配符使用。)
(6)某个IP地址的十六进制表示C2.2F.14.81,试将其转化为点分十进制的形式。这个地址是哪一类IP地址?
答:
C2.2F.14.81–(1216+2).(216+15).(16+4).(8*16+1)
–194.47.20.129,是一个C类地址
(7)C类网络使用子网掩码有无实际意义?为什么?
答:有实际意义.C类子网IP地址的32位中,前24位用于确定网络号,后8位用于确定主机号.如果划分子网,可以选择后8位中的高位,这样做可以进一步划分网络,并且不增加路由表的内容,但是代价是主机数减少.
*4-20.设某路由器建立了如下路由表:
目的网络 子网掩码 下一跳
128.96.39.0 255.255.255.128 接口m0
128.96.39.128 255.255.255.128 接口m1
128.96.40.0 255.255.255.128 R2
192.4.153.0 255.255.255.192 R3
(默认) —— R4
现共收到5个分组,其目的地址分别为:
(1)128.96.39.10
(2)128.96.40.12
(3)128.96.40.151
(4)192.153.17
(5)192.4.153.90
试分别计算下一跳。
答:
(1)分组的目的站IP地址为:128.96.39.10。先与子网掩码255.255.255.128相与,得128.96.39.0,可见该分组经接口0转发。
(2)分组的目的IP地址为:128.96.40.12。
① 与子网掩码255.255.255.128相与得128.96.40.0,不等于128.96.39.0。
② 与子网掩码255.255.255.128相与得128.96.40.0,经查路由表可知,该项分组经R2转发。
(3)分组的目的IP地址为:128.96.40.151,与子网掩码255.255.255.128相与后得128.96.40.128,与子网掩码255.255.255.192相与后得128.96.40.128,经查路由表知,该分组转发选择默认路由,经R4转发。
(4)分组的目的IP地址为:192.4.153.17。与子网掩码255.255.255.128相与后得192.4.153.0。与子网掩码255.255.255.192相与后得192.4.153.0,经查路由表知,该分组经R3转发。
(5)分组的目的IP地址为:192.4.153.90,与子网掩码255.255.255.128相与后得192.4.153.0。与子网掩码255.255.255.192相与后得192.4.153.64,经查路由表知,该分组转发选择默认路由,经R4转发。
4-21某单位分配到一个B类IP地址,其net-id为129.250.0.0.该单位有4000台机器,分布在16个不同的地点。如选用子网掩码为255.255.255.0,试给每一个地点分配一个子网掩码号,并算出每个地点主机号码的最小值和最大值
答: 4000/16=250,平均每个地点250台机器。如选255.255.255.0为掩码,则每个网络所连主机数=28-2=254>250(每个子网内的主机数可满足要求),共有子网数=28-2=254>16(可划分的子网数可满足要求),能满足实际需求。
可给每个地点分配如下子网号码
4-29.一个自治系统有5个局域网,其连接图如图4-66示。LAN2至LAN5上的主机数分别为:91,150,3和15.该自治系统分配到的IP地址块为30.138.118/23。试给出每一个局域网的地址块(包括前缀)。
答:30.138.118/23—30.138.0111 011
分配网络前缀时应先分配地址数较多的前缀
题目没有说LAN1上有几个主机,但至少需要3个地址给三个路由器用。
本题的解答有很多种,下面给出两种不同的答案:
第一组答案 第二组答案
LAN1 30.138.119.192/29 30.138.118.192/27 (3个路由器,3个地址,地址位只是需要3位,32-3=29,前29位都可以作为网络号)
LAN2 30.138.119.0/25 30.138.118.0/25
LAN3 30.138.118.0/24 30.138.119.0/24
LAN4 30.138.119.200/29 30.138.118.224/27
LAN5 30.138.119.128/26 30.138.118.128/27
4-30. 一个大公司有一个总部和三个下属部门。公司分配到的网络前缀是192.77.33/24.公司的网络布局如图4-67示。总部共有五个局域网,其中的LAN1-LAN4都连接到路由器R1上,R1再通过LAN5与路由器R2相连。R2和远地的三个部门的局域网LAN6~LAN8通过广域网相连。每一个局域网旁边标明的数字是局域网上的主机数。试给每一个局域网分配一个合适的网络的前缀。
答:
LAN1:192.77.33.0/26。
LAN3:192.77.33.64/27; LAN6:192.77.33.96/27; LAN7:192.77.33.128/27;LAN8:192.77.33.160/27。
LAN2:192.77.33.192/28;LAN4:192.77.33.208/28。
LAN5:192.77.33.224/29。
WAN1:192.77.33.232/30;WAN2:192.77.33.236/30;WAN3:192.77.33.240/30
注:每个网段的地址空间范围
4-33.下面的前缀中的哪一个和地址152.7.77.159及152.31.47.252都匹配?请说明理由。
(1)152.40/13;(2)153.40/9;(3)152.64/12;(4)152.0/11。
答:
前缀(4)和这两个地址都匹配(子网11位)
152.7.77.159的第2个八位二进制码是0000 0111
152.31.47.252的第2个八位二进制码是0001 1111
4-35. 已知地址块中的一个地址是140.120.84.24/20。试求这个地址块中的最小地址和最大地址。地址掩码是什么?地址块中共有多少个地址?相当于多少个C类地址?
答:最小地址是 140.120.80.0/20
最大地址是 140.120.95.255/20
地址数是4096.相当于16个C类地址。
140.120.84.24=140.120.(01010100).24;最小地址是140.120.(01010000).0/20(80)
最大的地址是140.120.(01011111)255/20(95)地址掩码是:255.255.240.0
共有2^12=4096个地址,相当于16个C类地址。
4-37. 某单位分配到一个地址块136.23.12.64/26。现在需要进一步划分为4个一样大的子网。试问:
(1)每一个子网的网络前缀有多长?
(2)每一个子网中有多少个地址?
(3)每一个子网的地址是什么?
(4)每一个子网可分配给主机使用的最小地址和最大地址是什么?
答:
(1)每个子网前缀28位。
(2)每个子网的地址中有4位留给主机用,因此共有16个地址。
(3)四个子网的地址块是:
第一个地址块136.23.12.64/28,可分配给主机使用的
最小地址:136.23.12.01000001=136.23.12.65/28
最大地址:136.23.12.01001110=136.23.12.78/28
第二个地址块136.23.12.80/28,可分配给主机使用的
最小地址:136.23.12.01010001=136.23.12.81/28
最大地址:136.23.12.01011110=136.23.12.94/28
第三个地址块136.23.12.96/28,可分配给主机使用的
最小地址:136.23.12.01100001=136.23.12.97/28
最大地址:136.23.12.01101110=136.23.12.110/28
第四个地址块136.23.12.112/28,可分配给主机使用的
最小地址:136.23.12.01110001=136.23.12.113/28
最大地址:136.23.12.01111110=136.23.12.126/28
4-41. 假定网络中的路由器B的路由表有如下的项目(这三列分别表示“目的网络”、“距离”和“下一跳路由器”)
N1 7 A
N2 2 C
N6 8 F
N8 4 E
N9 4 F
现在B收到从C发来的路由信息(这两列分别表示“目的网络”“距离”):
N2 4
N3 8
N6 4
N8 3
N9 5
试求出路由器B更新后的路由表(详细说明每一个步骤)。
答:路由器B更新后的路由表如下:
N1 7 A 无新信息,不改变
N2 5 C 相同的下一跳,更新
N3 9 C 新的项目,添加进来
N6 5 C 不同的下一跳,距离更短,更新
N8 4 E/C 不同的下一跳,距离一样,不改变
N9 4 F 不同的下一跳,距离更大,不改变