计算机网络 自顶向下方法 第四章 网络层 习题答案

复习题

  1. 网络层数据包是数据报。 路由器根据数据包的IP(第3层)地址转发数据包。 链路层交换机根据数据包的MAC(第2层)地址转发数据包。
  2. 基于数据报的网络层:转发; 路由选择。 基于VC的网络层的附加功能:呼叫建立。
  3. 转发是关于将数据包从路由器的输入端口移动到适当的输出端口。 路由选择是关于确定源和目的地之间的路由终端。
  4. 是的,都使用转发表。 有关表的说明,请参见第4.2节。
  5. 单包:保证交付;保证最大延迟交付。数据包流:按顺序分组传送; 保证最小带宽; 保证最大抖动。 这些服务都不是由Internet的网络层提供的。 ATM的CBR服务提供有保证的交付和时间。 ABR不提供任何这些服务。
  6. 互动式实时多媒体应用,如IP电话和视频会议,可以从ATM CBR的服务中受益,该服务可以保持时间安排。
  7. 使用影子副本,在每个输入端口本地进行转发查找,而不调用集中式路由处理器。这种分散的方法避免了在路由器中的单个点上创建查找处理瓶颈。
  8. 通过内存切换; 通过总线切换; 通过互连网络进行切换。 只要所有数据包都被转发到不同的输出端口,互连网络就可以并行转发数据包。
  9. 如果数据包到达结构的速率超过交换结构速率,则数据包将需要在输入端口排队。 如果此速率不匹配仍然存在,则队列将变得越来越大并最终溢出输入端口缓冲区,从而导致数据包丢失。 如果交换结构速度至少是输入线速度的n倍,则可以消除数据包丢失,其中n是输入端口的数量。
  10. 假设输入和输出线路速度相同,如果数据包到达单个输出端口的速率超过线路速度,仍会发生数据包丢失。 如果此速率不匹配仍然存在,则队列将变得越来越大并最终溢出输出端口缓冲区,从而导致数据包丢失。 请注意,增加交换机结构速度无法防止此问题发生。
  11. HOL阻塞:有时,在输入端口队列中排在第一位的数据包必须等待,因为在它想要转发的输出端口上没有可用的缓冲区空间。 发生这种情况时,第一个数据包后面的所有数据包都会被阻止,即使它们的输出队列有空间容纳它们。 HOL阻塞发生在输入端口。
  12. 是。 每个接口都有一个地址。
  13. 11011111 00000001 00000011 00011100.
  14. 8接口; 3个转发表。
  15. 50%的开销。
  16. IP数据报中的8位协议字段包含有关目标主机应将段传递到哪个运输层协议的信息。
  17. 通常,无线路由器包括DHCP服务器。 DHCP用于为5台PC和路由器接口分配IP地址。 是的,无线路由器也使用NAT,因为它只从ISP获得一个IP地址。
  18. IPv6具有固定长度的头部,其不包括IPv4头部可包括的大多数选项。 即使IPv6报头包含两个128位地址(源和目标IP地址),整个报头也只有40字节的固定长度。 其中几个字段相似。 IPv6中的流量类型,有效载荷长度,下一个首部和跳限制分别类似于IPv4中服务类型,数据报长度,上层协议和寿命。
  19. 是的,因为整个IPv6数据报(包括头字段)都封装在IPv4数据报中。
  20. 链路状态算法:使用完整的全局网络知识计算源和目标之间的最小成本路径。距离向量路由选择算法:以迭代、分布式的方式计算最小成本路径。节点只知道它应该将包转发到哪个邻居,以便沿着成本最低的路径到达给定的目的地,以及该路径从其自身到目的地的成本。
  21. 路由器被组织成自治系统(AS)。 在AS内,所有路由器都运行相同的AS内路由协议。 因为AS中的路由器只需要知道其AS内的路由器和连接到AS的子网,因此解决了规模问题。 为了跨AS路由,AS间协议基于AS图,不考虑单个路由器。
  22. 否。每个AS都具有在AS内路由的管理自治权。
  23. 不。通告告诉D它可以通过A在11跳中到达z。但是,D已经可以通过B在7跳中到达z。 因此,无需在表中修改z的条目。 另一方面,如果广告说A通过C只离开z只有4跳,则D确实会修改其转发表。
  24. 使用OSPF,路由器会定期向AS中的所有其他路由器广播路由信息,而不仅仅是其相邻路由器。 路由器发送的路由信息为每个路由器的邻居都有一个条目; 该条目给出了从路由器到邻居的距离。 路由器发送的RIP通告包含AS中所有网络的信息,尽管此信息仅发送给其相邻路由器。
  25. “路线上的AS序列”
  26. 政策:在AS中,政策问题占主导地位。源自给定AS的流量不能通过另一个特定AS可能很重要。类似地,给定的AS可能想要控制它在其他AS之间承载的传输流量。在AS内,一切都名义上处于相同的行政控制之下,因此政策在选择AS中的路径时发挥的作用要小得多。
    规模:路由算法及其数据结构扩展以处理到大量网络之间路由的能力是AS间路由的关键问题。在AS中,可扩展性不是一个问题。首先,如果单个管理域变得太大,则始终可以将其划分为两个AS,并在两个新AS之间执行AS间路由。
    性能:由于AS间路由是如此面向策略,所使用的路由的质量(例如,性能)通常是次要问题(也就是说,满足某些策略标准的更长或更昂贵的路由可能会被接管路线较短但不符合该标准)。实际上,我们看到在AS中,甚至没有与路由相关的成本(除了AS跳数之外)的概念。但是,在单个AS中,此类策略问题不太重要,允许路由更多地关注路由上实现的性能级别。
  27. ISP C可以使用BGP多出口描述符向ISP B建议到ISP D的首选路由是通过东海岸对等点。 例如,ISP C中的东海岸BGP路由器可以向MED发送一个MED值为5的路由.ISP C中的西海岸路由器可以向MED发布一个MED值为10的路由。由于较低的值是首选 ,ISP B知道ISP C想要在东海岸接收流量。 实际上,路由器可以忽略MED值,因此ISP B仍然可以使用热土豆路由通过西海岸对等点将流量传递到ISP C,目的地是ISP D.
  28. 子网是较大网络的一部分; 子网不包含路由器; 其边界由路由器和主机接口定义。 前缀是CDIRized地址的网络部分; 它以a.b.c.d / x的形式写成; 前缀包含一个或多个子网。 当路由器在BGP会话中通告前缀时,它会在前缀中包含许多BGP属性。 在BGP行话中,前缀及其属性是BGP路由(或简称路由)。
  29. 路由器使用AS-PATH属性来检测和阻止循环通告; 他们还使用它来选择相同前缀的多个路径。 NEXT-HOP属性指示沿给定前缀的通告路径(接收广告的AS外部)的第一路由器的IP地址。 配置转发表时,路由器使用NEXT-HOP属性。
  30. 一级ISP B可能不会在两个其他一级互联网服务提供商(例如A和C)之间传输传输流量,而B与其签订了对等协议。 要实施此策略,ISP B不会向通过C的A路由做通告; 并且不会向通过A的C路线做通告。
  31. N路单播有很多缺点,包括:
    •效率:同一数据包的多个副本通过同一链路发送给潜在的多个链路;源必须生成同一数据包的多个副本。
    •寻址:源必须发现所有收件人的地址
  32. a)无控制洪泛:T; 受控洪泛:T; 生成树广播:F
    b)无控制洪泛:T; 受控洪泛:F; 生成树广播:F
  33. IGMP是仅在主机和其第一跳多播路由器之间运行的协议。 IGMP允许主机指定(到第一跳多播路由器)它想要加入的多播组。 然后由多播路由器与其他多播路由器协同工作(即,运行多播路由协议)以确保加入主机的多播组的数据被路由到适当的最后一跳路由器并从那里路由到主机。、
  34. 在组共享树中,所有发送方使用相同的路由树发送其多播流量。 对于基于源的树,来自给定源的多播数据报通过为该源构建的特定路由树进行路由; 因此,每个源可以具有不同的基于源的树,并且路由器可能必须跟踪给定多播组的若干基于源的树。

