IPv6(互联网协议第六版Internet Protocol Version 6),是IETF(互联网工程任务组,Internet Engineering Task Force)设计的用于替代现行版本IP协议(IPv4)的下一代IP协议。
IPv6网络的提出最初是为了扩大IP地址空间。实际上,IPv4除了在地址空间方面有很大的局限性,成为互联网发展的煨大障碍外,IPv4在服务质量.传送速度.安全性、支持移动性和多播等方面也存在着局限性,这些局限性同样妨碍着互联网的进一步发展。使许多服务与应用难以在互联网上开展。因此,在IPv6的设计过程中,除了一劳永逸地解决了地址短缺问题以外,还考虑了在ipv4中解决不好的其他问题。IPv6相对于IPv4的主要优势是:扩大了地址空间,提高了网络的整体吞吐量,服务质量得到很大改善,安全性有了更好的保证。
◆ IPV6地址长度为128位,地址空间增大了2的96次方倍;
◆ 灵活的IP报文头部格式。使用一系列固定格式的扩展头部取代了IPV4中可变长度的选项字段。IPV6中选项部分的出现方式也有所变化,使路由器可以简单路过选项而不做任何处理,加快了报文处理速度;
◆ IPV6简化了报文头部格式,字段只有8个,加快报文转发,提高了吞吐量;
◆ 提高安全性。身份认证和隐私权是IPV6的关键特性;
◆ 支持更多的服务类型;
◆ 允许协议继续演变,增加新的功能,使之适应未来技术的发展。
IPv6的数据报格式如下:
IPv6 将首部长度变为固定的 40字节,称为基本首部(baseheader)。将不必要的功能取消了,首部的字段数减少到只有8个。取消了首部的检验和字段,加快了路由器处理数据报的速度。在基本首部的后面允许有零个或多个扩展首部。所有的扩展首部和数据合起来叫做数据报的有效载荷(payload)或净负荷。
IPv6 将原来 IPv4 首部中选项的功能都放在扩展首部中,并将扩展首部留给路径两端的源站和目的站的主机来处理。数据报途中经过的路由器都不处理这些扩展首部(只有一个首部例外,即逐跳选项扩展首部)。这样就大大提高了路由器的处理效率。在[RFC 2460]中定义了六种扩展首部:逐跳选项、路由选择、分片、鉴别、封装安全有效载荷和目的站选项。
参考文献:
1、C Perkins.Mobility Support in IPv6.Rfc, 2003, 25(2):382-388
2、马严,赵晓宇.IPv4向IPv6过渡技术综述.北京邮电大学学报, 2002, 25(4):1-5
IPv6的地址长度是128位。将这128位的地址按每16位划分为一个段,将每个段转换成十六进制数字,并用冒号隔开就是IPv6的地址格式。例如:2000:0000:0000:0000:0001:2345:6789:abcd,这个地址很长,可以用两种方法对这个地址进行压缩:
1、前导零压缩法:将每一段的前导零省略,但是每一段都至少应该有一个数字。
例如:2000:0:0:0:1:2345:6789:abcd。
2、双冒号法:如果一个以冒号十六进制数表示法表示的IPv6地址中,如果几个连续的段值都是0,那么这些0可以简记为::且每个地址中只能有一个::。
例如:2000::1:2345:6789:abcd。
IPv6地址是独立接口的标识符,所有的IPv6地址都被分配到接口,而非节点。由于每个接口都属于某个特定节点,因此节点的任意一个接口地址都可用来标识一个节点。在IPv6地址中的分类方法与IPv4的分类不一样,它主要是通过其地址前缀来划分其传输类型的,共分为3种:
▍单播地址(Unicast Address):用来标识单一网络接口。目标地址是单播地址的数据包将发送给以这个地址标识的网络接口。
▍任播地址(Anycast Address):用来标识一组网络接口(通常属于不同的节点)。目标地址是任播地址的数据包将发送给其中路由意义上最近的一个网络接口。适合于“One-to-One-of-Many”(一对组中的一个)的通讯场合。接收方只需要是一组接口中的一个即可,如移动用户上网就需要因地理位置的不同,而接入离用户最近的一个接收站,这样才可以使移动用户在地理位置上不受太多的限制。
▍多播地址(Multicast Address):用来标识一组网络接口的标识(通常属于不同的节点)。发送到多播地址的数据包发送给本组中所有的网络接口。在IPv6中没有IPv4中的广播地址(Broadcast Address),用多播地址取代。这种IP地址类型适合于“One-to –Many(一对多(组)”)的通讯场合。
IPv4向IPv6过渡只能采用逐步演进的办法,同时,还必须使新安装的IPv6系统能够向后兼容。IPv6 系统必须能够接收和转发IPv4分组,并且能够为IPv4 分组选择路由。传输方法采用了三种:Dual Stack(双栈),Tunneling(隧道),Header Translation(首部转换)。
1、双栈协议
Pv6和IPv4是功能相近的网络层协议,两者都基于相同的物理平台,而且加载于其上的传输层协议TCP和UDP又没有任何区别。如果一台主机同时支持IPv4和IPv6两种协议,那么该主机既能与支持IPv4协议的主机通信,又能与支持IPv6协议的主机通信,这就是双协议栈技术的工作机理。
2、隧道技术
在IPv6 报文进入IPv4 网络时,将IPv6 报文当作普通数据分组封装入IPv4。IPv4 分组的源地址和目的地址分别为隧道的入口和出网口的IPv4地址。当数据由IPv4 离开进入IPv6 网络时,再将IPv6分组取出转发给目的站点。隧道技术适合于两端是纯粹的IPv6网络,而中间传输通道都是IPv4 网络的通信情况下。此种技术可以通过现有的IPv4骨干网络,将局端的IPv6主机相互联结。在IPv6的发展初期此种技术是一种极为方便的过渡技术。
3、首部转换技术
NAT-PT是所有过渡技术中最复杂的技术,因为NAT-PT必须将所有的报文字段做相对应的转换。当IPv6协议报文进入IPv4网络时,会将此报文的字段对应转换到IPv4报文字段,从而转换成IPv4报文。同样的道理,IPv4 报文进入IPv6网络时也要转换成IPv6 报文。由于这种转换需要应用层网关的支持,相应的成本要高一些。NAT-PT技术适用纯IPv6与纯IPv4网络的联结,通过通信协议的完全转换,实现IPv4与IPv6网络的透明通信。