IPv4 / IPv6过渡技术研究
2009-07-05徐来
徐 来
摘 要:随着Internet的高速发展,现有的互联网核心协议IPv4的许多不足逐渐暴露出来,已经阻碍了Internet的发展。为了解决IPv4的不足,业界研发了下一代Internet协议IPv6。从IPv4升级到IPv6将有一个长期的过渡过程。而要实现IPv4/IPv6的互操作,必须进行IPv4/IPv6转换网关的研究。
关键词:IPv4;IPv6;转换网关;地址转换;协议转换
中图分类号:TP393.4文献标识码:A文章编号:16723198(2009)22027101お
1 引言
随着Internet的飞快发展,越来越多的用户加入到互联网的使用中去。目前全球上网的人数已经超过了10亿,到2010年将达到30亿。现有的互联网主要是基于IPv4协议,这一协议的成功应用促成了互联网的迅猛发展。但是,随着互联网用户数量不断增长以及对互联网应用要求的不断提高,以及如此惊人的发展速度,使得网络本身的发展遇到了障碍,IPv4协议的不足逐渐体现出来了。最主要的几个问题是:
第一,IP地址即将用尽。随着接入Internet的设备数目的不断增加,根据IETF专家的研究和预测,在2005年至2010年,基于IPv4的全球IP地址资源将全部分配完毕。
第二,路由表的快速增长。由于IPv4地址方案不能很好的支持地址汇聚,现有的互联网正面临路由表不断膨胀的压力。这使得大量的网络设备由于处理速度跟不上而被淘汰,浪费是很惊人的。
第三,对于如何简便配置以及对服务质量、移动性和安全性等方面的需求都迫切要求开发新一代IP协议。
为了彻底解决上述问题,互联网工程任务组织(IETF)开发出了一套新的互联网协议睮Pv6。
从1995年IPv6的主要规格被确定以后,IPv6便成为事实上的下一代IP协议的规范。1996年2月美国新罕布什尔的IOL实验室首先将IPv6用于通信并进行了相互连接实验。1997年,以验证IPv6为主要目的实验网络6bone发展为连接29个国家的大规模网络。为了彻底解决互联网的地址危机,IETF在IPv6互联网协议中提出了128位地址,并于1998年进行了进一步的标准化工作。除了对地址空间的扩展以外,还对IPv6地址的结构也重新做了定义,采用了IPv4中使用的CIDR类似的方法分配地址。IPv6相对于IPv4的主要优势是扩大了地址空间、提高了网络的整体吞吐量、改善了服务质量、更好地保证了安全性、支持即插即用和移动性、更好地实现了多播功能。通过转换装置IPv4和IPv6可以在网络上共存。许多国家的网络接入量是惊人的,IPv4所能提供的地址已经不能满足需求了。
要实现IPv4向IPv6的平滑过渡需要解决两类问题。一类是实现IPv4网络海洋中的IPLv6孤岛之间如何通信的问题,一类是现有IPv4网络与IPv6网络的通信问题。IETF提出了三种基本的过渡机制,即:双协议栈机制(Double Stack)、隧道机制(Tunnel)和转换网关机制(Translate)。基于这三种基本技术,派生出各种不同的过渡机制,针对不同的情况,解决不同的问题。
2 过渡机制
2.1 双协议栈
双协议栈(Dual Stack)是指在单个节点同时支持IPv4和IPv6两种协议栈,由于IPv6和IPv4是功能相近的网络层协议,两者都基于相同的网络物理平台,而且加载于其上的传输层协议TCP和UDP也没有太大的区别(最多是针对IPv6的改进版本),因此,支持双协议栈的节点既能与支持IPv4协议的节点通信,又能与支持IPv6协议的节点通信。
双协议栈技术是使IPv6节点与IPv4节点兼容的最直接方式,其应用对象是主机、路由器等通信节点。支持双协议栈的IPv6节点与IPv6节点通信时使用IPv6协议,与IPv4节点通信时借助4 over 6使用IPv4协议栈。IPv6节点访问IPv4节点时,先向双栈服务器申请一个临时IPv4地址,同时从双栈服务器得到网关路由器的TEP(Tunnel End Point)IPv6地址。IPv6节点在此基础上形成一个6 over 4的IP数据包,该包经过IPv6网传到网关路由器,网关路由器将其IPv6头去掉,将IPv4数据包通过IPv4网络送往IPv4节点。网关路由器需要记住IPv6源地址与IPv4临时地址的一一对应关系,以便将来反方向将IPv4节点发来的IP包转发到IPv6节点。
2.2 隧道机制
隧道机制就是将IPv6数据包作为数据封装在IPv4数据包里,使IPv6数据包能在己有的IPv4基础设施(主要是指IPv4路由器)上传输的机制。
隧道对于源站点和目的站点是透明的。基于IPv4隧道的IPv6分组传送分为3个阶段即:封装、隧道管理和解封。在隧道的入口处,路由器将IPv6的数据分组封装在IPv4中,该IPv4分组的源地址和目的地址分别是隧道入口和出口的IPv4地址,在隧道出口处,再将IPv6分组取出转发给
目的站点。隧道技术的优点在于隧道的透明性,IPv6主机
之间的通信可以忽略隧道的存在,隧道只起到物理通道的作用。
2.3 网络地址/协议转换(NAT睵T)
网络地址转换/协议转换NAT睵T(Network Address Translation睵rotocol Translation),由NAT演变而来,它通过与SIIT协议(Stateless IP/ICMP Translation Algoritlun,RFC2765)转换和传统的IPv4下的动态地址翻译(NAT)以及适当的应用层网关(ALG)相结合,实现了只安装了IPv6的主机和只安装了IPv4机器的大部分应用的相互通信。
NAT睵T(Network Address Port Translation睵rotocol Translation)是NAT的一种特殊情况。它使用端口号作为地址转换的依据。我们如果使用了NAT睵T,IPv6所有用户客户端允许使用1个IPv4的地址和别的IPv4地址进行通信。这种机制在IPv4分组和IPv6分组之间进行报头和语义的翻译,适用于纯IPv4站点和纯IPv6站点之间的通信。对于一些内嵌地址信息的高层协议(如DNS、FTP)NAT睵T需要和应用层的网关协作来完成翻译。这种技术在采用网络层加密和数据完整性保护的环境下将不能工作。
3 IPv4向IPv6过渡技术的发展过程
基于商业上和技术上的诸多原因,IPv4向IPv6的过渡必然是平滑和渐进的。针对这种平滑过渡,IETF的NGtrans工作组突出了IPv4向IPv6过渡的各种相应机制及其相关工具。但是迄今为止,还没有一种可以作用于各种网络环境的过渡机制。前面介绍的各种过渡机制都需要某种特定的适用环境,都需要某种特定条件的配合协作。下面将粗略地表示这种过渡环境的演化过程,将这种演化进程简单地分为五个进化阶段,并将上一节所介绍的各种过渡系统方案加以对应。
3.1 第一阶段
第一阶段应该说包括目前绝大部分网络现状,也就是指纯IPv4网络环境,即全部是IPv4海洋,没有什么IPv6小岛,所以也没有必要采用什么过渡机制,只需网络节点主机之间采取纯IPv4通信协议即可。
3.2 第二阶段
第二阶段就是指IPv4海洋中开始漂浮着IPv6小岛。这时,必然需要各种适当的过渡机制,就目前看,所应该对应的机制主要有:隧道机制、6 over 4、6 to 4、NAT睵T、BIS等。
3.3 第三阶段
第三阶段就是指随着时间的推移,的IPv6小岛越来越多,慢慢也成为与IPv4海洋不想上下的另一个海洋,这时,下面两种对应的过渡机制在目前看来可能会更有效率:NAT睵T和BIS。
3.4 第四阶段
第四阶段正好与第二阶段相反,即IPv6网络环境越来越成为整个网络世界的主宰,而原有的IPv4网络则越来越少,这样就成了IPv6海洋与越来越少的IPv4孤岛并存。适合采用的相应过渡机制在目前看来很可能是:NAT睵T、DSTM和BIS。
3.5 第五阶段
第五阶段应该算是IPv6成功的时期了。那时候,应该是一个纯IPv6海洋,IPv4孤岛已经不复存在。所以从理论上来说已经不再需要什么过渡技术,各个网络节点主机之间的通信方式都是基于IPv6的通信方式。
参考文献
[1]@伍海桑,陈茂科,陈名华,等.IPv6原理与实现[M].北京:人民邮电出版社,2000.
[2]@沙斐,程莉译.IPv6详解[M].北京:机械工业出版社,2000:100150.
[3]@周逊.IPv6,下一代互联网的核心[M].北京:电子工业出版社,2003.