计算机网络第四章部分题目解析,202页

发布时间 2023-12-18 21:36:44作者: 庄佳星

网络层向上提供的服务有哪两种?试比较其优缺点

  1. 面向连接的服务(Connection-Oriented Service):
    • 优点:
      • 可靠性高: 通过建立连接、传输数据、最后释放连接的过程,可以保证数据的可靠性。
      • 有序性: 数据传输是有序的,不会乱序到达。
      • 流量控制: 可以通过连接的建立和释放来控制流量,防止网络拥塞。
    • 缺点:
      • 开销较大: 建立和释放连接会引入一定的开销,特别是在短消息通信的场景下可能显得不经济。
      • 实时性较差: 由于建立连接的过程,可能引入较大的延迟,不适用于实时性要求较高的应用。
  2. 无连接的服务(Connectionless Service):
    • 优点:
      • 开销小: 由于不需要建立和释放连接,因此减少了通信的开销。
      • 实时性较好: 适用于实时性要求较高的应用,因为没有连接建立的延迟。
    • 缺点:
      • 不可靠: 由于没有连接的维护,数据传输可能不可靠,丢失或乱序可能发生。
      • 无序性: 数据传输是无序的,接收端需要进行排序。
      • 缺乏流量控制: 无连接服务缺乏流量控制机制,可能导致网络拥塞。

选择面向连接或无连接的服务取决于具体的应用需求。对于要求可靠性较高、有序性较好的场景,可以选择面向连接的服务;而对于要求实时性较高、开销较小的场景,可以选择无连接的服务。通常,实际网络中会综合使用这两种服务,根据具体的通信需求来选择合适的服务方式。

 

试简单说明下列协议的作用:IP,ARP和ICMP

  1. IP(Internet Protocol):
    • 作用: IP是互联网协议的核心协议之一,负责在网络中传输数据包。它定义了计算机在网络中的唯一标识(IP地址),并提供了一种机制来将数据包从源主机路由到目标主机。IP是一种无连接的协议,它不关心数据包的可靠性,而是依赖于更上层的协议来处理数据包的可靠性和顺序性。
  2. ARP(Address Resolution Protocol):
    • 作用: ARP是用于解析网络层地址(IP地址)到链路层地址(MAC地址)的协议。当一个设备知道目标的IP地址但不知道其MAC地址时,会使用ARP协议发送广播请求,请求目标设备回复其MAC地址。ARP表用于缓存IP地址和对应的MAC地址,以提高地址解析的效率。
  3. ICMP(Internet Control Message Protocol):
    • 作用: ICMP是用于在IP网络中发送错误消息和控制消息的协议。它常用于网络工具(如ping和traceroute)以及网络设备之间的通信。ICMP消息可以用来检测网络连接的可达性、测量往返时间(RTT)、报告错误等。一些常见的 ICMP 消息类型包括 Echo Request 和 Echo Reply(ping 命令使用)、Destination Unreachable、Time Exceeded 等。

这三个协议在互联网通信中扮演了重要的角色,IP负责数据包的传输,ARP解析网络地址到链路地址,而ICMP用于在网络中进行控制和错误报告。它们协同工作,构建了可靠和有效的互联网通信基础。

 

试说明IP地址与MAC地址的区别,为什么要使用这两种不同的地址

IP地址与MAC地址的区别:

  1. 位置:
    • IP地址(网络层): IP地址处于网络层,用于在全球范围内标识和定位设备。它是逻辑地址,能够在不同的物理网络上进行路由。
    • MAC地址(链路层): MAC地址位于数据链路层,用于在局域网内唯一标识网络设备。它是物理地址,通常由网络适配器(NIC)制造商分配。
  2. 唯一性:
    • IP地址: 在互联网中,IP地址必须在全球范围内唯一,以确保每个设备都能被唯一标识。
    • MAC地址: 在一个局域网内,MAC地址也必须是唯一的,以确保网络中的每个设备都有一个独特的标识符。
  3. 层次结构:
    • IP地址: 具有层次结构,包括网络号和主机号,这使得它能够支持跨越多个子网的路由。
    • MAC地址: 没有明显的层次结构,它是一个平面的标识符,只在同一物理网络上有意义。

为什么要使用这两种不同的地址?

  1. 规模和唯一性: IP地址提供了在全球范围内唯一标识设备的能力,允许设备在不同的网络之间通信。MAC地址则在局域网内提供唯一标识。
  2. 路由和网络层分离: IP地址允许在不同的网络之间进行路由,而MAC地址仅在局域网内使用。这种分离使得网络能够更灵活地进行扩展和管理。
  3. 灵活性: IP地址的层次结构和逻辑特性使其适用于跨越多个网络的全球互联网。MAC地址则更适用于本地局域网内的设备唯一标识。

综合起来,IP地址和MAC地址在不同的网络层次上发挥作用,各自具有独特的特性,以满足不同范围和需求的网络通信。 IP地址使得全球互联网成为可能,而MAC地址则在局域网内提供了唯一标识,支持局部通信和数据链路层的操作。

 