习题

  1. a)对于面向连接的网络,每一个路由器故障都将涉及到该连接的路由。至少,这将要求故障路由器的“上游”路由器建立到目标节点的新路径下游部分,所有必要的信号都涉及到设置路径。此外,初始路径上位于故障节点下游的所有路由器都必须断开故障连接,并且需要所有必要的信号来完成此操作。
    对于无连接的数据报网络,建立新的下游路径或删除旧的下游路径不需要发出信号。但是,我们已经看到,需要更新路由表(例如,通过距离向量算法或链路状态算法),以将失败的路由器考虑在内。我们已经看到,使用距离向量算法,这种路由表的更改有时可以局限于故障路由器附近的区域。因此,数据报网络更可取。有趣的是,最初的ARPAnet能够在压力条件下工作的设计标准是选择数据报架构用于这个互联网祖先的原因之一。
    b)为了使路由器在该源-目标对的源节点和目标节点之间的路径上保持可用的固定容量,它需要知道通过该链路的所有会话的流量特征。也就是说,路由器必须中具有每个路由器会话状态。这在面向连接的网络中是可能的,但在无连接的网络中是不可能的。因此,面向连接的VC网络更可取。
    c)在这种情况下,数据报架构有更多的控制流量开销。这是由于通过网络路由数据报所需的各种数据包头。但是在VC体系结构中,一旦所有的电路都建立起来,它们就永远不会改变。因此,从长远来看,信号开销可以忽略不计。

  2. a)链路上的最大VC数= 28 = 256。
    b)集中节点可以选择任何没有该集合的VC号
    {0,1,…,28-1}。 以这种方式,在没有任何公共空闲VC号的情况下,进行中的VC不可能比256更少。
    c)每个链路可以独立地分配来自集合{0,1,…,28-1}的VC号。 因此,对于沿其路径的每个链路,VC可能具有不同的VC编号。 VC路径中的每个路由器必须使用与出站链路关联的VC编号替换每个到达数据包的VC编号。

  3. 对于VC转发表,列为:传入接口,传入VC编号,传出接口,传出VC编号。 对于数据报转发表,列为:目标地址,传出接口。

  4. a )
    Destination Address Link Interface
    H3         3
    b )否,因为转发规则仅基于目的地地址。
    在这里插入图片描述

  5. a)不能为新VC分配VC编号; 因此无法在网络中建立新的VC。
    b)每个链路有两个可用的VC编号。 有四个链接。 因此组合的数量是24 = 16.一个示例组合是(10,00,00,10)。

  6. 在虚拟电路网络中,存在一个端到端的连接,从这个意义上说,路径上的每个路由器都必须保持连接的状态;因此,术语连接服务。在无连接网络层(如IP上的TCP)上的面向连接的运输服务中,终端系统保持连接状态;但是路由器不知道任何连接;因此术语是面向连接的服务。

  7. a)不可以,一次只能通过共享总线传输一个数据包。
    b)是的,正如本文所讨论的,只要两个包使用不同的输入总线和不同的输出总线,它们就可以并行转发。
    c)不可以,在这种情况下,两个数据包必须同时通过同一输出总线发送,这是不可能的。

  8. a) (n-1)D
    b) (n-1)D
    c) 0

  9. 所需的最小时隙数为3.调度如下。 插槽1:在顶部输入队列中发送X,在中间输入队列中发送Y.
    插槽2:在中间输入队列中发送X,在底部输入队列中发送Y插槽3:在底部输入队列中发送Z.
    最大的插槽数仍然是3.实际上,基于非空输入队列从不空闲的假设,我们看到第一个时隙总是包括在顶部输入队列中发送X而在中间或底部输入中发送Y 队列,在第二个时隙,我们总是可以再发送两个数据报,最后一个数据报可以在第三个时隙发送。
    注意:实际上,如果底部输入队列中的第一个数据报是X,那么最坏的情况需要4个时隙。

