下一代Internet协议----IPv6(王海涛 郑少仁)
摘 要:阐明IPv4升级的原因和IPv6的改进之处,讨论IPv4过渡到IPv6的几种方案并介绍IPv6
相关产品的进展情况。
关键词:IPv6 IP安全 邻居发现(ND) QOS 双栈
一、引言
当前应用在Internet上的IPv4协议成功连接着全球上亿台主机,极大地促进了Internet的
发展。但是,随着网络规模的不断扩大,IPv4的缺陷和不足(如地址空间匮乏、路由表过于庞
大以及不能很好地支持实时业务等问题)使得它不能适应高速发展的Internet的要求。为此,
IETF(Internet工程任务组)制定了用以取代IPv4的新一代Internet协议--IPv6。
二、IPv4升级的原因
IPv4是Internet现在仍在使用的IP协议,它产生于1974年。随着Internet的发展,IPv4已
经难以满足需要。现在它主要面临以下四个问题:
1.IP地址资源即将枯竭
IPv4地址是32位,理论上可以具有多于40亿的地址,但这只适用于IP地址以顺序化分布的
网络规模较小的情况。实际IP地址采用分级的地址格式:IP地址分为网络地址和主机地址两部
分,从而使数据的选路变得更加简单,但也缩小了可用地址范围。我们知道IP地址被分为5类,
A类地址只有126个,用于那些最大的实体,理论上可能支持最多1600万台主机。B类地址大约
16000个,理论上可以支持超过65000台主机。C类网络超过200万个,每个网络上主机数量不超
过255个。但是实际上,获得A类地址的公司很少能够高效使用它所拥有的地址,而申请B类地
址变得越来越困难,C类地址的使用效率也很低。鉴于这些问题,出现了无级域间路由(CIDR)、
变长子网掩码(VLSM)及网络地址翻译(NAT)等解决方法。这些方法在一定程度上缓解了IP
地址资源的紧缺,而且大幅度地减小了骨干网上路由表的大小。但是这些方法却不能增加IPv4
所能容纳的主机数量;NAT虽然提供了一种减少IP地址需求的方法,但使用起来肯有很大的随
意性,并且在重新对专用IP网络编址时需要花费较长的时间和昂贵的代价。因此,它们只能作
为一种短期的解决办法。随着连接到Internet的主机数目的快速增加,现有的IP协议无法解决
地址资源很快被用光的问题。
2.IPv4的性能有待改进
IPv4采用与网络的拓扑结构无关的地址分配形式,随着网络数目的增加,路由器数目亦快
速增加,决定数据传输路由的路由表也就不断加大。庞大的路由表大大降低了Internet服务的
稳定性。同时目前Internet只能提供"尽力而为"的服务,远远不能满足不断涌现的大量新业务
对IP协议性能的要求。
3.IPv4的安全性比较差
IPv4协议本身安全性问题考虑较少,随着Internet的迅速发展,特别是电子商务等网上商
业活动的兴起,使得安全性问题日益突出。尽管在IPv4协议上开发了宝剑套接字协议(SSL)、
设计了数字签名机制并引入了安全隧道协议,在一定程度上改进了Internet的安全性,但这些
方法都存在相应的问题:在应用层进行加密会使得很多信息被公开;SSL虽然能够为Web应用提
供较好的安全保障,但要求客户机和服务器应用程序都支持SSL;隧道协议也能提供较好的安
全支持,但缺乏通用的标准。
4.IPv4不具备自动配置功能
在IPv4下很多情况需要手工配置用户地址,这不仅增加了管理费用,而且给需要频繁变动
地址的企业带来极大不便。动态主机配置协议(DHCP)使问题在一定程度上得到解决,但在很
多情况下它并不适用。
三、IPv6的改进
针对IPv4存在的各种不足之处,IETF制定了IPv6协议,主要进行了以下改进:
1.大幅度扩展了编址能力
IPv6的地址是128位,使得编址空间增加了296倍,并且可以支持灵活的、全球范围的路由
体系结构。IPv6除了支持单播(Unicast)和多播(Multicast)地址之外,还定义了一种新的
地址格式----泛播(Anycast)地址。IPv6规定送往一个泛播地址的数据包将被传送到该组的
任意一个接口(通常是距离最近的一个接口)。例如,我们可以利用这个特性,在超文本传输
协议中发送一个GET请求到最近的一个镜像站点来获得所需的资源。IPv6单播地址包括可积聚
全球单播地址、未指定地址、回返地址、嵌有IPv4地址的IPv6地址等类型。IPv6地址中保留了
大量的未分配地址,为将来的发展预留了足够的空间。IPv6中定义了两种本地单播地址:链路
本地单播地址和站点本地单播地址:前者定义了在单个网络链路用以完成自动地址配置和邻居
发现等功能;后者用于站点内的寻址,它不能直接选路到Internet。
2.简化了IP包头格式
IPv6包头包括总长为40字节的8个字段;而IPv4包头包含至少12个不同的字段,且在不包
含任选项时包头长度为20字节,而包含任选项时最多可达60字节。IPv6的包头长度统一,因
此不再需要包头长度字段。并且在IPv6中去掉了头校验和字段,头校验和将由高层协议负责。
由于IPv6使用了固定格式的包头并减少了需要检查和处理的字段的数量,选路效率明显提高。
3.加强了扩展和选项功能
IPv4中可以在IP包头的尾部加入可选项,但是改变了IP包头的大小,从而引发一个路由
器把含有可选项的
IP包搁置起来,等到有时间的时候再进行处理。与IPv4不同,IPv6把选项加在单独的扩展头中,
因此可以大量减少选项带来的对性能的影响。通过把选项从IP包头搬移到净荷中,路由器可以
像转发无选项包一样来转发包含选项的包。除逐跳选项餐,IPv6包中的选项对于中间路由而言
是不可见的。同时IPv6的分段只能发生在源节点上,因此需要考虑分段扩展头的节点只有源节
点和目的节点,所有中间节点都可以安全地忽略该分段扩展头,从而提高了选路效率。
4.对服务质量(QOS)的支持
传统的Internet只能提供"尽力而为"的服务,它尽最大可能地传送数据包,对不同类型的
业务流进行相同处理。随着实时业务(如IP电话和多媒体等业务)的大量涌现,要求Internet
必须支持QOS。提供QOS的方法包括集成服务(Integrated Service)和差分服务
(Differentiated Service),它们都要求对不同类型的业务进行不同的处理。为此,IPv6增
加了流标记功能,通过对IP包编号作标记,可将包划归至不同的数据流;发送者可根据流号请
求相应的QOS服务保证。而且,IPv6包头还包含一个8比特的业务流类别字段,如同IPv4中的服
务类型字段(TOS),可以用来区分具有不同优先级别的各种IPv6数据包,从而可以提供不同
形式的差分服务。
5.加强了IP协议的安全性
针对IPv4安全性差的问题,IPv6包含了IP安全体系(IPSec),用以保证那些要求较高安
全级别的业务。IPv6使用了两种安全性扩展:IP身份验证头(AH)和IP安全封装负荷(ESP)。
AH和ESP的引入使IPv6能够较容易地实现安全性的三个目标:身份验证、数据完整性和机密性。
AH为源节点提供了在数据包上进行签名的制。AH之后的数据可能被攻击者截获,但在目的节点
接收数据之后,可以使用AH中包含的数据来进行身份验证;同时可使用ESP对数据内容进行加
密(在对ESP头之后的所有数据进行加密后,接收者可以利用ESP头中信息对其进行解密);
此外,IPv6中还通过加强密钥管理等措施来进一步提高网络的安全性。由于这些安全性在IP
层提供,高层协议 (如ICMP、DHCP、DNS等)也可以使用这些安全特性,从而满足那些安全
性要求较高的业务(如电子商务和Internet)的需要。
6.邻居发现即插即用
IPv6中邻居发现(ND)协议用来动态收集相邻网络的信息,这些信息包括本地网络参数、
IPv6地址到第二层地址的解析、路由重定向及相邻节点的状态。ND协议代替了IPv4中使用的
ARP协议。由于ARP协议采用广播,而ND协议使用组播并且允许智能网桥分流ND业务量,从而
可以减轻"广播风暴"的影响。
IPv6支持完全的即插即用协议用来实现网络节点和主机自动配置。IPv6中包括两种自动
配置:全状态自动配置(stateful autoconfiguration)和无状态自动配置(stateless
autoconfiguration)。全状态自动配置的问题在于,用户必须保持和管理特殊的自动配置
服务器以便管理所有状态(包括允许的连接及当前的连接的相关信息),对于有足够资源来
建立和保持配置服务器的机构,这种方法以接受;但它不适合于大多数个人和小型机构,这
种情况下无状态自动配置是较好的解决方案。使用无状态自动配置,无需人工干预就能够改
变网络中所有主机的IP地址,实现起来相对容易。但是,无状态自动配置对得到IP地址的节
点只能提供最低程度的监视,而全状态自动配置可以更加紧密地控制网络可配置的节点。
IPv6的即插即用特性使其能够支持多种网络业务的自动配置(如网络打印机和文件服务器的
自动发现和配置),支持DNS的自动初始化和更新,并使路由器的重新配置变得十分容易。即
插即用减轻了地址管理的负担,有助于促进Internet的快速发展。
7.移动IPv6
与IPv4相比,移动IPv6将更易于实现使用。首先,通过使用无状态自动配置或全状态自
动配置来自动产生移动节点的转交地址。正因为如此,IPv6中没有外地代理转交地址,而只
有配置转交地址。其次,通过使用绑定更新、绑定确认和绑定请求目的地选项,IPv6节点能
动态地学习和缓存移动节点家乡地址和其转交地址的绑定关系,从而可以使选路路由得到进
一步优化。而且,那些知道移动节点地址的通信对端可以利用选路包头(
Routing Header)直接向移动节点发送数据包,从而使分组的传递更加直接和高效。
四、IPv4过渡到IPv6的方案
IPv4升级到IPv6所面临的主要问题之一是采取什么样的过渡方案。这种过渡应该是一种
循序渐进的、平稳的过程。并且过渡到IPv6的策略应该不受限制:网络管理者可以更新主机,
然后升级路由器或者采取想反的顺序;也可以只对一部分主机和路由器进行升级。根据不同
的情况,可以在不同的阶段采取以下三种过渡方案。
1.双栈方法和隧道方法
双栈方法是一种较简单的过渡方法。它要求节点是IPv4/IPv6双栈节点,这些节点既可
以与IPv4节点通信,也可以与IPv6节点通信;通常情况也要求网络中的路由器为双栈路由器。
当没有IPv6骨干网可以利用时,可以采用隧道方法来替代双栈方法:将IPv6分组封装到IPv4
分组的净荷中,用于在IPv4网络中连接IPv6主机和路由器。
2.协议转换方法
协议转换方法可以使IPv6网络和IPv4网络实现互联。协议转换包括网络层协议转换和高
层协议转换。网络层协议转换,例如网络层地址翻译和协议翻译(NAT-PT)可看作是位于
IPv6网络和IPv4之间的网关。它可以实现IPv6和IPv4分组的相互转换。但网络层协议转换使
得IP地址不再具有端到端的特性。高层协议转换方案可以克服这一缺点,如基于Socket的
IPv6/IPv4网关可以实现IPv6和IPv4网络的相互通信。
3.地址分配方法
我们可以通过临时向一个双栈主机分配一个IPv4地址、并且使用IPv6上的IPv4隧道来
实现一个本地IPv6网络中的主机同IPv4网络中的IPv4节点进行通信。这种方法是在短期进
行IPv6测试和最初用于网络配置的情况下可以采用的一种过渡方法,但不能作为一个长期
的过渡方案。
五、IPv6产品的进展情况
直到现在,IPv6的标准化工作还在继续进行,但是许多网络产品供应商已开始在其产
品中加入IPv6特性。
软件方面,FTP软件公司的Secure Client 3.0是支持IPv6的完整TCP/IP协议栈产品。
其余大多数厂商仍只能提供IPv6的测试版或研究版。Sun的Solaris IPv6的原型能够支持在
IPv4上实现IPv6隧道、IPv6地址解析、IPv6组播以及IPv6分段与重组。同时还有许多组织
正致力于为UNIX 和Linux操作系统开发IPv6驱动程序。硬件方面,Cisco和Nortel等网络
公司均在测试支持IPv6的路由器之类的产品。日立公司已开始销售IPv6路由器,
DEC公司也发布了支持IPv6的AlphaServer产品,而Bay公司的BayRS12.0版选路产品也能够
支持IPv6。
六、结论
目前,在世界范围内已经布置了许多用于试验和测试的IPv6网络。产生于1996年底的
6BONE网络到目前已经连接了大约40个国家和地区,我国也于1999年底建立了全国性的IPv6
试验网。IPv6作为下一代的Internet协议,解决了IPv4地址枯竭的问题、简化了网络的配
置和管理,并且能够满足各种安全性、实时性和移动性业务开展的要求,使Internet焕发
出新的生机和活力。尽管IPv4过渡到IPv6还需要很长一段时间、还存在很多困难,但是
IPv6最终将取代IPv4,成为支撑下一代Internet的基石。
摘自《数据通信》
|