CN114666267A - 以太虚拟专用网的数据处理方法、设备及存储介质 - Google Patents
以太虚拟专用网的数据处理方法、设备及存储介质 Download PDFInfo
- Publication number
- CN114666267A CN114666267A CN202011417069.6A CN202011417069A CN114666267A CN 114666267 A CN114666267 A CN 114666267A CN 202011417069 A CN202011417069 A CN 202011417069A CN 114666267 A CN114666267 A CN 114666267A
- Authority
- CN
- China
- Prior art keywords
- node
- message
- bum
- esi
- label value
- 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.)
- Pending
Links
Images
Classifications
-
- 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/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- 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/18—Loop-free operations
-
- 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/74—Address processing for routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开一种以太虚拟专用网的数据处理方法、设备及存储介质,其中,数据处理方法包括接收第一节点发送的路由通告并根据路由通告得到路由信息,基于相同的ESI将路由信息合并,得到转发表,转发表的每个转发表项由第一节点的网络端口标识、ESI和标签值构成,当向所述第一节点转发BUM报文,根据所述转发表查找得到所述第一标签值,并根据所述BUM报文的封装结构将所述第一标签值封装在所述BUM报文中,并转发到所述第一节点,以使所述第一节点解封装该BUM报文并根据解封装所得的所述第一标签值过滤本地转发端口,避免报文成环。本发明实施例在对BUM报文转发时不需要区分BUM报文的业务实例,从而精简了转发表,能够降低转发表资源的占用。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种以太虚拟专用网的数据处理方法、设备及存储介质。
背景技术
在以太虚拟专用网EVPN(Ethernet Virtual Private Network)中,当客户端边缘CE(Custom Edge)设备连接到多个运营商边缘PE(Provider Edge)设备,要划分出多个以太网段ES(Ethernet Segment)并为每个ES设置相应的以太网段标签ESI(Ethernet SegmentIdentifier),实现设备间报文的有序转发。
在EVPN内转发广播、未知单播、组播BUM(Broadcast、Unkown-unicast、Multicast)报文,需要解决回环问题。目前的数据处理手段中,BUM报文的接收端设备按照路由形成转发表,避免接收端设备将BUM报文向同一ES下的其他设备转发,然而当PE设备和ES的数量越多,转发表消耗的标签资源就越大,并且不同的EVPN业务要各自形成转发表,因此会占用了大量的转发表资源,不利于转发表资源的有效利用。
发明内容
以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
本发明实施例提供了一种以太虚拟专用网的数据处理方法、设备及存储介质,将同一ES内来源于相同PE的多条路由合并形成一个转发表,减小转发表资源的占用。
第一方面,本发明实施例提供了一种以太虚拟专用网的数据处理方法,所述以太虚拟专用网包括互为相邻节点的第一节点和第二节点,所述数据处理方法应用于所述第二节点,包括:
接收所述第一节点发送的路由通告并根据所述路由通告得到路由信息,所述路由信息包括以太网段标识ESI和与所述ESI对应的标签值;
基于相同的ESI将所述路由信息合并,得到转发表,所述转发表的每个转发表项由所述第一节点的网络端口标识、所述ESI和所述标签值构成;
当向所述第一节点转发广播、未知单播、组播BUM报文,以所述第一节点的网络端口标识和所述BUM报文的源端口对应的第一ESI查找所述转发表,确定第一标签值;
根据所述BUM报文的封装结构将所述第一标签值封装在所述BUM报文中,得到BUM封装报文;
将所述BUM封装报文转发到所述第一节点,以使所述第一节点解封装所述BUM封装报文并根据解封装所得的所述第一标签值过滤本地转发端口。
第二方面,本发明实施例还提供了一种以太虚拟专用网的数据处理方法,所述以太虚拟专用网包括互为相邻节点的第一节点和第二节点,所述数据处理方法应用于所述第一节点,包括:
获取本地端口对应的ESI并为所述ESI分配标签值,构建表项为所述ESI和所述标签值的本地查询表;
当接收到所述第二节点转发的BUM封装报文,解封装所述BUM封装报文并确定所述BUM封装报文中的第一标签值;
根据所述第一标签值查找所述本地查询表,确定第一ESI;
根据所述第一ESI过滤本地转发端口。
第三方面,本发明实施例还提供了一种设备,包括至少一个处理器和用于与所述至少一个处理器通信连接的存储器;所述存储器存储有能够被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行前述第一方面或第二方面的以太虚拟专用网的数据处理方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行前述第一方面或第二方面的以太虚拟专用网的数据处理方法。
本发明实施例提供的以太虚拟专用网的数据处理方法,至少具有如下有益效果:当本地设备双归属于互为相邻节点的第一节点和第二节点并且本地设备向第二节点发送BUM报文,在第二节点接收到BUM报文后,为了避免向第一节点转发该BUM报文时形成报文环路,根据第二节点中保存的第一节点对应的ESI以及该ESI对应的标签值,将标签值封装在该BUM报文中并向第一节点转发。第一节点收到封装过的BUM报文后解封装,并定位到该标签值所在的字段,根据第一节点中保存ESI和标签值的对应关系,过滤本地转发端口,避免报文成环。本发明实施例在对BUM报文转发时不需要区分BUM报文的EVPN业务实例,从而精简了转发表尺寸,能够降低转发表资源的占用。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本发明的示例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1是本发明实施例提供的第二节点的数据处理方法的流程图;
图2是本发明实施例提供的第二节点建立转发表的流程图;
图3是本发明实施例提供的第一节点的数据处理方法的流程图;
图4是本发明示例提供的多归属网络结构下的信息交互示意图;
图5是本发明实施例提供的设备的装置结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明实施例提供了一种以太虚拟专用网的数据处理方法、设备及存储介质,由ESI和标签值的对应关系构建转发表,当需要转发BUM报文时,基于BUM报文对应的ESI查找转发表中的标签值,并将查找得到的标签值封装在BUM报文中,从而使得具有同一ESI的设备在接收到该BUM报文时,根据BUM报文中的标签值过滤本地转发端口,上述转发表的构建由于无需区分BUM报文的EVPN业务实例,因此能够降低转发表资源的占用。
下面结合附图,对本发明实施例作进一步阐述。
参照图1,本发明实施例提供了一种以太虚拟专用网的数据处理方法,以太虚拟专用网包括互为相邻节点的第一节点和第二节点,数据处理方法应用于第二节点,包括但不限于以下步骤S100、步骤S200、步骤S300、步骤S400和步骤S500。
步骤S100,接收第一节点发送的路由通告并根据路由通告得到路由信息,路由信息包括以太网段标识ESI和与ESI对应的标签值;
在现有的EVPN中,一个CE设备连接到多个PE设备,那么该CE设备多归属于多个PE设备,在这种情况下,当CE设备向PE设备上报BUM报文,基于BUM报文的特性,接收到BUM报文的PE设备会向其他PE设备转发该BUM报文,其他PE设备在接收到该BUM报文后又会向该CE设备转发BUM报文,导致BUM报文环回。为了克服上述问题,RFC(Request For Comments)7432中提出了采用ES过滤表解决报文环回问题,为多归属场景下的PE设备分配基于每平台的MPLS(Multi-Protocol Label Switching,多协议标签交换)的ESI标签,当BUM报文从ES端口上报到当前PE设备后,若当前PE设备向相邻PE设备转发该BUM报文,则在该BUM报文中携带相对应的ESI的标签值,相邻PE设备接收到带有标签值的BUM报文后识别得到该标签值对应的ESI,从而不再往本地相同ESI的端口进行转发。
然而在RFC7432的规范下,接收BUM报文的PE设备按照相邻PE设备的每个通告路由对应路由信息形成转发表,其规模与PE设备的邻居数目、EVPN的业务数目和ES的数目有关,最终形成的转发表非常巨大,消耗了大量的标签资源。
基于此,为了精简转发表,本发明实施例在EVPN多归属场景下对BUM报文的标签值进行统一管理,根据路由通告将冗余的路由信息进行合并,形成同时适用于多种业务场景的转发表,如:
步骤S200,基于相同的ESI将路由信息合并,得到转发表,转发表的每个转发表项由第一节点的网络端口标识、ESI和标签值构成。
本发明实施例以第一节点和第二节点表示两个相邻的PE设备,通过步骤S100,由第一节点向第二节点发送路由通告,路由通告的路由信息包括第一节点的本地端口对应的ESI和由第一节点对应不同ESI分配的标签值,第二节点通过与第一节点之间端口获取到该路由通告后,根据路由信息在第二节点中形成转发表,该转发表的内容至少包括上述的ESI、该ESI对应的标签值和第一节点的网络端口标识。
可以理解的是,路由通告中还应该包括第一节点的本地端口对应的业务信息,例如,以图1中的第一节点为例,第一节点下连接有三条AC(Attachment Circuit,接入电路),每条AC对应一个端口,端口的业务实例包括MPLS和SRv6,在本实施例中分别以EVPN1、EVPN2和EVPN3表示其EVPN实例信息,这样,第一节点向第二节点发送的每次路由通告都包含有ESI-标签值-EVPN实例信息,按照RFC7432的规范,第二节点初步形成第一节点的网络端口标识-ESI-标签值-EVPN实例信息的初步过滤表,由于初步过滤表是按照EVPN下具体业务类型来划分的,因此三条AC线路下形成的初步过滤表将占用大量的资源,这就是按照RFC7432规范形成的过滤表;本发明实施例通过将初步过滤表中归属于第一节点的相同ESI的路由信息进行合并,去掉EVPN实例信息从而精简初步过滤表,减小对标签资源的占用。由于去掉了EVPN标识,因此第二节点在进行BUM报文封装转发时,无需考虑EVPN的业务实例,提高了查表封装的速度。
通过上述步骤S200精简所得的转发表,其条目由第一节点的网络端口标识-ESI-标签值构成,相同ESI下不同的业务实例共用一个标签值,同时适用于MPLS和SRv6等业务,解决了传统转发表仅能适用于MPLS EVPN的问题。应该理解的是,针对MPLS EVPN业务建立的传统转发表的方式下,第一节点需要在MPLS标签空间为每个ES分配标签值,从而使ESI与标签值形成对应关系,因此标签值分配时占用了MPLS标签,并且当以太网段内只有SRv6EVPN业务时,也会占用MPLS标签空间的标签值,因此不利于EVPN的标签分配。本发明实施例由于不需要区分业务实例,因此在分配标签值的时候可以根据需要自行设定,例如在第一节点中划分出一个独立空间(如新设的标签空间)用来为本地端口对应的ESI分配标签值,而标签值的具体数值范围也可以按需划定,只要标签值与ESI能够形成一一对应的关系即可,解决了MPLS标签的占用问题。
步骤S300,当向第一节点转发广播、未知单播、组播BUM报文,以第一节点的网络端口标识和BUM报文的源端口对应的第一ESI查找转发表,确定第一标签值。
第二节点在接收到BUM报文后,确定BUM报文的广播成员,判断出第一节点是相邻的节点,向第一节点转发该BUM报文;假设第一节点和第二节点处于相同的ES,那么第一节点和第二节点具有相同的ESI,则BUM报文需要进行特殊处理,才能使第一节点在接收到该BUM报文后进行破环;如果第一节点和第二节点不是处于相同的ES,那么第二节点根据BUM报文对应的第一ESI来查询转发表时,无法找到对应的转发表项,从而第二节点向第一节点转发BUM报文时也不需要封装标签值。
当第一节点和第二节点处于相同的ES,第一节点和第二节点具有相同的ESI,则基于第一节点的网络端口标识和BUM报文的源端口对应的第一ESI,查找转发表,就可以查找到第一节点的网络端口标识-第一ESI-第一标签值的转发表项,从而查找得到第一标签值,然后将查找得到的第一标签值封装在BUM报文中,形成BUM封装报文,并向第一节点发送。
步骤S400,根据BUM报文的封装结构将第一标签值封装在BUM报文中,得到BUM封装报文。
可以理解的是,由于本发明实施例的转发表不区分EVPN业务实例,因此在封装时需要先判断BUM报文的业务实例,不同的业务类实例下,报文的封装格式不同,因此第一标签值的封装位置不同,这将在后面针对不同封装格式的BUM报文的封装方式进行详细说明。
步骤S500,将BUM封装报文转发到第一节点,以使第一节点解封装BUM封装报文并根据解封装所得的第一标签值过滤本地转发端口。
封装后的BUM报文携带有第一标签值,当第一节点接收到BUM封装报文后,通过解封装可以定位到第一标签值所在的位置,根据第一标签值和第一ESI之间对应关系,第一节点即可对本地转发端口进行过滤,即只要是处于相同ES的端口都不会转发该BUM报文,从而避免报文环回的形成。
本发明实施例通过精简转发表从而减少标签资源的占用,也不占用标签空间中的MPLS标签资源,在此基础上解决了不同业务实例的BUM报文环回问题;本发明实施例的方案易于实施,具有较高的实用价值。
根据上述步骤S100可知,第二节点接收到路由通告后得到的路由信息除了ESI和标签值,还包括第一节点的网络端口标识和第一节点基于以太虚拟专用网EVPN实例发布的EVPN实例信息。网络端口标识可以用IP地址表示,用于表示发送的目的IP,也可以基于MAC地址设定网络端口标识,也能够用于确定路由的下一跳。另一方面,路由通告中带有第一节点中本地端口所用业务类型对应的EVPN业务实例信息,用来表示本地端口所用的业务类型。由此可知,第二节点在形成本发明实施例的转发表过程中,需要对上述原始数据进行整理和精简,才能得到最终的转发表,因此,参照图2,步骤S100中通过合并路由信息建立转发表包括但不限于以下步骤S110和步骤S120。
步骤S110,根据所述路由信息形成初步过滤表,所述初步过滤表的每个过滤表项由所述第一节点的网络端口标识、所述EVPN实例信息、所述ESI和所述标签值构成;
步骤S120,将具有相同ESI的所述过滤表项合并从而去掉所述EVPN实例信息,得到转发表。
由路由信息直接形成的初步过滤表,过滤表项中包含了第一节点的网络端口标识-ESI-标签值-EVPN实例信息,基于本发明实施例的精简方法,对同一个网络端口标识、同一个ESI下不同的EVPN实例信息进行合并,形成网络端口标识-ESI的条目,该条目通过标签值区分,从而最终形成转发表项为网络端口标识-ESI-标签值的转发表。当第二节点接收到BUM报文后,确定要向哪个网络端口标识进行转发,以及确定BUM报文的源端口对应的第一ESI,即可通过查找转发表得到第一标签值,对BUM报文进行封装。
可以理解的是,转发表中具有多个ESI和多个标签值,因此上述第一ESI和第一标签值是分别用于表示众多转发表中ESI的其中一个以及众多标签值的其中一个,并不是对第一ESI和第一标签值的具体数值限定。
BUM报文的封装根据业务类型的不同,采用不同的封装位置。首先,当第二节点接收到BUM报文后,需要判断BUM报文的业务类型是否适用于当前的标签值封装方式所适用的业务类型,当BUM报文的业务类型符合预设业务类型,根据预设业务类型对应的报文封装结构确定标签值的封装位置,当BUM报文的业务类型不符合预设业务类型,应按照其他方式对BUM报文进行封装和发送。
上述预设业务类型可以根据需要设定,在此不作限制。本发明实施例以举例的方式说明两种不同业务类型下,标签值在BUM报文中的封装位置。
第一种情况:
当BUM报文的业务类型是多协议标签交换MPLS EVPN,根据MPLS EVPN对应的报文封装结构,将第一标签值置于封装结构中VPN Label后面的字段。
MPLS EVPN业务的报文结构具有标签栈,包括顶部标签(或称外层标签)和底部标签(或称内层标签、栈底标签),顶部标签在MPLS网络中用来指导如何从一个PE设备传到相邻的PE设备的,而底部标签是用来指导PE设备将报文数据发给哪个CE设备的。因此为了实现在第一节点中过滤本地转发端口,第一标签值应添加在底部标签中,具体地,可以将第一标签值置于VPN Label后面的字段。当第一节点接收到BUM封装报文,对BUM封装报文解封装后匹配到VPN Label,判断若VPN Label不为栈底,那么其后的字段为第一标签值,用于查找ESI从而实现报文破环。
第二种情况:
当BUM报文是IPv6分段路由SRv6 EVPN业务报文,根据SRv6 EVPN业务报文的封装结构,将第一标签值填入封装结构中SRv6 SID的Argument字段。
SRv6 EVPN业务的报文结构,以Segment id(简称SID)表示IPv6地址格式,SID分为两部分字段,分别是Locator和Function,其中Locator用于进行标签路由,而Function用于定义所属设备收到该标签后的操作。因此为了实现在第一节点中过滤本地转发端口,第一标签值应添加在Function字段中,具体地,可以将标签置于Function字段中的Argument字段。当第一节点接收到BUM封装报文,对BUM封装报文解封后匹配到Function字段,取Argument字段部分得到第一标签值,用于查找ESI从而实现报文破环。
参照,4,本发明实施例还提供了一种以太虚拟专用网的数据处理方法,以太虚拟专用网包括互为相邻节点的第一节点和第二节点,数据处理方法应用于第一节点,包括但不限于以下步骤S600、步骤S700、步骤S800和步骤S900。
步骤S600,获取本地端口对应的ESI并为所述ESI分配标签值,构建表项为所述ESI和所述标签值的本地查询表;
步骤S700,当接收到所述第二节点转发的BUM封装报文,解封装所述BUM封装报文并确定所述BUM封装报文中的第一标签值;
步骤S800,根据所述第一标签值查找所述本地查询表,确定第一ESI;
步骤S900,根据所述第一ESI过滤本地转发端口。
与上述应用于第二节点的实施例相对应,本发明实施例应用于第一节点,第一节点需要执行的工作包括解封装第二节点发送过来的BUM封装报文,并定位到该BUM封装报文中的标签值的位置,根据第一标签值来查找得到ESI,从而过滤本地转发端口,即当ESI对应的ES和本地转发端口所在的ES是相同的,则不向该本地转发端口转发BUM报文。
可以理解的是,第一节点还应包括获取本地转发端口所在的ES,并为ES对应的ESI分配标签值,在第一节点向第二节点发送的路由通告中,向第二节点发送ESI和ESI对应的标签值,从而使第二节点建立本发明实施例所需要的转发表。
由于第一节点中为ESI分配的标签值不在传统的标签空间分配(如MPLS标签空间),因此不按照传统标签值的范围进行定义,由于本发明实施例中的标签值要定位到业务标签后才能确定,因此是一种用于为ES实体分配的上下文标签,上下文标签需要依赖每平台标签才能确定其行为,这一特性跟在BUM封装报文中定位到第一标签值的行为相对应。
上述步骤S700中,针对不同的业务类型的BUM封装报文,第一节点需要在解封装BUM封装报文后确定对应的业务类型,才能定位到里面的标签值,具体可以通过以下方式实现:
确定BUM封装报文的EVPN业务类型;
当BUM封装报文的业务类型是多协议标签交换MPLS EVPN,匹配到BUM封装报文中的VPN Label,确定VPN Label字段不为标签栈栈底,确定栈底标签为第一标签值;
当BUM封装报文的业务类型是IPv6分段路由SRv6 EVPN业务报文,定位到SRv6 SID的Function字段,确定Function字段中的Argument字段为第一标签值。
上述判断过程与第二节点对BUM报文进行封装的过程相对应,在解封装过程中,当业务类型是MPLS EVPN,则匹配到VPN Label,并判断VPN Label是否为栈底标签,如果不是则VPN Label后面的字段为第一标签值。当业务类型是SRv6 EVPN,则定位到SRv6 SID的Function字段,并由Function字段找到Argument字段,从而确定第一标签值。
本发明实施例应用于EVPN多归属场景,第一节点和第二节点作为两个相邻的PE设备连接同一个CE设备,第二节点根据第一节点发送过来的ESI和标签值,以及第一节点的网络端口标识构建转发表,不区分EVPN业务实例,从而减少转发表标签资源的占用。当CE设备向第二节点发送BUM报文情况下,根据第一ESI和第一标签值的对应关系,将查找到的第一标签值封装于BUM报文中的恰当位置,再向第一节点发送,从而使第一节点解封装后根据第一标签值过滤本地转发端口,实现报文破环。
下面以一个实际例子对本发明实施例进行说明:
参照图4,本示例设置有三个PE设备,分别以A设备、B设备和C设备来表示,三个PE设备两两相邻,其中A设备和B设备属于同一个ES,C设备与B设备不属于同一个ES,A设备和B设备下都设有三条AC,为了方便表示,同一ES下的AC采用相同的名称,分别为AC1(业务类型是MPLS-EVPN1)、AC2(业务类型是MPLS-EVPN2)和AC3(业务类型是SRv6-EVPN3)。
由于A设备和B设备属于同一个ES,那么A设备在独立空间为ES1分配标签值1(为便于说明,示例中的组网只划分出一个ES,以ES1表示,如有多个ES,则可以依次用ES2、ES3、…、ESn表示),由于每个ES都具有唯一的ESI,因此A设备中形成ESI1和标签值1的对应关系(ES2、ES3、…、ESn分别对应有唯一标识ESI2、ESI3、…、ESIn)。
A设备向B设备发送路由通告,B设备由此得知A设备的IP端口(以IP-a表示)以及ESI1、标签值1以及三个AC对应的EVPN实例信息,B设备通过整理上述信息得到初步过滤表,其条目一共有三个,参见图4,分别是:
IP-a+ESI1+EVPN1:标签值1
IP-a+ESI1+EVPN2:标签值1
IP-a+ESI1+EVPN3:标签值1
按照本示例的方法精简上述初步过滤表,合并后去掉EVPN业务类型信息,得到构成转发表的条目:
IP-a+ESI1:标签值1
当B设备接收到其中一条AC发送的BUM报文(源端口属于ES1,具有ESI1的值),判断该BUM报文需要向A设备和C设备转发,那么向A设备转发的数据包要进行标签值1的封装。利用上述转发表的条目查找可知,向IP-a发送的对应ESI1的BUM报文,可确定为标签值1,从而将标签值1封装在BUM报文中;当BUM报文的业务类型是MPLS EVPN,则将标签值1压入标签栈底,当BUM报文的业务类型是SRv6 EVPN,则将标签值1填入SID的Argument字段,最终得到BUM封装报文,并向A设备发送。而C设备由于和B设备不属于同一ES,按照常规BUM报文转发方式向C设备发送报文,无需携带标签值。
当A设备接收到BUM封装报文后,解封装确定标签值,对于MPLS EVPN类型的BUM封装报文,若VPN Label不为栈底,则栈底标签为标签值1,对于SRv6 EVPN类型的BUM封装报文,通过Function字段确定业务后,取Argument字段得到标签值1;A设备根据通过解封装得到的标签值1与ESI1的对应关系,过滤掉属于ES1的三条AC线路。
本发明实施例的还提供了一种设备,包括至少一个处理器和用于与至少一个处理器通信连接的存储器;存储器存储有能够被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行前述的以太虚拟专用网的数据处理方法。
参照图5,以设备1000中的控制处理器1001和存储器1002可以通过总线连接为例。存储器1002作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器1002可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器1002可选包括相对于控制处理器1001远程设置的存储器,这些远程存储器可以通过网络连接至设备1000。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本领域技术人员可以理解,图5中示出的装置结构并不构成对设备1000的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
本发明实施例的还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个控制处理器执行,例如,被图5中的一个控制处理器1001执行,可使得上述一个或多个控制处理器执行上述方法实施例中的以太虚拟专用网的数据处理方法,例如,执行以上描述的图1中的方法步骤S100至步骤S500、图2中的方法步骤S110至步骤S120和图3中的方法步骤S600至步骤S900。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
以上是对本申请的较佳实施进行了具体说明,但本申请并不局限于上述实施方式,熟悉本领域的技术人员在不违背本申请精神的前提下还可作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。
Claims (10)
1.一种以太虚拟专用网的数据处理方法,所述以太虚拟专用网包括互为相邻节点的第一节点和第二节点,所述数据处理方法应用于所述第二节点,其特征在于,包括:
接收所述第一节点发送的路由通告并根据所述路由通告得到路由信息,所述路由信息包括以太网段标识ESI和与所述ESI对应的标签值;
基于相同的ESI将所述路由信息合并,得到转发表,所述转发表的每个转发表项由所述第一节点的网络端口标识、所述ESI和所述标签值构成;
当向所述第一节点转发广播、未知单播、组播BUM报文,以所述第一节点的网络端口标识和所述BUM报文的源端口对应的第一ESI查找所述转发表,确定第一标签值;
根据所述BUM报文的封装结构将所述第一标签值封装在所述BUM报文中,得到BUM封装报文;
将所述BUM封装报文转发到所述第一节点,以使所述第一节点解封装所述BUM封装报文并根据解封装所得的所述第一标签值过滤本地转发端口。
2.根据权利要求1所述的以太虚拟专用网的数据处理方法,其特征在于,所述路由信息还包括所述第一节点的网络端口标识和所述第一节点基于以太虚拟专用网EVPN实例发布的EVPN实例信息。
3.根据权利要求2所述的以太虚拟专用网的数据处理方法,其特征在于,所述基于相同的ESI将所述路由信息合并,得到转发表,包括:
根据所述路由信息形成初步过滤表,所述初步过滤表的每个过滤表项由所述第一节点的网络端口标识、所述EVPN实例信息、所述ESI和所述标签值构成;
将具有相同ESI的所述过滤表项合并从而去掉所述EVPN实例信息,得到转发表。
4.根据权利要求2或3所述的以太虚拟专用网的数据处理方法,其特征在于,所述网络端口标识为IP地址。
5.根据权利要求1所述的以太虚拟专用网的数据处理方法,其特征在于,所述根据所述BUM报文的封装结构将所述第一标签值封装在所述BUM报文中,包括:
当所述BUM报文的业务类型符合预设业务类型,根据预设业务类型对应的报文封装结构确定所述第一标签值的封装位置。
6.根据权利要求5所述的以太虚拟专用网的数据处理方法,其特征在于,所述根据预设业务类型对应的报文封装结构确定所述第一标签值的封装位置,包括:
当所述BUM报文的业务类型是多协议标签交换MPLS EVPN,根据MPLS EVPN对应的报文封装结构,将所述第一标签值置于所述封装结构中VPN Label后面的字段;
当所述BUM报文是IPv6分段路由SRv6 EVPN业务报文,根据SRv6 EVPN业务报文的封装结构,将所述第一标签值填入所述封装结构中SRv6 SID的Argument字段。
7.一种以太虚拟专用网的数据处理方法,所述以太虚拟专用网包括互为相邻节点的第一节点和第二节点,所述数据处理方法应用于所述第一节点,包括:
获取本地端口对应的ESI并为所述ESI分配标签值,构建表项为所述ESI和所述标签值的本地查询表;
当接收到所述第二节点转发的BUM封装报文,解封装所述BUM封装报文并确定所述BUM封装报文中的第一标签值;
根据所述第一标签值查找所述本地查询表,确定第一ESI;
根据所述第一ESI过滤本地转发端口。
8.根据权利要求7所述的以太虚拟专用网的数据处理方法,其特征在于,所述解封装所述BUM封装报文并确定所述BUM封装报文中的第一标签值,包括:
确定所述BUM封装报文的EVPN业务类型;
当所述BUM封装报文的业务类型是多协议标签交换MPLS EVPN,匹配到所述BUM封装报文中的VPN Label,确定所述VPN Label字段不为标签栈栈底,确定栈底标签为第一标签值;
当所述BUM封装报文的业务类型是IPv6分段路由SRv6 EVPN业务报文,定位到SRv6 SID的Function字段,确定Function字段中的Argument字段为第一标签值。
9.一种设备,其特征在于,包括至少一个处理器和用于与所述至少一个处理器通信连接的存储器;所述存储器存储有能够被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至6中任意一项所述的以太虚拟专用网的数据处理方法或者执行如权利要求7或8的以太虚拟专用网的数据处理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如权利要求1至6中任意一项所述的以太虚拟专用网的数据处理方法或者执行如权利要求7或8的以太虚拟专用网的数据处理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011417069.6A CN114666267A (zh) | 2020-12-07 | 2020-12-07 | 以太虚拟专用网的数据处理方法、设备及存储介质 |
PCT/CN2021/121710 WO2022121466A1 (zh) | 2020-12-07 | 2021-09-29 | 以太虚拟专用网的数据处理方法、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011417069.6A CN114666267A (zh) | 2020-12-07 | 2020-12-07 | 以太虚拟专用网的数据处理方法、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114666267A true CN114666267A (zh) | 2022-06-24 |
Family
ID=81974042
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011417069.6A Pending CN114666267A (zh) | 2020-12-07 | 2020-12-07 | 以太虚拟专用网的数据处理方法、设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114666267A (zh) |
WO (1) | WO2022121466A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024032062A1 (zh) * | 2022-08-09 | 2024-02-15 | 中兴通讯股份有限公司 | 一种数据报文处理方法、装置、存储介质及电子装置 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115037690A (zh) * | 2022-06-21 | 2022-09-09 | 阿里巴巴(中国)有限公司 | 一种流量调度方法、装置、电子设备及存储介质 |
CN115277309B (zh) * | 2022-07-26 | 2024-08-27 | 中国电信股份有限公司 | 报文转发方法、装置、存储介质与电子设备 |
CN117956018A (zh) * | 2022-10-21 | 2024-04-30 | 锐捷网络股份有限公司 | 一种业务转发方法、装置及电子设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105099846B (zh) * | 2014-04-30 | 2018-10-19 | 华为技术有限公司 | 传输数据报文的方法和供应商边缘设备 |
CN104135420B (zh) * | 2014-07-31 | 2017-12-29 | 华为技术有限公司 | 一种报文转发的方法、设备及系统 |
CN106254244B (zh) * | 2016-07-28 | 2020-01-07 | 上海斐讯数据通信技术有限公司 | 一种基于sdn网络的合并流表项方法 |
CN108259291B (zh) * | 2016-12-29 | 2021-01-29 | 华为技术有限公司 | Vxlan报文处理方法、设备及系统 |
US10841216B1 (en) * | 2017-03-29 | 2020-11-17 | Juniper Networks, Inc. | Local-bias forwarding of L2 multicast, unknown unicast, and broadcast traffic for an ethernet VPN |
CN108809847B (zh) * | 2017-05-05 | 2021-11-19 | 华为技术有限公司 | 实现负载均衡的方法、装置和网络系统 |
WO2019119220A1 (en) * | 2017-12-18 | 2019-06-27 | Telefonaktiebolaget Lm Ericsson (Publ) | Provider edge device and method implemented thereon for ethernet virtual private network |
-
2020
- 2020-12-07 CN CN202011417069.6A patent/CN114666267A/zh active Pending
-
2021
- 2021-09-29 WO PCT/CN2021/121710 patent/WO2022121466A1/zh active Application Filing
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024032062A1 (zh) * | 2022-08-09 | 2024-02-15 | 中兴通讯股份有限公司 | 一种数据报文处理方法、装置、存储介质及电子装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2022121466A1 (zh) | 2022-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10938714B2 (en) | Communication between distinct network domains | |
CN109995634B (zh) | 一种组播虚拟专用网络的承载方法和设备 | |
CN108632098B (zh) | 流分类器、业务路由触发器、报文处理的方法和系统 | |
CN114666267A (zh) | 以太虚拟专用网的数据处理方法、设备及存储介质 | |
US20230300070A1 (en) | Packet Sending Method, Device, and System | |
US11405307B2 (en) | Information transfer method and device | |
CN112087386B (zh) | 一种报文处理的方法、设备和系统 | |
CN113411243B (zh) | 数据传输方法及装置 | |
CN108964940B (zh) | 消息发送方法及装置、存储介质 | |
WO2020052410A1 (zh) | 一种通信方法、设备和系统 | |
CN106453025A (zh) | 一种隧道创建方法及装置 | |
CN111786884A (zh) | 一种路由方法及路由设备 | |
US11924094B2 (en) | Virtual circuit-based data packet processing method and forwarding table entry construction method | |
WO2022184169A1 (zh) | 报文转发方法、系统、存储介质及电子装置 | |
CN110417655B (zh) | 一种数据报文转发的方法及装置 | |
CN112491706B (zh) | 数据报文的处理方法及装置、存储介质、电子装置 | |
CN112532563B (zh) | 报文的发送方法和装置 | |
CN112104547B (zh) | Evpn多归属组网避免环路的方法及装置 | |
WO2023274083A1 (zh) | 路由发布和转发报文的方法、装置、设备和存储介质 | |
EP3965379A1 (en) | Data transmission method, apparatus, and network device | |
JP2024504466A (ja) | パケット転送方法、パケット処理方法、およびデバイス | |
CN114221895A (zh) | 传输数据的方法、装置及网络设备 | |
CN112511398A (zh) | 一种防止流量绕行的方法及装置 | |
CN109218258B (zh) | 数据包传输方法及网关设备 | |
WO2023109398A1 (zh) | 一种报文传输方法及装置 |
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 |