在这里插入图片描述
b) 第一个地址的前缀匹配是第5个条目:链接接口3
第二个地址的前缀匹配是第3个条目:链接接口2
第三个地址的前缀匹配是第4个条目:链接接口3

在这里插入图片描述

在这里插入图片描述
.

  1. 223.1.17.0/26
    223.1.17.128/25
    223.1.17.192/28

在这里插入图片描述
15.
在这里插入图片描述

  1. 任何IP地址范围为128.119.40.128到128.119.40.191
    四个相同大小的子网:128.119.40.64 / 28,128.119.40.80 / 28,128.119.40.96 / 28,128.119.40.112 / 28

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  1. 纽约大学理工学院的IP地址块是:
    NetRange:128.238.0.0 - 128.238.255.255 CIDR:128.238.0.0/16
    斯坦福大学的IP地址块是:NetRange:171.64.0.0 - 171.67.255.255 CIDR:171.64.0.0/14
    华盛顿大学的IP地址块为:NetRange:140.142.0.0 - 140.142.255.255
    CIDR:140.142.0.0/16
    不,whois服务不能用于确定特定IP地址的地理位置。
    www.maxmind.com用于确定纽约大学理工学院,斯坦福大学和华盛顿大学的Web服务器的位置。

  2. 每个片段中数据字段的最大大小= 680(因为IP有20个字节
    头)。 因此需要的片段数量
    在这里插入图片描述
    每个片段将具有标识号422.除最后一个片段之外的每个片段将具有700字节的大小(包括IP头部)。 最后一个数据报的大小为360字节(包括IP头)。 4个片段的偏移量为0,85,170,255。前3个片段中的每个片段都有flag = 1; 最后一个片段将有flag = 0。

  3. MP3文件大小= 500万字节。 假设数据在TCP段中携带,每个TCP段也具有20个字节的头。 然后每个数据报可以携带1500-40 = 1460字节的MP3文件
    所需的数据报数量1460
    在这里插入图片描述
    除最后一个数据报之外的所有数据都是1,500字节; 最后一个数据报将是960 + 40 = 1000字节。 请注意,这里没有碎片 - 源主机不会创建大于1500字节的数据报,并且这些数据报小于链接的MTU。

  4. a)家庭地址:192.168.1.1,192.168.1.2,192.168.1.3,路由器接口为192.168.1.4
    b)
    在这里插入图片描述

  5. a)由于所有IP数据包都是在外部发送的,因此我们可以使用数据包嗅探器来记录NAT后面的主机生成的所有IP数据包。由于每个主机生成一系列具有连续数字的IP数据包,并且(很可能,因为它们是从大空间中随机选择的)初始标识号(ID),我们可以将具有连续ID的IP数据包分组到一个集群中。集群数是NAT后面的主机数。
    b)但是,如果这些识别号码不按顺序分配但是随机分配,则(a)部分建议的技术将不起作用,因为在嗅探数据中不会有聚类。

  6. 不可能设计这种技术。 为了在Arnold和Bernard之间建立直接的TCP连接,Arnold或Bob必须启动与另一个的连接。 但覆盖Arnold和Bob的NAT会丢弃从WAN端到达的SYN数据包。 因此,如果它们都在NAT之后,Arnold和Bob都不能发起与另一个的TCP连接。

  7. y-x-u, y-x-v-u, y-x-w-u, y-x-w-v-u,
    y-w-u, y-w-v-u, y-w-x-u, y-w-x-v-u, y-w-v-x-u,
    y-z-w-u, y-z-w-v-u, y-z-w-x-u, y-z-w-x-v-u, y-z-w-v-x-u,

  8. x to z:
    x-y-z, x-y-w-z,
    x-w-z, x-w-y-z,
    x-v-w-z, x-v-w-y-z,
    x-u-w-z, x-u-w-y-z,
    x-u-v-w-z, x-u-v-w-y-z
    z to u:
    z-w-u,
    z-w-v-u, z-w-x-u, z-w-v-x-u, z-w-x-v-u, z-w-y-x-u, z-w-y-x-v-u,
    z-y-x-u, z-y-x-v-u, z-y-x-w-u, z-y-x-w-y-u, z-y-x-v-w-u,
    z-y-w-v-u, z-y-w-x-u, z-y-w-v-x-u, z-y-w-x-v-u, z-y-w-y-x-u, z-y-w-y-x-v-u
    z to w:
    z-w, z-y-w, z-y-x-w, z-y-x-v-w, z-y-x-u-w, z-y-x-u-v-w, z-y-x-v-u-w

