平滑重启过程中避免路由振荡的方法及平滑重启设备技术

技术编号:3542603 阅读:363 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供了一种平滑重启过程中避免路由振荡的方法及平滑重启设备,其基本思想是:在GR过程中,GR Restarter通过邻居GR Helper的帮助,将LSA地址前缀和LS ID的对应关系学习过来;在GR结束时,GRRestarter再根据学习到的对应关系重新生成包含地址前缀的LSA。利用本发明专利技术所提供的技术方案,能够在不影响系统性能和降低实现难度的前提下,实现平滑重启,避免在平滑重启过程中因LS ID发生变化而引起的路由振荡。

【技术实现步骤摘要】

本专利技术涉及路由协议中的平滑重启(GR,Graceful Restart)技术,尤其涉及平滑重启过程中避免路由振荡的方法及平滑重启设备
技术介绍
目前网络上大多数分布式设备都采用控制软件与转发软件相分离的结构,其中,控制软件负责整个设备的控制与管理,包括运行路由协议进行路由发现和路由下刷等;转发软件只负责单纯的数据转发业务,其根据控制软件的通知消息维护自己的转发表,并根据转发表进行数据转发。这两种软件分别由各自的处理器进行控制,功能上完全独立。GR是应用在控制软件与转发软件相分离的设备中的一种平滑重启技术,其通过对原有路由协议流程进行改造,使得在控制软件重启时能够保证转发业务的不中断。下面结合图1所示的应用场景对GR技术作一下简单说明。图1中,R0、R1、R2、R3都是具备GR能力的设备,R1、R2、R3和R0建立邻居关系。当R0在运行过程中发生主备倒换需要进行控制软件重启时,详细的GR过程如下:R0在运行过程中由于某种原因发生主备倒换时,R0上的转发软件仍然正常运行,其上的转发表项仍然保持稳定;R0的备板变成新的主板后,R0成为平滑重启设备(GR Restarter),进入GR Restarter处理流程,并从每个接口向外发送平滑链路状态发布(graceLSA)消息,向邻居声明将要进行GR;周边设备R1、R2、R3收到R0发送的grace LSA后,成为平滑重启帮助设备(GR Helper),进入GR Helper处理流程,这些GR Helper在GR-->过程中保持到R0的邻居关系和路由不变;之后R1、R2、R3协助R0进行路由信息同步,R0在R1、R2、R3的帮助下,通过GR Restarter处理流程重建所有邻居关系,重新获取完整的链路状态数据库(LSDB,Link-State DataBase);R0在恢复LSDB后重新进行路由计算,重新计算出GR前的所有路由。通过上述流程可见,在R0进行GR的整个过程中,R1、R2、R3等设备始终保持与R0的邻居关系和路由不变,它们仍会继续将流量送给R0进行转发,而此时由于R0上的转发软件仍然正常运行,因此R0也能正常的将R1、R2、R3等设备发过来的流量进行成功转发,从而保证了整个网络转发业务的不中断性。其中,GR Restarter通过邻居GR Helper的帮助重建LSDB的过程是由GR Helper将本地拥有的LSDB重新发送给GR Restarter来完成的。待完成LSDB同步之后,GR Restarter需要重新产生一次由本地生成的所有链路状态发布(LSA)并进行扩散,因为设备重启前后本地拓扑和路由信息有可能发生变化,如果不重新产生一次本地LSA,而以重启前生成的LSA为准,则很容易产生错误路由问题。所述LSA是协议中用来描述拓扑信息和路由信息及其它特殊用途的,按照是否携带地址前缀可分为两类,其中一类为携带地址前缀的LSA,包括Inter-Area-Prefix-LSA、Inter-Area-Router-LSA、AS-External-LSA、NSSA-LSA和Intra-Area-Prefix-LSA等;另一类为不携带地址前缀的LSA,包括Router-LSA、Network-LSA、Link-LSA和Grace-LSA等。在设备重启前后网络拓扑保持不变的情况下,为了保证整个GR过程中网络路由和数据转发的高度稳定,一般要求设备重启前后生成的包含地址前缀的LSA必须完全一致,这样在重启设备重新生成LSA并扩散之后,才不会在网络上产生路由振荡。但是,以目前的路由协议(如开放最短路径优先协议OSPF)来看,要实现上述功能存在很大的困难,因为Inter-Area-Prefix-LSA、Inter-Area-Router-LSA、AS-External-LSA、NSSA-LSA-->和Intra-Area-Prefix-LSA等这些包含地址前缀的LSA的链路状态标识(LSID)是在生成LSA时随机编号的,这种随机性的存在就导致了同一条前缀所产生的LSA在GR前后就有可能对应不同的LS ID,而不同的LS ID则会被认为是不同的LSA,这样邻居在处理这些变化了的LSA时,就会出现路由的震荡和转发的中断,并最终使GR特性失败。为更加清楚起见,下面以AS-External-LSA为例进行说明。表1示出了AS-External-LSA格式,其中,LS type、Link State ID和Advertising Router构成一个三元组,用于唯一标识一个LSA,这三个值分别表示LSA类型、LS ID和发送者的router ID;Address Prefix是对应LSA的实际内容,表示一条IPv6路由前缀;Address Prefix和LS ID没有严格的对应关系,LS ID是在生成LSA时随机编号的,用于区分同一设备产生的同种类型的不同LSA。表1假设R0的router id是1.1.1.1,它在重启前生成一个AS-External-LSA,该LSA的LS ID为0.0.0.10,描述1234::/64前缀。由于LS ID是随机编号的,因此重启后原先LS ID为0.0.0.10的LSA可能携带了其它的前缀,如1000::/64;而原先前缀1234::64对应的LS ID变成了0.0.0.1。当这样的LSA被扩散之后,如果网络上的设备根据这种LSA变化触发路由计算,则很可能会产生路由振荡,因为在现有路由协议中,为了加快路由收敛速度,收到AS-External-LSA通常采用立即计算的方法。当设备收到LS ID为0.0.0.10的LSA后,发现本地已有LS ID为0.0.0.10的LSA中携带的前缀为1234::-->/64,而新收到的LS ID为0.0.0.10的LSA携带的前缀已经变成1000::/64,则此时设备会删除1234::/64路由而重新生成1000::/64路由;而后又收到LS ID为0.0.0.1的LSA后,发现其中携带的前缀是1234::/64,则又会重新生成1234::/64路由,这样就产生了不必要的路由振荡。通过以上描述可见,为了避免GR过程中的路由振荡,保证GR前后地址前缀和LS ID对应关系的一致性至关重要。关于这一点,在现有的RFC5187 OSPFv3 Graceful Restart协议中提到了一种解决方案:在生成Inter-Area-Prefix-LSA、AS-External-LSA等包含地址前缀的LSA时,保存地址前缀和LS ID的对应关系,将对应关系备份到备板上,这样在设备GR重启后,就可以通过查找该对应关系来使得GR前后的LS ID和地址前缀保持一致。详细过程如下:设备重启前,每当生成AS-External-LSA等类型的LSA时,创建地址前缀和LS ID的映射结构,如在生成一个描述1234::/64前缀、LS ID为10的AS-External-LSA时,创建(1234::/64,10)这种地址前缀和LS ID的对应关系;主板将对应关系(1234::/64,10)备份到备板,备板保存该对应关系;因某种原因设备发生GR重启,备板成为新的主板;新主板生成地址前缀为1234::\本文档来自技高网...

