高级计算机网络——相关习题答案及解析(辽宁大学任秀丽主讲)

目录

一、课后习题答案

1.8习题

1、IP 分组首部中的“TTL”字段和“协议”字段的作用是什么?

2、一个 UDP 用户数据报的数据部分为 4192B,UDP 用户数据报传送过程中经过以太网,以太网的最大传送单元(MTU)值为 1500B。网络层使用 IP 协议对 UDP 用户数据报进行封装,使用20B的IP 固定首部。试问IP 分组应该被划分成几个IP 分片?说明每一个IP分片的数据部分长度、分片偏移量的值以及 MF 比特的取值。

3、试说明 IP 地址与物理地址的区别 

4、IPv4 单播地址分为几类?各类网络的最大网络数目,以及每个网络中所能容纳的主机数分别是多少?

5、用“点分十进制”格式表示下面的二进制形式的 IPv4 地址:10000000 00001010 00000010 00011110

6、试说明以下 IP 地址的地址类型:10.20.30.40;172.16.26.36;202.101.244.101;126.1.0.200

7、一个A类网络和一个B类网络的子网号(subNet ID)分别为16位1和8位1。分别写出这两个网络的子网掩码。这两个子网掩码所代表的意义有什么不同?

8、若一个网络的子网掩码为 255.255255.248,则问每个子网能够连多少台主机?

9、一个网络中,设定的IP 地址范围是 172.88.32.1~172.88.63.254,试确定其合适的子网掩码。

10、给定的IP 地址为192,55.12,120,子网掩码为 255.255.255.240,那么子网号和主机号分别是多少?直接广播地址是多少?

11、若两台主机在同一个子网中,则两台主机的 IP 地址分别与它们的子网掩码进行“逻辑与”运算的结果是什么?

12、某单位分配到一个B类IP 地址,其子网号(subNet ID)为129.250.0.0。该单位有4000 台主机,均分布在 16 个不同的地点。请分析:

13、试说明下列特殊 IP 地址代表的含义

14、说明专用或私有 IP 地址的用途,并请列出专用或私有 IP 地址的地址范围

15、一台接入因特网的具有 N个物理接口的路由器至少应拥有多少个 IP 地址? 这些IP 地址的网络前缀一样吗? 为什么?

16、什么是路由聚合?

17、ARP 和 RARP 的功能分别是什么?

18、请解释“被路由的协议”和“路由协议”的含义。什么是内部网关协议和外部网关协议?RIP、OSPF 协议分别属于哪一类路由协议? BGP 路由协议呢?

19、什么情况下会产牛 ICMP 目的不可达报文?ICMP 回声请求/响应报文的作用是什么?ICMP 报文是如何封装的?

20、在计算ICMP、TCP、UDP 报文的校验和时为什么要加上伪首部? 如何利用伪首部计算校验和?

21、试述 TCP或 UDP 协议中端口的作用。

22、什么是套接字?说明它的组成部分及作用

23、在 TCP/IP 模型中,为什么要设置无连接的传输协议 UDP?

24、TCP 段首部中“源端口号”字段、“确认号”字段和“窗口大小”字段的作用分别是什么?请说明控制标志位 SYN、ACK 和 FIN 的作用。

25、在客户向服务器发送的请求报文中,源端口号和目的端口号是如何使用的?服务器向客户发送的响应报文中,又如何使用?试举出6 个熟知的 TCP 端口号

26、用图示的方法说明 TCP 连接建立的过程

27、什么是 URL? 其格式如何?

28、在 DNS 中,为什么在资源记录中包含“time to live”字段?

29、请说明在电子邮件系统中,SMTP 协议和 POP3 协议的作用

30、试说明 FTP 协议所使用的 20 号端口和 21 号端口的作用。

31、在因特网上浏览信息时,浏览器和 WWW 服务器之间传输 Web 网页时使用什么协议?

31、在因特网上浏览信息时,浏览器和 WWW 服务器之间传输 Web 网页时使用什么协议?

32、简要分析下列协议的功能,并说明它们在 TCP/IP 协议族中所处的位置,以及协议数据的封装关系:IP、ICMP、ARP、RARP、RIP、OSPF、BGP、TCP、UDP、DNS、SMTPPOP、FTP、TELNET.

33、现截获了3 个以太网 Frame#1 ~Frame #3,假设这些以太网顿通过了错误校验。用十六进制表示的帧内容如下

2.6习题

1、试分析 IPv4 存在的问题

2、请说明 IPv6 技术特点。

3、相对于 IPv4 地址,IPv6 地址不仅仅是空间的扩大。请说明 IPv6 地址编址技术

4、在IPv4 网络中,导致路由效率低的主要原因有哪些? IPv6 中针对这些问题,采取了怎样的措施?

3.6习题

1、关于 IPv6 地址,请回答如下问题

2、试比较任播、单播和多播

3、使用 C 语言编写 4 个函数,分别实现下列功能(1) 将 IPv6 的二进制地址格式表示形式转换为冒号一六进制表示形式 (2)将 IP4 地址转换为对应的 IPv6 兼容地址 (3)将 IPv4 地址转换为对应的 IPv6 映射地址 (4) 对于任意一个 IPv6 地址,显示该地址的所有可能的地址类型

4.11 习题

1、试比较 IPv4 分组首部和 IPv6 分组基本首部的特点

2、若IPv6 分组由基本首部和 TCP 报文段组成假设 TCP 报文段的总长度是 256B.试表示这个分组,并给出所能确定字段的值。

3、请分析 IPv6 分组的扩展首部与 IPv4 分组的选项的区别

4.请说明 IPv6 分组中“下一首部”字段的含义和作用。

5.RFC 2460 中都定义了哪些扩展首部?这些扩展首部在 IP6 分组中的出现顺序如何?

6、在设计新的 TLV 可选项时,需要考虑的设计思想是什么?

7、pad1 和 pad2 这两种填充选项分别在什么情况下使用?

8、举例说明包含0类型源路由扩展首部的 IPv6 分组传输过程中,IPv6 基本首部的目的地址字段和源路由扩展首部中的主要字段的变化过程,如表 4-3 所示

