借助bfd报文实现bgp保活信息发送的方法及路由设备的制作方法

文档序号:7857137阅读:325来源:国知局
专利名称:借助bfd报文实现bgp保活信息发送的方法及路由设备的制作方法
技术领域
本发明涉及通信技术领域,特别涉及一种借助双向转发检测(BidirectionalForwarding Detection, BFD)报文实现边界网关协议(Border Gateway Protocol, BGP)保活信息发送的方法及路由设备。
背景技术
BGP是一种用于自治系统(Autonomous System,AS)之间的动态路由协议,其中,AS是拥有同一选路策略、在同一技术管理部门下运行的一组路由设备。建立了 BGP会话连接的路由设备被称作对等体(peers or neighbors), BGP还使用保活(Keepalive)报文来监 视BGP会话的连接,即需要在设备间周期性地发送BGP保活报文,保持设备间的邻居关系。设备在实际使用BGP协议时,不仅会周期性地发送BGP保活报文,同时周期性地发送BFD报文来确认设备间是否存在故障。且BGP协议发送保活报文的频率为秒级,BFD检测报文为毫秒级甚至更小,通过BFD可以缩短故障检测时间。BFD用来检测相邻两个设备之间的通信故障。一对设备在它们之间的每条通道上周期性的发送BFD包,如果某个设备在足够长的时间内没有接收到BFD包,则认为在这条到相邻设备的双向通道的某个部分出了故障。假设路由设备A和B,A周期性向B发送BFD包,如果B在足够长的时间内没有接收到A向其发送的BFD包,确认AB间的链路上出现通信故障,则通知BGP协议,停止向A发送BGP保活报文,那么如果A在预定时间内没有接收到BGP保活报文,停止向B发送BGP保活报文。如何减少设备间的报文交互,是目前亟待解决的问题。

发明内容
本发明实施例提供了一种借助双向转发检测BFD报文实现边界网关协议BGP保活信息发送的方法,能够减少设备间的报文交互。一种借助双向转发检测BFD报文实现边界网关协议BGP保活信息发送的方法,该方法包括第一路由设备向第二路由设备发送协商BFD报文,与第二路由设备进行借助BFD报文发送BGP保活信息功能的协商,在接收到第二路由设备发送的协商BFD响应报文后,从协商BFD响应报文中获取协商标不号;第一路由设备获取并保存第二路由设备的BGP保活报文,将所述协商标示号与所述第二路由设备的BGP保活报文对应;第一路由设备根据BGP保活信息的发送周期和BFD检测报文的发送周期,计算得到在BFD报文中发送BGP保活信息的发送周期;在所述在BFD报文中发送BGP保活信息的发送周期到达时,第一路由设备向第二路由设备发送携带所述协商标示号的BFD报文,以使所述第二路由设备根据所述协商标示号从本地获取所述第一路由设备的BGP保活报文;
第二路由设备对接收到的协商BFD报文进行解析,根据对端IP地址和本端IP地址查找自身BGP协议会话表项的对应值,如果自身BGP协议会话表项中对端IP地址和本端IP地址与协商BFD报文中的值一致,则生成协商标示号;第二路由设备获取并保存第一路由设备的BGP保活报文,将所述协商标示号与所述第一路由设备的BGP保活报文对应;第二路由设备向第一路由设备发送携带所述协商标示号的协商BFD响应报文;第二路由设备根据BGP保活信息的发送周期和BFD检测报文的发送周期,计算得到在BFD报文中发送BGP保活信息的发送周期;

