一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种实现云内网络与云外网络二层互通的方法及系统与流程

2021-10-29 21:46:00 来源:中国专利 TAG:网络 互通 二层 计算 方法


1.本发明涉及云计算技术领域,尤其是一种实现云内网络与云外网络二层互通的方法及系统。


背景技术:

2.近年来,云计算业务需求发展迅速,云计算已经从一个概念渐渐形成产品融入我们的日常生活中,openstack是现在比较成熟的开源云计算管理iaas平台。openstack平台涵盖了计算、存储、网络等各项基础功能服务,由于openstack的设计模式得到了业界的广泛认可,依靠openstack在各行各业的大规模应用,openstack已经成为了行业的标准,特别是网络相关功能在对接sdn(software defined network,软件定义网络)上,各sdn厂商基本都以openstack网络标准和接口标准作为首要标准,进行sdn产品的研发和设计;ovn(open virtual network分布式sdn控制器)就是这样一款网络sdn软件产品,ovn完全适配了openstack各项功能。
3.ovn是一款支持虚拟网络抽象的分布式sdn软件系统,ovn在ovs(openvswitch,多层的虚拟交换软件,支持通过编程来实现大规模的网络自动化)现有功能的基础上原生支持虚拟网络抽象,如l2,l3网络以及安全组。ovn实现的l2、l3以及安全组相关功能都是基于ovs流表实现。
4.云计算发展至今类似于openstack这样的iaas平台已经趋于成熟,很多客户的业务也由本地迁移到云上。计算、存储、网络资源由云平台统一管理和调度;实际中也存在一些客户的服务对机器性能要求比较高,需要将服务运行在物理机内。如数据库服务对性能要求比较高,传统业务的数据库服务大都运行在本地数据中心内的物理机上,为了满足云内的业务能够访问云外的数据库,这就需要考虑将云内网络和云外网络进行打通。
5.在私有云环境中云内网络是属于用户的私有网络,正常情况下云内私有网络是和云外的网络是隔离的两者不通,在现有技术中云内网络和云外网络如果想要实现互通,通过路由器在网络三层实现互通,需要依赖硬件,配置过程中存在硬件厂商技术捆绑的问题,导致整个配置过程复杂不易实现。


技术实现要素:

6.本发明提供了一种实现云内网络与云外网络二层互通的方法及系统,用于解决现有云内网络与云外物理机互通配置复杂、不易实现的问题。
7.为实现上述目的,本发明采用下述技术方案:
8.本发明第一方面提供了一种实现云内网络与云外网络二层互通的方法,所述方法包括以下步骤:
9.在云外的交换机上配置数据库,并建立所述数据库与控制中心的连接,将云内的虚拟机信息与云外的交换机信息互通;
10.在所述数据库中注册逻辑网络,配置所述交换机与逻辑网络的绑定关系,确定云
外网络与云内网络的映射关系;
11.基于所述虚拟机信息,在交换机上生成云外访问流表,基于所述映射关系,进行云外网络访问云内网络的流表控制;
12.在云内网络上创建交互端口,并配置所述交互端口与交换机、逻辑网络的一一对应关系;
13.根据所述交互端口,生成云内访问流表,基于所述一一对应关系,进行云内网络访问云外网络的流表控制。
14.进一步地,所述建立所述数据库与控制中心的连接,将云内的虚拟机信息与云外的交换机信息互通具体为:
15.在交换机上配置数据同步组件,分别连接控制中心和数据库;
16.数据同步组件收集交换机的信息,将交换机交由控制中心纳管;
17.数据同步组件收集控制中心上的虚拟机信息,将所述虚拟机信息同步到数据库。
18.进一步地,所述配置所述交换机与逻辑网络的绑定关系,确定云外网络与云内网络的映射关系具体为:
19.将交换机端口绑定至所述逻辑网络,所述交换机端口为需要与云内网络互通的物理机所连接的交换机端口;
20.获取数据库中存储的虚拟机信息,在虚拟交换软件上配置云内访问端点,所述虚拟交换软件配置在所述交换机上。
21.进一步地,所述虚拟机信息包括虚拟机网卡信息和虚拟机所在的宿主机ip地址。
22.进一步地,所述基于所述虚拟机信息,在交换机上生成云外访问流表,基于所述映射关系,进行云外网络访问云内网络的流表控制具体为:
23.根据虚拟机网卡的mac地址生成访问流表;
24.根据mac地址所在的宿主机ip,将数据包发送至所述云内访问端点,进行数据封装和数据包发送。
25.进一步地,所述基于所述一一对应关系,进行云内网络访问云外网络的流表控制具体为:
26.当云内网络访问云外网络时,数据包广播至所述交互端口;
27.数据包通过overlay隧道发送至与所述交互端口关联的交换机上;
28.数据包到达所述云内访问端点,以广播形式广播至各交换机端口,数据达到云外的物理机上。
29.本发明第二方面提供了一种实现云内网络与云外网络二层互通的系统,包括控制中心、云内的计算节点和与云外物理机连接的交换机,所述交换机上配置数据库、数据同步组件、网络配置模块和网络互通模块;
30.数据库,用于存储逻辑网络,逻辑网络与交互端口、交换机端口的对应关系,以及虚拟机信息;
31.数据同步组件,用于建立所述数据库与控制中心的连接;
32.网络配置模块,用于在所述数据库中注册逻辑网络,配置所述交换机与逻辑网络的绑定关系,确定云外网络与云内网络的映射关系;
33.互通处理模块,根据所述虚拟机信息,在交换机上生成云外访问流表,基于所述映
射关系,进行云外网络访问云内网络的流表控制;
34.所述控制中心在云内网络上创建交互端口,并配置所述交互端口与交换机、逻辑网络的一一对应关系;根据所述交互端口,生成云内访问流表,基于所述一一对应关系,进行云内网络访问云外网络的流表控制。
35.进一步地,所述数据同步组件通过ovsdb协议连接至控制中心,读取云内虚拟机信息并同步至所述数据库中。
36.进一步地,所述网络配置模块包括:
37.网络注册单元,用于在数据库上注册逻辑网络;
38.端口绑定单元,用于将交换机端口绑定至所述逻辑网络,所述交换机端口为需要与云内网络互通的物理机所连接的交换机端口;
39.网络访问设置单元,用于获取数据库中存储的虚拟机信息,在虚拟交换软件上配置云内访问端点,所述虚拟交换软件配置在所述交换机上。
40.进一步地,所述控制中心包括数据广播单元和数据传输单元,所述互通控制模块包括数据交互单元,
41.数据广播单元,当云内网络访问云外网络时,数据包广播至所述交互端口;
42.数据传输单元,数据包通过overlay隧道发送至与所述交互端口关联的交换机上;
43.数据交互单元,数据包到达所述云内访问端点,以广播形式广播至各交换机端口,数据达到云外的物理机上。
44.本发明第二方面的所述实现云内网络与云外网络二层互通的系统能够实现第一方面及第一方面的各实现方式中的方法,并取得相同的效果。
45.发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:
46.本发明在交换机上配置数据库,并注册逻辑网络,实现云内外网络的映射,为网络互通提供了基础,云内和云外均基于流表控制,采用overlay隧道及广播的形式确保网络数据包呗发送至云外的交换机或云内的各计算节点,实现的云内网络和云外网络不借助路由器,是在网络二层实现的,且在交换机中使用vtep脚本控制流表的生成,整个过程全部通过软件实现,摆脱了对硬件的依赖,有效解决了硬件厂商捆绑的问题,提高产品竞争力。
附图说明
47.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
48.图1是本发明所述方法的流程示意图;
49.图2是本发明所述方法具体实施例的流程示意图;
50.图3是本发明所述系统的结构示意图。
具体实施方式
51.为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结
构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
52.如图1所示,本发明提供的一种实现云内网络与云外网络二层互通的方法,包括以下步骤:
53.s1,在云外的交换机上配置数据库,并建立所述数据库与控制中心的连接,将云内的虚拟机信息与云外的交换机信息互通;
54.s2,在所述数据库中注册逻辑网络,配置所述交换机与逻辑网络的绑定关系,确定云外网络与云内网络的映射关系;
55.s3,基于所述虚拟机信息,在交换机上生成云外访问流表,基于所述映射关系,进行云外网络访问云内网络的流表控制;
56.s4,在云内网络上创建交互端口,并配置所述交互端口与交换机、逻辑网络的一一对应关系;
57.s5,根据所述交互端口,生成云内访问流表,基于所述一一对应关系,进行云内网络访问云外网络的流表控制。
58.下面结合具体的实例对本发明的上述步骤进行详细说明。
59.如图2所示,步骤s1的实现过程具体包括:
60.s11,在交换机上安装操作系统并配置ovs和vtep数据库,ovs为虚拟交换软件,vtep数据库用于存放逻辑网络、交换机端口及vlan号与逻辑网络的绑定关系、ovn中虚拟机的mac地址信息,以及虚拟机所在的宿主机ip地址。
61.s12,在交换机上安装ovn