在这里插入图片描述

在这里插入图片描述

  1. 这个问题的措辞有点含糊不清。我们的意思是“第一次运行算法时的迭代次数”(也就是说,假设节点最初拥有的唯一信息是其最近邻居的成本)。我们假设算法同步运行(也就是说,在一个步骤中,所有节点同时计算它们的距离表,然后交换表)。
    在每次迭代时,节点与其邻居交换距离表。因此,如果您是节点A,并且您的邻居是B,则所有B的邻居(将全部是您的一个或两个跃点)将知道在一次迭代后(或之后)向您发送一个或两个跃点的最短成本路径B告诉他们你的成本)。
    设d是网络的“直径” - 网络中任意两个节点之间没有环路的最长路径的长度。使用上面的推理,经过d-1次迭代,
    所有节点都知道到所有其他节点的d或更少跳的最短路径成本。由于具有大于d跳的任何路径将具有循环(并且因此具有比移除循环的路径更大的成本),所以算法将在最多d-1次迭代中收敛。
    ASIDE:如果DV算法是由于链路成本的变化而运行的,除非还指定了链路成本的限制,否则在收敛之前所需的迭代次数没有先验限制。

  2. a)Dx(w)= 2,Dx(y)= 4,Dx(u)= 7
    b)首先考虑如果c(x,y)改变会发生什么。如果c(x,y)变大或变小(只要c(x,y)>=1),从x到u的最低费用路径的成本至少为7。因此,c(x,y)的变化(如果c(x,y)>=1)不会导致x通知其邻居任何变化。
    如果c(x,y)=<1,那么最低费用路径现在通过y,并具有费用+6。
    现在考虑C(x,w)是否改变。如果c(x,w)=1,那么到u的最低费用路径继续通过w,其费用更改为5+x将通知其邻居该新成本。如果c(x,w)>=6,那么最小成本路径现在通过y,成本为11;再次,x将通知其邻居该新成本。
    c)链路成本c(x,y)(只要c(x,y)>=1)的任何变化都不会导致x通知其邻居到u的新的最低费用路径。