9、从源结点 A到目的结点 B传送一个 IP6 分组。为了使 IPv6 分组的传递按顺序经过R,R,R;R路由器,则需要使用一个 0类型的源路由选择扩展首部。在这个 IPv6 分组传送过程中,其基本首部和 0类型源路由选择扩展首部的值会有所变化。请完成下列表格,把相关字段的值填写到表格中的空白单元中

10、IPv6 分片机制有什么优点?与IPv4 分片机制有什么不同? 若需要对一个 IPv6 分组进行分片时,哪些部分是可以分片的?

11、假设一个有效载荷为 4349B 的原IPV6 分组,需要从结点A 传送到结点 B。已经探测到从A到B的路由MTU,即PMTU为1500B。所以源结点A 必须对这个IPv6 分组进行分片处理。请问需要分几个分片?并且根据各分片情况填写表 4-4 中的空白单元

5.7 习题

1、无状态地址自动配置的目的是什么?

2、请列出当路由器通告一个网络前缀时,路由器通告报文所携带的主要信息

3、什么是重复地址探测(DAD),为什么要进行DAD?

4、请填写表 5-8,给出每个 NDP 机制使用的多播地址类型。

6、假设结点 A 和 B在同一条以太网链路上,都支持 IP6 协议机制。结点 A的本地站点地址为 FEC0:2:0:0:2:A,链路层地址为 00-50-3E-E4-4C-00;结点B 的本地站点地址为FEC0::2:0:0:2:B,链路层地址为 00-50-3E-E4-4B-01。请描述结点 A 解析结点 B的 MAC地址的工作过程。

6.5习题

1、试比较双协议栈、隧道、网络地址和协议转换这 3 种技术的特点

7.13 习题

1、要实现 IP 多播功能,需要解决哪些问题?

2、为什么使用单播和广播方式实现多播功能都没有使用 IP 多播技术的效率高?

4、请描述 IP 多播的特点

5、请说明 IP 多播的主要应用

6、IP4 使用D类IP地址表示多播组。请说明 224.0.0.0~224.0.0.255、224,.0.1.0~238.255.255.255 和 239.0.0.0~239.255.255.255这3D类P 地址空间的特点

7、多播组作用域使用哪些技术进行控制?

8、给出 D类IP 多播地址的表示范围。IP 多播如何将 D类IP 多播地址映射为以太网多播地址?若一个IP 多播地址为 226.24,60.9,其对应的以太网物理地址是什么?

9、IP 多播组具有哪些特点?(课堂练习)

8.6 习题

1、以太网上的路由器收到多播 IP 分组,其 GroupID 为 226.17.18.4。当主机检查其多播组表时找到了这个地址。

2、IGMP 为什么要采用报告抑制功能? 另外,请说明IGMPv2 的组成员离开多播组的过程。

3、请说明 IGMP 协议在 TCP/IP 协议栈中所处的位置,并给出 IGMP 报文格式IGMP 报文中的最大响应时间的作用是什么?

4、说明 IGMP 报文是如何封装在 IP 分组中的,并说明封装 ICMP 报文的IP 分组首部关键字段(e.g.协议字段、TTL字段、目的 IP 地址)的值。

5、请说明在IGMPv2 中选举查询路由器的机制。(课堂练习)

6、IPv4 使用ARP 相比,IPv6 使用 NDP 具有哪些优势?

9.15 习题

1.什么是多播转发树?多播路由协议分为哪些类型? 多播路由协议 DVMRPMOSPF、CBT、PIM-DM 和 PM-SM 分别属于哪一种路由协议?

2,请说明二元组(S,G)与二元组( *,G)的区别。

8、请说明多播源发现协议 MSDP 的作用,并描述 MSDP 的工作过程

9、试比较 MBGP 与 BGP 协议。

10、请说明 IPv6 多播技术的新特性

二、课堂练习及期末复习

2.1 上课常问问题

2.2 期末考试题型以及分值

三、参考


一、课后习题答案

1.8习题

1、IP 分组首部中的“TTL”字段和“协议”字段的作用是什么?

TTL是 time to live的缩写,中文可以译为“生存时间”,这个生存时间是由源主机设置初始值但不是存的具体时间,而是存储了一个ip数据报可以经过的最大路由数,每经 过一个处理他的路由器此值就减1,当此值为0则数据报将被丢弃,同时发送ICMP报文通知源主机。

协议:IPV4首部中的协议字段用于通知目标系统应将该IP分组的数据部分交付给哪一个运输层协议或是哪一个直接使用IP通信的进程。在IP数据报传送的路径上的所有路由器都不需要这一字段的信息,只有目的主机才需要该“协议”字段。

2、一个 UDP 用户数据报的数据部分为 4192B,UDP 用户数据报传送过程中经过以太网,以太网的最大传送单元(MTU)值为 1500B。网络层使用 IP 协议对 UDP 用户数据报进行封装,使用20B的IP 固定首部。试问IP 分组应该被划分成几个IP 分片?说明每一个IP分片的数据部分长度、分片偏移量的值以及 MF 比特的取值。

3、试说明 IP 地址与物理地址的区别 

IP 地址( Internet Protocol Address ) 用于确定因特网上的每台主机,它是每台主机唯一性的标识。联网设备用物理地址标识自己,例如网卡地址。TCP/ IP 用 IP 地址来标识源地址和目标地址,但源和目标主机却位于某个网络中,故源地址和目标地址都由网络号和主机号组成, 但这种标号只是一种逻辑编号, 而不是路由器和计算机网卡的物理地址。 对于一台计算 机而言, IP地址基于逻辑,比较灵活,不受硬件限制,也容易记忆;MAC地址在一定程度上与硬件一致,基于物理,能够标识具体;IP 地址是可变的,而物理地址是固定的。

物理地址即硬件地址, 由 48bit 构成, 是接入网络设备的唯一标识, 在数据传输中封装在数据链路层的数据 帧的首部。 IP 地址由 32bit 组成,是逻辑地址,在 IP 协议的通信中,被封装在 IP 数据报的首部。由于 IP 地址 可以设置到相应的网络设备中,根据 IP 地址的结构,可以很方便的在互连网中进行寻址和路由,并转换为相应的硬件地址,在通信中两种地址工作在协议的不同层次。所以,需要使用这两种地址。

