以太网虚拟化互联网络互连方法及边缘设备的制作方法

文档序号:8001195阅读:199来源:国知局
以太网虚拟化互联网络互连方法及边缘设备的制作方法
【专利摘要】本发明提出以太网虚拟化互联网络互连方法及边缘设备。方法包括:EVI网络由集群和非客户机构成,所述集群由一个MAC反射器和一个或多个客户机构成,所述非客户机、MAC反射器、客户机都为边缘设备;客户机与本集群的MAC反射器建立EVI Link,两两MAC反射器之间、MAC反射器与非客户机之间建立EVI Link;客户机向MAC反射器通告单播MAC地址,MAC反射器向各EVI邻居通告单播MAC地址,并将客户机的单播MAC地址通告给本集群其他客户机;边缘设备根据各EVI邻居通告来的单播MAC地址学习MAC地址表项,根据MAC地址表转发数据报文。本发明减少了EVI Link的数目。
【专利说明】以太网虚拟化互联网络互连方法及边缘设备

【技术领域】
[0001] 本发明涉及以太网虚拟化互联(EVI,Ethernet Virtualization Interconnection)【技术领域】,尤其涉及EVI网络互连方法及边缘设备。

【背景技术】
[0002] EVI是一种先进的"MAC in IP"技术,用于实现基于因特网协议(IP,Internet Protocol)核心网络的二层虚拟专网(VPN,Virtual Private Network)技术。它可以基于 现有的服务提供网络和企业业务,为分散的物理站点提供二层互联功能。EVI只是在站点的 边缘设备上维护路由信息和转发信息,无需改变站点内部和IP核心网络的路由和转发信 息。
[0003] 图1为现有的EVI整体网络的组网示意图,如图1所示,EVI整体网络由站点网络、 交叠网络和核心网络组成。站点网络是通过一台或者多台边缘设备连接到核心网络的具 有独立业务功能的二层网络,通常由单个组织管理控制,主要由主机和交换设备组成,边缘 设备提供站点之间的二层交换功能。交叠网络是站点边缘设备之间建立的虚拟网络,提供 站点网络之间的二层互联,相互通告连接到边缘设备的所有主机和路由器的媒体接入控制 (MAC,Media Access Control)地址,将多个站点互联形成更大的二层转发域。核心网络主 要由IP路由设备承载站点网络之间互联的网络。
[0004] EVI技术是一种为解决分布于异地的数据中心之间实现二层网络互联而推出的整 体解决方案。EVI网络通过EVI邻居发现协议(ENDP,EVI Neighbor Discovery Protocol) 发现邻居后,在邻居之间建立EVI-链路(Link)。之后,EVI网络通过EVI中间系统到中间 系统(IS-IS, Intermediate System to Intermediate System)协议在站点之间通告主机 和设备的MAC地址信息。交互完MAC地址信息后,当边缘设备从站点接收到报文后,就可以 根据MAC地址表查找对应的EVI-Link,将报文封装后通过给EVI-Link传送给连接目的站点 的边缘设备。
[0005] EVI通过ENDP来实现跨站点的邻居发现功能。在整个EVI邻居发现中有两个实 体:EVI邻居发现客户端(ENDC,EVI Neighbor Discovery Client)和EVI邻居发现服务器 (ENDS,EVI Neighbor Discovery Server)。ENDS 用来维护同一个 EVI 网络中所有的 ENDC 信息;ENDC配合完成邻居的学习,并与邻居建立EVI-Link。
[0006] 图2给出了现有的采用ENDP进行邻居发现的消息流程图,如图2所示,其具体步 骤如下:
[0007] 步骤200 :在站点边缘设备上部署ENDS、ENDC。
[0008] 步骤201 :ENDC向ENDS发起ENDP注册请求消息,该消息携带本ENDC信息。
[0009] 步骤202 :ENDS向ENDC返回ENDP注册响应消息,消息中携带所有ENDC信息。 [0010] 步骤203 :ENDC收到ENDP注册响应消息后,与其它ENDC建立点对点(P2P)隧道, 即 EVI-Link。
[0011] EVI IS-IS运行在EVI-Link上,边缘设备间的EVI-Link启动(UP)后,需要通过 EVI IS-IS来进行边缘设备间信息的交互。
[0012] 图3给出了现有的EVI邻居建立过程的方法流程图,如图3所示,其具体步骤如 下:
[0013] 步骤301 :边缘设备的控制平面的IS-IS进程发出目的为其他边缘设备的Hello 报文。
[0014] 步骤302 :边缘设备对Hello报文进行隧道封装。
[0015] 步骤303 :边缘设备的数据平面将报文单播给其它边缘设备。
[0016] 步骤304 :其它边缘设备接收到报文,对报文进行解封装,将报文上送控制平面的 IS-IS进程。
[0017] 步骤305 :其它边缘设备的控制平面的IS-IS进程接收Hello报文。
[0018] EVI网络中站点的MAC地址通过站点间交互的链路状态分组(LSP,Link State Packet Data Unit)报文带给对方,并下刷数据平面,从而实现站点间的转发路径的建立。 与IS-IS不同,EVI IS-IS协议运行在EVI Link上,实际上是P2P隧道,所以该交互只发生 在EVI Link的两个端点之间,不进行LSP的泛洪,即LSP的传播只有一跳,这就要求所有的 边缘设备间必须建立全连接。
[0019] 对于EVI网络中站点内部的MAC地址学习,在每个站点网络,边缘设备通过源MAC 地址学习过程建立本地MAC地址表。
[0020] 对于EVI网络中站点之间的MAC地址通告,经过邻居自动发现过程建立了边缘设 备之间的EVI网络后,在该EVI网络上运行EVI IS-IS协议将本地MAC地址信息通告给其 他站点。这样,每个站点都可以获取到其他站点的MAC地址。
[0021] 边缘设备之间建立邻居关系且交互MAC地址之后,就可以在站点间转发流量。
[0022] 对于站点内流量,边缘设备根据目的MAC地址查找MAC地址表,从相应的本地接口 转发。如图1所示,设主机A的MAC地址为Mac 1,主机B的MAC地址为Mac2,主机A发送以 太网帧到主机B时,边缘设备从端口 Ethernetl/Ι收到该以太网帧后,查找MAC地址表得到 Mac2的出接口为Ethernet 1/2,则将以太网帧从端口 Ethernet 1/2发送。
[0023] 对于站点间流量,如图1所示,设站点1内的主机A的MAC地址为Macl,站点3内 的主机C的MAC地址为Mac3,则主机A向主机C发送的以太网帧的传输过程具体如下:
[0024] 步骤01 :边缘设备A接收到该以太网帧之后,根据目的MAC地址表查找本地MAC地 址表,得到的出接口不是本地物理接口,而是EVI-Link接口:EVI-LinkO。
[0025] 步骤02 :边缘设备A对原始以太网帧进行EVI封装,即添加通用路由封装(GRE, Generic Routing Encapsulation)头、外层 IP 头,外层 IP 头中的源 IP 地址为 EVI-LinkO 对应的隧道源IP地址,目的IP地址是EVI-LinkO对应的隧道目的IP地址。
[0026] 步骤03 :边缘设备A将封装后的报文发送到核心网,最终到达异地站点的边缘设 备C。
[0027] 步骤04 :边缘设备C对报文进行解封装。
[0028] 步骤05 :边缘设备C根据解封装后的以太网帧在本地进行目的MAC地址查找,得 到的出接口为本地接口 Ethernetl/Ι,从该接口发送以太网帧。最终,以太网帧到达目的主 机C。
[0029] 边缘设备在扩展VLAN上运行因特网组管理协议(IGMP,Internet Group Management Protocol)窥探(Snooping)/组播侦听者发现(MLD,Multicast Listener Discovery)Snooping协议,将边缘设备之间的EVI-Link接口当作普通的以太网接口,在该 类型的接口上学习路由器端口(R-P〇rt)和成员端口(H-Port),从而形成二层组播转发表。 边缘设备将IGMP/MLD、协议无关组播(PIM,Protocol Independent Multicast)协议报文进 行EVI封装后,通过EVI隧道单播发送到拥有相同扩展VLAN的异地其他站点边缘设备,这 些边缘设备在本地站点内部该扩展VLAN内进行泛洪。
[0030] 图4为现有的位于相同VLAN的异地主机之间交互组播数据的示意图,如图4所 示,其具体步骤如下:
[0031] 步骤401 :组播源发出的组播报文到达指定路由器(DR, Designated Router), DR 发送该组播报文。
[0032] 步骤402 :该组播报文到达组播源所在站点的边缘设备,边缘设备对组播报文进 行复制后,发送给所有的组播成员接口。其中,若组播成员端口是EVI-Link接口,则对复制 后的组播报文进行EVI隧道封装。
[0033] 步骤403 :边缘设备将EVI隧道封装后的组播报文单播发送到各EVI-Link接口对 应的其他边缘设备。
[0034] 步骤404:其他边缘设备对组播报文进行解封装,根据本地组播转发表成员端口 进行复制。
[0035] 步骤405 :其他边缘设备将组播报文从本地成员端口发送,最后到达成员主机。
[0036] 现有的EVI网络的缺点如下:
[0037] 一、为了满足EVI IS-IS的要求,边缘设备间需要全连接。假设EVI网络中有η台 边缘设备,那么应该建立的EVI-Link数量为η (η-1)/2。当边缘设备数目很多时,对网络资 源和中央处理单元(CPU, Central Processing Unit)资源的消耗都很大,也会增加边缘设 备的压力。
[0038] 二、如果站点内的主机迁移到另外一个站点,即MAC地址发生迁移,现有实现中, 边缘设备会通过LSP通知所有的边缘设备,大量MAC地址发生迁移时,会导致边缘设备压力 太大。