在这里插入图片描述
在这里插入图片描述

  1. 不,这是因为降低链路成本不会导致环路(由该链路的两个节点之间的下一跳关系引起)。 使用链接连接两个节点相当于将链接权重从无限减少到有限权重。
  2. 在每一步中,节点距离向量的每次更新都基于Bellman-Ford方程,即仅在其距离向量中这些值减少时。值没有增加。如果没有更新,则不会发送任何消息。因此,d(x)是非递增的。因为这些成本是有限的,所以最终距离向量将在有限的步骤中稳定下来。

在这里插入图片描述
b)是的,会出现计数到无穷大的问题。 下表显示了路由聚合过程。 假设在时间t0,发生链路成本变化。 在时间t1,y更新其距离矢量并通知邻居w和z。 在下表中,“→”代表“通知”。
在这里插入图片描述
我们看到w,y,z在计算路由器x的成本时形成一个循环。 如果我们继续上表中显示的迭代,那么我们将看到,在t27,z通过其与x的直接链接检测到x的最小成本是50。 在t29,w通过z得知x的最小成本是51。 在t30,y将其x的最小成本更新为52(经由w)。 最后,在时间t31,没有更新,并且路由稳定。
在这里插入图片描述
c)切断y和z之间的链接

  1. 因为在BGP中,从AS到目的地的完整AS路径信息是可用的,所以循环检测很简单——如果BGP对等端接收到的路由在AS路径中包含自己的AS编号,那么使用该路由将导致循环。

  2. 选择的路径不一定是最短的AS路径。 回想一下,在路线选择过程中需要考虑许多问题。 由于经济原因,很可能在较短的无环路径上优选较长的无环路径。 例如,AS可能更喜欢将流量发送到一个邻居而不是另一个具有较短AS距离的邻居。

  3. a) eBGP
    b) iBGP
    c) eBGP
    d) iBGP

  4. a)I1因为该接口开始从1d到网关路由器1c的最低成本路径。
    B)I2。 两条路由具有相等的AS-PATH长度,但I2开始具有最近的NEXT-HOP路由器的路径。
    C)I1。 I1开始具有最短AS-PATH的路径。

  5. 对于C来说,迫使B将B的所有交通转移到东海岸的D的一个方法是C只通过其东海岸的对等点向D宣传其到D的路线。

