CN103685007A - 一种边缘设备报文转发时的mac学习方法及边缘设备 - Google Patents

一种边缘设备报文转发时的mac学习方法及边缘设备 Download PDF

Info

Publication number
CN103685007A
CN103685007A CN201210316996.8A CN201210316996A CN103685007A CN 103685007 A CN103685007 A CN 103685007A CN 201210316996 A CN201210316996 A CN 201210316996A CN 103685007 A CN103685007 A CN 103685007A
Authority
CN
China
Prior art keywords
mac
client
message
server end
unicast message
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.)
Granted
Application number
CN201210316996.8A
Other languages
English (en)
Other versions
CN103685007B (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.)
New 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 CN201210316996.8A priority Critical patent/CN103685007B/zh
Priority to PCT/CN2013/082638 priority patent/WO2014032609A1/en
Publication of CN103685007A publication Critical patent/CN103685007A/zh
Application granted granted Critical
Publication of CN103685007B publication Critical patent/CN103685007B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • H04L12/4625Single bridge functionality, e.g. connection of two networks over a single bridge
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

本发明提供一种边缘设备报文转发时的媒体接入控制(MAC)地址学习方法以及边缘设备,该方法用于以太网虚拟化(EVI)网络中的服务器端边缘设备(ED)以及客户端ED。即:在服务器端边缘设备(ED)和客户端ED之间建立备用隧道。服务器端ED和客户端ED利用备用隧道接收未知单播报文,对该报文进行MAC学习后再进行相应的报文转发。应用本发明方案,由于边缘设备是通过备用隧道转发未知单播流量,并在转发的过程中学习MAC地址,既可以达到MAC学习的目的,又可以有效地抑制报文的泛洪。

Description

一种边缘设备报文转发时的MAC学习方法及边缘设备
技术领域
本发明涉及通信技术领域,特别涉及一种边缘设备报文转发时的MAC学习方法及边缘设备。
背景技术
以太网连接虚拟化(Ethernet Virtual Interconnection,EVI)网络是一种可以将异地部署的多个站点网络连接起来的网络,是基于虚拟链路实现各站点网络之间二层互联的系统。EVI网络利用先进的“MAC in IP”技术,实现基于IP核心网的二层虚拟专用网络(L2VPN)技术。
EVI网络通常由核心网络、交叠网络和若干站点网络等组成。
其中,核心网络主要由IP路由设备承载的提供站点网络之间互联的网络,是公网,主要进行隧道报文的IP转发。
交叠网络是站点边缘设备之间建立的虚拟网络,实现虚拟局域网(Virtual Local Area Network,VLAN)在不同站点之间的扩展,提供站点网络之间的二层互联。
站点网络由一台或多台边缘设备(Edge Device,ED)连接到核心网络的具有独立业务功能的二层网络,其边缘设备可以提供站点之间的二层交换功能。
在现有的EVI网络中,ED之间通常采用全连接架构,即:各个ED之间分别建立隧道。站点之间的媒体接入控制(Media Access Control,MAC)地址是通过中间系统到中间系统(Intermediate System-Intermediate System,ISIS)协议来发布的。比如:某个站点的ED新学习到站点内的某个MAC,可以采用ISIS协议并通过隧道将该MAC泛洪给其它所有的ED。但如果需要发布的MAC地址数量非常庞大,可能会造成报文的丢失,以至对端无法学习到MAC地址。此外,各站点用户互访时,如果某ED在自身MAC表中无法查询到报文目的MAC地址,该报文就是一个未知单播报文。对此,ED可以采用EVI Flooding或EVI No Flooding两种模式处理。对于EVIFlooding模式,ED会将未知单播报文泛洪给其它所有的ED,这同样会因为泛洪带来丢失报文或占用资源等缺陷。而对于EVI No Flooding模式,ED直接将未知单播报文丢弃,这将导致访问的失败。
发明内容
有鉴于此,本发明提供了一种边缘设备报文转发时的MAC学习方法及边缘设备,可以不依靠ISIS协议发布MAC而同样可能学习到MAC,尽量避免泛洪造成报文丢失及占用资源的缺陷。
为达到上述目的,本发明实施例的技术方案可以这样实现:
一种边缘设备报文转发时的MAC学习方法,该方法用于以太网虚拟化EVI网络中的服务器端边缘设备ED,所述服务器端ED和EVI网络中的客户端ED之间建立了主用隧道,在所述服务器端ED和客户端ED之间还建立备用隧道,用于承载未知单播报文;该方法还包括:
所述服务器端ED从备用隧道接收来自源客户端ED发送的未知单播报文,所述未知单播报文携带有源客户端ED的ED标识;所述服务器端ED对该报文的源MAC地址进行学习,将学习到的MAC地址、该服务器端ED和源客户端ED之间的主用隧道所对应的出接口一并配置给自身的MAC表;
所述服务器端ED根据所述未知单播报文的目的MAC地址查询MAC表,命中本地站点,则进行本地转发;命中远端站点,则通过自身和该目的客户端ED之间的备用隧道转发出去;未命中,则在EVI实例内进行广播。
针对上述发明目的,还提出一种实施例方案,可以这样实现:
一种边缘设备报文转发时的MAC学习方法,该方法用于以太网虚拟化EVI网络中的客户端边缘设备ED,所述客户端ED和服务器端ED之间建立了主用隧道,在所述客户端ED与所述服务器端之间还建立备用隧道,用于承载未知单播报文;该方法还包括:
所述客户端ED作为源客户端ED发送未知单播报文时,将自身的ED标识添加到该未知单播报文中,并通过自身与服务器端ED之间建立的备用隧道发送给服务器端ED;
所述客户端ED作为目的客户端ED从备用隧道接收到未知单播报文时,根据该未知单播报文携带的ED标识获知源客户端ED,并对该报文的源MAC地址进行学习,将学习到的MAC地址、目的客户端ED自身和源客户端ED之间的主用隧道所对应的出接口一并配置给MAC表;再根据所述未知单播报文的目的MAC地址查询自身的MAC表,如果命中本地站点,则进行本地转发;如果未命中,则在本虚拟局域网VLAN内广播。
针对上述发明目的,本发明实施例提出这样一种方案:
一种边缘设备,该设备为以太网虚拟化EVI网络中的服务器端边缘设备ED,包括主控单元、转发单元和接口单元,所述服务器端ED和EVI网络中的客户端ED之间均建立了主用隧道;
所述转发单元用于,在接口单元从备用隧道接收到来自源客户端ED的未知单播报文时,所述未知单播报文携带有源客户端ED的ED标识,对该报文的源MAC地址进行学习,并将学习到的MAC地址、该服务器端ED和源客户端ED之间的主用隧道所对应的出接口一并配置给MAC表;还用于,根据所述未知单播报文的目的MAC地址查询MAC表,命中本地站点,则通过接口单元进行本地转发;命中远端站点,则通过接口单元并利用与目的客户端ED之间的备用隧道转发出去;未命中,则通过接口单元在EVI实例内进行广播。
针对上述发明目的,本发明实施例还提出这样一种方案:
一种边缘设备,该设备为以太网虚拟化EVI网络中的客户端边缘设备ED,包括主控单元、转发单元和接口单元,所述客户端ED和EVI网络中的服务器端ED之间建立了主用隧道;
所述主控单元用于,在作为源客户端ED发送未知单播报文时,将自身的ED标识添加到该未知单播报文中;
所述转发单元用于,在作为源客户端ED时,通过接口单元从与服务器端ED之间建立的备用隧道发送给服务器端ED;在作为目的客户端ED时,通过接口单元从备用隧道接收到服务器端ED转发的未知单播报文,根据该未知单播报文携带的ED标识获知源客户端ED,对该报文的源MAC地址进行学习,将学习到的MAC地址、目的客户端ED自身和源客户端ED之间的主用隧道所对应的出接口一并配置给MAC表;还用于根据所述未知单播报文的目的MAC地址查询MAC表,如果命中本地,则通过接口单元进行本地转发;如果未命中,则通过接口单元在本VLAN内进行广播。
综上所述,本发明提供了一种边缘设备报文转发时的MAC学习方法及边缘设备,在服务器端ED和客户端ED之间建立备用隧道,用于承载未知单播报文。服务器端ED和客户端ED可以利用备用隧道来转发未知单播报文,并在报文转发的过程中达到MAC学习的目的,同时有效地抑制报文的泛洪。
附图说明
图1是本发明实施例一的系统结构图。
图2是本发明实施例一中服务器端ED的内部结构示意图。
图3是本发明实施例一中客户端ED的内部结构示意图。
图4是本发明实施例二中的系统结构图。
图5是本发明实施例二中添加了ED标识的报文格式。
具体实施方式
本发明实施例一提出一种解决方案,即:在以太网虚拟化(EVI)网络中,边缘设备(ED)进行报文转发时,如果接收到远端站点的单播报文,可以直接利用该报文进行MAC学习,并进行报文转发。
但,在MAC学习过程中,特别是初期阶段,由于各ED未学习到远端站点下挂主机的MAC地址,需要转发的报文大多是未知单播报文,这就可能引起大量的未知单播报文泛洪的现象。比如:ED1站点内用户设备CE1下挂的主机host1要发送报文给ED2站点内CE2下挂的主机host2,但ED1事先并未学习到host2的MAC地址,自然无法根据MAC表命中目的MAC地址,那么该报文就是通常所说的未知单播报文。为了将报文发送给目的地,ED1可能会将该未知单播报文泛洪给EVI网络中其他所有的ED设备。为了抑制这种泛洪,本发明实施例中,除了各个ED之间建立主用隧道,还在服务器端ED和客户端ED之间建立了备用隧道,用于承载未知单播报文。这里所述主用隧道和备用隧道为EVI隧道。该EVI隧道的隧道类型是IP GRE隧道,用于承载EVI Link,一条隧道上可以承载多条EVI Link。EVI隧道是点到多点的自动隧道,本地站点通过一条EVI隧道可以和多个邻居站点建立连接,其中每一个连接对应一个EVI Link。
另外,为了表明未知单播报文的来源,还在其中添加了源ED的ED标识,使接收到该报文的ED可以正确地学习MAC地址。因此,本发明实施例中,当源客户端ED需要泛洪未知单播报文时,可以通过备用隧道将报文仅泛洪给服务器端ED,再由服务器端ED转发给目的客户端ED。同时,在报文转发过程中,服务器端ED和客户端ED都可以完成MAC学习。
图1是本发明实施例一的系统架构示意图。如图1所示,该EVI网络中包括一个服务器端ED,若干客户端ED,各ED站点内有若干CE,每个CE下挂有若干主机。各个ED之间都建立了主用隧道,此外,服务器端ED和各个客户端ED之间还建立了备用隧道,用于专门承载未知单播报文。这里,各ED和其下属的CE构成的网络就是站点网络,各ED之间交互的公网就是核心网络。
为了更好地说明本实施例方案,下面分别对服务器端ED和客户端ED详细描述。
图2是服务器端ED的内部结构示意图。如图2所示,服务器端ED包括:主控单元1011、转发单元1012和接口单元1013。实际应用中,主控单元1011由CPU等硬件实现;转发单元1012与现有技术中的转发单元一样,保存有MAC硬件表,主要负责报文转发时的地址查询等工作;而接口单元1013主要指边缘设备对外的接口,包括物理端口或逻辑接口。其中,
所述转发单元1012用于,在接口单元1013从备用隧道接收到来自源客户端ED的未知单播报文时,所述未知单播报文携带有源客户端ED的ED标识,对该报文的源MAC地址进行学习,并将学习到的MAC地址、该服务器端ED和源客户端ED之间的主用隧道所对应的出接口一并配置给MAC表;还用于,根据所述未知单播报文的目的MAC地址查询MAC表,命中本地站点,则通过接口单元1013进行本地转发;命中远端站点,则通过接口单元1013并利用与目的客户端ED之间的备用隧道转发出去;未命中,则通过接口单元1013在EVI实例内进行广播。
也就是说,服务器端ED可以从备用隧道接收到的未知单播报文中学习到报文的源MAC地址,并在查询MAC表之后进行相应的报文转发。需要注意的是,服务器端ED虽然是从备用隧道接收到未知单播报文,但,是将源MAC地址以及主用隧道所对应的出接口这一对应关系配置到自身的MAC表。其原因是:服务器端ED一旦学习到源MAC地址后,如果后续要发送报文给该源MAC地址对应的设备时,此报文就应该是已知单播报文,无需再从备用隧道发送,直接从主用隧道发送,即根据MAC表中的主用隧道对应的出接口将报文发送出去。还需要注意的是,服务器端ED将未知单播报文转发给远端站点时,仍然需要从备用隧道发送,以便于远端站点正确地学习MAC地址。
图3是客户端ED的内部结构示意图。如图2所示,客户端ED也包括:主控单元1021、转发单元1022和接口单元1023。实际应用中,主控单元1021由CPU等硬件实现;转发单元1022保存有MAC硬件表,主要负责报文转发时的地址查询等工作;而接口单元1023主要指边缘设备对外的接口,包括物理端口或逻辑接口。其中,
所述主控单元1021用于,在作为源客户端ED发送未知单播报文时,将自身的ED标识添加到该未知单播报文中;
所述转发单元1022用于,在作为源客户端ED时,通过接口单元1023从与服务器端ED之间建立的备用隧道发送给服务器端ED;在作为目的客户端ED时,通过接口单元1023从备用隧道接收到服务器端ED转发的未知单播报文,根据该未知单播报文携带的ED标识获知源客户端ED,对该报文的源MAC地址进行学习,将学习到的MAC地址、目的客户端ED自身和源客户端ED之间的主用隧道所对应的出接口一并配置给MAC表;还用于根据所述未知单播报文的目的MAC地址查询MAC表,如果命中本地,则通过接口单元1023进行本地转发;如果未命中,则通过接口单元1023在本VLAN内进行广播。
也就是说,目的客户端ED可以从备用隧道接收到的未知单播报文中学习到报文的源MAC地址,并在查询MAC表之后进行相应的报文转发。需要注意的是,目的客户端ED虽然是从备用隧道接收到未知单播报文,但,是将源MAC地址以及自身与源客户端ED之间的主用隧道所对应的出接口下发到自身的MAC表。其原因是:目的客户端ED学习到的是源客户端ED站点下挂主机MAC地址,但,是从目的客户端ED与服务器端ED之间的备用隧道接收到的。如果目的客户端后续直接利用该备用隧道回应报文,将无法正确地到达源客户端ED,因此,在MAC学习时应该保存目的客户端ED与源客户端ED之间的主用隧道对应的出接口。
为了更好地描述本发明方案,下面再用一个实施例详细说明。
以图4为例,假设服务器端ED211站点内有CE221,下挂主机Host231,客户端ED212站点内有CE222,下挂主机Host232,客户端ED231站点内有CE223,下挂主机Host233,客户端ED214站点内有CE224,下挂主机Host234。ED211~ED214两两之间建立了主用隧道,且服务器端ED211还分别与客户端ED212~ED214之间建立了备用隧道,并在EVI隧道的基础上建立EVI LINK连接。其中,ED1和ED2之间的连接为LINK1和LINK1-2,ED1和ED3之间的连接为LINK2和LINK2-2,ED1和ED4之间的连接为LINK3和LINK3-2。不管是主用隧道,还是备用隧道,可以采用现有的方法建立,比如建立IP GRE隧道等。
本实施例假设客户端ED212站点内的主机Host232要访问客户端ED213站点内的主机Host233,而客户端ED212之前还没有学习到Host232和Host233的MAC地址,客户端ED213之前没有学习到Host232的MAC地址。
本实施例中的未知单播报文需要添加源客户端ED的ED标识,添加后的报文格式如图5所示。其中,“EVI-ED Indentifier”字段就是ED标识。实际应用中,各个ED可以事先配置ED标识。比如:可以将ED1的标识配置为id1,对应的地址为1.1.1.1;ED2的标识配置为id2,对应的地址为2.2.2.2;ED3的标识配置为id3,对应的地址为3.3.3.3;ED4的标识配置为id4,对应的地址为4.4.4.4。这里,所述的地址可以唯一标识EVI隧道的设备,因此根据未知单播报文中的ED标识,就可以通过对应的地址明确源客户端ED。
下面分两个阶段介绍本发明实施例实现访问的方案:
第一阶段:CE222连接的Host232向CE223连接的Host233发送以太网报文。
步骤S1:CE222将来自Host232的以太网报文发送给ED212,所述以太网报文携带有源MAC地址和目的MAC地址。其中,源MAC地址为Host232的MAC地址,目的MAC地址为Host233的MAC地址。
步骤S2:ED212进行MAC学习,ED212将以太网报文的源MAC地址、所属VLAN和接收该以太网报文的端口保存在对应的EVI实例的MAC表中。
这里,ED212可以根据接收到的以太网报文所属VLAN绑定的EVI实例确定对应的EVI实例。
步骤S3:ED212根据以太网报文的目的MAC地址在MAC表中未查找到匹配表项,则根据与服务器端ED211间的备用隧道将以太网报文头封装为Ethernet over IP GRE隧道报文,将自身的ED标识添加到该隧道报文。
如图5所示为ED212发送的携带有ED标识的Ethernet over IP GRE隧道报文的报文格式。图5中,IP GRE隧道头包括IP报文头和GRE报文头。相对于图5所示以太网报文所承载的IP报文的IP报文头,IP GRE隧道头中的IP报文头可以看作隧道报文的外层IP报文头,IP GRE隧道头中的IP报文头的源IP是ED212的IP地址,IP GRE隧道头中的IP报文头的目的IP地址是ED211的IP地址。GRE报文头指示了承载的协议报文为以太网报文。
图5所示的公网二层报文头可看作外层以太网头,公网二层报文的目的MAC是ED212连接的下一跳设备的MAC,如图4所示设备P2(若下一跳设备是ED211,则公网二层报文的目的MAC是ED211的MAC地址),公网二层报文的源MAC是ED211的虚接口MAC,公网二层报文的VLANID是公网VLAN号。
步骤S1~步骤S3是Host232将以太网报文发送给边缘设备ED212,ED212确定该报文为未知单播报文。
步骤S4:ED212将隧道报文通过备用隧道LINK1-2发送给服务器端ED211,所述隧道报文携带的源ED的标识为ED212的标识。
步骤S5:服务器端ED211从备用隧道LINK1-2收到携带源ED标识的隧道报文。
步骤S6:服务器端ED211将隧道报文的内层源MAC地址、所属VLAN以及连接源ED的主用隧道的隧道接口配置到对应的EVI实例的MAC表的表项中。
ED211收到隧道报文后,去除公网二层报文头和IP GRE隧道头,根据以太网报文所属VLAN确定EVI实例。ED211去除公网二层和IP GRE隧道头的原理与已有IP GRE隧道头终结原理大致相同,本实施例不再赘述。
本实施例中,服务器端ED211根据源客户端ED标识确定隧道报文来自ED212,将ED212的主用隧道的隧道接口记录在上述内层源MAC地址对应的表项;其中,该隧道接口就是ED211和ED212之间主用隧道对应的出接口。可以是指示隧道接口的隧道索引。
另外,实际应用中,服务器端ED211还可以从来自本地CE或主用隧道的报文中学习MAC地址。对于来自本地站点的报文,学习MAC地址的方法与现有技术相同,此处不再赘述。对于来自主用隧道的报文,也就是说,图2中的主控单元1011进一步用于,在接口单元1013从主用隧道接收到来自源ED发送的已知单播报文时,对该报文的源MAC地址进行学习,将学习到的MAC地址、服务器端ED自身和源ED之间的主用隧道所对应的出接口一并配置到自身的MAC表。相应地,转发单元1012进一步用于,根据所述已知单播报文的目的MAC地址查询MAC表,如果命中本地站点(即本地站点下挂主机的MAC地址),则进行本地转发;如果未命中,则在本VLAN内广播。
步骤S7:服务器端ED211根据以太网报文的目的MAC地址在EVI实例的MAC表查找到表项,且该表项包含隧道接口,根据隧道接口确定目的客户端ED为ED213,则根据连接ED213的备用隧道封装,将该以太网报文封装为隧道报文并添加源ED的标识,即ED212的ED标识,通过备用隧道LINK2-2发送携带源ED标识的隧道报文给ED213。
本实施例中,如果服务器端ED211查找到的表项包含端口,则进行本地转发即可。
本实施例中,如果服务器端ED211在对应的EVI实例的MAC表中没有查找到匹配于以太网报文的目的MAC地址的表项,则需要在EVI实例内广播,其方法为:服务器端ED211的转发单元1012通过接口单元1013将在EVI实例的本地VLAN内广播以太网报文,并且分别依据自身与除源ED外的其它所有客户端ED建立的备用隧道,将以太网报文封装为隧道报文,并添加源ED标识,分别发送给客户端ED213和ED214。
步骤S8:ED213从备用隧道LINK2-2接收携带源ED标识的隧道报文。
步骤S9:ED213根据隧道报文携带的源ED标识获知源ED为ED212,将内层以太网报文的源MAC地址、以太网报文所属VLAN以及连接源客户端ED的主用隧道的隧道接口配置在对应EVI实例的MAC表中。
这里,步骤S8和S9描述的客户端ED213如何从备用隧道接收到的报文中学习MAC,实际应用中,客户端ED213还可以从来自本地站点或主用隧道的报文中学习MAC地址。
也就是说,如果从本地站点的报文中学习MAC地址,图3中的转发单元1022进一步用于,在客户端ED接收到本地站点的单播报文时,对该报文进行源MAC地址学习,将学习到的MAC地址和接收该报文的端口一并保存在MAC表中。转发单元1022还进一步用于,根据该报文的目的MAC地址查询自身的MAC表,如果命中本地站点下的主机,则通过接口单元1023进行本地转发;如果命中远端的服务器端ED或目的客户端ED站点下的主机,则通过接口单元1023并利用自身与服务器端ED或目的客户端ED之间的主用隧道转发;如果未命中,则将该单播报文作为未知单播报文处理。
如果从主用隧道的报文中学习MAC地址,图3中的转发单元1022进一步用于,在客户端ED作为目的客户端ED从主用隧道接收到来自源ED发送的已知单播报文,对该报文的源MAC地址进行学习,将学习到的MAC地址、该目的客户端ED和源ED之间的主用隧道所对应的出接口一并配置给自身的MAC表。转发单元1022还进一步用于,根据所述已知单播报文的目的MAC地址查询MAC表,如果命中本地站点下挂的主机,则进行本地转发;如果未命中,则在本VLAN内广播。
步骤S10:ED213根据在对应EVI实例的MAC表中查找到以太网报文的目的MAC地址对应的端口,则将以太网报文通过该端口转发到CE223。再由CE223转发以太网报文至Host233。
本实施例中,假设ED213此前已经学习到Host233的MAC地址,本步骤自然可以命中。实际应用中,如果没有命中,在EVI实例的本地VLAN内广播以太网报文。这样,CE223接收到该以太网报文,再转发至Host233。
第二阶段:Host233向Host232反馈报文。
步骤H1:CE223将Host233发送的以太网报文发送给ED213,该以太网报文的源MAC地址为Host233的MAC地址,目的MAC地址为Host232的MAC地址。
步骤H2:ED213根据在EVI实例的MAC表中查找到以太网报文的目的MAC地址匹配的表项且该表项包含隧道接口,即ED213与ED212之间主用隧道的隧道接口。
步骤H3:ED213将以太网报文封装为隧道报文,通过与ED212之间的主用隧道将响应报文发送给ED212。
这里,ED3可以根据隧道接口查询隧道表项,获取IP GRE隧道头的源IP、目的IP,公网二层头的公网VLAN、目的MAC、出端口等信息,封装以太网报文并转发出去。
步骤H4:ED212收到隧道报文,将隧道报文封装为以太网报文,在EVI实例的MAC表查询以太网报文的目的MAC匹配的表项,且该表项出接口为端口,从该端口转发以太网报文至CE222。
CE222根据以太网目的MAC地址继续转发以太网报文至Host232。
由于此前在步骤S2中,ED212已经学习到CE222的MAC地址,本步骤可以命中,并获知相应的端口,通过相应的端口,就可以将响应报文准确地发送给CE222,再由CE222转发给Host232。至此,Host232已经成功地访问了Host233。在报文转发到过程中,服务器端ED211、客户端ED212和ED213直接利用流量报文进行了MAC学习。
本发明实施例中,如果Host231与Host232间需要发送单播报文时,CE221将Host231发出的以太网单播报文转给ED211,ED211在EVI实例的MAC表记录以太网报文的源MAC、VLAN信息以及端口信息后,若ED1在EVI实例的MAC表中未查找到匹配于以太网报文的目的MAC的表项,则在EVI实例的本地VLAN内广播以太网报文并通过连接各客户端ED的主用隧道封装隧道报文,将隧道报文通过各主用隧道发送到各客户端ED。或者,ED211在EVI实例的本地VLAN内广播以太网报文并通过连接各客户端ED的备用隧道封装隧道报文,将服务器ED的ED标识作为源ED标识插入隧道报文,将携带源ED标识的隧道报文通过备用隧道发送给各客户端ED。
如果Host231需要发送广播报文时,CE221将Host231发出的以太网广播报文转给ED211,ED211在EVI实例的MAC表记录该以太网报文的源MAC、VLAN信息以及端口信息后,则在EVI实例的本地VLAN内广播以太网报文并通过连接各客户端ED的主用隧道封装隧道报文,将隧道报文通过各主用隧道发送到各客户端ED。或者,ED211在EVI实例的本地VLAN内广播以太网报文并通过连接各客户端ED的备用隧道封装隧道报文,将服务器ED的ED标识作为源ED标识插入隧道报文,将携带源ED标识的隧道报文通过备用隧道发送给各客户端ED。
本实施例通过服务器端ED与客户端ED间建立的备用隧道,不仅可以有效地抑制未知单播以太网报文的泛洪现象。还可以避免丢弃未知单播以太网报文,在抑制泛洪的同时还保证了报文的可靠传输。
以上举较佳实施例,对本发明的目的、技术方案和优点进行了进一步详细说明,所应理解的是,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (17)

1.一种边缘设备报文转发时的MAC学习方法,该方法用于以太网虚拟化EVI网络中的服务器端边缘设备ED,所述服务器端ED和EVI网络中的客户端ED之间建立了主用隧道,其特征在于,在所述服务器端ED和客户端ED之间还建立备用隧道,用于承载未知单播报文;该方法还包括:
所述服务器端ED从备用隧道接收来自源客户端ED发送的未知单播报文,所述未知单播报文携带有源客户端ED的ED标识;所述服务器端ED对该报文的源MAC地址进行学习,将学习到的MAC地址、该服务器端ED和源客户端ED之间的主用隧道所对应的出接口一并配置给自身的MAC表;
所述服务器端ED根据所述未知单播报文的目的MAC地址查询MAC表,命中本地站点,则进行本地转发;命中远端站点,则通过自身和该目的客户端ED之间的备用隧道转发出去;未命中,则在EVI实例内进行广播。
2.根据权利要求1所述的方法,其特征在于,所述在EVI实例内进行广播的方法包括:
所述服务器端ED将所述未知单播报文在本地虚拟局域网VLAN内广播,并分别从自身与除所述源客户端ED外的其它所有客户端ED建立的备用隧道转发出去。
3.根据权利要求1所述的方法,其特征在于,该方法进一步包括:
所述服务器端ED从主用隧道接收到来自源客户端ED发送的已知单播报文,对该报文的源MAC地址进行学习,将学习到的MAC地址、该服务器端ED和源客户端ED之间的主用隧道所对应的出接口一并配置给自身的MAC表;
所述服务器端ED根据所述已知单播报文的目的MAC地址查询MAC表,命中本地站点,则进行本地转发;未命中,则在本地虚拟局域网VLAN内广播。
4.根据权利要求1所述的方法,其特征在于,该方法进一步包括:
所述服务器端ED接收到本地站点的单播报文,对该报文的源MAC地址进行学习,将学习到的MAC地址和端口一并配置给自身的MAC表;根据所述本地站点的单播报文的目的MAC地址查询MAC表,未命中则在本地VLAN内广播,并分别从自身与其它所有客户端ED建立的主用隧道转发出去,或者将服务器端ED的ED标识携带于该单播报文再分别从自身与其它所有客户端ED建立的备用隧道转发出去。
5.根据权利要求1所述的方法,其特征在于,该方法进一步包括:
所述服务器端ED接收到本地站点的广播报文,对该报文的源MAC地址进行学习,将学习到的MAC地址和端口一并配置给自身的MAC表;在本地VLAN内广播,并分别从自身与其它所有客户端ED建立的备用隧道或主用隧道转发出去。
6.一种边缘设备报文转发时的MAC学习方法,该方法用于以太网虚拟化EVI网络中的客户端边缘设备ED,所述客户端ED和服务器端ED之间建立了主用隧道,其特征在于,在所述客户端ED与所述服务器端之间还建立备用隧道,用于承载未知单播报文;该方法还包括:
所述客户端ED作为源客户端ED发送未知单播报文时,将自身的ED标识添加到该未知单播报文中,并通过自身与服务器端ED之间建立的备用隧道发送给服务器端ED;
所述客户端ED作为目的客户端ED从备用隧道接收到未知单播报文时,根据该未知单播报文携带的ED标识获知源客户端ED,并对该报文的源MAC地址进行学习,将学习到的MAC地址、目的客户端ED自身和源客户端ED之间的主用隧道所对应的出接口一并配置给MAC表;再根据所述未知单播报文的目的MAC地址查询自身的MAC表,如果命中本地站点,则进行本地转发;如果未命中,则在本虚拟局域网VLAN内广播。
7.根据权利要求6所述的方法,其特征在于,该方法进一步包括:
所述客户端ED作为源客户端ED接收到本地站点的单播报文时,对该报文进行源MAC地址学习,将学习到的MAC地址和接收该报文的端口一并保存在自身的MAC表中;
根据该报文的目的MAC地址查询自身的MAC表,如果命中本地站点,则进行本地转发;如果命中服务器端ED或目的客户端ED站点,则通过自身与服务器端ED或目的客户端ED之间的主用隧道转发出去;如果未命中,则将该单播报文作为未知单播报文处理。
8.根据权利要求6所述的方法,其特征在于,该方法进一步包括:
所述客户端ED作为目的客户端ED从主用隧道接收到来自源客户端ED发送的已知单播报文,对该报文的源MAC地址进行学习,将学习到的MAC地址、目的客户端ED自身和源客户端ED之间的主用隧道所对应的出接口一并配置给MAC表;
所述目的客户端ED根据所述已知单播报文的目的MAC地址查询MAC表,如果命中本地站点,则进行本地转发;如果未命中,则在本VLAN内进行广播。
9.一种边缘设备,该设备为以太网虚拟化EVI网络中的服务器端边缘设备ED,包括主控单元、转发单元和接口单元,所述服务器端ED和EVI网络中的客户端ED之间均建立了主用隧道,其特征在于,
所述转发单元用于,在接口单元从备用隧道接收到来自源客户端ED的未知单播报文时,所述未知单播报文携带有源客户端ED的ED标识,对该报文的源MAC地址进行学习,并将学习到的MAC地址、该服务器端ED和源客户端ED之间的主用隧道所对应的出接口一并配置给MAC表;还用于,根据所述未知单播报文的目的MAC地址查询MAC表,命中本地站点,则通过接口单元进行本地转发;命中远端站点,则通过接口单元并利用与目的客户端ED之间的备用隧道转发出去;未命中,则通过接口单元在EVI实例内进行广播。
10.根据权利要求9所述的设备,其特征在于,所述通过接口单元在EVI实例内进行广播为:转发单元通过接口单元将所述未知单播报文在本VLAN内广播,通过接口单元并利用与除源客户端ED外的其它所有客户端ED建立的备用隧道转发出去。
11.根据权利要求9所述的设备,其特征在于,
所述转发单元进一步用于,在接口单元从主用隧道接收到来自源客户端ED发送的已知单播报文时,对该报文的源MAC地址进行学习,将学习到的MAC地址、服务器端ED自身和源客户端ED之间的主用隧道所对应的出接口一并配置给自身的MAC表;还用于,根据所述已知单播报文的目的MAC地址查询MAC表,命中本地站点,则进行本地转发;未命中,则在本VLAN内广播。
12.根据权利要求9所述的设备,其特征在于,
所述转发单元还用于,通过所述接口单元接收到自身本地站点的单播报文时,对该单播报文的源MAC地址进行学习,将学习到的MAC地址和端口一并配置给自身的MAC表;根据所述本地站点的单播报文的目的MAC地址查询MAC表,未命中则在本地VLAN内广播,并分别从自身与其它所有客户端ED建立的主用隧道转发出去,或者将服务器端ED的ED标识携带于该单播报文再分别从自身与其它所有客户端ED建立的备用隧道转发出去。
13.根据权利要求9所述的方法,其特征在于,
所述转发单元还用于,在所述接口单元接收到自身本地站点的广播报文时,对该报文的源MAC地址进行学习,将学习到的MAC地址和端口一并配置给自身的MAC表;在本地VLAN内广播,并分别从自身与其它所有客户端ED建立的备用隧道或主用隧道转发出去。
14.一种边缘设备,该设备为以太网虚拟化EVI网络中的客户端边缘设备ED,包括主控单元、转发单元和接口单元,所述客户端ED和EVI网络中的服务器端ED之间建立了主用隧道,其特征在于,
所述主控单元用于,在作为源客户端ED发送未知单播报文时,将自身的ED标识添加到该未知单播报文中;
所述转发单元用于,在作为源客户端ED时,通过接口单元从与服务器端ED之间建立的备用隧道发送给服务器端ED;在作为目的客户端ED时,通过接口单元从备用隧道接收到服务器端ED转发的未知单播报文,根据该未知单播报文携带的ED标识获知源客户端ED,对该报文的源MAC地址进行学习,将学习到的MAC地址、目的客户端ED自身和源客户端ED之间的主用隧道所对应的出接口一并配置给MAC表;还用于根据所述未知单播报文的目的MAC地址查询MAC表,如果命中本地,则通过接口单元进行本地转发;如果未命中,则通过接口单元在本VLAN内进行广播。
15.根据权利要求14所述的设备,其特征在于,
所述转发单元进一步用于,在接口单元接收到本地站点的单播报文时,对该报文进行源MAC地址学习,将学习到的MAC地址和接收该报文的端口一并保存在MAC表中。
16.根据权利要求14所述的设备,其特征在于,
所述转发单元进一步用于,在接口单元接收到本地站点的单播报文时,根据该报文的目的MAC地址查询自身的MAC表,命中本地站点,则通过接口单元进行本地转发;命中远端的服务器端ED或目的客户端ED,则通过接口单元并利用自身与服务器端ED或目的客户端ED之间的主用隧道转发;如果未命中,则将该单播报文作为未知单播报文处理。
17.根据权利要求14所述的设备,其特征在于,
所述转发单元进一步用于,在客户端ED作为目的客户端ED从主用隧道接收到来自源客户端ED发送的已知单播报文,对该报文的源MAC地址进行学习,将学习到的MAC地址、该目的客户端ED和源客户端ED之间的主用隧道所对应的出接口一并配置给自身的MAC表;还用于,根据所述已知单播报文的目的MAC地址查询MAC表,如果命中本地站点,则进行本地转发;未命中,则在本VLAN内广播。
CN201210316996.8A 2012-08-31 2012-08-31 一种边缘设备报文转发时的mac学习方法及边缘设备 Active CN103685007B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201210316996.8A CN103685007B (zh) 2012-08-31 2012-08-31 一种边缘设备报文转发时的mac学习方法及边缘设备
PCT/CN2013/082638 WO2014032609A1 (en) 2012-08-31 2013-08-30 Mac address learning

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210316996.8A CN103685007B (zh) 2012-08-31 2012-08-31 一种边缘设备报文转发时的mac学习方法及边缘设备

Publications (2)

Publication Number Publication Date
CN103685007A true CN103685007A (zh) 2014-03-26
CN103685007B CN103685007B (zh) 2016-11-16

Family

ID=50182534

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210316996.8A Active CN103685007B (zh) 2012-08-31 2012-08-31 一种边缘设备报文转发时的mac学习方法及边缘设备

Country Status (2)

Country Link
CN (1) CN103685007B (zh)
WO (1) WO2014032609A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104836744A (zh) * 2015-05-29 2015-08-12 杭州华三通信技术有限公司 一种报文处理方法和装置
CN112804158A (zh) * 2021-03-31 2021-05-14 四川新网银行股份有限公司 一种交换机未知单播转发与控制方法
WO2022043737A1 (en) * 2020-08-28 2022-03-03 Pismo Labs Technology Limited Methods and systems for transmitting session-based packets

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9559865B2 (en) * 2013-11-08 2017-01-31 Verizon Patent And Licensing Inc. Virtual network device in a cloud computing environment
CN104618210B (zh) * 2014-12-25 2018-07-31 新华三技术有限公司 一种状态通知方法和设备
US10313153B2 (en) 2017-02-27 2019-06-04 Cisco Technology, Inc. Adaptive MAC grouping and timeout in EVPN environments using machine learning

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040202199A1 (en) * 2003-04-11 2004-10-14 Alcatel Address resolution in IP interworking layer 2 point-to-point connections
EP2107724B1 (en) * 2008-03-31 2010-06-23 Alcatel, Lucent Improved MAC address learning
CN101980496A (zh) * 2010-10-13 2011-02-23 华为数字技术有限公司 报文处理方法和系统、交换机和接入服务器设备
CN102098202A (zh) * 2009-12-11 2011-06-15 华为技术有限公司 虚拟专用网拓扑控制方法、装置及系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7907595B2 (en) * 2006-09-29 2011-03-15 Avaya, Inc. Method and apparatus for learning endpoint addresses of IPSec VPN tunnels
CN101001196A (zh) * 2007-01-25 2007-07-18 华为技术有限公司 一种建立伪线隧道并利用其传送报文的方法和装置
US8565230B2 (en) * 2010-09-10 2013-10-22 Avaya Inc. Shared virtual tunnels supporting Mac learning in communication networks
CN102594711B (zh) * 2012-03-28 2014-11-26 杭州华三通信技术有限公司 一种在边缘设备上的报文转发方法和边缘设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040202199A1 (en) * 2003-04-11 2004-10-14 Alcatel Address resolution in IP interworking layer 2 point-to-point connections
EP2107724B1 (en) * 2008-03-31 2010-06-23 Alcatel, Lucent Improved MAC address learning
CN102098202A (zh) * 2009-12-11 2011-06-15 华为技术有限公司 虚拟专用网拓扑控制方法、装置及系统
CN101980496A (zh) * 2010-10-13 2011-02-23 华为数字技术有限公司 报文处理方法和系统、交换机和接入服务器设备

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104836744A (zh) * 2015-05-29 2015-08-12 杭州华三通信技术有限公司 一种报文处理方法和装置
CN104836744B (zh) * 2015-05-29 2018-06-12 新华三技术有限公司 一种报文处理方法和装置
WO2022043737A1 (en) * 2020-08-28 2022-03-03 Pismo Labs Technology Limited Methods and systems for transmitting session-based packets
GB2603822A (en) * 2020-08-28 2022-08-17 Pismo Labs Technology Ltd Methods and systems for transmitting session-based packets
CN112804158A (zh) * 2021-03-31 2021-05-14 四川新网银行股份有限公司 一种交换机未知单播转发与控制方法

Also Published As

Publication number Publication date
WO2014032609A1 (en) 2014-03-06
CN103685007B (zh) 2016-11-16

Similar Documents

Publication Publication Date Title
CN103841023B (zh) 数据转发的方法和设备
CN102413061B (zh) 一种报文传输方法及设备
CN102594711B (zh) 一种在边缘设备上的报文转发方法和边缘设备
CN104283980B (zh) 一种地址解析协议代答方法和装置
CN102932254B (zh) 报文转发方法及装置
CN103685006A (zh) 一种在边缘设备上的报文转发方法和边缘设备
CN104518973B (zh) 一种基于sdn环境的数据的可靠组播传输方法
CN104869042A (zh) 报文转发方法和装置
CN103179228A (zh) 因特网协议地址解析方法及边缘节点
CN104009926A (zh) Evi网络中的组播方法及边缘设备ed
CN103685007A (zh) 一种边缘设备报文转发时的mac学习方法及边缘设备
CN103248720A (zh) 一种查询物理地址的方法及装置
CN106559302A (zh) 单播隧道建立方法、装置和系统
CN105187311B (zh) 一种报文转发方法及装置
US8472420B2 (en) Gateway device
CN102571610A (zh) 一种报文转发方法和边缘设备
CN101242370B (zh) 实现以太网与帧中继互联的方法与协议转换设备
CN103973569A (zh) 一种数据报文转发方法、用户驻地设备和系统
CN102055642A (zh) 一种数据报文转换方法
WO2016107269A1 (zh) 虚拟可扩展本地区域网络中数据传输的设备和方法
WO2015131739A1 (zh) 数据交互方法、基带处理单元、射频拉远单元及中继单元
CN104009919B (zh) 报文转发方法及装置
CN105591897B (zh) Trill网络的mac地址同步方法及装置
CN104601463A (zh) 一种vxlan网络中报文转发方法及装置
CN107547691B (zh) 地址解析协议报文代理方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Patentee after: Xinhua three Technology Co., Ltd.

Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Patentee before: Huasan Communication Technology Co., Ltd.