摘 要:IPv6是下一代互联网的核心技术,也是物联网应用的基础网络技术。那么如何配置高效而稳定的IPv6网络成为大家研究的热点问题。本文在IPv6的基础上,对主流的动态路由选择协议进行介绍,并对其作了比较。 关键词:IPv6 路由 协议 中图分类号:TP393 文献标识码:A 文章编号:1672-3791(2012)05(b)-0013-02目前,基于Internet的各种物联网应用发展迅速,由此带来的物联网终端接入量也急剧增加。而Internet当前使用的IPv4正因为自身存在的问题举步维艰。为了彻底解决IPv4存在的问题,国际互联网工程任务组从1995年开始研究下一代IP协议,即IPv6。IPv6的地址长度为128位,那么基于IPv6的路由选择协议也应相应的变化。 IPv6下的OSPFv3、RIPng和IS-ISv6路由协议都是目前较为常见的域内路由选择协议。本文将对这几种协议进行分析和比较。 1 IPv6下OSPFv3路由协议 OSPFv3即开放最短路径优先第三版(Open Shortest Path First version),在RFC2740中定义。在从IPv4~IPv6过渡的过程中,OSPFv3成为IPv6网络中的核心路由技术,下一代网络中动态路由选择中的主流协议[1]。 OSPFv3基本上延续了OSPFv2的框架,但是针对IPv6的特点进行了相应的修改,主要体现在以下几个方面。 (1)在一条链路上运行多个实例的支持。OSPFv3通过数据报头部的InstanceID支持在一条链路上运行多个OSPF的实例,而在OSPFv2中是通过数据报头部的认证字段来达到相同目的。 (2)链路本地地址的使用。OSPFv3为了实现“邻居发现”和“自动配置”,在单独的链路上使用本地链路地址,IPv6路由器不转发那些有本地链路源地址的数据包,使用路由器的链路本地IPv6地址(以FF80::/10开头)作为源地址和下一跳地址。 (3)OSPFv3还对LSA的作用进行了重新定义。在OSPFv3中,公告网络拓扑结构和IPv6 地址信息的任务被分配到新引入的和已有的LSA中。这样可以使得OSPFv3更方便地支持新型网络协议,也使得OSPFv3具有很好的通用性,只需要很少的网络升级,无需重大的协议迁移就可以提高IPv6的性能。 (4)OSPFv3还增加了多种可选功能,在报文中增加了许多可选的功能控制区域,来实现路由协议的通用性。 总之,OSPFv3与过去的协议的不同之处在于它通过提供非本身固有的安全性来简化消息的结构。通过利用IPv6报文中的安全扩展包头,OSPFv3消息可以被认证和加密。 2 Ipv6下的RIPng协议 RIPng(RIP next generation)是在RIP-2协议的基础进行的修改,是针对IPv6定义的新版本。RIP适用于小型同类网络,是一种典型的距离向量协议,在RIP路由协议下,路由器每30s定期的向其它路由器发送自己的路由表,如果在3min内没有收到相邻的路由更新报文,则将其标识为不可达;如果再过120s没有收到网络邻居的路由更新报文,则将其从路由表中删除。这个过程保证了邻居的维持性和可靠性[2]。 RIPng通过UDP报文进行路由信息的交换,使用的端 口号 为521。RIPng使用跳数来衡量到达目的地址的距离,跳数也称为度量值。在RIPng中,路由器到与它直接相连网络的跳数为0,通过一个路由器可达的网络的跳数为1,其余依此类推。为限制收敛时间,RIPng规定度量值取0~15之间的整数,大于或等于16的跳数被定义为无穷大,即目的网络或主机不可达。 RIPng保留了RIPv2的主要特征,只是在报文格式上做了相应的变动:首先,由于IPv6采用了地址前缀,因此RIPng去掉了RIPv2中的子网掩码字段。其次,RIPng将RIPv2中的下一跳字段更新成了一个下一跳RTE(路由表项)。另外,RIPv2中规定每个报文最多携带25个RTE,而RIPng不再限制该项,而是由传输介质的最大传输单元来决定。 基于距离矢量算法的路由协议会产生收敛慢和无限计数问题,这样就引发了路由的不一致。RIPng使用水平分割技术、毒性逆转技术、触发更新技术来解决这些问题。 总之,RIPng在中小规模的AS(自治系统)中仍被用作内部网关协议。 3 Ipv6下的IS-Isv6协议 IS-IS(Intermediate System to Intermediate System routing protocol,IS-IS路由协议)最初是国际标准化组织ISO为它的无连接网络协议CLNP(ConnectionLess Network Protocol)设计的一种动态路由协议[3]。IS-IS是一种链路状态协议,使用最短路径优先(Shortest Path First,SPF)算法进行路由计算。 IS-IS协议通过与自治系统(AS)内其它路由器交互路由信息,学习到整个自治系统的网络拓扑结构;并通过自治系统边界的路由器注入的其它自治系统的路由信息,得到整个Internet的路由信息。 随着IPv6网络的建设,同样需要动态路由协议为IPv6报文的转发提供准确有效的路由信息。IS-IS路由协议结合自身具有良好的扩展性的特点,实现了对IPv6网络层协议的支持,可以发现和生成IPv6路由。支持IPv6协议的IS-IS路由协议又称为IS-ISv6动态路由协议。为了支持在IPv6环境中运行,指导IPv6报文的转发,IS-ISv6通过对IS-IS进行简单的扩展使得其能够处理IPv6的路由信息。 (1)IS-ISv6新增CLV:IETF规定了IS-IS为支持IPv6所新增的内容,主要是新增两个CLV(code-length-value),以及在支持协议CLV中的NLPID字段将有一个值为0×81标识其支持IS-ISv6功能。 (2)IS-ISv6邻接关系:IS-IS使用Hello报文来发现同一条链路上的邻居路由器并建立邻接关系,当邻接关系建立完毕后,将继续周期性的发送Hello报文来维持邻接关系。为了支持IPv6路由,建立IPv6邻接关系,IS-ISv6对Hello报文进行了扩充:(1)在支持协议CLV中增加一个8bit的NLPID,表示当前路由器支持IS-ISv6功能。(2)在Hello报文中添加使能IS-ISv6功能的接口IPv6地址的CLV,Interface Address字段填入使能了IS-ISv6功能接口的IPv6链路本地地址。 4 三种协议的比较 OSPFv3新增了一些OSPFv2不具备的功能,具有了更好的通用性,也为以后的协议升级提供了便利。OSPFv3相对成熟普及、容易使用、便于维护,其通用性较好,并且可扩展。RIPng的算法比较简单,使得RIPng网络的配置与维护比较简单。它适用于网络拓扑结构相对简单且数据链路故障率极低的小型网络中,对于一般的使用对象,如网吧、学校、机关等中小型企业单位,使用这样RIPng路由器可以获得更高的经济效益。在大型网络中,一般不使用RIPng,而是使用协议相对复杂的OSPF。IS-IS在一台路由器只需运行一个进程,就可同时支持Ipv4和Ipv6的拓扑计算,资源占用少,缺点是其中任何一个协议的崩溃都会导致另一个协议的崩溃,不够灵活。 参考文献 [1] 唐拥政,周大为.基于Ipv6的路由协议的研究[J].盐城工学院学报(自然科学版),2011(1). [2] 李彦华,黄华,孙绪荣.大规模网络中两种动态路由协议的分析比较[J].科学技术与工程,2006(9):61~63. [3] 李中年.EIGRP路由协议分析研究[J].中国数据通信,2005(6):112~114.