4、IPv4 单播地址分为几类?各类网络的最大网络数目,以及每个网络中所能容纳的主机数分别是多少?

分为:A类 B类 C类
A类 126个网络 每个网络可以有16,777,214个主机
B类 16,384个网络 每个网络可以有65,534个主机
C类 2,097,152个网络,每个网络可以有254个主机。

5、用“点分十进制”格式表示下面的二进制形式的 IPv4 地址:10000000 00001010 00000010 00011110

6、试说明以下 IP 地址的地址类型:10.20.30.40;172.16.26.36;202.101.244.101;126.1.0.200

7、一个A类网络和一个B类网络的子网号(subNet ID)分别为16位1和8位1。分别写出这两个网络的子网掩码。这两个子网掩码所代表的意义有什么不同?

8、若一个网络的子网掩码为 255.255255.248,则问每个子网能够连多少台主机?

9、一个网络中,设定的IP 地址范围是 172.88.32.1~172.88.63.254,试确定其合适的子网掩码。

10、给定的IP 地址为192,55.12,120,子网掩码为 255.255.255.240,那么子网号和主机号分别是多少?直接广播地址是多少?


11、若两台主机在同一个子网中,则两台主机的 IP 地址分别与它们的子网掩码进行“逻辑与”运算的结果是什么?

与子网与了以后,可以得出网络ID。例如:IP:192.168.0.1子网掩码:255.255.255.0两个地址一与,得出192.168.0.0 即该网段的网络ID(Network ID)。也就是说,192.168.0.1~192.168.0.255 这个范围内的IP地址之间都可以互相通讯。都在同一个网段中。那么192.168.0.1与255.255.255.0与后为什么得出一个192.168.0.0呢?将他们转换成二进制后就知道为什么了。我不去转换192.168.0.1了。只转换255.255.255.0 转换后为:11111111.11111111.11111111.00000000 我们知道,1与任何数与都还是那个数的值。而0与任何数与都是0。所以,255.255.255.0与192.168.0.1与后就会得出192.168.0.0了。


12、某单位分配到一个B类IP 地址,其子网号(subNet ID)为129.250.0.0。该单位有4000 台主机,均分布在 16 个不同的地点。请分析:

选用子网掩码为 255.255.255.0 是否合适?
如果合适,请给每一个地点分配一个子网号,并计算出每个子网中主机号的最小值和最大值。

若子网掩码选用 255.255.248.0,情况又如何?

13、试说明下列特殊 IP 地址代表的含义


0.0.0.0
255 255 255 255
127,0.0.1
202.196.73.0
202.196.73.255


14、说明专用或私有 IP 地址的用途,并请列出专用或私有 IP 地址的地址范围

15、一台接入因特网的具有 N个物理接口的路由器至少应拥有多少个 IP 地址? 这些IP 地址的网络前缀一样吗? 为什么?


16、什么是路由聚合?

路由聚合(也叫汇总)是让路由选择协议能够用一个地址通告众多网络,旨在缩小路由器中路由选择表的规模,以节省内存,并缩短IP对路由选择表进行分析以找出前往远程网络的路径所需的时间。


17、ARP 和 RARP 的功能分别是什么?

ARP提供一种高效又便于维护的动态地址绑定机制,通信前发送方先广播一个特殊的分组,请求某个IP地址的主机响应,该主机应答时恢复自己的物理地址,发送方收到物理地址后就可以进行通信了。RARP功能与ARP相反,是根据网络硬件的物理地址,请求获得IP地址的协议。

18、请解释“被路由的协议”和“路由协议”的含义。什么是内部网关协议和外部网关协议?RIP、OSPF 协议分别属于哪一类路由协议? BGP 路由协议呢?

19、什么情况下会产牛 ICMP 目的不可达报文?ICMP 回声请求/响应报文的作用是什么?ICMP 报文是如何封装的?

20、在计算ICMP、TCP、UDP 报文的校验和时为什么要加上伪首部? 如何利用伪首部计算校验和?


21、试述 TCP或 UDP 协议中端口的作用。

端口号作用:由于大多数网络应用程序都在同一台机器上运行,计算机上必须能够确保目的地机器上的软件程序能从源地址机器处获得数据包,以及源计算机能收到正确的回复。这是通过使用 UDP 的“端口号”完成的。例如,如果一个工作站希望在工作站 128.1.123.1 上使用域名服务系统,它就会给数据包一个目的地址 128.1.123.1 ,并在 UDP 头插入目标端口号 53 。源端口号标识了请求域名服务的本地机的应用程序,同时需要将所有由目的站生成的响应包都指定到源主机的这个端口上。不管tcp还是udp,都含有网络服务必须的源端口和目的端口信息,以建立和实现网络传输服务。


22、什么是套接字?说明它的组成部分及作用

所谓套接字(Socket),就是对网络中不同主机上的应用进程之间进行双向通信的端点的抽象。一个套接字就是网络上进程通信的一端,提供了应用层进程利用网络协议交换数据的机制。

套接字包含三个信息:

  • IP地址
  • 端口号
  • 传输层协议

主要作用就是实现进程间通信网络编程。

23、在 TCP/IP 模型中,为什么要设置无连接的传输协议 UDP?

UDP 是一种面向非连接的协议,面向非连接指的是在正式通信前不必与对方先建立连接,不管对方状态就直接发送数据。至于对方是否可以接收到这些数据,UDP 协议无法控制,所以说 UDP 是一种不可靠的协议。许多应用只支持UDP,如:多媒体数据流,不产生任何额外的数据,即使知道有破坏的包也不进行重发。当强调传输性能而不是传输的完整性时,尤其是在一些实时性很强的应用场景中,如:音频和多媒体应用,网络游戏、视频会议等,UDP是最好的选择。


24、TCP 段首部中“源端口号”字段、“确认号”字段和“窗口大小”字段的作用分别是什么?请说明控制标志位 SYN、ACK 和 FIN 的作用。


25、在客户向服务器发送的请求报文中,源端口号和目的端口号是如何使用的?服务器向客户发送的响应报文中,又如何使用?试举出6 个熟知的 TCP 端口号

到手

26、用图示的方法说明 TCP 连接建立的过程

