徐贵宝
——IPv6地址结构体系研究的进展与地址分配策略
一、引言
下一代网络(NGN)是以IP为中心,支持语音、数据和多媒体业务的全业务网络。因此,IP协议的研究对下一代网络的发展至关重要。然而,IPV4已经很难独自担当起支撑下一代网络发展的重任。相对于IPv4而言,IPv6改进了许多功能,如单播和组播地址空间、任意广播地址、分层路由的集体寻址等。通过这些改进,IPv6扩大了地址空间,提高了网络的整体吞吐量,改善了服务质量和安全性,增强了对即插即用和移动性的支持,更好地实现了多播功能,从而使IPv6成为下一代网络的基础。目前,IETF及相关机构正在努力完善IPv6地址结构体系和地址分配策略,使之能更好地为下一代网络服务。
二、IPv6地址结构体系研究的进展
RFC3513是IETF最近公布的IPv6地址结构体系,该体系取消了早期公布的RFC2373。虽然在RFC3513中保留了RFC2373的部分内容,IPv6地址仍分为单播、任播、组播三种类型,地址和地址前缀的表示方法也未变,但在其它许多方面作了重大调整。另外,IETF还在RFC3587公布了新的IPv6全球单播地址格式,并取消了RFC2374。
1.大大扩展了全球单播地址空间
在RFC3513中,IETF对IPv6的地址类型及其所占地址空间的比重进行了重新调整,调整的结果如表1所示。
表1 IPv6的地址类型及其所占地址空间的比重
地址类型
|
二进制前缀
|
IPv6符号
|
占地址空间的比重
|
不确定型
|
00…0(128位)
|
∷/128
|
1/2128
|
环回
|
00…1(128位)
|
∷1/128
|
1/2128
|
组播
|
11111111
|
FF00∷/8
|
1/256
|
本地链路单播
|
1111111010
|
FF80∷/10
|
1/1024
|
本地站点单播
|
1111111011
|
FFCO∷/10
|
1/1024
|
全球单播
|
(所有其他)
|
|
|
通过与RFC2373对比可知,RFC3513取消了为NSAP和IPX等保留的地址,将原来的保留地址全部划入了全球单播地址的行列,从而大大扩展了全球单播地址的空间。
2.给出了新的全球单播地址格式
RFC3513给出了新的IPv6全球单播地址通用格式,见图1。
n bits
|
m bits
|
128-n-m bits
|
全球路由前缀
|
子网ID
|
接口ID
|
图1 新的IPv6全球单播地址的通用格式
在图1中,全球路由前缀是分配给站点(一组子网/链接)的一个典型层次结构值,子网ID是一个站点内子网的标识。全球路由前缀由RIR和ISP设计为分层结构,子网域由站点管理员设计为分层结构。在RFC3513中还删除了格式前缀(FP)这个术语,以保证执行简便,而不需要掌握任何有全球单播格式前缀的知识。
由于RFC3513要求所有的单播地址(除了以二进制00O开头的地址外)有64位接口ID并具有改进EUI-64格式的结构(以二进制000开头的全球单播地址在接口标识大小和结构方面没有这个限制),即要求n+m=64,为进一步明确IPv6全球单播地址格式,RFC3587给出了新的格式,见图2。
n bits
|
64-n bits
|
64 bits
|
全球路由前缀
|
子网ID
|
接口ID
|
图2 RFC3587给出的IPv6全球单播地址新格式
RFC3513亦规定,IANA对IPv6全球单播地址的空间分配权限只局限于以二进制001开头的地址范围。RFC3587虽废除了RFC2374中全球可聚集单播地址的前缀格式001,但同时又指出,只有001前缀格式供IANA分配,其余的全球单播地址空间(大约是IPv6地址空间的85%)要保留下来,以备将来定义和使用,暂时不再由IANA分配。所以,由IANA代理、与RFC3177中的建议相一致的2000∷/3前缀的全球单播地址就成了如图3所示的格式。
3 bits
|
45 bits
|
16 bits
|
64 bits
|
001
|
全球路由前
缀
|
子网ID
|
接口ID
|
图3 IANA代理的2000∷/3前缀的IPv6全球单播地址格式
根据RFC3177,RFC3513和RFC3587,并结合目前LIR的分配情况,可将IANA有权分配的全球单播地址格式表示为图4所列的形式。
3
|
45
|
16
|
64
|
001
|
29 bits
|
16 bits
|
16 bits
|
64 bits
|
LIR/32
|
|
|
|
客户站点/48
|
|
|
子网/64
|
|
设备/128
|
图4 IANA有权分配的IPv6全球单播地址格式
从该格式可以看出,在IANA有权分配的地址空间中,前三个比特是固定的,29比特地址空间分配给各LIR,LIR可将后面的16比特地址空间分配给客户站点。这样,客户站点前缀即为48比特,并具有16比特的子网划分空间。
3.进一步明确了本地使用的IPv6单播地址
本地使用的单播地址有两种,分别是链路本地地址和站点本地地址。
链路本地地址格式见图5。
10 bits
|
54 bits
|
64 bits
|
1111111010
|
0
|
接口ID
|
图5 链路本地地址格式
链路本地地址用于单个链接,可进行自动地址配置、邻居发现或在没有路由器时进行单个链接编址。RFC3513规定,路由器不能转发任何到达其他链路的具有链路本地源或目的地址的包。站点本地地址格式见图6。
10 bits
|
54 bits
|
64 bits
|
1111111011
|
子网ID
|
接口ID
|
图6 站点本地地址格式
站点本地地址用于单个站点,即用于不需要全球前缀站点的内部编址。尽管子网ID可以长达54位,但最好还是保证全球链接站点能在站点本地前缀和全球前缀中使用相同的子网ID。RFC3513规定,路由器不能转发站点以外的任何具有站点本地源或目的地址的包。
4.巩固了IPv4和IPv6联合应用的基础
在RFC3513进一步明确了“内嵌IPv4地址的IPv6地址”的概念。“内嵌IPv4地址的IPv6地址”包括“IPv4兼容的IPv6地址”和“IPv4映射的IPv6地址”。“IPv4兼容的IPv6地址”的格式如图7所示。
80 bits
|
16 bits
|
32 bits
|
0000………………0000
|
0000
|
IPv4地址
|
图7 IPv4兼容的IPv6地址格式
这里使用的IPv4地址必须是全球唯一IPv4单播地址。“IPv4映射的IPv6地址”用于代表IPv4节点的IPv6地址,其格式如图8所示。
80 bits
|
16 bits
|
32 bits
|
0000………………0000
|
FFFF
|
IPv4地址
|
图8 IPv4映射的IPv6地址格式
IPv4兼容地址和IPv4映射地址用于与传统网络之间的互联互通,以使IPv4网络和IPv6网络之间能进行无缝通信。
三、地址注册机构的IPv6地址分配策略
虽然新的IPv6地址结构已经发布,但还没有相应的新的地址分配策略出台,地址分配仍沿用按RFC3177制定的分配方法(RIPE-267)。
目前,IPv6的地址空间管理是按规定的等级结构在全球范围内分配,即IANA->区域注册机构RIR(->国家注册机构NIR)->ISP/本地注册机构LIR->最终用户(或ISP)。地址分配的方法分为两种。一种是上层注册机构将抵制划分给下层注册机构进行管理,称为分配。另一种是注册机构将地址划分给用户使用,称为指派。为了互联网发展的长期利益,IETF将IPv6地址空间管理的目标确定为保证世界范围内的唯一性、统一在注册数据库中注册、尽最大可能保证易聚合、避免无谓的空间浪费、分配公平公正及注册管理开销的最小化等。上面所描述的这些管理目标经常相互冲突或与某些注册机构(IR)个体及终端用户的需要相冲突,故必须寻求申请者的需要与整个互联网社区的需要之间相互平衡,并能正确地判断出哪方面的需要更为重要。一般情况下,在IPv6地址分配策略中,聚合的目标被认为是最重要的。
此外,IPv6地址空间管理还要遵循如下基本原则:
·不能把地址空间当作私有财产。IPv6单播地址空间只能凭许可证使用而不能拥有。尤其IP地址是基于许可机制进行分配和指派的,许可证需进行周期性更新。许可证的批准取决于其初次申请或续借申请时的特殊要求。
·不能保证路由的可选性。即不能保证所分配的任何地址在全球范围都能进行路由选择。因此,要求RIR采取措施减少产生地址空间碎片的可能性,以避免路由的可选性受影响。
·IPv6地址空间的最小地址分配块为32比特。RIR使用最小地址块进行IPv6地址分配,这样做的目的是为了使基于前缀的过滤更加容易。对于已经持有IPv6地址空间的组织,也就是那些已经按照原有分配策略获得35比特IPv6地址的注册机构,一般不需要提供证明文件就可以直接将他们所分配的地址扩展到32比特。该32比特地址块包含已经分配的地址块(多数情况下为一个或多个35比特地址块),RIR已经将这些地址预留给原有组织以进行后续分配。超过最小地址块(32比特)的额外地址空间的申请需要在评估后再决定是否分配。
·兼顾原有IPv4基础设施。已有的IPv4服务提供商由现有业务向IPv6过渡而申请IPv6地址空间时,可将现在IPv4客户数一并考虑。
LIR在将地址空间指派给用户时,要按照已有的RFC3177操作,即通常情况下,采用48比特进行分配,除非特大客户;已知一个且仅有一个子网需要设计时,采用64比特进行分配;仅有一个设备连接时,采用比特进行分配。
四、IPv6地址分配策略发展趋势
根据最新的IPv6地质结构体系的特点,结合目前地址分配的现状,可以看出IPv6地址分配策略正在向如下的趋势发展:
1.有利于市场推广和商业应用
虽然IPv6有许多IPv4所不具备的优点,但是我们也已经看到,IPv6的市场推广工作非常令人不满意。一方面的原因在于,IPv6并没有为用户带来所期望获得的好处:另一方面的原因也在于,在IPv6的地址申请时有较多的繁琐细节,用户认为暂时没有必要去找那些麻烦。
正如RFC3177中指出,IPv6地址空间决不是像IPv4地址空间那样有限,本来由于其他的原因就已经使得IPv6的市场非常低迷了,而毫无理由的保留行为更加重了其低进的程度。因此从市场前途方面来考虑,也应该使用户或ISP很容易地获得与他们实际所需的数量一样多的IPv6地址,而不期望其立即使用这些地址或度量其使用效率有多么低。这样,通过减少跟踪和评估的紧迫性,使得注册操作更高效、更集中。在当前的地址分配策略中(RIPE-267)中规定,分给小企业或大企业一个48比特地址,而且可以为特大客户分一个47比特或更短前缀的地址、或者是多个48比特地址;再加上RFC3513和RFC3587这两个文档,用户可以非常容易地改变ISP,在申请地址空间时也不再需要费力地阐述自己是否有正当的理由来申请这些地址。所有这些都有市场推广和商业应用方面的考虑。
2.便于移动、需时即连或永远在线
目前,移动通信网络的需求已经越来越大,如移动电话、汽车办公等等;而随着蓝芽技术等的出现,使得需时即连或永远在线都成为可能,并已经成为网络用户发展的新趋势。在RFC3177中,已经建议为移动用户分配一个静态64位前缀地址,以便多个设备通过一个子网进行联接;而对于那些有需时即连或永远在线的家庭网络客户则分给一个48位地址。
3.便于管理与应用
随着网络应用的发展,网络规模越来越大,网络结构也越来越复杂,即使是比较简单的功能,实现起来可能也会由于地址结构的原因而非常繁琐。比如,在站点从一个前缀换到另一个前缀的简单操作(包括两个前缀并列运行)的整个过程中,如果前缀长度不同(与站点的大小和复杂性有关),操作就会极为复杂。而如果用户已经采用6to4技术建立了自己的网络,需要改变网络前缀时,地址迁移也是一个非常复杂的工作。
为了尽量减少上述类似的情况发生,避免给管理和应用带来不必要的麻烦,IETF正努力从地址划分的技术上解决这些问题。在RFC3177中就提供了一种方法,就是将地址前缀分界固定为48比特,这样就可以保证用户在改变即时不需要高昂代价进行子网重构与合并。在RFC3513新给出的地址结构中,全球路由前缀使用类似CIDR的结构。而通过RFC3513和RFC3587两个文件,使得每个用户(除了大用户和移动节点外,不管是公司用户还是个人用户)都可以获得48比特前缀和16比特子网空间,而且还简化多了多穴网络和多穴主机的情形。
4.考虑用户网络的服务质量保证
虽然互联网络是一个“尽力而为”的网络,但并不能由此就认为它不考虑对用户的。在RIPE-267中规定,RIR必须采取措施,减少产生地址空间碎片的可能性,以免导致可路由性损失;而在IPv6地址策略中,把聚合作为最重要的目标,也正是基于这一点地考虑。目前,IETF正在寻找不过度损失路由聚集和/或最优路由选择的方法,以解决IPv6多穴网络的路由质量问题。
五、结束语
IPv6协议庞大的地址空间为下一代网络的发展奠定了坚实的基础。IETF及相关机构正在努力挖掘其巨大潜力,不断地完善其地址结构体系和地址分配策略,使之能在市场方面取得成功,并在应用方面为用户提供完美的服务。我们已经看到,这些努力已经取得了相当大的成绩,IPv6网络相关技术研究已经在世界范围内轰轰烈烈地开展起来,有些国家甚至已经开始商用。我们相信,随着IPv6技术的不断成熟,IPv6网络的商用化进程将会不断加快,必将会大大地推动下一代网络的发展。
摘自 泰尔网
|