CN117857257A - 一种云虚拟机和传统网络互通的方法及系统 - Google Patents
一种云虚拟机和传统网络互通的方法及系统 Download PDFInfo
- Publication number
- CN117857257A CN117857257A CN202311722379.2A CN202311722379A CN117857257A CN 117857257 A CN117857257 A CN 117857257A CN 202311722379 A CN202311722379 A CN 202311722379A CN 117857257 A CN117857257 A CN 117857257A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- cloud virtual
- network
- physical server
- kvm
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 238000004891 communication Methods 0.000 claims abstract description 9
- 230000002457 bidirectional effect Effects 0.000 claims description 4
- 238000004806 packaging method and process Methods 0.000 claims 3
- 238000004590 computer program Methods 0.000 claims 1
- 206010047289 Ventricular extrasystoles Diseases 0.000 description 11
- 238000005129 volume perturbation calorimetry Methods 0.000 description 11
- 238000005538 encapsulation Methods 0.000 description 7
- 101000652292 Homo sapiens Serotonin N-acetyltransferase Proteins 0.000 description 2
- 102100030547 Serotonin N-acetyltransferase Human genes 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及云网络技术领域,尤其涉及一种云虚拟机和传统网络互通的方法及系统,方法包括:KVM物理服务器的OVS实现云虚拟机和物理服务器系统网络之间的网络打通,同时按需配置NAT规则;使用动态路由组件实现KVM物理服务器系统网络和交换机之间的动态路由学习,KVM物理服务器侧对云虚拟机的地址进行/32的主机路由发布,实现KVM物理服务器上的/32地址和传统网络路由的互通;结合OVS和动态路由进行实现云虚拟机和传统网络之间的互通。
Description
技术领域
本发明涉及云网络技术领域,特别涉及一种云虚拟机和传统网络互通的方法及系统。
背景技术
当前主流云网络方案中,云虚拟机和传统网络互通场景时,通常使用一个集中式的网关集群来承载对overlay网络的封装和解封装,以及对传统网络做传统路由的对接和转发,该方案有如下缺点:
集中式的网关集群一般使用X86的物理服务器,其性能和带宽吞吐有限制,在处理上Tbps的业务流量场景时会有性能瓶颈,即使网关集群能进行横向扩展,其在资源性价比上也是不可取的,其可能需要十几或者几十台X86物理服务器才能承载上Tbps的带宽流量;
集中式的网关集群方案中,由于有对overlay的封装和解封装的过程,将会影响整体转发性能和增加转发时延;
集中式的网关集群在资源故障时会影响整体的带宽能力,若预留足够的资源做冗余,其会影响资源使用率,同时在故障时可能会影响整体业务流量的丢包或者延迟;
一种基于分布式网关方式实现云虚拟机和传统网络互通,可避免集中式网关集群存在的以上问题。
发明内容
本方法和系统旨在一种基于分布式网关实现云虚拟机和传统网络互通,可避免集中式网关集群在处理大带宽流量时性能不足、资源整体使用率低、网络转发性能降低、转发时延增加、以及资源故障时对整体业务的影响等问题,同时无需使用专有资源来部署相关的网关集群,分布式网关部署在计算节点上,分布式网关能力随计算资源规模的增加而动态增加,可以提升转发性能和减少时延。
本发明的技术方案如下:
第一方面,提出一种云虚拟机和传统网络互通的方法,该方法包括如下步骤:
S1、KVM物理服务器的OVS实现云虚拟机和物理服务器系统网络之间的网络打通,同时按需配置NAT规则;
S2、使用动态路由组件实现KVM物理服务器系统网络和交换机之间的动态路由学习,KVM物理服务器侧对云虚拟机的地址进行/32的主机路由发布,实现KVM物理服务器上的/32地址和传统网络路由的互通;
S3、结合OVS和动态路由进行实现云虚拟机和传统网络之间的互通。
本发明的进一步改进在于,所述S1中KVM物理服务器上OVS主要对云虚拟机的数据包进行overlay封装和解封装,在此基础上添加基于网段的流表规则用于区分目的地址为传统网络的数据包并对该部分数据包不进行overlay封装而直接发送到KVM物理服务器的系统网络。
本发明的进一步改进在于,所述S1中KVM物理服务器的OVS实现云虚拟机和物理服务器系统网络之间的网络打通用以实现分布式网关。
本发明的进一步改进在于,所述分布式网关实现逻辑为:通过云虚拟机发送数据包到传统网络;云虚拟机接收来自传统网络的数据包。
本发明的进一步改进在于,所述S2中在物理服务器系统中部署动态路由组件实现KVM物理服务器系统网络和对应交换机之间动态路由,所有调度到该KVM物理服务器上的云虚拟机都在其系统的动态路由中发布/32的主机路由,交换机侧通过传统路由方式打通和传统网络的通信,同时在OVS针对发送到KVM物理服务器系统网络中目的地址为云虚拟机的/32的数据包转发到对应的云虚拟机的流表,从而实现了云虚拟机和传统网络的双向互通。
本发明的进一步改进在于,特别地,若云虚拟机为不同租户VPC地址可重叠的方式,则在OVS上对传统网络流量进行分流的同时对云虚拟机进行NAT的规则设置,NAT后的地址为全局唯一用于和传统网络的互通,则动态路由发布的为NAT后的/32的主机地址。
本发明的进一步改进在于,所述S3中结合OVS和动态路由进行实现云虚拟机和传统网络之间的互通,OVS流表中针对发送到KVM物理服务器系统网络中目的地址为云虚拟机NAT后的/32的数据包进行NAT和转发到对应的云虚拟机。
第二方面,提出一种云虚拟机和传统网络互通的系统,该系统包括:
配置模块、动态学习模块、网关互通模块:
所述配置模块,用于KVM物理服务器的OVS实现云虚拟机和物理服务器系统网络之间的网络打通,同时按需配置NAT规则;
所述动态学习模块,用于使用动态路由组件实现KVM物理服务器系统网络和交换机之间的动态路由学习,KVM物理服务器侧对云虚拟机的地址进行/32的主机路由发布,实现KVM物理服务器上的/32地址和传统网络路由的互通;
所述网关互通模块,用于结合OVS和动态路由进行实现云虚拟机和传统网络之间的互通。
本发明的技术效果如下:
提出一种云虚拟机和传统网络互通的方法及系统,可避免集中式网关集群在处理大带宽流量时性能不足、资源整体使用率低、网络转发性能降低、转发时延增加、以及资源故障时对整体业务的影响等问题,同时无需使用专有资源来部署相关的网关集群,分布式网关部署在计算节点上,分布式网关能力随计算资源规模的增加而动态增加,可以提升转发性能和减少时延,因而可操作性好、灵活性高、效率高。
附图说明
通过阅读参照以下附图所作的对非限制性实施例的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明实施例的一种云虚拟机和传统网络互通的方法的流程示意图;
图2为本发明实施例的一种云虚拟机和传统网络互通的系统的结构示意图。
具体实施方式
实施例1
本实施例提出了一种云虚拟机和传统网络互通的方法,可避免集中式网关集群在处理大带宽流量时性能不足、资源整体使用率低、网络转发性能降低、转发时延增加、以及资源故障时对整体业务的影响等问题,同时无需使用专有资源来部署相关的网关集群,分布式网关部署在计算节点上,分布式网关能力随计算资源规模的增加而动态增加,可以提升转发性能和减少时延,因而可操作性好、灵活性高、效率高。
具体的,如图1所示,本实施例提出的一种云虚拟机和传统网络互通的方法包括以下具体步骤:
S1、KVM物理服务器的OVS实现云虚拟机和物理服务器系统网络之间的网络打通,同时按需配置NAT规则;
S2、使用动态路由组件实现KVM物理服务器系统网络和交换机之间的动态路由学习,KVM物理服务器侧对云虚拟机的地址进行/32的主机路由发布,实现KVM物理服务器上的/32地址和传统网络路由的互通;
S3、结合OVS和动态路由进行实现云虚拟机和传统网络之间的互通。
在本实施例中,所述S1中KVM物理服务器上OVS主要对云虚拟机的数据包进行overlay封装和解封装,在此基础上添加基于网段的流表规则用于区分目的地址为传统网络的数据包并对该部分数据包不进行overlay封装而直接发送到KVM物理服务器的系统网络。
在本实施例中,所述S1中KVM物理服务器的OVS实现云虚拟机和物理服务器系统网络之间的网络打通用以实现分布式网关。
在本实施例中,所述分布式网关实现逻辑为:通过云虚拟机发送数据包到传统网络;云虚拟机接收来自传统网络的数据包。
在本实施例中,若VPC之间地址重叠,则在全局分配一个NAT网段和传统网络通信,如100.64.0.0/16网段,在系统网络的veth peer接口配置NAT网段的一个可用IP(如100.64.255.254/16)作为一个分布式网关的地址,用于系统网络和VM在NAT后地址的二层互通,该地址可在所有对应的KVM都配置相同地址,但不往动态路由中发布。
在本实施例中,所述S2中在物理服务器系统中部署动态路由组件实现KVM物理服务器系统网络和对应交换机之间动态路由,所有调度到该KVM物理服务器上的云虚拟机都在其系统的动态路由中发布/32的主机路由,交换机侧通过传统路由方式打通和传统网络的通信,同时在OVS针对发送到KVM物理服务器系统网络中目的地址为云虚拟机的/32的数据包转发到对应的云虚拟机的流表,从而实现了云虚拟机和传统网络的双向互通。
在本实施例中,特别地,若云虚拟机为不同租户VPC地址可重叠的方式,则在OVS上对传统网络流量进行分流的同时对云虚拟机进行NAT的规则设置,NAT后的地址为全局唯一用于和传统网络的互通,则动态路由发布的为NAT后的/32的主机地址。
在本实施例中,若VPC之间地址重叠,则OVS流表在修改对应的目的mac地址为系统网络veth peer接口的mac地址的同时还要针对源IP地址做SNAT转换。同时需要在OVS上添加流表,用于把从KVM物理服务器的系统路由转发到云虚拟机的数据包转到到对应云虚拟机的TAP口。若VPC之间地址不重叠,则OVS流表只需要匹配云虚拟机的IP或者MAC地址把数据包转发到云虚拟机的TAP口到达云虚拟机;若VPC之间地址重叠,则OVS流表需要针对云虚拟机IP的NAT地址的arp请求做回复,以及针对发送到云虚拟机的数据匹配目的IP并针对目的IP做DNAT把数据包目的地址从NAT后的IP更新成云虚拟机真实IP地址,同时也把目的MAC地址更新为云虚拟机的真实MAC地址并把数据包转发到云虚拟机的TAP口到达云虚拟机。
在本实施例中,所述S3中结合OVS和动态路由进行实现云虚拟机和传统网络之间的互通,OVS流表中针对发送到KVM物理服务器系统网络中目的地址为云虚拟机NAT后的/32的数据包进行NAT和转发到对应的云虚拟机。
实施例2
本实施例提出了一种云虚拟机和传统网络互通的系统,见图2所示,包括:配置模块、动态学习模块、网关互通模块:
所述配置模块,用于KVM物理服务器的OVS实现云虚拟机和物理服务器系统网络之间的网络打通,同时按需配置NAT规则;
所述动态学习模块,用于使用动态路由组件实现KVM物理服务器系统网络和交换机之间的动态路由学习,KVM物理服务器侧对云虚拟机的地址进行/32的主机路由发布,实现KVM物理服务器上的/32地址和传统网络路由的互通;
所述网关互通模块,用于结合OVS和动态路由进行实现云虚拟机和传统网络之间的互通。
在本实施例中,KVM物理服务器上OVS主要对云虚拟机的数据包进行overlay封装和解封装,在此基础上添加基于网段的流表规则用于区分目的地址为传统网络的数据包并对该部分数据包不进行overlay封装而直接发送到KVM物理服务器的系统网络。
在本实施例中,分布式网关在云虚拟机所在的KVM物理服务器结合OVS和动态路由的方式实现,其主要实现云虚拟机的流量分流以及和传统路由打通,KVM物理服务器的OVS实现云虚拟机和物理服务器系统网络之间的网络打通用以实现分布式网关。
在本实施例中,分布式网关实现逻辑为:通过云虚拟机发送数据包到传统网络;云虚拟机接收来自传统网络的数据包。
在本实施例中,若VPC之间地址重叠,则在全局分配一个NAT网段和传统网络通信,如100.64.0.0/16网段,在系统网络的veth peer接口配置NAT网段的一个可用IP(如100.64.255.254/16)作为一个分布式网关的地址,用于系统网络和VM在NAT后地址的二层互通,该地址可在所有对应的KVM都配置相同地址,但不往动态路由中发布。
在本实施例中,在物理服务器系统中部署动态路由组件实现KVM物理服务器系统网络和对应交换机之间动态路由,所有调度到该KVM物理服务器上的云虚拟机都在其系统的动态路由中发布/32的主机路由,交换机侧通过传统路由方式打通和传统网络的通信,同时在OVS针对发送到KVM物理服务器系统网络中目的地址为云虚拟机的/32的数据包转发到对应的云虚拟机的流表,从而实现了云虚拟机和传统网络的双向互通。
在本实施例中,特别地,若云虚拟机为不同租户VPC地址可重叠的方式,则在OVS上对传统网络流量进行分流的同时对云虚拟机进行NAT的规则设置,NAT后的地址为全局唯一用于和传统网络的互通,则动态路由发布的为NAT后的/32的主机地址。
在本实施例中,若VPC之间地址重叠,则OVS流表在修改对应的目的mac地址为系统网络veth peer接口的mac地址的同时还要针对源IP地址做SNAT转换。同时需要在OVS上添加流表,用于把从KVM物理服务器的系统路由转发到云虚拟机的数据包转到到对应云虚拟机的TAP口。若VPC之间地址不重叠,则OVS流表只需要匹配云虚拟机的IP或者MAC地址把数据包转发到云虚拟机的TAP口到达云虚拟机;若VPC之间地址重叠,则OVS流表需要针对云虚拟机IP的NAT地址的arp请求做回复,以及针对发送到云虚拟机的数据匹配目的IP并针对目的IP做DNAT把数据包目的地址从NAT后的IP更新成云虚拟机真实IP地址,同时也把目的MAC地址更新为云虚拟机的真实MAC地址并把数据包转发到云虚拟机的TAP口到达云虚拟机。
在本实施例中,结合OVS和动态路由进行实现云虚拟机和传统网络之间的互通,OVS流表中针对发送到KVM物理服务器系统网络中目的地址为云虚拟机NAT后的/32的数据包进行NAT和转发到对应的云虚拟机。
综上,KVM物理服务器的OVS实现云虚拟机和物理服务器系统网络之间的网络打通,同时按需配置NAT规则;使用动态路由组件实现KVM物理服务器系统网络和交换机之间的动态路由学习,KVM物理服务器侧对云虚拟机的地址(或者NAT后的地址)进行/32的主机路由发布,实现KVM物理服务器上的/32地址和传统网络路由的互通;结合OVS和动态路由进行实现云虚拟机和传统网络之间的互通。
上述关于本发明的一种云虚拟机和传统网络互通的系统中的各参数和各个单元模块实现相应功能的步骤,可参考上文实施例1中关于一种云虚拟机和传统网络互通的方法的实施例中的各参数和步骤。
Claims (10)
1.一种云虚拟机和传统网络互通的方法,其特征在于:包括以下具体步骤:
S1、KVM物理服务器的OVS实现云虚拟机和物理服务器系统网络之间的网络打通,同时按需配置NAT规则;
S2、使用动态路由组件实现KVM物理服务器系统网络和交换机之间的动态路由学习,KVM物理服务器侧对云虚拟机的地址进行/32的主机路由发布,实现KVM物理服务器上的/32地址和传统网络路由的互通;
S3、结合OVS和动态路由进行实现云虚拟机和传统网络之间的互通。
2.根据权利要求1所述的一种云虚拟机和传统网络互通的方法,其特征在于:所述S1中KVM物理服务器上OVS主要对云虚拟机的数据包进行overlay封装和解封装,在此基础上添加基于网段的流表规则用于区分目的地址为传统网络的数据包并对该部分数据包不进行overlay封装而直接发送到KVM物理服务器的系统网络。
3.根据权利要求2所述的一种云虚拟机和传统网络互通的方法,其特征在于:所述S1中KVM物理服务器的OVS实现云虚拟机和物理服务器系统网络之间的网络打通用以实现分布式网关。
4.根据权利要求3所述的一种云虚拟机和传统网络互通的方法,其特征在于:所述分布式网关实现逻辑为:通过云虚拟机发送数据包到传统网络;云虚拟机接收来自传统网络的数据包。
5.根据权利要求4所述的一种云虚拟机和传统网络互通的方法,其特征在于:所述S2中在物理服务器系统中部署动态路由组件实现KVM物理服务器系统网络和对应交换机之间动态路由,所有调度到该KVM物理服务器上的云虚拟机都在其系统的动态路由中发布/32的主机路由,交换机侧通过传统路由方式打通和传统网络的通信,同时在OVS针对发送到KVM物理服务器系统网络中目的地址为云虚拟机的/32的数据包转发到对应的云虚拟机的流表,从而实现了云虚拟机和传统网络的双向互通。
6.根据权利要求5所述的一种云虚拟机和传统网络互通的方法,其特征在于:特别地,若云虚拟机为不同租户VPC地址可重叠的方式,则在OVS上对传统网络流量进行分流的同时对云虚拟机进行NAT的规则设置,NAT后的地址为全局唯一用于和传统网络的互通,则动态路由发布的为NAT后的/32的主机地址。
7.根据权利要求6所述的一种云虚拟机和传统网络互通的方法,其特征在于:所述S3中结合OVS和动态路由进行实现云虚拟机和传统网络之间的互通,OVS流表中针对发送到KVM物理服务器系统网络中目的地址为云虚拟机NAT后的/32的数据包进行NAT和转发到对应的云虚拟机。
8.一种云虚拟机和传统网络互通的系统,基于权利要求1-7任一项所述的一种云虚拟机和传统网络互通的方法实现,其特征在于,包括:配置模块、动态学习模块、网关互通模块:
所述配置模块,用于KVM物理服务器的OVS实现云虚拟机和物理服务器系统网络之间的网络打通,同时按需配置NAT规则;
所述动态学习模块,用于使用动态路由组件实现KVM物理服务器系统网络和交换机之间的动态路由学习,KVM物理服务器侧对云虚拟机的地址进行/32的主机路由发布,实现KVM物理服务器上的/32地址和传统网络路由的互通;
所述网关互通模块,用于结合OVS和动态路由进行实现云虚拟机和传统网络之间的互通。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时,实现权利要求1-7中任一项所述的一种云虚拟机和传统网络互通的方法。
10.一种电子设备,其特征在于,包括存储器,用于存储指令;处理器,用于执行所述指令,使得所述设备执行实现权利要求1-7中任一项所述的一种云虚拟机和传统网络互通的方法的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311722379.2A CN117857257A (zh) | 2023-12-14 | 2023-12-14 | 一种云虚拟机和传统网络互通的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311722379.2A CN117857257A (zh) | 2023-12-14 | 2023-12-14 | 一种云虚拟机和传统网络互通的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117857257A true CN117857257A (zh) | 2024-04-09 |
Family
ID=90546771
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311722379.2A Pending CN117857257A (zh) | 2023-12-14 | 2023-12-14 | 一种云虚拟机和传统网络互通的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117857257A (zh) |
-
2023
- 2023-12-14 CN CN202311722379.2A patent/CN117857257A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11283707B2 (en) | Segment routing with fast reroute for container networking | |
CN107465590B (zh) | 网络基础设施系统、路由网络业务的方法及计算机可读介质 | |
US9225636B2 (en) | Method and apparatus for exchanging IP packets among network layer 2 peers | |
US11038834B2 (en) | Selecting an external link of a plurality of external links | |
US10129137B2 (en) | Transferring data in a gateway | |
KR100624681B1 (ko) | 분산 구조 라우터의 포워딩 테이블 조합 장치 및 방법 | |
US20130170354A1 (en) | Computer system and communication method in computer system | |
US20080186968A1 (en) | Triple-tier anycast addressing | |
US11509581B2 (en) | Flow-based local egress in a multisite datacenter | |
US20220345331A1 (en) | Two-layer private line network system, configuration method, and device | |
CN112671938B (zh) | 业务服务提供方法及系统、远端加速网关 | |
CN111556110B (zh) | 一种用于私有云系统的不同物理业务网络自动化适配方法 | |
JP5169992B2 (ja) | ネットワーク、ネットワーク装置及びそれらに用いる負荷分散方法 | |
CN117041205A (zh) | 地址转换方法、装置、宿主机及计算机可读存储介质 | |
CN111800327B (zh) | Vxlan网络的流量分担方法、设备 | |
US20200274799A1 (en) | Multi-vrf and multi-service insertion on edge gateway virtual machines | |
CN116488958A (zh) | 网关处理方法、虚拟接入网关、虚拟业务网关及相关设备 | |
CN117857257A (zh) | 一种云虚拟机和传统网络互通的方法及系统 | |
US20200274791A1 (en) | Multi-vrf and multi-service insertion on edge gateway virtual machines | |
US20220231942A1 (en) | Packet processing method and related apparatus | |
US20240163211A1 (en) | Inter-realm routing within a shaft | |
CN115695087A (zh) | 跨域局域网的建立方法、装置、设备及存储介质 | |
CN116708355A (zh) | 通讯方法及云计算服务平台 | |
JP2000332776A (ja) | 通信インタフェースを有した計算機 |
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 |