TCP建立连接时要传输三个数据包,俗称三次握手(Three-way Handshaking)。
使用 connect() 建立连接时,客户端和服务器端会相互发送三个数据包

客户端调用socket()函数创建套接字后,因为没有建立连接,所以套接字处于CLOSED状态;服务器端调用 listen() 函数后,套接字进入LISTEN状态,开始监听客户端请求。

这个时候,客户端开始发起请求:

1) 当客户端调用 connect() 函数后,TCP协议会组建一个数据包,并设置 SYN 标志位,表示该数据包是用来建立同步连接的。同时生成一个随机数字 1000,填充“序号(Seq)”字段,表示该数据包的序号。完成这些工作,开始向服务器端发送数据包,客户端就进入了SYN-SEND状态。

2) 服务器端收到数据包,检测到已经设置了 SYN 标志位,就知道这是客户端发来的建立连接的“请求包”。服务器端也会组建一个数据包,并设置 SYN 和 ACK 标志位,SYN 表示该数据包用来建立连接,ACK 用来确认收到了刚才客户端发送的数据包。

服务器生成一个随机数 2000,填充“序号(Seq)”字段。2000 和客户端数据包没有关系。

服务器将客户端数据包序号(1000)加1,得到1001,并用这个数字填充“确认号(Ack)”字段。

服务器将数据包发出,进入SYN-RECV状态。

3)客户端收到数据包,检测到已经设置了 SYN 和 ACK 标志位,就知道这是服务器发来的“确认包”。客户端会检测“确认号(Ack)”字段,看它的值是否为 1000+1,如果是就说明连接建立成功。

接下来,客户端会继续组建数据包,并设置 ACK 标志位,表示客户端正确接收了服务器发来的“确认包”。同时,将刚才服务器发来的数据包序号(2000)加1,得到 2001,并用这个数字来填充“确认号(Ack)”字段。

客户端将数据包发出,进入ESTABLISED状态,表示连接已经成功建立。

4)服务器端收到数据包,检测到已经设置了 ACK 标志位,就知道这是客户端发来的“确认包”。服务器会检测“确认号(Ack)”字段,看它的值是否为 2000+1,如果是就说明连接建立成功,服务器进入ESTABLISED状态。

至此,客户端和服务器都进入了ESTABLISED状态,连接建立成功,接下来就可以收发数据了。三次握手的关键是要确认对方收到了自己的数据包,这个目标就是通过“确认号(Ack)”字段实现的。计算机会记录下自己发送的数据包序号 Seq,待收到对方的数据包后,检测“确认号(Ack)”字段,看Ack = Seq + 1是否成立,如果成立说明对方正确收到了自己的数据包。

27、什么是 URL? 其格式如何?

 统一资源定位符(URL,英语Uniform Resource Locator的缩写),它的英文简称叫做URL。也被称为网页地址,是因特网上标准的资源的地址。url是用于完整地描述Internet上网页和其他资源的地址的一种标识方法,通常称之为URL地址。

URL的一般语法格式为:protocol :// hostname[:port] / path / [:parameters][?query]#fragment


28、在 DNS 中,为什么在资源记录中包含“time to live”字段?

29、请说明在电子邮件系统中,SMTP 协议和 POP3 协议的作用

30、试说明 FTP 协议所使用的 20 号端口和 21 号端口的作用。

31、在因特网上浏览信息时,浏览器和 WWW 服务器之间传输 Web 网页时使用什么协
议?

31、在因特网上浏览信息时,浏览器和 WWW 服务器之间传输 Web 网页时使用什么协
议?


32、简要分析下列协议的功能,并说明它们在 TCP/IP 协议族中所处的位置,以及协议数据的封装关系:IP、ICMP、ARP、RARP、RIP、OSPF、BGP、TCP、UDP、DNS、SMTPPOP、FTP、TELNET.


33、现截获了3 个以太网 Frame#1 ~Frame #3,假设这些以太网顿通过了错误校验。用十六进制表示的帧内容如下

做法和下面博客例题一样以太网帧、IP数据报的图解格式(包含相关例题讲解,一题足够)_Rebecca_yanhan的博客-CSDN博客

2.6习题

1、试分析 IPv4 存在的问题

(1)IPv4地址资源即将枯竭。IPv4地址结构不合理,造成地址分配浪费严重;用户数目迅猛增加,地址需求剧增;

(2)路由成为新的瓶颈。网络数目增加导致骨干路由器维护的路由表庞大;IPv4地址结构层次性差,选择路由时,查找路由表的时间长;IPv4分组首部长度可变,不利于硬件处理;分组独立选路,没有利用分组传送的相关性;路由器需要处理分片,分片增加了路由器的处理负担。

(3)缺乏服务质量QoS保证。实时性差;安全性差;缺少服务多样性;

2、请说明 IPv6 技术特点。

(1)IPV6地址长度为128比特,地址空间增大了2的96次方倍;

(2)灵活的IP报文头部格式。使用一系列固定格式的扩展头部取代了IPV4中可变长度的选项字段。IPV6中选项部分的出现方式也有所变化,使路由器可以简单路过选项而不做任何处理,加快了报文处理速度。IPV6简化了报文头部格式,字段只有7个,加快报文转发,提高了吞吐量。

(3)IPV6支持资源分配,IPV6分组取消了服务类型的字段,增加了流标识字段。

(4)提高安全性,提供两种网络安全机制。身份认证和隐私权是IPV6的关键特性。

(5)支持更多的服务类型,加入了对自动配置的支持。这是对DHCP协议的改进和扩展,使得网络(尤其是局域网)的管理更加方便和快捷。

(6)增强了路由选择,IPV6的多层次地址结构提供了更多的路由信息,有助于路由聚合,允许协议继续演变,增加新的功能,使之适应未来技术的发展。

3、相对于 IPv4 地址,IPv6 地址不仅仅是空间的扩大。请说明 IPv6 地址编址技术

IPv6的使用,不仅能解决网络地址资源数量的问题,而且也解决了多种接入设备连入互联网的障碍。

4、在IPv4 网络中,导致路由效率低的主要原因有哪些? IPv6 中针对这些问题,采取了怎样的措施?

导致路由效率低主要原因有:

(1)网络数目增加导致骨干路由器维护的路由表庞大;

