本申请涉及通信技术,具体的讲是一种路径检测方法及设备。
背景技术:
:vxlan(virtualextensiblelan,可扩展虚拟局域网络)是基于ip网络、采用“macinudp”封装形式的二层vpn技术。在vxlan网络中,通过三层物理网络提供的三层转发路径,实现二层报文跨越三层网络在不同站点间传递。vtep(vxlantunnelendpoint,vxlan隧道端点)与远端vtep之间建立逻辑vxlan隧道。为保证vxlan隧道路由可达,vtep设备发起ping检测,发送vxlan封装的回送请求报文且设置vxlan封装的vxlan头的oambit用以标识ping报文。对端vtep设备收到vxlan封装的回送请求报文,基于vxlan头的oambit识别ping检测,解除vxlan封装,生成回送响应报文,将其封装为vxlan封装的回送响应报文。vtep收到对端vtep的vxlan封装的回送响应报文,停止ping检测。如果vtep与远端vetp之间vxlan隧道的中间路径上存在等价路径,vtep需遍历检测所有中间路径。但是中间路径上的设备哈希选路结果不可控,导致需要在中间路径的不同等价路径上收发的vxlan封装的回送请求报文与vxlan封装的回送响应报文被不同的等价路径收发,因而无法精确地检测中间路径的每个等价路径。譬如,当中间路径上的某条路径是单通路径时,vtep发送的vxlan封装的回送请求报文到达对端vtep后,对端vtep发送的vxlan封装的回送响应报文被中间路径上路由设备通过另一条等价路径返回,就会导致单通路径的检测失败问题。技术实现要素:本申请的目的在于提供一种路径检测方法以及设备,对vxlan隧道的每个等价路径进行精确检测。为实现上述目的,本申请提供了一种路径检测方法,该方法包括:接收具有流标识的vxlan封装回送请求报文;基于vxlan封装回送请求报文的隧道封装信息确定vxlan隧道;获取用于在反方向上选择收到vxlan封装回送请求报文的等价路径的哈希参数;生成回送路径流表项;其中记录了vxlan隧道在反方向上的隧道信息以及流标识对应于哈希参数;接收具有流标识的vxlan封装回送响应报文;基于vxlan封装回送响应报文的隧道源地址、隧道目的地址以及流标识查找到回送路径流表项;通过哈希参数对应的vxlan隧道的等价路径发送vxlan封装回送响应报文。为实现上述目的,本申请还提供了一种路径检测设备,该设备包括:接收模块,用于接收具有流标识的vxlan封装回送请求报文以及用于接收具有流标识的vxlan封装回送响应报文;表项模块,用于获取用于在反方向上选择收到vxlan封装回送请求报文的等价路径的哈希参数;生成回送路径流表项;其中记录了vxlan隧道在反方向上的隧道信息以及流标识对应于哈希参数;发送模块,用于基于vxlan封装回送响应报文的隧道源地址、隧道目的地址以及流标识查找到回送路径流表项;通过哈希参数对应的反方向上的等价路径发送vxlan封装回送响应报文。本申请的有益效果在于,中间路径上的设备遍历vxlan隧道的每个等价路径的vxlan封装的回送请求报文的vxlan封装的回送响应报文在反方向上通过同一个路径发送,确保了对vxlan隧道的每个等价路径的精确检测。附图说明图1所示为本申请提供的路径检测方法实施例的流程图;图2所示为本申请精确检测vxlan隧道的等价路径的示意图;图3所示为本申请提供的路径检测设备实施例的示意图。具体实施方式将以多个附图所示的多个例子进行详细说明。在以下详细描述中,多个具体细节用于提供对本申请的全面理解。实例中没有详细地描述已知的方法、步骤、组件以及电路,以免使这些例子的难于理解。使用的术语中,术语“包括”表示包括但不限于;术语“含有”表示包括但不限于;术语“以上”、“以内”以及“以下”包含本数;术语“大于”、“小于”表示不包含本数。术语“基于”表示至少基于其中一部分。图1所示为本申请提供的路径检测方法实施例的流程图,该方法包括:步骤101,接收具有流标识的vxlan封装回送请求报文;步骤102,基于vxlan封装回送请求报文的隧道封装信息确定vxlan隧道;步骤103,获取用于在反方向上选择收到vxlan封装回送请求报文的等价路径的哈希参数;步骤104,生成回送路径流表项以记录vxlan隧道在反方向上的隧道信息以及流标识对应于哈希参数;步骤105,接收具有流标识的vxlan封装回送响应报文;步骤106,基于vxlan封装回送响应报文的隧道源地址、隧道目的地址以及流标识查找到回送路径流表项;步骤107,通过查找到回送路径流表项的哈希参数对应的等价路径发送vxlan封装回送响应报文。本申请的有益效果在于,确保了检测每条等价路径的vxlan封装的回送请求报文以及vxlan封装的回送响应报文在往返方向上通过同一个路径发送,实现了vxlan隧道的每个等价路径的精确检测。图2所示为本申请精确检测vxlan隧道的等价路径的示意图。vtep11和vtep16建立vxlan隧道。在vtep11上,vxlan隧道的源ip地址和目的ip地址分别是1.1.1.1和2.2.2.2;在vtep16上,vxlan隧道的源ip地址和目的ip地址分别是2.2.2.2和1.1.1.1。vtep11和vtep16的vxlan隧道上有两条等价路径。vtep11为了遍历连接vtep16的vxlan隧道的每个等价路径,发送第一个vxlan封装的回送请求报文,在vxlan封装的oambit携带的flowid=1。vtep11根据路由转发表的路由转发表项,选择到达vxlan隧道目的ip地址2.2.2.2的下一跳中间设备r12,向中间设备r12发送第一个vxlan封装的回送请求报文。中间设备r12根据路由转发表的路由转发表项,获得到达vxlan隧道目的ip地址的两个等价路径上的下一跳,根据ecmp选路算法计算哈希参数,选择计算的哈希参数对应的下一跳中间设备r13,根据下一跳中间设备r13修改第一个vxlan封装的回送请求报文的外层以太网头,然后发送到中间设备r13。中间设备r13根据路由转发表的路由转发表项,选择到达vxlan隧道目的ip地址2.2.2.2的下一跳中间设备r15,根据下一跳中间设备r15修改第一个vxlan封装的回送请求报文的外层以太网头,然后发送到中间设备r15。基于本申请实施例,中间设备r15根据第一个vxlan封装回送请求报文,根据vxlan封装的oambit识别是ping检测类型报文。中间设备r15识别物理端口a1是第一个vxlan封装回送请求报文的入接口,识别物理端口a1在反方向上作为出接口的等价路径是r15-r13-r12-vtep11。中间设备r15获取选择被识别等价路径的哈希参数hasha,生成回送路径流表项,如表1所示,设置表1中回送路径流表项的哈希参数的优先级高于路由转发表中路由转发表项的哈希参数的优先级。流表关键字(dip,sip,flowid)哈希参数老化时间1.1.1.1,2.2.2.2,flow1hasha5s表1中间设备r15根据路由转发表的路由转发表项,查找到下一跳vtep16,根据下一跳vtep16修改第一个vxlan封装的回送请求报文的外层以太网头,然后发送到vtep16。vtep11为了遍历连接vtep16的vxlan隧道的另一个等价路径,发送第二个vxlan封装的回送请求报文,在vxlan封装的oambit携带的flowid=2。由于需要遍历vxlan隧道的每个等价路径,vtep11会为vxlan封装的源udp设置不同值,使中间设备根据源udp端口选择等价路径时,计算的哈希参数不同,将每个vxlan封装的回送请求报文hash到每个等价路径。vtep11将第二个vxlan封装的回送请求报文发往到达隧道目的ip地址的下一跳中间设备r12。中间设备r12根据路由转发表的路由转发表项,获得到达vxlan隧道目的ip地址的两个等价路径上的下一跳,根据ecmp选路算法计算哈希参数,根据计算的哈希参数下一跳为中间设备r14,根据下一跳中间设备r4修改第二个vxlan封装的回送请求报文的外层以太网头,然后发送到中间设备r14。中间设备r14根据第二个vxlan封装的回送请求报文的隧道目的ip地址,根据路由转发表的路由转发表项查找到下一跳中间设备r15,根据下一跳中间设备r15修改第二个vxlan封装的回送请求报文的外层以太网头,然后发送到中间设备r15。中间设备r15根据第二个vxlan封装回送请求报文,根据vxlan封装的oambit识别是ping检测类型报文。中间设备r15识别物理端口b1是第二个vxlan封装回送请求报文的入接口,识别物理端口b1在反方向上作为出接口的等价路径是r15-r14-r12-vtep11。中间设备r15获取选择被识别等价路径的哈希参数hashb,生成表2所示的回送路径流表项;设置表2中回送路径流表项的哈希参数的优先级高于路由转发表中路由转发表项的哈希参数的优先级。表2中间设备r15根据第二个vxlan封装的回送请求报文的隧道目的ip地址,查找到下一跳vtep16,根据下一跳vtep16修改第一个vxlan封装的回送请求报文的外层以太网头,然后发送到vtep16。vetp16收到第一个vxlan封装的回送请求报文,剥掉vxlan封装,按照icmp协议的ping检测机制处理生成回送响应报文,根据vxlan隧道封装为带有相同flowid1的第一个vxlan封装的回送响应报文,根据路由转发表的路由转发表项,选择vxlan隧道目的ip地址1.1.1.1的下一跳设备r15,将第一个vxlan封装的回送响应报文发往到达隧道目的ip地址的下一跳中间设备r15。同样地,vetp16收到第二个vxlan封装的回送请求报文,剥掉vxlan封装,按照icmp协议的ping检测机制处理生成回送响应报文,根据vxlan隧道封装为带有flowid2的第二个vxlan封装的回送响应报文,根据路由转发表的路由转发表项,选择vxlan隧道目的ip地址1.1.1.1的下一跳设备r15,将第二个vxlan封装的回送响应报文发往到达隧道目的ip地址的下一跳中间设备r15。中间设备r15根据第一个vxlan封装回送请求报文,根据vxlan封装的oambit识别是ping检测类型报文。中间设备r15根据vxlan隧道的源ip地址2.2.2.2、目的ip地址1.1.1.1以及flowid1查找到回送路径流表项,获取在反方向选择等价路径的hasha。中间设备r15根据路由转发表的路由转发表项,获得到达vxlan隧道目的ip地址1.1.1.1的两个等价路径上的下一跳,根据第一个vxlan封装回送请求报文计算选路哈希参数hashb。中间设备r15按照高优先级的hasha选择等价路径r15-r13-r12-vtep11,根据下一跳中间设备r13修改第一个vxlan封装的回送响应报文的外层以太网头,然后发送到中间设备r13。中间设备r13根据路由转发表的路由转发表项,查找第一个vxlan封装的回送响应报文的隧道目的ip地址1.1.1.1的下一跳中间设备r12,根据下一跳中间设备r12修改第一个vxlan封装的回送响应报文的外层以太网头,然后发送到中间设备r12。中间设备r12根据路由转发表的路由转发表项,查找第一个vxlan封装的回送响应报文的隧道目的ip地址1.1.1.1查找到下一跳vtep11,根据下一跳vtep11修改第一个vxlan封装的回送响应报文的外层以太网头,然后发送到下一跳vtep1。vtep11收到第一个vxlan封装的回送响应报文,剥掉vxlan封装,按照icmp协议的ping检测机制确定flowid1检测的等价路径可达,实现了对该等价路径的检测。中间设备r15根据第二个vxlan封装回送请求报文,根据vxlan封装的oambit识别是ping检测类型报文。中间设备r15根据vxlan隧道的源ip地址2.2.2.2、目的ip地址1.1.1.1以及flowid2查找到回送路径流表项,获取在反方向选择等价路径的hashb。中间设备r15根据路由转发表的路由转发表项,获得到达vxlan隧道目的ip地址1.1.1.1的两个等价路径上的下一跳,根据第二个vxlan封装回送请求报文计算选路hashb。中间设备r15仍按照高优先级的hashb选择等价路径r15-r14-r12-vtep11,根据下一跳中间设备r14修改第一个vxlan封装的回送响应报文的外层以太网头。但是,中间设备r14与中间设备r15之间的路径是单通,中间设备r15连接中间设备14的路径不能转发,中间设备r15丢弃第二个vxlan封装的回送响应报文。vtep12在检测周期内都未收到带有flowid2的第二个vxlan封装的回送响应报文,按照icmp协议的ping检测机制确定flowid2标识的被检测等价路径不可达。如果有报文不断匹配流表项,表2中的流表就不会老化。当vtep11在一段时间内都未进行路径检测,表2中的流表项未被匹配而各自的老化时间到达时,中间设备r15删除这些表项,从而避免表项资源的浪费。当vtep16发起ping检测时的处理与vetp11相同,中间设备r12通过等价路径收到vxlan封装的回送请求报文的处理与中间设备r15相同;收到vxlan封装的回送响应报文选的处理也与中间设备r15相同,本实施例不再赘述。图3所示为本申请提供的路径检测设备300的示意图,该设备300包括:接收模块301、表项模块302以及发送模块303。接收模块301,用于接收具有流标识的vxlan封装回送请求报文以及用于接收具有流标识的vxlan封装回送响应报文。表项模块302,用于获取用于在反方向上选择收到vxlan封装回送请求报文的等价路径的哈希参数;生成回送路径流表项;其中记录了vxlan隧道在反方向上的隧道信息以及流标识对应于哈希参数。vxlan隧道反方向上的隧道信息分别是隧道封装信息的隧道目的地址和隧道源地址。发送模块303,用于基于vxlan封装回送响应报文的隧道源地址、隧道目的地址以及流标识查找到回送路径流表项;通过哈希参数对应的反方向上的等价路径发送vxlan封装回送响应报文。表项模块302,用于识别收到vxlan封装回送请求报文的等价路径的入接口;识别以入接口的物理端口在反方向上作为出接口的等价路径;获取用于选择被识别等价路径的哈希参数。表项模块302还用于为回送路径流表项设置老化时间;用于删除到达老化时间的回送路径流表项。表项模块302还用于为回送路径流表项设置优先级;回送路径流表项的哈希参数的优先级高于vxlan封装回送响应报文的隧道源地址、隧道目的地址匹配的转发表项的哈希参数的优先级。以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。当前第1页12