【技术保护点】
平滑重启过程中避免路由振荡的方法,其特征在于,该方法包括: 平滑重启过程中,平滑重启设备GR Restarter接收平滑重启帮助设备GR Helper发来的LSA,并在收到自身在平滑重启前产生的携带地址前缀的链路状态发布LSA后, 获取LSA中携带的地址前缀和链路状态标识LS ID,建立地址前缀和LS ID的对应关系; 平滑重启结束时,GR Restarter重新生成自身的LSA,在生成的LSA包含地址前缀时,通过建立的地址前缀和LS ID的对应关系找到 与该地址前缀对应的LS ID,然后根据找到的LS ID重新生成LSA。

【技术特征摘要】
1、平滑重启过程中避免路由振荡的方法,其特征在于,该方法包括:平滑重启过程中,平滑重启设备GR Restarter接收平滑重启帮助设备GRHelper发来的LSA,并在收到自身在平滑重启前产生的携带地址前缀的链路状态发布LSA后,获取LSA中携带的地址前缀和链路状态标识LS ID,建立地址前缀和LS ID的对应关系;平滑重启结束时,GR Restarter重新生成自身的LSA,在生成的LSA包含地址前缀时,通过建立的地址前缀和LS ID的对应关系找到与该地址前缀对应的LS ID,然后根据找到的LS ID重新生成LSA。2、根据权利要求1所述的方法,其特征在于,所述GR Restarter根据LSA中携带的Advertising Router字段确认LSA是否由自身在平滑重启前产生。3、根据权利要求1所述的方法,其特征在于,该方法进一步包括:在平滑重启过程中,GR Restarter按照现有协议流程处理收到的不携带地址前缀的LSA;在平滑重启结束时,GR Restarter按照现有协议流程重新生成不包含地址前缀的LSA。4、根据权利要求1所述的方法,其特征在于,所述地址前缀和LS ID的对应关系存放在radix树中,该树以地址前缀为主键。5、根据权利要求4所述的方法,其特征在于,各种类型...

【专利技术属性】
技术研发人员:张长君钱雪彪郭强李世钊
申请(专利权)人:杭州华三通信技术有限公司
类型:发明
国别省市:86[中国|杭州]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1