(2)IPv4地址结构层次性差,选择路由时,查找路由表的时间长;

(3)IPv4分组首部长度可变,不利于硬件处理;

(4)分组独立选路,没有利用分组传送的相关性;

(5)路由器需要处理分片,分片增加了路由器的处理负担。

IPV6采取的措施:路由聚合、多重地址、无状态地址自动配置、重新编址

3.6习题

1、关于 IPv6 地址,请回答如下问题

(1)IPv6地址总长度为128比特,通常分为8组,每组16位,每组为4个十六进制数的形式,每组十六进制数间用冒号分隔。例如:FC00:0000:130F:0000:0000:09C0:876A:130B,这是IPv6地址的首选格式。

(2)3FFF:0000:0000:0000:A2B3:0000:0000:DC69

(3)0:0:0:0:0:0:CAC4:4910或者::CAC4:4910或者::202.196.73.16

解析:以上三种地址仅仅只是表示方式不同,兼容地址是将IPV4地址的前面补上96位0,然后再表示。(看教材65页)

(4)网络接口标示号:020D:87FF:FE04:6F30,(看教材72页)

(5)FF02::1,表示本链路范围内的所有节点多播地址,取代了ipv4中的直接广播地址和有限广播地址。

(6)FF02::1:FF04:6F30

解析:被请求结点多播地址的前缀是FF02::1:FF00:0/104,这104位前缀加上任播或单播地址的低24位(04:6F30),就形成了被请求结点多播地址FF02::1:FF04:6F30

(7)

1.首先是将16位值为FFFE(16进制)插入到48位以太网卡地址(MAC地址)的高24位(OUI)和低24位(扩展标识符)中间。

2.然后设定第一个字节的第7位为1,该位是全球管理(为1)/本地管理(为0)G/L(global/local)位。

(8)581E:1456:2314:ABCD::/64

(9)

IP地址格式IP地址或前缀的意义
::/128表示一个未指定的地址,
::1/128回环地址,相当于IPv4中的localhost(127.0.0.1)
::FFFF:202.196.73.4::FFFF:A.B.C.D是IPv4映射过来的IPv6地址,其中<A.B.C.D>表明IPv4地址,例如::FFFF:202.196.73.4,它是在不支持IPv6的网上用于表示IPv4节点。
::202.196.73.4::A.B.C.D兼容IPv4的IPv6地址,其中<A.B.C.D>表明IPv4地址:202.196.73.4。自动将IPv6包以隧道方式在IPv4网络中传送的IPv4/IPv6节点将使用这些地址。
FF02::1表示本链路范围内的所有节点多播地址,取代了ipv4中的直接广播地址和有限广播地址。
FF02::2FF02::2表示本地链路上的所有路由器节点的组播地址
FF02::1:FF01:000A被请求节点多播地址
FE80::/10每个网络接口的本地链路地址
FEC0::/10本地站点地址

2、试比较任播、单播和多播

单播(unicast): 是指封包在计算机网络的传输中,目的地址为单一目标的一种传输方式。它是现今网络应用最为广泛,通常所使用的网络协议或服务大多采用单播传输,例如一切基于TCP的协议。

组播(multicast): 也叫多播, 多点广播或群播。 指把信息同时传递给一组目的地址。它使用策略是最高效的,因为消息在每条网络链路上只需传递一次,而且只有在链路分叉的时候,消息才会被复制。

任播(anycast):是一种网络寻址和路由的策略,使得资料可以根据路由拓朴来决定送到“最近”或“最好”的目的地。

3、使用 C 语言编写 4 个函数,分别实现下列功能(1) 将 IPv6 的二进制地址格式表示形式转换为冒号一六进制表示形式 (2)将 IP4 地址转换为对应的 IPv6 兼容地址 (3)将 IPv4 地址转换为对应的 IPv6 映射地址 (4) 对于任意一个 IPv6 地址,显示该地址的所有可能的地址类型
 

由于笔者很久没有编写c语言程序,故使用python来编写一下四个程序

(1)

"""
将二进制ipv6地址转换为冒号十六进制表示的ipv6地址
"""
ipv6_2_address = input().split(':')
ipv6_16_address_list = []
for num in ipv6_2_address:
    b = hex(int(num)).lstrip('0').strip('x')
    if len(b) != 4:
        b = '0' * (4 - len(b)) + b
    ipv6_16_address_list.append(b)
ipv6_16_address = ":".join(ipv6_16_address_list)
print(ipv6_16_address)

(2)

"""
将ipv4地址转换为ipv6兼容地址
"""
ipv4_address = input().split('.')
ipv6_address_list = ['0', '0', '0', '0', '0', '0']
for num in ipv4_address:
    b = hex(int(num)).lstrip('0').strip('x')
    ipv6_address_list.append(b)
ipv6_compatible_address = ":".join(ipv6_address_list)
print(ipv6_compatible_address)

(3)

"""
将ipv4地址转换为ipv6映射地址
"""
ipv4_address = input().split('.')
ipv6_address = '0:0:0:0:0:FFFF:'
temp_list = []
for num in ipv4_address:
    b = hex(int(num)).lstrip('0').strip('x')
    if len(b) == 1:
        b = '0' + b
    temp_list.append(b)
ipv6_mapped_address = ipv6_address + temp_list[0] + temp_list[1] + ':' + temp_list[2] + temp_list[3]
print(ipv6_mapped_address)

4.11 习题

1、试比较 IPv4 分组首部和 IPv6 分组基本首部的特点

IPV4分组首部IPV6分组首部
字段个数和长度由12个固定长度的字段共20B 和若干选项构成只有8个字段40B 的固定首部长度
版本号版本号为4版本号为6
以太网传送IPV4/6分组时,以太网帧帧类型字段值十六进制数0x8000十六进制数0x86DD
字段的调整

1)删除:首部长度、服务类型、标识符、标志、分片偏移量和首部校验和这6个字段在IPV6中删除了,

2)修改:对总长度、协议类型和生存时间这3个字段的名称和部分功能进行了修改,对选项功能进行了全部修改。

3)新增:新增加了两个字段,即传输类别字段和流标识字段。

