4.3IPv6数据包结构
IPv6报文的整体结构分为IPv6报头 、扩展报头和上层协议数据3部分。IPv6报头是必选报文头部,长度固定为40B,包含该报文的基本信息;扩展报头是可选报头,可能存在0个、1个或多个,IPv6协议通过扩展报头实现各种丰富的功能;上层协议数据是该IPv6报文携带的上层数据,可能是ICMPv6报文、TCP报文、UDP报文或其他可能报文。
- 版本号
表示协议版本.值为6
- 流量等级
主要用于QoS
- 流标签
用来标识同一个流里面的报文
- 载荷长度
包含扩展报头和数据部分的长度,最多可表示65535字节数,超过则置为0
- 下一报头
该字段用来指明报头后接的报文头部的类型,若存在扩展头,表示第一个扩展头的类型,否则表示其上层协议的类型,它是IPv6各种功能的核心实现方法
- 跳数限制
该字段类似于IPv4中的TTL,每次转发跳数减一,该字段达到0时包将会被丢弃
- 源地址
标识该报文的来源地址
- 目的地址
标识该报文的目的地址
- 扩展报头:IPv6报文中不再有“选项”字段,而是通过“下一报头”字段配合IPv6扩展报头来实现选项的功能。使用扩展头时,将在IPv6报文下一报头字段表明首个扩展报头的类型,再根据该类型对扩展报头进行读取与处理。每个扩展报头同样包含下一报头字段,若接下来有其他扩展报头,即在该字段中继续标明接下来的扩展报头的类型,从而达到添加连续多个扩展报头的目的。在最后一个扩展报头的下一报头字段中,则标明该报文上层协议的类型,用以读取上层协议数据 。