CN116233038A - 一种虚拟交换机热升级的方法和装置 - Google Patents
一种虚拟交换机热升级的方法和装置 Download PDFInfo
- Publication number
- CN116233038A CN116233038A CN202211703843.9A CN202211703843A CN116233038A CN 116233038 A CN116233038 A CN 116233038A CN 202211703843 A CN202211703843 A CN 202211703843A CN 116233038 A CN116233038 A CN 116233038A
- Authority
- CN
- China
- Prior art keywords
- network card
- physical network
- virtual switch
- virtual
- daemon
- 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
- 238000000034 method Methods 0.000 title claims abstract description 90
- 230000008569 process Effects 0.000 claims description 40
- 238000004590 computer program Methods 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 claims description 6
- 230000000694 effects Effects 0.000 abstract description 4
- 238000005516 engineering process Methods 0.000 description 9
- 238000011161 development Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 101100384355 Mus musculus Ctnnbip1 gene Proteins 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/55—Prevention, detection or correction of errors
- H04L49/552—Prevention, detection or correction of errors by ensuring the integrity of packets received through redundant connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/656—Updates while running
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/65—Re-configuration of fast packet switches
-
- 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)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种虚拟交换机热升级的方法,本方法通过将两张物理网卡绑定为一个虚拟网卡的方式来实现双进程升级。首先,将第二物理网卡从虚拟绑定网卡中拆离,将宿主机的业务流量集中在第一物理网卡上,第一物理网卡与第一虚拟交换机守护进程连接实现流量转发;然后,用第二张物理网卡启动第二虚拟交换机守护进程,且加载待升级的配置信息;待第二虚拟交换机守护进程启动完毕后,退出第一虚拟交换机守护进程,将第一虚拟交换机中的第一物理网卡重新加入虚拟绑定网卡,将宿主机的业务流量集中在第一物理网卡和第二物理网卡上。本申请利用链路冗余,使双进程方案规避物理网卡的限制,达到升级几乎不断流的效果。
Description
技术领域
本申请涉及信息网络技术领域,特别涉及一种虚拟交换机热升级的方法和装置。
背景技术
近年来,随着网络的快速发展,云计算使用也越来越广泛。其中云计算网络主要采用的软件定义网络(Software Defined Network,SDN)技术,SDN技术相较于传统网络技术最典型的特点就是转控分离,即转发面与控制面分开,其中转发面很多情况下使用的就是虚拟交换机技术,比如,开源软件openvswitch作为一种经典的虚拟交换机被广泛的应用。随着云计算使用场景的更新,虚拟交换机必然会出现版本迭代以及问题修复的情况,由于一台宿主机上面只有一个虚拟交换机,在架构上无法做主备,因此升级造成网络断连会严重影响虚拟机上运行的业务。
目前可以通过双进程方式来实现虚拟交换机热升级。双进程方式是指在旧版本虚拟交换机进程的基础上,额外再创建一个独立的新版本虚拟交换机进程,此时与旧版本虚拟交换机连接的物理网卡复制流量并同时发送至新版本虚拟交换机进程和老版本虚拟交换机进程,在完成所需设置后,结束旧版本虚拟交换机进程,由新版本虚拟交换机进程提供对应服务,由此实现服务不中断的虚拟交换机热升级。
但是这种双进程热升级方式要求物理网卡能同时被两个虚拟交换机进程引用,同时将流量复制两份分别发送给两个进程,但是目前市面上支持这种的能力网卡只占少部分,大部分网卡不具备这种能力。
发明内容
本申请的目的在于提供一种虚拟交换机热升级的方法和装置,其能够改善上述问题。
本申请的实施例是这样实现的:
第一方面,本申请提供一种虚拟交换机热升级的方法,其包括:
S1、将第二物理网卡从虚拟绑定网卡中拆离,将宿主机的业务流量集中在所述虚拟绑定网卡的第一物理网卡上,所述第一物理网卡与第一虚拟交换机守护进程连接实现流量转发;
S2、通过第二张物理网卡启动第二虚拟交换机守护进程,且加载待升级的配置信息;
S3、所述第二虚拟交换机守护进程启动完毕后,退出所述第一虚拟交换机守护进程,释放所述第一物理网卡;
S4、将所述第一物理网卡重新加入所述虚拟绑定网卡,将所述宿主机的业务流量集中在所述第一物理网卡和所述第二物理网卡上,所述第二物理网卡与第二虚拟交换机守护进程连接实现流量转发。
可以理解,本申请公开了一种虚拟交换机热升级的方法,本方法通过将两张物理网卡绑定为一个虚拟网卡的方式来实现双进程升级。首先,将第二物理网卡从虚拟绑定网卡中拆离,将宿主机的业务流量集中在第一物理网卡上,第一物理网卡与第一虚拟交换机守护进程连接实现流量转发;然后,用第二张物理网卡启动第二虚拟交换机守护进程,且加载待升级的配置信息;待第二虚拟交换机守护进程启动完毕后,退出第一虚拟交换机守护进程,将第一虚拟交换机中的第一物理网卡重新加入虚拟绑定网卡,将宿主机的业务流量集中在第一物理网卡和第二物理网卡上。本申请利用链路冗余,使双进程方案规避物理网卡的限制,达到升级几乎不断流的效果。整个过程中出现丢包的地方只发生在新旧进程切换网卡的时候,由于断流时间极短,对业务影响极小,同时也摆脱了对物理网卡的依赖。
其中,所述虚拟绑定网卡为由所述第一物理网卡和所述第二物理网卡绑定成的一个虚拟网卡。
网卡绑定(bond),也称作网卡捆绑。就是将两个或者更多的物理网卡绑定成一个虚拟网卡。虚拟网卡是通过把多张网卡绑定为一个逻辑网卡,实现本地网卡的冗余,带宽扩容和负载均衡,在应用部署中是一种常用的技术。多网卡绑定实际上需要提供一个额外的软件的绑定驱动程序实现。通过绑定驱动程序可以将多块网卡屏蔽。
在本申请可选的实施例中,所述将宿主机的业务流量集中在所述虚拟绑定网卡的第一物理网卡上,包括:
断开所述第二物理网卡与任一虚拟交换机守护进程的连接;
将原本发送给所述第二物理网卡的流量发送到所述第一物理网卡上。
可以理解,在第二虚拟交换机守护进程通过第二物理网卡完成升级前,需要将宿主机的业务流量集中在第一物理网卡上,以保证升级过程中现存流量不断流。
在本申请可选的实施例中,所述将所述宿主机的业务流量集中在所述第一物理网卡和所述第二物理网卡上,包括:
通过所述第一物理网卡和所述第二物理网卡与第二虚拟交换机守护进程连接实现流量转发。
可以理解,在第二虚拟交换机守护进程通过第二物理网卡完成升级后,旧进程退出释放掉的第一个物理网卡重新加入虚拟绑定网卡,将宿主机的业务流量集中在第一物理网卡和第二物理网卡上,通过升级后的第二虚拟交换机守护进程与第一物理网卡和第二物理网卡连接以实现流量转发。
在本申请可选的实施例中,步骤S2包括:
S21、通过第二张物理网卡启动第二虚拟交换机守护进程;
S22、将所述第一虚拟交换机守护进程的配置文件同步给所述第二虚拟交换机守护进程;
S23、将所述配置文件中的所述第一物理网卡修改为所述第二物理网卡;
S24、根据修改后的所述配置文件实现所述第二虚拟交换机守护进程的升级。
其中,所述配置信息包括路由信息、流表和会话状态。
可以理解,第一虚拟交换机守护进程将其配置文件同步给所述第二虚拟交换机守护进程,但是该配置文件中使用的物理网卡仍然是第一物理网卡,因此,需要将配置文件中的第一物理网卡修改为第二物理网卡。这样,根据修改后的配置文件实现第二虚拟交换机守护进程的升级,即根据第二物理网卡实现第二虚拟交换机守护进程的升级。
其中,步骤S22包括:
S221、建立所述第一虚拟交换机守护进程和所述第二虚拟交换机守护进程之间的传输通道;
S222、通知所述第一虚拟交换机守护进程释放资源且将配置文件通过所述传输通道同步给所述第二虚拟交换机守护进程。
其中,步骤S24包括:根据所述第二物理网卡完成所述第二虚拟交换机守护进程的DPDK初始化后,加载所述配置文件,以实现所述第二虚拟交换机守护进程的升级。
数据平面开发套件(Data Plane Development Ki t,DPDK)主要基于Linux系统运行,用于快速数据包处理的函数库与驱动集合,可以极大提高数据处理性能和吞吐量,提高数据平面应用程序的工作效率。
第二方面,本申请提供了一种虚拟交换机热升级的装置,包括:
第一业务流量切换模块,用于将第二物理网卡从虚拟绑定网卡中拆离,将宿主机的业务流量集中在所述虚拟绑定网卡的第一物理网卡上,所述第一物理网卡与第一虚拟交换机守护进程连接实现流量转发;
升级模块,用于启动第二虚拟交换机守护进程,且加载待升级的配置信息;
退出旧进程模块,用于所述第二虚拟交换机守护进程启动完毕后,退出所述第一虚拟交换机守护进程;
第二业务流量切换模块,用于将所述第二物理网卡重新加入所述虚拟绑定网卡,将所述宿主机的业务流量集中在所述第二物理网卡上,所述第二物理网卡与第二虚拟交换机守护进程连接实现流量转发。
第三方面,本申请还公开了另一种虚拟交换机热升级的装置,包括:处理器和存储器,所述处理器和所述存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如第一方面任一项所述的方法。
第四方面,本申请还公开了一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如第一方面任一项所述的方法。
有益效果:
本申请公开了一种虚拟交换机热升级的方法,本方法通过将两张物理网卡绑定为一个虚拟网卡的方式来实现双进程升级。首先,将第二物理网卡从虚拟绑定网卡中拆离,将宿主机的业务流量集中在第一物理网卡上,第一物理网卡与第一虚拟交换机守护进程连接实现流量转发;然后,用第二张物理网卡启动第二虚拟交换机守护进程,且加载待升级的配置信息;待第二虚拟交换机守护进程启动完毕后,退出第一虚拟交换机守护进程,将第一虚拟交换机中的第一物理网卡重新加入虚拟绑定网卡,将宿主机的业务流量集中在第一物理网卡和第二物理网卡上。
本申请利用链路冗余,使双进程方案规避物理网卡的限制,达到升级几乎不断流的效果。整个过程中出现丢包的地方只发生在新旧进程切换网卡的时候,由于断流时间极短,对业务影响极小,同时也摆脱了对物理网卡的依赖。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举可选实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是传统虚拟交换机的内部运作示意图;
图2是引入DPDK加速技术的虚拟交换机的内部运作示意图;
图3是本申请提供的第二物理网卡从虚拟绑定网卡中拆离的示意图;
图4是本申请提供的一种虚拟交换机热升级的方法的流程图;
图5是本申请提供的一种虚拟交换机热升级的装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
虚拟交换机(Centrex),利用公众网络的资源来组成专用网络,为公众网络用户提供虚拟专用交换分机(Private Branch Exchange,PBX)服务的特殊交换功能,因此又称为集中用户小交换机或者虚拟用户交换机。开源软件openvswitch作为一种经典的虚拟交换机被广泛的应用。
如图1所示为例如openvswitch的传统虚拟交换机的内部运作示意图。可见,传统openvswitch通过用户态进程中的守护进程(ovs-vswitchd)加内核中的数据通道(datapath)来完成交换机的功能。可以将用户态进程中的中的守护进程(ovs-vswitchd)看作是虚拟交换机的控制面,将内核中的数据通道(datapath)看作是真正的转发面。
真正转发报文的是数据通道(datapath),守护进程(ovs-vswitchd)作为控制面只需要生成对应的转发逻辑下发给数据通道(datapath)就行。而且一般需要功能迭代的也只是控制面。在传统openvswitch中,只要在升级过程中,切断控制面和转发面的沟通通道,让转发面继续维持现存流量的转发,替换控制面守护进程(ovs-vswitchd),在新的守护进程(ovs-vswitchd)控制面生效后,恢复控制面和转发面的沟通即可。在这个升级过程中,完全可以做到现存流量不断流。
随着互联网的蓬勃发展,对云计算的网络转发性能要求也越来越高,基于传统虚拟交换机使用方式已经不能满足网络性能要求,因此虚拟交换机引入了数据平面开发套件(Data Plane Development Kit,DPDK)加速技术来提升网络转发性能,这就导致原先内核数据通道(datapath)消失了,转发面融入到了原先守护进程(ovs-vswitchd)控制面中,如图2所示为引入DPDK加速技术的虚拟交换机的内部运作示意图。
如图2所示,真正完成转发的模块变成了轮询式驱动器(Pol l Mode Drivers,PMD),而PMD是守护进程(ovs-vswitchd)进程的线程,它们之间无法分离,因此不能继续沿用原先的热升级方式,但是升级的需求依然存在。
如果简单的重启进程完成升级替换,这会造成虚机业务长时间断流。虚拟交换机在引入DPDK之后,守护进程在启动过程中会花费较长时间完成DPDK初始化,再加上SDN架构中的流表恢复,尤其是现在云计算规模越来越大,SDN流表也越来越多,整个流表恢复时间也需要花费大量时间。
数据平面开发套件(Data Plane Development Kit,DPDK)主要基于Linux系统运行,用于快速数据包处理的函数库与驱动集合,可以极大提高数据处理性能和吞吐量,提高数据平面应用程序的工作效率。
鉴于此,已有相关技术说明,可以通过双进程方式来实现虚拟交换机中DPDK的热升级。双进程方式可以完全规避DPDK初始化和流表恢复的时间开销。具体实现方式为在旧版的守护进程的基础上,再额外创建一个独立的新版本守护进程,此时与旧版本守护进程连接的物理网卡复制流量并同时发送至新版本守护进程和老版本守护进程,在完成所需设置后,结束旧版本守护进程,由新版本守护进程提供对应服务,由此实现服务不中断的虚拟交换机热升级。但是这种双进程热升级方式要求物理网卡能同时被两个守护进程引用,同时将流量复制两份分别发送个两个进程,但是目前市面上支持这种的能力网卡只占少部分,大部分网卡不具备这种能力。
第一方面,本申请提供一种虚拟交换机热升级的方法,其包括:
S1、将第二物理网卡从虚拟绑定网卡中拆离,将宿主机的业务流量集中在虚拟绑定网卡的第一物理网卡上。其中,第一物理网卡与第一虚拟交换机守护进程连接实现流量转发。
其中,虚拟绑定网卡为由第一物理网卡和第二物理网卡绑定成的一个虚拟网卡。
网卡绑定(bond),也称作网卡捆绑。就是将两个或者更多的物理网卡绑定成一个虚拟网卡。虚拟网卡是通过把多张网卡绑定为一个逻辑网卡,实现本地网卡的冗余,带宽扩容和负载均衡,在应用部署中是一种常用的技术。多网卡绑定实际上需要提供一个额外的软件的绑定驱动程序实现。通过绑定驱动程序可以将多块网卡屏蔽。
在本申请可选的实施例中,将宿主机的业务流量集中在虚拟绑定网卡的第一物理网卡上,包括:断开第二物理网卡与任一虚拟交换机守护进程的连接;将原本发送给第二物理网卡的流量发送到第一物理网卡上。
可以理解,在第二虚拟交换机守护进程通过第二物理网卡完成升级前,需要将宿主机的业务流量集中在第一物理网卡上,以保证升级过程中现存流量不断流。
如图3所示为本申请提供的将宿主机的业务流量集中在第一物理网卡上的示意图。利用LACP协议,通知第二交换机侧端口状态断开,将原先第二交换机发送给第二物理网卡的流量转到第一物理网卡上,利用虚拟交换机自带的命令拆掉第二物理网卡,将由第二物理网卡发送的流量转到第一物理网卡上,此时所有收发流量都集中在第一物理网卡上。
S2、通过第二张物理网卡启动第二虚拟交换机守护进程,且加载待升级的配置信息。
S3、第二虚拟交换机守护进程启动完毕后,退出第一虚拟交换机守护进程,释放所述第一物理网卡。
S4、将第一物理网卡重新加入虚拟绑定网卡,将宿主机的业务流量集中在第一物理网卡和第二物理网卡上,第一物理网卡和第二物理网卡与第二虚拟交换机守护进程连接实现流量转发。
在本申请可选的实施例中,所述将所述宿主机的业务流量集中在所述第一物理网卡和所述第二物理网卡上,包括:通过所述第一物理网卡和所述第二物理网卡与第二虚拟交换机守护进程连接实现流量转发。可以理解,在第二虚拟交换机守护进程通过第二物理网卡完成升级后,旧进程退出释放掉的第一个物理网卡重新加入虚拟绑定网卡,将宿主机的业务流量集中在第一物理网卡和第二物理网卡上,通过升级后的第二虚拟交换机守护进程与第一物理网卡和第二物理网卡连接以实现流量转发。
可以理解,本申请公开了一种虚拟交换机热升级的方法,本方法通过将两张物理网卡绑定为一个虚拟网卡的方式来实现双进程升级。首先,将第二物理网卡从虚拟绑定网卡中拆离,将宿主机的业务流量集中在第一物理网卡上,第一物理网卡与第一虚拟交换机守护进程连接实现流量转发;然后,用第二张物理网卡启动第二虚拟交换机守护进程,且加载待升级的配置信息;待第二虚拟交换机守护进程启动完毕后,退出第一虚拟交换机守护进程,将第一物理网卡重新加入虚拟绑定网卡,将宿主机的业务流量集中在第一物理网卡和第二物理网卡上。本申请利用链路冗余,使双进程方案规避物理网卡的限制,达到升级几乎不断流的效果。整个过程中出现丢包的地方只发生在新旧进程切换网卡的时候,由于断流时间极短,对业务影响极小,同时也摆脱了对物理网卡的依赖。
在本申请可选的实施例中,步骤S2包括:
S21、通过第二张物理网卡启动第二虚拟交换机守护进程。
S22、将第一虚拟交换机守护进程的配置文件同步给第二虚拟交换机守护进程。
其中,配置信息包括路由信息、流表和会话状态。
其中,步骤S22包括:
S221、建立第一虚拟交换机守护进程和第二虚拟交换机守护进程之间的传输通道。
S222、通知第一虚拟交换机守护进程释放资源且将配置文件通过传输通道同步给第二虚拟交换机守护进程。
S23、将配置文件中的第一物理网卡修改为第二物理网卡。
S24、根据修改后的配置文件实现第二虚拟交换机守护进程的升级。
其中,步骤S24包括:根据第二物理网卡完成第二虚拟交换机守护进程的DPDK初始化后,加载配置文件,以实现第二虚拟交换机守护进程的升级。
可以理解,第一虚拟交换机守护进程将其配置文件同步给第二虚拟交换机守护进程,但是该配置文件中使用的物理网卡仍然是第一物理网卡,因此,需要将配置文件中的第一物理网卡修改为第二物理网卡。这样,根据修改后的配置文件实现第二虚拟交换机守护进程的升级,即根据第一物理网卡和第二物理网卡实现第二虚拟交换机守护进程的升级。
举例说明,如图4所示为本申请提供的一种虚拟交换机热升级的方法的流程图。其中,新版本守护进程即为上述第二虚拟交换机守护进程,旧版本守护进程即为上述第一虚拟交换机守护进程。
首先,拆分虚拟绑定网卡,将第二物理网卡从虚拟绑定网卡中拆离,将宿主机的业务流量集中在第一物理网卡上。
接着,新版本守护进程开始启动新进程,新版本守护进程通过新旧进程之间的通道,通知旧版本守护进程释放资源;旧版本守护进程释放资源后开始同步配置和流表给新版本守护进程。
随后,由于新版本守护进程启动时使用的是跟旧版本守护进程相同的配置文件,因此此时新版本守护进程使用的也是第一物理网卡,所以需要修改使用的物理网卡为第二物理网卡。
然后,旧版本守护进程通知新版本守护进程信息同步完毕。新版本守护进程用修改后的第二物理网卡完成DPDK初始化,然后再加载路由等信息。
最后,在新版本守护进程完成升级后,通知退出旧版本守护进程,释放第一物理网卡;将第一物理网卡重新加入虚拟绑定网卡,将宿主机的业务流量集中在第一物理网卡和第二物理网卡上,第一物理网卡和第二物理网卡与新版本守护进程连接实现流量转发。
第二方面,本申请公开了一种虚拟交换机热升级的装置,包括第一业务流量切换模块,用于将第二物理网卡从虚拟绑定网卡中拆离,将宿主机的业务流量集中在所述虚拟绑定网卡的第一物理网卡上,所述第一物理网卡与第一虚拟交换机守护进程连接实现流量转发;
升级模块,用于启动第二虚拟交换机守护进程,且加载待升级的配置信息;
退出旧进程模块,用于所述第二虚拟交换机守护进程启动完毕后,退出所述第一虚拟交换机守护进程;
第二业务流量切换模块,用于将所述第二物理网卡重新加入所述虚拟绑定网卡,将所述宿主机的业务流量集中在所述第二物理网卡上,所述第二物理网卡与第二虚拟交换机守护进程连接实现流量转发。
具体执行实施情况与第一方面所描述的相似,这里不再赘述。
第三方面,本申请提供一种虚拟交换机热升级的装置。如图5所示,虚拟交换机热升级的装置包括一个或多个处理器601和存储器602。上述处理器601、和存储器602通过总线603连接。存储器602用于存储计算机程序,该计算机程序包括程序指令,处理器601用于执行存储器602存储的程序指令。其中,处理器601被配置用于调用该程序指令执行第一方面任一方法的操作:
应当理解,在本发明实施例中,所称处理器601可以是中央处理单元(CentralProcess ing Uni t,CPU),该处理器还可以是其他通用处理器、数字信号处理器(Digi talSignal Processor,DSP)、专用集成电路(Appl icat ion Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器602可以包括只读存储器和随机存取存储器,并向处理器601提供指令和数据。存储器602的一部分还可以包括非易失性随机存取存储器。例如,存储器602还可以存储设备类型的信息。
具体实现中,本发明实施例中所描述的处理器601可执行第一方面任一方法所描述的实现方式,也可执行本发明实施例所描述的虚拟交换机热升级的装置的实现方式,在此不再赘述。
第四方面,本发明供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令被处理器执行时实现第一方面任一方法的步骤。
上述计算机可读存储介质可以是前述任一实施例的虚拟交换机热升级的装置的内部存储单元,例如虚拟交换机热升级的装置的硬盘或内存。上述计算机可读存储介质也可以是上述虚拟交换机热升级的装置的外部存储设备,例如上述虚拟交换机热升级的装置上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,上述计算机可读存储介质还可以既包括上述虚拟交换机热升级的装置的内部存储单元也包括外部存储设备。上述计算机可读存储介质用于存储上述计算机程序以及上述虚拟交换机热升级的装置所需的其他程序和数据。上述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的虚拟交换机热升级的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例中方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本公开的各种实施方式中所使用的表述“第一”、“第二”、“所述第一”或“所述第二”可修饰各种部件而与顺序和/或重要性无关,但是这些表述不限制相应部件。以上表述仅配置为将元件与其它元件区分开的目的。例如,第一用户设备和第二用户设备表示不同的用户设备,虽然两者均是用户设备。例如,在不背离本公开的范围的前提下,第一元件可称作第二元件,类似地,第二元件可称作第一元件。
当一个元件(例如,第一元件)称为与另一元件(例如,第二元件)“(可操作地或可通信地)联接”或“(可操作地或可通信地)联接至”另一元件(例如,第二元件)或“连接至”另一元件(例如,第二元件)时,应理解为该一个元件直接连接至该另一元件或者该一个元件经由又一个元件(例如,第三元件)间接连接至该另一个元件。相反,可理解,当元件(例如,第一元件)称为“直接连接”或“直接联接”至另一元件(第二元件)时,则没有元件(例如,第三元件)插入在这两者之间。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素,此外,本申请不同实施例中具有同样命名的部件、特征、要素可能具有相同含义,也可能具有不同含义,其具体含义需以其在该具体实施例中的解释或者进一步结合该具体实施例中上下文进行确定。
以上描述仅为本申请的可选实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
以上描述仅为本申请的可选实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
以上所述仅为本申请的可选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种虚拟交换机热升级的方法,其特征在于,包括:
将第二物理网卡从虚拟绑定网卡中拆离,将宿主机的业务流量集中在所述虚拟绑定网卡的第一物理网卡上,所述第一物理网卡与第一虚拟交换机守护进程连接实现流量转发;
通过第二张物理网卡启动第二虚拟交换机守护进程,且加载待升级的配置信息;
所述第二虚拟交换机守护进程启动完毕后,退出所述第一虚拟交换机守护进程,释放所述第一物理网卡;
将所述第一物理网卡重新加入所述虚拟绑定网卡,将所述宿主机的业务流量集中在所述第一物理网卡和所述第二物理网卡上。
2.根据权利要求1所述的虚拟交换机热升级的方法,其特征在于,
所述虚拟绑定网卡为由所述第一物理网卡和所述第二物理网卡绑定成的一个虚拟网卡。
3.根据权利要求2所述的虚拟交换机热升级的方法,其特征在于,
所述将宿主机的业务流量集中在所述虚拟绑定网卡的第一物理网卡上,包括:
断开所述第二物理网卡与任一虚拟交换机守护进程的连接;
将原本发送给所述第二物理网卡的流量发送到所述第一物理网卡上。
4.根据权利要求1所述的虚拟交换机热升级的方法,其特征在于,
所述通过第二张物理网卡启动第二虚拟交换机守护进程,且加载待升级的配置信息,包括:
通过第二张物理网卡启动第二虚拟交换机守护进程;
将所述第一虚拟交换机守护进程的配置文件同步给所述第二虚拟交换机守护进程;
将所述配置文件中的所述第一物理网卡修改为所述第二物理网卡;
根据修改后的所述配置文件实现所述第二虚拟交换机守护进程的升级。
5.根据权利要求4所述的虚拟交换机热升级的方法,其特征在于,
所述将所述第一虚拟交换机守护进程的配置文件同步给所述第二虚拟交换机守护进程,包括:
建立所述第一虚拟交换机守护进程和所述第二虚拟交换机守护进程之间的传输通道;
通知所述第一虚拟交换机守护进程释放资源且将配置文件通过所述传输通道同步给所述第二虚拟交换机守护进程。
6.根据权利要求4所述的虚拟交换机热升级的方法,其特征在于,
所述根据修改后的所述配置文件实现所述第二虚拟交换机守护进程的升级,包括:
根据所述第二物理网卡完成所述第二虚拟交换机守护进程的DPDK初始化后,加载所述配置文件,以实现所述第二虚拟交换机守护进程的升级。
7.根据权利要求2所述的虚拟交换机热升级的方法,其特征在于,
所述将所述宿主机的业务流量集中在所述第一物理网卡和所述第二物理网卡上,包括:
通过所述第一物理网卡和所述第二物理网卡与第二虚拟交换机守护进程连接实现流量转发。
8.一种虚拟交换机热升级的装置,其特征在于,
第一业务流量切换模块,用于将第二物理网卡从虚拟绑定网卡中拆离,将宿主机的业务流量集中在所述虚拟绑定网卡的第一物理网卡上,所述第一物理网卡与第一虚拟交换机守护进程连接实现流量转发;
升级模块,用于启动第二虚拟交换机守护进程,且加载待升级的配置信息;
退出旧进程模块,用于所述第二虚拟交换机守护进程启动完毕后,退出所述第一虚拟交换机守护进程;
第二业务流量切换模块,用于将所述第二物理网卡重新加入所述虚拟绑定网卡,将所述宿主机的业务流量集中在所述第二物理网卡上,所述第二物理网卡与第二虚拟交换机守护进程连接实现流量转发。
9.一种虚拟交换机热升级的装置,其特征在于,
包括处理器和存储器,所述处理器和所述存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,
所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1至7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211703843.9A CN116233038B (zh) | 2022-12-29 | 一种虚拟交换机热升级的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211703843.9A CN116233038B (zh) | 2022-12-29 | 一种虚拟交换机热升级的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116233038A true CN116233038A (zh) | 2023-06-06 |
CN116233038B CN116233038B (zh) | 2024-09-27 |
Family
ID=
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101419535A (zh) * | 2008-11-19 | 2009-04-29 | 北京航空航天大学 | 虚拟机的分布式虚拟磁盘系统 |
CN103139039A (zh) * | 2013-02-25 | 2013-06-05 | 汉柏科技有限公司 | 一种实现流量隔离控制的虚拟网络及构建方法 |
CN103324532A (zh) * | 2013-06-28 | 2013-09-25 | 东软集团股份有限公司 | 虚拟机的动态迁移方法及系统 |
CN105429946A (zh) * | 2015-10-28 | 2016-03-23 | 广州西麦科技股份有限公司 | 一种基于sdn虚拟交换机的防伪造ip的系统及方法 |
WO2018000195A1 (zh) * | 2016-06-28 | 2018-01-04 | 华为技术有限公司 | 一种报文传输方法、虚拟交换机及服务器 |
CN109981493A (zh) * | 2019-04-09 | 2019-07-05 | 苏州浪潮智能科技有限公司 | 一种用于配置虚拟机网络的方法和装置 |
CN110417573A (zh) * | 2019-05-20 | 2019-11-05 | 华为技术有限公司 | 一种数据传送的方法及系统 |
CN113709200A (zh) * | 2020-05-21 | 2021-11-26 | 阿里巴巴集团控股有限公司 | 一种建立通信连接的方法及装置 |
CN114710408A (zh) * | 2022-03-18 | 2022-07-05 | 阿里云计算有限公司 | 实现虚拟交换机热升级的方法及装置 |
CN114826913A (zh) * | 2017-11-30 | 2022-07-29 | 华为技术有限公司 | 业务不中断的虚拟交换机升级方法以及相关设备 |
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101419535A (zh) * | 2008-11-19 | 2009-04-29 | 北京航空航天大学 | 虚拟机的分布式虚拟磁盘系统 |
CN103139039A (zh) * | 2013-02-25 | 2013-06-05 | 汉柏科技有限公司 | 一种实现流量隔离控制的虚拟网络及构建方法 |
CN103324532A (zh) * | 2013-06-28 | 2013-09-25 | 东软集团股份有限公司 | 虚拟机的动态迁移方法及系统 |
CN105429946A (zh) * | 2015-10-28 | 2016-03-23 | 广州西麦科技股份有限公司 | 一种基于sdn虚拟交换机的防伪造ip的系统及方法 |
WO2018000195A1 (zh) * | 2016-06-28 | 2018-01-04 | 华为技术有限公司 | 一种报文传输方法、虚拟交换机及服务器 |
CN114826913A (zh) * | 2017-11-30 | 2022-07-29 | 华为技术有限公司 | 业务不中断的虚拟交换机升级方法以及相关设备 |
CN109981493A (zh) * | 2019-04-09 | 2019-07-05 | 苏州浪潮智能科技有限公司 | 一种用于配置虚拟机网络的方法和装置 |
CN110417573A (zh) * | 2019-05-20 | 2019-11-05 | 华为技术有限公司 | 一种数据传送的方法及系统 |
CN113709200A (zh) * | 2020-05-21 | 2021-11-26 | 阿里巴巴集团控股有限公司 | 一种建立通信连接的方法及装置 |
CN114710408A (zh) * | 2022-03-18 | 2022-07-05 | 阿里云计算有限公司 | 实现虚拟交换机热升级的方法及装置 |
Non-Patent Citations (3)
Title |
---|
TIANXU YANG: "Research and realization of digital export boards in CPCI test system based on high availability hot-swap technology", 《2016 IEEE 11TH CONFERENCE ON INDUSTRIAL ELECTRONICS AND APPLICATIONS (ICIEA)》, 24 October 2016 (2016-10-24) * |
何洋: "面向OpenFlow虚拟交换机的高效包分类方法研究", 《中国优秀硕士论文全文数据库》, 15 June 2019 (2019-06-15) * |
张郁: "基于DPDK实现企业网络性能优化的研究与设计", 《中国优秀硕士论文全文数据库》, 15 January 2019 (2019-01-15) * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101573940B (zh) | 用于tcp高可用性的方法和装置 | |
US8448162B2 (en) | Hitless software upgrades | |
CN109861839B (zh) | 业务不中断的虚拟交换机升级方法以及相关设备 | |
EP2189903B1 (en) | Barrier synchronization apparatus, barrier synchronization system, and barrier synchronization method | |
US9465417B2 (en) | Cluster system, method and device for expanding cluster system | |
US20110231833A1 (en) | Upgrading system software in a chassis without traffic loss | |
US20130142202A1 (en) | Distributing functions in a distributed and embedded environment | |
US20080163248A1 (en) | System and method for completeness of tcp data in tcp ha | |
JP5251457B2 (ja) | データ伝送装置 | |
US11403319B2 (en) | High-availability network device database synchronization | |
CN102577258A (zh) | 配置三级clos网络分组交换机 | |
CN112737956A (zh) | 报文的发送方法和第一网络设备 | |
CN111654384A (zh) | 一种主备切换方法、bras设备及存储介质 | |
US20100082875A1 (en) | Transfer device | |
CN109150709B (zh) | 一种实现Mux机的方法、设备及系统 | |
CN116233038A (zh) | 一种虚拟交换机热升级的方法和装置 | |
CN103200092A (zh) | 一种基于虚拟网络设备的路由进程管理方法和设备 | |
CN109951324A (zh) | 一种网板隔离实现方法及装置 | |
CN116700595A (zh) | 一种基于缓存的数据处理方法、系统及设备 | |
CN110795212B (zh) | 基于框式设备的主备主控配置同步方法和装置 | |
CN109413118A (zh) | 一种实现会话同步的方法、装置及存储介质、程序产品 | |
GB2587447A (en) | Information processing apparatus, information processing system, and information processing program | |
WO2023103741A1 (zh) | 一种虚拟交换机升级方法、设备、电子设备和存储介质 | |
Srivastava | Redundancy management for network devices | |
JP6807905B2 (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 |