vtep组件,北向连接ovn,南向连接数据库;数据同步组件为ovn

vtep组件。
62.s13,ovn

vtep组件收集交换机的信息注册到ovn,把白牌交换机交由ovn纳管;ovn

vtep组件收集ovn上虚拟机网卡信息同步到vtep数据库,为接下来生成云外访问云内虚拟机的流表提供数据来源。ovn

vtep组件收集的交换机信息包括交换机地址和名称。
63.步骤s2的实现过程具体包括:
64.s21,在vtep数据库中注册逻辑网络,逻辑网络对应vxlan网络;
65.s22,将需要和云内vxlan网络互通的物理机所在的交换机端口绑定至所述逻辑网络。包括交换机端口的名称、vlan号,接下来的vtep模拟器会根据绑定关系生成修改valn的流表。
66.步骤s3的实现过程具体包括:
67.s31,在交换机上作为常驻进程启动vtep模拟器;vtep模拟器是一个python脚本,它是一系列vtep数据库操作命令和openvswitch的操作命令的集合。通过读取vtep数据库中的数据,在openvswitch上创建vxlan隧道和生成访问云内某个地址的流表。
68.s32,vtep模拟器从vtep数据库中读取虚拟机信息,在ovs上创建vxlan vtep端点,进行vxlan数据包的收发;
69.s33,vtep模拟器根据虚拟机mac地址生成访问流表,根据mac地址所在的宿主机ip,将数据包发送至vtep端点,进行数据封装和数据包发送。实现云外访问云内的流表控
制。
70.步骤s4在云内网络上创建的vtep端口,为云内访问云外的端口。
71.步骤s5的实现过程具体包括:
72.s51,ovn

vtep组件检测到vtep端口,生成一条“将所有ovn位置的mac地址数据包都指向此vtep端口”的流表;
73.s52,当云内访问云外时,数据包广播至vtep端口,数据包通过vxlan隧道发送至与此vtep端口关联的交换机上;用于云内访问云外的流表控制。
74.s53,数据包到达交换机上vxlan隧道的vtep端点,进行解包,然后以广播形式将数据包广播至各交换机端口,数据到达云外物理机上,完成了云内与云外网络的互通。
75.overlay隧道的实现方式有多种,比如geneve、vxlan等,vxlan隧道是overlay隧道的一种具体实现方式。
76.如图3所示,本发明还提供了一种实现云内网络与云外网络二层互通的系统,包括控制中心、云内的计算节点和与云外物理机连接的交换机,所述交换机上配置数据库、数据同步组件、网络配置模块和网络互通模块。
77.数据库为vtep数据库,用于存储逻辑网络,逻辑网络与交互端口、交换机端口的对应关系,以及虚拟机信息;数据同步组件为ovn

vtep组件,用于建立所述数据库与控制中心的连接;网络配置模块,用于在所述数据库中注册逻辑网络,配置所述交换机与逻辑网络的绑定关系,确定云外网络与云内网络的映射关系;互通处理模块,根据所述虚拟机信息,在交换机上生成云外访问流表,基于所述映射关系,进行云外网络访问云内网络的流表控制。
78.所述控制中心在云内网络上创建交互端口,并配置所述交互端口与交换机、逻辑网络的一一对应关系;根据所述交互端口,生成云内访问流表,基于所述一一对应关系,进行云内网络访问云外网络的流表控制。
79.所述数据同步组件通过ovsdb协议连接至控制中心,读取云内虚拟机信息并同步至所述数据库中。
80.所述网络配置模块包括网络注册单元、端口绑定单元和网络访问设置单元。
81.网络注册单元用于在数据库上注册逻辑网络;端口绑定单元用于将交换机端口绑定至所述逻辑网络,所述交换机端口为需要与云内网络互通的物理机所连接的交换机端口;网络访问设置单元用于获取数据库中存储的虚拟机信息,在虚拟交换软件上配置云内访问端点,所述虚拟交换软件配置在所述交换机上。
82.所述控制中心包括数据广播单元和数据传输单元,所述互通处理模块包括数据交互单元。
83.当云内网络访问云外网络时,数据广播单元将数据包广播至所述交互端口;数据传输单元将数据包通过overlay隧道发送至与所述交互端口关联的交换机上;数据包到达所述云内访问端点,数据交互单元以广播形式广播至各交换机端口,数据达到云外的物理机上。所述云内访问端点即上述方法实施例中的vtep端点,交互端口为vtep端口。
84.上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