CN115297069B - Evpn网络设备及mac地址学习方法、通信*** - Google Patents
Evpn网络设备及mac地址学习方法、通信*** Download PDFInfo
- Publication number
- CN115297069B CN115297069B CN202210908380.3A CN202210908380A CN115297069B CN 115297069 B CN115297069 B CN 115297069B CN 202210908380 A CN202210908380 A CN 202210908380A CN 115297069 B CN115297069 B CN 115297069B
- Authority
- CN
- China
- Prior art keywords
- mac address
- mac
- processor
- network device
- address table
- 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
- 238000000034 method Methods 0.000 title claims abstract description 54
- 238000004891 communication Methods 0.000 title claims abstract description 15
- 230000004044 response Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 description 17
- 238000010586 diagram Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 230000000644 propagated effect Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 101100059544 Arabidopsis thaliana CDC5 gene Proteins 0.000 description 1
- 101100244969 Arabidopsis thaliana PRL1 gene Proteins 0.000 description 1
- 238000006424 Flood reaction Methods 0.000 description 1
- 102100039558 Galectin-3 Human genes 0.000 description 1
- 101100454448 Homo sapiens LGALS3 gene Proteins 0.000 description 1
- 101150115300 MAC1 gene Proteins 0.000 description 1
- 101150051246 MAC2 gene Proteins 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3009—Header conversion, routing tables or routing tags
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
- H04L49/354—Switches specially adapted for specific applications for supporting virtual local area networks [VLAN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/40—Constructional details, e.g. power supply, mechanical construction or backplane
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开提供一种EVPN网络设备及MAC地址学习方法、通信***;涉及通信技术领域。设备包括:交换芯片、第一处理器和第二处理器,第二处理器包括MAC管理模块和BGP模块;交换芯片用于接收BUM流量,产生相应的MAC学习事件;第一处理器用于根据MAC学习事件,在第一MAC地址表项中创建新的MAC转发条目;MAC管理模块用于确定新MAC地址信息;BGP模块用于向第二网络设备发送媒体接入控制/互联网协议通告路由。本公开可以解决本地缓存MAC地址学习方式带来的CPU占用率高、学习速率低及丢失数据的问题。
Description
技术领域
本公开涉及通信技术领域,具体而言,涉及一种以太网虚拟私有网络(EthernetVirtual Private Network,EVPN)网络设备及MAC地址学习方法、通信***。
背景技术
以太网虚拟私有网络是一种在多协议标签交换(Multi-Protocol LabelSwitching,MPLS)网络上提供二层网络互联的虚拟私有网络(Virtual Private Network,VPN)技术。目前,EVPN作为承载二层业务的主流方案在各大运营商的网络设计中被使用。
相关技术中,通过网络设备的中央处理器对MAC(Media Access Contro,媒体访问控制)地址信息本地缓存,以学习MAC地址信息,这样会产生较高的CPU(CentralProcessing Unit,中央处理器)占用率,进而导致学习速率低的问题;此外,在处理数据量较大时,本地缓存空间不足,会导致丢失数据的问题。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开实施例的目的在于提供一种EVPN网络设备及MAC地址学习方法、通信***,进而在一定程度上解决了本地缓存MAC地址学习方式带来的CPU占用率高、学习速率低及丢失数据的问题。
根据本公开的第一方面,提供了一种第一网络设备,所述第一网络设备处于以太网虚拟私有网络,所述第一网络设备包括:交换芯片、第一处理器和第二处理器,所述第二处理器包括介质访问控制MAC管理模块和边界网关协议(Border Gateway Protocol,BGP)模块;所述交换芯片,用于接收BUM流量,根据所述BUM流量中的目标报文,产生相应的MAC学习事件,并向所述第一处理器发送所述MAC学习事件;所述第一处理器,用于根据接收的所述MAC学习事件,在第一MAC地址表项中创建新的MAC转发条目;所述MAC管理模块,用于响应于所述第一MAC地址表项与第二MAC地址表项的比较结果,确定新MAC地址信息;所述第二MAC地址表项为上一周期的MAC地址表项;所述BGP模块,用于向第二网络设备发送媒体接入控制/互联网协议通告路由,以向所述第二网络设备通告所述新MAC地址信息。
可选地,所述MAC管理模块还用于:通过直接存储器访问周期性地获取所述第一处理器中的所述第一MAC地址表项。
可选地,所述目标报文包括源MAC地址信息,所述交换芯片还用于:根据所述源MAC地址信息,查找第一MAC地址表项;确定第一MAC地址表项中是否包含该源MAC地址信息;若第一MAC地址表项中不包含该源MAC地址信息,产生相应的MAC学习事件。
可选地,所述目标报文包括目的MAC地址信息,所述交换芯片还用于:若第一MAC地址表项中包含该源MAC地址信息,向所述目的MAC地址信息对应的网络设备转发所述目标报文。
可选地,所述MAC管理模块还用于:在所述第一网络设备的初始化阶段,将所述第一MAC地址表项初始化为空。
可选地,所述目标报文为未知单播报文、组播报文、广播报文中的一种或多种。
根据本公开的第二方面,提供了一种MAC地址信息学习方法,应用于第一网络设备,所述第一网络设备处于以太网虚拟私有网络,所述方法包括:接收BUM流量,根据所述BUM流量中的目标报文,产生相应的MAC学习事件;根据接收的所述MAC学习事件,在第一MAC地址表项中创建新的MAC转发条目;响应于第一MAC地址表项与第二MAC地址表项的比较结果,确定新MAC地址信息;所述第二MAC地址表项为上一周期的MAC地址表项;向第二网络设备发送媒体接入控制/互联网协议通告路由,以向所述第二网络设备通告所述新MAC地址信息。
根据本公开的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任意实施例的方法。
根据本公开的第四方面,提供一种通信***,包括:上述任意实施例的第一网络设备。
本公开示例性实施例可以具有以下部分或全部有益效果:
在本公开示例实施方式所提供的第一网络设备中,一方面,可以通过增加第一处理器来根据接收的所述MAC学习事件,在第一MAC地址表项中创建新的MAC转发条目,结合第二处理器的MAC管理模块确定新MAC地址信息,能够通过第一处理器建立MAC地址的快速学习通道,避免了CPU占用率高和学习速率低的问题。另一方面,按照一定的周期进行MAC地址的学习,能够避免由于存储空间不足而丢失数据的问题。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示意性示出了根据本公开的一个实施例中第一网络设备的应用场景示意图。
图2示意性示出了根据本公开的一个实施例中第一网络设备的示意图。
图3示意性示出了根据本公开的一个实施例中第一网络设备的MAC地址学习过程流程示意图。
图4示意性示出了根据本公开的一个实施例中的MAC地址学习方法的流程示意图。
图5示意性示出了根据本公开的一个实施例的示例性第一网络设备结构框图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
本申请描述的技术方案可以适用于基于BGP MPLS的EVPN中。EVPN技术采用类似于BGP/MPLS互联网协议(Internet Protocol,IP)VPN的机制,通过扩展BGP协议,使用扩展后的可达性信息,使不同站点的二层网络间的MAC地址学***面转移到控制平面。通过在控制平面学***面学***面进行MAC地址学习而导致的网络设备多归属实现困难、无法支持负载分担等问题。
如图1所示,为本公开的应用场景的示例性***示意图,该***100包括服务商提供的骨干网和多个E-VPN站点。骨干网可以包括第一PE(Provider Edge,运营商边缘)设备PE1、第二PE设备PE2和PE3。多个E-VPN站点包括site1和site2。其中,site1和site2属于同一个E-VPN1。终端设备A的MAC地址为MAC1,接入CE1;CE1接入PE1。终端设备B的MAC地址为MAC2,接入CE2,CE2接入PE3。其中,PE1从CE1学习到终端设备A的MAC地址。PE1可以通过BGP更新(Update)消息向PE2、PE3发送EVPN媒体接入控制/互联网协议通告路由(MAC/IPAdvertisement Rouge),即向PE2和PE3通告到达终端设备A的MAC路由。需要说明的是,图1中以终端设备A通过CE1接入PE设备为例进行说明,在实际组网中,也可以是终端设备A直接作为CE(Customer Edge,用户边缘)设备接入PE设备,此时,终端设备A的MAC地址即为CE设备的MAC地址,本示例对此不做限定。对于终端设备直接接入PE设备的方案,与终端设备通过CE设备接入PE设备的方案类似,此处不再赘述。
本公开中的第一网络设备可以为***100中的第一PE设备。
参考图2,本公开提供的一个实施例的第一网络设备200,第一网络设备处于以太网虚拟私有网络;所述第一网络设备包括:交换芯片210、第一处理器220和第二处理器230,所述第二处理器230包括MAC管理模块231和BGP模块232。
在本示例实施方式中,第一网络设备200可以是PE设备,如接入交换机,第二处理器230可以是CPU,用于运行软件程序,实现逻辑控制等功能。
所述交换芯片210,用于接收BUM流量,根据所述BUM流量中的目标报文,产生相应的MAC学习事件,并向所述第一处理器发送所述MAC学习事件。
在本示例实施方式中,BUM流量是指BUM报文形成的数据流量。BUM(broadcast、unknown-unicast and multicast,广播、未知单播或组播)报文。其中,广播(broadcast)是主机之间一对所有的通讯模式,广播域内每一台主机发出的广播报文能被其他所有主机接收到,广播在同一网段中传播。未知单播(unknown-unicast)在广播域中的传播过程类似于广播,比如网络设备接收到某单播帧时,发现MAC表中没有该单播帧的目的MAC地址,那么这个单播帧就是未知单播帧,那么设备(如交换机)就会泛洪这个单播帧。组播(multicast)可以实现点对多点通信,需要将对相同内容感兴趣的设备加入相同组播组。组播报文默认在二层网络中泛洪,而且可以实现跨网段的传播(广播只能在同一网段中传播)。
在本示例实施方式中,目标报文可以是广播报文、未知单播报文、组播报文中的任一种或多种。目标报文可以包括本机入端口信息、源MAC地址信息、归属VLAN(VirtualLocal Area Network,虚拟局域网)信息等,还可以包括目的MAC地址信息、目的主机入端口信息等,本示例对此不做限定。
在本示例实施方式中,可以在目标报文中没有源MAC地址信息时,产生相应的MAC学习事件,MAC学习事件可以是请求进行MAC地址学习的消息,也可以针对该MAC学习事件生成对应的通知消息,还可以是其他方式,本示例对此不做限定。MAC学习事件携带的信息可以与目标报文相同,也可以不同,例如,只包含部分信息,本示例对此不做限定。
所述第一处理器220,用于根据接收的所述MAC学习事件,在第一MAC地址表项中创建新的MAC转发条目。
在本示例实施方式中,第一处理器用于与第二处理器协作完成MAC地址的学习。第一处理器可以是数字信号处理器(Digital Signal Processing,DSP),主要用于处理学习事件并管理当前周期创建的MAC表项。MAC转发条目是指根据目标报文生成的目标报文转发所需的MAC地址信息。MAC转发条目可以包括目标报文的源MAC地址、目的MAC地址和归属的网络信息等,本示例对此不做限定。
在本示例实施方式中,第一MAC地址表项是当前周期创建的第一MAC地址表项。
所述MAC管理模块231,用于响应于第一MAC地址表项与第二MAC地址表项的比较结果,确定新MAC地址信息。
在示例实施方式中,MAC学习事件可以按一定的周期进行,该周期可以是固定的或动态变化的,本示例对此不做限定。可以根据当前网络的数据量和网络设备数量进行预先配置。
在本示例实施方式中,可以将当前周期的第一MAC地址表项相较于上一周期第二MAC地址表项增加的MAC表项内容作为当前周期学习到的新MAC地址信息。
所述BGP模块232,用于向第二网络设备发送媒体接入控制/互联网协议通告路由,以向所述第二网络设备通告所述新MAC地址信息。
在示例实施方式中,第二网络设备是指EVPN网络中可以通过MAC/IP通告路由与第一网络设备进行信息互通的其他网络设备。第二网络设备也是PE设备。MAC/IP通告路由可以携带本端PE上EVPN实例的RD(Route Distinguisher,路由区别特征)值、ESI(EthernetSegment Identifier,以太网网段标识)值以及EVPN实例对应的私网标签。MAC/IP地址通告路由还可以包含EVPN实例的RT值、路由下一跳等信息,本示例对此不做限定。该类型路由可以用于从本端PE向其它PE发布单播MAC/IP地址的可达信息。
本公开实施例提供的第一网络设备中,一方面,可以通过增加第一处理器来根据接收的所述MAC学习事件,在第一MAC地址表项中创建新的MAC转发条目,结合第二处理器的MAC管理模块确定新MAC地址信息,能够通过第一处理器建立MAC地址的快速学习通道,避免了CPU占用率高和学习速率低的问题。另一方面,按照一定的周期进行MAC地址的学习,能够避免由于存储空间不足而丢失数据的问题。
以下在一些实施例中对本公开进行更加详细的阐述。
在一些实施例中,所述MAC管理模块231还用于:
通过直接存储器访问周期性地获取所述第一处理器中的所述第一MAC地址表项。
在本示例实施方式中,可以通过直接存储器访问DMA读取当前周期第一处理器中创建的第一MAC地址表项。可以通过周期性读取MAC地址表项,MAC管理模块通过第一处理器将第一MAC地址表项读取至用户态内存。
本公开MAC管理模块采用周期性学习方式,即主动轮询的方式进行MAC地址学习,该方式在百万级MAC地址学习过程中,能够大大地减少***中断的上报次数,节省了内核态拷贝至用户态的拷贝时间,提高***稳定性和健壮性。
在一些实施例中,所述目标报文包括源MAC地址信息,所述交换芯片210还用于:
根据所述源MAC地址信息,查找第一MAC地址表项;
确定第一MAC地址表项中是否包含该源MAC地址信息;
若第一MAC地址表项中不包含该源MAC地址信息,产生相应的MAC学习事件。
在本示例实施方式中,目标报文可以是未知单播报文、组播报文、广播报文中的一种或多种。示例性地,目标报文为未知单播报文,未知单播报文包括源MAC地址信息和目的MAC地址信息,交换芯片查找第一MAC地址表项,确定第一MAC地址表项中是否包含该源MAC地址信息,若不包含,则对该源MAC地址信息进行学习,即产生MAC学习事件。若第一MAC地址表项中包含该源MAC地址信息,向目的MAC地址信息对应的网络设备转发所述目标报文。
在一些实施例中,所述MAC管理模块231还用于:
在所述第一网络设备的初始化阶段,将所述第一MAC地址表项初始化为空。
在本示例实施方式中,可以在一个周期进行一次设备初始化,也可以若干个周期进行一次设备初始化,具体可以根据***的设备数据进行设置,本示例对此不做限定。初始化阶段,MAC管理模块对当前周期的第一MAC地址表项进行初始化,将其初始化为空,以节省计算资源和存储空间。
在一些实施例中,参考图3,本公开一个具体实施例的第一网络设备的MAC地址学习过程具体可以包括以下步骤。
步骤S301,第一网络设备初始化;MAC管理模块对第一MAC地址表项初始化为空。
步骤S302,交换芯片接收BUM流量。
步骤S303,交换芯片判断目标报文的源MAC地址是否包含于第一MAC地址表项,若是,转至步骤S309,否则,转至步骤S304。
步骤S304,交换芯片产生针对该目标报文的MAC学习事件并发送至第一处理器。
步骤S305,第一处理器对该MAC学习事件进行解析和处理。
在本示例中,第一处理器根据MAC学习事件在第一MAC地址表项中创建新的MAC转发条目。
步骤S306,MAC管理模块周期性读取第一处理器中的第一MAC地址表项至用户态内存。
步骤S307,MAC管理模块比较第一MAC地址表项与第二MAC地址表项,确定当前周期学习的新MAC地址信息。
本示例中,将当前周期相较于上一周期增加的MAC地址信息作为当前周期学习的新MAC地址信息,并发送至BGP模块。
步骤S308,BGP模块通过MAC/IP通告路由,将新MAC地址信息通告至第二网络设备。
步骤S309,交换芯片向所述目的MAC地址信息对应的网络设备转发所述目标报文。
上述实施例中各个步骤的详细介绍可以参照前述实施例中的相应描述,此处不再赘述。
参见图4,本示例实施方式中还提供了一种MAC地址信息学习方法,应用于第一网络设备,所述第一网络设备处于以太网虚拟私有网络,其特征在于,所述第一网络设备包括:交换芯片、第一处理器和第二处理器;所述方法包括以下步骤S410-S440。
步骤S410,接收BUM流量,根据所述BUM流量中的目标报文,产生相应的MAC学习事件。
步骤S420,根据所述MAC学习事件,在第一MAC地址表项中创建新的MAC转发条目。
步骤S430,响应于所述第一MAC地址表项与第二MAC地址表项的比较结果,确定新MAC地址信息;所述第二MAC地址表项为上一周期的MAC地址表项。
步骤S440,向第二网络设备发送媒体接入控制/互联网协议通告路由,以向所述第二网络设备通告所述新MAC地址信息。
在本公开的一个实施例中,所述目标报文包括目的MAC地址信息,所述根据所述BUM流量中的目标报文,产生相应的MAC学习事件,包括:根据所述目标报文的源MAC地址信息,查找所述第一MAC地址表项;确定所述第一MAC地址表项中是否包含该源MAC地址信息;若所述第一MAC地址表项中不包含该源MAC地址信息,产生相应的MAC学习事件。
在本公开的一个实施例中,所述目标报文包括目的MAC地址信息,所述方法还包括:若所述第一MAC地址表项中包含该源MAC地址信息,向所述目的MAC地址信息对应的网络设备转发所述目标报文。
在本公开的一个实施例中,所述方法还包括:通过直接存储器访问周期性地获取所述第一处理器中的所述第一MAC地址表项。
在本公开的一个实施例中,所述方法还包括:在所述第一网络设备的初始化阶段,将所述第一MAC地址表项初始化为空。
在本公开的一个实施例中,所述目标报文为未知单播报文、组播报文、广播报文中的一种或多种。
上述实施例中的监测装置中涉及的各个模块/单元的具体细节已经在对应的监测方法中进行了详细的描述,因此此处不再赘述。
目前相关技术中,MAC地址学习方法大都为软件学习,其学习流程为交换芯片产生学习事件或重定向目标报文至CPU,CPU侧控制程序处理学习事件后,再在交换芯片上创建相应MAC地址条目。该学习流程中,CPU需处理大量学习事件或报文,CPU占用率高;若MAC学习处理较慢,上报的缓存区容量不足会导致部分学习事件丢失;学习事件通常是逐包产生的,CPU需对每个学习事件都进行响应和处理,占用大量CPU资源;CPU接收学习事件后,重新调用SDK接口创建新的MAC地址表项,过程繁琐,学习速率低。
本公开提出的MAC地址学习方法使用第一处理器处理学习事件、管理MAC地址表项,减低CPU占用率,提高学习效率;周期性比较MAC新旧表项,批量得到新增MAC地址,减少IO操作,提高***运行速度。
相较于传统通过中断逐包学习的方式,本公开采用周期性学习方式。通过比较相邻两个周期的MAC地址表项,得到当前周期内学习的MAC地址信息。在百万级MAC地址学习中,该方法能够大大地减少***中断的上报次数,节省了内核态拷贝至用户态的拷贝时间,提高***稳定性和健壮性。
一方面,相较于传统CPU接收学习消息,创建MAC条目和维护MAC条目的方式,本公开通过增加第一处理器接收学习事件和创建MAC转发条目,形成了一条快速学习通路。另一方面,可以通过主动轮询方式维护MAC地址表项,周期性生成新转发条目。在大带宽未知单播场景下,本公开的第一处理器能够快速完成学习且不丢失学习事件,同时采用主动轮询替代中断触发,有效地避免了大带宽带来的网络冲击。
本公开的第一网络设备和MAC学习方法可以应用于5G新型承载网场景和海量接入设备的数据中心场景。
对于5G新型承载网场景,EVPN为实现控制平面和转发平面分离,MAC地址的学习和发布由控制面完成。面临着海量的接入无线用户,海量的学习事件以及网络突发对于承载网元CPU往往是较大的挑战。本公开通过增加DSP处理器(第一处理器),结合原子CPU(第二处理器),再采用周期性读取MAC地址表项生成的新MAC地址信息,能够加速EVPN网络的收敛,提高整机稳定性。面对大流量未知单播突发时,能够及时地学习MAC地址并保持CPU低占用率,可以很好地满足该场景需求,高效地接入海量用户,快速地转发用户报文。
对于数据中心场景,随着数据中心租户数量激增,数据中心为了提高虚拟利用率,常常将VxLAN端点由虚拟化服务器迁移至接入交换机。面对海量用户流量的接入以及数据中心迁移和扩展,接入交换机作为二层网关应该有着高效且快速的MAC学习能力。本公开的第一网络设备可以很好的满足该需求,提高数据中心网关的响应速度,加速报文转发。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备实现如下述实施例中的方法。例如,设备可以实现如图3和图4所示的各个步骤等。
需要说明的是,本公开所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
此外,在本公开的示例性实施例中,还提供了一种能够实现上述方法的设备。所属技术领域的技术人员能够理解,本公开的各个方面可以实现为***、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施例、完全的软件实施例(包括固件、微代码等),或硬件和软件方面结合的实施例,这里可以统称为“电路”、“模块”或“***”。
参见图5,图5是本申请实施例提供的一种第一网络设备的结构示意图。如图5所示,该第一网络设备500包括处理器510、存储器520、收发器530以及通信总线540。处理器510连接到存储器520和收发器530,例如处理器510可以通过通信总线540连接到存储器520和收发器530。处理器510被配置为支持该第一网络设备执行图3和图4中的学习方法中相应的功能。该处理器510可以是中央处理器(Central Processing Unit,CPU),网络处理器(Network Processor,NP),硬件芯片(如DSP(Digital Signal Processing,数字信号处理)芯片或者其任意组合。上述硬件芯片可以是专用集成电路(Application-SpecificIntegrated Circuit,ASIC),可编程逻辑器件(Programmable Logic Device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(Complex Programmable Logic Device,CPLD),现场可编程逻辑门阵列(Field-Programmable Gate Array,FPGA),通用阵列逻辑(GenericArray Logic,GAL)或其任意组合。存储器520用于存储程序代码等。存储器520可以包括易失性存储器(VolatileMemory,VM),例如随机存取存储器(Random Access Memory,RAM);存储器520也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如只读存储器(Read-Only Memory,ROM),快闪存储器(flash memory),硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD);存储器520还可以包括上述种类的存储器的组合。
该收发器530用于发送或接收数据。
处理器510可以调用上述程序代码以执行以下操作:
接收BUM流量,根据所述BUM流量中的目标报文,产生相应的MAC学习事件;根据所述MAC学习事件,在第一MAC地址表项中创建新的MAC转发条目;响应于所述第一MAC地址表项与第二MAC地址表项的比较结果,确定新MAC地址信息;所述第二MAC地址表项为上一周期的MAC地址表项;向第二网络设备发送媒体接入控制/互联网协议通告路由,以向所述第二网络设备通告所述新MAC地址信息。
可选的,所述目标报文包括目的MAC地址信息,上述处理器510还可以根据所述BUM流量中的目标报文,产生相应的MAC学习事件,执行以下操作:
根据所述目标报文的源MAC地址信息,查找所述第一MAC地址表项;确定所述第一MAC地址表项中是否包含该源MAC地址信息;若所述第一MAC地址表项中不包含该源MAC地址信息,产生相应的MAC学习事件。
可选的,所述目标报文包括目的MAC地址信息,上述处理器510还可以执行以下操作:若所述第一MAC地址表项中包含该源MAC地址信息,向所述目的MAC地址信息对应的网络设备转发所述目标报文。,
可选的,上述处理器510还可以执行以下操作:
通过直接存储器访问周期性地获取所述第一处理器中的所述第一MAC地址表项。
需要说明的是,各个操作的实现还可以对应参照图3和图4所示的方法实施例的相应描述;上述处理器510还可以与收发器530配合执行上述方法实施例中的其他操作。
本公开还提供了一种通信***,包括第一网络设备和第二网络设备。所述第一网络设备可以是图2对应的实施例所提供的第一网络设备。所述第二网络设备可以是EVPN网络中的其他PE设备。所述通信***用于执行图3和图4对应的实施例的方法。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台设备执行根据本公开实施例的方法。
此外,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
需要说明的是,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等,均应视为本公开的一部分。
应可理解的是,本说明书公开和限定的本公开延伸到文中和/或附图中提到或明显的两个或两个以上单独特征的所有可替代组合。所有这些不同的组合构成本公开的多个可替代方面。本说明书的实施方式说明了已知用于实现本公开的最佳方式,并且将使本领域技术人员能够利用本公开。
Claims (10)
1.一种第一网络设备,所述第一网络设备处于以太网虚拟私有网络,其特征在于,所述第一网络设备包括:交换芯片、第一处理器和第二处理器,所述第二处理器包括介质访问控制MAC管理模块和边界网关协议模块;
所述交换芯片,用于接收BUM流量,根据所述BUM流量中的目标报文,产生相应的MAC学习事件,并向所述第一处理器发送所述MAC学习事件;
所述第一处理器,用于根据接收的所述MAC学习事件,在第一MAC地址表项中创建新的MAC转发条目;
所述MAC管理模块,用于响应于所述第一MAC地址表项与第二MAC地址表项的比较结果,确定新MAC地址信息;所述第二MAC地址表项为上一周期的MAC地址表项;
所述边界网关协议模块,用于向第二网络设备发送媒体接入控制/互联网协议通告路由,以向所述第二网络设备通告所述新MAC地址信息。
2.根据权利要求1所述的第一网络设备,其特征在于,所述MAC管理模块还用于:
通过直接存储器访问周期性地获取所述第一处理器中的所述第一MAC地址表项。
3.根据权利要求1所述的第一网络设备,其特征在于,所述目标报文包括源MAC地址信息,所述交换芯片还用于:
根据所述源MAC地址信息,查找第一MAC地址表项;
确定所述第一MAC地址表项中是否包含该源MAC地址信息;
若所述第一MAC地址表项中不包含该源MAC地址信息,产生相应的MAC学习事件。
4.根据权利要求3所述的第一网络设备,其特征在于,所述目标报文包括目的MAC地址信息,所述交换芯片还用于:
若所述第一MAC地址表项中包含该源MAC地址信息,向所述目的MAC地址信息对应的网络设备转发所述目标报文。
5.根据权利要求1所述的第一网络设备,其特征在于,所述MAC管理模块还用于:
在所述第一网络设备的初始化阶段,将所述第一MAC地址表项初始化为空。
6.根据权利要求1-5任一项所述的第一网络设备,其特征在于,所述目标报文为未知单播报文、组播报文、广播报文中的一种或多种。
7.一种MAC地址学习方法,应用于第一网络设备,其特征在于,所述第一网络设备处于以太网虚拟私有网络,所述第一网络设备包括交换芯片、第一处理器和第二处理器,所述方法包括:
通过所述交换芯片接收BUM流量,根据所述BUM流量中的目标报文,产生相应的MAC学习事件;
通过所述第一处理器根据所述MAC学习事件,在第一MAC地址表项中创建新的MAC转发条目;
通过所述第二处理器响应于所述第一MAC地址表项与第二MAC地址表项的比较结果,确定新MAC地址信息;所述第二MAC地址表项为上一周期的MAC地址表项;并向第二网络设备发送媒体接入控制/互联网协议通告路由,以向所述第二网络设备通告所述新MAC地址信息。
8.根据权利要求7所述的方法,其特征在于,所述目标报文包括源MAC地址信息,所述根据所述BUM流量中的目标报文,产生相应的MAC学习事件,包括:
根据所述目标报文的源MAC地址信息,查找所述第一MAC地址表项;
确定所述第一MAC地址表项中是否包含该源MAC地址信息;
若所述第一MAC地址表项中不包含该源MAC地址信息,产生相应的MAC学习事件。
9.一种通信***,其特征在于,包括权利要求1-6任一项所述的第一网络设备。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求7或8所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210908380.3A CN115297069B (zh) | 2022-07-29 | 2022-07-29 | Evpn网络设备及mac地址学习方法、通信*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210908380.3A CN115297069B (zh) | 2022-07-29 | 2022-07-29 | Evpn网络设备及mac地址学习方法、通信*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115297069A CN115297069A (zh) | 2022-11-04 |
CN115297069B true CN115297069B (zh) | 2024-06-07 |
Family
ID=83826595
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210908380.3A Active CN115297069B (zh) | 2022-07-29 | 2022-07-29 | Evpn网络设备及mac地址学习方法、通信*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115297069B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116319545A (zh) * | 2022-11-16 | 2023-06-23 | 天翼云科技有限公司 | 一种基于evpn网络的路由聚合处理方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101719877A (zh) * | 2010-01-15 | 2010-06-02 | 福建星网锐捷网络有限公司 | 一种报文转发装置、网络设备及方法 |
CN103430497A (zh) * | 2013-02-27 | 2013-12-04 | 华为技术有限公司 | 介质访问控制mac地址学习方法、控制器及交换设备 |
CN103685022A (zh) * | 2012-09-17 | 2014-03-26 | 杭州华三通信技术有限公司 | 报文转发方法及服务提供商网络边缘设备 |
CN104184708A (zh) * | 2013-05-22 | 2014-12-03 | 杭州华三通信技术有限公司 | Evi网络中抑制mac地址攻击的方法及边缘设备ed |
CN107547335A (zh) * | 2016-06-27 | 2018-01-05 | 丛林网络公司 | 在evpn中信号通知ip地址移动的方法和网络设备 |
CN108574639A (zh) * | 2017-03-14 | 2018-09-25 | 华为技术有限公司 | Evpn报文处理方法、设备及*** |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10425325B2 (en) * | 2017-10-30 | 2019-09-24 | Dell Products Lp | Optimizing traffic paths to orphaned hosts in VXLAN networks using virtual link trunking-based multi-homing |
-
2022
- 2022-07-29 CN CN202210908380.3A patent/CN115297069B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101719877A (zh) * | 2010-01-15 | 2010-06-02 | 福建星网锐捷网络有限公司 | 一种报文转发装置、网络设备及方法 |
CN103685022A (zh) * | 2012-09-17 | 2014-03-26 | 杭州华三通信技术有限公司 | 报文转发方法及服务提供商网络边缘设备 |
CN103430497A (zh) * | 2013-02-27 | 2013-12-04 | 华为技术有限公司 | 介质访问控制mac地址学习方法、控制器及交换设备 |
CN104184708A (zh) * | 2013-05-22 | 2014-12-03 | 杭州华三通信技术有限公司 | Evi网络中抑制mac地址攻击的方法及边缘设备ed |
CN107547335A (zh) * | 2016-06-27 | 2018-01-05 | 丛林网络公司 | 在evpn中信号通知ip地址移动的方法和网络设备 |
CN108574639A (zh) * | 2017-03-14 | 2018-09-25 | 华为技术有限公司 | Evpn报文处理方法、设备及*** |
Also Published As
Publication number | Publication date |
---|---|
CN115297069A (zh) | 2022-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2018166252A1 (zh) | Evpn报文处理方法、设备及*** | |
EP2224645B1 (en) | A method and equipment for transmitting a message based on the layer-2 tunnel protocol | |
JP2020520612A (ja) | パケット伝送方法、エッジデバイス及び機械可読記憶媒体 | |
US9509602B2 (en) | Limiting MAC address learning on access network switches | |
CN110661714B (zh) | 发送bgp消息的方法、接收bgp消息的方法以及设备 | |
CN115297069B (zh) | Evpn网络设备及mac地址学习方法、通信*** | |
WO2021093463A1 (zh) | 报文转发的方法、第一网络设备以及第一设备组 | |
EP3866391B1 (en) | Controlling protocol independent multicast (pim) join/prune messages from a downstream pim neighbor using a pim join/prune response(s) from an upstream pim neighbor | |
CN106992918B (zh) | 报文转发方法和装置 | |
US20240214243A1 (en) | Designated forwarder df election method and device | |
JP7314219B2 (ja) | データ伝送方法、装置、およびネットワークデバイス | |
US10009274B2 (en) | Device and method for collapsed forwarding | |
CN109728926B (zh) | 通信方法以及网络设备 | |
CN113965521A (zh) | 数据包的传输方法、服务器及存储介质 | |
CN113542114B (zh) | 路由配置方法和路由配置装置 | |
US9654304B2 (en) | Method and apparatus for sending transparent interconnection of lots of links data frame | |
WO2012062156A1 (zh) | Vplsmac表项空间的配置方法和装置 | |
CN116016340A (zh) | 用于路由实现的方法及装置、存储介质及电子设备 | |
CN111988221B (zh) | 数据传输方法、数据传输装置、存储介质与电子设备 | |
CN114531396B (zh) | 一种以太网虚拟专用网络中的故障回切方法及装置 | |
CN116530067A (zh) | 使用内部网关协议(interior gateway protocol,IGP)的边缘计算数据和服务发现 | |
WO2022199486A1 (zh) | 路径跟踪方法、设备和存储介质 | |
WO2024032187A1 (zh) | 一种路由信息传输方法及装置 | |
CN111565141B (zh) | 数据传输方法、第一pe和第二pe | |
WO2023016110A1 (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 | ||
GR01 | Patent grant |