CN116886663A - 基于rfc 8317的e-tree实现方式、装置和通信设备 - Google Patents
基于rfc 8317的e-tree实现方式、装置和通信设备 Download PDFInfo
- Publication number
- CN116886663A CN116886663A CN202310993642.5A CN202310993642A CN116886663A CN 116886663 A CN116886663 A CN 116886663A CN 202310993642 A CN202310993642 A CN 202310993642A CN 116886663 A CN116886663 A CN 116886663A
- Authority
- CN
- China
- Prior art keywords
- logic port
- message
- leaf
- mac address
- identifier
- 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
- 238000004891 communication Methods 0.000 title claims abstract description 43
- 238000005538 encapsulation Methods 0.000 claims abstract description 49
- 238000000034 method Methods 0.000 claims abstract description 36
- 238000012545 processing Methods 0.000 claims description 21
- 238000013507 mapping Methods 0.000 claims description 19
- 238000002955 isolation Methods 0.000 abstract description 18
- 230000006870 function Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 9
- 230000006855 networking Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000011218 segmentation Effects 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 235000008694 Humulus lupulus Nutrition 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000011217 control strategy Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2596—Translation of addresses of the same type other than IP, e.g. translation from MAC to MAC addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/2592—Translation of Internet protocol [IP] addresses using tunnelling or encapsulation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Power Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种基于RFC 8317的E‑TREE实现方法、装置和通信设备,在远端通信场景下,PE设备在接收到CE设备发送的报文时,获得CE设备的逻辑端口的入接口逻辑口信息,并基于MAC地址转发表获得目的MAC地址对应的逻辑端口,进而获得出接口逻辑口信息。根据入接口逻辑口信息和出接口逻辑口信息确定封装策略,并基于封装策略对报文进行封装后发出。该方案以逻辑口使能,在物理端口的基础上可基于需求进行逻辑口的扩展,可适用于多种网络环境,基于入接口和出接口逻辑口信息进行报文封装,以便于出方向PE设备可基于封装信息执行报文转发,以实现E‑TREE隔离。
Description
技术领域
本发明涉及网络通信技术领域,具体而言,涉及一种基于RFC 8317的E-TREE实现方式、装置和通信设备。
背景技术
RFC 8317描述了一种基于以太网虚拟专用网络(Ethernet Virtual PrivateNetwork,EVPN)的解决方案来满足E-Tree(Ethernet-Tree,以太网树型)服务的功能要求。EVPN由RFC7432定义,是一种基于BGP(Border Gateway Protocol,边界网关协议)和MPLS(Multi-Protocol Label Switching,多协议标签交换)的L2 VPN。EVPN最初提出是为了解决传统L2VPN的不足。传统L2VPN,以VPLS(Virtual Private LAN Service,虚拟专用局域网业务)技术为例,存在例如无法实现负载分担、网络资源的消耗较高等缺陷。与VPLS相比,EVPN技术可以解决上述多种缺陷。
EVPN网络中为了实现各个站点(Site)之间的互通,运营商骨干网上的PE设备上建立EVPN实例并接入各个站点的CE(Customer Edge,用户侧边缘)设备,同时各个PE(Provider Edge,网络侧边缘)设备之间建立的邻居关系以及LDP(Label DistributionProtocol,标签分发协议)隧道,各个站点内是二层网络,因此PE设备从各个CE设备学习到的是MAC(Media Access Control)地址而不是路由。PE设备通过EVPN特有的路由类型将自己从CE设备学习到MAC地址转发到其他站点。根据PE设备与CE设备间的连接形式,EVPN的组网类型可分为CE多归属和CE单归属两种类型。
CE多归属组网类型可以支持负载分担功能。在EVPN网络中如果一个CE设备多归属到两个或更多PE设备,这组CE设备接入到不同PE设备的以太网链路集合就是一个ES(Ethernet Segment,以太网段)。不同PE设备连接相同CE设备的接口,需要有相同的ESI(Ethernet Segment Identifier,以太网段标识符)。ESI为0时,表示PE设备连接的是单归CE。PE设备之间进行路由传播时,路由中会携带ESI值使PE设备间可以感知到连接同一CE设备的其他PE设备。在这种情形下,EVPN中通过水平分割实现多播流量成环问题。此外,如果用户希望同一广播域中无互访需求的用户之间可以相互隔离,则可以在网络中部署EVPNE-Tree功能。城域以太网论坛(Metro Ethernet Forum,MEF)定义了一种称为以太网树的有根多点以太网服务。在E-Tree服务中,通常由接入电路(Attachment Circuit,AC)表示客户站点被标记为根站点或者叶子站点。Leaf属性的接口(以下简称为Leaf AC)只能和Root属性的接口(以下简称为Root AC)相互发送流量,Leaf AC之间流量是相互隔离的。Root AC既可以和其它Root AC相互通信,也可以和Leaf AC相互通信。
当前VPLS网络中实现E-TREE的方式是通过复用Control Word实现。RFC4385定义了在MPLS PW(Pseudo Wire,伪线)中使用的Control Word和Associated Channel,即在LSP(Label Switch Path,标签交换路径)Label和PW label后面,可以跟Control Word和/或Associated Channel两个结构化字段。Control Word用于传输PW中的用户数据,一共32bits,前4bits恒为0。Associated Channel则用于传输PW中的OAM(OperationAdministration and Maintenance,操作维护管理)数据,一共32bits,前4bits恒为1。通过Control Word的第5bit表示该节点是Leaf AC还是Root AC。如果是1则为Leaf AC,否则为Root AC。入口PE设备判断接入的是Leaf AC还是Root AC,将对应bit位打上1或者0,出口PE设备根据该bit判断该以太网帧来自Leaf AC还是Root AC,实现Leaf AC之间的隔离。
现有的E-TREE实现方式中,需要额外的控制字段进行标识,且只能从物理端口出Leaf标识,存在扩展性差、难以适配多种网络环境的问题。
发明内容
本发明的目的包括,例如,提供了一种基于RFC 8317的E-TREE实现方式、装置和通信设备,其能够实现EVPN网络中的E-Tree隔离,且以逻辑口使能,可适配多种网络环境。
本发明的实施例可以这样实现:
第一方面,本发明提供一种基于RFC 8317的E-TREE实现方法,应用于EPVN网络中多个PE设备中的任意PE设备,各所述PE设备上以逻辑端口的方式接入至少一个CE设备,各所述PE设备与其他任意PE设备连接,所述方法包括:
作为远端通信场景下入方向的PE设备时,在接收到与其连接的CE设备发送的报文时,获得预先配置的连接所述CE设备的逻辑端口的入接口逻辑口信息;
获得所述报文中携带的目的MAC地址,查找保存的MAC地址转发表以获得所述目的MAC地址对应的逻辑端口;
获得所述目的MAC地址对应的逻辑端口的出接口逻辑口信息;
根据所述入接口逻辑口信息和出接口逻辑口信息确定封装策略,并基于所述封装策略对所述报文进行封装后发出。
在可选的实施方式中,所述方法还包括:
作为远端通信场景下出方向的PE设备时,在接收到其他PE设备所转发的报文时,获得所述报文中的目的MAC地址和封装在所述报文中的入逻辑口标识;
查找保存的MAC地址转发表以获得所述目的MAC地址对应的逻辑端口;
获得所述目的MAC地址对应的逻辑端口的出逻辑口信息;
基于所述入逻辑口标识和出逻辑口信息,确定正常转发所述报文或丢弃所述报文。
在可选的实施方式中,所述根据所述入接口逻辑口信息和出接口逻辑口信息确定封装策略,并基于所述封装策略对所述报文进行封装后发出的步骤,包括以下至少之一:
在所述入接口逻辑口信息和出接口逻辑口信息表明对应逻辑端口均为单归接入叶子属性时,对所述报文封装叶子标识后发出;
在所述入接口逻辑口信息表明对应逻辑端口为多归接入叶子属性、出接口逻辑口信息表明对应逻辑端口为单归接入叶子属性或多归接入叶子属性时,对所述报文封装叶子标识和ESI标识后发出;
在所述入接口逻辑口信息表明对应逻辑端口为单归接入根属性、出接口逻辑口信息表明对应逻辑端口为单归接入叶子属性、多归接入叶子属性或多归接入叶子属性时,不执行对所述报文的封装操作并将所述报文发出;
在所述入接口逻辑口信息表明对应逻辑端口为多归接入根属性、出接口逻辑口信息表明对应逻辑端口为单归接入叶子属性、多归接入叶子属性或多归接入叶子属性时,对所述报文封装ESI标识后发出。
在可选的实施方式中,对所述报文封装叶子标识的步骤,包括:
确定用于执行封装的叶子值,根据预先建立的叶子值与叶子标识之间的第一映射关系,确定用于执行封装的叶子标识,并将所述叶子标识插入所述报文中,其中,所述叶子值为多位二进制数值,该多位二进制数值的最高位为1。
在可选的实施方式中,对所述报文封装ESI标识后发出的步骤,包括:
确定用于执行封装的ESI值,根据预先建立的ESI值与ESI标识之间的第二映射关系,确定用于执行封装的ESI标识,并将所述ESI标识插入所述报文中,其中,所述ESI值为单位数值,同一数值表明所属同一以太网段。
在可选的实施方式中,所述基于所述入逻辑口标识和出逻辑口信息,确定正常转发所述报文或丢弃所述报文的步骤,包括:
根据所述第一映射关系和第二映射关系分别获得所述入逻辑口标识对应的入逻辑口叶子值和入逻辑口ESI值;
获得所述出逻辑口信息中包括的出逻辑口叶子值和出逻辑口ESI值;
在所述入逻辑口ESI值和出逻辑口ESI值非0且相同时,丢弃所述报文,或者在所述入逻辑口叶子值和出逻辑口叶子值的最高位均为1时,丢弃所述报文,否则,正常转发所述报文。
在可选的实施方式中,所述方法还包括:
作为本地通信场景下的PE设备时,从入逻辑口接收与其连接的CE设备发送的报文,并获得所述报文中携带的目的MAC地址;
查找保存的MAC地址转发表获得所述入逻辑口的标识和所述目的MAC地址对应的出逻辑口的标识,其中,所述入逻辑口和出逻辑口的标识用于表征对应逻辑口是否为叶子接入属性;
根据所述入逻辑口的标识和出逻辑口的标识确定正常转发所述报文或丢弃所述报文。
在可选的实施方式中,所述入逻辑口的标识和出逻辑口的标识确定正常转发所述报文或丢弃所述报文的步骤,包括:
在所述入逻辑口的标识和出逻辑口的标识均表征对应逻辑口为叶子接入属性时,丢弃所述报文,否则正常转发所述报文。
第二方面,本发明提供一种基于RFC 8317的E-TREE实现装置,应用于EPVN网络中多个PE设备中的任意PE设备,各所述PE设备上以逻辑端口的方式接入至少一个CE设备,各所述PE设备与其他任意PE设备连接,所述装置包括:
接收模块,用于在作为远端通信场景下入方向的PE设备时,在接收到与其连接的CE设备发送的报文时,获得预先配置的连接所述CE设备的逻辑端口的入接口逻辑口信息;
处理模块,用于获得所述报文中携带的目的MAC地址,查找保存的MAC地址转发表以获得所述目的MAC地址对应的逻辑端口;
处理模块,还用于获得所述目的MAC地址对应的逻辑端口的出接口逻辑口信息;
发送模块,用于根据所述入接口逻辑口信息和出接口逻辑口信息确定封装策略,并基于所述封装策略对所述报文进行封装后发出。
第三方面,本发明提供一种通信设备,包括一个或多个存储介质和一个或多个与存储介质通信的处理器,一个或多个存储介质存储有处理器可执行的机器可执行指令,当通信设备运行时,处理器执行所述机器可执行指令,以执行前述实施方式中任意一项所述的方法步骤。
本发明实施例的有益效果包括,例如:
本申请提供一种基于RFC 8317的E-TREE实现方法、装置和通信设备,在远端通信场景下,PE设备在接收到CE设备发送的报文时,获得CE设备的逻辑端口的入接口逻辑口信息,并基于MAC地址转发表获得目的MAC地址对应的逻辑端口,进而获得出接口逻辑口信息。根据入接口逻辑口信息和出接口逻辑口信息确定封装策略,并基于封装策略对报文进行封装后发出。该方案以逻辑口使能,在物理端口的基础上可基于需求进行逻辑口的扩展,可适用于多种网络环境,基于入接口和出接口逻辑口信息进行报文封装,以便于出方向PE设备可基于封装信息执行报文转发,以实现E-TREE隔离。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为EVPN网络环境架构示意图;
图2为EVPN网络环境中水平分割示意图;
图3为E-Tree模型的架构示意图;
图4为现有技术中Control Word字段的示意图;
图5为本申请实施例提供的基于RFC 8317的E-TREE实现方法的流程图;
图6为本申请实施例中EVPN E-Tree模型的架构示意图;
图7为远端通信场景下基于逻辑端口的转发逻辑示意图;
图8为本申请实施例提供的基于RFC 8317的E-TREE实现方法的另一流程图;
图9为本申请实施例提供的基于RFC 8317的E-TREE实现方法的又一流程图;
图10为本地通信场景下基于逻辑端口的转发逻辑示意图;
图11为本申请实施例提供的基于RFC 8317的E-TREE实现装置的功能模块框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本发明的描述中,需要说明的是,若出现术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
需要说明的是,在不冲突的情况下,本发明的实施例中的特征可以相互结合。
传统的L2VPN,以VPLS技术为例,存在以下问题:
无法实现负载分担:VPLS不支持在多归网络中流量传输的负载分担。
网络资源的消耗较高:一方面,当需要实现大量的站点互联时,运营商骨干网上所有PE设备配置成全连接状态,即任意两台PE设备之间都要建立PW。当PE设备很多时,网络资源的消耗都会很大;另一方面,大量用来学习MAC地址的ARP(Address ResolutionProtocol,地址解析协议)报文不仅占用网络带宽,还可能造成远端站点学习到不必要的MAC地址,同时远端站点的主机对ARP请求报文的频繁处理也会造成对主机CPU(CentralProcessing Unit,中央处理器)资源的浪费。
而与VPLS相比,EVPN技术可以解决上述问题,具体地:
EVPN通过扩展BGP协议使二层网络间的MAC地址学习和发布过程从数据平面转移到控制平面。这样可以使设备在管理MAC地址时像管理路由一样,使目的MAC地址相同但下一跳不同的多条EVPN路由实现负载分担。
通过使用EVPN技术,运营商骨干网上的PE设备之间不再需要建立全连接。这是因为在EVPN网络中PE设备之间是通过BGP协议实现相互通信的。BGP协议自带路由反射器功能,所以可以在运营商骨干网上部署路由反射器,所有PE设备与反射器建立邻居关系,通过路由反射器来反射EVPN路由,大大降低了网络复杂度,减少了网络信令数量。
PE设备通过ARP协议和MAC/IP地址通告路由分别学习本地和远端的MAC地址信息以及其对应的IP地址,并将这些信息缓存至本地。当PE设备再收到其他ARP请求后,将先根据ARP请求中的目的IP地址查找本地缓存的MAC与IP地址的对应信息,如果查找到对应信息,PE设备将返回ARP响应报文,避免ARP请求报文向其他PE设备广播,减少网络资源消耗。
在EVPN网络中,根据PE设备与CE设备之间的连接形式,EVPN的组网类型可分为CE多归属和CE单归属两种类型。如图1所示,CE1设备、CE2设备、CE4设备与PE设备的连接形式属于CE单归属组网类型,CE3设备与PE2设备、PE3设备连接的类型属于CE多归属组网类型。
如图2所示,CE1双归属至PE1和PE2,CE1发送多播流量至PE1和PE2,为了避免CE2从PE1和PE2收到重复的流量而造成的网络资源浪费,EVPN引入了DF选举机制,即从PE1和PE2中指定一个PE来转发多播流量。如果PE1被选举为主DF,则从CE2方向发来的多播流量将只从PE1向CE1转发,而未被选中的PE2则成为备份DF。EVPN中通过水平分割实现该功能。
在PE1收到来自CE1的多播流量会转发给PE2,PE2收到报文后将检查流量中携带的EVPN ESI Label(ESI Label是EVPN的一种扩展团体属性),发现该标签中的ESI等于PE2与CE1连接的网段的ESI,则PE2不会将该多播流量发送至CE1,从而避免形成环路。
如果用户希望同一广播域中无互访需求的用户之间可以相互隔离,则可以在网络中部署EVPN E-TREE功能。如图3所示,在E-TREE服务中,通常由接入电路AC表示客户站点被标记为根站点或者叶子站点。Leaf AC只能和Root AC相互发送流量,Leaf AC之间流量是相互隔离的。Root AC既可以和其它Root AC相互通信,也可以和Leaf AC相互通信。
现有技术中通过复用Control Word实现E-TREE隔离,如图4中所示,Control Word用于传输PW中的用户数据,一共32bits,前4bits恒为0。入口PE设备判断接入的是Leaf AC还是Root AC,将对应bit位打上1或者0,出口PE设备根据该bit判断该以太网帧来自LeafAC还是Root AC,实现Leaf AC之间的隔离。现有方式中需要增加额外的控制字段实现E-TREE隔离,并且,只能基于物理端口出leaf标识,物理端口一定的情况下无法扩展,难以适用于多种网络环境。
基于上述研究发现,本申请提供一种基于RFC 8317的E-TREE实现方法,各个PE设备以逻辑端口的方式接入至少一个CE设备,控制策略均以逻辑口使能实现,在物理端口的基础上可基于需求进行逻辑端口的扩展,可适用于多种网络环境。基于入接口和出接口逻辑口信息进行报文封装,以便于出方向的CE设备可基于封装信息执行报文转发,以实现E-TREE隔离。
请参阅图5,为本申请提供的基于RFC 8317的E-TREE实现方法的流程图,该基于RFC 8317的E-TREE实现方法可应用于EPVN网络中多个PE设备中的任意PE设备。请结合图5所示,以下对本实施例提供的基于RFC 8317的E-TREE实现方法进行详细介绍。
S11,作为远端通信场景下入方向的PE设备时,在接收到与其连接的CE设备发送的报文时,获得预先配置的连接所述CE设备的逻辑端口的入接口逻辑口信息。
S12,获得所述报文中携带的目的MAC地址,查找保存的MAC地址转发表以获得所述目的MAC地址对应的逻辑端口。
S13,获得所述目的MAC地址对应的逻辑端口的出接口逻辑口信息。
S14,根据所述入接口逻辑口信息和出接口逻辑口信息确定封装策略,并基于所述封装策略对所述报文进行封装后发出。
请结合参阅图6中所示的EVPN E-TREE网络环境,结合多归和E-TREE可以定义四种类型的站点,假设都在同一广播域。具体地,如图6中所示,CE1、CE7为单归接入根站点(RootAC),CE3、CE5为多归接入根站点,CE2为单归接入叶子站点(Leaf AC),CE4、CE6为多归接入叶子站点。
其中,Leaf AC只能和Root AC相互发送流量,Leaf AC之间流量是相互隔离的。Root AC既可以和其它Root AC相互通信,也可以和Leaf AC相互通信。此外,处于相同以太网段内的流量之间需要进行隔离。
在远端成员通信的场景中,由于需要跨越隧道,因此需要同时考虑Leaf AC之间流量的隔离,以及相同以太网段内的流量的隔离。
作为入方向的PE设备,以逻辑端口的方式接入CE设备,在CE设备与远端的CE设备进行通信的情况下,PE设备可根据CE设备的AC类型配置入接口逻辑口信息,以下简称SVP(Source Virtual Port),以标识该AC是Leaf还是多归Root。
CE设备所发送的报文中携带有目的MAC地址,各个PE设备中保存有MAC地址转发表,MAC地址转发表中存有MAC地址与端口之间的对应关系,而本实施例中,端口为逻辑端口的形式。基于此,PE设备可通过查找MAC地址转发表确定目的MAC地址对应的逻辑端口。
而目的MAC地址对应的逻辑端口也具有对应的匹配规则,该匹配规则基于目的MAC地址对应的CE设备的AC类型所配置。本实施例中,将目的MAC地址对应的逻辑端口的匹配规则作为出接口逻辑口信息,以下简称DVP(Dest Virtual Port)。
在远端CE设备通信的情况下,入方向的PE设备即可根据入接口逻辑口信息和出接口逻辑口信息确定封装策略,以对报文进行封装后转发。在封装策略包括是否对报文执行封装,或者是具体以何种方式对报文进行封装。而报文中的封装信息将用于后续出方向的PE设备判定对报文进行正常转发或者丢弃提供信息。
本实施例中,具体地,对于单归接入Root AC,不需要配置任何ESI标识(ESILable)或叶子标识(Leaf Lable);多归接入Root AC需要配置ESI Label;单归接入Leaf AC需要配置Leaf Label;多归接入Leaf AC则同时存在ESI和Leaf Label。
需要说明的是,基于上述可知,ESI Label和Leaf Label都是实现隔离的目的,在多归接入Leaf AC的场景下,Leaf Label可以取代ESI Label实现水平分割功能。因此,本端为Leaf AC,PE只需封装Leaf Label。Leaf Label封装的形式复用ESI Label的封装方式。
基于上述逻辑,本实施例中,在上述根据入接口逻辑口信息和出接口逻辑口信息确定封装策略,并基于封装策略对报文进行封装后发出的步骤,可以通过以下任意一种方式实现。
在入接口逻辑口信息和出接口逻辑口信息表明对应逻辑端口均为单归接入叶子属性时,对报文封装叶子标识后发出。
在入接口逻辑口信息表明对应逻辑端口为多归接入叶子属性、出接口逻辑口信息表明对应逻辑端口为单归接入叶子属性或多归接入叶子属性时,对报文封装叶子标识和ESI标识后发出。
在入接口逻辑口信息表明对应逻辑端口为单归接入根属性、出接口逻辑口信息表明对应逻辑端口为单归接入叶子属性、多归接入叶子属性或多归接入叶子属性时,不执行对报文的封装操作并将所述报文发出。
在入接口逻辑口信息表明对应逻辑端口为多归接入根属性、出接口逻辑口信息表明对应逻辑端口为单归接入叶子属性、多归接入叶子属性或多归接入叶子属性时,对报文封装ESI标识后发出。
具体对,本实施例中,在对报文封装叶子标识时,可以先确定用于执行封装的叶子值,根据预先建立的叶子值与叶子标识之间的第一映射关系,确定用于执行封装的叶子标识,并将叶子标识插入报文中,其中,叶子值为多位二进制数值,该多位二进制数值的最高位为1。
在对报文封装ESI标识时,可以先确定用于执行封装的ESI值,根据预先建立的ESI值与ESI标识之间的第二映射关系,确定用于执行封装的ESI标识,并将ESI标识插入报文中,其中,ESI值为单位数值,同一数值表明所属同一以太网段。
本实施例中,请结合参阅图7中所示,所述的叶子值可为metadata值,基于该值可标识对应的AC是Leaf还是Root,例如,Leaf AC的metadata为0x1fff。对于多归Root,可设置对应的ESI值,而单归Root AC则不具有metadata值,可以理解为设置为0。
本实施例中,每个PE设备上维护有ESI Label和ESI值之间的映射关系,以及LeafLabel与Leaf值之间的映射关系。
以图6中PE1设备上的通信为例,假设PE1设备已经学习到所有CE设备的MAC转发信息,生成MAC转发表,其中,以逻辑端口的方式进行转发。
例如CE4与CE6通信时,CE4接入时得到的入接口逻辑口信息包括SVP 4和metadata0x1fff,此时查找MAC地址转发表可知目的MAC地址对应的逻辑端口为DVP 6,DVP 6对应的出接口逻辑口信息包括DVP 6和metadata0x1fff。这种情形下,表明属于入接口逻辑口为多归接入叶子属性、出接口逻辑口为多归接入叶子属性的情形,此时,PE1设备可对报文封装上Leaf标识和ESI标识,假设Leaf Label=1000,ESI Label=100。
在CE3与CE4通信时,需要经过Peer Link PE2,此时属于入接口逻辑口为多归接入根属性、出接口逻辑口为多归接入叶子属性的情形,因此,对报文封装ESI标识后发出,假设ESI Label=100。
请参阅图8,在上述入方向的PE设备对报文的封装策略的基础上,本方法还包括以下步骤:
S21,作为远端通信场景下出方向的PE设备时,在接收到其他PE设备所转发的报文时,获得所述报文中的目的MAC地址和封装在所述报文中的入逻辑口标识。
S22,查找保存的MAC地址转发表以获得所述目的MAC地址对应的逻辑端口。
S23,获得所述目的MAC地址对应的逻辑端口的出逻辑口信息。
S24,基于所述入逻辑口标识和出逻辑口信息,确定正常转发所述报文或丢弃所述报文。
本实施例中,对于出方向的PE设备,接收到其他PE设备转发的报文后,首先会去掉报文中外层的Label,解析到EVPN Label(包括ESI Label和Leaf Label),出方向的PE设备上配置匹配规则,匹配不同的Label值出不同的Source CategoryID(以下简称srcCid)。
出方向的PE设备同样地,查找MAC地址转发表获得目的MAC地址对应的逻辑端口,并且,对目的MAC地址对应的CE设备的AC类型预先配置有出逻辑口信息。由上述可知,出逻辑口信息包括单(多)归接入叶子属性、单(多)归接入根属性。
PE设备判断正常转发报文还是丢弃报文的方式可以是,根据第一映射关系和第二映射关系分别获得入逻辑口标识对应的入逻辑口叶子值和入逻辑口ESI值;获得出逻辑口信息中包括的出逻辑口叶子值和出逻辑口ESI值;在入逻辑口ESI值和出逻辑口ESI值非0且相同时,丢弃报文,或者在入逻辑口叶子值和出逻辑口叶子值的最高位均为1时,丢弃报文,否则,正常转发报文。
由上述可知,ESI值为单位数值,例如为1,同一数值表征属于同一以太网段。叶子值为多位二进制数值,其最高位为1。
具体地,PE设备基于入逻辑口标识可以得到srcCid,srcCid有16bits,最高位为Leaf指示位,置1表明是Leaf。剩余的15位则用来标识ESI的值。例如,收到一个报文的EVPNLabel是100,在PE设备维护的映射中,Label 100对应ESI 1,此时srcCid值为1。收到一个报文的EVPN Label是1000,根据映射关系,1000对应Leaf,则srcCid值为0x8000。
与入方向类似,PE通过查找MAC地址转发表进行转发,同样是根据DVP上的匹配规则进行隔离,确定出逻辑口信息Dest CategoryId(以下简称dstCid),匹配srcCid和dstCid执行转发。DVP的dstCid的值与srcCid的构成一致,最高位标识Leaf,余下15标识ESI值。
此外,需要说明的是,对于双归接入的目的Leaf AC,同时存在ESI值和Leaf标识,因此dstCid的构成为0x8000加上ESI值(如CE4的ESI值为2,因此dstCid为0x8002)。
在通过匹配srcCid和dstCid执行转发时,具体地转发策略如表1中所示。
表1转发策略表
由表1中可见,在入逻辑口ESI值和出逻辑口ESI值非0且相同时,丢弃报文,例如表1中报文帧携带ESI Label(srcCid=ESI1)且目的为多归Root AC(dstCid=ESI1)时,则丢弃报文。
或者在入逻辑口叶子值和出逻辑口叶子值的最高位均为1时丢弃报文,如表1中报文帧携带Leaf Label(srcCid=0x8000)且目的为单归Leaf AC(dstCid=0x8000)、报文帧携带Leaf Label(srcCid=0x8000)且目的为多归Leaf AC(dstCid=0x8000+ESI2),则丢弃报文。
除开以上情形之外,则可正常转发报文。
以上述为例,假设在PE1上收到一个来自PE2的EVPN Label为1000的广播报文,解析出srcCid为0x8000,根据本地的MAC地址转发表,查找到本地成员有CE1~CE4。其中,DVP1上dstCid为0,正常转发报文,DVP 2上dstCid为0x8000,丢弃报文,DVP 3上dstCid为1,正常转发报文,DVP 4上dstCid为0x8002,丢弃报文。如果收到一个EVPN Label为100的报文,也是同样的处理方式,最后仅CE3收不到报文。
此外,本实施例中,除了远端通信场景之外,CE设备之间还存在本地通信场景。请参阅图9,本实施例提供的方法还可包括以下步骤:
S31,作为本地通信场景下的PE设备时,从入逻辑口接收与其连接的CE设备发送的报文,并获得所述报文中携带的目的MAC地址。
S32,查找保存的MAC地址转发表获得所述入逻辑口的标识和所述目的MAC地址对应的出逻辑口的标识,其中,所述入逻辑口和出逻辑口的标识用于表征对应逻辑口是否为叶子接入属性。
S33,根据所述入逻辑口的标识和出逻辑口的标识确定正常转发所述报文或丢弃所述报文。
在单播场景下,对于本地PE设备上通信的成员,不需要Leaf Label即可实现E-Tree隔离。如图10中所示,在本地的MAC地址转发表中包括逻辑口标识(is Leaf),用于表征对应逻辑口下对应的CE设备的AC类型是否为叶子站点类型,也即,逻辑口是否为叶子接入属性。
在入逻辑口的标识和出逻辑口的标识均表征对应逻辑口为叶子接入属性时,丢弃报文,否则正常转发报文。
例如在PE1设备上,PE1设备已经学到所有本地AC的MAC地址,对于本地通信的CE2设备和CE4设备,CE2设备和CE4设备分别与PE1设备连击的逻辑端口P2和P4的标识均置为1,表征均为叶子接入属性。此时,在CE4和CE2通信时,PE1设备会将接收到的报文进行丢弃处理。
此外,在本地通信场景下,本地成员的组播隔离与上述的本地成员之间的单播隔离是相同的处理方式,本实施例在此不作赘述。
本实施例所提供的基于RFC 8317的E-TREE实现方法,实现了EVPN网络中的E-Tree隔离,且所有的匹配规则均通过逻辑口使能,因此可以适配多种网络环境,如MPLS、SRv6。并且,所有Label的编辑方式都通过已有的方案实现,没有引入新的编辑方式,因此十分简单高效。
基于同一发明构思,请参阅图11,示出了本申请实施例提供的基于RFC 8317的E-TREE实现装置的功能模块示意图,本实施例可以根据上述方法实施例对该基于RFC 8317的E-TREE实现装置进行功能模块的划分。例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
比如,在采用对应各个功能划分各个功能模块的情况下,图11示出的基于RFC8317的E-TREE实现装置只是一种装置示意图。其中,基于RFC 8317的E-TREE实现装置可以包括接收模块、处理模块和发送模块,下面分别对该基于RFC 8317的E-TREE实现装置的各个功能模块的功能进行详细阐述。
接收模块,用于在作为远端通信场景下入方向的PE设备时,在接收到与其连接的CE设备发送的报文时,获得预先配置的连接所述CE设备的逻辑端口的入接口逻辑口信息;
处理模块,用于获得所述报文中携带的目的MAC地址,查找保存的MAC地址转发表以获得所述目的MAC地址对应的逻辑端口;
处理模块,还用于获得所述目的MAC地址对应的逻辑端口的出接口逻辑口信息;
发送模块,用于根据所述入接口逻辑口信息和出接口逻辑口信息确定封装策略,并基于所述封装策略对所述报文进行封装后发出。
可以理解,上述接收模块、处理模块和发送模块可以用于执行上述步骤S11至S14,关于接收模块、处理模块和发送模块的详细实现方式可以参照上述步骤S11至S14有关的内容。
在一种可能的实现方式中,接收模块还可以用于,作为远端通信场景下出方向的PE设备时,在接收到其他PE设备所转发的报文时,获得所述报文中的目的MAC地址和封装在所述报文中的入逻辑口标识;
处理模块还可以用于,查找保存的MAC地址转发表以获得所述目的MAC地址对应的逻辑端口;获得所述目的MAC地址对应的逻辑端口的出逻辑口信息;基于所述入逻辑口标识和出逻辑口信息,确定正常转发所述报文或丢弃所述报文。
在一种可能的实现方式中,上述处理模块具体可以用于实现以下至少之一:
在所述入接口逻辑口信息和出接口逻辑口信息表明对应逻辑端口均为单归接入叶子属性时,对所述报文封装叶子标识后发出;
在所述入接口逻辑口信息表明对应逻辑端口为多归接入叶子属性、出接口逻辑口信息表明对应逻辑端口为单归接入叶子属性或多归接入叶子属性时,对所述报文封装叶子标识和ESI标识后发出;
在所述入接口逻辑口信息表明对应逻辑端口为单归接入根属性、出接口逻辑口信息表明对应逻辑端口为单归接入叶子属性、多归接入叶子属性或多归接入叶子属性时,不执行对所述报文的封装操作并将所述报文发出;
在所述入接口逻辑口信息表明对应逻辑端口为多归接入根属性、出接口逻辑口信息表明对应逻辑端口为单归接入叶子属性、多归接入叶子属性或多归接入叶子属性时,对所述报文封装ESI标识后发出。
在一种可能的实现方式中,上述处理模块具体可以用于:
确定用于执行封装的叶子值,根据预先建立的叶子值与叶子标识之间的第一映射关系,确定用于执行封装的叶子标识,并将所述叶子标识插入所述报文中,其中,所述叶子值为多位二进制数值,该多位二进制数值的最高位为1。
在一种可能的实现方式中,上述处理模块具体可以用于:
确定用于执行封装的ESI值,根据预先建立的ESI值与ESI标识之间的第二映射关系,确定用于执行封装的ESI标识,并将所述ESI标识插入所述报文中,其中,所述ESI值为单位数值,同一数值表明所属同一以太网段。
在一种可能的实现方式中,上述处理模块具体可以用于:
根据所述第一映射关系和第二映射关系分别获得所述入逻辑口标识对应的入逻辑口叶子值和入逻辑口ESI值;
获得所述出逻辑口信息中包括的出逻辑口叶子值和出逻辑口ESI值;
在所述入逻辑口ESI值和出逻辑口ESI值非0且相同时,丢弃所述报文,或者在所述入逻辑口叶子值和出逻辑口叶子值的最高位均为1时,丢弃所述报文,否则,正常转发所述报文。
在一种可能的实现方式中,接收模块还可以用于,作为本地通信场景下的PE设备时,从入逻辑口接收与其连接的CE设备发送的报文,并获得所述报文中携带的目的MAC地址;
处理模块还可以用于,查找保存的MAC地址转发表获得所述入逻辑口的标识和所述目的MAC地址对应的出逻辑口的标识,其中,所述入逻辑口和出逻辑口的标识用于表征对应逻辑口是否为叶子接入属性;根据所述入逻辑口的标识和出逻辑口的标识确定正常转发所述报文或丢弃所述报文。
在一种可能的实现方式中,上述处理模块具体可以用于:
在所述入逻辑口的标识和出逻辑口的标识均表征对应逻辑口为叶子接入属性时,丢弃所述报文,否则正常转发所述报文。
本申请实施例还提供一种通信设备,该通信设备可以是EPVN网络中多个PE设备中的任意PE设备。该通信设备包括一个或多个存储介质和一个或多个与存储介质通信的处理器,一个或多个存储介质存储有处理器可执行的机器可执行指令,当通信设备运行时,处理器执行所述机器可执行指令,以执行前述实施方式中任意一项所述的基于RFC 8317的E-TREE实现方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种基于RFC 8317的E-TREE实现方法,其特征在于,应用于EPVN网络中多个PE设备中的任意PE设备,各所述PE设备上以逻辑端口的方式接入至少一个CE设备,各所述PE设备与其他任意PE设备连接,所述方法包括:
作为远端通信场景下入方向的PE设备时,在接收到与其连接的CE设备发送的报文时,获得预先配置的连接所述CE设备的逻辑端口的入接口逻辑口信息;
获得所述报文中携带的目的MAC地址,查找保存的MAC地址转发表以获得所述目的MAC地址对应的逻辑端口;
获得所述目的MAC地址对应的逻辑端口的出接口逻辑口信息;
根据所述入接口逻辑口信息和出接口逻辑口信息确定封装策略,并基于所述封装策略对所述报文进行封装后发出。
2.根据权利要求1所述的基于RFC 8317的E-TREE实现方法,其特征在于,所述方法还包括:
作为远端通信场景下出方向的PE设备时,在接收到其他PE设备所转发的报文时,获得所述报文中的目的MAC地址和封装在所述报文中的入逻辑口标识;
查找保存的MAC地址转发表以获得所述目的MAC地址对应的逻辑端口;
获得所述目的MAC地址对应的逻辑端口的出逻辑口信息;
基于所述入逻辑口标识和出逻辑口信息,确定正常转发所述报文或丢弃所述报文。
3.根据权利要求2所述的基于RFC 8317的E-TREE实现方法,其特征在于,所述根据所述入接口逻辑口信息和出接口逻辑口信息确定封装策略,并基于所述封装策略对所述报文进行封装后发出的步骤,包括以下至少之一:
在所述入接口逻辑口信息和出接口逻辑口信息表明对应逻辑端口均为单归接入叶子属性时,对所述报文封装叶子标识后发出;
在所述入接口逻辑口信息表明对应逻辑端口为多归接入叶子属性、出接口逻辑口信息表明对应逻辑端口为单归接入叶子属性或多归接入叶子属性时,对所述报文封装叶子标识和ESI标识后发出;
在所述入接口逻辑口信息表明对应逻辑端口为单归接入根属性、出接口逻辑口信息表明对应逻辑端口为单归接入叶子属性、多归接入叶子属性或多归接入叶子属性时,不执行对所述报文的封装操作并将所述报文发出;
在所述入接口逻辑口信息表明对应逻辑端口为多归接入根属性、出接口逻辑口信息表明对应逻辑端口为单归接入叶子属性、多归接入叶子属性或多归接入叶子属性时,对所述报文封装ESI标识后发出。
4.根据权利要求3所述的基于RFC 8317的E-TREE实现方法,其特征在于,对所述报文封装叶子标识的步骤,包括:
确定用于执行封装的叶子值,根据预先建立的叶子值与叶子标识之间的第一映射关系,确定用于执行封装的叶子标识,并将所述叶子标识插入所述报文中,其中,所述叶子值为多位二进制数值,该多位二进制数值的最高位为1。
5.根据权利要求4所述的基于RFC 8317的E-TREE实现方法,其特征在于,对所述报文封装ESI标识后发出的步骤,包括:
确定用于执行封装的ESI值,根据预先建立的ESI值与ESI标识之间的第二映射关系,确定用于执行封装的ESI标识,并将所述ESI标识插入所述报文中,其中,所述ESI值为单位数值,同一数值表明所属同一以太网段。
6.根据权利要求5所述的基于RFC 8317的E-TREE实现方法,其特征在于,所述基于所述入逻辑口标识和出逻辑口信息,确定正常转发所述报文或丢弃所述报文的步骤,包括:
根据所述第一映射关系和第二映射关系分别获得所述入逻辑口标识对应的入逻辑口叶子值和入逻辑口ESI值;
获得所述出逻辑口信息中包括的出逻辑口叶子值和出逻辑口ESI值;
在所述入逻辑口ESI值和出逻辑口ESI值非0且相同时,丢弃所述报文,或者在所述入逻辑口叶子值和出逻辑口叶子值的最高位均为1时,丢弃所述报文,否则,正常转发所述报文。
7.根据权利要求2所述的基于RFC 8317的E-TREE实现方法,其特征在于,所述方法还包括:
作为本地通信场景下的PE设备时,从入逻辑口接收与其连接的CE设备发送的报文,并获得所述报文中携带的目的MAC地址;
查找保存的MAC地址转发表获得所述入逻辑口的标识和所述目的MAC地址对应的出逻辑口的标识,其中,所述入逻辑口和出逻辑口的标识用于表征对应逻辑口是否为叶子接入属性;
根据所述入逻辑口的标识和出逻辑口的标识确定正常转发所述报文或丢弃所述报文。
8.根据权利要求7所述的基于RFC 8317的E-TREE实现方法,其特征在于,所述根据所述入逻辑口的标识和出逻辑口的标识确定正常转发所述报文或丢弃所述报文的步骤,包括:
在所述入逻辑口的标识和出逻辑口的标识均表征对应逻辑口为叶子接入属性时,丢弃所述报文,否则正常转发所述报文。
9.一种基于RFC 8317的E-TREE实现装置,其特征在于,应用于EPVN网络中多个PE设备中的任意PE设备,各所述PE设备上以逻辑端口的方式接入至少一个CE设备,各所述PE设备与其他任意PE设备连接,所述装置包括:
接收模块,用于在作为远端通信场景下入方向的PE设备时,在接收到与其连接的CE设备发送的报文时,获得预先配置的连接所述CE设备的逻辑端口的入接口逻辑口信息;
处理模块,用于获得所述报文中携带的目的MAC地址,查找保存的MAC地址转发表以获得所述目的MAC地址对应的逻辑端口;
处理模块,还用于获得所述目的MAC地址对应的逻辑端口的出接口逻辑口信息;
发送模块,用于根据所述入接口逻辑口信息和出接口逻辑口信息确定封装策略,并基于所述封装策略对所述报文进行封装后发出。
10.一种通信设备,其特征在于,包括一个或多个存储介质和一个或多个与存储介质通信的处理器,一个或多个存储介质存储有处理器可执行的机器可执行指令,当通信设备运行时,处理器执行所述机器可执行指令,以执行权利要求1-8中任意一项所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310993642.5A CN116886663A (zh) | 2023-08-08 | 2023-08-08 | 基于rfc 8317的e-tree实现方式、装置和通信设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310993642.5A CN116886663A (zh) | 2023-08-08 | 2023-08-08 | 基于rfc 8317的e-tree实现方式、装置和通信设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116886663A true CN116886663A (zh) | 2023-10-13 |
Family
ID=88256904
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310993642.5A Pending CN116886663A (zh) | 2023-08-08 | 2023-08-08 | 基于rfc 8317的e-tree实现方式、装置和通信设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116886663A (zh) |
-
2023
- 2023-08-08 CN CN202310993642.5A patent/CN116886663A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108696440B (zh) | 一种用于多重归宿evpn网络中的多播负载均衡的方法和提供者边缘路由器 | |
CN111510379B (zh) | Evpn报文处理方法、设备及系统 | |
EP3065342B1 (en) | Update of mac routes in evpn single-active topology | |
US9781032B1 (en) | MPLS label usage in ethernet virtual private networks | |
US8068442B1 (en) | Spanning tree protocol synchronization within virtual private networks | |
CN111865898B (zh) | 基于流规则协议的通信方法、设备和系统 | |
US9860169B1 (en) | Neighbor resolution for remote EVPN hosts in IPV6 EVPN environment | |
US11689452B2 (en) | Method for forwarding service data, network device, and network system | |
US7339929B2 (en) | Virtual private LAN service using a multicast protocol | |
US8787149B1 (en) | MAC address synchronization for multi-homing with multichassis link aggregation | |
US8151000B1 (en) | Transparently providing layer two (L2) services across intermediate computer networks | |
US9178816B1 (en) | Control plane messaging in all-active multi-homed ethernet virtual private networks | |
EP3188422B1 (en) | Traffic black holing avoidance and fast convergence for active-active pbb-evpn redundancy | |
US20130272114A1 (en) | Pseudo wire switching method and device | |
US10965594B2 (en) | Pseudo wire load sharing method and device | |
EP1005741A1 (en) | Mechanism for packet field replacement in a multi-layer distributed network element | |
CN111064596B (zh) | 对于用于多宿主节点故障的bum流量的节点保护 | |
WO2021093463A1 (zh) | 报文转发的方法、第一网络设备以及第一设备组 | |
EP3396897B1 (en) | Multicast load balancing in multihoming evpn networks | |
WO2022117018A1 (zh) | 报文传输的方法和装置 | |
US20110222541A1 (en) | Network System, Edge Node, and Relay Node | |
CN114205297A (zh) | 流量转发处理方法及设备 | |
US20230081052A1 (en) | Method and apparatus for sending multicast packet | |
WO2021129023A1 (zh) | 报文发送的方法、设备和系统 | |
CN108199960B (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 |