主机A发送IP数据报给主机B,途中经过了5个路由器。试问在IP数据报的发送过程中总共使用了几次ARP?

在IP数据报的发送过程中,ARP(Address Resolution Protocol)主要用于获取目标设备的MAC地址,以便将IP地址映射到链路层地址。在涉及5个路由器的情况下,我们可以将ARP的使用分为两个阶段:源主机到第一个路由器,以及从最后一个路由器到目标主机。

  1. 源主机到第一个路由器:
    • 主机A首先需要获取第一个路由器的MAC地址,因为它只知道目标主机B的IP地址,而不知道第一个路由器的MAC地址。
    • 这导致主机A在本地子网内发送一次ARP请求,以获取第一个路由器的MAC地址。
  2. 路由器之间的传递:
    • 在路由器之间传递过程中,每个路由器都需要知道下一跳的路由器的MAC地址,这可能涉及到多次ARP请求和响应。
    • 对于每个路由器,主要是在其所连接的子网中进行ARP,获取下一跳路由器的MAC地址。
  3. 最后一个路由器到目标主机B:
    • 当IP数据报达到目标主机B所在的子网时,最后一个路由器需要进行一次ARP请求,以获取主机B的MAC地址。

总的来说,ARP的使用次数取决于路由器的数量以及数据报穿过的每个子网。在这个场景中,主机A发送IP数据报到主机B,通过5个路由器,至少会涉及6次ARP操作:一次是主机A到第一个路由器,然后是每个路由器之间的传递,最后是最后一个路由器到主机B。这里的ARP次数可能还会受到具体网络拓扑结构和子网划分的影响。

 

 

一个数据报长度为4000字节(固定首部长度)。现在经过一个网络传送,但此网络能够传送的最大数据长度为1500字节。试问应当划分为几个短些的数据报片?各数据报片的数据字段长度,片偏移字段和MF标志应为何数值?

当一个数据报长度为4000字节,而网络的最大传输单元(MTU)为1500字节时,需要将这个大的数据报分割成多个较小的数据报片。IP协议允许分片,而每个数据报片都包含一个片段(Fragment)。

首先,计算需要多少个数据报片:

总数据长度=4000 字节

MTU=1500 字节

片数=⌈总数据长度/MTU⌉

片数=⌈4000/1500⌉=

所以,需要将这个大的数据报分成3个数据报片。

接下来,计算各数据报片的数据字段长度、片偏移字段和MF标志:

  1. 第一个数据报片:
    • 数据字段长度:1500字节
    • 片偏移字段:0(因为这是第一个片段)
    • MF标志(More Fragments标志):1(表示后面还有数据)
  2. 第二个数据报片:
    • 数据字段长度:1500字节
    • 片偏移字段:1500/8=187.581500​=187.5 字节,向下取整为187(因为单位是8字节)
    • MF标志:1(表示后面还有数据)
  3. 第三个数据报片:
    • 数据字段长度:1000字节(因为总长度为4000字节,前两个片段已经包含了3000字节)
    • 片偏移字段:3000/8=375 字节,向下取整为375
    • MF标志:0(表示这是最后一个片段,后面没有数据了)

总结:

  • 第一个数据报片的数据字段长度为1500字节,片偏移字段为0,MF标志为1。
  • 第二个数据报片的数据字段长度为1500字节,片偏移字段为187(乘以8),MF标志为1。
  • 第三个数据报片的数据字段长度为1000字节,片偏移字段为375(乘以8),MF标志为0。

 

 

与下列掩码对应的网络前缀各有多少位?(1)192.0.0.0;(2)240.0.0.0(3)255.224.0.0(4)255.255.255.252

掩码用于定义一个IP地址中网络部分和主机部分的分界。IPv4的IP地址长度为32位,而掩码中的连续的"1"位表示网络部分,连续的"0"位表示主机部分。

在给定的掩码中,网络前缀的位数可以通过统计掩码中连续的"1"的个数来确定。下面分别是给定掩码对应的网络前缀的位数:

  1. 192.0.0.0:
    • 控制台表达:11111111.00000000.00000000.00000000
    • 网络前缀位数:第一个字节(8位)
  2. 240.0.0.0:
    • 控制台表达:11110000.00000000.00000000.00000000
    • 网络前缀位数:前4位(第一个字节)
  3. 255.224.0.0:
    • 控制台表达:11111111.11100000.00000000.00000000
    • 网络前缀位数:前11位(第一个字节和部分第二个字节)
  4. 255.255.255.252:
    • 控制台表达:11111111.11111111.11111111.11111100
    • 网络前缀位数:前30位(前三个字节)

这样,每个给定掩码对应的网络前缀的位数就被确定了。

 

 

某单位分配到一个地址块136.23.12.64/26。现在需要进一步划分为4个一样大的子网。试问:(1)每个子网的网络前缀有多长(2)每一个子网中有多少个地址(3)每一个子网的地址块是什么?(4)每一个子网可分配给主机使用的最小地址和最大地址是什么?

 

