CN107547373B - 一种报文转发方法、装置、设备及机器可读存储介质 - Google Patents

一种报文转发方法、装置、设备及机器可读存储介质 Download PDF

Info

Publication number
CN107547373B
CN107547373B CN201710581871.0A CN201710581871A CN107547373B CN 107547373 B CN107547373 B CN 107547373B CN 201710581871 A CN201710581871 A CN 201710581871A CN 107547373 B CN107547373 B CN 107547373B
Authority
CN
China
Prior art keywords
vtep
message
vtep device
association
equipment
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
Application number
CN201710581871.0A
Other languages
English (en)
Other versions
CN107547373A (zh
Inventor
陈岩
王伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN201710581871.0A priority Critical patent/CN107547373B/zh
Publication of CN107547373A publication Critical patent/CN107547373A/zh
Application granted granted Critical
Publication of CN107547373B publication Critical patent/CN107547373B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例提供了一种报文转发方法、装置、设备及机器可读存储介质,其中,报文转发方法应用于网关设备,该方法包括:接收并根据报文确定下一跳对应的第一VTEP设备;当确定至第一VTEP设备不可达时,判断是否存在与第一VTEP设备具有关联关系的第二VTEP设备,其中,关联关系用于记录与第一VTEP设备属于同一分布式聚合系统的第二VTEP设备;若存在,则根据关联关系将报文发送至第二VTEP设备。通过本方案可以提高EVPN转发报文的成功率。

Description

一种报文转发方法、装置、设备及机器可读存储介质
技术领域
本发明涉及网络通信技术领域,特别是涉及一种报文转发方法、装置、设备及机器可读存储介质。
背景技术
EVPN(Ethernet Virtual Private Network,以太网虚拟专用网)是基于应用于数据中心网络的VXLAN(Virtual eXtensible LAN,可扩展虚拟局域网络)发展而来的网络,用于解决VXLAN无法实现负载分担的问题,利用BGP(Border Gateway Protocol,边界网关协议)作为上层控制协议、VXLAN作为数据层,具有较高的灵活性。
VXLAN是基于IP网络、采用“MAC in UDP”封装形式的二层VPN技术。VXLAN可以基于已有的服务提供商或企业IP网络,为分散的物理站点提供二层互联功能,主要应用于数据中心网络。
VXLAN隧道:在两个VTEP(Virtual eXtensible LAN Tunnel End Point,可扩展虚拟局域网络隧道端点)设备之间完成VXLAN封装报文的单播或组播传输的逻辑隧道。业务入隧道进行VXLAN头、UDP头、IP头封装后,通过三层转发透明地将封装后的报文转发给远端VTEP设备,远端VTEP设备对其进行出隧道解封装处理。
分布式聚合:分布式聚合实现两台VTEP设备之间的跨设备端口聚合。从下游设备看来聚合链路是以太设备上的链路,对于支持普通聚合的设备透明。相对于普通聚合提供的链路级故障保护,分布式聚合提供了设备级冗余保护。
发明内容
本发明实施例的目的在于提供一种报文转发方法、装置、设备及机器可读存储介质,以提高EVPN转发报文的成功率。具体技术方案如下:
第一方面,本发明实施例提供了一种报文转发方法,应用于网关设备,所述方法包括:
接收报文,根据所述报文确定下一跳对应的第一VTEP设备;
当确定至所述第一VTEP设备不可达时,判断是否存在与所述第一VTEP设备具有关联关系的第二VTEP设备,其中,所述关联关系用于记录与所述第一VTEP设备属于同一分布式聚合系统的第二VTEP设备;
若存在,则根据所述关联关系将所述报文发送至所述第二VTEP设备。
第二方面,本发明实施例提供了一种报文转发方法,应用于VTEP设备,所述方法包括:
发送携带关联标识的指定报文至网关设备,以使所述网关设备基于所述指定报文,确定不同VTEP设备之间的关联关系,其中,所述关联标识用于指示不同的VTEP设备是否属于同一分布式聚合系统。
第三方面,本发明实施例提供了一种报文转发装置,应用于网关设备,所述装置包括:
接收模块,用于接收报文,根据所述报文确定下一跳对应的第一VTEP设备;
判断模块,用于当确定至所述第一VTEP设备不可达时,判断是否存在与所述第一VTEP设备具有关联关系的第二VTEP设备,其中,所述关联关系用于记录与所述第一VTEP设备属于同一分布式聚合系统的第二VTEP设备;
第一发送模块,用于在所述判断模块的判断结果为存在时,根据所述关联关系将所述报文发送至所述第二VTEP设备。
第四方面,本发明实施例提供了一种报文转发装置,应用于VTEP设备,所述装置包括:
第二发送模块,用于发送携带关联标识的指定报文至网关设备,以使所述网关设备基于所述指定报文,确定不同VTEP设备之间的关联关系,其中,所述关联标识用于指示不同的VTEP设备是否属于同一分布式聚合系统。
第五方面,本发明实施例提供了一种网关设备,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现第一方面所述的方法步骤。
第六方面,本发明实施例提供了一种机器可读存储介质,存储于网关设备中,用于存储机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现第一方面所述的方法步骤。
第七方面,本发明实施例提供了一种VTEP设备,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现第二方面所述的方法步骤。
第八方面,本发明实施例提供了一种机器可读存储介质,存储于VTEP设备中,用于存储机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现第二方面所述的方法步骤。
本发明实施例提供的一种报文转发方法、装置、设备及机器可读存储介质,网关设备通过接收到的其他网络发来的报文确定下一跳对应的第一VTEP设备,当确定至第一VTEP设备不可达时,即网关设备与第一VTEP设备之间的链路出现故障或者第一VTEP设备出现故障时,判断是否存在与第一VTEP设备具有关联关系的第二VTEP设备,如果存在,则可以根据关联关系将报文转发至第二VTEP设备,其中,第一VTEP设备与第二VTEP设备的关联关系表示第一VTEP设备与第二VTEP设备属于同一分布式聚合系统。可以看出网关设备通过对与第一VTEP设备具有关联关系的第二VTEP设备的判断,增加了网关设备对分布式聚合系统的识别能力,增强了网关设备的处理能力;并且,在转发报文的过程中,如果在向第一VTEP设备转发报文的过程中出现至第一VTEP设备不可达的情况时,可以通过与第一VTEP设备属于同一分布式聚合系统的第二VTEP设备发送该报文,即两个VTEP设备可以向同一CE设备转发报文,实现了针对分布式聚合系统中某一VTEP设备的冗余链路,提高了EVPN转发报文的成功率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术的EVPN的网络架构示意图;
图2为现有技术的简化的EVPN结构示意图;
图3为本发明实施例的应用于网关设备的报文转发方法的一种流程示意图;
图4为本发明实施例的报文转发方法的一种时序图;
图5为本发明实施例的简化的EVPN结构示意图;
图6为本发明实施例的应用于网关设备的报文转发装置的一种结构示意图;
图7为本发明实施例的应用于网关设备的报文转发装置的另一种结构示意图;
图8为本发明实施例的网关设备的结构示意图;
图9为本发明实施例的VTEP设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,为EVPN的网络架构示意图,EVPN中包括多个VTEP(VirtualeXtensible LAN Tunnel End Point,可扩展虚拟局域网络隧道端点)设备及多个CE(Customer Edge,用户网络边缘)设备,EVPN中的VTEP设备之间可以互相连接,一个VTEP设备可以与至少一个CE设备相连,用户之间可以通过接入CE设备,使用EVPN,进行报文的传输。
EVPN中相互连接的VTEP设备之间可以构成一个分布式聚合系统,构成分布式聚合系统的VTEP设备具有相同的关联标识,可以是配置的相同的系统MAC(Media AccessControl,媒体访问控制)信息、相同的系统优先级,或者其它相同或相对应的系统标识,属于同一个分布式聚合系统的VTEP设备之间使用普通聚合口相连,组成的链路为IPL(Intra-Portal Link,分布式聚合内部链路),IPL承担VTEP设备间的协议报文交互、配置同步、表项同步、报文转发等工作。VTEP设备之间用于交互的端口为IPP(Intra-Portal Port,分布式聚合内部端口),并且在一个分布式聚合系统中,一个VTEP设备可以配置至少一个IPP。属于同一个分布式聚合系统的VTEP设备可以连接至同一CE设备,用于提供设备级冗余保护。
如图2所示,为简化的EVPN结构示意图。在EVPN接收由其他网络(例如因特网)发送的报文,并向与该EVPN中的CE设备连接的用户转发该报文时,EVPN中的第一VTEP设备202通过学习与第一VTEP设备202连接的CE设备204发送的ARP(Address Resolution Protocol,地址解析协议)请求,得到CE设备204的MAC地址和/或IP(Internet Protocol,网络互联协议)地址,第一VTEP设备202根据CE设备204的MAC地址和/或IP地址,生成MAC表项或ARP表项,并向与第一VTEP设备202互连的第二VTEP设备203同步该MAC表项或ARP表项。第一VTEP设备202通过BGP报文将包含CE设备的地址信息以及第一VTEP设备的信息的路由信息发送至网关设备201,网关设备201根据接收到的路由信息,生成报文的转发表,网关设备201根据该转发表中CE设备的地址信息对应的表项的下一跳信息,向第一VTEP设备转发报文。
图2中第一VTEP设备202与第二VTEP设备203构成分布式聚合系统,两个VTEP设备具有对应的关联标识,该关联标识可以是用于表示属于同一分布式聚合系统的系统MAC,也可以是用于表示属于同一分布式聚合系统的其他标识。第一VTEP设备202与第二VTEP设备203之间可以直连,也可以通过网络设备相连,该网络设备作为两个VTEP设备之间的转发设备,实现两个VTEP设备之间的协议报文交互、配置同步、表项同步、报文转发等工作。
基于图2所示的报文转发方法,网关设备确定向第一VTEP设备转发报文,但是,属于同一个分布式聚合系统的VTEP设备中,只有一个VTEP设备会向网关设备发送路由信息,如上述第一VTEP设备向网关设备发送路由信息,如果网关设备与第一VTEP设备之间的链路出现故障或者第一VTEP设备出现故障,第一VTEP设备向网关设备发送的路由信息撤销,从而导致网关设备至第一VTEP设备不可达的情况发生,并且由于路由信息撤销导致报文转发失败。
为了提高EVPN转发报文的成功率,本发明实施例提供了一种报文转发方法、装置、设备及机器可读存储介质。
下面首先对本发明实施例所提供的,应用于网关设备的一种报文转发方法进行介绍。
本发明实施例所提供的一种报文转发方法的执行主体可以为用于给EVPN与其他网络传输报文时提供接口的网关设备,且网关设备与EVPN中的多个VTEP设备相连,实现本发明实施例所提供的一种报文转发方法的方式可以为设置于网关设备中的软件、硬件电路及逻辑电路中的至少一种。EVPN中包括至少两个用于转发报文的VTEP设备,为了实现两台VTEP设备之间的相互备份,在一个EVPN中建立多个分布式聚合系统,并且处于同一个分布式聚合系统的VTEP设备之间可以直接互连,或者通过网络设备(例如基站等)互连,当然,VTEP设备之间也可以采用其他的互连方式,但是,同一个分布式聚合系统的VTEP具有对应的关联标识,该关联标识可以是用于表示属于同一分布式聚合系统的系统MAC,也可以是用于表示属于同一分布式聚合系统的其他标识。
如图3所示,本发明实施例所提供的一种报文转发方法,可以包括如下步骤:
S301,接收报文,并根据该报文确定下一跳对应的第一VTEP设备。
在与EVPN连接的网关设备接收到其他网络(例如因特网)发送的报文时,网关设备会根据转发表中报文的目的地址所对应的转发表项,确定向分布式聚合系统中的某一个VTEP设备转发报文,即确定下一跳对应的第一VTEP设备。
S302,当确定至第一VTEP设备不可达时,判断是否存在与第一VTEP设备具有关联关系的第二VTEP设备。
其中,关联关系用于记录与第一VTEP设备属于同一分布式聚合系统的第二VTEP设备。网关设备可以对第一VTEP设备与网关设备之间的链路进行检测,或者对第一VTEP设备的状态进行检测,在检测到第一VTEP设备与网关设备之间的链路故障,或者第一VTEP设备故障之后,确定至第一VTEP设备不可达。为了保证不出现因为不可达导致报文无法转发的情况,需要判断是否存在与第一VTEP设备具有关联关系的第二VTEP设备,这种关联关系可以是通过各VTEP设备发送的携带关联标识的指定报文获取到的,其中,关联标识用于指示不同的VTEP设备是否属于同一分布式聚合系统,例如,关联标识可以为VTEP设备所属分布式聚合系统的系统MAC,或者,可以为VTEP设备所述分布式聚合系统的系统优先级,或者,还可以为所属分布式聚合系统的另一VTEP设备的信息等等,这里不再一一列举。关联关系可以记录在网关设备的存储空间中,由于关联关系记录了与第一VTEP设备属于同一分布式聚合系统的第二VTEP设备,属于同一分布式聚合系统的两个VTEP设备之间可以实现备份的功能,即由于属于同一分布式聚合系统的两个VTEP设备可以连接至同一CE设备,则如果至第一VTEP设备不可达,且存在与第一VTEP设备具有关联关系的第二VTEP设备,则可以将报文发送给第二VTEP设备,再由第二VTEP设备转发报文至CE设备,从而保证了报文转发的成功率。
S303,若存在与第一VTEP设备具有关联关系的第二VTEP设备,则根据关联关系将报文发送至第二VTEP设备。
如果存在与第一VTEP设备具有关联关系的第二VTEP设备,则说明第一VTEP设备与第二VTEP设备属于同一分布式聚合系统,则根据关联关系,可以确定第二VTEP设备的设备信息,例如第二VTEP设备的MAC地址和/或IP地址等,基于上述分析,将报文发送至第二VTEP设备可以保证报文转发的成功率。实现将报文发送至第二VTEP设备的方式,可以是通过修改对应转发表项的下一跳的信息为第二VTEP设备的MAC地址和/或IP地址实现,也可以是通过指令实现。
应用本实施例,网关设备通过接收到的其他网络发来的报文确定下一跳对应的第一VTEP设备,当确定至第一VTEP设备不可达时,即网关设备与第一VTEP设备之间的链路出现故障或者第一VTEP设备出现故障时,判断是否存在与第一VTEP设备具有关联关系的第二VTEP设备,如果存在,则可以根据关联关系将报文转发至第二VTEP设备,其中,第一VTEP设备与第二VTEP设备的关联关系表示第一VTEP设备与第二VTEP设备属于同一分布式聚合系统。可以看出网关设备通过对与第一VTEP设备具有关联关系的第二VTEP设备的判断,增加了网关设备对分布式聚合系统的识别能力,增强了网关设备的处理能力;并且,在转发报文的过程中,如果在向第一VTEP设备转发报文的过程中出现至第一VTEP设备不可达的情况时,可以通过与第一VTEP设备属于同一分布式聚合系统的第二VTEP设备发送该报文,即两个VTEP设备可以向同一CE设备转发报文,实现了针对分布式聚合系统中某一VTEP设备的冗余链路,提高了EVPN转发报文的成功率。
如图4所示,从CE设备、VTEP设备和网关设备的交互角度,给出了本发明实施例所提供的一种报文转发方法的时序图,可以包括如下步骤:
S401,EVPN中的各VTEP设备向网关设备发送携带关联标识的指定报文。
其中,关联标识用于指示不同的VTEP设备是否属于同一分布式聚合系统,关联标识可以为:VTEP设备所属分布式聚合系统的MAC地址和/或IP地址,或者,VTEP设备所属分布式聚合系统的系统优先级,或者,VTEP设备所属分布式聚合系统的系统名称等信息。
S402,网关设备在接收到各VTEP设备发送的指定报文后,将具有对应关联标识的VTEP设备建立关联关系。
具有对应关联标识的VTEP设备可以确定为属于同一分布式聚合系统,例如,具有相同的所属分布式聚合系统的MAC地址和/或IP地址,或者具有相同的所属分布式聚合系统的系统优先级,或者具有相同的所属分布式聚合系统的系统名称的VTEP设备为具有对应关联标识的VTEP设备,可以将VTEP设备建立关联关系,用于表示VTEP设备属于同一分布式聚合系统。可以将该关联关系记录在网关设备的存储空间中。
在建立关联关系之前,还可以获取具有对应关联标识的VTEP设备的IPL状态,由于如果IPL状态为异常状态,则属于同一分布式聚合系统中的VTEP设备之间不能相互同步数据,在IPL状态为正常状态时属于同一分布式聚合系统中的VTEP设备可以同步数据。因此,为保证两个VTEP设备之间可以正常同步数据,可以将IPL状态为正常状态的具有对应关联标识的VTEP设备建立关联关系。当然,如果IPL状态为异常状态,虽然VTEP设备之间不能正常同步数据,但是不影响将报文转发至第二VTEP设备,所以也可以在不确定IPL状态的情况下,建立关联关系。其中,IPL状态的确定可以通过检测IPP的状态实现,IPP的状态为开启时,IPL状态为正常状态,IPP的状态为关闭时,IPL状态为异常状态;当然,IPL状态也可以为通过设置在链路上的传感器检测得到,这里不做具体限定。
S404,网关设备在接收到其它网络发送的报文时,根据报文确定下一跳对应的第一VTEP设备。
网关设备接收到其它网络发送的报文,需要将该报文发送至请求该报文的CE设备,或者是指定的接收该报文的CE设备。针对请求该报文的情况,在CE设备上存在一预先配置的路由表,根据该路由表可以确定转发报文至该CE设备的IP地址,CE设备在其本地ARP缓存中检查与IP地址相匹配的MAC地址,如果CE设备在ARP缓存中没有找到匹配的MAC地址,则需要将CE设备的MAC地址和/或IP地址至该CE设备的IP地址包含在ARP请求中,通过广播的方式上报给EVPN的每个VTEP设备。如果CE设备与EVPN中的某一VTEP设备通过通信链路直接连接,则CE设备直接向该VTEP设备发送ARP请求。EVPN上的各VTEP设备在接收到ARP请求后,通过检查ARP请求中的转发报文至该CE设备的IP地址是否与本VTEP设备的IP地址相匹配,如果第一VTEP设备确定相匹配,则确定第一VTEP设备为转发报文至CE设备的VTEP设备,则通过学习ARP请求,得到CE设备的MAC地址及IP地址。第一VTEP设备在得到CE设备的MAC地址和IP地址后,可以将CE设备的MAC地址和IP地址映射添加到第一VTEP设备的本地ARP缓存中,生成MAC表项或者ARP表项。第一VTEP设备在生成MAC表项或ARP表项后,可以向网关设备上报请求报文的CE设备的设备信息,其中,CE设备的设备信息可以为CE设备的IP地址和/或MAC地址。第一VTEP设备通过上报该信息,告知网关设备可以通过第一VTEP设备转发对应的报文至具有上述地址信息的CE设备。所以,通过报文可以确定下一跳对应的第一VTEP设备,下一跳的信息可以存储在该报文的目的设备的转发表项中。
S405,当确定至第一VTEP设备不可达时,判断是否存在与第一VTEP设备具有关联关系的第二VTEP设备。
S406,若存在,则根据关联关系将报文发送至第二VTEP设备。
S405、S406与图3所示实施例的S302、S303相同,这里不再赘述。在将报文发送至第二VTEP设备之后,可以通过第二VTEP设备向CE设备转发该报文,从而保证报文转发的成功率。如果不存在与第一VTEP设备具有关联关系的第二VTEP设备,则说明没有与第一VTEP设备属于同一分布式聚合系统的VTEP设备,报文无法通过VTEP设备转发至指定CE设备,导致报文转发失败。
应用本实施例,网关设备通过接收到的其他网络发来的报文确定下一跳对应的第一VTEP设备,当确定至第一VTEP设备不可达时,即网关设备与第一VTEP设备之间的链路出现故障或者第一VTEP设备出现故障时,判断是否存在与第一VTEP设备具有关联关系的第二VTEP设备,如果存在,则可以根据关联关系将报文转发至第二VTEP设备,其中,第一VTEP设备与第二VTEP设备的关联关系表示第一VTEP设备与第二VTEP设备属于同一分布式聚合系统。可以看出网关设备通过对与第一VTEP设备具有关联关系的第二VTEP设备的判断,增加了网关设备对分布式聚合系统的识别能力,增强了网关设备的处理能力;并且,在转发报文的过程中,如果在向第一VTEP设备转发报文的过程中出现至第一VTEP设备不可达的情况时,可以通过与第一VTEP设备属于同一分布式聚合系统的第二VTEP设备发送该报文,即两个VTEP设备可以向同一CE设备转发报文,实现了针对分布式聚合系统中某一VTEP设备的冗余链路,提高了EVPN转发报文的成功率。
下面以一个具体的例子对上述实施例进行详细说明。
如图5所示,假设分布式聚合系统的系统MAC地址为12-12-12-12-12-12,CE设备504的IP地址为10.111.10.1/32,CE设备504的MAC地址为11-11-11-11-11-11。
实现报文转发的具体步骤包括:
第一步,确定第一VTEP设备502与第二VTEP设备503之间构成一个分布式聚合系统,该分布式聚合系统的MAC地址为12-12-12-12-12-12,系统优先级为200,且IPP为开启状态。
第二步,第一VTEP设备502将分布式聚合系统的MAC地址12-12-12-12-12-12、系统优先级为200及IPP状态通过BGP以指定报文的形式上报给网关设备501;第二VTEP设备503也将分布式聚合系统的MAC地址12-12-12-12-12-12、系统优先级为200及IPP状态通过BGP以指定报文的形式上报给网关设备501。
第三步,网关设备501在接收到第一VTEP设备502和第二VTEP设备503分别上报的指定报文后,进行解析,判断第一VTEP设备502上报的指定报文中的MAC地址、系统优先级与第二VTEP设备503上报的指定报文中的MAC地址、系统优先级是否相同,由于MAC地址均为12-12-12-12-12-12、优先级均为200,则确定相同;再比较IPP状态是否为开启状态,确定第一VTEP设备502上报的指定报文中的IPP状态和第二VTEP设备503上报的指定报文中的IPP状态均为开启状态。
第四步,通过第三步的判断,网关设备501确定第一VTEP设备502上报的指定报文中的MAC地址、系统优先级与第二VTEP设备503上报的指定报文中的MAC地址、系统优先级相同,且IPP状态均为开启状态,则确定第一VTEP设备502与第二VTEP设备503为属于同一分布式聚合系统的VTEP设备。将第一VTEP设备502与第二VTEP设备503建立关联关系。
第五步,CE设备504向第一VTEP设备502发送ARP请求,第一VTEP设备502通过学习该ARP请求,得到CE设备504的IP地址为10.111.10.1/32,CE设备504的MAC地址为11-11-11-11-11-11。
第六步,第一VTEP设备502根据CE设备504的ARP请求,通过BGP报文,生成EVPN 2类路由信息(CE设备的地址信息对应的下一跳),发送该路由信息至网关设备501,网关设备501从第一VTEP设备502收到该路由信息,在接收到其它网络发来的报文时,确定下一跳对应的第一VTEP设备,即向第一VTEP设备发送报文。
第七步,如果网关设备501至第一VTEP设备502不可达,网关设备501无法向第一VTEP设备502继续发送报文,由于第二VTEP设备503与第一VTEP设备502具有关联关系,则根据该关联关系将报文发送至第二VTEP设备503,由第二VTEP设备503向CE设备发送报文。
与现有技术相比,本方案中,网关设备通过接收到的其他网络发来的报文确定下一跳对应的第一VTEP设备,当确定至第一VTEP设备不可达时,即网关设备与第一VTEP设备之间的链路出现故障或者第一VTEP设备出现故障时,判断是否存在与第一VTEP设备具有关联关系的第二VTEP设备,如果存在,则可以根据关联关系将报文转发至第二VTEP设备,其中,第一VTEP设备与第二VTEP设备的关联关系表示第一VTEP设备与第二VTEP设备属于同一分布式聚合系统。可以看出网关设备通过对与第一VTEP设备具有关联关系的第二VTEP设备的判断,增加了网关设备对分布式聚合系统的识别能力,增强了网关设备的处理能力;并且,在转发报文的过程中,如果在向第一VTEP设备转发报文的过程中出现至第一VTEP设备不可达的情况时,可以通过与第一VTEP设备属于同一分布式聚合系统的第二VTEP设备发送该报文,即两个VTEP设备可以向同一CE设备转发报文,实现了针对分布式聚合系统中某一VTEP设备的冗余链路,提高了EVPN转发报文的成功率。
相应于上述实施例,本发明实施例提供了一种报文转发装置,如图6所示,应用于网关设备,该装置可以包括:
接收模块610,用于接收报文,根据所述报文确定下一跳对应的第一VTEP设备;
判断模块620,用于当确定至所述第一VTEP设备不可达时,判断是否存在与所述第一VTEP设备具有关联关系的第二VTEP设备,其中,所述关联关系用于记录与所述第一VTEP设备属于同一分布式聚合系统的第二VTEP设备;
第一发送模块630,用于在所述判断模块的判断结果为存在时,根据所述关联关系将所述报文发送至所述第二VTEP设备。
应用本实施例,网关设备通过接收到的其他网络发来的报文确定下一跳对应的第一VTEP设备,当确定至第一VTEP设备不可达时,即网关设备与第一VTEP设备之间的链路出现故障或者第一VTEP设备出现故障时,判断是否存在与第一VTEP设备具有关联关系的第二VTEP设备,如果存在,则可以根据关联关系将报文转发至第二VTEP设备,其中,第一VTEP设备与第二VTEP设备的关联关系表示第一VTEP设备与第二VTEP设备属于同一分布式聚合系统。可以看出网关设备通过对与第一VTEP设备具有关联关系的第二VTEP设备的判断,增加了网关设备对分布式聚合系统的识别能力,增强了网关设备的处理能力;并且,在转发报文的过程中,如果在向第一VTEP设备转发报文的过程中出现至第一VTEP设备不可达的情况时,可以通过与第一VTEP设备属于同一分布式聚合系统的第二VTEP设备发送该报文,即两个VTEP设备可以向同一CE设备转发报文,实现了针对分布式聚合系统中某一VTEP设备的冗余链路,提高了EVPN转发报文的成功率。
基于图6所示实施例,本发明实施例还提供了一种报文转发装置,如图7所示,应用于网关设备,该装置可以包括:
接收模块710,用于接收报文,根据所述报文确定下一跳对应的第一VTEP设备;所述接收模块710,还可以用于:接收VTEP设备发送的携带关联标识的指定报文,其中,所述关联标识用于指示不同的VTEP设备是否属于同一分布式聚合系统;
建立模块720,用于将具有对应关联标识的VTEP设备建立关联关系;
判断模块730,用于当确定至所述第一VTEP设备不可达时,判断是否存在与所述第一VTEP设备具有关联关系的第二VTEP设备,其中,所述关联关系用于记录与所述第一VTEP设备属于同一分布式聚合系统的第二VTEP设备;
第一发送模块740,用于在所述判断模块的判断结果为存在时,根据所述关联关系将所述报文发送至所述第二VTEP设备。
可选的,图7所述装置,还可以包括:
获取模块,用于获取VTEP设备之间的IPL状态;
确定模块,用于确定具有对应关联标识的VTEP设备之间的IPL状态为正常状态。
应用本实施例,网关设备通过接收到的其他网络发来的报文确定下一跳对应的第一VTEP设备,当确定至第一VTEP设备不可达时,即网关设备与第一VTEP设备之间的链路出现故障或者第一VTEP设备出现故障时,判断是否存在与第一VTEP设备具有关联关系的第二VTEP设备,如果存在,则可以根据关联关系将报文转发至第二VTEP设备,其中,第一VTEP设备与第二VTEP设备的关联关系表示第一VTEP设备与第二VTEP设备属于同一分布式聚合系统。可以看出网关设备通过对与第一VTEP设备具有关联关系的第二VTEP设备的判断,增加了网关设备对分布式聚合系统的识别能力,增强了网关设备的处理能力;并且,在转发报文的过程中,如果在向第一VTEP设备转发报文的过程中出现至第一VTEP设备不可达的情况时,可以通过与第一VTEP设备属于同一分布式聚合系统的第二VTEP设备发送该报文,即两个VTEP设备可以向同一CE设备转发报文,实现了针对分布式聚合系统中某一VTEP设备的冗余链路,提高了EVPN转发报文的成功率。
相应的,应用于VTEP设备的报文转发装置可以包括:
第二发送模块,用于发送携带关联标识的指定报文至网关设备,以使所述网关设备基于所述指定报文,确定不同VTEP设备之间的关联关系,其中,所述关联标识用于指示不同的VTEP设备是否属于同一分布式聚合系统。
需要说明的是,本发明实施例的报文转发装置为上述报文转发方法的装置,则上述报文转发方法的所有实施例均适用于该报文转发装置,且均能达到相同或相似的有益效果。
本发明实施例还提供了一种网关设备,如图8所示,网关设备800包括处理器810和机器可读存储介质820,所述机器可读存储介质820存储有能够被所述处理器810执行的机器可执行指令,所述处理器810被所述机器可执行指令促使实现如下步骤:
接收报文,根据所述报文确定下一跳对应的第一VTEP设备;
当确定至所述第一VTEP设备不可达时,判断是否存在与所述第一VTEP设备具有关联关系的第二VTEP设备,其中,所述关联关系用于记录与所述第一VTEP设备属于同一分布式聚合系统的第二VTEP设备;
若存在,则根据所述关联关系将所述报文发送至所述第二VTEP设备。
可选的,所述处理器810还可以实现:
接收VTEP设备发送的携带关联标识的指定报文,其中,所述关联标识用于指示不同的VTEP设备是否属于同一分布式聚合系统;
将具有对应关联标识的VTEP设备建立关联关系。
可选的,所述处理器810还可以实现:
获取VTEP设备之间的IPL状态;
确定具有对应关联标识的VTEP设备之间的IPL状态为正常状态。
相应于上述实施例所提供的报文转发方法,本发明实施例还提供了一种机器可读存储介质,存储于网关设备中,用于存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现如下步骤:
接收报文,根据所述报文确定下一跳对应的第一VTEP设备;
当确定至所述第一VTEP设备不可达时,判断是否存在与所述第一VTEP设备具有关联关系的第二VTEP设备,其中,所述关联关系用于记录与所述第一VTEP设备属于同一分布式聚合系统的第二VTEP设备;
若存在,则根据所述关联关系将所述报文发送至所述第二VTEP设备。
可选的,所述处理器还可以实现:
接收VTEP设备发送的携带关联标识的指定报文,其中,所述关联标识用于指示不同的VTEP设备是否属于同一分布式聚合系统;
将具有对应关联标识的VTEP设备建立关联关系。
可选的,所述处理器还可以实现:
获取VTEP设备之间的IPL状态;
确定具有对应关联标识的VTEP设备之间的IPL状态为正常状态。
为了解决现有技术的问题,本发明实施例还提供了一种VTEP设备,如图9所示,VTEP设备900包括处理器910和机器可读存储介质920,所述机器可读存储介质920存储有能够被所述处理器910执行的机器可执行指令,所述处理器910被所述机器可执行指令促使实现如下步骤:
发送携带关联标识的指定报文至网关设备,以使所述网关设备基于所述指定报文,确定不同VTEP设备之间的关联关系,其中,所述关联标识用于指示不同的VTEP设备是否属于同一分布式聚合系统。
上述网关设备及VTEP设备中提到的机器可读存储介质可以包括RAM(RandomAccess Memory,随机存取存储器),也可以包括NVM(Non-Volatile Memory,非易失性存储器),例如至少一个磁盘存储器。可选的,机器可读存储介质还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括CPU(Central Processing Unit,中央处理器)、NP(Network Processor,网络处理器)等;还可以是DSP(Digital Signal Processing,数字信号处理器)、ASIC(Application Specific Integrated Circuit,专用集成电路)、FPGA列(Field-Programmable Gate Array,现场可编程门阵)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本实施例中,网关设备及VTEP设备中的处理器通过读取机器可读存储介质中存储的计算机程序,并通过运行该计算机程序,能够实现:网关设备通过接收到的其他网络发来的报文确定下一跳对应的第一VTEP设备,当确定至第一VTEP设备不可达时,即网关设备与第一VTEP设备之间的链路出现故障或者第一VTEP设备出现故障时,判断是否存在与第一VTEP设备具有关联关系的第二VTEP设备,如果存在,则可以根据关联关系将报文转发至第二VTEP设备,其中,第一VTEP设备与第二VTEP设备的关联关系表示第一VTEP设备与第二VTEP设备属于同一分布式聚合系统。可以看出网关设备通过对与第一VTEP设备具有关联关系的第二VTEP设备的判断,增加了网关设备对分布式聚合系统的识别能力,增强了网关设备的处理能力;并且,在转发报文的过程中,如果在向第一VTEP设备转发报文的过程中出现至第一VTEP设备不可达的情况时,可以通过与第一VTEP设备属于同一分布式聚合系统的第二VTEP设备发送该报文,即两个VTEP设备可以向同一CE设备转发报文,实现了针对分布式聚合系统中某一VTEP设备的冗余链路,提高了EVPN转发报文的成功率。
相应于上述实施例所提供的报文转发方法,本发明实施例还提供了一种机器可读存储介质,存储于VTEP设备中,用于存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现如下步骤:
发送携带关联标识的指定报文至网关设备,以使所述网关设备基于所述指定报文,确定不同VTEP设备之间的关联关系,其中,所述关联标识用于指示不同的VTEP设备是否属于同一分布式聚合系统。
本实施例中,存储于网关设备中的机器可读存储介质及存储于VTEP设备中的机器可读存储介质存储有在运行时执行本申请实施例所提供的报文转发方法的应用程序,因此能够实现:网关设备通过接收到的其他网络发来的报文确定下一跳对应的第一VTEP设备,当确定至第一VTEP设备不可达时,即网关设备与第一VTEP设备之间的链路出现故障或者第一VTEP设备出现故障时,判断是否存在与第一VTEP设备具有关联关系的第二VTEP设备,如果存在,则可以根据关联关系将报文转发至第二VTEP设备,其中,第一VTEP设备与第二VTEP设备的关联关系表示第一VTEP设备与第二VTEP设备属于同一分布式聚合系统。可以看出网关设备通过对与第一VTEP设备具有关联关系的第二VTEP设备的判断,增加了网关设备对分布式聚合系统的识别能力,增强了网关设备的处理能力;并且,在转发报文的过程中,如果在向第一VTEP设备转发报文的过程中出现至第一VTEP设备不可达的情况时,可以通过与第一VTEP设备属于同一分布式聚合系统的第二VTEP设备发送该报文,即两个VTEP设备可以向同一CE设备转发报文,实现了针对分布式聚合系统中某一VTEP设备的冗余链路,提高了EVPN转发报文的成功率。
对于网关设备、VTEP设备以及机器可读存储介质实施例而言,由于其所涉及的方法内容基本相似于前述的方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (10)

1.一种报文转发方法,其特征在于,所述方法应用于与以太网虚拟专用网EVPN连接的网关设备,所述方法包括:
接收VTEP设备发送的携带关联标识的指定报文,其中,所述关联标识用于指示不同的VTEP设备是否属于同一分布式聚合系统;
将具有对应关联标识的VTEP设备建立关联关系;
在接收到其他网络发送的报文时,根据所述报文确定下一跳对应的第一VTEP设备;
当确定至所述第一VTEP设备不可达时,判断是否存在与所述第一VTEP设备具有关联关系的第二VTEP设备,其中,所述关联关系用于记录与所述第一VTEP设备属于同一分布式聚合系统的第二VTEP设备;
若存在,则根据所述关联关系将所述报文发送至所述第二VTEP设备。
2.根据权利要求1所述的方法,其特征在于,在将具有对应关联标识的VTEP设备建立关联关系之前,所述方法还包括:
获取VTEP设备之间的IPL状态;
确定具有对应关联标识的VTEP设备之间的IPL状态为正常状态。
3.一种报文转发方法,其特征在于,所述方法应用于VTEP设备,所述方法包括:
发送携带关联标识的指定报文至与EVPN连接的网关设备,以使所述网关设备基于所述指定报文,确定不同VTEP设备之间的关联关系,其中,所述关联标识用于指示不同的VTEP设备是否属于同一分布式聚合系统。
4.一种报文转发装置,其特征在于,所述装置应用于与EVPN连接的网关设备,所述装置包括:
接收模块,用于接收VTEP设备发送的携带关联标识的指定报文,其中,所述关联标识用于指示不同的VTEP设备是否属于同一分布式聚合系统;
建立模块,用于将具有对应关联标识的VTEP设备建立关联关系;
接收模块,用于在接收到其他网络发送的报文时,根据所述报文确定下一跳对应的第一VTEP设备;
判断模块,用于当确定至所述第一VTEP设备不可达时,判断是否存在与所述第一VTEP设备具有关联关系的第二VTEP设备,其中,所述关联关系用于记录与所述第一VTEP设备属于同一分布式聚合系统的第二VTEP设备;
第一发送模块,用于在所述判断模块的判断结果为存在时,根据所述关联关系将所述报文发送至所述第二VTEP设备。
5.根据权利要求4所述的装置,其特征在于,所述装置还包括:
获取模块,用于获取VTEP设备之间的IPL状态;
确定模块,用于确定具有对应关联标识的VTEP设备之间的IPL状态为正常状态。
6.一种报文转发装置,其特征在于,所述装置应用于VTEP设备,所述装置包括:
第二发送模块,用于发送携带关联标识的指定报文至与EVPN连接的网关设备,以使所述网关设备基于所述指定报文,确定不同VTEP设备之间的关联关系,其中,所述关联标识用于指示不同的VTEP设备是否属于同一分布式聚合系统。
7.一种网关设备,其特征在于,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现权利要求1-2任一所述的方法步骤。
8.一种机器可读存储介质,其特征在于,存储于网关设备中,用于存储机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现权利要求1-2任一所述的方法步骤。
9.一种VTEP设备,其特征在于,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现权利要求3所述的方法步骤。
10.一种机器可读存储介质,其特征在于,存储于VTEP设备中,用于存储机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现权利要求3所述的方法步骤。
CN201710581871.0A 2017-07-17 2017-07-17 一种报文转发方法、装置、设备及机器可读存储介质 Active CN107547373B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710581871.0A CN107547373B (zh) 2017-07-17 2017-07-17 一种报文转发方法、装置、设备及机器可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710581871.0A CN107547373B (zh) 2017-07-17 2017-07-17 一种报文转发方法、装置、设备及机器可读存储介质

Publications (2)

Publication Number Publication Date
CN107547373A CN107547373A (zh) 2018-01-05
CN107547373B true CN107547373B (zh) 2021-06-25

Family

ID=60970184

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710581871.0A Active CN107547373B (zh) 2017-07-17 2017-07-17 一种报文转发方法、装置、设备及机器可读存储介质

Country Status (1)

Country Link
CN (1) CN107547373B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108600099B (zh) * 2018-04-19 2020-04-03 新华三技术有限公司 一种报文转发方法、装置及叶子设备
CN108600075B (zh) * 2018-04-23 2021-06-29 新华三技术有限公司 一种故障处理方法及装置
CN109474530A (zh) * 2018-11-13 2019-03-15 新华三技术有限公司 一种设备探测方法及装置
CN113518025B (zh) * 2021-05-31 2023-04-25 新华三信息安全技术有限公司 一种报文管理方法、装置、设备及机器可读存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105577417A (zh) * 2014-11-06 2016-05-11 杭州华三通信技术有限公司 基于vxlan网络的报文转发方法及装置
CN106878183A (zh) * 2017-01-22 2017-06-20 新华三技术有限公司 流量转发方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105471740B (zh) * 2014-07-09 2018-10-12 新华三技术有限公司 基于软件定义网络的网关迁徙处理方法及装置
CN106878047B (zh) * 2016-12-13 2019-11-12 新华三技术有限公司 故障处理方法及装置
CN106878065B (zh) * 2017-01-18 2021-06-11 新华三技术有限公司 一种分布式聚合系统的配置方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105577417A (zh) * 2014-11-06 2016-05-11 杭州华三通信技术有限公司 基于vxlan网络的报文转发方法及装置
CN106878183A (zh) * 2017-01-22 2017-06-20 新华三技术有限公司 流量转发方法及装置

Also Published As

Publication number Publication date
CN107547373A (zh) 2018-01-05

Similar Documents

Publication Publication Date Title
US10516590B2 (en) External health checking of virtual private cloud network environments
US11223514B2 (en) Method and system of a dynamic high-availability mode based on current wide area network connectivity
CN106878166B (zh) 路由通告方法及装置
CN107547373B (zh) 一种报文转发方法、装置、设备及机器可读存储介质
US10129137B2 (en) Transferring data in a gateway
WO2018120798A1 (zh) Vxlan报文处理方法、设备及系统
US8782160B2 (en) Cluster control system, cluster control method, and program
CN111130981B (zh) 一种mac地址的代理应答方法及装置
US10673736B2 (en) Traffic reduction in data center fabrics
WO2016101646A1 (zh) 以太虚拟网络的接入方法及装置
US10454809B2 (en) Automatic network topology detection for merging two isolated networks
CN107094110B (zh) 一种dhcp报文转发方法及装置
CN109474495B (zh) 一种隧道检测方法及装置
WO2019080592A1 (zh) 一种发送报文的方法和设备
WO2022083563A1 (zh) 链路检测方法、链路检测装置、终端设备和存储介质
CN107872368B (zh) 一种网络节点集群中网关可达性的检测方法、装置及终端
JP2015534150A (ja) ミドルウェアマシン環境で高可用性(ha)ネットワーク通信をサポートするためのシステムおよび方法
CN113328931B (zh) 一种路由下发方法及装置
CN107634907B (zh) 一种二层虚拟专用网络l2vpn的数据转发方法和装置
JP2023544870A (ja) Mlagリンク障害時切換え方法および装置
CN113381929B (zh) 一种路由处理方法、网关设备及计算机存储介质
CN112187584A (zh) 路径故障探测方法、系统、服务器及存储介质
US10924397B2 (en) Multi-VRF and multi-service insertion on edge gateway virtual machines
CN111245700A (zh) 一种环路检测方法及装置
US20200287784A1 (en) Priority based selection of time services

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant