CN111147302B - 一种网络虚拟化实现方法及其系统 - Google Patents

一种网络虚拟化实现方法及其系统 Download PDF

Info

Publication number
CN111147302B
CN111147302B CN201911380000.8A CN201911380000A CN111147302B CN 111147302 B CN111147302 B CN 111147302B CN 201911380000 A CN201911380000 A CN 201911380000A CN 111147302 B CN111147302 B CN 111147302B
Authority
CN
China
Prior art keywords
equipment
forwarding
route
vpn
nat
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
Application number
CN201911380000.8A
Other languages
English (en)
Other versions
CN111147302A (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.)
Guangdong Eflycloud Computing Co Ltd
Original Assignee
Guangdong Eflycloud Computing 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 Guangdong Eflycloud Computing Co Ltd filed Critical Guangdong Eflycloud Computing Co Ltd
Priority to CN201911380000.8A priority Critical patent/CN111147302B/zh
Publication of CN111147302A publication Critical patent/CN111147302A/zh
Application granted granted Critical
Publication of CN111147302B publication Critical patent/CN111147302B/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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Abstract

本发明公开了一种网络虚拟化实现方法及其系统,实现方法步骤包括:向API接口下达进行网络虚拟化的任务命令,API接口接收任务命令并将其记录至DB数据库中;调度中心从DB数据库中读取任务命令,并根据任务类型创建对应任务;通过虚拟路由器、虚拟交换机、Nat、Vpn以及公网IP的创建,构建了一个虚拟网络;对转发设备的下达指令构建指令集合Q1;在虚拟网络的实际运行过程中,对转发设备在实际运行过程中发出的指令构建指令集合Q2;将指令集合Q1与指令集合Q2进行对比;对转发设备之间建立BFD通信,并对BFD通信进行检测。本发明同时具备集中式和分布式的优点,易于管理和维护,也避免了性能瓶颈和单点故障问题。

Description

