1 引言 随着对IPv4向IPv6过渡技术研究的不断深入,业界对于过渡问题的认识也不断深入,IETF对于这个问题的认识经历了迁移(Migration)、过渡(Transition)、集成(Integration)、互操作(Interoperation)长期共存(Co-existence)阶段。从长远来看,IPv4和IPv6技术在网络中将长期共存(Co-existence)。未来的IP网络将是IPv4网络与IPv6网络的集成(Integration)网络。
2 综合组网的基本原则 在讨论具体IPv4/v6综合组网技术时,首先需要明确的是综合组网时所应依据的具体原则,这些原则实际上是IPv4/v6综合组网的基本需求,也是讨论和分析IPv4/v6综合组网技术时的重要依据和基础。IPv4/v6综合组网时所需要依据的原则可以分为必需满足的原则和参考原则两种。
2.1 必需原则 (1)最大限度地保护既有投资(终端用户,ISP,ICP,电信运营商)
在进行IPv4/v6综合组网方案的研究时,需要考虑到现有的各个网络运营实体的既有投资,这包括设备投资、市场投资、技术储备、人才储备等多个方面。只有很好地保护既有投资的组网技术和其相应的方案才能具有较好的实用性。
(2)保证IPv4和IPv6主机之间的互通
网络中的IPv4主机和IPv6主机必须能够互通,包括路由可达和IP包可达。只有在两者互通的基础上才能谈应用层面的互通。
(3)保证现有IPv4应用在综合组网环境中的正常应用
现有IPv4网络中的应用已经支持了大量的用户,IPv6技术在网络中的引入不能对现有的业务造成影响,这种影响包括业务性能的影响、网络可靠性的影响以及网络安全性的影响等多方面。
(4)避免设备之间的依赖性,设备的更新须具有独立性
IPv4/v6综合组网技术要求避免设备升级时设备之间的依赖和耦合,网络中的各个部分可以单独选择可用的组网技术,这些技术的选择不能制约其他网络部分组网技术的选择和设备的更新。
(5)综合组网过程对于网络管理者和终端用户来讲要易于理解和实现
综合组网过程简单并易于实现是组网成功与否的一个重要因素,过为复杂的组网过程不但增加网络故障发生的机率,而且也影响用户的跟进速度。
(6)提高组网灵活性,支持网络渐进升级,用户拥有选择何时过渡和如何过渡的权利
(7)综合组网以后网络的服务质量不应该有明显的降低
由于IPv6路由器的性能比同级别的IPv4路由器的性能有所下降,双栈路由器的性能也不是很高,因此IPv4/v6综合组网以后,网络的整体性能可能下降,但是这种下降不会对现有业务的服务质量造成明显的影响。
(8)综合组网以后网络的可靠性和稳定性不能削弱
(9)综合组网过程中应该考虑如何充分发挥IPv6的技术优势
IPv6技术的提出主要是为了解决IP地址空间不足的问题,但也增加了一些其他功能,比如网络安全性支持能力等。在综合组网技术研究中应该考虑如何使这些技术优势得以发挥。
(10)在设计综合组网方案时,一方面要考虑到IPv4/v6长期共存,另一方面也要考虑到将来网络全部采用IPv6的可能。因此,在技术研究时要注意所选技术能够支持网络的平滑过渡,不会形成将来网络过渡的新障碍。
2.2 参考原则 (1)在IPv4业务和IPv6业务互不影响的前提下,支持IPv4业务与IPv6业务的互通
在综合组网初期要实现IPv4网元与IPv6网元的互联,可以分别支持IPv4业务和IPv6业务,这些业务可以单独运营,互相不互通,在综合组网的后期要实现IPv4业务与IPv6业务的业务层面的互通。
(2)应着重考虑从边缘到骨干的逐步演进策略(同时关注从骨干到边缘的策略)
网络演进的策略(从边缘到骨干还是从骨干到边缘)一直是IPv4/v6综合组网技术研究中有较多争论的问题。一般认为,IPv6技术在网络中的引入主要是为解决IP地址空间不足的问题,而大量消耗IP地址的是网络的边缘,因为网络的终端、接入设备、汇集设备数量远远多于城域核心网络或骨干网络的网元数目,因此在网络边缘采用IPv6技术可以有效地解决IP地址空间不足的问题。另一方面,骨干网络和城域核心网络的设计原则是简单、高效,而就目前的实际情况来讲,IPv6路由器的路由转发性能低于IPv4路由器的性能,因此在城域核心网和骨干网应该采用IPv4协议,目前还没有对这部分网络进行IPv6协议升级的迫切需求。保证核心网和骨干网的长期相对稳定有利于网络的持续稳定发展,因此从边缘到骨干的网络逐步演进策略得到了大多数研究人员的认同。
(3)综合组网后网络管理功能应该较原有网络有所加强
在电信网络中引入IP技术以后,网络的管理模式和运营模式都不能再按照互联网的相关模式进行,这一点已经得到了越来越多的研究人员的支持。原有IPv4网络所存在的技术、管理方面的问题已经逐步暴露出来,在IPv4/v6综合组网技术的研究中,要同时考虑这两方面的内容,提高网络的可管理性和可维护性。
(4)应考虑综合组网对用户认证和计费方式的影响
IP网络的计费和认证问题一直是一个重点研究的热点,这个问题在电信网络中尤为突出,目前在IPv4网络中的计费认证问题已经有了一些解决办法,并且这些办法在实际网络中也得到了一定程度的应用,取得了一些成果。但是,IPv6技术在网络中的引入使得问题变得更为复杂,有时会出现重复计费和认证的现象。
(5)应考虑对IPv4地址资源的使用效率
在进行IPv4/v6综合组网时,不同的综合组网技术对于IPv4地址的需求也不相同,有些组网技术依然需要大量的IPv4地址,因此IPv4地址的需求量也是综合组网技术研究中应该注意的一个问题。
(6)应考虑为终端用户所能带来的好处(业务、兴趣点等)
在IPv4网络中引入IPv6技术,可以解决运营商的IP地址空间不足的问题。但是,网络的这种升级究竟能为终端用户带来什么好处,或者说,终端用户有什么理由要支持这种升级是一个需要考虑的问题。网络升级以后能够提供更好的服务或者可以增加新的业务种类,并形成新的业务兴趣点是刺激终端用户积极跟进的重要因素。网络升级以后,只有用户的增加、用户对网络满意度的提高、业务收入的增长才能够真正推动运营商对网络升级改造的进程。
(7)各电信运营商应该有明确的网络过渡计划
网络的升级是一个牵涉到网络各个层面的重要问题,因此运营商应该有一个长远的规划和具体的实施计划,这种规划和计划应该和企业的技术路线和网络发展方向相一致,避免网络升级过渡的盲目性以及由此带来的诸多混乱。
(8)综合组网时应统筹考虑到对现有IPv4网络中存在的一些问题的改进(NAT,地址规划等)
在IPv4/v6综合组网技术研究时要充分分析和研究现有IPv4网络中所存在的问题,以期在综合组网方案中能够解决或者避免这些问题。
(9) 网络的各个部分之间的技术选择应该具有独立性,如城域核心网、接入网、驻地网应该可以选择不同的技术。
3 现有综合组网技术 3.1 双栈策略 双栈策略是指在网元中同时具有IPv4和IPv6两个协议栈,它既可以接收、处理、收发IPv4的分组,也可以接收、处理、收发IPv6的分组。对于主机(终端)来讲,“双栈”是指其可以根据需要来对业务产生的数据进行IPv4封装或者IPv6封装。对于路由器来讲,“双栈”是指在一个路由器设备中维护IPv6和IPv4两套路由协议栈,使得路由器既能与IPv4主机也能与IPv6主机通信,分别支持独立的IPv6和IPv4路由协议,IPv4和IPv6路由信息按照各自的路由协议进行计算,维护不同的路由表。IPv6数据报按照IPv6路由协议得到的路由表转发,IPv4数据报按照IPv4路由协议得到的路由表转发。
3.2 隧道策略 隧道策略是IPv4/v6综合组网技术中经常使用到的一种机制。所谓“隧道”,简单地讲就是利用一种协议来传输另一种协议的数据技术。隧道包括隧道入口和隧道出口(隧道终点),这些隧道端点通常都是双栈节点。在隧道入口以一种协议的形式来对另外一种协议数据进行封装,并发送。在隧道出口对接受到的协议数据解封装,并做相应的处理。在隧道的入口通常要维护一些与隧道相关的信息,如记录隧道MTU等参数。在隧道的出口通常出于安全性的考虑要对封装的数据进行过滤,以防止来自外部的恶意攻击。
隧道的配置方法分为手工配置隧道和自动隧道,而自动配置隧道又可以分为兼容地址自动隧道,6to4隧道,6over4,ISATAP,MPLS隧道,GRE隧道等,这些隧道的实现原理和技术细节都不相同,相应的其应用场景也就不同。
典型的隧道技术主要包括:
(1)配置隧道
手工配置隧道主要应用在个别IPv6主机或网络需要通过IPv4网络进行通信的场合,这种方式的优点是实现相对简单,缺点是扩展性较差,表现在当需要通信的IPv6主机或网络比较多时,隧道配置和维护的工作量较大。
(2)6to4隧道
6to4隧道是自动隧道的一种,也是IETF较为重视、并得到深入研究、有广阔应用前景的一种网络过渡机制。6to4隧道的主要应用环境是,它可以使连接到纯IPv4网络上的孤立的IPv6子网或IPv6站点与其它同类站点在尚未获得纯IPv6连接时彼此间进行通信。
(3)兼容地址自动隧道
兼容地址自动隧道是自动隧道的一种,在IETF的RFC中进行规定,但是目前已经不推荐使用这种隧道方式。
(4)6over4
6over4机制通常只能应用在网络边缘,例如企业网和接入网。6over4能够将没有直接与IPv6路由器相连的孤立的IPv6主机通过IPv4组播域作为它们的虚拟链路层形成IPv6的互联。通过这种机制,IPv6可以独立于底层的链路,可以跨越支持组播的IPv4子网。6over4机制由于要求在IPv4网络中支持组播功能,而目前大多数网络均没有布置组播功能,因此在实际应用中很少被利用。
(5)隧道代理
隧道代理通常应用于独立的小型的IPv6站点,特别是独立的分布在IPv4互联网中的IPv6主机需要连接到已有的IPv6网的情况。隧道代理(TB)提供一种简化配置隧道的方法,可以减少繁重的隧道配置工作。隧道代理的思想就是通过提供专用的服务器作为隧道代理,自动地管理用户发出的隧道请求。用户通过Tunnel Broker能够方便和IPv6网络建立隧道连接,从而访问外部可用的IPv6资源。隧道代理这种过渡机制对于在IPv6的早期为吸引更多的IPv6使用者能方便快捷地实现IPv6连接有很大的益处,同时也为早期的IPv6提供商提供了一种非常简捷的接入方式。
(6)ISATAP
ISATAP机制(the Intra-site Automatic Tunnel Addressing Protocol,站内自动隧道寻址协议)在IETF的RFC中进行定义,通常应用在网络边缘,如企业网或接入网。ISATAP可以和6to4技术联合使用,可以使IPv4站点内的双栈节点通过自动隧道接入到IPv6路由器,允许与IPv6路由器不共享同一物理链路的双栈节点通过IPv4自动隧道将数据包送达IPv6下一跳。
(7)MPLS隧道
MPLS隧道主要应用于骨干网和城域核心网。MPLS隧道实现IPv6岛屿互联的方式,尤其适合于已经开展了BGP/MPLS VPN业务的运营商。这种过渡方式可以使运营商暂时不必将现有核心网络升级为IPv6网络就可以实现对外提供IPv6业务。
IPv6站点必须通过CE连接到一个或多个运行MP-BGP的双栈PE上,这些PE之间通过MP-BGP来交换IPv6的路由可达信息,通过隧道来传送IPv6数据包。
(8)二层隧道
为了连接分散的IPv6网络,一种可能的方法是利用二层技术(如ATM,PPP,L2TP等)把这些IPv6网络连接在一起。这种方式的优点是概念清晰、易于理解。缺点是实现较为困难,扩展性较差,当需要互联的IPv6网络较多时,不宜采用这种方式。
3.3 翻译策略 在网络的过渡时期不可能要求所有的主机或终端都升级支持双栈,在网络中必然存在纯IPv4主机和纯IPv6主机之间进行通信的需求,由于协议栈的不同很自然地需要对这些协议进行翻译转换。对于协议的翻译涉及两个方面,一方面是IPv4与IPv6协议层的翻译,另一个方面是IPv4应用与IPv6应用之间的翻译。翻译策略可以对应多种实现技术,其中NAT-PT和TRT主要应用于网络汇聚层,而BIA,BIS则主要是针对主机终端而提出的。
(1)NAT-PT
NAT-PT网关能够实现IPv4和IPv6协议栈的互相转换,包括网络层协议、传输层协议以及一些应用层协议之间的互相转换,原有的各种协议可以不加改动就能与新的协议互通,但该技术在应用上有一些限制:
●在拓扑结构上要求一次会话中双向数据包的转换都在同一个路由器上完成,因此地址/协议转换方法较适用于只有一个路由器出口的网络;
●一些协议字段在转换时不能完全保持原有的含义。
(2)TRT
传输中继转换器简称“TRT”(Transport Relay Translator)适用于纯IPv6网络与纯IPv4网络通信的环境。TRT系统位于纯IPv6主机和纯IPv4主机之间,可以实现(TCP,UDP)/IPv6与(TCP,UDP)/IPv4的数据的对译。传输中继可以分为TCP中继和UDP中继两类。
TRT与NAT-PT的最大区别是,TRT做为中继,在TCP/UDP层面以代理的身份来沟通双方,例如TCP中继分别与TCP通信的双方建立TCP连接,双方的所有TCP通信均由TCP中继来中转,而NAT-PT则只起翻译作用,并不代理通信。
(3)BIS
BIS技术是在双栈主机中添加若干个模块(翻译器、扩展域名解析器、地址映射器),用于监测TCP/IP模块与网卡驱动程序之间的数据流,并进行相应IPv4与IPv6数据包之间的相互翻译。当与其他IPv6主机进行通信时,在这台主机内部给对应IPv6主机分配一些IPv4地址,这些地址只在这台主机内部使用。而且,这种分配过程是通过DNS协议自动来完成的。主机可以使用现有的IPv4应用和其他IPv6主机进行通信,使其成为能够既支持IPv4应用又同时支持IPv6应用的双栈主机,从而扩大了双栈主机的应用领域。此外,BIS机制还可以和其他的转换机制共存。
(4)BIA
BIA技术在双栈主机的Socket API模块与TCP/IP模块之间加入一个API翻译器,它能够在IPv4的Socket API函数和IPv6的Socket API函数间进行互译,这种机制简化了IPv4和IPv6间的转换,无需进行IP头的翻译。
采用BIA的双栈主机假定在本地节点上同时存在TCP/IPv4和TCP/IPv6两种协议栈。当双栈主机上的IPv4应用程序与其他IPv6主机通信时,API翻译器检测到IPv4应用程序中的Socket API函数,并调用IPv6的Socket API函数与IPv6主机通信,反之亦然。
4 综合组网技术的比较分析 在IPv4/v6综合组网具体技术的选择时要重点考虑如下几个重要因素:
(1)扩展性(Scalability)
扩展性一方面是指某种组网技术能否支持网络平滑的升级,扩展性较差的技术虽然会解决目前的问题,但同时也会成为网络升级的障碍。另一方面是指,在网络的各个部分采用的不同技术之间是否存在制约,如某个网络的部分采用了6to4机制,则要求与其通信的其他网络部分也要支持这种机制(采用6to4路由器或6to4中继器)。
(2)安全性(Security)
安全性包括多个方面:首先,组网技术是否会破坏原网络的安全性。其次,组网技术本身是否存在安全漏洞或隐患。
(3)性能(Performance)
组网技术的性能包括其对原有网络的网络性能的影响、其自身的网络性能如何两方面。
(4)主机需求(Requirements of Hosts)
主要需求包括协议栈、IPv4地址(全局还是临时、如何获得和管理)需求、IPv6地址(地址类型、分配策略等)需求等。
(5)路由器需求(Requirements of Routers)
(6)IPv4地址需求(IPv4 Address Requirement)
当在网络中按照某个组网技术组网时,其对IPv4地址的需求量如何,需要全局地址还是临时地址,地址如何管理等。
(7)IPv6地址需求(IPv4 Address Requirement)
(8)易用性(Ease of Use)
组网技术的复杂性直接制约了其应用的范围,一个复杂的、不易理解的组网技术对网络的采用会带来诸多问题(维护与管理、实施成本等)。
(9)易管理性(Ease of Management)
(10)应用场景与应用阶段(Application Scenarios and Phase)
每种网络迁移策略及其相应的组网技术均有其各自的优点和缺点,有着各自的适用环境,这些特性直接影响了在综合组网中组网技术的选择。
(11)其他因素(Other Factors)
IPv6技术增加了一些和网络安全、QoS保证等方面的支持能力,但是在一些综合组网环境中,这些附加的特性可能不能得以体现。各种技术的比较结果见表1。
5 结束语 本文对IPv4/v6综合组网时应遵循的基本原则、涉及的主要策略和相应技术进行了分析,对于了解IPv4/6综合组网技术、设计IPv4/6综合组网方案有一定的帮助。
(作者:曹蓟光 信息产业部电信研究院通信标准研究所IP与多媒体研究部高级工程师,博士)