2、若IPv6 分组由基本首部和 TCP 报文段组成假设 TCP 报文段的总长度是 256B.
试表示这个分组,并给出所能确定字段的值。

版本号(4bit)6传输类别(8bit)流标识(20bit)
有效载荷长度(16bit)下一首部(8bit)6跳数极限(8bit)
源地址(128bit)
目的地址(128bit)
数据部分(256B)TCP报文段


3、请分析 IPv6 分组的扩展首部与 IPv4 分组的选项的区别

IPv4 首部中可以有一些选项,用来处理一些特殊情况。这些选项主要有指定源路由选项,路由记录选项,时间戳选项和安全选项。

IPv6 定义了若干种不同的扩展首部,它们由下一首部字段的值来标识。除 59 外,各扩展首部具有各自的首部字段,利用这种结构,IPv6 扩展首部可以像菊花链那样将扩展首部链接起来。IPv6 将原来 IPV4 首部中选项的功能都放在扩展首部中,并将扩展首部留给路径两端的源站和目的站的主机来处理。分组途中经过的路由器不处理这些扩展首部。



4.请说明 IPv6 分组中“下一首部”字段的含义和作用。

下一个首部占8位,它相当于IPv4的协议字段或可选字段,定义了紧跟在 IPv6 基本首部后面的扩展首部的数字标识号或数据部分的协议类型。

一般分为以下两种情况:

1)若IPv6 分组没有扩展首部,则下一首部字段的作用就相当于 IPv4 分组中没有协议字段。该字段的值说明数据部分的值应交付给哪一个协议进行处理。

2)若 IPv6 分组有扩展首部,则该字段用来说明紧跟在基本首部后第一个扩展首部的数字标识号,即是扩展首部类型。

5.RFC 2460 中都定义了哪些扩展首部?这些扩展首部在 IP6 分组中的出现顺序如何?

共六种,分别是:跳到跳选项首部、路由选择首部、分片首部、认证扩展首部、加密安全载荷首部、目的站选项首部。

顺序:

1)IPv6 基本首部

2)跳到跳选项扩展首部

3)目的选项扩展首部

4)路由选择扩展首部

5)分片扩展首部

6)认证扩展首部

7)封装安全载荷扩展首部 

8)目的选项扩展首部

9)上层协议首部


6、在设计新的 TLV 可选项时,需要考虑的设计思想是什么?

(1) 位于 TV 可选项数据字段中的各个多字节子字段(长度不为1的子字段),应该在分组的自然边界上对齐。即n字节字段应该放置在距离扩展首部的开始处n的整数倍字节偏移的位置上,其中 n=1,2,4或8.
(2) 在遵循扩展首部长度为 8 的整数倍字节的前提下,跳到跳扩展首部和目的选项扩展首部占有尽可能少的空间。
(3)当一个扩展首部需要携带 TV 可选项时,选项的数目应该尽可能少,通常限制为一个。

7、pad1 和 pad2 这两种填充选项分别在什么情况下使用?


8、举例说明包含0类型源路由扩展首部的 IPv6 分组传输过程中,IPv6 基本首部的目的地址字段和源路由扩展首部中的主要字段的变化过程,如表 4-3 所示

9、从源结点 A到目的结点 B传送一个 IP6 分组。为了使 IPv6 分组的传递按顺序经过R,R,R;R路由器,则需要使用一个 0类型的源路由选择扩展首部。在这个 IPv6 分组传送过程中,其基本首部和 0类型源路由选择扩展首部的值会有所变化。请完成下列表格,把相关字段的值填写到表格中的空白单元中


10、IPv6 分片机制有什么优点?与IPv4 分片机制有什么不同? 若需要对一个 IPv6 分组进行分片时,哪些部分是可以分片的?


11、假设一个有效载荷为 4349B 的原IPV6 分组,需要从结点A 传送到结点 B。已经探测到从A到B的路由MTU,即PMTU为1500B。所以源结点A 必须对这个IPv6 分组进行分片处理。请问需要分几个分片?并且根据各分片情况填写表 4-4 中的空白单元
 

5.7 习题

1、无状态地址自动配置的目的是什么?

允许本地链路上的节点,根据路由器在本地链路上通告的网络前缀,自己配置 IPv6 单播地址。可以在不需要 BOOTP 服务器和 DHCP 服务器的情况下,实现自动配置。支持即插即用。


2、请列出当路由器通告一个网络前缀时,路由器通告报文所携带的主要信息

1)前缀长度

2)L位,“在链路”标志位

3)A 位,“自治”地址配置标志

4)有效生存时间

5)推荐生存时间

6)保留字段

7)网络前缀


3、什么是重复地址探测(DAD),为什么要进行DAD?

DAD 是无状态地址自动配置和结点启动时所使用的一种机制。在结点使用无状态地址自动配置机制获得一个IPv6 单播地址之后,在这个地址正式使用之前,必须在本地链路上验证要使用的临时地址的唯一的,并且未被使用。

(1)链路上的结点IP 地址不全是无状态地址配置的,有可能会有有状态地址配置的结点存在,所以地址可能会重复。
(2)子网前缀很长,后面加的 MAC 地址不需要 48 位时,而只需获取 MAC地址的一部分(如只截取了产品序列号),可能会发生重复地址,这种情况很少发生。

4、请填写表 5-8,给出每个 NDP 机制使用的多播地址类型。

6、假设结点 A 和 B在同一条以太网链路上,都支持 IP6 协议机制。结点 A的本地站点地址为 FEC0:2:0:0:2:A,链路层地址为 00-50-3E-E4-4C-00;结点B 的本地站点地址为FEC0::2:0:0:2:B,链路层地址为 00-50-3E-E4-4B-01。请描述结点 A 解析结点 B的 MAC地址的工作过程。

6.5习题


1、试比较双协议栈、隧道、网络地址和协议转换这 3 种技术的特点

1)双协议栈:双协议栈主机与IPv4主机通信使用IPv4地址,与IPv6主机通信使用IPv6地址

2)隧道:不用把所有协议升级为双协议栈,只要求IPv4/IPv6网络的边缘设备实现双协议栈和隧道功能。

3)协议转换:不需要双协议栈和隧道支持。

7.13 习题

1、要实现 IP 多播功能,需要解决哪些问题?