一种网络虚拟化实现方法及其系统
技术领域
本发明涉及网络虚拟化技术领域,特别涉及一种网络虚拟化实现方法及其系统。
背景技术
互联网的普及,云计算的浪潮,让我们越来越离不开网络环境。随着移动互联网的快速发展,以及各种应用和服务层出不穷,导致应用开发商和服务提供商等需要快速实施他们的项目或产品,在传统的IDC数据中心中一般需要布置他们自己或者租用服务器设备并且还需要自己组建复杂的网络,这其间必定需要大量的时间并且非常容易出错,也不容易扩展和实现灾备。
在经典网络中,用户在云上其实是非常缺乏网络管理能力的,用户有一台经典网络的虚拟服务器,用户也只有了和公网通信的能力,最多加上安全组可以做一些安全控制的能力,但如网段规划、子网划分、路由管理、使用NAT管理公网出入等网络管理能力都几乎没有或很弱。
目前的网络虚拟化的实现,一般分为集中式和分布式。其中,集中式是指把网络功能集中到专门的设备实现,保持计算资源节点只实现最简单基础的网络功能,避免消耗更多本来就吃紧的计算资源,但集中式有一个明显的缺点是具备网络处理性能瓶颈和高可用实现问题。而分布式是指把路由和NAT等部分功能分散到每一个计算节点内,这样可以避免了性能瓶颈和单点故障问题,但却又带了另外的问题,计算资源会被网络处理抢占了,且分布式的实现架构较为复杂,容易出错且不易维护。
发明内容
本发明要解决的技术问题在于,提供一种网络虚拟化实现方法及其系统,具备自我检测和修复的功能,也具备了可用性检测和调整的功能,使系统同时具备集中式和分布式的优点,易于管理和维护,也避免了性能瓶颈和单点故障问题。
为解决上述技术问题,本发明提供如下技术方案:一种网络虚拟化实现方法,包括以下步骤:
S1、向API接口下达进行网络虚拟化的任务命令,API接口接收任务命令并将其记录至DB数据库中;
S2、调度中心从DB数据库中读取任务命令,并根据任务类型创建对应任务,包括创建虚拟路由器任务、创建虚拟交换机任务、创建Nat、创建Vpn以及创建公网IP;其中,创建任务过程中采用一系列转发设备,转发设备包括 VTEP设备、ROUTE GATEWAY设备、NAT设备、VPN设备以及QOS设备,所述VTEP 设备、ROUTE GATEWAY设备、NAT设备、VPN设备以及QOS设备均为若干个;
S3、通过虚拟路由器、虚拟交换机、Nat、Vpn以及公网IP的创建,构建了一个虚拟网络;
S4、对转发设备的下达指令构建指令集合Q1;在虚拟网络的实际运行过程中,对转发设备在实际运行过程中发出的指令构建指令集合Q2;
S5、将指令集合Q1与指令集合Q2进行对比:若存在于指令集合Q1中但不存在于指令集合Q2中的指令,则确认此类指令属于哪个转发设备,并将此类指令判断为转发设备缺少的指令,需要向转发设备添补创建这些指令;存在于指令集合Q2中但不存在于指令集合Q1中的指令,则确认此类指令为多余指令,需要向此类指令的归属转发设备下达删除这些指令;
S6、对VTEP设备与ROUTE GATEWAY设备建立BFD通信,ROUTE GATEWAY 设备分别与NAT设备、VPN设备建立BFD通信,NAT设备、VPN设备均与QOS 设备建立BFD通信;对BFD通信进行检测,若BFD通信检测到有转发设备中断,则根据转发设备类型作出对应的调整。
作为优选的,所述步骤S2中的创建对应任务,具体为:
创建虚拟路由器任务:在虚拟路由器上,ROUTE GATEWAY设备下达指令来创建vxlan、loop、route;
创建虚拟交换机任务:虚拟交换机的网关功能由ROUTE GATEWAY设备的 loop接口实现,在虚拟交换机上,VTEP设备下达指令来创建vlan、vxlan;
创建Nat:创建Nat时首先在NAT资源池中创建一台VM虚拟机作为NAT 设备,然后NAT设备下达指令来创建vxlan、snat或者dnat、route;
创建Vpn:VPN设备在VPN资源池中创建一台VM虚拟机,在VM虚拟机上创建Vpn,VPN设备下达指令来创建vxlan、ipsec、route;
创建公网IP:对公网IP需要进行安全访问和限速,方式是向QOS设备下达指令创建acl、qos、route。
作为优选的,所述步骤S3中的构建了一个虚拟网络,在这虚拟网络中,二层网络封装在vxlan网络中传输,同一子网的数据交换在VTEP设备间转发,不同子网的数据交换需要经过ROUTE GATEWAY设备进行转发,需要访问公网的数据会由ROUTE GATEWAY设备通过默认路由方式提交到NAT设备进行地址转换,需要跨地域组建内网的数据会由ROUTE GATEWAY设备通过网段路由方式提交到 VPN设备进行隧道封装,NAT设备和VPN设备发出的数据统一经过QOS设备,由QOS设备进行安全规则的过滤和速度的控制,最后提交到公网网关。
作为优选的,所述步骤S6中的根据转发设备类型作出对应的调整,具体为:
若中断的转发设备为VTEP设备,而VTEP设备只负责二层数据的处理,则在其它VTEP设备和ROUTE GATEWAY设备的二层转发表上查找并删除涉及该 VTEP设备的项,让二层网络重新适配并选择同组的另外一个VTEP设备进行数据转发;
若中断的转发设备为ROUTE GATEWAY设备,而ROUTE GATEWAY设备处理二层和三层数据,在所有VTEP设备的二层转发表中查找并删除涉及该ROUTE GATEWAY设备的项,在NAT设备、VPN设备中删除指向该ROUTE GATEWAY设备的路由;
若中断的转发设备为NAT设备或者VPN设备,则NAT设备或者VPN设备的 HA使用虚拟机热迁移来调整;
若中断的转发设备为QOS设备,则从NAT设备和VPN设备中查找和删除涉及该QOS设备的路由。
本发明另一目的是提供一种网络虚拟化实现系统,包括API接口模块、DB 数据库模块、调度中心模块、转发设备、指令集合构建模块、指令集合对比模块、BFD通信构建模块以及BFD通信调整模块;所述转发设备包括:VTEP设备、ROUTE GATEWAY设备、NAT设备、VPN设备、QOS设备;
其中,所述API接口模块用于接收进行网络虚拟化的任务命令并将其记录至所述DB数据库中;
所述调度中心模块用于从DB数据库中读取任务命令,并根据任务类型创建对应任务,包括创建虚拟路由器任务、创建虚拟交换机任务、创建Nat、创建Vpn以及创建公网IP;
所述VTEP设备用于包括:在虚拟交换机上,VTEP设备下达指令来创建vlan、vxlan;在实现构建的虚拟网络系统中,二层网络封装在vxlan网络中传输,同一子网的数据交换在VTEP设备间进行转发;
所述ROUTE GATEWAY设备用于包括:在虚拟路由器上,ROUTE GATEWAY设备下达指令来创建vxlan、loop、route;虚拟交换机的网关功能由ROUTE GATEWAY设备的loop接口实现;在实现构建的虚拟网络系统中,二层网络封装在vxlan网络中传输,不同子网的数据交换需要经过ROUTE GATEWAY设备进行转发,需要访问公网的数据会由ROUTE GATEWAY设备通过默认路由方式提交到 NAT设备进行地址转换,需要跨地域组建内网的数据会由ROUTEGATEWAY设备通过网段路由方式提交到VPN设备进行隧道封装;
所述NAT设备用于下达指令来创建vxlan、snat或者dnat、route;
所述VPN设备用于在VPN资源池中创建一台VM虚拟机,在VM虚拟机上创建Vpn,VPN设备下达指令来创建vxlan、ipsec、route;
所述QOS设备用于包括:下达指令创建acl、qos、route;NAT设备和VPN 设备发出的数据统一经过QOS设备,由QOS设备进行安全规则的过滤和速度的控制,最后提交到公网网关;
所述指令集合构建模块用于对转发设备的下达指令构建指令集合Q1;以及,在虚拟网络的实际运行过程中,所述指令集合构建模块用于对转发设备在实际运行过程中发出的指令构建指令集合Q2;
所述指令集合对比模块用于对指令集合Q1与指令集合Q2进行对比;
所述BFD通信构建模块用于对VTEP设备与ROUTE GATEWAY设备建立BFD 通信,对于对ROUTE GATEWAY设备分别与NAT设备、VPN设备建立BFD通信,以及用于对NAT设备、VPN设备均与QOS设备建立BFD通信;
所述BFD通信调整模块用于对BFD通信进行检测,若BFD通信检测到有转发设备中断,则所述BFD通信调整模块根据转发设备类型作出对应的调整。
作为优选的,所述指令集合对比模块用于对指令集合Q1与指令集合Q2进行对比,其具体为:若存在于指令集合Q1中但不存在于指令集合Q2中的指令,则确认此类指令属于哪个转发设备,并将此类指令判断为转发设备缺少的指令,需要向转发设备添补创建这些指令;存在于指令集合Q2中但不存在于指令集合Q1中的指令,则确认此类指令为多余指令,需要向此类指令的归属转发设备下达删除这些指令。
作为优选的,所述BFD通信调整模块根据转发设备类型作出对应的调整,其具体为:
若中断的转发设备为VTEP设备,而VTEP设备只负责二层数据的处理,则在其它VTEP设备和ROUTE GATEWAY设备的二层转发表上查找并删除涉及该 VTEP设备的项,让二层网络重新适配并选择同组的另外一个VTEP设备进行数据转发;
若中断的转发设备为ROUTE GATEWAY设备,而ROUTE GATEWAY设备处理二层和三层数据,在所有VTEP设备的二层转发表中查找并删除涉及该ROUTE GATEWAY设备的项,在NAT设备、VPN设备中删除指向该ROUTE GATEWAY设备的路由;
若中断的转发设备为NAT设备或者VPN设备,则NAT设备或者VPN设备的 HA使用虚拟机热迁移来调整;
若中断的转发设备为QOS设备,则从NAT设备和VPN设备中查找和删除涉及该QOS设备的路由。
采用上述技术方案后,本发明至少具有如下有益效果:本方法使用不同角色设备分别实现各个层次的网络功能,使得每项功能可以划分成具体的网络组件组合实现,这种实现结构较清晰且较方便实现系统的检测和维护,确保网络实现的准确性,并且网络功能的组合实现可以在多台同样角色的设备中运行,提高了系统的可扩展性,解决了集中式网络实现系统的单点故障和性能瓶颈问题;在控制和转发分离的基础上,加上BFD通信调整模块,增强系统的可用性。
附图说明
图1为本发明一种网络虚拟化实现方法的步骤流程图;
图2为本发明一种网络虚拟化实现系统的结构框图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互结合,下面结合附图和具体实施例对本申请作进一步详细说明。
实施例1
本发明提出了一种可扩展的集中式的网络虚拟化实现方法,具备自我检测和修复的功能,也具备了可用性检测和调整的功能,使系统同时具备集中式和分布式的优点,易于管理和维护,也避免了性能瓶颈和单点故障问题。
如图1所示,本实施例提供一种网络虚拟化实现方法,具体步骤包括:
S1、向API接口下达进行网络虚拟化的任务命令,API接口接收任务命令并将其记录至DB数据库中;
S2、调度中心从DB数据库中读取任务命令,并根据任务类型创建对应任务,包括创建虚拟路由器任务、创建虚拟交换机任务、创建Nat、创建Vpn以及创建公网IP;其中,创建任务过程中采用一系列转发设备,转发设备包括 VTEP设备、ROUTE GATEWAY设备、NAT设备、VPN设备以及QOS设备,所述VTEP 设备、ROUTE GATEWAY设备、NAT设备、VPN设备以及QOS设备均为若干个;根据任务类型创建对应任务,其具体为:创建虚拟路由器任务:在虚拟路由器上, ROUTE GATEWAY设备下达指令来创建vxlan、loop、route;其中,vxlan虚拟可拓展局域网,loop为虚拟子网段网关接口,route为回程路由,用于处理外网流量访问;
创建虚拟交换机任务:虚拟交换机的网关功能由ROUTE GATEWAY设备的 loop接口实现,在虚拟交换机上,VTEP设备下达指令来创建vlan、vxlan;vlan 为虚拟局域网;
创建Nat:创建Nat时首先在NAT资源池中创建一台VM虚拟机作为NAT 设备,然后NAT设备下达指令来创建vxlan、snat或者dnat(snat/dnat)、route; snat是指在数据包从网卡发送出去的时候,把数据包中的源地址部分替换为指定的IP,dnat是指数据包从网卡发送出去的时候,修改数据包中的目的IP,均为常规技术;
创建Vpn:VPN设备在VPN资源池中创建一台VM虚拟机,在VM虚拟机上创建Vpn,VPN设备下达指令来创建vxlan、ipsec、route;其中,ipsec是目前VPN技术中的一种常规技术,同时提供VPN和信息加密两项技术;
创建公网IP:对公网IP需要进行安全访问和限速,方式是向QOS设备下达指令创建acl、qos、route;其中,acl是路由器和交换机接口的指令列表,用来控制端口进出的数据包;qos是一个网络能够利用各种基础技术,为指定的网络通信提供更好的服务能力;
S3、通过虚拟路由器、虚拟交换机、Nat、Vpn以及公网IP的创建,构建了一个虚拟网络;在这虚拟网络中,二层网络封装在vxlan网络中传输,同一子网的数据交换在VTEP设备间转发,不同子网的数据交换需要经过ROUTE GATEWAY设备进行转发,需要访问公网的数据会由ROUTE GATEWAY设备通过默认路由方式提交到NAT设备进行地址转换,需要跨地域组建内网的数据会由 ROUTE GATEWAY设备通过网段路由方式提交到VPN设备进行隧道封装,NAT设备和VPN设备发出的数据统一经过QOS设备,由QOS设备进行安全规则的过滤和速度的控制,最后提交到公网网关;
S4、对转发设备的下达指令构建指令集合Q1;在虚拟网络的实际运行过程中,对转发设备在实际运行过程中发出的指令构建指令集合Q2;
S5、将指令集合Q1与指令集合Q2进行对比:若存在于指令集合Q1中但不存在于指令集合Q2中的指令,则确认此类指令属于哪个转发设备,并将此类指令判断为转发设备缺少的指令,需要向转发设备添补创建这些指令;存在于指令集合Q2中但不存在于指令集合Q1中的指令,则确认此类指令为多余指令,需要向此类指令的归属转发设备下达删除这些指令;
S6、对转发设备之间建立BFD通信:对VTEP设备与ROUTE GATEWAY设备建立BFD通信,ROUTE GATEWAY设备分别与NAT设备、VPN设备建立BFD通信, NAT设备、VPN设备均与QOS设备建立BFD通信;对BFD通信进行检测,若BFD 通信检测到有转发设备中断,则根据转发设备类型作出对应的调整,具体为:
若中断的转发设备为VTEP设备,而VTEP设备只负责二层数据的处理,则在其它VTEP设备和ROUTE GATEWAY设备的二层转发表上查找并删除涉及该 VTEP设备的项,让二层网络重新适配并选择同组的另外一个VTEP设备进行数据转发;
若中断的转发设备为ROUTE GATEWAY设备,而ROUTE GATEWAY设备处理二层和三层数据,在所有VTEP设备的二层转发表中查找并删除涉及该ROUTE GATEWAY设备的项,在NAT设备、VPN设备中删除指向该ROUTE GATEWAY设备的路由;
若中断的转发设备为NAT设备或者VPN设备,则NAT设备或者VPN设备的 HA使用虚拟机热迁移来调整;
若中断的转发设备为QOS设备,则从NAT设备和VPN设备中查找和删除涉及该QOS设备的路由。
实施例2
在实施例1的基础上,如图 2 所示, 本实施例提供一种网络虚拟化实现系统 ,包括API 接口模块、DB数据库模块、调度中心模块、转发设备、指令集合构建模块、指令集合对比模块、BFD通信构建模块以及BFD通信调整模块;所述转发设备包括:VTEP设备、ROUTEGATEWAY设备、NAT设备、VPN设备、QOS设备;
其中,所述API接口模块用于提供给外部使用各项功能的接口;所述API 接口模块用于接收进行网络虚拟化的任务命令并将其记录至所述DB数据库中;而上述DB数据库存储了每项功能的详细信息和需要执行的任务;
所述调度中心模块用于从DB数据库中读取任务命令,并根据任务类型创建对应任务,包括创建虚拟路由器任务、创建虚拟交换机任务、创建Nat、创建Vpn以及创建公网IP;调度中心模块从所述DB数据库中读取任务,并且对 VTEP、ROUTE GATEWAY、NAT、VPN、QOS这些设备发布命令;
所述VTEP设备负责实现网络二层功能,用于包括:在虚拟交换机上,VTEP 设备下达指令来创建vlan、vxlan;在实现构建的虚拟网络系统中,二层网络封装在vxlan网络中传输,同一子网的数据交换在VTEP设备间进行转发;
所述ROUTE GATEWAY设备负责实现网络三层功能,用于包括:在虚拟路由器上,ROUTE GATEWAY设备下达指令来创建vxlan、loop、route;虚拟交换机的网关功能由ROUTEGATEWAY设备的loop接口实现;在实现构建的虚拟网络系统中,二层网络封装在vxlan网络中传输,不同子网的数据交换需要经过 ROUTE GATEWAY设备进行转发,需要访问公网的数据会由ROUTE GATEWAY设备通过默认路由方式提交到NAT设备进行地址转换,需要跨地域组建内网的数据会由ROUTE GATEWAY设备通过网段路由方式提交到VPN设备进行隧道封装;
所述NAT设备负责实现内网向外网转换的功能,用于下达指令来创建 vxlan、snat或者dnat、route;
所述VPN设备负责实现跨地域内网功能,用于在VPN资源池中创建一台VM 虚拟机,在VM虚拟机上创建Vpn,VPN设备下达指令来创建vxlan、ipsec、route;
所述QOS设备负责实现安全访问和限速功能,用于包括:下达指令创建acl、 qos、route;NAT设备和VPN设备发出的数据统一经过QOS设备,由QOS设备进行安全规则的过滤和速度的控制,最后提交到公网网关;
所述指令集合构建模块用于对转发设备的下达指令构建指令集合Q1;以及,在虚拟网络的实际运行过程中,所述指令集合构建模块用于对转发设备在实际运行过程中发出的指令构建指令集合Q2;
所述指令集合对比模块用于对指令集合Q1与指令集合Q2进行对比,具体为:若存在于指令集合Q1中但不存在于指令集合Q2中的指令,则确认此类指令属于哪个转发设备,并将此类指令判断为转发设备缺少的指令,需要向转发设备添补创建这些指令;存在于指令集合Q2中但不存在于指令集合Q1中的指令,则确认此类指令为多余指令,需要向此类指令的归属转发设备下达删除这些指令。
所述BFD通信构建模块用于对VTEP设备与ROUTE GATEWAY设备建立BFD 通信,对于对ROUTE GATEWAY设备分别与NAT设备、VPN设备建立BFD通信,以及用于对NAT设备、VPN设备均与QOS设备建立BFD通信;
所述BFD通信调整模块用于对BFD通信进行检测,若BFD通信检测到有转发设备中断,则所述BFD通信调整模块根据转发设备类型作出对应的调整,其具体为:
若中断的转发设备为VTEP设备,而VTEP设备只负责二层数据的处理,则在其它VTEP设备和ROUTE GATEWAY设备的二层转发表上查找并删除涉及该 VTEP设备的项,让二层网络重新适配并选择同组的另外一个VTEP设备进行数据转发;
若中断的转发设备为ROUTE GATEWAY设备,而ROUTE GATEWAY设备处理二层和三层数据,在所有VTEP设备的二层转发表中查找并删除涉及该ROUTE GATEWAY设备的项,在NAT设备、VPN设备中删除指向该ROUTE GATEWAY设备的路由;
若中断的转发设备为NAT设备或者VPN设备,则NAT设备或者VPN设备的 HA使用虚拟机热迁移来调整;
若中断的转发设备为QOS设备,则从NAT设备和VPN设备中查找和删除涉及该QOS设备的路由;
然而,假如上诉中断的转发设备恢复了,则以上转发设备的删除操作改为添加即可。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解的是,在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种等效的变化、修改、替换和变型,本发明的范围由所附权利要求及其等同范围限定。