在这里插入图片描述

  1. BitTorrent文件共享和Skype P2P应用程序。
    考虑一个BitTorrent文件共享网络,其中对等体1,2和3分别位于存根网络W,X和Y中。 由于BitTorrent文件共享的机制,对等体2从对等体1获取数据块然后将这些数据块转发到3是可能的。这相当于B转发最终发往存根网络Y的数据。

  2. A应告知B两条路径,AS路径A-W和A-V。
    A应该告诉C只有一条路线,A-V。
    C接收AS路径:B-A-W,B-A-V,A-V。

  3. 由于Z想要传输Y的流量,Z将向Y发送路由通告。这样,当Y具有可以通过Z到达的IP的数据报时,Y将具有通过Z发送数据报的选项。 但是,如果Z将路由通告给Y,则Y可以将这些路由重新通告给X.因此,在这种情况下,Z无法阻止来自X的流量通过Z传输。

  4. 最小生成树z通过x连接到y,费用为14(= 8 + 6)。
    z通过x连接到v,费用为11(= 8 + 3);
    z通过x和v连接到u,费用为14(= 8 + 3 + 3);
    z通过x,v和u连接到w,费用为17(= 8 + 3 + 3 + 3)。
    这可以通过Prim算法来获得最小生成树。

在这里插入图片描述在上面所示的二进制树配置中,32个接收方被显示为连接到发送方。 通过网络层广播,消息的副本仅通过每个链接转发一次。 因此有62个链接交叉(2 + 4 + 8 + 16 + 32)。 通过单播模拟,发送方通过5跳的路径将副本单播到每个接收方。 因此有160个链接交叉点(5 * 32)。在上面所示的二进制树配置中,32个接收方被显示为连接到发送方。 通过网络层广播,消息的副本仅通过每个链接转发一次。 因此有62个链接交叉(2 + 4 + 8 + 16 + 32)。 通过单播模拟,发送方通过5跳的路径将副本单播到每个接收方。 因此有160个链接交叉点(5 * 32)。
所有接收器都在一条线上的拓扑结构,发送器位于线路的一端,在网络层广播和单播模拟的成本之间具有最大的差异。

在这里插入图片描述
较粗的阴影线表示从A到所有目的地的最短路径树。 其他解决方案也是可能的,但在这些解决方案中,B无法从A路由到C或D.较粗的阴影线表示从A到所有目的地的最短路径树。 其他解决方案也是可能的,但在这些解决方案中,B无法从A路由到C或D.

在这里插入图片描述

  1. 原始图中所示的拓扑的基于中心的树将A连接到C; B到C; E到C; 和F到C(都直接)。 D通过E连接到C,G通过D,E连接到C.这个基于中心的树不同于图中所示的最小生成树。

  2. 原始图中显示的拓扑的基于中心的树将t连接到v; u到v; w到v; x到v; 和y到v(直接)。 并且z通过x连接到v。 此基于中心的树与最小生成树不同。

  3. 以下网络的Dijkstra算法(以节点A为源)导致链路AC,AB和BD的最小单播费用路径树,总体免费费用为20.最小生成树包含链路AB,BD 和DC,费用为11。
    在这里插入图片描述

  4. 在传输1步后,传输3份副本,经过2个步骤传输6份副本。 经过3个步骤,传输12个副本,依此类推。 在k步之后,将在该步骤中发送3 * 2k-1个副本。
    在这里插入图片描述

  5. 必须在应用层构建协议。 例如,应用程序可以周期性地将其身份多播到应用层消息中的所有其他组成员。

  6. 一个简单的应用层协议,允许所有成员知道组中所有其他成员的身份,是应用程序的每个实例向所有其他成员发送包含其身份的多播消息。 该协议在带内发送消息,因为多播信道用于分发标识消息以及来自应用程序本身的多播数据。 带内信令的使用利用现有的多播分发机制,导致非常简单的设计。

  7. 32-4=28位可用于多播地址。 因此,多播的大小地址空间为N=228
    两个组选择相同地址的概率是
    在这里插入图片描述
    1000个组都有不同地址的概率是
    在这里插入图片描述
    忽略跨产品术语,这大致相当于
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/dldldl1994/article/details/86358344