1)需要有唯一一个标识多播组的机制
2)需要有多播组成员加入或退出多播组机制
3)需要一个能够使路由器在IP 网络上高效传送多播分组到各组成员的路由器协议


2、为什么使用单播和广播方式实现多播功能都没有使用 IP 多播技术的效率高?

(1) 在重复单播技术实现多播功能。由于源主机要为每个组成员复制到一个数据分组,这样加重源主机的负担。并且很可能出现多个不同的分组,沿相同路径传输,浪费网络带宽。尤其是当组内成员较多时,将导致网络效率下降。

(2)用广播实现多播,非组成员主机必须通过上层应用协议,对不需要的分组进行过滤丢弃,会增加接收主机的负担。广播会浪费网络带宽,不会将 P 分组广播到另一个网络中。


4、请描述 IP 多播的特点

1)多播组地址。每个多播组拥有唯一多播地址。

2)多播组的数量。最多可以定义 228 个多播组的地址。

3)动态多播组成员关系。主机可以随时加入或离开组。一个主机可以是任意数目的多播组的成员。

4)硬件的使用。如物理硬件支持多播,则用硬件多播发送IP 多播如果硬件不支持多播,则用广播或单播来实现 IP 多播。

5)网络间的转发。多播组成员能与多个物理网络相连接,所以需要有特殊的多播路由器转发 IP 多播分组

6)传递语义。IP 多播使用由 IP 提供的尽力而为服务。多播分组可能会丢失、延迟、重复以及乱序到达。

7)成员关系和传输。任意主机(包括非多播组成员)能够向任何多播组发送分组:组关系仅用于确定该主机是否能接收发往该多播组的分组。


5、请说明 IP 多播的主要应用

1)信息发布 2)视频会议 3)远程学习 4)内部资源共享


6、IP4 使用D类IP地址表示多播组。请说明 224.0.0.0~224.0.0.255、224,.0.1.0~238.255.255.255 和 239.0.0.0~239.255.255.255这3D类P 地址空间的特点

1)224.0.0.0~224.0.0.255: IANA 预留地址,224.0.0.0 保留不分配,其他地址供路由协议及拓扑查找和维护协议使用,该范围内的地址属于局部范畴,不论 TTL 多少都不会被路由器转发

2)224.0.1.0~238.255.255.255:这些地址为用户多播地址,全国范围内有效,其中 233/18 为 GLOP地址。
3)239.0.0.0~239.255.255.255:本地管理组播地址,仅在特定本地范围内有效
 

7、多播组作用域使用哪些技术进行控制?

1)依靠IP 分组的生存时间 TTL 字段控制范围

2)控制作用域的技术称为确定管理范围



8、给出 D类IP 多播地址的表示范围。IP 多播如何将 D类IP 多播地址映射为以太网多播地址?若一个IP 多播地址为 226.24,60.9,其对应的以太网物理地址是什么?

1)表示范围 224.0.0.0~239.255.255.255

2)以太网的前 25 位是固定的 0000 0001 0000 0000 0101 1110 0,再将多播组地址中低23 位复制到以太网卡多播地址中的后 23 位

3)01-00-5E-18-3C-09


9、IP 多播组具有哪些特点?(课堂练习)


1)一个多播组可以跨越多个网络
2)多播组对主机的数量没有限制。
3)主机可随时加入或者离开某个多播组.
4)一台主机可以同时属于多个多播组。
5)非成员主机可向任何多播组发送IP 多播分组。
6)IP 多播路由器从一个网络到另一个网络,向其目的节点转发  多播分组。
 

8.6 习题


1、以太网上的路由器收到多播 IP 分组,其 GroupID 为 226.17.18.4。当主机检查其多播组表时找到了这个地址。

请回答下列问题
第8章 因特网组管理协议 IGMP
(1) 试说明路由器怎样将这个 IP 分组封装成以太网,并将它发送给各接收结点?试给出这个以太网倾的所有字段的值。
(2) 该路由器转发接口的IP 地址是 185.22.5.6,而对应的物理地址为 4A:22:45:12.
E1:E2。这个路由器需要 ARP 的服务吗?
(3) 若路由器在它的组表中找不到 GroupID 时会怎么样?


2、IGMP 为什么要采用报告抑制功能? 另外,请说明IGMPv2 的组成员离开多播组的过程。

为了改善IGMP 协议的效率,避免不必要的通信量。利用报告响应抑制功能,可以避免发送同一个成员关系报告报文给路由器,有助于减少IGMP 报文数量。
 

离开过程:
(1) 要离开的主机发送一个离开组报文给网络上的所有路由器(目的地址为 224.0.0.2)

(2)查询路由器接收到离开组报文后,立即发送一个特定多播组查询报文到网络上

(3)如果网络上还有该多播组成员,则会发回个响应报文: 如果没有该多播组的成员,则不会有主机响应,于是路由器就知道已经没有该组成员了,就停止转发该组的数据
 

3、请说明 IGMP 协议在 TCP/IP 协议栈中所处的位置,并给出 IGMP 报文格式IGMP 报文中的最大响应时间的作用是什么?

最大响应时间用来指定对查询报文进行响应的最大等待时间,通过该值,路由器可以调节多播组成员的离开延迟。


4、说明 IGMP 报文是如何封装在 IP 分组中的,并说明封装 ICMP 报文的IP 分组首部关键字段(e.g.协议字段、TTL字段、目的 IP 地址)的值。

IGMP 报文的封装=IP 分组首部+IGMP 报文

1)协议字段:其值为 2,用来说明 IP 分组中封装的是IGMP

2)TTL 字段:其值为 1,表示GMP 报文只能在本网络内传送

3)目的 IP 地址字段:其值随报文类型不用而不同,如果 成员关系查询报文,则目的地址是224.0.0.1,表示这个网络上的所有结点,所有主机和路由器都将受到这个报文 /如果是 成员关系报文,则目的 P 地址应该是多播路由器的地址/如果是 离开组报文,则目的地址应该是 224.0.0.2,表示这个网络上所有的路由器。

5、请说明在IGMPv2 中选举查询路由器的机制。(课堂练习)

IGMPv2 使用IP 地址和一般成员关系查询报文选举查询路由器,其过程如下:

