一种链路检测报文发送方法及装置制造方法及图纸

技术编号:14514466 阅读:136 留言:0更新日期:2017-02-01 15:47
本发明专利技术实施例公开了一种链路检测报文发送方法及装置,方法包括:与对端设备进行时间协商,确定对对端设备的检测时间;获得封装至链路层的第一链路检测报文;当检测时间大于或等于路由切换时间时,获得第一链路检测报文中封装的目的IP地址;在已存储的IP路由中,查找目的IP地址对应的IP路由;按照查找到的IP路由,重新封装第一链路检测报文,发送重新封装后的第二链路检测报文至对端设备;当检测时间小于路由切换时间时,依据链路层所包括的出接口信息发送第一链路检测报文。应用本发明专利技术实施例以实现根据检测时间,灵活地选择报文的发送方式。

【技术实现步骤摘要】

本专利技术涉及链路检测领域,特别涉及一种链路检测报文发送方法及装置
技术介绍
BFD(BidirectionalForwardingDetection,双向转发检测)是一种全网统一的检测机制,用于快速检测、监控网络中链路或者IP路由的转发连通状况,保证能够快速检测到BFD邻居设备之间的通信故障,以使通信故障的BFD邻居设备之间能够快速建立起备用通道,恢复通信,保证业务持续运行。为实现快速检测,BFD尽量减少报文发送流程中的时间消耗,采用提前封装报文,调用底层接口函数,从确定出的出接口发送封装好的BFD报文的方式,以达到快速检测的目的。每个BFD报文的封装过程都相同,对同一个BFD会话,封装报文越完整,其在报文发送过程中消耗在封装报文的时间越低,检测速度就越快。现有技术中,一种方法:根据报文中的IP地址信息进行转发。将BFD报文封装到IP头,发送时查找与该封装到IP头的BFD报文的目的IP地址对应的IP路由,确定出对应的IP路由后,根据所确定出的IP路由,封装完成该BFD报文并发送。这种方法解决了报文发送时链路选择的灵活性的问题,但发送过程中,报文还需进行多次封装,所耗费时间较长,无法满足检测时间很短时报文的发送要求。另一种方法:根据报文中的链路层信息进行转发。设备将BFD报文直接封装到链路层,形成完整封装的BFD报文,每次发送报文时,无需再添加信息,直接根据报文中链路层信息对应的出接口发送该完整封装的BFD报文,以达到快速检测的目的。然而,将BFD报文直接封装到链路层,虽然提高了发送效率,达到快速检测的目的,由于报文是已经封装好的,当链路路由发生变化时,其无法重新选择传输链路,该完整封装的BFD报文会一直通过封装时所选择链路进行传输,失去了报文发送时链路选择的灵活性,可能会导致邻居设备之间链路连通状况的误判。如图1所示,设备RTA和设备RTC建立BFD邻居,设备RTA到设备RTB有链路A和链路B两条等价链路。完整封装的BFD报文所选的发送链路中,设备RTA到设备RTB的报文走链路A。当链路A故障,路由切换,完整封装的BFD报文只能通过链路A发送,无法自动选择链路B,此时,该完整封装的BFD报文就会一直无法到达设备RTB和设备RTC,设备RTC在预定时间内未接收到该完整封装的BFD报文,会认为与设备RTA建立的BFD邻居断开。这种情况下,就导致了设备RTA和RTB两个邻居设备之间链路连通状况的误判。设备在配置了其中一种方法发送BFD报文后,仅能通过该配置的方法发送BFD报文,缺乏灵活性。
技术实现思路
本专利技术实施例公开了一种链路检测报文发送方法及装置,以实现链路检测报文发送方式的灵活选择。具体方案如下:一方面,本专利技术实施例提供了一种链路检测报文发送方法,所述方法包括:与对端设备进行时间协商,确定对对端设备的检测时间;获得封装至链路层的第一链路检测报文,其中,所述链路层包括发送所述第一链路检测报文的出接口信息;当所述检测时间大于或等于路由切换时间时,获得所述第一链路检测报文中封装的目的IP地址;在已存储的IP路由中,查找所述目的IP地址对应的IP路由;按照查找到的IP路由,重新封装所述第一链路检测报文,发送重新封装后的第二链路检测报文至对端设备;当所述检测时间小于所述路由切换时间时,依据所述出接口信息发送所述第一链路检测报文。可选的,所述方法还包括:在依据所述出接口信息发送所述第一链路检测报文的过程中,检测所述目的IP地址对应的IP路由的切换状态;当检测到所述目的IP地址对应的IP路由出现切换情况时,根据切换后的IP路由,重新封装所述第一链路检测报文,发送重新封装后的第三链路检测报文至所述对端设备。可选的,所述第一链路检测报文为双向转发检测BFD报文;所述与对端设备进行时间协商,确定对对端设备的检测时间的步骤包括:与所述对端设备建立BFD会话;接收所述对端设备发送的协商报文;从所述协商报文中获得对端设备配置的接收时间间隔;根据自身配置的发送时间间隔、所述接收时间间隔以及预设的检测时间确定公式,确定所述检测时间;其中,所述检测时间确定公式为:T1=MAX[t1,t2]*c;所述T1表示检测时间;所述t1表示所述发送时间间隔;所述t2表示所述接收时间间隔;该c表示预设的检测倍数。可选的,所述方法还包括:接收所述对端设备发送的第一置位报文,其中,所述第一置位报文携带所述对端设备配置的新的接收时间间隔;根据所述发送时间间隔和所述新的接收时间间隔,更新检测时间;重新执行所述获得封装至链路层的第一链路检测报文的步骤。可选的,所述方法还包括:当检测到所述发送时间间隔发生变化时,发送第二置位报文至所述对端设备,所述第二置位报文中包含变化后的新的发送时间间隔;根据所述新的发送时间间隔和所述接收时间间隔,更新检测时间;重新执行所述获得封装至链路层的第一链路检测报文的步骤。另一方面,本专利技术实施例提供了一种链路检测报文发送装置,所述装置包括:确定模块,用于与对端设备进行时间协商,确定对对端设备的检测时间;第一获得模块,用于获得封装至链路层的第一链路检测报文,其中,所述链路层包括发送所述第一链路检测报文的出接口信息;第二获得模块,用于当所述检测时间大于或等于路由切换时间时,获得所述第一链路检测报文中封装的目的IP地址;查找模块,用于在已存储的IP路由中,查找所述目的IP地址对应的IP路由;第一发送模块,用于按照查找到的IP路由,重新封装所述第一链路检测报文,发送重新封装后的第二链路检测报文至对端设备;第二发送模块,用于当所述检测时间小于所述路由切换时间时,依据所述出接口信息发送所述第一链路检测报文。可选的,所述装置还包括:检测模块,用于在依据所述出接口信息发送所述第一链路检测报文的过程中,检测所述目的IP地址对应的IP路由的切换状态;第三发送模块,用于当检测到所述目的IP地址对应的IP路由出现切换情况时,根据切换后的IP路由,重新封装所述第一链路检测报文,发送重新封装后的第三链路检测报文至所述对端设备。可选的,所述第一链路检测报文为双向转发检测BFD报文;所述确定模块包括:会话建立单元,用于与所述对端设备建立BFD会话;接收单元,用于接收所述对端设备发送的协商报文;获得单元,用于从所述协商报文中获得对端设备配置的接收时间间隔;确定单元,用于根据自身配置的发送时间间隔、所述接收时间间隔以及预设的检测时间确定公式,确定所述检测时间;其中,所述检测时间确定公式为:T1=MAX[t1,t2]*c;所述T1表示检测时间;所述t1表示所述发送时间间隔;所述t2表示所述接收时间间隔;该c表示预设的检测倍数。可选的,所述装置还包括:接收模块,用于接收所述对端设备发送的第一置位报文,其中,所述第一置位报文携带所述对端设备配置的新的接收时间间隔;第一更新模块,用于根据所述发送时间间隔和所述新的接收时间间隔,更新检测时间;触发所述第一获得模块。可选的,所述装置还包括:第四发送模块,用于当检测到所述发送时间间隔发生变化时,发送第二置位报文至所述对端设备,所述第二置位报文中包含变化后的新的发送时间间隔;第二更新模块,用于根据所述新的发送时间间隔和所述接收时间间隔,更新检测时间;触发所述第一获得模块。在本专利技术实施例中,与对端设备进行时间协商,确定对本文档来自技高网
...