给定的地址块是136.23.12.64/26,我们需要将其划分为4个一样大的子网。首先,我们来回答每个问题:

  1. 每个子网的网络前缀有多长:
    • 初始的网络前缀长度是26位。
    • 因为要将其分为4个子网,我们需要将网络前缀长度增加2位(因为 22=4 )。
    • 所以,每个子网的网络前缀长度为 26+2=28位。
  2. 每一个子网中有多少个地址:
    • 初始的地址块是 /26,它包含 232−26=26=64 个地址。
    • 因为要将其划分为4个子网,每个子网将包含 64/4=16个地址。
  3. 每一个子网的地址块是什么:
    • 对于每个子网,我们需要计算新的网络前缀。
    • 第一个子网的网络前缀是136.23.12.64/28。
    • 第二个子网的网络前缀是136.23.12.80/28。
    • 第三个子网的网络前缀是136.23.12.96/28。
    • 第四个子网的网络前缀是136.23.12.112/28。
  4. 每一个子网可分配给主机使用的最小地址和最大地址是什么:
    • 对于每个子网,最小地址是网络地址加1,最大地址是广播地址减1。

子网1:

可分配的最小地址:136.23.12.65

可分配的最大地址:136.23.12.78

子网2:

可分配的最小地址:136.23.12.81

可分配的最大地址:136.23.12.94

子网3:

可分配的最小地址:136.23.12.97

可分配的最大地址:136.23.12.110

子网4:

可分配的最小地址:136.23.12.113

可分配的最大地址:136.23.12.126

 

 

试把以下的IPv6地址用零压缩方法写成简洁形式:

(1)0000:0000:0F53:6382:AB00:67DB:BB27:7332

(2)0000:0000:0000:0000:0000:0000:004D:ABCD

(3)0000:0000:0000:AF36:7328:0000:87AA:0398

(4)2819:00AF:0000:0000:0000:0035:0CB2:B271

 

IPv6地址中的零压缩方法允许我们去除其中连续的零,以简化表示。下面是给定IPv6地址的简化形式:

  1. 0000:0000:0F53:6382:AB00:67DB:BB27:7332
    • 简化形式:::F53:6382:AB00:67DB:BB27:7332
  2. 0000:0000:0000:0000:0000:0000:004D:ABCD
    • 简化形式:::4D:ABCD
  3. 0000:0000:0000:AF36:7328:0000:87AA:0398
    • 简化形式:::AF36:7328:0:87AA:0398
  4. 2819:00AF:0000:0000:0000:0035:0CB2:B271
    • 简化形式:2819:AF::35:CB2:B271

在简化形式中,使用双冒号(::)表示一串连续的零。需要注意的是,双冒号只能在IPv6地址中使用一次,以避免歧义。

 

 

从IPv4过渡到IPv6的方法有那些?

IPv6是IPv4的下一代协议,设计的主要目标是解决IPv4地址空间枯竭的问题。IPv4到IPv6的过渡需要采取一些方法和策略,以确保网络能够平稳地过渡到新的协议。以下是一些主要的IPv4到IPv6过渡方法:

  1. 双协议栈(Dual Stack):
    • 在支持IPv6的设备上同时部署IPv4和IPv6协议栈,使得设备能够同时处理IPv4和IPv6的通信。这是一种平滑过渡的方法,但需要维护两种协议栈的运行。
  2. 隧道技术(Tunneling):
    • 通过在IPv4网络上创建IPv6隧道,将IPv6数据包封装在IPv4数据包中传输。这样,即使在IPv4基础设施中,IPv6数据也能够传输。6to4、Teredo和ISATAP是常见的IPv6隧道技术。
  3. IPv6-over-IPv4 MPLS隧道:
    • 使用Multiprotocol Label Switching(MPLS)技术建立IPv6-over-IPv4隧道,以实现IPv6的传输和路由。
  4. IPv6转换机制(Translation):
    • 实现IPv4到IPv6的转换,允许IPv6和IPv4之间的通信。NAT64和NAT46是两种常见的IPv6转换技术。
  5. IPv4地址转换为IPv6地址(IVI):
    • 使用IVI技术将IPv4地址映射到IPv6地址,以便在IPv6网络中支持IPv4设备的通信。
  6. IPv6就地升级:
    • 在网络中的每个设备逐步进行IPv6的部署和升级,使整个网络逐步过渡到IPv6。
  7. IPv6过渡策略(IPv6 Transition Mechanisms):
    • 包括一系列的过渡策略,如IPv6 Rapid Deployment(6rd)、IPv6 Transition Mechanism for DS-Lite(MAP-T)、IPv6 Transition Mechanism for Lightweight 4over6(MAP-E)、以及Dual-Stack Lite(DS-Lite)等,用于促进IPv6的部署和过渡。

这些方法可以根据网络的特定需求和条件进行选择和组合,以实现IPv4到IPv6的平滑过渡。在过渡期间,双协议栈和隧道技术是常见的用于支持IPv4和IPv6并存的方式。