【发明内容】

[0039] 本发明提供EVI网络互连方法及边缘设备,以减少EVI网络中的EVILink数量,降 低边缘设备的压力。
[0040] 本发明的技术方案是这样实现的:
[0041] 一种以太网虚拟化互联EVI网络互连方法,所述EVI网络由集群和不属于任何集 群的非客户机构成,所述集群由一个媒体接入控制MAC反射器和一个或多个客户机构成, 各个集群相互独立,所述非客户机、MAC反射器、客户机都为边缘设备,该方法包括 :
[0042] MAC反射器与本集群的各客户机、其他集群的MAC反射器以及各非客户机建立EVI 链路;
[0043] MAC反射器将本地所有单播MAC地址+集群ID通过各EVI链路通告给EVI邻居;
[0044] MAC反射器将本集群内任一客户机通告的该客户机的本地所有单播MAC地址转发 给本集群内其他客户机;
[0045] MAC反射器将本集群内所有客户机通告的各客户机的本地所有单播MAC地址+本 集群ID通告给本集群外的EVI邻居;
[0046] MAC反射器学习本地所有单播MAC地址对应的MAC地址表项;同时还根据各EVI邻 居通告来的单播MAC地址或者单播MAC地址+集群ID,学习 MAC地址表项;
[0047] MAC反射器根据自身的MAC地址表转发数据报文。
[0048] 所述MAC反射器与本集群的各客户机、其他集群的MAC反射器以及各非客户机建 立EVI链路包括:
[0049] MAC反射器接收本集群内的各客户机发来的EVI邻居发现协议ENDP注册请求报 文,向各客户机返回ENDP注册响应报文,该响应报文携带本MAC反射器的IP地址及集群 ID,与客户机建立EVI链路;
[0050] MAC反射器向EVI邻居发现服务器ENDS发送ENDP注册请求报文,该报文携带本 MAC反射器的IP地址及集群ID,接收ENDS返回的ENDP响应报文,该响应报文携带所有MAC 反射器及非客户机信息,MAC反射器根据响应报文的内容与其他MAC反射器及各非客户机 建立EVI链路。
[0051] 所述方法进一步包括:
[0052] 当MAC反射器发现本集群新迁入了 MAC地址时,判断该MAC地址来自集群内部还 是集群外部,若来自集群内部,则在MAC地址表中查找对应的表项,更新该表项的出接口 ID,且将该MAC地址发送给该MAC地址所属的原边缘设备,以便原边缘设备删除对应MAC地 址表项;若来自集群外部,则将该MAC地址通告给本集群外的所有EVI邻居;
[0053] 所述MAC反射器发现本集群新迁入了 MAC地址为:MAC反射器发现本地新迁入了 MAC地址;或者,MAC反射器接收本集群内的客户机通告的该客户机本地新迁入的MAC地址。
[0054] -种EVI网络互连方法,所述EVI网络由集群和不属于任何集群的非客户机构成, 所述集群由一个MAC反射器和一个或多个客户机构成,各个集群相互独立,所述非客户机、 MAC反射器、客户机都为边缘设备,该方法包括:
[0055] 客户机与本集群的MAC反射器建立EVI链路;
[0056] 客户机将本地所有单播MAC地址+本集群标识ID通过EVI链路通告给本集群的 MAC反射器;
[0057] 客户机接收本集群的MAC反射器发来的单播MAC地址,其中,本集群的MAC反射器 发来的单播MAC地址包括:该MAC反射器的本地所有单播MAC地址,以及本集群的其他客户 机通告给该MAC反射器的该其他客户机的本地所有单播MAC地址;
[0058] 客户机根据本地所有单播MAC地址,以及本集群的MAC反射器发来的所有单播MAC 地址,学习 MAC地址表项;同时,在MAC地址表中添加一条默认MAC地址表项,该表项中的出 接口 ID为本客户机与本集群的MAC反射器之间的EVI链路接口 ID ;
[0059] 客户机根据自身的MAC地址表转发数据报文。
[0060] 所述客户机与本集群的MAC反射器建立EVI链路包括:
[0061] 客户机向本集群的MAC反射器发起EVI邻居发现协议ENDP注册请求报文,该报文 携带本客户机的IP地址及集群ID ;客户机接收本集群的MAC反射器返回的ENDP注册应答 报文,该报文携带该MAC反射器的IP地址及集群ID,与该MAC反射器建立EVI链路。
[0062] 所述客户机根据自身的MAC地址表转发数据报文包括:
[0063] 当客户机从以太网接口接收到单播数据报文时,在自身的MAC地址表中查找目的 MAC地址对应表项,若查找到,则根据该表项转发报文;若未查找到,则根据默认MAC地址表 项,将报文发送给本集群的MAC反射器;
[0064] 当客户机接收到来自指定路由器DR的组播数据时,将本客户机与本集群的MAC反 射器之间的EVI链路接口添加为该组播组的组播成员口,以使得该组播数据能够通过该组 播成员口发送给本集群的MAC反射器。
[0065] 一种边缘设备,位于EVI网络中,所述EVI网络由集群和不属于任何集群的非客户 机构成,所述集群由一个MAC反射器和一个或多个客户机构成,各个集群相互独立,所述非 客户机、MAC反射器、客户机都为边缘设备,该边缘设备包括:
[0066] 配置模块:记录本边缘设备为MAC反射器的信息及所属集群ID,记录ENDS信息;
[0067] EVI链路建立模块:根据配置模块记录的信息,与本集群的各客户机、其他集群的 MAC反射器以及各非客户机建立EVI链路;
[0068] 单播MAC地址通告模块:将本地所有单播MAC地址+集群ID通过各EVI链路通告 给EVI邻居;接收各EVI邻居通告来的单播MAC地址,或者单播MAC地址+集群ID ;将本集 群内任一客户机通告的该客户机的本地所有单播MAC地址转发给本集群内其他客户机;将 本集群内所有客户机通告的各客户机的本地所有单播MAC地址+本集群ID通告给本集群 外的EVI邻居;
[0069] MAC地址学习模块:学习本地所有单播MAC地址对应的MAC地址表项,并根据各 EVI邻居通告来的单播MAC地址或者单播MAC地址+集群ID,学习 MAC地址表项;
[0070] 报文转发模块:根据学习到的MAC地址表项转发数据报文。
[0071] 该边缘设备进一步包括:
[0072] MAC迁移处理模块:当发现本集群新迁入了 MAC地址时,判断该MAC地址来自集群 内部还是集群外部,若来自集群内部,则在MAC地址表中查找对应的表项,更新该表项的出 接口 ID,且将该MAC地址发送给该MAC地址所属的原边缘设备,以便原边缘设备删除对应 MAC地址表项;若来自集群外部,则将该MAC地址通告给本集群外的所有EVI邻居。
[0073] 所述EVI链路建立模块进一步用于,接收本集群内的各客户机发来的ENDP注册请 求报文,向各客户机返回ENDP注册响应报文,该响应报文携带本MAC反射器的IP地址及集 群ID,与客户机建立EVI链路;向ENDS发送ENDP注册请求报文,该报文携带本MAC反射器 的IP地址及集群ID,接收ENDS返回的ENDP响应报文,该响应报文携带所有MAC反射器及 非客户机信息,与其他MAC反射器及各非客户机建立EVI链路。
[0074] -种边缘设备,位于EVI网络中,所述EVI网络由集群和不属于任何集群的非客户 机构成,所述集群由一个MAC反射器和一个或多个客户机构成,各个集群相互独立,所述非 客户机、MAC反射器、客户机都为边缘设备,该边缘设备包括:
[0075] 配置模块:记录本边缘设备为客户机的信息及所属集群ID,记录ENDS信息;
[0076] EVI链路建立模块:根据配置模块记录的信息,与本集群的MAC反射器建立EVI链 路;
[0077] 单播MAC地址通告模块:将本地所有单播MAC地址+本集群标识ID通过EVI链路 通告给本集群的MAC反射器;接收本集群的MAC反射器发来的单播MAC地址,其中,本集群 的MAC反射器发来的单播MAC地址包括:该MAC反射器的本地所有单播MAC地址,以及本集 群的其他客户机通告给该MAC反射器的该其他客户机的本地所有单播MAC地址;
[0078] MAC地址学习模块:根据本地所有单播MAC地址,并根据本集群的MAC反射器发来 的所有单播MAC地址,学习 MAC地址表项;同时,在MAC地址表中添加一条默认MAC地址表 项,该表项中的出接口 ID为本客户机与本集群的MAC反射器之间的EVI链路接口 ID ;
[0079] 报文转发模块:根据学习到的MAC地址表项转发数据报文。
[0080] 所述EVI链路建立模块进一步用于,向本集群的MAC反射器发起ENDP注册请求报 文,该报文携带本客户机的IP地址及集群ID ;接收本集群的MAC反射器返回的ENDP注册 应答报文,该报文携带该MAC反射器的IP地址及集群ID,与该MAC反射器建立EVI链路。
[0081] 所述报文转发模块进一步用于,当从以太网接口接收到单播数据报文时,在MAC 地址表中查找目的MAC地址对应表项,若查找到,则根据该表项转发报文;若未查找到,则 根据默认MAC地址表项,将报文发送给本集群的MAC反射器;当接收到来自DR的组播数据 时,将本客户机与本集群的MAC反射器之间的EVI链路接口添加为该组播组的组播成员口, 以使得该组播数据能够通过该组播成员口发送给本集群的MAC反射器。
[0082] 进一步包括:
[0083] MAC迁移上报模块:发现本地新迁入了 MAC地址,将该MAC地址通告给本集群的 MAC反射器。
[0084] 可见,本发明大大减少了 EVI网络中的EVI Link数量,降低了边缘设备的压力。