【技术保护点】
一种链路检测报文发送方法,其特征在于,所述方法包括:与对端设备进行时间协商,确定对对端设备的检测时间;获得封装至链路层的第一链路检测报文,其中,所述链路层包括发送所述第一链路检测报文的出接口信息;当所述检测时间大于或等于路由切换时间时,获得所述第一链路检测报文中封装的目的IP地址;在已存储的IP路由中,查找所述目的IP地址对应的IP路由;按照查找到的IP路由,重新封装所述第一链路检测报文,发送重新封装后的第二链路检测报文至对端设备;当所述检测时间小于所述路由切换时间时,依据所述出接口信息发送所述第一链路检测报文。

【技术特征摘要】
1.一种链路检测报文发送方法,其特征在于,所述方法包括:与对端设备进行时间协商,确定对对端设备的检测时间;获得封装至链路层的第一链路检测报文,其中,所述链路层包括发送所述第一链路检测报文的出接口信息;当所述检测时间大于或等于路由切换时间时,获得所述第一链路检测报文中封装的目的IP地址;在已存储的IP路由中,查找所述目的IP地址对应的IP路由;按照查找到的IP路由,重新封装所述第一链路检测报文,发送重新封装后的第二链路检测报文至对端设备;当所述检测时间小于所述路由切换时间时,依据所述出接口信息发送所述第一链路检测报文。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:在依据所述出接口信息发送所述第一链路检测报文的过程中,检测所述目的IP地址对应的IP路由的切换状态;当检测到所述目的IP地址对应的IP路由出现切换情况时,根据切换后的IP路由,重新封装所述第一链路检测报文,发送重新封装后的第三链路检测报文至所述对端设备。3.根据权利要求1或2所述的方法,其特征在于,所述第一链路检测报文为双向转发检测BFD报文;所述与对端设备进行时间协商,确定对对端设备的检测时间的步骤包括:与所述对端设备建立BFD会话;接收所述对端设备发送的协商报文;从所述协商报文中获得对端设备配置的接收时间间隔;根据自身配置的发送时间间隔、所述接收时间间隔以及预设的检测时间确定公式,确定所述检测时间;其中,所述检测时间确定公式为:T1=MAX[t1,t2]*c;所述T1表示检测时间;所述t1表示所述发送时间间隔;所述t2表示所述接收时间间隔;该c表示预设的检测倍数。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:接收所述对端设备发送的第一置位报文,其中,所述第一置位报文携带所述对端设备配置的新的接收时间间隔;根据所述发送时间间隔和所述新的接收时间间隔,更新检测时间;重新执行所述获得封装至链路层的第一链路检测报文的步骤。5.根据权利要求3所述的方法,其特征在于,所述方法还包括:当检测到所述发送时间间隔发生变化时,发送第二置位报文至所述对端设备,所述第二置位报文中包含变化后的新的发送时间间隔;根据所述新的发送时间间隔和所述接收时间间隔,更新检测时间;重新执行所述获得封装至链路层的第一链路检测报文的步骤。6.一种链路检测报文发送装置,其特征在于,所述装置包括:确定模块,用于与对端...

【专利技术属性】
技术研发人员:顾斌
申请(专利权)人:杭州华三通信技术有限公司
类型:发明
国别省市:浙江;33

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

1