Claims (5)

1.一种网络虚拟化实现方法,其特征在于,包括以下步骤:
S1、向API接口下达进行网络虚拟化的任务命令,API接口接收任务命令并将其记录至DB数据库中;
S2、调度中心从DB数据库中读取任务命令,并根据任务类型创建对应任务,包括创建虚拟路由器任务、创建虚拟交换机任务、创建Nat、创建Vpn以及创建公网IP;其中,创建任务过程中采用一系列转发设备,转发设备包括VTEP设备、ROUTE GATEWAY设备、NAT设备、VPN设备以及QOS设备,所述VTEP设备、ROUTE GATEWAY设备、NAT设备、VPN设备以及QOS设备均为若干个;
所述步骤S2中的创建对应任务,具体为:
创建虚拟路由器任务:在虚拟路由器上,ROUTE GATEWAY设备下达指令来创建vxlan、loop、route;
创建虚拟交换机任务:虚拟交换机的网关功能由ROUTE GATEWAY设备的loop接口实现,在虚拟交换机上,VTEP设备下达指令来创建vlan、vxlan;
创建Nat:创建Nat时首先在NAT资源池中创建一台VM虚拟机作为NAT设备,然后NAT设备下达指令来创建vxlan、snat或者dnat、route;
创建Vpn:VPN设备在VPN资源池中创建一台VM虚拟机,在VM虚拟机上创建Vpn,VPN设备下达指令来创建vxlan、ipsec、route;
创建公网IP:对公网IP需要进行安全访问和限速,方式是向QOS设备下达指令创建acl、qos、route;
S3、通过虚拟路由器、虚拟交换机、Nat、Vpn以及公网IP的创建,构建了一个虚拟网络;
S4、对转发设备的下达指令构建指令集合Q1;在虚拟网络的实际运行过程中,对转发设备在实际运行过程中发出的指令构建指令集合Q2;
S5、将指令集合Q1与指令集合Q2进行对比:若存在于指令集合Q1中但不存在于指令集合Q2中的指令,则确认此类指令属于哪个转发设备,并将此类指令判断为转发设备缺少的指令,需要向转发设备添补创建这些指令;存在于指令集合Q2中但不存在于指令集合Q1中的指令,则确认此类指令为多余指令,需要向此类指令的归属转发设备下达删除这些指令;
S6、对VTEP设备与ROUTE GATEWAY设备建立BFD通信,ROUTE GATEWAY设备分别与NAT设备、VPN设备建立BFD通信,NAT设备、VPN设备均与QOS设备建立BFD通信;对BFD通信进行检测,若BFD通信检测到有转发设备中断,则根据转发设备类型作出对应的调整。
2.根据权利要求1所述的一种网络虚拟化实现方法,其特征在于,所述步骤S3中的构建了一个虚拟网络,在这虚拟网络中,二层网络封装在vxlan网络中传输,同一子网的数据交换在VTEP设备间转发,不同子网的数据交换需要经过ROUTE GATEWAY设备进行转发,需要访问公网的数据会由ROUTE GATEWAY设备通过默认路由方式提交到NAT设备进行地址转换,需要跨地域组建内网的数据会由ROUTE GATEWAY设备通过网段路由方式提交到VPN设备进行隧道封装,NAT设备和VPN设备发出的数据统一经过QOS设备,由QOS设备进行安全规则的过滤和速度的控制,最后提交到公网网关。
3.根据权利要求1所述的一种网络虚拟化实现方法,其特征在于,所述步骤S6中的根据转发设备类型作出对应的调整,具体为:
若中断的转发设备为VTEP设备,而VTEP设备只负责二层数据的处理,则在其它VTEP设备和ROUTE GATEWAY设备的二层转发表上查找并删除涉及该VTEP设备的项,让二层网络重新适配并选择同组的另外一个VTEP设备进行数据转发;
若中断的转发设备为ROUTE GATEWAY设备,而ROUTE GATEWAY设备处理二层和三层数据,在所有VTEP设备的二层转发表中查找并删除涉及该ROUTE GATEWAY设备的项,在NAT设备、VPN设备中删除指向该ROUTE GATEWAY设备的路由;
若中断的转发设备为NAT设备或者VPN设备,则NAT设备或者VPN设备的HA使用虚拟机热迁移来调整;
若中断的转发设备为QOS设备,则从NAT设备和VPN设备中查找和删除涉及该QOS设备的路由。
4.一种网络虚拟化实现系统,其特征在于,包括API接口模块、DB数据库模块、调度中心模块、转发设备、指令集合构建模块、指令集合对比模块、BFD通信构建模块以及BFD通信调整模块;所述转发设备包括:VTEP设备、ROUTE GATEWAY设备、NAT设备、VPN设备、QOS设备;
其中,所述API接口模块用于接收进行网络虚拟化的任务命令并将其记录至所述DB数据库中;
所述调度中心模块用于从DB数据库中读取任务命令,并根据任务类型创建对应任务,包括创建虚拟路由器任务、创建虚拟交换机任务、创建Nat、创建Vpn以及创建公网IP;
所述VTEP设备用于包括:在虚拟交换机上,VTEP设备下达指令来创建vlan、vxlan;在实现构建的虚拟网络系统中,二层网络封装在vxlan网络中传输,同一子网的数据交换在VTEP设备间进行转发;
所述ROUTE GATEWAY设备用于包括:在虚拟路由器上,ROUTE GATEWAY设备下达指令来创建vxlan、loop、route;虚拟交换机的网关功能由ROUTE GATEWAY设备的loop接口实现;在实现构建的虚拟网络系统中,二层网络封装在vxlan网络中传输,不同子网的数据交换需要经过ROUTE GATEWAY设备进行转发,需要访问公网的数据会由ROUTE GATEWAY设备通过默认路由方式提交到NAT设备进行地址转换,需要跨地域组建内网的数据会由ROUTE GATEWAY设备通过网段路由方式提交到VPN设备进行隧道封装;
所述NAT设备用于下达指令来创建vxlan、snat或者dnat、route;
所述VPN设备用于在VPN资源池中创建一台VM虚拟机,在VM虚拟机上创建Vpn,VPN设备下达指令来创建vxlan、ipsec、route;
所述QOS设备用于包括:下达指令创建acl、qos、route;NAT设备和VPN设备发出的数据统一经过QOS设备,由QOS设备进行安全规则的过滤和速度的控制,最后提交到公网网关;
所述指令集合构建模块用于对转发设备的下达指令构建指令集合Q1;以及,在虚拟网络的实际运行过程中,所述指令集合构建模块用于对转发设备在实际运行过程中发出的指令构建指令集合Q2;
所述指令集合对比模块用于对指令集合Q1与指令集合Q2进行对比,其具体为:若存在于指令集合Q1中但不存在于指令集合Q2中的指令,则确认此类指令属于哪个转发设备,并将此类指令判断为转发设备缺少的指令,需要向转发设备添补创建这些指令;存在于指令集合Q2中但不存在于指令集合Q1中的指令,则确认此类指令为多余指令,需要向此类指令的归属转发设备下达删除这些指令;
所述BFD通信构建模块用于对VTEP设备与ROUTE GATEWAY设备建立BFD通信,对于对ROUTE GATEWAY设备分别与NAT设备、VPN设备建立BFD通信,以及用于对NAT设备、VPN设备均与QOS设备建立BFD通信;
所述BFD通信调整模块用于对BFD通信进行检测,若BFD通信检测到有转发设备中断,则所述BFD通信调整模块根据转发设备类型作出对应的调整。
5.根据权利要求4所述的一种网络虚拟化实现系统,其特征在于,所述BFD通信调整模块根据转发设备类型作出对应的调整,其具体为:
若中断的转发设备为VTEP设备,而VTEP设备只负责二层数据的处理,则在其它VTEP设备和ROUTE GATEWAY设备的二层转发表上查找并删除涉及该VTEP设备的项,让二层网络重新适配并选择同组的另外一个VTEP设备进行数据转发;
若中断的转发设备为ROUTE GATEWAY设备,而ROUTE GATEWAY设备处理二层和三层数据,在所有VTEP设备的二层转发表中查找并删除涉及该ROUTE GATEWAY设备的项,在NAT设备、VPN设备中删除指向该ROUTE GATEWAY设备的路由;
若中断的转发设备为NAT设备或者VPN设备,则NAT设备或者VPN设备的HA使用虚拟机热迁移来调整;
若中断的转发设备为QOS设备,则从NAT设备和VPN设备中查找和删除涉及该QOS设备的路由。
CN201911380000.8A 2019-12-27 2019-12-27 一种网络虚拟化实现方法及其系统 Active CN111147302B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911380000.8A CN111147302B (zh) 2019-12-27 2019-12-27 一种网络虚拟化实现方法及其系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911380000.8A CN111147302B (zh) 2019-12-27 2019-12-27 一种网络虚拟化实现方法及其系统

Publications (2)

Publication Number Publication Date
CN111147302A CN111147302A (zh) 2020-05-12
CN111147302B true CN111147302B (zh) 2020-11-10

Family

ID=70521049

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911380000.8A Active CN111147302B (zh) 2019-12-27 2019-12-27 一种网络虚拟化实现方法及其系统

Country Status (1)

Country Link
CN (1) CN111147302B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114006909B (zh) * 2021-11-11 2023-05-26 四川中电启明星信息技术有限公司 一种私有云租户间点对点单向动态专线连接的方法及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108037978A (zh) * 2017-12-22 2018-05-15 天津津航计算技术研究所 一种基于虚拟化技术的计算资源管理方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9270523B2 (en) * 2012-02-28 2016-02-23 International Business Machines Corporation Reconfiguring interrelationships between components of virtual computing networks
CN110611588B (zh) * 2019-09-02 2022-04-29 深信服科技股份有限公司 一种网络创建方法、服务器、计算机可读存储介质和系统

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108037978A (zh) * 2017-12-22 2018-05-15 天津津航计算技术研究所 一种基于虚拟化技术的计算资源管理方法

Also Published As

Publication number Publication date
CN111147302A (zh) 2020-05-12

Similar Documents

Publication Publication Date Title
CN109561108B (zh) 一种基于策略的容器网络资源隔离控制方法
CN110120934B (zh) 应用防火墙策略的方法、软件定义网络控制器和介质
CN112187517B (zh) 一种数据中心sdn虚拟路由的配置方法、平台及控制器
CN104584491B (zh) 提供分布式虚拟路由和交换(dvrs)的系统和方法
CN109716717A (zh) 从软件定义的网络控制器管理虚拟端口信道交换机对等体
CN107733795B (zh) 以太网虚拟私有网络evpn与公网互通方法及其装置
CN103118148B (zh) 一种arp缓存更新方法和设备
CN107948041B (zh) 构建vxlan集中式多活网关的方法和设备
US20170041211A1 (en) Controller-based dynamic routing in a software defined network environment
CN103905523A (zh) 一种基于sdn的云计算网络虚拟化实现方法及系统
CN105703960A (zh) 基于sdn的网络功能管理系统及方法
CN105162704A (zh) Overlay网络中组播复制的方法及装置
US20210204191A1 (en) Inter-slice sharing in 5g core networks
CN108574613B (zh) Sdn数据中心的二层互通方法及装置
US11716250B2 (en) Network scale emulator
CN109445912A (zh) 一种虚拟机的配置方法、配置系统及sdn控制器
CN113746760A (zh) 通信方法、网络控制器和计算机可读存储介质
CN111147302B (zh) 一种网络虚拟化实现方法及其系统
CN116155650B (zh) 数据报文转发方法、设备及电子设备
US10944665B1 (en) Auto-discovery and provisioning of IP fabric underlay networks for data centers
US20180198708A1 (en) Data center linking system and method therefor
CN112671811B (zh) 一种网络接入方法和设备
CN115987778A (zh) 一种基于Kubernetes集群的容器通信方法
Snehi et al. SDN‐Based Cloud Combining Edge Computing for IoT Infrastructure
CN111884863B (zh) 一种用于云计算环境的vpc服务链实现方法及系统

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