【专利附图】

【附图说明】
[0085] 图1为现有的EVI整体网络的组网示意图;
[0086] 图2为现有的采用ENDP进行邻居发现的消息流程图;
[0087] 图3为现有的EVI邻居建立过程的方法流程图;
[0088] 图4为现有的位于相同VLAN的异地主机之间交互组播数据的示意图;
[0089] 图5为本发明实施例提供的在EVI网络中进行初始配置的方法流程图;
[0090] 图6为本发明实施例提供的在EVI网络中配置MAC Reflector的示例图;
[0091] 图7为本发明实施例一提供的EVI网络中的邻居发现方法流程图;
[0092] 图8为本发明实施例二提供的EVI网络中的邻居发现方法流程图;
[0093] 图9为本发明实施例提供的EVI网络中的MAC地址学习方法流程图;
[0094] 图10为本发明实施例提供的EVI网络中的单播流量转发方法流程图;
[0095] 图11为本发明实施例提供的MAC地址迁移处理的方法流程图;
[0096] 图12为本发明实施例一提供的边缘设备的组成示意图;
[0097] 图13为本发明实施例二提供的边缘设备的组成示意图。

【具体实施方式】
[0098] 下面结合附图及具体实施例对本发明再作进一步详细的说明。
[0099] 本发明的核心思路如下:
[0100] 为了减少边缘设备的逻辑全连接数目,在边缘设备中选取一台或多台边缘设备作 为MAC反射器(Reflector)。对于任一 Reflector,在剩余边缘设备中选取部分边缘设备作 为该Reflector的客户机(Client),其中一台Client只能属于一个Reflector。对于任一 Reflector,该 Ref lector 和其所有 Client 形成一个集群(Cluster)。既不是 Reflector 也不是Client的边缘设备称为非客户机(Non-Client)。其中,各个集群相互独立,即每一 Reflector和每一 Client唯一地属于一个集群。
[0101] EVI Link的建立情况如下:
[0102] 1)每台Client分别与所属的Reflector建立EVI Link,属于同一 Reflector的 两两Client之间不建立EVI Link ;
[0103] 2)两两 Ref lector 之间建立 EVI Link ;
[0104] 3)两两 Non-Client 之间建立 EVI Link ;
[0105] 4)对于任 一 Non-Client,该 Non-Client 分别与各 Ref lector 建立 EVI Link。
[0106] 图5为本发明实施例提供的在EVI网络中进行初始配置的方法流程图,如图5所 示,其具体步骤如下:
[0107] 步骤501 :在EVI网络中选择一台或多台性能较高的边缘设备作为MAC反射器 (Reflector);对于每台Reflector,在EVI网络的剩余边缘设备中选择部分边缘设备作为 该Reflector的Client,其中,Client和其所属Reflector属于同一集群,不属于任何集群 的边缘设备作为Non-Client,且各个集群相互独立,即每个Client和每个Reflector只能 唯一地属于一个集群;在EVI网络的边缘设备上部署ENDC或ENDS,其中,ENDS和Client是 互斥的,即一台边缘设备作为Client后,不能再作为ENDS。
[0108] 步骤502 :在每台边缘设备上配置EVI隧道,且若该边缘设备属于一个集群,在该 边缘设备的每条EVI隧道上配置集群ID。
[0109] 其中,若边缘设备为ENDC,则对于与ENDS连接的EVI隧道,除了配置隧道的源IP 地址外,还需配置ENDS的IP地址,即隧道的目的IP地址。
[0110] 若边缘设备为Client,则对于与Reflector连接的EVI隧道,除了配置隧道的源 IP地址外,还需配置Reflector的IP地址,即隧道的目的IP地址。
[0111] 图6为本发明实施例提供的在EVI网络中配置MAC Reflector的示例图,如图6所 示,边缘设备 ED_A、ED_E 为 MAC Ref lector,边缘设备 ED_B、ED_C 作为 Client 和 Ref lector : ED_A共同组成集群1,边缘设备ED_F、ED_G作为Client和Reflector :ED_E共同组成集群 2,边缘设备ED_D不属于任何集群,作为Non-Client。
[0112] 图7为本发明实施例一提供的EVI网络中的邻居发现方法流程图,本实施例中, ENDS不是Reflector,如图7所示,其具体步骤如下:
[0113] 步骤701 :对于任一 Client,该Client向本集群的Reflector发起ENDP注册请求 报文,该报文携带本Client信息包括:本Client的IP地址、集群ID等。
[0114] 步骤702 :对于任一 Reflector,该Reflector接收本集群的各Client发来的ENDP 注册请求报文,向本集群的各Client返回ENDP注册应答报文,该报文仅携带本Reflector 信息包括:本Reflector的IP地址、集群ID等。
[0115] 步骤703 :任一 Client接收到本集群的Reflector返回的ENDP注册应答报文,该 Client与该Reflector之间建立P2P隧道,即建立EVI Link。
[0116] 步骤704 :各Reflector和各Non-Client分别向ENDS发起ENDP注册请求报文, 该报文携带本ENDC信息包括:本ENDC的IP地址等。
[0117] 步骤705 :EDNS接收各Reflector和各Non-Client发来的ENDP注册请求报文,分 别向各Reflector和各Non-Client返回ENDP注册应答报文,该报文中携带所有Reflector 和所有Non-Client的ENDC信息。
[0118] 步骤706 :各Reflector和各Non-Client接收到ENDP注册应答报文后,两两 Reflector之间、两两Non-Client之间、以及任一 Reflector和任一 Non-Client之间建立 P2P隧道,即建立EVI Link。
[0119] 图8为本发明实施例二提供的EVI网络中的邻居发现方法流程图,本实施例中, ENDS是Reflector,如图8所示,其具体步骤如下:
[0120] 步骤801 :对于任一 Client,该Client向本集群的Reflector发起ENDP注册请求 报文,该报文携带本Client信息包括:本Client的IP地址、集群ID等。
[0121] 步骤802 :对于任一 Reflector,该Reflector接收本集群的各Client发来的ENDP 注册请求报文,向本集群的各Client返回ENDP注册应答报文,该报文仅携带本Reflector 信息包括:本Reflector的IP地址、集群ID等。
[0122] 步骤803 :任一 Client接收到本集群的Reflector返回的ENDP注册应答报文,该 Client与该Reflector之间建立P2P隧道,即建立EVI Link。
[0123] 步骤 804 :各 Ref lector 和各 Non-Client 分别向作为 ENDS 的 Ref lector 发起 ENDP 注册请求报文,该报文携带本ENDC信息包括:本ENDC的IP地址等。
[0124] 步骤805 :作为ENDS的Ref lector接收其他Ref lector和各Non-Client发来的 ENDP注册请求报文,分别向其他各Ref lector和各Non-Client返回ENDP注册应答报文,该 报文中携带所有Reflector和所有Non-Client的ENDC信息。
[0125] 步骤806 :其他Reflector和各Non-Client接收到ENDP注册应答报文后,两两 Reflector之间(包括作为ENDS的Ref lector和其他Reflector之间)、两两Non-Client之 间、以及任一 Reflector (包括作为ENDS的Reflector)和任一 Non-Client之间建立P2P 隧道,即建立EVI Link。
[0126] 图9为本发明实施例提供的EVI网络中的MAC地址学习方法流程图,如图9所示, 其具体步骤如下:
[0127] 步骤901 :对于任一 Client,该Client将自身学习到的各本地单播MAC地址及本 集群ID携带在EVI IS-IS LSP报文的MAC可达性(Reachability)类型长度值(TLV,Type Length and Value)中,将该报文通过EVI Link发送给本集群的Reflector。
[0128] 步骤902 :对于任一 Reflector,该Reflector将自身学习到的各本地单播MAC地 址及本集群ID携带在EVI IS-IS LSP报文的MAC可达性TLV中,将该报文通过各EVI Link 发送给各EVI邻居包括:本集群的各Client以及集群外的各边缘设备;当该Reflector接 收到本集群的任一 Client发来的LSP报文,根据报文中的MAC地址学习 MAC地址表项,同 时将该LSP报文通过各EVI Link发送给各EVI邻居包括:本集群的各Client以及集群外 的各边缘设备。
[0129] 可见,对于Client,其只需学习本集群内的边缘设备下挂的主机的MAC地址,而无 需学习本集群外的主机的MAC地址;对于Ref lector,其既需要学习本集群内的边缘设备下 挂的主机的MAC地址,也需要学习集群外的边缘设备下挂的主机的MAC地址。
[0130] 由于本发明中涉及集群的概念,因此,需要在MAC地址表中添加一个集群标志 (flag),用于标识学习到的MAC地址来源于集群内部还是集群外部。例如:设定当集群flag 置为0时,表示该MAC地址来源于集群内部;当集群flag置为1时,表示该MAC来源于集群 外部。其中,由于Client中的MAC地址只能来源于集群内部,因此,Client学习到的所有 MAC地址的集群flag均应置为0。
[0131] 本发明实施例中,将LSP报文中的MAC可达性TLV中的保留(RESV)字段定义为集 群ID字段。例如:当集群ID为0时,表示EVI网络中没有集群;真正的集群ID可以用正整 数标识,例如:1、2、3、4、···、!!,η为集群总数。
[0132] 扩展后的MAC可达性TLV格式如下:
[0133] 1)类型(Type) :1字节,通常取值0x93 ;
[0134] 2)长度(Length) :1 字节;
[0135] 3)值(Value):
[0136] 拓扑标识(Topology-id) :2字节,默认取值0 ;
[0137] 信任位(Confidence) :1字节,默认取值1 ;
[0138] 集群ID :4比特(bit),取值为0时,表示没有集群;取值为正整数时,表示对应的 集群ID ;
[0139] 虚拟局域网标识(VLAN-ID) :12bit。
[0140] 步骤903 :对于任一边缘设备,该边缘设备接收到自身的EVI邻居发来的LSP报 文,将报文中的MAC地址和入接口 ID学习到MAC地址表中,并根据报文的MAC可达性TLV 中的集群ID字段在学习到的MAC地址表项中添加该MAC地址的集群flag位。
[0141] 具体地,若本边缘设备为Ref lector,且LSP报文的MAC可达性TLV中的集群ID 字段与自身的集群ID相同,则将MAC地址表项中该MAC地址的集群flag位置为0,表示该 MAC地址来源于集群内部;否则,将该MAC地址的集群flag位置为1,表示该MAC地址来源 于集群外部。
[0142] 若边缘设备为Client,则由于其只能学习到本集群内部的边缘设备的MAC地址, 因此,当其接收到LSP报文时,学习到的MAC地址的集群flag位都应置为0。
[0143] 由于同一集群内部的Client之间是不建立EVI邻居,即不建立EVI Link的,因此, 必须通过Reflector才能学习到彼此的MAC地址。
[0144] 步骤904 :对于任一Client,该Client在自身MAC地址表中添加一条默认MAC地址 表项,该表项中的MAC地址为默认MAC地址,如0-0-0,出接口 ID为本Client与Reflector 之间的EVI Link接口 ID,集群flag位为0。
[0145] 对于一个Client来说,其只存在一条EVI Link,即其与本集群的Reflector之间 的EVI Link,且其只能学习到自身下挂设备及本集群内的边缘设备的MAC地址,这样,其与 任何远端设备间的流量都需要通过Reflector来转发,因此,需要在其MAC地址表中生成一 条默认MAC地址表项,表项的出接口 ID为本集群的Reflector的EVI-Link接口 ID,这样, 当其接收到未知单播报文时,可匹配默认MAC地址表项而将报文转发给Ref lector。
[0146] 如图6所示,边缘设备ED_B (Client)上的MAC地址表如下表1所示:
[0147]