在所述在BFD报文中发送BGP保活信息的发送周期到达时,第二路由设备向第一路由设备发送携带所述协商标示号的BFD报文,以使所述第一路由设备根据所述协商标示号从本地获取所述第二路由设备的BGP保活报文。本发明实施例还提供了一种路由设备,能够减少设备间的报文交互。一种路由设备,该路由设备包括第一协商模块,用于向对端路由设备发送协商BFD报文,与对端路由设备进行借助BFD报文发送BGP保活信息功能的协商;接收到对端路由设备发送的协商BFD响应报文后,从协商BFD响应报文中获取协商标不号;第一存储模块,用于获取并保存对端路由设备的BGP保活报文,将所述协商标示号与所述对端路由设备的BGP保活报文对应;第一计算模块,用于根据BGP保活信息的发送周期和BFD检测报文的发送周期,计算得到在BFD报文中发送BGP保活信息的发送周期;第一发送模块,用于在所述在BFD报文中发送BGP保活信息的发送周期到达时,向对端路由设备发送携带所述协商标示号的BFD报文;第一接收模块,用于在接收到对端路由设备发送的携带所述协商标示号的BFD报文时,根据所述协商标示号从本地获取所述对端路由设备的BGP保活报文。本发明实施例还提供了一种路由设备,能够减少设备间的报文交互。一种路由设备,该路由设备包括第二协商模块,用于对接收到的协商BFD报文进行解析,根据对端IP地址和本端IP地址查找自身BGP协议会话表项的对应值,如果自身BGP协议会话表项中对端IP地址和本端IP地址与协商BFD报文中的值一致,则生成协商标示号;第二存储模块,用于获取并保存对端路由设备的BGP保活报文,将所述协商标示号与所述对端路由设备的BGP保活报文对应;第二发送模块,用于向对端路由设备发送携带所述协商标示号的协商BFD响应报文;第二计算模块,用于根据BGP保活信息的发送周期和BFD检测报文的发送周期,计算得到在BFD报文中发送BGP保活信息的发送周期;第二发送模块,还用于在所述在BFD报文中发送BGP保活信息的发送周期到达时,向对端路由设备发送携带所述协商标示号的BFD报文;第二接收模块,用于在接收到对端路由设备发送的携带所述协商标示号的BFD报文时,根据所述协商标示号从本地获取所述对端路由设备的BGP保活报文。
本发明实施例通过借助BFD检测报文传送BGP保活信息,即在设备两侧都具备借助BFD报文来传递BGP保活信息的能力后,只需要向对端设备发送携带有保活信息标示TLV, value为协商标示号的BFD报文,使得BGP协议不需要发送BGP保活报文,从而在保证BGP协议运行正常的基础上,减少了设备间的报文交互,节约了带宽。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图I为本发明实施例第一路由设备借助BFD报文实现BGP保活信息发送的方法的流程示意
图2为本发明实施例第二路由设备借助BFD报文实现BGP保活信息发送的方法的流程示意图;图3为本发明实施例第一路由设备的结构示意图;图4为本发明实施例第二路由设备的结构示意图。
具体实施例方式为使本发明的目的、技术方案、及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。本发明实施例的技术方案应用于包括第一路由设备和第二路由设备的系统中。本发明定义BFD报文的发送端为第一路由设备,BFD报文的接收端为第二路由设备,所述第一路由设备和第二路由设备互为对端路由设备,所述的“第一”和“第二”并非用于限定,而只是用于区分任意可以交互的两台路由设备。以下本发明将分别以第一路由设备和第二路由设备的报文发送过程为例,对本发明借助BFD报文实现BGP保活信息发送的方法进行说明。实施例一图I为本发明实施例第一路由设备借助BFD报文实现BGP保活信息发送的方法的流程示意图。预先在BGP协议中配置第一路由设备接口具备借助BFD报文发送BGP保活信息功能;根据与第二路由设备接口间的BGP会话,生成第一路由设备BGP协议会话表项;其中,在BGP协议中配置第一路由设备接口具备借助BFD报文发送BGP保活信息功能,就是使能第一路由设备接口具备托管能力,托管能力即借助BFD报文发送BGP保活信息功能。两路由设备接口之间需要建立有BGP会话连接,才有可能实现在BFD报文中承载BGP保活信息,所以第一路由设备接口根据与第二路由设备接口间的BGP会话,生成第一路由设备BGP协议会话表项,该表项的内容包括对端IP地址、本端IP地址、会话保持时间、会话保活时间、出接口和具有初始值的标示号,其中,会话保活时间指BGP协议中定义的BGP保活报文发送周期。可以如下表I所示,本发明实施例中具有初始值的标示号为0,当然也可以为其它任意预定值。表I
权利要求
1.一种借助双向转发检测BFD报文实现边界网关协议BGP保活信息发送的方法,其特征在于,该方法包括 第一路由设备向第二路由设备发送协商BFD报文,与第二路由设备进行借助BFD报文发送BGP保活信息功能的协商,在接收到第二路由设备发送的协商BFD响应报文后,从协商BFD响应报文中获取协商标示号; 第一路由设备获取并保存第二路由设备的BGP保活报文,将所述协商标示号与所述第二路由设备的BGP保活报文对应; 第一路由设备根据BGP保活信息的发送周期和BFD检测报文的发送周期,计算得到在BFD报文中发送BGP保活信息的发送周期; 在所述在BFD报文中发送BGP保活信息的发送周期到达时,第一路由设备向第二路由设备发送携带所述协商标示号的BFD报文,以使所述第二路由设备根据所述协商标示号从本地获取所述第一路由设备的BGP保活报文; 第二路由设备对接收到的协商BFD报文进行解析,根据对端IP地址和本端IP地址查找自身BGP协议会话表项的对应值,如果自身BGP协议会话表项中对端IP地址和本端IP地址与协商BFD报文中的值一致,则生成协商标示号; 第二路由设备获取并保存第一路由设备的BGP保活报文,将所述协商标示号与所述第一路由设备的BGP保活报文对应; 第二路由设备向第一路由设备发送携带所述协商标示号的协商BFD响应报文; 第二路由设备根据BGP保活信息的发送周期和BFD检测报文的发送周期,计算得到在BFD报文中发送BGP保活信息的发送周期; 在所述在BFD报文中发送BGP保活信息的发送周期到达时,第二路由设备向第一路由设备发送携带所述协商标示号的BFD报文,以使所述第一路由设备根据所述协商标示号从本地获取所述第二路由设备的BGP保活报文。
2.如权利要求I所述的方法,其特征在于,第一路由设备向第二路由设备发送协商BFD报文之前,该方法进一步包括 在BGP协议中配置第一 /第二路由设备接口具备借助BFD报文发送BGP保活信息功能;根据与第二 /第一路由设备接口间的BGP会话,生成第一 /第二路由设备BGP协议会话表项;所述第一 /第二路由设备BGP协议会话表项包括对端IP地址、本端IP地址、会话保持时间、会话保活时间、出接口和标示号。
3.如权利要求2所述的方法,其特征在于, 所述协商BFD报文携带的信息包括对端IP地址和本端IP地址、具有初始值的标示号以及第一路由设备BGP保活报文;所述第一路由设备获取并保存第二路由设备的BGP保活报文指从所述协商BFD响应报文中获取并保存第二路由设备的BGP保活报文; 所述协商BFD响应报文携带的信息包括所述协商标示号、对端IP地址和本端IP地址以及第二路由设备BGP保活报文;所述第二路由设备获取并保存第一路由设备的BGP保活报文指从所述协商BFD报文中获取并保存第一路由设备的BGP保活报文。
4.如权利要求2所述的方法,其特征在于,第二路由设备解析所述协商BFD报文时,如果自身已经生成协商标示号,则自身已经保存有第一路由设备BGP保活报文,该方法进一步包括第二路由设备根据解析出的第一路由设备BGP保活报文,更新已经保存的第一路由设备BGP保活报文。
5.如权利要求I所述的方法,其特征在于,该方法进一步包括 第一路由设备/第二路由设备中设置会话保持定时器,第一路由设备得到协商标示号后,启动会话保持定时器;弟~■路由设备生成协商标不号后,启动会话保持定时器; 还用于在接收到对端发送的携带有协商标示号的BFD报文,确定本地具有与其对应的协商标示号时,更新所述会话保持定时器;若在会话保持时间内没有收到携带有协商标示号的BFD报文,则会话保持定时器超时,向对端路由设备接口周期性发送BGP保活报文。
6.如权利要求I所述的方法,其特征在于,该方法进一步包括第一路由设备接口向第二路由设备接口发送能力去协商的BFD报文,通知第二路由设备取消借助BFD报文发送BGP保活信息功能。
7.—种路由设备,其特征在于,该路由设备包括 第一协商模块,用于向对端路由设备发送协商BFD报文,与对端路由设备进行借助BFD报文发送BGP保活信息功能的协商;接收到对端路由设备发送的协商BFD响应报文后,从协商BFD响应报文中获取协商标不号; 第一存储模块,用于获取并保存对端路由设备的BGP保活报文,将所述协商标示号与所述对端路由设备的BGP保活报文对应; 第一计算模块,用于根据BGP保活信息的发送周期和BFD检测报文的发送周期,计算得到在BFD报文中发送BGP保活信息的发送周期; 第一发送模块,用于在所述在BFD报文中发送BGP保活信息的发送周期到达时,向对端路由设备发送携带所述协商标示号的BFD报文; 第一接收模块,用于在接收到对端路由设备发送的携带所述协商标示号的BFD报文时,根据所述协商标示号从本地获取所述对端路由设备的BGP保活报文。
8.如权利要求7所述的路由设备,其特征在于,所述路由设备进一步包括 第一 BGP协议配置模块,用于在BGP协议中配置该路由设备接口具备借助BFD报文发送BGP保活信息功能; 第一表项生成模块,用于在所述配置之后根据与对端路由设备的BGP会话生成BGP协议会话表项,该表项包括对端IP地址、本端IP地址、会话保持时间、会话保活时间、出接口和具有初始值的标示号。
9.如权利要求7所述的路由设备,其特征在于,所述第一存储模块从所述协商BFD响应报文中获取并保存对端路由设备的BGP保活报文。
10.如权利要求7所述的路由设备,其特征在于,所述路由设备进一步包括 第一会话保持定时器控制模块,用于得到协商标示号后,启动会话保持定时器;还用于在接收到对端发送的携带有协商标示号的BFD报文,确定本地具有与其对应的协商标示号时,更新所述会话保持定时器;若在会话保持时间内没有收到携带有协商标示号的BFD报文,则会话保持定时器超时,向对端路由设备接口周期性发送BGP保活报文。
11.如权利要求8所述的路由设备,其特征在于,所述第一BGP协议配置模块,还用于去使能借助BFD报文发送BGP保活信息功能,然后通过第一协商模块向对端路由设备发送能力去协商的BFD报文,与对端路由设备进行取消借助BFD报文发送BGP保活信息功能的协商。
12.—种路由设备,其特征在于,该路由设备包括 第二协商模块,用于对接收到的协商BFD报文进行解析,根据对端IP地址和本端IP地址查找自身BGP协议会话表项的对应值,如果自身BGP协议会话表项中对端IP地址和本端IP地址与协商BFD报文中的值一致,则生成协商标示号; 第二存储模块,用于获取并保存对端路由设备的BGP保活报文,将所述协商标示号与所述对端路由设备的BGP保活报文对应; 第二发送模块,用于向对端路由设备发送携带所述协商标示号的协商BFD响应报文;第二计算模块,用于根据BGP保活信息的发送周期和BFD检测报文的发送周期,计算得到在BFD报文中发送BGP保活信息的发送周期; 第二发送模块,还用于在所述在BFD报文中发送BGP保活信息的发送周期到达时,向对端路由设备发送携带所述协商标示号的BFD报文; 第二接收模块,用于在接收到对端路由设备发送的携带所述协商标示号的BFD报文时,根据所述协商标示号从本地获取所述对端路由设备的BGP保活报文。
13.如权利要求12所述的路由设备,其特征在于,所述路由设备进一步包括 第二 BGP协议配置模块,用于在BGP协议中配置该路由设备接口具备借助BFD报文发送BGP保活信息功能; 第二表项生成模块,用于在所述配置之后根据与对端路由设备的BGP会话生成BGP协议会话表项,该表项包括对端IP地址、本端IP地址、会话保持时间、会话保活时间、出接口和具有初始值的标示号。
14.如权利要求12所述的路由设备,其特征在于,所述第二存储模块从所述协商BFD报文中获取对端路由设备的BGP保活报文。
15.如权利要求12所述的路由设备,其特征在于,所述路由设备进一步包括 第二会话保持定时器控制模块,用于生成协商标示号后,启动会话保持定时器;还用于在接收到对端发送的携带有协商标示号的BFD报文,确定本地具有与其对应的协商标示号时,更新所述会话保持定时器;若在会话保持时间内没有收到携带有协商标示号的BFD报文,则会话保持定时器超时,向对端路由设备接口周期性发送BGP保活报文。
全文摘要
本发明提供一种借助BFD报文实现BGP保活信息发送的方法及路由设备本端路由设备与对端路由设备进行借助BFD报文发送BGP保活信息功能的协商后,获取协商标示号,并互相保存对方的BGP保活报文,该协商标示号与对端路由设备保存的本端路由设备的BGP保活报文相对应;本端路由设备计算得到在BFD报文中发送BGP保活信息的发送周期后,在BFD报文中周期性地向对端路由设备发送携带协商标示号的BFD报文,以使对端路由设备根据协商标示号从本地获取本端路由设备的BGP保活报文。本发明能够减少设备间的报文交互。
文档编号H04L12/56GK102769573SQ201210270179
公开日2012年11月7日 申请日期2012年8月1日 优先权日2012年8月1日
发明者杨斌, 王海 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1