CN113938448A - 一种基于evpn技术的自主可控虚拟交换机的实现方法 - Google Patents
一种基于evpn技术的自主可控虚拟交换机的实现方法 Download PDFInfo
- Publication number
- CN113938448A CN113938448A CN202111167009.8A CN202111167009A CN113938448A CN 113938448 A CN113938448 A CN 113938448A CN 202111167009 A CN202111167009 A CN 202111167009A CN 113938448 A CN113938448 A CN 113938448A
- Authority
- CN
- China
- Prior art keywords
- evpn
- controller
- host
- virtual switch
- data packet
- 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
Links
Images
Classifications
-
- 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/70—Virtual switches
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于EVPN技术的自主可控虚拟交换机的实现方法,借助SDN网络架构,实现了EVPN特有的网络管理、运维功能,从而实现了底层虚拟交换机的自主可控目标。扩展SDN控制器中的核心模块功能,实现自动化EVPN部署、ARP洪泛抑制、静默主机、数据中心间VxLAN流量转发和动态生成路由策略等重要EVPN功能。本发明的实现方法简单,实现灵活而且效率高。
Description
技术领域
本发明属于网络虚拟化中虚拟设备自主运维领域,尤其涉及一种基于EVPN技术的自主可控虚拟交换机的实现方法。
背景技术
现有的虚拟专用局域网服务VPLS(Virtual Private LANService)技术能为企业用户提供多点到多点的广域以太网服务。但是该技术存在三方面弊端:1)网络部署难:现有技术要求网络设备要学习所有其他设备的MAC地址。而实际上,MAC的表容量是有限的。因此,该技术对设备硬件要求苛刻;2)适用的网络规模有限:该技术无法适用于大规模网络。没有控制平面,一旦MAC地址变化或故障发生切换,需要重新泛洪学习L2转发表,收敛性差。3)链路带宽利用率低。而随着数据中心网络的广泛应用,现有的技术已无法满足大规模复杂数据中心的需求。因此,EVPN技术应运而生。EVPN全称为Ethernet Virtual PrivateNetwork,是一种用于实现网络二层互通的vpn技术。通过扩展BGP协议的NLRI,新增了几种类型的BGP EVPN路由类型。主要是针对L2VPN(VPLS,Virtual Private LAN Service)的缺陷而提出;其问题范畴包括:ARP洪泛抑制、静默主机、数据中心间VxLAN流量转发和动态生成路由策略(RP)等方面。它是下一代全业务承载的VPN解决方案。
发明内容
本发明的目的在于针对现有技术的不足,提供一种基于EVPN技术的自主可控虚拟交换机的实现方法。
本发明的目的是通过以下技术方案来实现的:一种基于EVPN技术的自主可控虚拟交换机的实现方法,基于SDN网络架构,在控制平面扩展SDN控制器中的核心模块功能,使其全面支持EVPN功能并部署。通过南向接口,向数据平面虚拟交换机下发EVPN配置信息,使虚拟交换机支持EVPN的功能特性。具体包括:
(1)解决主机静默问题:EVPN控制器从北向接口处学习新主机的创建和迁移情况,并通知网络内的其他主机,在不增加额外网络的前提下解决主机静默问题;
(2)实现ARP洪泛抑制:通过EVPN技术可以最小化给定节点范围之外的广播帧洪泛。对于ARP广播包,EVPN控制器在运行时动态维护一张“ARP-IP”映射表,消除数据平面ARP信息广播时的洪泛。
(3)动态生成路由策略:动态生成路由策略用于处理属于特定以太网虚拟化互联EVI设备之间的流量。同时允许动态地更改RP并将其与EVI关联。
(4)实现数据中心间VxLAN流量转发:在云计算数据中心网络中,虚拟交换机收到的EVI之间流量数据包,包括本地EVI设备需要通过隧道技术转发到其他数据中心EVI设备的数据包。EVPN控制器通过目的MAC地址判断数据包的归属。如果是本地数据包,则通过动态路由策略下发转发流表;如果是发往其他数据中心的数据包,EVPN控制器会将该数据包加上VxLAN封装后,下发转发流表,将该数据包发送到边缘虚拟交换机。
进一步地,扩展SDN控制器核心模块,使其可以解决EVPN中出现的静默主机问题。在用户向网络创建/迁移新主机时,会被要求向EVPN控制器北向接口提供主机的IP地址和MAC地址的信息。EVPN控制器接收到用户的北向接口请求后,将主机信息生成一条数据库条目,存储在EVPN控制器的数据库中。因此,控制器就会感知到创建/迁移主机的存在。随后,控制器会向数据库中存储的每个主机发送数据包,表示创建/迁移主机的出现。
进一步地,扩展SDN控制器核心模块,使其支持ARP洪泛抑制功能。在虚拟交换机与EVPN控制器建立连接时,EVPN控制器会为虚拟交换机配置一条默认流表:将虚拟交换机匹配失败的数据包发送给EVPN控制器,并记录交换机的信息。虚拟交换机在第一次收到ARP数据包时,将数据包上送给EVPN控制器。EVPN控制器收到ARP数据包时,查找“ARP-IP”映射表,将ARP查询目的主机的MAC地址单播给源主机。源主机收到EVPN控制器发出的ARP查询结果后,将其存储在自己的ARP缓存中,完成ARP查询。
进一步地,“ARP-IP”映射表基于EVPN控制器的数据库生成。
进一步地,扩展SDN控制器核心模块,使其支持动态生成路由策略功能。EVPN控制器的数据库中存有网络中所有主机和交换机的节点信息。通过LLDP协议的方式,获取节点之间的连通性,进而获得全网的拓扑。由于虚拟交换机中最开始只有一条默认流表,因此当交换机收到EVI间的流量数据包时,将把这个数据包上送给EVPN控制器。当EVPN控制器收到流量路由数据包时,通过查找源主机与目的主机的位置,使用最短路算法计算出此条流的路径。并为路径上的所有虚拟交换机下发路由流表。由于虚拟交换机与主机随时都有可能迁移/删除,因此路由流表将被设置一个超时属性,实现了动态的EVI设备路由。
进一步地,扩展SDN控制器核心模块,使其支持数据中心间VxLAN流量转发。EVPN控制器中的数据库会存储网络内所有的主机信息。当EVPN控制器收到流量路由数据包且无法在数据库内找到目的主机的信息时,说明目的主机位于网络外的其他数据中心。这时EVPN计算上送此数据包的虚拟交换机与边缘交换机的最短路径,将此数据包打上VxLAN标签并给路径上的所有虚拟交换机下发流表,完成数据中心间VxLAN流量转发。
本发明的有益成果是:本发明借助SDN网络架构,在控制平面SDN控制器中实现了EVPN特有的网络管理、运维功能,进而实现了底层虚拟交换机的自主可控目标。本发明方法简单、实现灵活,具有较强的实用性。
附图说明
图1是本发明基于EVPN技术的自主可控虚拟交换机的实现方法的流程图。
具体实施方式
如图1所示,本发明一种基于EVPN技术的自主可控虚拟交换机的实现方法,加载EVPN控制器的配置信息后,数据平面虚拟交换机可以实现一定程度的自主可控、智能运维,减轻网络配置人员的工作负担,使整个虚拟化云计算网络变得更加灵活智能。具体如下:
1、连接控制器与交换机:管理员通过OpenStack向EVPN控制器发送EVPN部署命令,调用Neutron组件将EVPN配置以JSON格式发送到EVPN控制器。EVPN控制器将接收的JSON对象转换为YANG模型,最后EVPN控制器使用OpenFLow南向协议将配置信息及默认流表发送给底层虚拟交换机,完成EVPN自动化部署。在本实施例中,EVPN控制器基于开源OpenDayLight控制器开发,北向对接OpenStack Neutron API,南向协议基于OpenFLow,底层虚拟交换机采用OpenvSwitch。
2、获取全网拓扑:EVPN控制器存储所连接的虚拟交换机信息并创建主机。在虚拟化的数据中心中,主机启动时必须生成ARP(GARP)请求来宣布其存在,但是该过程可能导致网络泛洪增加额外的网络负载。在EVPN技术网络中,主机启动时将不发送ARP请求,导致EVPN控制器和其他网络节点不知道该主机的存在,引发静默主机问题。本发明中,在用户向网络创建/迁移新主机时,会被要求向EVPN控制器北向接口OpenStack Neutron API以JSON格式,提供主机的IP地址和MAC地址等信息。EVPN控制器接收到用户的北向接口请求后,解析JSON数据格式,提取主机信息,从而存储主机信息。生成一条数据库条目,存储在EVPN控制器的OVSDB数据库中。因此,EVPN控制器就会感知到创建/迁移主机的存在。随后,EVPN控制器会向数据库中存储的每个主机发送数据包,表示创建/迁移主机的出现,以此获得全网拓扑,解决主机静默问题,且不会引入过多的网络流量。
3、根据收到的不同报文执行不同的动作。与传统网络中的交换机收到ARP数据包后的广播动作不同,如果虚拟交换机收到ARP包,将查找“ARP-IP”映射表。具体过程是:基于EVPN控制器为虚拟交换机配置的默认流表,虚拟交换机在第一次收到ARP数据包时,将数据包通过“packet-in”上送给EVPN控制器。EVPN控制器收到“packet-in”数据包时,通过OnPacketReceive函数中的“packet-in handler”查找“ARP-IP”映射表(“ARP-IP”映射表基于EVPN控制器的OVSDB数据库生成),将ARP查询目的主机的MAC地址单播给源主机。其中,“ARP-IP”映射表实际上是一张MAC地址与IP地址的哈希表。源主机收到EVPN控制器发出的ARP查询结果后,将其存储在自己的ARP缓存中,完成ARP查询。减少了ARP数据包广播所带来的额外网络负载,实现ARP洪泛抑制。自主控制数据平面的ARP信息传播方式,减少了数据平面虚拟交换机的工作负担,提升虚拟化架构中云计算业务的性能。
4、如果交换机收到流量报文需要进行路由,则查找EVPN控制器数据库,具体是:EVPN控制器的OVSDB数据库中存有网络中所有主机和交换机的MAC地址IP地址信息。通过LLDP协议的方式,获取节点之间的连通性,进而获得全网的拓扑。由于虚拟交换机中最开始只有一条默认流表,因此当交换机收到以太网虚拟化互联EVI间的流量数据包时,将把这个数据包通过“packet-in”上送给EVPN控制器。当EVPN控制器“packet-in handler”收到流量路由数据包时,通过全网拓扑确定源主机与目的主机的位置。
5、如果流量中的目的主机为本地主机,使用Dijkstra最短路算法计算出此条流的路径,并为路径上的所有虚拟交换机下发路由流表。由于交换机与主机随时都有可能迁移/删除,因此路由流表将被设置一个10s的“timeout”超时属性,即使拓扑发生变化,也可以及时计算正确的路由路径,支持动态生成路由策略功能,实现了动态的EVI设备路由。动态路由策略对于传统分布式网络和RFC EVPN网络具有高可扩展性,高灵活性的优势,实现了网络的动态运维管理。
6、EVPN控制器中的数据库会存储网络内所有的主机信息,如果EVPN控制器收到流量路由数据包且无法在数据库内找到目的主机的信息时,说明目的主机位于网络外的其他数据中心。这时EVPN控制器计算上送此数据包的虚拟交换机与边缘交换机的最短路径,将此数据包打上VxLAN标签后通过“packet-out”发出。并给路径上的所有虚拟交换机下发流表,完成数据中心间VxLAN流量转发。
由于EVPN技术要求抽象和分离控制面,以解决负载均衡、洪泛抑制等问题,而SDN架构控制器和数据平面分离等特点,暗合EVPN技术的核心目标,故在SDN架构上实现EVPN技术是十分契合的。本发明研究设计了一套用于云计算虚拟化场景中,基于EVPN技术的虚拟交换机自主可控的方法,实现自动化EVPN部署、ARP洪泛抑制、静默主机、数据中心间VxLAN流量转发和动态生成路由策略等重要EVPN功能。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
Claims (6)
1.一种基于EVPN技术的自主可控虚拟交换机的实现方法,其特征在于,基于SDN网络架构,在控制平面扩展SDN控制器中的核心模块功能,使其全面支持EVPN功能并部署。通过南向接口,向数据平面虚拟交换机下发EVPN配置信息,使虚拟交换机支持EVPN的功能特性。具体包括:
(1)解决主机静默问题:EVPN控制器从北向接口处学习新主机的创建和迁移情况,并通知网络内的其他主机,在不增加额外网络的前提下解决主机静默问题;
(2)实现ARP洪泛抑制:通过EVPN技术可以最小化给定节点范围之外的广播帧洪泛。对于ARP广播包,EVPN控制器在运行时动态维护一张“ARP-IP”映射表,消除数据平面ARP信息广播时的洪泛。
(3)动态生成路由策略:动态生成路由策略用于处理属于特定以太网虚拟化互联EVI设备之间的流量。同时允许动态地更改RP并将其与EVI关联。
(4)实现数据中心间VxLAN流量转发:在云计算数据中心网络中,虚拟交换机收到的EVI之间流量数据包,包括本地EVI设备需要通过隧道技术转发到其他数据中心EVI设备的数据包。EVPN控制器通过目的MAC地址判断数据包的归属。如果是本地数据包,则通过动态路由策略下发转发流表;如果是发往其他数据中心的数据包,EVPN控制器会将该数据包加上VxLAN封装后,下发转发流表,将该数据包发送到边缘虚拟交换机。
2.根据权利要求1所述基于EVPN技术的自主可控虚拟交换机的实现方法,其特征在于,扩展SDN控制器核心模块,使其可以解决EVPN中出现的静默主机问题。在用户向网络创建/迁移新主机时,会被要求向EVPN控制器北向接口提供主机的IP地址和MAC地址的信息。EVPN控制器接收到用户的北向接口请求后,将主机信息生成一条数据库条目,存储在EVPN控制器的数据库中。因此,控制器就会感知到创建/迁移主机的存在。随后,控制器会向数据库中存储的每个主机发送数据包,表示创建/迁移主机的出现。
3.根据权利要求1所述基于EVPN技术的自主可控虚拟交换机的实现方法,其特征在于,扩展SDN控制器核心模块,使其支持ARP洪泛抑制功能。在虚拟交换机与EVPN控制器建立连接时,EVPN控制器会为虚拟交换机配置一条默认流表:将虚拟交换机匹配失败的数据包发送给EVPN控制器,并记录交换机的信息。虚拟交换机在第一次收到ARP数据包时,将数据包上送给EVPN控制器。EVPN控制器收到ARP数据包时,查找“ARP-IP”映射表,将ARP查询目的主机的MAC地址单播给源主机。源主机收到EVPN控制器发出的ARP查询结果后,将其存储在自己的ARP缓存中,完成ARP查询。
4.根据权利要求3所述基于EVPN技术的自主可控虚拟交换机的实现方法,其特征在于,“ARP-IP”映射表基于EVPN控制器的数据库生成。
5.根据权利要求1所述基于EVPN技术的自主可控虚拟交换机的实现方法,其特征在于,扩展SDN控制器核心模块,使其支持动态生成路由策略功能。EVPN控制器的数据库中存有网络中所有主机和交换机的节点信息。通过LLDP协议的方式,获取节点之间的连通性,进而获得全网的拓扑。由于虚拟交换机中最开始只有一条默认流表,因此当交换机收到EVI间的流量数据包时,将把这个数据包上送给EVPN控制器。当EVPN控制器收到流量路由数据包时,通过查找源主机与目的主机的位置,使用最短路算法计算出此条流的路径。并为路径上的所有虚拟交换机下发路由流表。由于虚拟交换机与主机随时都有可能迁移/删除,因此路由流表将被设置一个超时属性,实现了动态的EVI设备路由。
6.根据权利要求1所述基于EVPN技术的自主可控虚拟交换机的实现方法,其特征在于,扩展SDN控制器核心模块,使其支持数据中心间VxLAN流量转发。EVPN控制器中的数据库会存储网络内所有的主机信息。当EVPN控制器收到流量路由数据包且无法在数据库内找到目的主机的信息时,说明目的主机位于网络外的其他数据中心。这时EVPN计算上送此数据包的虚拟交换机与边缘交换机的最短路径,将此数据包打上VxLAN标签并给路径上的所有虚拟交换机下发流表,完成数据中心间VxLAN流量转发。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111167009.8A CN113938448B (zh) | 2021-10-01 | 2021-10-01 | 一种基于evpn技术的自主可控虚拟交换机的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111167009.8A CN113938448B (zh) | 2021-10-01 | 2021-10-01 | 一种基于evpn技术的自主可控虚拟交换机的实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113938448A true CN113938448A (zh) | 2022-01-14 |
CN113938448B CN113938448B (zh) | 2023-02-17 |
Family
ID=79277890
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111167009.8A Active CN113938448B (zh) | 2021-10-01 | 2021-10-01 | 一种基于evpn技术的自主可控虚拟交换机的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113938448B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107409083A (zh) * | 2015-03-26 | 2017-11-28 | 思科技术公司 | 对具有evpn控制平面的vxlan中的bgp路由信息的可扩展处理 |
CN111371706A (zh) * | 2018-12-26 | 2020-07-03 | 瞻博网络公司 | 跨物理和虚拟化工作负载使用虚拟化覆盖的具有多个协议的云网络 |
CN112543136A (zh) * | 2019-09-23 | 2021-03-23 | 上海诺基亚贝尔股份有限公司 | 一种用于抑制pbb-evpn核心网络中洪泛流量的方法和装置 |
-
2021
- 2021-10-01 CN CN202111167009.8A patent/CN113938448B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107409083A (zh) * | 2015-03-26 | 2017-11-28 | 思科技术公司 | 对具有evpn控制平面的vxlan中的bgp路由信息的可扩展处理 |
CN111371706A (zh) * | 2018-12-26 | 2020-07-03 | 瞻博网络公司 | 跨物理和虚拟化工作负载使用虚拟化覆盖的具有多个协议的云网络 |
CN112543136A (zh) * | 2019-09-23 | 2021-03-23 | 上海诺基亚贝尔股份有限公司 | 一种用于抑制pbb-evpn核心网络中洪泛流量的方法和装置 |
Non-Patent Citations (2)
Title |
---|
陈桦: ""基于BGP协议的EVPN实现与研究"", 《中国优秀博硕士学位论文全文数据库》 * |
陈桦: ""基于BGP协议的EVPN实现与研究"", 《中国优秀博硕士学位论文全文数据库》, 15 February 2018 (2018-02-15), pages 1 - 64 * |
Also Published As
Publication number | Publication date |
---|---|
CN113938448B (zh) | 2023-02-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3188409B1 (en) | Oam mechanisms for evpn active-active services | |
US9448821B2 (en) | Method and system for realizing virtual machine mobility | |
US10097372B2 (en) | Method for resource optimized network virtualization overlay transport in virtualized data center environments | |
CN106850381B (zh) | 交换系统、交换装置、交换机及由其执行的方法 | |
US11283672B2 (en) | Forwarding detection of an aggregated interface | |
US8625616B2 (en) | Converged network extension | |
US9225636B2 (en) | Method and apparatus for exchanging IP packets among network layer 2 peers | |
CN104283756B (zh) | 一种实现分布式多租户虚拟网络的方法和装置 | |
US9100213B1 (en) | Synchronizing VPLS gateway MAC addresses | |
EP3605959B1 (en) | Method, device and computer storage medium for implementing double control plane | |
CN111736958B (zh) | 虚拟机迁移方法、系统、计算机设备及存储介质 | |
US20170155599A1 (en) | Virtual cluster switching | |
CN109756413B (zh) | 一种云数据中心异构网络互联系统及方法 | |
EP3069471B1 (en) | Optimized multicast routing in a clos-like network | |
WO2013185715A1 (zh) | 一种实现虚拟网络的方法和虚拟网络 | |
WO2018113792A1 (zh) | 广播报文的处理方法和处理装置、控制器和交换机 | |
CN111314196A (zh) | 一种数据中心网络混合overlay通信的方法 | |
WO2012152178A1 (zh) | 获知端口扩展拓扑信息的方法、系统和控制桥 | |
WO2014000292A1 (zh) | 跨数据中心的虚拟机迁移方法、服务控制网关及系统 | |
CN107995083B (zh) | 实现L2VPN与VxLAN互通的方法、系统及设备 | |
CN104378297A (zh) | 一种报文转发方法及设备 | |
WO2017157206A1 (zh) | 云数据中心互联方法及装置 | |
CN109587286A (zh) | 一种设备接入控制方法及装置 | |
EP3979709A1 (en) | Dynamic multi-destination traffic management in a distributed tunnel endpoint | |
US11228459B2 (en) | Anycast address configuration for extended local area networks |
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 | ||
GR01 | Patent grant |