【权利要求】
1. 一种以太网虚拟化互联EVI网络互连方法,其特征在于,所述EVI网络由集群和不 属于任何集群的非客户机构成,所述集群由一个媒体接入控制MAC反射器和一个或多个客 户机构成,各个集群相互独立,所述非客户机、MAC反射器、客户机都为边缘设备,该方法包 括: MAC反射器与本集群的各客户机、其他集群的MAC反射器以及各非客户机建立EVI链 路; MAC反射器将本地所有单播MAC地址+集群ID通过各EVI链路通告给EVI邻居; MAC反射器将本集群内任一客户机通告的该客户机的本地所有单播MAC地址转发给本 集群内其他客户机; MAC反射器将本集群内所有客户机通告的各客户机的本地所有单播MAC地址+本集群 ID通告给本集群外的EVI邻居; MAC反射器学习本地所有单播MAC地址对应的MAC地址表项;同时还根据各EVI邻居 通告来的单播MAC地址或者单播MAC地址+集群ID,学习MAC地址表项; MAC反射器根据自身的MAC地址表转发数据报文。
2. 根据权利要求1所述的方法,其特征在于,所述MAC反射器与本集群的各客户机、其 他集群的MAC反射器以及各非客户机建立EVI链路包括: MAC反射器接收本集群内的各客户机发来的EVI邻居发现协议ENDP注册请求报文,向 各客户机返回ENDP注册响应报文,该响应报文携带本MAC反射器的IP地址及集群ID,与客 户机建立EVI链路; MAC反射器向EVI邻居发现服务器ENDS发送ENDP注册请求报文,该报文携带本MAC反 射器的IP地址及集群ID,接收ENDS返回的ENDP响应报文,该响应报文携带所有MAC反射 器及非客户机信息,MAC反射器根据响应报文的内容与其他MAC反射器及各非客户机建立 EVI链路。
3. 根据权利要求1所述的方法,其特征在于,所述方法进一步包括: 当MAC反射器发现本集群新迁入了 MAC地址时,判断该MAC地址来自集群内部还是集 群外部,若来自集群内部,则在MAC地址表中查找对应的表项,更新该表项的出接口 ID,且 将该MAC地址发送给该MAC地址所属的原边缘设备,以便原边缘设备删除对应MAC地址表 项;若来自集群外部,则将该MAC地址通告给本集群外的所有EVI邻居; 所述MAC反射器发现本集群新迁入了 MAC地址为:MAC反射器发现本地新迁入了 MAC地 址;或者,MAC反射器接收本集群内的客户机通告的该客户机本地新迁入的MAC地址。
4. 一种EVI网络互连方法,其特征在于,所述EVI网络由集群和不属于任何集群的非客 户机构成,所述集群由一个MAC反射器和一个或多个客户机构成,各个集群相互独立,所述 非客户机、MAC反射器、客户机都为边缘设备,该方法包括: 客户机与本集群的MAC反射器建立EVI链路; 客户机将本地所有单播MAC地址+本集群标识ID通过EVI链路通告给本集群的MAC 反射器; 客户机接收本集群的MAC反射器发来的单播MAC地址,其中,本集群的MAC反射器发来 的单播MAC地址包括:该MAC反射器的本地所有单播MAC地址,以及本集群的其他客户机通 告给该MAC反射器的该其他客户机的本地所有单播MAC地址; 客户机根据本地所有单播MAC地址,以及本集群的MAC反射器发来的所有单播MAC地 址,学习MAC地址表项;同时,在MAC地址表中添加一条默认MAC地址表项,该表项中的出接 口 ID为本客户机与本集群的MAC反射器之间的EVI链路接口 ID ; 客户机根据自身的MAC地址表转发数据报文。
5. 根据权利要求4所述的方法,其特征在于,所述客户机与本集群的MAC反射器建立 EVI链路包括: 客户机向本集群的MAC反射器发起EVI邻居发现协议ENDP注册请求报文,该报文携带 本客户机的IP地址及集群ID ;客户机接收本集群的MAC反射器返回的ENDP注册应答报文, 该报文携带该MAC反射器的IP地址及集群ID,与该MAC反射器建立EVI链路。
6. 根据权利要求4所述的方法,其特征在于,所述客户机根据自身的MAC地址表转发数 据报文包括: 当客户机从以太网接口接收到单播数据报文时,在自身的MAC地址表中查找目的MAC 地址对应表项,若查找到,则根据该表项转发报文;若未查找到,则根据默认MAC地址表项, 将报文发送给本集群的MAC反射器; 当客户机接收到来自指定路由器DR的组播数据时,将本客户机与本集群的MAC反射器 之间的EVI链路接口添加为该组播组的组播成员口,以使得该组播数据能够通过该组播成 员口发送给本集群的MAC反射器。
7. -种边缘设备,位于EVI网络中,其特征在于,所述EVI网络由集群和不属于任何集 群的非客户机构成,所述集群由一个MAC反射器和一个或多个客户机构成,各个集群相互 独立,所述非客户机、MAC反射器、客户机都为边缘设备,该边缘设备包括: 配置模块:记录本边缘设备为MAC反射器的信息及所属集群ID,记录ENDS信息; EVI链路建立模块:根据配置模块记录的信息,与本集群的各客户机、其他集群的MAC 反射器以及各非客户机建立EVI链路; 单播MAC地址通告模块:将本地所有单播MAC地址+集群ID通过各EVI链路通告给 EVI邻居;接收各EVI邻居通告来的单播MAC地址,或者单播MAC地址+集群ID ;将本集群 内任一客户机通告的该客户机的本地所有单播MAC地址转发给本集群内其他客户机;将本 集群内所有客户机通告的各客户机的本地所有单播MAC地址+本集群ID通告给本集群外 的EVI邻居; MAC地址学习模块:学习本地所有单播MAC地址对应的MAC地址表项,并根据各EVI邻 居通告来的单播MAC地址或者单播MAC地址+集群ID,学习 MAC地址表项; 报文转发模块:根据学习到的MAC地址表项转发数据报文。
8. 根据权利要求7所述的边缘设备,其特征在于,该边缘设备进一步包括: MAC迁移处理模块:当发现本集群新迁入了 MAC地址时,判断该MAC地址来自集群内部 还是集群外部,若来自集群内部,则在MAC地址表中查找对应的表项,更新该表项的出接口 ID,且将该MAC地址发送给该MAC地址所属的原边缘设备,以便原边缘设备删除对应MAC地 址表项;若来自集群外部,则将该MAC地址通告给本集群外的所有EVI邻居。
9. 根据权利要求7所述的边缘设备,其特征在于,所述EVI链路建立模块进一步用于, 接收本集群内的各客户机发来的ENDP注册请求报文,向各客户机返回ENDP注册响应报文, 该响应报文携带本MAC反射器的IP地址及集群ID,与客户机建立EVI链路;向ENDS发送 ENDP注册请求报文,该报文携带本MAC反射器的IP地址及集群ID,接收ENDS返回的ENDP 响应报文,该响应报文携带所有MAC反射器及非客户机信息,与其他MAC反射器及各非客户 机建立EVI链路。
10. -种边缘设备,位于EVI网络中,其特征在于,所述EVI网络由集群和不属于任何集 群的非客户机构成,所述集群由一个MAC反射器和一个或多个客户机构成,各个集群相互 独立,所述非客户机、MAC反射器、客户机都为边缘设备,该边缘设备包括: 配置模块:记录本边缘设备为客户机的信息及所属集群ID,记录ENDS信息; EVI链路建立模块:根据配置模块记录的信息,与本集群的MAC反射器建立EVI链路; 单播MAC地址通告模块:将本地所有单播MAC地址+本集群标识ID通过EVI链路通 告给本集群的MAC反射器;接收本集群的MAC反射器发来的单播MAC地址,其中,本集群的 MAC反射器发来的单播MAC地址包括:该MAC反射器的本地所有单播MAC地址,以及本集群 的其他客户机通告给该MAC反射器的该其他客户机的本地所有单播MAC地址; MAC地址学习模块:根据本地所有单播MAC地址,并根据本集群的MAC反射器发来的所 有单播MAC地址,学习 MAC地址表项;同时,在MAC地址表中添加一条默认MAC地址表项,该 表项中的出接口 ID为本客户机与本集群的MAC反射器之间的EVI链路接口 ID ; 报文转发模块:根据学习到的MAC地址表项转发数据报文。
11. 根据权利要求10所述的边缘设备,其特征在于,所述EVI链路建立模块进一步用 于,向本集群的MAC反射器发起ENDP注册请求报文,该报文携带本客户机的IP地址及集群 ID ;接收本集群的MAC反射器返回的ENDP注册应答报文,该报文携带该MAC反射器的IP地 址及集群ID,与该MAC反射器建立EVI链路。
12. 根据权利要求10所述的边缘设备,其特征在于,所述报文转发模块进一步用于,当 从以太网接口接收到单播数据报文时,在MAC地址表中查找目的MAC地址对应表项,若查找 至IJ,则根据该表项转发报文;若未查找到,则根据默认MAC地址表项,将报文发送给本集群 的MAC反射器;当接收到来自DR的组播数据时,将本客户机与本集群的MAC反射器之间的 EVI链路接口添加为该组播组的组播成员口,以使得该组播数据能够通过该组播成员口发 送给本集群的MAC反射器。
13. 根据权利要求10所述的边缘设备,其特征在于,进一步包括: MAC迁移上报模块:发现本地新迁入了 MAC地址,将该MAC地址通告给本集群的MAC反 射器。
【文档编号】H04L12/751GK104243260SQ201310251651
【公开日】2014年12月24日 申请日期:2013年6月21日 优先权日:2013年6月21日
【发明者】乔辉, 林鹏程 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1