1、IPv4到IPv6的过渡方法
从IPv4到IPv6的过渡方法有三种:网络元素/终端的双协议栈、网络中的隧道技术以及翻译机制。其中双协议栈和隧道技术是主要的方法,而翻译机制由于效率比较低,只在不同IP版本的元素之间进行通信时才采用。
(1)网络元素和移动终端上的IPv4/IPv6双协议栈双协议栈是非常重要的过渡机制,从网络方面来看,网络设备(如GGSN)实现双协议栈对于实现IPv4和IPv6的接入点并完成IPv6-in-IPv4的隧道都是至关重要的,另外运营商IP网络和公众因特网边缘的边际路由器也应该是双栈路由器。从移动终端来看,需要通过双协议栈来访问IPv4和IPv6的业务而不需要网络上的翻译机制。
(2)隧道技术
如将IPv6的数据包封装在IPv4的数据包中并在隧道的另一端解除封装,这也是一种非常重要的过渡方法,隧道技术要求在封装和解除封装的节点上都有IPv4/IPv6双协议栈的功能。隧道技术又分为自动和人工配置两种,人工配置的隧道技术是在隧道的终点人工配置到某个特定的IPv4地址;对于自动隧道技术来说,封装是自动在进行封装的路由器/主机上完成的,隧道终点的IPv4地址被包含在目的地址为IPv6地址的数据包中,如“6to4”隧道技术。
(3)网络上的IPv4-IPv6协议翻译器:翻译器是纯IPv4主机和纯IPv6主机之间的中间件,使两种主机不需要修改任何配置就可以实现彼此之间的直接通信,翻译器的使用对于移动终端来说是透明的,头标转换是一种重要的翻译机制,通过这种方法IPv6数据包的头标被转换为IPv4数据包的头标,或者反过来,IPv4转换为IPv6,有必要的时候对校验进行调整或重新计算,NAT/PT(Network Address Translator/Protocol Translator)就是采用这种机制的一种方法。
采用地址/协议翻译器需要转换IP数据包的头标,带来的问题是破坏了端到端的服务(如端到端的IPSec),而且NAT/PT可能成为网络性能的瓶颈,有可能限制业务提供平台的容量和扩展性。
使用网络中的地址/协议翻译器还是采用其它过渡方法主要由网络运营商决定,一般来说,只有当两个通信节点的IP版本不同时才建议采用翻译器。
2、IPv4到IPv6的过渡阶段
图1中给出了GPRS/WCDMA网络过渡到IPv6的一个简单描述,同样的原则也适用于其它网络类型。
从图1中可以看出,开始的时候是只支持IPv4的GPRS/WCDMA网络,所有连接到因特网上的终端都是纯IPv4的设备,NAT被用来节约公共的IP地址。这些网络向IPv6过渡的过程可以分为三个阶段:
(1)第一阶段:网络中有着一个个单独的IPv6孤岛,它们之间的连接是通过在IPv4网络上自动或人工配置“IPv6 in IPv4”的隧道来实现的。在这个阶段,向移动用户提供的IPv6业务绝大多数是由运营商的内网络(Intranet)提供的,其它的一些IPv6业务通过在IPv4网络上的配置/自动隧道来实现,传统的IPv4业务可以提供有IPv4或者双协议栈的终端。在运营商的网络上仍然有NAT,通过分配临时地址来处理公共IPv4地址匮乏的问题。运营商的网络上还可以安装翻译器(如NAT-PT)来完成IPv4与IPv6协议之间的翻译转换。
(2)第二阶段:这一阶段IPv6已经广泛部署并且有了大量在IPv6平台上实现的业务,但是由于IPv6网络还不能达到完全连接,有时仍然需要IPv4网上的隧道技术来与IPv6节点连接通信。
这个阶段由于所有新业务都在IPv6平台上实现,从而加速了IPv6的部署。从IPv6的发展趋势来看,移动网络将率先进入这一发展阶段。这时大量传统的IPv4业务仍然存在,很多移动节点上都安装了IPv4/IPv6双协议栈。
(3)第三阶段:IPv6已经获得主导地位,IPv6网络已经实现了全球连接而且所有的业务都在IPv6平台上运行,这时候将不再需要双协议栈功能或者地址/协议的翻译机制,这使得网络结构更加简单,网络维护也更加容易。
IPv6使得网络中的每个节点都有一个少有的、全球可路由到的地址。
3、IPv4向IPv6过渡的网络模型
3.1 网络模型
图2简单地显示出移动终端与GPRS核心网络的连接,移动终端与GGSN接入点(AP)之间所建立的连接称为分组数据协议(PDP)上下文,移动终端通过激活PDP上下文来获取其IP地址,图2中显示了两种不同的移动终端连接到GGSN的两个不同的接入点上的情况。GGSN中的AP1是原生的IPv6,始终连接到IPv6环境中。AP2提供通过IPv4网络隧道的IPv6连接,这一连接可以是“6to4”的、也可以是“4to6”的。AP3是原生的IPv4,提供到纯IPv4服务/主机的连接。
图3是过渡期网络模型分析的简单图解,只显示了移动终端和GPRS核心网。使用运营商本地的IPv4和IPv6业务(网内业务)没有必要采用公用IPv4地址或全球IPv6地址(站点本地IPv6地址就足够了)。
当用户离开运营商网络时,通信流要通过边缘路由器和防火墙,在这种情况下,需要公用IPv4地址和全球IPv6地址。获取全球IPv6地址不是问题,但是运营商的公用IPv4地址非常有限,因此需要提供临时的IPv4地址的机制,如NAT。
当通过IPv4网络来连接某个IPv6主机时需要采用隧道技术,隧道的起点可以是GGSN、边缘路由器、或者移动终端,隧道的终点可以是主机或者IPv6网络边缘的路由器(如图3中的路由器1),如果隧道在主机之前终结则由该路由器解开封装。
图4显示了双栈移动终端在某个仅支持IPv4的外访网络上漫游,而用户希望连接某个IPv6主机的情况。链路层的移动性是指移动终端可以连接到其家乡GGSN并获得到IPv6网络的接入,外访网络上的SGSN通过Inter—PLMN骨干网络的GTP隧道,将移动终端连接到家乡的GGSN上,Inter-PLMN网络连接运营商的GPRS核心网和相关得有漫游协议的运营商网络。
移动网络、移动终端、连接到的不同主机的IP版本都存在两种可能性,它们之间的连接会出现不同的组合方式。一条基本规则是:如果两个通信的IP节点的IP版本不同,网络中的某些节点就需要协议翻译。网络元素和移动终端采用IPv4/IPv6双协议栈是一个确保通信节点能用同一种IP版本通信的很好的解决方案。
在过渡期将会有三种不同的网络业务类型:
(1)传统的IPv4业务通过全球连接的IPv4网络来传输:由于缺乏公用IPv4地址,必须采用私有IPv4地址和NAT。
(2)IPv6网络上的IPv6业务:这种情况下原生的IPv6路由即可完成,不需要IPv4网络上的隧道或者协议翻译。
(3)IPv4网络上的IPv6业务:通信的IPv6节点/网络通过IPv4网络采用隧道技术实现连接,有可能使用协议翻译。
使用以上三种网络业务的移动终端类型可以是纯IPv4的终端(常见的第一代GPRS/WCDMA终端)、双IPv4/IPv6协议栈的终端、或纯IPv6的终端(正在研发阶段),同样与之通信的对等主机也可以是双协议栈、纯IPv4或者纯IPv6的。
3.3 过渡方式
(1)纯IPv4终端
纯IPv4终端主要是第一代的GPRS终端,提供给纯IPv4终端的是纯IPv4业务,在很多情况下没有足够的公用IPv4地址来分配给这些移动终端,因此通常情况下移动终端分配到的是私有IPv4地址。如果一个拥有私有IPv4地址的移动终端要通过公用的IPv4网络连接到某个主机上,网络中必须有NAT。
图5描述了三种情况:
◆移动终端连接到同一网内的某个主机上,这时仅用私有IPv4地址就足够了;
◆移动终端连接到公共因特网上的某个主机,移动终端将从运营商的地址空间中分配到一个公用IPv4地址并通过全球的IPv4路由来实现连接,由于公用IPv4地址池中的地址有限,图5中的b)情形很少发生。
◆移动终端有一个私有的IPv4地址,NAT分配一个临时的公用IPv4地址给它,移动终端通过这个临时的地址实现连接。
(2)双协议栈的终端
如图6所示,双协议栈的移动终端在IPv6模式下操作——移动终端打开IPv6类型的PDP上下文并且从GGSN接收到一个全球的IPv6地址,该终端通过IPv6网络连接到纯IPv6主机上,这时所有的选路都是在IPv6的域上,不需要任何翻译机制,在这种情况下纯IPv6终端与双协议栈终端的工作方式是一样的。
如图7所示,PDP上下文在移动终端和GGSN(AP类型是IPv6)之间打开,在这种情况下,边际路由器被配置为对IPv6分组封装/解除封装,因此边际路由器是运营商网络上唯一需要公用IPv4地址的设备。
来自移动节点发送到主机的IPv6数据包可以通过IPv4网络上的隧道技术来传输,或者可以直接通过IPv6网络传输。但在很多情况下不能通过IPv6网络来发送,因为还没有直接的连接。
发送到主机的数据包采用“6to4”类型的主机地址,如果数据包的所有选路都是通过IPv6网络就不需要“6to4”隧道技术,否则在边际路由器和路由器1之间将采用自动“6to4”隧道技术。
如图8所示,双协议栈的移动终端连接到纯IPv4的主机(例如IPv4的公司接入网络上的邮件服务器)上,双协议栈的移动终端在IPv4模式下工作,由于公用IPv4地址的缺乏而被分配到一个私有的IPv4地址,需要用NAT来为移动终端提供临时的公用IPv4地址。
(3)纯IPv6终端
纯IPv6移动终端的通信与双协议栈终端的主要区别在于:移动终端与纯IPv4主机之间的通信需要在网络上有翻译器(如NAT-PT)。
如图9所示,纯IPv6移动节点从GGSN(GGSN的AP类型是IPv6)获得了全球的IPv6地址,由于纯IPv6移动终端连接到的纯IPv4主机有公用IPv4地址,因此需要NAT-PT和其它的翻译机制来实现IPv6-IPv4协议和地址之间的翻译,边际路由器是双协议栈的路由器,既有全球的IPv4地址也有IPv6地址。
在这种情况下,双协议栈终端能工作得更好,因为双协议栈的终端不需要NAT-PT。
4、应用和服务
IPv6对有些应用来说至关重要,如VoIP、WAP、推送和其它需要“永远在线”支持(如实时连接)的业务。
由于过渡策略是不依赖于应用的,也就是说两者是分离的,因此建议所有的新业务都在IPv6平台上实现,实际上所有的业务在可能的条件下都可以移植到IPv6平台上。