IPv6数据包格式
IPv6数据包格式中的变化
????????IPv6中引入的最重要的数据变化显示在其数据报格式中
扩大的地址容量
????????IPv6将IP地址长度从32比特增加到128比特。这就确保全世界将不会用尽IP地址。除了单播与多播地址以外,IPv6还引入了一种称为任播地址(anycast address)的新型地址,这种地址可以使用数据报交付给一组主机中的任意一个。
简化高效的40字节首部
????????许多IPv4字段已经被舍弃或者作为可选项。因而所形成的40字节定长首部允许路由器更快地处理IP数据报。一种新的选项编码允许进行更灵活的选项处理。
流标签
????????IPv6有一个难以捉摸的流(flow)定义。该字段可用于给属于特殊流的分组加上标签,这些特殊流是发送方要求进行特殊处理的流,如一种非默认服务质量或需要实时服务的流。如音频与视频传输。另一方面,更为传统的应用就不可能当作流。由高优先权用户承载的流量也有可能被当作一个流。
IPv6数据报格式说明
版本
? ? ? ? 该4比特字段用于标识IP版本号。IPv6将该字段设为6。注意到将该字段值设置为4并不能创建一个合法的IPv4数据报。
流量类型
????????该8比特字段与我们在IPv4中看到的TOS字段的含义相似。
流标签
????????该20比特的字段用于标识一条数据报的流,能够对一条流中的某些数据报给出优先权,或者它能够用来对来自某些应用的数据报给出更高的优先权,以优于来自其他应用的数据报。
有效载荷长度
????????该16比特值作为一个无符号整数,给出了IPv6数据报中跟在定长的40字节数据报首部后面的字节数量。
下一个首部
????????该字段标识数据报中的内容(数据字段)需要交付给哪些个协议(如TCP或UDP)。该字段使用与IPv4首部中协议字段相同的值。
跳限制
????????转发数据报的每台路由器将对该字段的内容减一。如果跳限制计数达到0,则该数据包将被丢弃。
源地址和目的地址
????????IPv6 128比特地址的各种格式在RFC 4291中进行描述
数据
????????这是IPv6数据报的有效载荷部分。当数据报到达目的地时,该有效载荷就从IP数据报中移除,并交给在下一个首部字段中指定的协议处理。
IPv4使用IPv6弃用的字段
分片/重新组装?
????????IPv6不允许在中间路由器上进行分片与重新组装。这种操作只能在源与目的地执行。如果路由器收到的IPv6数据报因太大而不能转发到出链路上的话,则路由器只需丢掉该数据报,并向发送方发回一个分组太大的ICMP差错报文即可。于是发送方能够使用较小长度的IP数据报重新发送数据。分片与重新组装是一个耗时的操作,将该功能从路由器中删除并放到端系统中,大大加快了网络中的IP转发速度。
首部校验和
????????因为因特网层中的运输层和数据链路层协议执行了校验操作,所以IPv6去除了校验
选项
????????选项字段不再是标准IP首部的一部分了。但是它并未消失,而是可能出现在IPv6首部中由下一个首部指出的位置上。
|