CN106130819B - Vtep异常的检测方法及装置 - Google Patents
Vtep异常的检测方法及装置 Download PDFInfo
- Publication number
- CN106130819B CN106130819B CN201610519903.XA CN201610519903A CN106130819B CN 106130819 B CN106130819 B CN 106130819B CN 201610519903 A CN201610519903 A CN 201610519903A CN 106130819 B CN106130819 B CN 106130819B
- Authority
- CN
- China
- Prior art keywords
- vtep
- neighbours
- vxlan
- message
- host
- 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
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/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0882—Utilisation of link capacity
-
- 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/0876—Network utilisation, e.g. volume of load or congestion level
-
- 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/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1466—Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
Abstract
本发明公开了一种VTEP异常的检测方法及装置,该方法包括:VTEP确定在所述VXLAN网络中的VTEP邻居,得到所述VTEP的VTEP邻居对;确定在VTEP邻居对的角色;若在所述VTEP邻居对中的角色为主机,则以设定周期向所述VTEP邻居对中的从机发送检测查询报文,若在设定时长内未接收到所述从机发送的检测应答报文,则确定所述从机异常;若在所述VTEP邻居对中的角色为从机,则确定在设定时长内是否接收到所述VTEP邻居对中的主机发送的检测查询报文,若在所述设定时长内未接收到所述检测查询报文,则确定所述主机异常。该方案能够在VXLAN网络中实现检测异常的VTEP。
Description
技术领域
本发明涉及通信技术领域,尤指一种虚拟可扩展局域网隧道终端(VirtualeXtensible Local Area Network Tunnel End Point,VTEP)异常的检测方法及装置。
背景技术
虚拟可扩展局域网(Virtual eXtensible Local Area Network,VXLAN)是一种建立在互联网协议(Internet Protocol,IP)网络之上的叠加(Overlay)网络技术,其使用媒体介入控制(Media Access Control,MAC)在(in)用户数据报协议(User DatagramProtocol,UDP)的方法进行封装,即将普通以太网报文封装在UDP报文里,普通以太网报文当作UDP数据传输。VXLAN网络由VXLAN网络标识(VXLAN Network Identifier,VNI)作为唯一标识,不同VNI的VXLAN网络的终端不能直接通信,需要VXLAN网关路由。
如图1所示为VXLAN网络的架构图,包括终端(如虚拟机、服务器等)、域内本地网络设备(如站点(Site)A内部的网络设备)、VTEP和IP网络。其中,VTEP是VXLAN网络的边缘设备,与物理网络相连,分配有物理网络的IP地址,该地址用于VXLAN报文的封装和解封装,VTEP之间在IP网络上建立隧道,这些隧道实现了VXLAN报文穿越IP网络的传输服务。
VXLAN标准定义在RFC7348中,规定了通过数据平面的源地址学习来形成VXLAN控制平面的信息。VXLAN网络使用组播报文对广播报文、组播报文及未知单播报文进行泛洪,例如,在如图1所示的VXLAN网络中,VTEP A接收到终端A发送的地址解析协议(AddressResolution Protocol,ARP)请求报文后,将该ARP请求报文封装成组播VXLAN报文并转发至VTEP B和VTEP C,VTEP B和VTEP C在对ARP请求报文解封装时进行地址学习(VNI,终端A的MAC地址,VTEP A的IP地址),若终端B向终端A发送ARP应答报文,VTEPA在对ARP应答报文解封装时也可以进行地址学习(VNI,终端B的MAC地址,VTEP B的IP地址),若后续终端A与终端B之间还有数据传输,VTEP A和VTEP B学习到的地址即可作为后续报文转发的转发表项。
在上述报文转发的过程中,如果VTEP B出现故障,则无法响应终端B发送的报文,由于VTEP A上还存在(VNI,终端B的MAC地址,VTEP B的IP地址)这一转发表项,VTEP A会继续封装终端A发送给终端B的报文,但是终端B无法收到,从而出现黑洞现象,浪费VTEPA的转发资源和链路带宽。而目前,尚未存在检测VXLAN网络中异常VTEP的方法。
发明内容
本发明实施例提供一种VTEP异常的检测方法及装置,用以实现检测VXLAN网络中的异常VTEP。
根据本发明实施例,提供一种VTEP异常的检测方法,应用在VXLAN网络包括的VTEP中,所述方法包括:
所述VTEP确定在所述VXLAN网络中的VTEP邻居,得到所述VTEP的VTEP邻居对;
确定在所述VTEP邻居对中的角色;
若在所述VTEP邻居对中的角色为主机,则以设定周期向所述VTEP邻居对中的从机发送检测查询报文,若在设定时长内未接收到所述从机发送的检测应答报文,则确定所述从机异常;
若在所述VTEP邻居对中的角色为从机,则确定在设定时长内是否接收到所述VTEP邻居对中的主机发送的检测查询报文,若在所述设定时长内未接收到所述检测查询报文,则确定所述主机异常。
具体的,确定在所述VXLAN网络中的VTEP邻居,得到所述VTEP的VTEP邻居对,具体包括:
获取所述VXLAN网络的VTEP信息表;
从所述VTEP信息表中查找与所述VTEP上的VXLAN网络标识VNI对应的VTEP,得到所述VTEP的VTEP邻居;
将所述VTEP的VTEP邻居与所述VTEP组合,得到所述VTEP的VTEP邻居对。
具体的,确定在所述VTEP邻居对中的角色,具体包括:
获取所述VTEP邻居对中两个VTEP的互联网协议IP地址,将IP地址的数值较大的VTEP确定为所述VTEP邻居对中的主机,将IP地址的数值较小的VTEP确定为所述VTEP邻居对中的从机;或者,
获取所述VTEP邻居对中两个VTEP的优先级,将优先级较高的VTEP确定为所述VTEP邻居对中的主机,将优先级较低的VTEP确定为所述VTEP邻居对中的从机。
可选的,还包括:
为所述VTEP的VTEP邻居建立VTEP邻居状态表项。
可选的,还包括:
若在设定时长内接收到所述从机发送的检测应答报文,则确定所述从机正常;更新与所述从机对应的VXLAN转发表项和VTEP邻居状态表项;或者,
确定所述从机异常之后,还包括:
更新与所述从机对应的VXLAN转发表项和VTEP邻居状态表项。
可选的,还包括:
若在所述设定时长内接收到所述主机发送的检测查询报文,则确定所述主机正常;
向所述主机发送检测应答报文;以及,
更新与所述主机对应的VXLAN转发表项和VTEP邻居状态表项。
可选的,确定所述主机异常之后,还包括:
更新与所述主机对应的VXLAN转发表项和VTEP邻居状态表项。
可选的,还包括:
接收待转发报文;
获取接收所述待转发报文的物理端口信息;
查找与所述物理端口信息关联的VXLAN实例,所述VXLAN实例包括VNI、叠加隧道OT和叠加路由OR;
确定所述待转发报文的目的媒体介入控制MAC地址是否是所述VXLAN实例的一个MAC地址;
若是,则获取与所述VXLAN实例包括的VNI对应的叠加转发实例OFI,并根据所述待转发报文的目的互联网协议IP地址在所述OFI中查找转发表项,若查找到转发表项,则根据查找到的转发表项转发所述待转发报文,若未查找到转发表项,则进行地址学习建立转发表项后转发所述待转发报文;
若否,则通过所述VXLAN实例包括的OR将所述待转发报文转发至所述VXLAN实例包括的OT,通过所述VXLAN实例包括的OT关联的下一跳设备的物理端口转发所述待转发报文。
根据本发明实施例,还提供一种VTEP异常的检测装置,应用在VXLAN网络包括的VTEP中,所述装置包括:
第一确定单元,用于确定在所述VXLAN网络中的VTEP邻居,得到所述VTEP的VTEP邻居对;
第二确定单元,用于确定在所述VTEP邻居对中的角色;
第三确定单元,用于若在所述VTEP邻居对中的角色为主机,则以设定周期向所述VTEP邻居对中的从机发送检测查询报文,若在设定时长内未接收到所述从机发送的检测应答报文,则确定所述从机异常;若在所述VTEP邻居对中的角色为从机,则确定在设定时长内是否接收到所述VTEP邻居对中的主机发送的检测查询报文,若在所述设定时长内未接收到所述检测查询报文,则确定所述主机异常。
具体的,所述第一确定单元,用于确定在所述VXLAN网络中的VTEP邻居,得到所述VTEP的VTEP邻居对,具体用于:
获取所述VXLAN网络的VTEP信息表;
从所述VTEP信息表中查找与所述VTEP上的VXLAN网络标识VNI对应的VTEP,得到所述VTEP的VTEP邻居;
将所述VTEP的VTEP邻居与所述VTEP组合,得到所述VTEP的VTEP邻居对。
具体的,所述第二确定单元,用于确定在所述VTEP邻居对中的角色,具体用于:
获取所述VTEP邻居对中两个VTEP的互联网协议IP地址,将IP地址的数值较大的VTEP确定为所述VTEP邻居对中的主机,将IP地址的数值较小的VTEP确定为所述VTEP邻居对中的从机;或者,
获取所述VTEP邻居对中两个VTEP的优先级,将优先级较高的VTEP确定为所述VTEP邻居对中的主机,将优先级较低的VTEP确定为所述VTEP邻居对中的从机。
可选的,所述第一确定单元,还用于:
为所述VTEP的VTEP邻居建立VTEP邻居状态表项。
可选的,所述第三确定单元,还用于:
若在设定时长内接收到所述从机发送的检测应答报文,则确定所述从机正常;更新与所述从机对应的VXLAN转发表项和VTEP邻居状态表项;或者,
所述第三确定单元,还用于在确定所述从机异常之后,更新与所述从机对应的VXLAN转发表项和VTEP邻居状态表项。
可选的,所述第三确定单元,还用于:
若在所述设定时长内接收到所述主机发送的检测查询报文,则确定所述主机正常;
向所述主机发送检测应答报文;以及,
更新与所述主机对应的VXLAN转发表项和VTEP邻居状态表项。
可选的,所述第三确定单元,还用于:
在确定所述主机异常之后,更新与所述主机对应的VXLAN转发表项和VTEP邻居状态表项。
可选的,还包括:
接收单元,用于接收待转发报文;
获取单元,用于获取接收所述待转发报文的物理端口信息;
查找单元,用于查找与所述物理端口信息关联的VXLAN实例,所述VXLAN实例包括VNI、叠加隧道OT和叠加路由OR;
第四确定单元,用于确定所述待转发报文的目的媒体介入控制MAC地址是否是所述VXLAN实例的一个MAC地址;
转发单元,用于若是,则获取与所述VXLAN实例包括的VNI对应的叠加转发实例OFI,并根据所述待转发报文的目的互联网协议IP地址在所述OFI中查找转发表项,若查找到转发表项,则根据查找到的转发表项转发所述待转发报文,若未查找到转发表项,则进行地址学习建立转发表项后转发所述待转发报文;若否,则通过所述VXLAN实例包括的OR将所述待转发报文转发至所述VXLAN实例包括的OT,通过所述VXLAN实例包括的OT关联的下一跳设备的物理端口转发所述待转发报文。
本发明有益效果如下:
本发明实施例提供一种VTEP异常的检测方法及装置,VTEP确定在所述VXLAN网络中的VTEP邻居,得到所述VTEP的VTEP邻居对;确定在所述VTEP邻居对的角色;若在所述VTEP邻居对中的角色为主机,则以设定周期向所述VTEP邻居对中的从机发送检测查询报文,若在设定时长内未接收到所述从机发送的检测应答报文,则确定所述从机异常;若在所述VTEP邻居对中的角色为从机,则确定在设定时长内是否接收到所述VTEP邻居对中的主机发送的检测查询报文,若在所述设定时长内未接收到所述检测查询报文,则确定所述主机异常。该方案中,VXLAN网络中的每个VTEP都可以确定出与自身相关的所有VTEP邻居对,然后检测每个邻居对中对端的VTEP是否异常,相对于现有技术,能够在VXLAN网络中实现检测异常的VTEP,从而能够有效避免因为某个VTEP异常出现黑洞而造成的对端VTEP转发资源和链路带宽的浪费的问题。
附图说明
图1为现有技术中VXLAN网络的架构图;
图2为本发明实施例中VTEP异常的检测方法的流程图;
图3为本发明实施例中S21的流程图;
图4为本发明实施例中报文转发方法的流程图;
图5为本发明实施例中VTEP异常的检测装置的结构示意图。
具体实施方式
为了实现检测VXLAN中的异常VTEP,本发明实施例提供一种VTEP异常的检测方法,应用在VXLAN网络包括的每个VTEP中,该方法的执行主体可以是VXLAN网络中的任一个VTEP,流程如图2所示,执行步骤如下:
S21:确定在VXLAN网络中的VTEP邻居,得到VTEP的VTEP邻居对。
在VXLAN网络中,会有多条隧道,每条隧道两端的VTEP可以定义为一个VTEP邻居对。在检测VTEP是否异常时,首先可以确定出VTEP的所有VTEP邻居对。
针对每个VTEP邻居对执行下列步骤:
S22:确定在VTEP邻居对中的角色,若在VTEP邻居对中的角色为主机,则执行S23;若在VTEP邻居对中的角色为从机,则执行S24。
VTEP邻居对中包括两个VTEP,这两个VTEP的角色是不同的,一个作为主机,另一个作为从机,不同角色的VTEP执行的步骤也不同,因此,可以确定出VTEP邻居对中哪个是主机,哪个是从机。
S23:以设定周期向VTEP邻居对中的从机发送检测查询报文,若在设定时长内未接收到从机发送的检测应答报文,则确定从机异常。
如果VTEP是主机,可以定期向VTEP邻居对中的从机发送检测查询报文,如果从机正常,会在设定时长内回复检测应答报文,因此,可以根据是否在设定时长内接收到从机发送的检测应答报文来确定从机是否异常。
其中,设定周期和设定时长可以根据实际需要进行设定,通常设定时长要比设定周期长。
S24:确定在设定时长内是否接收到VTEP邻居对中的主机发送的检测查询报文,若在设定时长内未接收到检测查询报文,则确定主机异常。
如果VTEP是从机,可以根据在设定时长内是否接收到主机发送的检测查询报文来确定从机是否异常,VTEP邻居对中的主机正常时,会定期发送检测查询报文,若在设定时长内未接收到检测查询报文,则可以确定主机异常。
该方案中,VXLAN网络中的每个VTEP都可以确定出与自身相关的所有VTEP邻居对,然后检测每个邻居对中对端的VTEP是否异常,相对于现有技术,能够在VXLAN网络中实现检测异常的VTEP,从而能够有效避免因为某个VTEP异常出现黑洞而造成的对端VTEP转发资源和链路带宽的浪费的问题。
下面详细介绍上述VTEP异常的检测方法中的各个步骤。
具体的,上述S21中的确定在VXLAN网络中的VTEP邻居,得到VTEP的VTEP邻居对的实现过程,如图3所示,具体包括:
S211:获取VXLAN网络的VTEP信息表。
通常,每个VTEP上都会保存整个VXLAN网络的VTEP信息,这些VTEP信息可以但不限于以VTEP信息表的形式保存,VTEP可以根据VXLAN网络的VTEP信息表确定VTEP邻居对。
S212:从VTEP信息表中查找与VTEP上的VNI对应的VTEP,得到VTEP的VTEP邻居。
VTEP可能会存在多个VNI,VTEP可以根据VTEP信息表查找每个VNI对应的VTEP,从而得到VTEP的VTEP邻居。
一种可选的方式,得到VTEP的VTEP邻居后,为VTEP的每个VTEP邻居建立VTEP邻居状态表项,用来维护每个VTEP邻居的状态。
S213:将VTEP的VTEP邻居与VTEP组合,得到VTEP的VTEP邻居对。
可以将VTEP的每个VTEP分别于VTEP组合,就可以得到VTEP的所有VTEP邻居对。
通过S211-S213可以实现建立VTEP的VTEP邻居对。
具体的,上述S22中的确定在VTEP邻居对中的角色,可以有多种实现方式,下面列举两种方式进行说明。
第一种,获取VTEP邻居对中两个VTEP的互联网协议IP地址,将IP地址的数值较大的VTEP确定为VTEP邻居对中的主机,将IP地址的数值较小的VTEP确定为VTEP邻居对中的从机。
IP地址的编码规则为A.B.C.D,可以设定对比规则为A>B>C>D,即按照各区域的大小依次比较,当一个区域大小已定,则不再往下比较。比如VTEP1的IP1=1.1.1.1,VTEP2的IP2=2.2.2.2,IP1的第一区域为2,IP2的第一区域为1,将二者的大小进行比较,IP1的第一区域>IP2的第一区域,则该VTEP邻居对中主机为VTEP2,从机为VTEP1。
第二种,获取VTEP邻居对中两个VTEP的优先级,将优先级较高的VTEP确定为VTEP邻居对中的主机,将优先级较低的VTEP确定为VTEP邻居对中的从机。
根据优先级确定的方式与第一种方式相同,这里不再赘述。
可选的,上述S23中还包括:若在设定时长内接收到从机发送的检测应答报文,则确定从机正常;更新与从机对应的VXLAN转发表项和VTEP邻居状态表项。
如果从机正常,从机接收到主机发送的检测查询报文后,会发出检测应答报文进行回应,因此,若在设定时长内接收到从机发送的检测应答报文,则可以确定从机正常。由于VTEP保存有与从机对应的VXLAN转发表项和VTEP邻居状态表项,可以对其进行更新,以确保从机的VXLAN转发表项和VTEP邻居状态表项记录的是从机最新的状态。更新的方式有很多种,例如,可以在从机的VXLAN转发表项和VTEP邻居状态表项设置更新标志位和存活状态信息,通过更新其中的存活状态信息来实现。
可选的,上述S23中的确定从机异常之后,还包括:更新与从机对应的VXLAN转发表项和VTEP邻居状态表项。
由于VTEP保存有与从机对应的VXLAN转发表项和VTEP邻居状态表项,在确定从机异常之后,可以对其进行更新,以确保与从机对应的VXLAN转发表项和VTEP邻居状态表项记录的是从机最新的状态。更新的方式有很多种,例如,可以在与从机对应的VXLAN转发表项和VTEP邻居状态表项设置更新标志位和存活状态信息,通过更新其中的更新标志位和存活状态信息来实现。
可选的,上述S24之后,还包括:若在设定时长内接收到主机发送的检测查询报文,则确定主机正常;向主机发送检测应答报文;以及,更新与主机对应的VXLAN转发表项和VTEP邻居状态表项。
如果主机正常,从机会在设定时长内接收到主机发送的检测查询报文,此时,从机会发出检测应答报文进行回应,因此,VTEP若在设定时长内接收到主机发送的检测查询报文,则可以确定主机正常。由于VTEP保存有与主机对应的VXLAN转发表项和VTEP邻居状态表项,可以对其进行更新,以确保与主机对应的VXLAN转发表项和VTEP邻居状态表项记录的是主机最新的状态。更新的方式有很多种,例如,可以在与主机对应的VXLAN转发表项和VTEP邻居状态表项设置更新标志位和存活状态信息,通过更新其中的更新标志位和存活状态信息来实现。
可选的,上述S24中确定主机异常之后,还包括:更新VTEP中与主机对应的VXLAN转发表项和VTEP邻居状态表项。
由于VTEP保存有与主机对应的VXLAN转发表项和VTEP邻居状态表项,可以对其进行更新,以确保与主机对应的VXLAN转发表项和VTEP邻居状态表项记录的是主机最新的状态。更新的方式有很多种,例如,可以在与主机对应的VXLAN转发表项和VTEP邻居状态表项设置更新标志位和存活状态信息,通过更新其中的更新标志位和存活状态信息来实现。
由于VXLAN网络是建立在IP网络上的Overlay网络。为实现VXLAN隧道的二层和三层转发,同时实现用户间的隔离,可以对现有的网络架构做出相应改动,具体可以新增3类接口数据结构,如下表所示:
VXLAN网络中的每个终端可以关联一个物理端口port_x和vlan_x。在VTEP上创建一个VXLAN实例时,该VXLAN实例包含VNI,OT和OR,其中OT关联port_x,vlan_x。VTEP还需要创建OFI,OFI关联VXLAN实例,OFI根据VNI,与VTEP上的路由转发表关联,由此实现用户的转发隔离,VTEP上可以创建多个OFI。
基于上述改进,在VXLAN网络中转发报文的方法如图4所示,具体包括以下步骤:
S41:接收待转发报文。
S42:获取接收待转发报文的物理端口信息。
VTEP会通过一个物理端口接收待转发报文,获取该待转发报文所属的物理端口porx_x和vlan_x。
S43:查找与物理端口信息关联的VXLAN实例,VXLAN实例包括VNI、OT和OR。
通常port_x和vlan_x与OT关联,而OT有对应的VXLAN实例,因此,可以直接查找与物理端口的VXLAN实例。
S44:确定待转发报文的目的MAC地址是否是VXLAN实例的一个MAC地址;若是,则执行S45;若否,则执行S48。
可以根据待转发报文的目的MAC是否是VXLAN实例的一个MAC地址来确定下一跳设备。
S45:获取与VXLAN实例包括的VNI对应的OFI,并根据待转发报文的目的IP地址在OFI中查找转发表项,若查找到转发表项,则执行S46;若未查找到转发表项,则S47。
若待转发报文的目的MAC是VXLAN实例的一个MAC地址,说明需要将待转发报文送VLXAN网关,需要路由。由于OFI与路由转发表相对应,可以同OFI查找转发表项。
S46:根据查找到的转发表项转发待转发报文。
若查找到转发表项,可以根据查找到的转发表项填写对应的封装参数。例如:SIP=VTEP1(隧道初始VTEP),DIP=VTEP2(隧道目的VTEP),VNI=目的VNI(对端终端所在的VNI)。修改待转发报文的DMAC,由VTEP_MAC修改为对端终端的MAC。修改初始报文的SMAC,由初始终端的VM_MAC修改为VTEP_MAC。
S47:进行地址学习建立转发表项后转发待转发报文。
若未查找到转发表项,则触发VTEP探测进行地址学习,建立转发表项后再转发待转发报文。
S48:通过VXLAN实例包括的OR将待转发报文转发至VXLAN实例包括的OT,通过VXLAN实例包括的OT关联的下一跳设备的物理端口转发待转发报文。
若待转发报文的目的MAC不是VXLAN实例的一个MAC地址,说明需要将待转发报文做VLXAN桥转发,可以通过下一跳设备转发待转发报文。
下面对上述涉及到的VXLAN转发表项、VTEP邻居状态表项和检测报文的格式进行说明。
一、上述涉及到的VTEP上的VXLAN转发表项的逻辑结构如下表所示:
二、上述涉及到的VTEP邻居状态表项的逻辑结构如下表所示:
VTEP标识 | 更新标志位 | 设定时长T1 | 存活状态信息 |
各字段的含义如下:
1、VTEP标识:VTEP的IP地址。
2、更新标志位:取值0或1。0说明失效,1说明存活。
3、设定时长T1:设定失效时间。
4、存活状态信息:取值0或1。0说明失效,1说明存活。
三、上述检测报文的格式如下表所示:
该检测报文为IP报文,以下为检测报文各字段取值及其含义进行说明:
1、检测报文类型:大小为1个字节,取值为0、1和2。0表示竞选报文,每个VTEP邻居对确定各自的角色时,可以通过该报文进行通信;1表示检测查询报文,由每个VTEP邻居对中的主机定期发送检测查询报文;2标识检测应答报文,由每个VTEP邻居对中的从机对主机发送的每个检测查询报文进行应答。
2、报文序号:大小为2个字节,当检测报文类型为0时,报文序号为0;当检测报文类型为1或2时,报文序号为1~65535,每次接收到检测报文时调整报文序号的值。
3、报文发送次数计数:大小为1个字节,根据设定时长与设定周期的关系取值,若设定时长为三个设定周期,则取值从0~2。对主机而言,如果在3个设定周期内没有收到从机的检测应答报文,则持续发送3次检测查询报文,每次发送后该计数加1,当超过3次,则认为从机异常。对从机而言,如果3次没有收到主机发送的检测查询报文,也认为主机异常。
基于同一发明构思,本发明实施例提供一种VTEP异常的检测装置,该装置可以设置在VTEP中,结构如图5所示,包括:
第一确定单元51,用于确定在VXLAN网络中的VTEP邻居,得到VTEP的VTEP邻居对;
第二确定单元52,用于确定在VTEP邻居对中的角色;
第三确定单元53,用于若在VTEP邻居对中的角色为主机,则以设定周期向VTEP邻居对中的从机发送检测查询报文,若在设定时长内未接收到从机发送的检测应答报文,则确定从机异常;若在VTEP邻居对中的角色为从机,则确定在设定时长内是否接收到VTEP邻居对中的主机发送的检测查询报文,若在设定时长内未接收到检测查询报文,则确定主机异常。
该方案中,VXLAN网络中的每个VTEP都可以确定出与自身相关的所有VTEP邻居对,然后检测每个邻居对中对端的VTEP是否异常,相对于现有技术,能够在VXLAN网络中实现检测异常的VTEP,从而能够有效避免因为某个VTEP异常出现黑洞而造成的对端VTEP转发资源和链路带宽的浪费的问题
具体的,第一确定单元51,用于确定在VXLAN网络中的VTEP邻居,得到VTEP的VTEP邻居对,具体用于:
获取VXLAN网络的VTEP信息表;
从VTEP信息表中查找与VTEP上的VXLAN网络标识VNI对应的VTEP,得到VTEP的VTEP邻居;
将VTEP的VTEP邻居与VTEP组合,得到VTEP的VTEP邻居对。
具体的,第二确定单元52,用于确定在VTEP邻居对中的角色,具体用于:
获取VTEP邻居对中两个VTEP的互联网协议IP地址,将IP地址的数值较大的VTEP确定为VTEP邻居对中的主机,将IP地址的数值较小的VTEP确定为VTEP邻居对中的从机;或者,
获取VTEP邻居对中两个VTEP的优先级,将优先级较高的VTEP确定为VTEP邻居对中的主机,将优先级较低的VTEP确定为VTEP邻居对中的从机。
可选的,第一确定单元51,还用于:
为VTEP的VTEP邻居建立VTEP邻居状态表项。
可选的,第三确定单元53,还用于:
若在设定时长内接收到从机发送的检测应答报文,则确定从机正常;更新与从机对应的VXLAN转发表项和VTEP邻居状态表项;或者,
第三确定单元53,还用于在确定从机异常之后,更新与从机对应的VXLAN转发表项和VTEP邻居状态表项。
可选的,第三确定单元53,还用于:
若在设定时长内接收到主机发送的检测查询报文,则确定主机正常;
向主机发送检测应答报文;以及,
更新与主机对应的VXLAN转发表项和VTEP邻居状态表项。
可选的,第三确定单元53,还用于:
在确定主机异常之后,更新与主机对应的VXLAN转发表项和VTEP邻居状态表项。
可选的,还包括:
接收单元,用于接收待转发报文;
获取单元,用于获取接收待转发报文的物理端口信息;
查找单元,用于查找与物理端口信息关联的VXLAN实例,VXLAN实例包括VNI、OT和OR;
第四确定单元,用于确定待转发报文的目的MAC地址是否是VXLAN实例的一个MAC地址;
转发单元,用于若是,则获取与VXLAN实例包括的VNI对应的OFI,并根据待转发报文的目的IP地址在OFI中查找转发表项,若查找到转发表项,则根据查找到的转发表项转发待转发报文,若未查找到转发表项,则进行地址学习建立转发表项后转发待转发报文;若否,则通过VXLAN实例包括的OR将待转发报文转发至VXLAN实例包括的OT,通过VXLAN实例包括的OT关联的下一跳设备的物理端口转发待转发报文。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的可选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括可选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (14)
1.一种VTEP异常的检测方法,应用在虚拟可扩展局域网VXLAN网络包括的虚拟可扩展局域网隧道终端VTEP中,其特征在于,所述方法包括:
所述VTEP确定在所述VXLAN网络中的VTEP邻居,得到所述VTEP的VTEP邻居对;
确定在所述VTEP邻居对中的角色;
若在所述VTEP邻居对中的角色为主机,则以设定周期向所述VTEP邻居对中的从机发送检测查询报文,若在设定时长内未接收到所述从机发送的检测应答报文,则确定所述从机异常;
若在所述VTEP邻居对中的角色为从机,则确定在设定时长内是否接收到所述VTEP邻居对中的主机发送的检测查询报文,若在所述设定时长内未接收到所述检测查询报文,则确定所述主机异常;
其中,还包括:
接收待转发报文;
获取接收所述待转发报文的物理端口信息;
查找与所述物理端口信息关联的VXLAN实例,所述VXLAN实例包括VNI、叠加隧道OT和叠加路由OR;
确定所述待转发报文的目的媒体介入控制MAC地址是否是所述VXLAN实例的一个MAC地址;
若是,则获取与所述VXLAN实例包括的VNI对应的叠加转发实例OFI,并根据所述待转发报文的目的互联网协议IP地址在所述OFI中查找转发表项,若查找到转发表项,则根据查找到的转发表项转发所述待转发报文,若未查找到转发表项,则进行地址学习建立转发表项后转发所述待转发报文;
若否,则通过所述VXLAN实例包括的OR将所述待转发报文转发至所述VXLAN实例包括的OT,通过所述VXLAN实例包括的OT关联的下一跳设备的物理端口转发所述待转发报文。
2.如权利要求1所述的方法,其特征在于,确定在所述VXLAN网络中的VTEP邻居,得到所述VTEP的VTEP邻居对,具体包括:
获取所述VXLAN网络的VTEP信息表;
从所述VTEP信息表中查找与所述VTEP上的VXLAN网络标识VNI对应的VTEP,得到所述VTEP的VTEP邻居;
将所述VTEP的VTEP邻居与所述VTEP组合,得到所述VTEP的VTEP邻居对。
3.如权利要求1所述的方法,其特征在于,确定在所述VTEP邻居对中的角色,具体包括:
获取所述VTEP邻居对中两个VTEP的互联网协议IP地址,将IP地址的数值较大的VTEP确定为所述VTEP邻居对中的主机,将IP地址的数值较小的VTEP确定为所述VTEP邻居对中的从机;或者,
获取所述VTEP邻居对中两个VTEP的优先级,将优先级较高的VTEP确定为所述VTEP邻居对中的主机,将优先级较低的VTEP确定为所述VTEP邻居对中的从机。
4.如权利要求2所述的方法,其特征在于,还包括:
为所述VTEP的VTEP邻居建立VTEP邻居状态表项。
5.如权利要求4所述的方法,其特征在于,还包括:
若在设定时长内接收到所述从机发送的检测应答报文,则确定所述从机正常;更新与所述从机对应的VXLAN转发表项和VTEP邻居状态表项;或者,
确定所述从机异常之后,还包括:
更新与所述从机对应的VXLAN转发表项和VTEP邻居状态表项。
6.如权利要求4所述的方法,其特征在于,还包括:
若在所述设定时长内接收到所述主机发送的检测查询报文,则确定所述主机正常;
向所述主机发送检测应答报文;以及,
更新与所述主机对应的VXLAN转发表项和VTEP邻居状态表项。
7.如权利要求4所述的方法,其特征在于,确定所述主机异常之后,还包括:
更新与所述主机对应的VXLAN转发表项和VTEP邻居状态表项。
8.一种VTEP异常的检测装置,应用在虚拟可扩展局域网VXLAN网络包括的虚拟可扩展局域网隧道终端VTEP中,其特征在于,所述装置包括:
第一确定单元,用于确定在所述VXLAN网络中的VTEP邻居,得到所述VTEP的VTEP邻居对;
第二确定单元,用于确定在所述VTEP邻居对中的角色;
第三确定单元,用于若在所述VTEP邻居对中的角色为主机,则以设定周期向所述VTEP邻居对中的从机发送检测查询报文,若在设定时长内未接收到所述从机发送的检测应答报文,则确定所述从机异常;若在所述VTEP邻居对中的角色为从机,则确定在设定时长内是否接收到所述VTEP邻居对中的主机发送的检测查询报文,若在所述设定时长内未接收到所述检测查询报文,则确定所述主机异常;
其中,还包括:
接收单元,用于接收待转发报文;
获取单元,用于获取接收所述待转发报文的物理端口信息;
查找单元,用于查找与所述物理端口信息关联的VXLAN实例,所述VXLAN实例包括VNI、叠加隧道OT和叠加路由OR;
第四确定单元,用于确定所述待转发报文的目的媒体介入控制MAC地址是否是所述VXLAN实例的一个MAC地址;
转发单元,用于若是,则获取与所述VXLAN实例包括的VNI对应的叠加转发实例OFI,并根据所述待转发报文的目的互联网协议IP地址在所述OFI中查找转发表项,若查找到转发表项,则根据查找到的转发表项转发所述待转发报文,若未查找到转发表项,则进行地址学习建立转发表项后转发所述待转发报文;若否,则通过所述VXLAN实例包括的OR将所述待转发报文转发至所述VXLAN实例包括的OT,通过所述VXLAN实例包括的OT关联的下一跳设备的物理端口转发所述待转发报文。
9.如权利要求8所述的装置,其特征在于,所述第一确定单元,用于确定在所述VXLAN网络中的VTEP邻居,得到所述VTEP的VTEP邻居对,具体用于:
获取所述VXLAN网络的VTEP信息表;
从所述VTEP信息表中查找与所述VTEP上的VXLAN网络标识VNI对应的VTEP,得到所述VTEP的VTEP邻居;
将所述VTEP的VTEP邻居与所述VTEP组合,得到所述VTEP的VTEP邻居对。
10.如权利要求8所述的装置,其特征在于,所述第二确定单元,用于确定在所述VTEP邻居对中的角色,具体用于:
获取所述VTEP邻居对中两个VTEP的互联网协议IP地址,将IP地址的数值较大的VTEP确定为所述VTEP邻居对中的主机,将IP地址的数值较小的VTEP确定为所述VTEP邻居对中的从机;或者,
获取所述VTEP邻居对中两个VTEP的优先级,将优先级较高的VTEP确定为所述VTEP邻居对中的主机,将优先级较低的VTEP确定为所述VTEP邻居对中的从机。
11.如权利要求9所述的装置,其特征在于,所述第一确定单元,还用于:
为所述VTEP的VTEP邻居建立VTEP邻居状态表项。
12.如权利要求11所述的装置,其特征在于,所述第三确定单元,还用于:
若在设定时长内接收到所述从机发送的检测应答报文,则确定所述从机正常;更新与所述从机对应的VXLAN转发表项和VTEP邻居状态表项;或者,
所述第三确定单元,还用于在确定所述从机异常之后,更新与所述从机对应的VXLAN转发表项和VTEP邻居状态表项。
13.如权利要求11所述的装置,其特征在于,所述第三确定单元,还用于:
若在所述设定时长内接收到所述主机发送的检测查询报文,则确定所述主机正常;
向所述主机发送检测应答报文;以及,
更新与所述主机对应的VXLAN转发表项和VTEP邻居状态表项。
14.如权利要求11所述的装置,其特征在于,所述第三确定单元,还用于:
在确定所述主机异常之后,更新与所述主机对应的VXLAN转发表项和VTEP邻居状态表项。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610519903.XA CN106130819B (zh) | 2016-07-04 | 2016-07-04 | Vtep异常的检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610519903.XA CN106130819B (zh) | 2016-07-04 | 2016-07-04 | Vtep异常的检测方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106130819A CN106130819A (zh) | 2016-11-16 |
CN106130819B true CN106130819B (zh) | 2019-10-25 |
Family
ID=57468485
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610519903.XA Active CN106130819B (zh) | 2016-07-04 | 2016-07-04 | Vtep异常的检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106130819B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108111471B (zh) * | 2016-11-25 | 2021-05-11 | 中国电信股份有限公司 | 报文的处理方法、系统及vtep |
CN106878183A (zh) * | 2017-01-22 | 2017-06-20 | 新华三技术有限公司 | 流量转发方法及装置 |
CN106878166B (zh) * | 2017-01-22 | 2020-04-03 | 新华三技术有限公司 | 路由通告方法及装置 |
CN107911495B (zh) * | 2017-11-16 | 2020-12-04 | 新华三技术有限公司 | 一种mac地址同步方法和vtep |
CN108337158B (zh) * | 2018-01-23 | 2020-12-04 | 新华三技术有限公司 | 单播报文转发方法和装置 |
CN109167731B (zh) * | 2018-08-30 | 2021-06-08 | 新华三技术有限公司 | 报文发送方法及装置 |
CN113498062A (zh) * | 2020-04-02 | 2021-10-12 | 西安西电捷通无线网络通信股份有限公司 | 网络设备角色自适应方法及装置 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1913453A (zh) * | 2006-08-22 | 2007-02-14 | 华为技术有限公司 | 实现点到点的快速故障检测的方法和装置 |
CN101094119A (zh) * | 2007-07-26 | 2007-12-26 | 清华大学 | 基于快速切换的覆盖网络故障检测与恢复方法 |
CN101577679A (zh) * | 2009-06-26 | 2009-11-11 | 杭州华三通信技术有限公司 | 实现指定路由器之间组播业务分担的状态管理方法和装置 |
CN101777997A (zh) * | 2010-01-21 | 2010-07-14 | 中兴通讯股份有限公司 | 一种实现网络链路流量切换的方法和系统 |
CN103475645A (zh) * | 2013-08-23 | 2013-12-25 | 天津汉柏汉安信息技术有限公司 | 一种解决ike重复协商的方法 |
CN103746881A (zh) * | 2014-01-13 | 2014-04-23 | 杭州华三通信技术有限公司 | Evi网络中的邻居状态检测方法及装置 |
CN104168140A (zh) * | 2014-08-14 | 2014-11-26 | 杭州华三通信技术有限公司 | Vtep异常情况处理方法及装置 |
WO2015184739A1 (zh) * | 2014-10-21 | 2015-12-10 | 中兴通讯股份有限公司 | 故障检测方法及装置 |
CN105391612A (zh) * | 2015-10-15 | 2016-03-09 | 北京星网锐捷网络技术有限公司 | 一种vxlan vtep邻接学习的方法及装置 |
CN105591841A (zh) * | 2015-12-31 | 2016-05-18 | 盛科网络(苏州)有限公司 | 一种vxlan隧道的连通性检测方法 |
-
2016
- 2016-07-04 CN CN201610519903.XA patent/CN106130819B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1913453A (zh) * | 2006-08-22 | 2007-02-14 | 华为技术有限公司 | 实现点到点的快速故障检测的方法和装置 |
CN101094119A (zh) * | 2007-07-26 | 2007-12-26 | 清华大学 | 基于快速切换的覆盖网络故障检测与恢复方法 |
CN101577679A (zh) * | 2009-06-26 | 2009-11-11 | 杭州华三通信技术有限公司 | 实现指定路由器之间组播业务分担的状态管理方法和装置 |
CN101777997A (zh) * | 2010-01-21 | 2010-07-14 | 中兴通讯股份有限公司 | 一种实现网络链路流量切换的方法和系统 |
CN103475645A (zh) * | 2013-08-23 | 2013-12-25 | 天津汉柏汉安信息技术有限公司 | 一种解决ike重复协商的方法 |
CN103746881A (zh) * | 2014-01-13 | 2014-04-23 | 杭州华三通信技术有限公司 | Evi网络中的邻居状态检测方法及装置 |
CN104168140A (zh) * | 2014-08-14 | 2014-11-26 | 杭州华三通信技术有限公司 | Vtep异常情况处理方法及装置 |
WO2015184739A1 (zh) * | 2014-10-21 | 2015-12-10 | 中兴通讯股份有限公司 | 故障检测方法及装置 |
CN105391612A (zh) * | 2015-10-15 | 2016-03-09 | 北京星网锐捷网络技术有限公司 | 一种vxlan vtep邻接学习的方法及装置 |
CN105591841A (zh) * | 2015-12-31 | 2016-05-18 | 盛科网络(苏州)有限公司 | 一种vxlan隧道的连通性检测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106130819A (zh) | 2016-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106130819B (zh) | Vtep异常的检测方法及装置 | |
CN104243318B (zh) | Vxlan网络中的mac地址学习方法及装置 | |
US9225641B2 (en) | Communication between hetrogenous networks | |
ES2875783T3 (es) | Procedimiento y dispositivo de detección de ruta | |
CN104243630B (zh) | Vxlan网络中的mac地址学习方法及装置 | |
EP3282649B1 (en) | Data packet forwarding | |
US9825859B2 (en) | Item aggregation in shortest path bridging mac-in-mac mode (SPBM) network | |
US10263808B2 (en) | Deployment of virtual extensible local area network | |
US10461958B2 (en) | Packet transmission method and apparatus | |
CN107078963B (zh) | 虚拟可扩展局域网中的路由追踪 | |
CN104052666A (zh) | 实现主机路由可达的方法和装置 | |
CN106470158B (zh) | 报文转发方法及装置 | |
CN104660508A (zh) | 一种报文转发方法及装置 | |
CN106921578B (zh) | 一种转发表项的生成方法和装置 | |
CN105591907B (zh) | 一种路由获取方法和装置 | |
CN105187311B (zh) | 一种报文转发方法及装置 | |
CN105763440A (zh) | 一种报文转发的方法和装置 | |
TWI759571B (zh) | 基於流表的資料傳送方法 | |
CN103731349A (zh) | 一种以太网虚拟化互联邻居间报文转发方法和边缘设备 | |
JP2019521619A (ja) | パケット転送 | |
CN106209638A (zh) | 从虚拟局域网至虚拟可扩展局域网的报文转发方法和设备 | |
JP6119562B2 (ja) | ネットワークシステムおよびネットワーク中継装置 | |
CN110278155A (zh) | 具有多归属和局部偏置的辅助复制 | |
CN105991795A (zh) | Arp表项更新方法以及装置 | |
CN106230667B (zh) | Vtep保活检测方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |