一种在边缘设备上的报文转发方法和边缘设备的制作方法

文档序号:7982638阅读:345来源:国知局
一种在边缘设备上的报文转发方法和边缘设备的制作方法
【专利摘要】本发明提供了一种在边缘设备上的报文转发方法和边缘设备,应用于实现多个站点二层互联的以太网虚拟化(EVI)网络中。用户侧边缘设备(UED)接收到来自用户侧的单播报文时,查询媒体接入控制(MAC)表,命中则在本地转发;未命中则转发给运营商边缘设备(NED)。UED接收到来自用户侧的广播报文时,在本地站点的同一虚拟局域网(VLAN)内广播且转发至NED。应用本发明方案,UED可以只保存本地站点的MAC地址,从而大大降低对UED的规格的要求,有利于EVI网络的推广。
【专利说明】一种在边缘设备上的报文转发方法和边缘设备
【技术领域】
[0001]本发明涉及通信领域,特别涉及一种在边缘设备上的报文转发方法和边缘设备。【背景技术】
[0002]以太网连接虚拟化(EVI)网络是一种可以将异地部署的多个站点网络连接起来的网络,是基于虚拟链路实现各站点网络之间二层互联的系统,实现基于IP核心网的L2VPN技术。

【发明内容】

[0003]本发明提供了一种在边缘设备上的报文转发方法和边缘设备,可以降低用户侧边缘设备的规格要求,用利于EVI网络的推广应用。
[0004]针对第一个发明目的,本发明提出一种在边缘设备上的报文转发方法,应用于实现多个站点二层互联的以太网虚拟化EVI网络中,所述边缘设备为用户侧边缘设备UED,该方法包括:
[0005]所述UED接收到来自用户侧的单播报文时,根据来自用户侧的单播报文查询EVI实例的媒体接入控制MAC表,命中则按照查询结果在所述EVI实例的本地站点转发来自用户侧的单播报文;未命中则将来自用户侧的单播报文转发给所述EVI实例的运营商边缘设备 NED ;
[0006]所述UED接收到来自用户侧的广播报文时,在所述本地站点的同一虚拟局域网VLAN内广播且转发至所述NED。
[0007]针对第一个发明目的,本发明还提出一种在边缘设备上的报文转发方法,应用于实现多个站点二层互联的以太网虚拟化EVI网络中,所述边缘设备为运营商边缘设备NED,该方法包括:
[0008]所述NED接收到来自公网侧的用户侧边缘设备UED的单播报文时,查询EVI实例的媒体接入控制MAC表,命中则按照查询结果在所述EVI实例内转发;未命中则将来自公网侧的用户侧边缘设备UED的单播报文转发回所述UED ;
[0009]所述NED接收到来自所述UED的广播报文时,在本地站点的同一 VLAN内广播并转发给至所述EVI实例中除所述UED以外的其他边缘设备。
[0010]针对第二个发明目的,本发明提出一种边缘设备,包括控制单元、转发单元、接口单元和存储单元,该设备为用户侧边缘设备UED,且应用于实现多个站点二层互联的以太网虚拟化EVI网络中;
[0011]所述转发单元,通过所述接口单元接收来自用户侧的单播报文,查询EVI实例的媒体接入控制MAC表,命中则按照查询结果通过所述接口单元在所述EVI实例的本地站点内转发来自用户侧的单播报文,未命中则通过所述接口单元转发给所述EVI实例的运营商边缘设备NED ;以及通过所述接口单元接收来自用户侧的广播报文,通过所述接口单元将来自用户侧的广播报文在所述本地站点的同一虚拟局域网VLAN内广播并转发给所述NED。[0012]针对第二个发明目的,本发明还提出一种边缘设备,包括控制单元、转发单元、接口单元和存储单元,该边缘设备为运营商边缘设备NED且应用于实现多个站点二层互联的以太网虚拟化EVI网络中,所述NED包括:
[0013]所述转发单元,通过所述接口单元接收来自公网侧的用户侧边缘设备UED的单播报文,根据来自所述UED的单播报文查询媒体接入控制MAC表,命中则按照查询结果通过所述接口单元在EVI实例内转发;未命中则通过所述接口单元将来自所述UED的单播报文转发回所述所述UED ;以及通过所述接口单元接收来自所述UED的广播报文,通过所述接口单元将来自所述UED的广播报文在所述本地站点的同一 VLAN内广播并转发给所述EVI实例中除所述UED以外的其他边缘设备。
[0014]本发明提出一种在边缘设备上的报文转发方法和边缘设备,将边缘设备分为用户侧边缘设备(UED)和运营商边缘设备(NED),UED的用户可以通过UED和NED两层边缘设备接入网络。其中,UED中仅保存本地站点的MAC地址,NED中保存实例内所有的MAC地址。这样,由于UED仅保存本地站点的MAC地址即可,对UED规格的要求将大大降低,从而有利于EVI网络的推广。
【专利附图】

【附图说明】
[0015]图1是全连接EVI网络架构的示意图。
[0016]图2是本发明实施例一分层EVI网络架构结构示意图。
[0017]图3是本发明实施例一中用户侧边缘设备结构示意图。
[0018]图4是本发明实施例一中运营商边缘设备结构示意图。
[0019]图5是本发明实施例二的分层EVI网络架构示意图。
[0020]图6是本发明实施例二中封装后的中间系统到中间系统(IS-1S)报文的格式示意图。
【具体实施方式】
[0021]如图1所示,全连接EVI网络由核心网络、交叠网络和若干站点网络等组成。
[0022]其中,站点网络由一台或多台边缘设备(ED)连接到核心网络的具有独立业务功能的二层网络(如数据中心),主要由用户维护,完成用户内部的流量转发,其边缘设备可以提供站点之间的二层交换功能。
[0023]核心网络主要由IP路由设备承载的提供站点网络之间互联的网络,是公网,主要进行隧道报文的IP转发。
[0024]交叠网络是站点边缘设备之间建立的虚拟网络(图中未标出),实现VLAN在不同站点之间的扩展,提供各站点网络之间的二层互联。另外,交叠网络在数据平面承载站点间扩展的VLAN的二层流量,在控制平面则通过IS-1S协议在站点之间通告主机和路由器的MAC地址。
[0025]但是,利用全连接EVI网络实现多个站点二层互联同时,各站点的主机MAC地址需要泛洪至全连接EVI网络的所有ED设备,导致每台ED设备都必须维护大量的MAC表项。
[0026]图2是本发明实施例一提供的分层EVI网络架构。图2中,UED(User Edge Device,用户侧边缘设备),是分层EVI网络中的用户侧边缘设备;NED(NetWork Edge Device,网络边缘设备):是分层EVI网络中的运营商边缘设备。
[0027]图2中第一站点包括若干用户边缘设备CE201,每台CE201下挂主机Host (图中未示出)。每台CE201分别接入分层EVI网络的用户侧边缘设备UED202 ;UED202与分层EVI网络的一个或多个NED203建立EVI连接。
[0028]本实施例应用于实现多个站点二层互联的分层以太网虚拟化EVI网络中,分层EVI网络的同一个EVI实例内的主机可能分布于不同的站点。其中,UED202的EVI实例MAC表保存在接入UED202的EVI实例站点中学习到的主机的MAC地址。而NED203的EVI实例MAC表保存在EVI实例各个站点学习到的主机的MAC地址。
[0029]下面分两部分具体介绍UED202和NED203的工作。
[0030]一、图3是用户侧边缘设备的结构示意图。如图3所示,UED202至少包括控制单元2021、转发单元2022、接口单元2023和存储单元2024。
[0031]其中,控制单元2021在实际应用中由CPU等硬件芯片实现,转发单元2022主要负责报文转发,接口单元2023主要指边缘设备对外的接口,可以是物理端口,也可以是逻辑接口,而存储单元2024用于保存与EVI实例、隧道等相关的信息。具体地:
[0032]当UED202将用户侧报文转发到公网侧时:接口单元2023接收来自用户侧的单播报文,转发单元2022查询EVI实例的MAC表,命中则按照查询结果通过所述接口单元2023在所述EVI实例的本地站点内转发来自用户侧的单播报文,未命中则通过所述接口单元2023转发给所述EVI实例的NED ;以及通过所述接口单元2023接收来自用户侧的广播报文,通过所述接口单元2023将来自用户侧的广播报文在所述本地站点的同一虚拟局域网VLAN内广播并转发给所述NED。
[0033]当UED202将公网侧报文转发到用户侧时:接口单元2023接收到来自公网侧所述NED的单播报文时,转发单元2022查询所述MAC表,命中则按照查询结果通过所述接口单元2023在所述本地站点内转发,未命中则通过所述接口单元2023在所述本地站点的同一VLAN内广播;以及通过接口单元2023接收到来自公网侧所述NED的广播报文,通过所述接口单元2023在所述本地站点的同一 VLAN内广播来自所述NED的广播报文。
[0034]与全连接EVI网络的边缘设备不同,本实施例的UED202学习本地MAC地址,而不学习远端MAC地址。UED202将学习到的本地MAC地址通过中间系统到中间系统(IS-1S)协议发布给NED203。实际应用中,UED202通常根据收到的用户侧二层报文的以太网头的源MAC地址学习本地MAC地址。这里所说的二层报文可以是单播报文,也可以是广播报文,即:转发单元2022通过接口单元2023收到来自用户侧的二层单播或广播报文,转发单元2022根据收到二层单播或广播报文的端口、二层单播或广播报文的VLANID确定EVI实例,在EVI实例的MAC表记录VLAN ID、源MAC地址与端口的对应关系,以实现本地MAC地址的学习。在发布MAC地址时,由控制单元2021通过所述接口单元2023发送包含学习到的本地MAC地址的IS-1S协议报文给NED203。
[0035]二、图4是运营商边缘设备NED203的结构示意图。NED203包括控制单元2031、转发单元2032、接口单元2033和存储单元2034 ;其中,转发单元2032记录EVI实例内学习到的本地MAC地址和远端MAC地址。
[0036]当NED203将公网侧报文转发给用户侧时:接口单元2033接收来自公网侧的用户侧边缘设备UED的单播报文,转发单元2032根据来自所述UED的单播报文查询MAC表,命中则按照查询结果通过所述接口单元在EVI实例内转发;未命中则通过所述接口单元2033将来自所述UED的单播报文转发回所述所述UED ;以及通过所述接口单元2033接收来自所述UED的广播报文,通过所述接口单元2033将来自所述UED的广播报文在所述本地站点的同一 VLAN内广播并转发给所述EVI实例中除所述UED以外的其他边缘设备。
[0037]当NED203将用户侧报文转发给公网侧时:接口单元2033接收到来自用户侧的单播报文,转发单元2032根据来自用户侧的单播报文查询所述MAC表,命中则按照查询结果通过所述接口单元2033在所述EVI实例转发,未命中则通过所述接口单元2033在所述本地站点的同一 VLAN内转发;以及接口单元2033接收到来自用户侧的广播报文,通过所述接口单元2033将来自用户侧的广播报文在所述本地站点的同一 VLAN内广播并转发至所述UED202以及所述其他边缘设备。
[0038]当NED203接收到公网侧其他边缘设备的报文时:接口单元2033接收来自公网侧其他边缘设备的单播报文,转发单元2032查询所述MAC表,命中本地则在本地站点转发;命中UED202,则转发至所述UED202 ;命中公网侧其他另一边缘设备则丢弃;未命中则在所述本地站点的同一 VLAN内广播。在接口单元2033接收到来自公网侧所述其他边缘设备的广播报文时,转发单元2032通过所述接口单元2033将来自公网侧所述其他边缘设备的广播报文在所述本地站点的同一 VLAN内广播。
[0039]本实施例中的NED203可以学习本地MAC地址以及其他站点的远端MAC地址。NED203与公网侧其他边缘设备(即其他NED或ED )之间采用全连接架构,还将学习到的本地MAC地址和UED202发布过来的远端MAC地址泛洪给其他ED或其他NED。但是,NED203不将学习到的本地MAC地址或远端MAC地址发布给UED202。
[0040]实际应用中,转发单元2032可以根据用户侧二层报文的以太网头的源MAC地址学习本地MAC地址,即:转发单元2032通过接口单元的2033收到来自用户侧的二层单播或广播报文,根据收到二层单播或广播报文的端口以及二层单播或广播报文的VLAN ID确定EVI实例,在EVI实例的MAC表记录VLAN ID、源MAC地址与端口的对应关系,以实现对本地MAC地址的学习。转发单元2032还根据IS-1S协议报文学习远端MAC地址,即:转发单元2032通过接口单元的2033收到来自公网侧的IS-1S协议报文,根据IS-1S协议报文关联的EVI实例标识确定EVI实例,将IS-1S协议报文中的VLAN ID和MAC地址与收到IS-1S协议报文的公网接口的对应关系记录在EVI实例的MAC表中,以实现对远端MAC地址的学习。同时,在发布MAC地址时,控制单元2031通过所述接口单元2033发送IS-1S协议报文至所述其他边缘设备,发送的IS-1S协议报文包含学习到的本地MAC地址以及基于的来自所述UED202的IS-1S协议报文学习到的远端MAC地址。
[0041]实际应用中,UED以及NED的控制单元可以基于CPU实现,UED以及NED的转发单元可以基于转发芯片实现,UED以及NED的存储单元可以基于存储器实现。为了更好地说明本发明方案,下面再进一步介绍实施例二。
[0042]图5是实施例二的分层EVI网络架构图示意图。UED100是分层EVI网络中的用户侧边缘设备;NED200以及NED300是分层EVI网络中的运营商边缘设备;ED400是EVI网络中普通的边缘设备,用于连接用户网络和IP骨干网络,与图1中全连接EVI网络边缘设备相同。NED200、NED300、ED400之间采用全连接架构。
[0043]如图5所示,第一站点的用户边缘设备CEllO以及CE112接入EVI分层网络的UED100 ;第二站点的CE210以及CE212接入EVI分层网络的NED200 ;第三站点的CE310接入NED300 ;第四站点的CE410接入ED400。CEllO下挂主机120的MAC地址为MAC120,CE112下挂主机122的MAC地址为MAC122。
[0044]CE210下挂主机220的MAC地址为MAC220,CE212下挂主机222的MAC地址为MAC222。CE310下挂主机320的MAC地址为MAC320,CE410下挂主机420的MAC地址为MAC420。
[0045]本实施例中UED100与NED200、NED300建立EVI连接,本领域技术人员可根据实施例二的技术启示,在分层EVI网络中使一个UED与一个或多个NED设备建立EVI连接,或者在分层EVI网络中使多个UED设备与一个或多个NED设备建立EVI连接。
[0046]这里,UED100与 NED200 建立的 EVI 连接为 EVI LINK1,UED 100 与 NED300 建立的EVI连接为EVI LINK2。其中,UED100的公网接口 I对应EVI LINK1,公网接口 2对应EVILINK2。当UED100需要向NED200和NED300发布本地MAC地址或转发报文时,就将IS-1S协议报文以及用户侧报文从公网接口 I对应的EVI LINKl发往NED200或从公网接口 2对应 EVILINK2 发往 NED300。
[0047]如图5所示NED200与EVI实例的UED100、NED300以及ED400建立的EVI连接分别对应于公网接口 3、公网接口 5以及公网接口 4 ;NED300与EVI实例的UED 100、NED200以及ED400建立的EVI连接分别对应于公网接口 6、公网接口 7以及公网接口 8,ED400与EVI实例的NED200以及NED300建立的EVI连接分别对应于公网接口 9以及公网接口 10。
[0048]UED100.NED200以及NED300的CPU处理控制层面的协议报文,可获取各EVI实例的信息并将各EVI实例的信息保存于存储单元,并根据各EVI实例的信息为每个EVI实例设置硬件转发表项,将设置的硬件转发表记录于转发芯片。每个EVI实例的硬件转发表可以包括隧道封装表、隧道终结表、广播表、隧道选择HASH表、MAC表等。
[0049]UED100, NED200以及NED300的转发芯片的MAC表在初始时为空,需要进行MAC地址学习。UED100、NED200以及NED300的控制单元生成及配置这些硬件转发表的方式与图1中全连接EVI网络的边缘设备的控制单元生成及配置硬件转发表的方式相同。但是,UED100.NED200以及NED300的转发芯片学习MAC地址学习的方式不同于全连接EVI网络的边缘设备。UED100的MAC学习方法见上述实施例一对UED202的说明。NED200以及NED300的MAC学习方法请参照NED203的说明。
[0050]UED100学习本地MAC地址且发布给NED200和NED300。NED200学习本地MAC地址以及UED100、NED300和ED400发布的其他站点的远端MAC地址,NED300学习本地MAC地址以及UED100、NED200和ED400发布的其他站点的远端MAC地址,且NED200和NED300还将本地MAC地址以及UED100发布的远端MAC地址发布到ED400。ED400学习本地MAC地址以及学习远端NED200、NED300发布过来的MAC地址,并且将学习到的本地站点内的MAC发布给 NED200、NED300。
[0051]实际应用中,如果UED100与同一个EVI实例的NED200和NED300建立了等价的EVI连接,为了进一步减少UED 100与公网侧的负载,同时避免冗余MAC地址发布,UED 100根据EVI实例广播表选择公网接口 I或公网接口 2,通过所选的公网接口对应的EVI连接将包含学习到的本地MAC地址的IS-1S协议报文发送到NED200或NED300 ;或者UED100将学习到的本地MAC地址均匀分成两组,选择EVI实例广播表中的公网接口 I和公网接口 2,通过公网接口 I对应的EVI LINKl以及公网接口 2对应的EVI LINK2分别将包含每组本地MAC地址的IS-1S协议发送给NED200或NED300。
[0052]本实施例所述的单播报文和广播报文可以是协议报文,也可以是数据报文,UED100下的主机可以访问本地站点主机或远端站点下的主机,NED200或NED300下的主机也可以访问各自本地下的主机或远端站点下的主机。不管是哪种类型的报文,不管是对哪个站点的访问,在其访问的过程中,涉及到UED或NED对报文的转发,下面将举例说明。另夕卜,在本实施例中,对于NED200来说,NED300和ED400为所述的其他边缘设备。相似的,对于NED300来说,NED200和ED400为所述的其他边缘设备。
[0053]例1:在图5所示的分层EVI网络中,假设主机120访问主机420前,初始情况下主机120没有主机420的ARP信息,因此主机120发送ARP请求报文。这里的ARP请求报文就是一种协议报文,而且是一个目的MAC地址是全F的二层广播报文。在图5中CEllO收到主机120发送ARP请求报文,根据ARP请求报文的以太网头中源MAC地址学习主机120的MAC地址,然后继续在VLANlO内广播ARP请求报文。
[0054]本实施例中,主机120的ARP请求报文被转发至主机420的转发流程如下:
[0055]步骤Ml =UEDlOO收到ARP请求报文,根据ARP请求报文的VLAN 10以及收到ARP请求报文的端口 I确定EVI实例,在EVI实例MAC表中记录的VLAN 10和MAC 120地址与端口 I的对应关系。
[0056]步骤M2 =UEDlOO在EVI实例广播表中选择VLANlO的其他端口(图中未示)进行本地转发并在EVI实例广播表记录的公网接口 I和公网接口 2中选择公网接口 I将ARP请求报文发往NED200。
[0057]UED 100将ARP请求报文发往NED200时,根据隧道封装表查找公网接口 I的封装信息,根据封装信息记录的IP头、GRE头、外层以太网头的目的MAC地址、VLAN ID等为ARP请求报文封装IP GRE隧道头和外层以太网头,将本设备的MAC地址设置为外层以太网头的源MAC地址,从封装信息中的出端口发送。由于ARP报文被封装为Ethernet over IP GRE报文,UEDlOO与NED200间的设备会根据Ethernet IP GRE报文的IP GRE隧道头(ARP请求报文的以太网头与外层以太网头之间的IP头和GRE头)将ARP请求报文转发到NED200,从而通过UED100和NED200间IP GRE隧道(EVI隧道)承载的EVL LINKlJf ARP报文发往NED200。
[0058]UED 100可通过已有hash算法计算hash值,根据hash值在EVI实例广播表记录的公网接口进行选择。譬如UED100根据ARP请求报文(二层广播报文)的VLAN ID和目的MAC地址进行hash计算,在隧道选择表中确定hash值对应的公网接口。
[0059]步骤M3:UED100在EVI实例广播表中记录的公网接口 I和公网接口 2中选择公网接口 1,将包含MAC 120的IS-1S协议报文发往到NED200。
[0060]UED100将包含MAC120的IS-1S协议报文发往NED200时,根据隧道封装表查找公网接口 I的封装信息,根据封装信息记录的IP头、GRE头、外层以太网头的目的MAC地址、VLAN ID,为IS-1S协议报文封装IP GRE隧道头和外层以太网头。
[0061]由于IS-1S是路由协议报文,UED100在IP GRE隧道头与IS-1S协议报文间插入EVI头,用于识别EVI实例。图6是封装后的IS-1S报文的格式示意图。由于IS-1S协议报文封装了 IP GRE隧道头和外层以太网头,UED 100与NED200间的设备会根据IP GRE隧道头,将IS-1S报文转发到NED200,即:通过UEDlOO和NED200间IP GRE隧道(EVI隧道)承载的EVL LINKl,将包含学习到的MAC120的IS-1S协议报文发送到NED200,从而将学习的本地MAC地址发布到NED200。
[0062]步骤M4:NED200接收到来自UED100的封装后的ARP请求报文,进行解封装,根据ARP请求报文的VLAN确定EVI实例,在确定的EVI实例广播表中选择VLANlO的端口(图中未示)在本地站点同一 VLAN内广播,并转发并在EVI实例广播表记录的公网接口 3、4和5中选择两个公网接口 4和5(即:除收到ARP请求报文的公网接口 3以外的两个公网接口),将ARP请求报文发往NED300和ED400。
[0063]NED200对ARP请求报文执行解封装操作时,确定外层以太网头的目的MAC地址是本设备的MAC地址,则去掉外层以太网头,然后根据隧道终结表与IP GRE隧道头的目的IP地址、源IP、GRE头类型进行隧道匹配,之后去掉IP GRE隧道,然后进入到ARP转发流程中。
[0064]NED200将ARP请求报文发往NED300和ED400时,根据隧道封装表查找公网接口 4和公网接口 5的封装信息,将ARP请求报文封装为Ethernet over IP GRE报文,分别通过两个公网接口的封装信息中的出端口(图中未示)发送。
[0065]步骤M5:NED200接收来自UED100的IS-1S协议报文,进行解封装,根据EVI头确定EVI实例,在EVI实例MAC表中记录VLAN 10和MAC120地址与公网接口 3 (根据封装后的IS-1S协议报文的IP GRE隧道头确定)的对应关系;NED200在EVI实例广播表中选择公网接口 4和5,将包含学习到的远端MAC120的IS-1S协议报文发送到NED300和ED400。
[0066]NED200将包含MAC120的IS-1S协议报文发往NED300和ED400时,根据隧道封装表查找公网接口 4和5的封装信息,根据封装信息记录的IP头、GRE头、外层以太网头的目的MAC地址、VLAN ID,为IS-1S协议报文封装IP GRE隧道头和外层以太网头,将封装后的IS-1S协议报文分别通过两个公网接口的封装信息的出端口(图中未示)发送。
[0067]NED200在IP GRE隧道头与IS-1S协议报文间插入EVI头,用于识别EVI实例。NED200发送的封装后的IS-1S报文的格式与图6所示的封装后的IS-1S协议报文的格式相同。
[0068]步骤M6:ED400和NED300接收到来自NED200的ARP请求报文,进行解封装,根据ARP请求报文的VLAN确定EVI实例,在确定的EVI实例广播表中选择VLANlO的端口(图中未示)执行本地转发。
[0069]步骤M7:ED400接收到NED200发布的IS-1S协议报文,进行解封装,根据EVI头确定EVI实例,在EVI实例MAC表中记录VLAN 10和MAC120地址与公网接口 9的对应关系;NED300接收到NED200发布的IS-1S协议报文,进行解封装,根据EVI头确定EVI实例,在EVI实例MAC表中记录VLAN 10和MAC120地址与公网接口 7的对应关系。
[0070]CE410收到ARP请求报文后,学习主机120的MAC地址并继续在VLANlO内广播。主机420收到ARP请求报文,在本设备的ARP表记录APR信息。主机420根据生成ARP响应报文并发往CE410 ;ARP响应报文的以太网头的目的MAC地址是MAC120,源MAC地址是MAC420。CE410收到ARP响应报文,学习MAC420并将ARP响应报文发往ED400。
[0071]上述流程中既包含各个边缘设备对报文的转发过程,也包含MAC地址的学习过程,并按照以上假设交叉进行。实际应用中,其执行顺序未必严格按照上述流程的顺序执行,其并不能作为对本发明方案的限定。[0072]下面继续介绍主机420发送的ARP响应报文被转发至主机120,这里,ARP响应报文也为协议报文,且为单播报文,其的转发流程如下:
[0073]步骤M8:ED400收到ARP响应报文,根据ARP响应报文的VLAN 10以及收到ARP响应报文的端口 5 (图中未示)确定EVI实例,在EVI实例MAC表中记录的VLAN 10.MAC420地址与端口 5的对应关系;ED400在EVI实例MAC中查找到VLANlO和MAC120匹配的MAC表项,根据匹配表项中公网接口 9,将ARP响应报文发往NED200。
[0074]ED400将ARP响应报文发往NED200时,根据隧道封装表查找公网接口 9的封装信息,根据封装信息记录的IP头、GRE头、外层以太网头的目的MAC地址、VLAN ID为ARP响应报文封装IP GRE隧道头和外层以太网头,将本设备的MAC地址设置为外层以太网头的目的MAC地址,从公网接口 9的封装信息中的出端口发送。
[0075]步骤M9:ED400在EVI实例广播表中选择公网接口 9和公网接口 10,将包含学习到的本地MAC420通过IS-1S协议报文发送到NED200和NED300。
[0076]ED400将包含学习到的本地MAC420通过IS-1S协议报文发送到NED200和NED300时,根据隧道封装表查找公网接口 9和10的封装信息,根据封装信息记录的IP头、GRE头、外层以太网头的目的MAC地址、VLANID,为IS-1S协议报文封装IP GRE隧道头和外层以太网头。将封装后的IS-1S协议报文分别通过两个公网接口的封装信息的出端口(图中未示)发送。
[0077]ED400发送的封装后的IS-1S报文的格式与图6所示的格式相同。
[0078]步骤MlO:NED200接收到来自ED400的封装后的ARP响应报文,进行解封装,根据ARP响应报文的VLAN确定EVI实例,在确定的EVI实例MAC表查找VLANlO和MAC120匹配的表项,根据匹配表项中公网接口 3,将ARP响应报文发往UED100。
[0079]NED200根据隧道封装表查找公网接口 3的封装信息,根据封装信息记录的IP头、GRE头、外层以太网头的目的MAC地址、VLAN ID为ARP响应报文封装IP GRE隧道头和外层以太网头,将本设备的MAC地址设置为外层以太网头的源MAC地址,从封装信息中的出端口(图中未示)发送封装后的ARP响应报文。
[0080]步骤Mil:NED200接收到ED400发送的IS-1S协议报文,进行解封装,根据EVI头确定EVI实例,在确定的EVI实例MAC表中记录VLANlO和MAC420与公网接口 4的对应关系;NED300接收到来自ED400的IS-1S协议报文,进行解封装,根据EVI头确定EVI实例,在确定的EVI实例MAC表中记录VLANlO和MAC420与公网接口 8的对应关系。
[0081]步骤M12:UED100收到来自NED200的封装后的ARP响应报文,进行解封装,根据ARP响应报文的VLANlO确定EVI实例,在确定的EVI实例MAC表查找VLANlO和MAC120匹配的表项,根据匹配表项中端口 I执行本地转发,即通过端口 I转发给CE110。
[0082]CEllO收到ARP响应报文,根据学习的MAC120将ARP响应报文发往主机120。主机120根据收到ARP响应报文,记录ARP信息。
[0083]按照实施例二描述的MAC学习以及报文转发方式,UED100学习MAC地址之后,其MAC表如表一所不:
[0084]
VLAN号~ MAC地址 接口信息j...
【权利要求】
1.一种在边缘设备上的报文转发方法,其特征在于,应用于实现多个站点二层互联的以太网虚拟化EVI网络中,所述边缘设备为用户侧边缘设备UED,该方法包括: 所述UED接收到来自用户侧的单播报文时,根据来自用户侧的单播报文查询EVI实例的媒体接入控制MAC表,命中则按照查询结果在所述EVI实例的本地站点转发来自用户侧的单播报文;未命中则将来自用户侧的单播报文转发给所述EVI实例的运营商边缘设备NED ; 所述UED接收到来自用户侧的广播报文时,在所述本地站点的同一虚拟局域网VLAN内广播且转发至所述NED。
2.根据权利要求1所述的方法,其特征在于,该方法进一步包括: 所述UED接收到来自公网侧所述NED的单播报文时,查询所述MAC表,命中则按照查询结果在所述本地站点内转发;未命中则将来自公网侧所述NED的单播报文在所述本地站点的同一 VLAN内广播; 所述UED接收到来自公网侧所述NED的广播报文,在所述本地站点的同一 VLAN内广播。
3.根据权利要求2所述的方法,其特征在于, 所述UED根据接收的 来自用户侧的单播报文或广播报文学习所述本地MAC地址;学习到的本MAC地址记录于所述MAC表中; 所述UED发送中间系统到中间系统IS-1S协议报文,将学习到的本地MAC地址发布给所述NED。
4.一种在边缘设备上的报文转发方法,其特征在于,应用于实现多个站点二层互联的以太网虚拟化EVI网络中,所述边缘设备为运营商边缘设备NED,该方法包括: 所述NED接收到来自公网侧的用户侧边缘设备UED的单播报文时,查询EVI实例的媒体接入控制MAC表,命中则按照查询结果在所述EVI实例内转发;未命中则将来自公网侧的用户侧边缘设备UED的单播报文转发回所述UED ; 所述NED接收到来自所述UED的广播报文时,在本地站点的同一 VLAN内广播并转发给至所述EVI实例中除所述UED以外的其他边缘设备。
5.根据权利要求4所述的方法,其特征在于,该方法进一步包括: 所述NED接收到来自用户侧的单播报文时,查询所述MAC表,命中则按照查询结果在所述EVI实例内转发;未命中则在所述本地站点的同一 VLAN内广播来自用户侧的单播报文; 所述NED接收到来自用户侧的广播报文时,在所述本地站点的同一 VLAN内广播且转发至所述UED以及所述其他边缘设备。
6.根据权利要求4所述的方法,其特征在于,该方法进一步包括: 所述NED接收到来自公网侧所述其他边缘设备的单播报文时,查询所述MAC表,命中本地则在本地站点转发;命中所述UED,则转发至所述UED ;命中公网侧其他另一边缘设备则丢弃;未命中则在所述本地站点的同一 VLAN内广播; 所述NED接收到来自公网侧所述其他边缘设备的广播报文时,在所述本地站点的同一VLAN内广播。
7.根据权利要求4所述的方法,其特征在于, 所述NED根据来自用户侧的单播报文或广播报文学习所述本地MAC地址;所述NED接收来自其所述UED和所述其他边缘设备的IS-1S协议报文,根据收到的IS-1S协议报文学习远端MAC地址; 所述NED发送IS-1S协议报文,将学习到的本地MAC地址以及基于来自所述UED的IS-1S协议报文学习到的远端MAC地址发布给其他边缘设备。
8.—种边缘设备,包括控制单元、转发单元、接口单元和存储单元,其特征在于,该设备为用户侧边缘设备UED,且应用于实现多个站点二层互联的以太网虚拟化EVI网络中; 所述转发单元,通过所述接口单元接收来自用户侧的单播报文,查询EVI实例的媒体接入控制MAC表,命中则按照查询结果通过所述接口单元在所述EVI实例的本地站点内转发来自用户侧的单播报文,未命中则通过所述接口单元转发给所述EVI实例的运营商边缘设备NED ;以及通过所述接口单元接收来自用户侧的广播报文,通过所述接口单元将来自用户侧的广播报文在所述本地站点的同一虚拟局域网VLAN内广播并转发给所述NED。
9.根据权利要求8所述的设备,其特征在于,所述转发单元,还用于通过所述接口单元接收来自公网侧所述NED的单播报文,查询所述MAC表,命中则按照查询结果通过所述接口单元在所述本地站点内转发,未命中则通过所述接口单元在所述本地站点的同一 VLAN内广播;以及通过接口单元接收到来自公网侧所述NED的广播报文,通过所述接口单元在所述本地站点的同一 VLAN内广播来自所述NED的广播报文。
10.根据权利要求8所述的设备,其特征在于, 所述转发单元,还用于根据来自用户侧的单播报文或广播报文学习所述本地MAC地址;学习到的本地MAC地址记录配置于所述MAC表; 所述控制单元,通过所述接口单元发送包含学习到的本地MAC地址的中间系统到中间系统IS-1S协议报文给所述NED。
11.一种边缘设备,包括控制单元、转发单元、接口单元和存储单元,其特征在于,该边缘设备为运营商边缘设备NED且应用于实现多个站点二层互联的以太网虚拟化EVI网络中,所述NED包括: 所述转发单元,通过所述接口单元接收来自公网侧的用户侧边缘设备UED的单播报文,根据来自所述UED的单播报文查询媒体接入控制MAC表,命中则按照查询结果通过所述接口单元在EVI实例内转发;未命中则通过所述接口单元将来自所述UED的单播报文转发回所述所述UED ;以及通过所述接口单元接收来自所述UED的广播报文,通过所述接口单元将来自所述UED的广播报文在所述本地站点的同一 VLAN内广播并转发给所述EVI实例中除所述UED以外的其他边缘设备。
12.根据权利要求11所述的设备,其特征在于, 所述转发单元,还用于通过所述接口单元接收到来自用户侧的单播报文,根据来自用户侧的单播报文查询所述MAC表,命中则按照查询结果通过所述接口单元在所述EVI实例转发,未命中则通过所述接口单元在所述本地站点的同一 VLAN内转发;以及通过所述接口单元接收到来自用户侧的广播报文,通过所述接口单元将来自用户侧的广播报文在所述本地站点的同一 VLAN内广播并转发至所述UED以及所述其他边缘设备。
13.根据权利要求11所述的设备,其特征在于, 所述转发单元,还用于通过所述接口单元接收到来自公网侧所述其他边缘设备的单播报文,查询所述MAC表,命中本地则在本地站点转发;命中所述UED,则转发至所述UED ;命中公网侧其他另一边缘设备则丢弃;未命中则在所述本地站点的同一 VLAN内广播; 所述转发单元,还用于通过所述接口单元接收到来自公网侧所述其他边缘设备的广播报文,通过所述接口单元将来自公网侧所述其他边缘设备的广播报文在所述本地站点的同一 VLAN内广播。
14.根据权利要求11所述的设备,其特征在于, 所述转发单元,还用于根据来自用户侧的单播报文或广播报文学习所述本地MAC地址;以及用于通过所述接口单元接收来自所述UED和其他所述边缘设备的IS-1S协议报文学习,基于接收的所述IS-1S协议报文学习远端MAC地址; 所述控制单元,用于通过所述接口单元发送IS-1S协议报文至所述其他边缘设备;发送的IS-1S协议报文包含学习到的本地MAC地址以及基于的来自所述UED的IS-1S协议报文学习到的远端MAC地址。`
【文档编号】H04L12/70GK103685006SQ201210315857
【公开日】2014年3月26日 申请日期:2012年8月30日 优先权日:2012年8月30日
【发明者】宋小恒, 郑国良 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1