(1) 网络上的每个路由器都假定自己就是查询路由器。路由器启动时,给所有结点(目的地址为 224.0.0.1) 发送一个一般成员关系查询报文;

(2) 每个路由器用自己的 P 地址与封装一般查询报文的 P 分组的源P 地址进行比较,具有最小 IP 地址的路由器就被选举为查询路由器;

(3)所有非查询路由器启动一个查询者计时器,接收到查询路由器的一般查询报文,就将计时器复位。如果计时器超时,就认为当选的查询路由器发生故障,转步骤(1) ,重新开始选举。计时器的取值一般为查询间隔的 2 倍。

6、IPv4 使用ARP 相比,IPv6 使用 NDP 具有哪些优势?

IPv6 使用NDP 比IPV4 使用ARP 效率高

1)在 IPv6 中,只有关心这个机制的邻结点,才会在它们的协议栈中处理邻结点请求和通告报文。在IPv4 中,ARP 使用广播报文发现一个结点的链路层地址。ARP 广播使得本地链路上的所有结点都把 ARP 广播报文发送给 IPV4 协议栈。

2)在 IPv6 中,结点间执行完邻结点请求和邻结点通告报文后,互相知道了对方的链路层地址,将链路层地址存放在邻结点探测表中。而IPV4 需要两个 ARP 报文,才能得到相同的结果,

3)在IPv6 中,邻结点探测协议 NDP 运行在网络层,与物理网络无关,任何物理网络都可以运行相同的邻结点探测协议。 而IPV4 的 ARP 运行在数据链路层,不同的物理网络需要有不同的 ARP 协议。
 

9.15 习题


1.什么是多播转发树?多播路由协议分为哪些类型? 多播路由协议 DVMRPMOSPF、CBT、PIM-DM 和 PM-SM 分别属于哪一种路由协议?

1. 多播转发树(multicast distribution tree)是用于多播数据转发的树形网络结构。多播路由协议可以分为:- 基于距离向量的多播路由协议(distance-vector multicast routing protocol):如DVMRP
- 基于链路状态的多播路由协议(link-state multicast routing protocol):如MOSPF
- 基于核心的多播路由协议(core-based multicast routing protocol):如CBT、PIM-DM、PIM-SM2. 多播路由协议DVMRP和MOSPF属于基于距离向量和链路状态的多播路由协议,CBT、PIM-DM和PIM-SM属于基于核心的多播路由协议。- DVMRP:基于RIP路由协议修改的,采用基于递减度的阈值来构建多播分发树,属于基于距离向量的多播路由协议。
- MOSPF:基于OSPF路由协议修改的,构建基于最小成本的多播分发树,属于基于链路状态的多播路由协议。
- CBT:以多播会话的第一个数据发起点为核心,向该核心汇聚组成分发树,属于基于核心的多播路由协议。
- PIM-DM:以多播数据接收方向上游方向的邻居作为上游节点构建分发树,属于基于核心的多播路由协议。 
- PIM-SM:以候选BGP路由为基础构建分发树,属于基于核心的多播路由协议。

2,请说明二元组(S,G)与二元组( *,G)的区别。


(S,G):- S表示特定的多播数据源,G表示多播组地址。
- (S,G)表示从源S发送到组G的数据流。
- 源S是一个unicast地址,表示单一的多播源。
- 路由器会为每个(S,G)条目维护一棵单独的分发树。

( *,G):- *表示任意源,G表示多播组地址。
- ( *,G)表示从任何源发送到组G的数据流。
- *不是一个实际的源地址,它匹配所有未指定源的多播数据包。
- 路由器会为每个( *,G)条目维护一棵单独的分发树。
- ( *,G)分发树通常用于MBONE中那些没有明确源的多播应用,如MBONE会议中的音频和视频数据流。

8、请说明多播源发现协议 MSDP 的作用,并描述 MSDP 的工作过程


9、试比较 MBGP 与 BGP 协议。


10、请说明 IPv6 多播技术的新特性
 

二、课堂练习及期末复习

2.1 上课常问问题

1、TTL是什么?

生存时间

2、站点是什么?

网络

3、RFC是什么?

请求评议

4、Qos是什么

服务质量(quality of service,QoS)

5、IP多播的单个基本条件

1)有唯一一个标识多播组机制

2)有多播组成员加入或者退出的多播组机制

3)有一个能够使路由器在ip网络上高效传送多播分组到各个组成员的路由器协议

6、IPV6用什么代替ARP?

NDP:邻节点探测协议

7、BGP是什么? BGMP?

边际网关协议,BGMP:边界网关多播协议

8、链路是什么?

网络

9、什么是协议?什么是算法?

10、多播转发树有几种?

基于源的树(SBT)又叫做最短路径树,共享树(ST)

11、RPF:逆向路径转发、RPB:逆向路径广播、RPM、DVMRP:距离向量多播路由协议

12、两跳之间使用的是什么设备?

路由器

13、域:AS是自制域

14、loopback:回环

15、有几种多播路由算法?

多播路由算法就是用来建立一棵性能良好的多播树,并使得它满足各种业务的服务质量(quality of service,QoS)需求。最短路径算法、最小生成树算法、Steiner 树算法
 

16、RIP:路由信息协议、TRPB:截尾逆向路径广播

17、基于数据驱动的多播树构造:MOSPF多播开放最短路径优先
、DVMRP

基于接收者驱动多播树构造:CBT

18、汇聚点相关协议:CBT基于核心树的多播协议、PIM- SM、

19、PIM- DM:密集模式协议无关多播、PIM-SM:稀疏模式协议无关多播

20、Steiner 树与最小生成树的区别?

最小生成树必须包括网络中的全部结点,而 Steiner 树问题只需要求出连接网络中部分结点(多播组成员)的费用最小的多播树。
 

2.2 期末考试题型以及分值

合计:100分

缩写10个——10分

简答10个——50分

大题4个——40分

三、参考

通过百度网盘分享的文件:参考图书pdf
链接:https://pan.baidu.com/s/1arFzJQvTPBOWPz4nJj_Fhg 
提取码:PBrR 
复制这段内容打开「百度网盘APP 即可获取」

  • 7
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Rebecca.Yan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值