IPv6实战(二)—— IPv6 Header详解

1. IPv6包头格式

IPv6实战(二)—— IPv6 Header详解

  • 基本的IPv4报头包含12个字段,20个字节长。options和padding字段在需要时添加

  • 基本的IPv6报头40个8位bit,即40个字节长,共8个字段

IPv6数据包由一个基本报头加上0个或多个扩展报头再加上上层协议单元构成

包头字段转变及含义:

Version:与IPv4的报文格式相同,4代表IPv4,6代表IPv6

ToS --> Traffic Class:流量区分,与IPv4的服务类型类似

Total Len --> Payload Length:载荷长度

TTL --> Hop Limit:跳数限制,类似IPv4的TTL字段。定义了IP数据包所能经过的最大跳数。

Protocol --> Next Header:下一个报文头,定义了紧跟在IPv6报头后面的第一个扩展报头(如果存在)的类型,或者上层协议数据单元中的协议类型

Flow Label:流标签,标识IPv6流,用于QoS

Source Address:源IP地址,128bits

Destination Address:目的IP地址,128bits

Extension Headers:扩展报文头信息

相比较IPv4的报文格式,IPv6的报文格式比较简单,根本原因是IPv6报文格式中引入了IPv6扩展报文头的概念。

2. IPv6包头的改进

  • 取消了IP的的校验

    第二层和第四层的校验已经足够健壮了,因此IPv6直接取消了IP的三层校验

  • 取消中间节点的分片功能

    分片重组功能由源目端自己进行,通过PMTU机制来发现路径MTU

  • 定义最长的IPv6报头

    有利于硬件的快速处理,中间节点可以避免处理而节省大量的资源

  • 安全选项的支持

    IPv6提供了对Ipsec的完美支持,如此上层去协议可以省去许多安全选项,如OSPFv3就取消了认证

  • 增加流标签

    提高QoS效率

3. IPv6分组包头及扩展包头

IPv6实战(二)—— IPv6 Header详解

IPv6扩展报文头的引入简化了IPv6基本报文头的格式,一个IPv6报文中可以包含0个及以上扩展报文头。当需要有多个IPv6扩展报文头的时候,IPv6的基本报文头的Next Header字段将会指明下一个扩展报文头的类型,IPv6扩展报文头的Next Header字段将会指明下一个扩展报文头的类型,以此类推,如果后续没有IPv6扩展报文头,那么此字段将指明上层协议类型。

IPv6的扩展报文头及顺序(RFC2460)如下:

1.基本IPv6报头

2.逐跳选项扩展报头

3.目的选项扩展报头

4.路由扩展报头

5.分片扩展报头

6.认证扩展报头、封装安全有效载荷扩展报头

7.上层协议数据报头

此外,值得注意的是:

  • 扩展包头大部分情况下只有目标节点查看,其它节点不查看和处理大部分扩展报头

  • 扩展报文的出现顺序也必须为上面所列出的顺序一样。

有了扩展包头,中间路由器就不需要处理每一个可能出现的选项,提高了路由器处理数据包的速度,提高了其转发性能。在扩展报头链的最后就是有效负载。扩展报头可选,只有需要该扩展报头对应的功能,发送主机才会添加相应扩展报头。

IPv6实战(二)—— IPv6 Header详解

  • 逐跳选项报头 Hop-by——Hop Options Header(协议0)

    传送路径上每个路由器都要处理,用于巨型数据包和路由器警报。如RSVP资源预留协议

  • 目标选项报头 Destination Options Header(协议60)

    该包头承载特别针对数据包目的地的可选信息,例如用在移动节点和家乡代理之间交换注册信息,即使移动节点改变了连接点,仍允许它保持永久的IP地址

  • 路由包头 Routing Header(协议63)

    在数据包发往目的地的途中,该包头能够被IPv6源节点用来强制数据包经过特定的路由器,当路由器类型字段为0时,在路由包头中可以指定中间路由器列表,这个功能类似IPv4中的松散源路由选项

  • 分段报头 Fragment Header(协议44)

    在IPv6中,建议所有的节点使用PMTUD机制来发现链路的MTU,这样就不需要对数据进行分段了,但是如果IPv6节点不支持PMTUD,但又必须发送比路径MTU还大的数据包时,就不得不分段了,这时候需要使用分段包头,节点将数据分段,使用分段包头发送每个分段。

  • 认证报头 Authentication Header、封装安全有效载荷报头 Encapsulating Security Payload Header(协议51)

    AH头,ESP头

  • 上层报头

    主要为TCP、UDP、ICMPv6等

anzhihe安志合个人博客,版权所有丨 如未注明,均为原创 丨转载请注明转自:https://chegva.com/3298.html | ☆★★每天进步一点点,加油!★★☆

您可能还感兴趣的文章!

发表评论

电子邮件地址不会被公开。 必填项已用*标注