CN106375143B - 一种链路检测报文发送方法及装置 - Google Patents
一种链路检测报文发送方法及装置 Download PDFInfo
- Publication number
- CN106375143B CN106375143B CN201610754964.4A CN201610754964A CN106375143B CN 106375143 B CN106375143 B CN 106375143B CN 201610754964 A CN201610754964 A CN 201610754964A CN 106375143 B CN106375143 B CN 106375143B
- Authority
- CN
- China
- Prior art keywords
- detection
- message
- sending
- link
- time
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0811—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
Abstract
本发明实施例公开了一种链路检测报文发送方法及装置,方法包括:与对端设备进行时间协商,确定对对端设备的检测时间;获得封装至链路层的第一链路检测报文;当检测时间大于或等于路由切换时间时,获得第一链路检测报文中封装的目的IP地址;在已存储的IP路由中,查找目的IP地址对应的IP路由;按照查找到的IP路由,重新封装第一链路检测报文,发送重新封装后的第二链路检测报文至对端设备;当检测时间小于路由切换时间时,依据链路层所包括的出接口信息发送第一链路检测报文。应用本发明实施例以实现根据检测时间,灵活地选择报文的发送方式。
Description
技术领域
本发明涉及链路检测领域,特别涉及一种链路检测报文发送方法及装置。
背景技术
BFD(Bidirectional Forwarding Detection,双向转发检测)是一种全网统一的检测机制,用于快速检测、监控网络中链路或者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路由,重新封装第一链路检测报文,发送重新封装后的第二链路检测报文至对端设备;当检测时间小于路由切换时间时,依据链路层所包括的出接口信息发送第一链路检测报文。可见,本发明实施例实现了针对封装至链路层的报文,根据检测时间与路由切换时间的大小,可以从采用根据链路层的出接口信息发送报文的方式变换为采用根据IP地址信息发送报文的方式,提高了报文发送的灵活性。
另外,检测时间越短,设备运行的压力越大。当检测时间大于路由切换时间时,设备运行压力不大,这种情况下,如果IP路由发生切换,由于检测时间大于路由切换时间,发送第一链路检测报文时,可以检测到IP路由的变化情况,此时,则已经完成了路由切换,因此可以按照切换后的IP路由,重新封装第一链路检测报文,发送重新封装后的第二链路检测报文,保证了链路检测报文的正常发送。当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中,IP路由发生变化的情况的示意图;
图2为本发明实施例所提供的一种链路检测报文发送方法的流程示意图;
图3为本发明实施例所提供的一种检测时间确定方法的流程示意图;
图4为本发明实施例所提供的一种链路检测报文发送装置的结构示意图;
图5为图4中所述的确定模块的一种结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种链路检测报文发送方法及装置,以实现根据检测时间,灵活地选择报文的发送方式。
如图2所示,本发明实施例所提供的链路检测报文发送方法,可以包括步骤:
S201:与对端设备进行时间协商,确定对对端设备的检测时间;
其中,该设备与对端设备可以是路由设备或交换机设备等。
在一种具体实现方式中,所述第一链路检测报文可以为双向转发检测BFD报文;
如图3所示,所述与对端设备进行时间协商,确定对对端设备的检测时间的步骤包括:
S301:与该对端设备建立BFD会话;
S302:接收该对端设备发送的协商报文;
S303:从该协商报文中获得对端设备配置的接收时间间隔;
S303:根据自身配置的发送时间间隔、该接收时间间隔以及预设的检测时间确定公式,确定检测时间;
其中,所述检测时间确定公式为:
T1=MAX[t1,t2]*c;
所述T1表示检测时间;所述t1表示所述发送时间间隔;所述t2表示所述接收时间间隔;该c表示预设的检测倍数。
可以理解的是,与现有技术相同,BFD检测机制启动后,根据上层协议,设备与作为邻居的对端设备建立BFD会话。其中,上层协议可以包括路由协议、MPLS(Multi-ProtocolLabel Switching,多协议标签交换协议)等。在接收到对端设备发送的协商报文后,根据协商报文中所携带的接收时间间隔以及自身配置的发送时间间隔,进行时间协商,确定针对对端设备的检测时间。并且,该协商报文标识设备与对端设备之间的BFD会话处于连接状态。其中,该协商报文可以为BFD报文。
其中,该检测倍数c一般为无符号整型(如unsigned char类型),并且,该检测倍数c的取值范围一般在1到255之间。
S202:获得封装至链路层的第一链路检测报文,其中,所述链路层包括发送所述第一链路检测报文的出接口信息;
设备与对端设备之间,确定完检测时间后,对链路检测报文进行完整封装,其中,该完整封装可以理解为对链路检测报文封装到链路层,生成第一链路检测报文。其中,将链路检测报文直接封装至链路层,由于该链路层中包含发送第一链路检测报文的出接口信息,使得在每次发送报文时,无需再添加其他信息,可以直接将第一链路检测报文从对应的出接口发送出去,可以节省报文封装时间。其中,对报文的封装过程与现有技术相同,在此不做赘述。
S203:当所述检测时间大于或等于路由切换时间时,获得所述第一链路检测报文中封装的目的IP地址;
可以理解的是,本发明实施例中,可以首先获得自身配置的路由切换时间,在链路发生切换的情况下,在该路由切换时间内,可以完成IP路由的切换。其中,该路由切换时间可以通过设备根据自身的配置信息默认确定,也可以由用户根据实际需求,通过修改设备的配置信息确定。
当检测时间大于或等于路由切换时间时,在检测时间内,可以检测到IP路由的切换状态,此时,可以首先获得该第一链路检测报文中封装的目的IP地址,根据该目的IP地址,进行后续的链路检测报文发送流程。
S204:在已存储的IP路由中,查找该目的IP地址对应的IP路由;
举例来说,如图1所示,从设备RTA到设备RTC的有两条路可以走,一条为:设备RTA通过链路A到达设备RTB,再通过设备RTB到达设备RTC;另一条为:设备RTA通过链路B到达设备RTB,再通过设备RTB到达设备RTC。设备RTA所存储的IP路由可以包括:目的IP地址为设备RTC的地址,下一跳为设备RTB的端口1的地址(出接口);目的IP地址为设备RTC的地址,下一跳为设备RTB的端口2的地址(出接口)。
假设,针对设备RTA所要发送的第一链路检测报文的目的IP地址为设备RTC的地址,该第一链路检测报文所封装的链路为链路A;当链路A故障,路由切换至链路B,此时,设备RTA从已存储的IP路由中,查找该目的IP地址对应的IP路由为:目的IP地址为设备RTC的地址,下一跳为设备RTB的端口2的地址。按照查找到的IP路由,进行后续的链路检测报文发送流程。
其中,路由切换过程与现有技术相同,在此不做赘述。
S205:按照查找到的IP路由,重新封装该第一链路检测报文,发送重新封装后的第二链路检测报文至对端设备;
从设备已存储的IP路由中,查找该目的IP地址所对应的IP路由(能够发送第一链路检测报文的IP路由),按照查找到的IP路由,重新封装该第一链路检测报文,发送该重新封装后的第二链路检测报文至对端设备,其中,该IP路由可以存储于设备的IP路由转发表中。
S206:当该检测时间小于所述路由切换时间时,依据该出接口信息发送第一链路检测报文。
由于检测时间小于路由切换时间,在检测时间内检测不到IP路由的切换状态,即使发生了IP路由的切换,设备也来不及重新选择合适的发送第一链路检测报文的IP路由。此时,可以直接依据链路层所包括的出接口信息发送第一链路检测报文。
根据检测时间,灵活地选择报文的发送方式,既保证了检测时间短(相对于预设的路由切换时间)时,高效的报文的发送;又兼顾了检测时间较长(相对于预设的路由切换时间)时,检测的准确性,减少误判的情况的发生。
应用本发明实施例,与对端设备进行时间协商,确定对对端设备的检测时间;获得封装至链路层的第一链路检测报文;当检测时间大于或等于路由切换时间时,获得第一链路检测报文中封装的目的IP地址;在已存储的IP路由中,查找目的IP地址对应的IP路由;按照查找到的IP路由,重新封装第一链路检测报文,发送重新封装后的第二链路检测报文至对端设备;当检测时间小于路由切换时间时,依据链路层所包括的出接口信息发送第一链路检测报文。可见,本发明实施例实现了针对封装至链路层的报文,根据检测时间与路由切换时间的大小,可以从采用根据链路层的出接口信息发送报文的方式变换为采用根据IP地址信息发送报文的方式,提高了报文发送的灵活性。
另外,检测时间越短,设备运行的压力越大。当检测时间大于路由切换时间时,设备运行压力不大,这种情况下,如果IP路由发生切换,由于检测时间大于路由切换时间,发送第一链路检测报文时,可以检测到IP路由的变化情况,此时,则已经完成了路由切换,因此可以按照切换后的IP路由,重新封装第一链路检测报文,发送重新封装后的第二链路检测报文,保证了链路检测报文的正常发送。
在一种具体实现方式中,当根据封装至链路层的第一检测报文的链路层所包括的出接口信息,发送该第一链路检测报文时,当出现路由切换情况时,可能会出现误判的情况,为了更好的解决这类问题,本发明实施例所提供的一种链路检测报文发送方法还可以包括:
在依据该出接口信息发送第一链路检测报文的过程中,检测该目的IP地址对应的IP路由的切换状态;
当检测到该目的IP地址对应的IP路由出现切换情况时,根据切换后的IP路由,重新封装第一链路检测报文,发送重新封装后的第三链路检测报文至对端设备。
如图1中,假设原第一链路检测报文中封装的是链路A,链路A故障导致IP路由切换后,将第一链路检测报文中封装的链路A变更为路由切换后的链路B。
在一种具体实现方式中,如图3所示,所述获得封装至链路层的第一链路检测报文,包括:
封装链路检测报文,获得封装至链路层的第一链路检测报文;
本发明实施例所提供的一种链路检测报文发送方法还可以包括:
在封装链路检测报文过程中,记录该第一链路检测报文的IP头的偏移量;
所述获得该第一链路检测报文中封装的目的IP地址,包括:
根据所记录的偏移量,获得该第一链路检测报文中封装的目的IP地址。
在协商完成检测时间后,对链路检测报文进行完整封装,即封装至链路层。在封装过程中,记录该封装至链路层的第一链路检测时间的IP头的偏移量,根据所记录的偏移量,偏移到该封装至链路层的第一链路检测报文的IP头位置,获得该第一链路检测报文的目的IP地址,进行后续的链路检测报文发送流程。
在一种具体实现方式中,本发明实施例所提供的一种链路检测报文发送方法还可以包括:
接收该对端设备发送的第一置位报文,其中,该第一置位报文携带该对端设备配置的新的接收时间间隔;
根据该发送时间间隔和该新的接收时间间隔,更新检测时间;重新执行S202。
当接收到对端设备的第一置位报文时,可以确定对端设备的时间参数发生了变化,如:配置接收报文的接收时间间隔发生变化。此时,需要根据设备自身配置的发送时间间隔和新的接收时间间隔,更新检测时间,并重新封装第一链路检测报文。其中,时间参数与现有技术相同,包括:对端设备的发送报文的发送时间间隔、接收报文的接收时间间隔以及检测倍数。其中,该第一置位报文为P位置位的BFD报文。
另外,当设备检测到自身配置的发送报文的发送时间间隔发生变化后,也会发送相应的置位报文至对端设备,告知对端设备设备自身配置的发送时间间隔发生变化,以使对端设备执行后续操作。并且,与对端设备重新协商对对端设备的检测时间。在一种具体实现方式中,本发明实施例所提供的一种链路检测报文发送方法还可以包括:
当检测到该发送时间间隔发生变化时,发送第二置位报文至该对端设备,该第二置位报文中包含变化后的新的发送时间间隔;
根据该新的发送时间间隔和该接收时间间隔,更新检测时间;重新执行S202。
其中,该设备配置的发送时间间隔可以由用户根据实际需求进行配置。另外,当设备检测到自身的检测倍数发生变化时,也会发送第二置位报文至该对端设备,以与对端设备重新协商检测时间。其中,检测到时间间隔发生变化,并发送置位报文至该对端设备以与对端设备重新协商检测时间,与现有技术相同。
下面通过具体实例对本发明实施例所提供的链路检测报文发送方法进行介绍。
设备根据自身的配置信息,获得路由切换时间为500ms,记为T2。设备的发送报文的发送时间间隔为50ms,检测倍数为3;对端设备的接收报文的接收时间间隔为60ms。其中,可以通过配置信息的修改,进而修改路由切换时间。
BFD检测机制启动,与对端设备创建BFD会话,并在接收到对端设备发送的协商报文(BFD报文)后,确定BFD会话处于连接状态;
根据设备自身配置的发送时间间隔和对端设备配置的接收时间间隔,确定针对对端设备的检测时间;具体为:T1=MAX[50ms,60ms]*3=180ms;
封装BFD报文,封装过程与现有技术相同,封装IP头、UDP头,计算IP头的校验和checksum(用于保证报文的安全以及完整性),并通过查找FIB(Forward InformationBase)表,添加BFD报文的相关链路层信息。其中,在封装过程中记录IP头的偏移量;
比较检测时间T1和路由切换时间T2的大小,由于180ms<500ms,也就是T1<T2;此时,根据链路层所包括的出接口信息,周期性地发送封装至链路层的BFD报文;
此时,还可以实时地检测目的IP地址对应的IP路由的切换状态,当检测到目的IP地址对应的IP路由出现切换情况时;根据切换后的IP路由,重新封装BFD报文;周期性地发送重新封装后的BFD报文;
当接收到对端设备发送的P位置位的BFD报文后,获得对端设备的配置的接收报文的新的接收时间间隔,为200ms,更新检测时间T1为600ms(3*200ms);
重新封装BFD报文;
比较检测时间T1和路由切换时间T2的大小,由于600ms>500ms,也就是T1>T2;获得封装至链路层的BFD报文的目的IP地址;
在已存储的IP路由中,查找目的IP地址对应的IP路由;
按照查找到的IP路由,重新封装BFD报文,周期性地发送该重新封装后的BFD报文至对端设备。
相应于上述方法实施例,如图4所示,本发明实施例提供了一种链路检测报文发送装置,所述装置可以包括:
确定模块401,用于与对端设备进行时间协商,确定对对端设备的检测时间;第一获得模块402,用于获得封装至链路层的第一链路检测报文;第二获得模块403,用于当所述检测时间大于或等于路由切换时间时,获得所述第一链路检测报文中封装的目的IP地址;查找模块404,用于在已存储的IP路由中,查找所述目的IP地址对应的IP路由;第一发送模块405,用于按照查找到的IP路由,重新封装所述第一链路检测报文,发送所述重新封装后的第二链路检测报文至对端设备;第二发送模块406,用于当所述检测时间小于所述路由切换时间时,依据所述出接口信息发送所述第一链路检测报文。
应用本发明实施例,与对端设备进行时间协商,确定对对端设备的检测时间;获得封装至链路层的第一链路检测报文;当检测时间大于或等于路由切换时间时,获得第一链路检测报文中封装的目的IP地址;在已存储的IP路由中,查找目的IP地址对应的IP路由;按照查找到的IP路由,重新封装第一链路检测报文,发送重新封装后的第二链路检测报文至对端设备;当检测时间小于路由切换时间时,依据链路层所包括的出接口信息发送第一链路检测报文。可见,本发明实施例实现了针对封装至链路层的报文,根据检测时间与路由切换时间的大小,可以从采用根据链路层的出接口信息发送报文的方式变换为采用根据IP地址信息发送报文的方式,提高了报文发送的灵活性。
另外,检测时间越短,设备运行的压力越大。当检测时间大于路由切换时间时,设备运行压力不大,这种情况下,如果IP路由发生切换,由于检测时间大于路由切换时间,发送第一链路检测报文时,可以检测到IP路由的变化情况,此时,则已经完成了路由切换,因此可以按照切换后的IP路由,重新封装第一链路检测报文,发送重新封装后的第二链路检测报文,保证了链路检测报文的正常发送。
在一种具体实现方式中,本发明实施例所提供的一种报文发送装置还可以包括;
检测模块,用于在依据所述出接口信息发送所述第一链路检测报文的过程中,检测所述目的IP地址对应的IP路由的切换状态;
第三发送模块,用于当检测到所述目的IP地址对应的IP路由出现切换情况时,根据切换后的IP路由,重新封装所述第一链路检测报文,发送重新封装后的第三链路检测报文至所述对端设备。
在一种具体实现方式中,如图5所示,所述第一链路检测报文为双向转发检测BFD报文;
所述确定模块包括:
会话建立单元501,用于与所述对端设备建立BFD会话;
接收单元502,用于接收所述对端设备发送的协商报文;
获得单元503,用于从所述协商报文中获得对端设备配置的接收时间间隔;
确定单元504,用于根据自身配置的发送时间间隔、所述接收时间间隔以及预设的检测时间确定公式,确定所述检测时间;
其中,所述检测时间确定公式为:
T1=MAX[t1,t2]*c;
所述T1表示检测时间;所述t1表示所述发送时间间隔;所述t2表示所述接收时间间隔;该c表示预设的检测倍数。
在一种具体实现方式中,本发明实施例所提供的一种报文发送装置还可以包括:
接收模块,用于接收所述对端设备发送的第一置位报文,其中,所述第一置位报文携带所述对端设备配置的新的接收时间间隔;
第一更新模块,用于根据所述发送时间间隔和所述新的接收时间间隔,更新检测时间;触发所述第一获得模块402。
在一种具体实现方式中,本发明实施例所提供的一种报文发送装置还可以包括:
第四发送模块,用于当检测到所述发送时间间隔发生变化时,发送第二置位报文至所述对端设备,所述第二置位报文中包含变化后的新的发送时间间隔;
第二更新模块,用于根据所述新的发送时间间隔和所述接收时间间隔,更新检测时间;触发所述第一获得模块402。
对于系统/装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:ROM/RAM、磁碟、光盘等。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种链路检测报文发送方法,其特征在于,所述链路检测报文为双向转发检测BFD报文,所述方法包括:
与对端设备进行时间协商,确定对对端设备的检测时间;
获得封装至链路层的第一链路检测报文,其中,所述链路层包括发送所述第一链路检测报文的出接口信息;
当所述检测时间大于或等于路由切换时间时,获得所述第一链路检测报文中封装的目的IP地址;
在已存储的IP路由中,查找所述目的IP地址对应的IP路由;
按照查找到的IP路由,重新封装所述第一链路检测报文,发送重新封装后的第二链路检测报文至对端设备;
当所述检测时间小于所述路由切换时间时,依据所述出接口信息发送所述第一链路检测报文。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在依据所述出接口信息发送所述第一链路检测报文的过程中,检测所述目的IP地址对应的IP路由的切换状态;
当检测到所述目的IP地址对应的IP路由出现切换情况时,根据切换后的IP路由,重新封装所述第一链路检测报文,发送重新封装后的第三链路检测报文至所述对端设备。
3.根据权利要求1或2所述的方法,其特征在于,所述与对端设备进行时间协商,确定对对端设备的检测时间的步骤包括:
与所述对端设备建立BFD会话;
接收所述对端设备发送的协商报文;
从所述协商报文中获得对端设备配置的接收时间间隔;
根据自身配置的发送时间间隔、所述接收时间间隔以及预设的检测时间确定公式,确定所述检测时间;其中,所述检测时间确定公式为:
T1=MAX[t1,t2]*c;
所述T1表示检测时间;所述t1表示所述发送时间间隔;所述t2表示所述接收时间间隔;所述c表示预设的检测倍数。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
接收所述对端设备发送的第一置位报文,其中,所述第一置位报文携带所述对端设备配置的新的接收时间间隔;
根据所述发送时间间隔和所述新的接收时间间隔,更新检测时间;
返回执行所述获得封装至链路层的第一链路检测报文的步骤。
5.根据权利要求3所述的方法,其特征在于,所述方法还包括:
当检测到所述发送时间间隔发生变化时,发送第二置位报文至所述对端设备,所述第二置位报文中包含变化后的新的发送时间间隔;
根据所述新的发送时间间隔和所述接收时间间隔,更新检测时间;
返回执行所述获得封装至链路层的第一链路检测报文的步骤。
6.一种链路检测报文发送装置,其特征在于,所述链路检测报文为双向转发检测BFD报文,所述装置包括:
确定模块,用于与对端设备进行时间协商,确定对对端设备的检测时间;
第一获得模块,用于获得封装至链路层的第一链路检测报文,其中,所述链路层包括发送所述第一链路检测报文的出接口信息;
第二获得模块,用于当所述检测时间大于或等于路由切换时间时,获得所述第一链路检测报文中封装的目的IP地址;
查找模块,用于在已存储的IP路由中,查找所述目的IP地址对应的IP路由;
第一发送模块,用于按照查找到的IP路由,重新封装所述第一链路检测报文,发送重新封装后的第二链路检测报文至对端设备;
第二发送模块,用于当所述检测时间小于所述路由切换时间时,依据所述出接口信息发送所述第一链路检测报文。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
检测模块,用于在依据所述出接口信息发送所述第一链路检测报文的过程中,检测所述目的IP地址对应的IP路由的切换状态;
第三发送模块,用于当检测到所述目的IP地址对应的IP路由出现切换情况时,根据切换后的IP路由,重新封装所述第一链路检测报文,发送重新封装后的第三链路检测报文至所述对端设备。
8.根据权利要求6或7所述的装置,其特征在于,所述确定模块包括:
会话建立单元,用于与所述对端设备建立BFD会话;
接收单元,用于接收所述对端设备发送的协商报文;
获得单元,用于从所述协商报文中获得对端设备配置的接收时间间隔;
确定单元,用于根据自身配置的发送时间间隔、所述接收时间间隔以及预设的检测时间确定公式,确定所述检测时间;其中,所述检测时间确定公式为:
T1=MAX[t1,t2]*c;
所述T1表示检测时间;所述t1表示所述发送时间间隔;所述t2表示所述接收时间间隔;所述c表示预设的检测倍数。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
接收模块,用于接收所述对端设备发送的第一置位报文,其中,所述第一置位报文携带所述对端设备配置的新的接收时间间隔;
第一更新模块,用于根据所述发送时间间隔和所述新的接收时间间隔,更新检测时间;触发所述第一获得模块。
10.根据权利要求8所述的装置,其特征在于,所述装置还包括:
第四发送模块,用于当检测到所述发送时间间隔发生变化时,发送第二置位报文至所述对端设备,所述第二置位报文中包含变化后的新的发送时间间隔;
第二更新模块,用于根据所述新的发送时间间隔和所述接收时间间隔,更新检测时间;触发所述第一获得模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610754964.4A CN106375143B (zh) | 2016-08-29 | 2016-08-29 | 一种链路检测报文发送方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610754964.4A CN106375143B (zh) | 2016-08-29 | 2016-08-29 | 一种链路检测报文发送方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106375143A CN106375143A (zh) | 2017-02-01 |
CN106375143B true CN106375143B (zh) | 2020-03-06 |
Family
ID=57900640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610754964.4A Active CN106375143B (zh) | 2016-08-29 | 2016-08-29 | 一种链路检测报文发送方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106375143B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117811962A (zh) * | 2022-09-23 | 2024-04-02 | 中兴通讯股份有限公司 | 报文发送方法及装置、存储介质及电子装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101170459A (zh) * | 2007-11-28 | 2008-04-30 | 中兴通讯股份有限公司 | 基于双向转发链路进行故障检测与链路恢复的方法 |
CN101651553A (zh) * | 2009-09-03 | 2010-02-17 | 华为技术有限公司 | 用户侧组播业务主备保护系统、方法及路由设备 |
CN102195861A (zh) * | 2010-03-19 | 2011-09-21 | 杭州华三通信技术有限公司 | 一种路由切换过程中建立bfd会话的方法和装置 |
US8082340B2 (en) * | 2006-01-30 | 2011-12-20 | Cisco Technology, Inc. | Technique for distinguishing between link and node failure using bidirectional forwarding detection (BFD) |
CN102457409A (zh) * | 2010-11-02 | 2012-05-16 | 中兴通讯股份有限公司 | 链路故障检测方法及系统 |
CN102780635A (zh) * | 2012-08-09 | 2012-11-14 | 华为技术有限公司 | 基于trill网络实现保护倒换的方法、tor交换机及系统 |
CN105429814A (zh) * | 2014-09-17 | 2016-03-23 | 中兴通讯股份有限公司 | 利用多板卡保护bfd的方法和设备 |
-
2016
- 2016-08-29 CN CN201610754964.4A patent/CN106375143B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8082340B2 (en) * | 2006-01-30 | 2011-12-20 | Cisco Technology, Inc. | Technique for distinguishing between link and node failure using bidirectional forwarding detection (BFD) |
CN101170459A (zh) * | 2007-11-28 | 2008-04-30 | 中兴通讯股份有限公司 | 基于双向转发链路进行故障检测与链路恢复的方法 |
CN101651553A (zh) * | 2009-09-03 | 2010-02-17 | 华为技术有限公司 | 用户侧组播业务主备保护系统、方法及路由设备 |
CN102195861A (zh) * | 2010-03-19 | 2011-09-21 | 杭州华三通信技术有限公司 | 一种路由切换过程中建立bfd会话的方法和装置 |
CN102457409A (zh) * | 2010-11-02 | 2012-05-16 | 中兴通讯股份有限公司 | 链路故障检测方法及系统 |
CN102780635A (zh) * | 2012-08-09 | 2012-11-14 | 华为技术有限公司 | 基于trill网络实现保护倒换的方法、tor交换机及系统 |
CN105429814A (zh) * | 2014-09-17 | 2016-03-23 | 中兴通讯股份有限公司 | 利用多板卡保护bfd的方法和设备 |
Non-Patent Citations (2)
Title |
---|
"Bidirectional Forwarding Detection(BFD) for the Pseudowire Virtual Circuit Connectivity Verification(VCCV)";T.Nadeau,etc al.,;《www.hjp.at/doc/rfc/rfc5885.html》;20100630;全文 * |
"基于BFD检测的IP快速重路由机制";胡建萍等,;《计算机系统应用》;20130228;第22卷(第2期);第190-193页 * |
Also Published As
Publication number | Publication date |
---|---|
CN106375143A (zh) | 2017-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10855574B2 (en) | Method and network device for computing forwarding path | |
WO2021170092A1 (zh) | 报文处理方法、装置、网络设备及存储介质 | |
US9667537B2 (en) | Transport system, packet transport apparatus, and packet transport method | |
KR101706439B1 (ko) | 리던던트 네트워크 접속 | |
US8130775B2 (en) | Mechanism for protecting a pseudo-wire | |
EP3211832B1 (en) | Fault detection method and device | |
CN101447900A (zh) | 一种建立双向转发检测的方法、系统及设备 | |
KR101364369B1 (ko) | 노드 및 그것에 이용하는 감시 관리 방법 및 그것을 이용하는 전송 시스템, 입력 회로, 출력 회로 | |
CN101645810B (zh) | Pw的检测方法和设备 | |
CN102868569B (zh) | 三层虚拟专用网的性能检测方法、节点和系统 | |
KR101699643B1 (ko) | 다중 프로토콜 라벨 스위칭에 기반한 oam 방법 및 장치 | |
CN103580894A (zh) | 操作、管理和维护oam配置的方法、设备及系统 | |
EP3127276A1 (en) | Apparatus and method for establishing a repair path | |
CN101425942A (zh) | 一种实现双向转发检测的方法、装置及系统 | |
CN102857418A (zh) | 一种基于vpn的快速重路由切换方法及设备 | |
WO2015184868A1 (zh) | 一种服务层信号失效检测装置及方法 | |
CN105515816A (zh) | 检测层次信息的处理方法及装置 | |
CN106130821B (zh) | 一种检测报文的发送方法及装置 | |
CN106375143B (zh) | 一种链路检测报文发送方法及装置 | |
CN110224916B (zh) | 报文的处理方法、装置及报文的封装方法、装置和系统 | |
WO2016095611A1 (zh) | 用于获取参数的方法、网络设备及系统 | |
CN101335714A (zh) | 一种负载分担的方法及设备或快速重路由的方法及设备 | |
CN112929261A (zh) | 分段路由隧道的防断纤方法、装置,入口节点及存储介质 | |
CN108123875B (zh) | 一种双向转发检测方法及装置 | |
US8599680B2 (en) | Virtual circuit configuration method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
CB02 | Change of applicant information |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant after: Xinhua three Technology Co., Ltd. Address before: 310053 Hangzhou science and Technology Industrial Park, high tech Industrial Development Zone, Zhejiang Province, No. six and road, No. 310 Applicant before: Huasan Communication Technology Co., Ltd. |
|
CB02 | Change of applicant information | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |