CN115499385B - 一种vDPA虚机热迁移不丢包的方法 - Google Patents
一种vDPA虚机热迁移不丢包的方法 Download PDFInfo
- Publication number
- CN115499385B CN115499385B CN202211150314.0A CN202211150314A CN115499385B CN 115499385 B CN115499385 B CN 115499385B CN 202211150314 A CN202211150314 A CN 202211150314A CN 115499385 B CN115499385 B CN 115499385B
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- host
- target host
- vdpa
- network card
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/33—Flow control; Congestion control using forward notification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/20—Network management software packages
-
- 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
本发明涉及虚机迁移技术领域,提供一种vDPA虚机热迁移不丢包的方法,包括:根据热迁移请求,将源主机上的主要脏页推送至目标主机;通过源主机虚拟交换机将流量从源主机vDPA网卡迁移至目标主机的网卡,目标主机开始抓取缓存报文并将缓存报文存入网卡;暂停源主机虚机,将源主机上剩余的脏页全部推送至目标主机;在完成所有脏页推送后,启动目标主机虚机,将缓存报文发送至vDPA网卡,将流量迁移至vDPA网卡,完成虚机迁移。根据本发明示例性实施例的vDPA虚机热迁移不丢包的方法,可以解决热迁移期间的丢包问题,确保虚机整个热迁移期间无报文丢失。
Description
技术领域
本发明涉及虚机迁移技术领域,尤其涉及一种vDPA虚机热迁移不丢包的方法。
背景技术
virtio是一种标准的半虚拟化IO设备模型,广泛用于云计算中的网络、存储等虚拟化。而网络或存储等的虚拟化很容易遇到性能瓶颈问题,为解决这一问题,红帽、迈络思、因特尔等厂商提出vDPA(virtio data path acceleration,一般指virtio网络数据层硬件加速)网络解决方案。vDPA分控制通道和数据通道,控制通道按照各厂商自定义格式实现,简化了厂商的开发难度;数据通道遵循vritio协议实现。vDPA目前基于因特尔CPU和迈络思双口25G光卡测试,64字节小包可以达到31Mpps。
如图1所示,vDPA网络解决方案应用于虚机热迁移场景过程中的不足在于,依然会有丢包,这种丢包需要客户在传输层甚至应用层做出保护,否则就会导致业务运行异常。但是这种基于传输层甚至应用层做保护的行文对用户技术要求高,增加了用户业务程序开发成本,甚至可能会降低程序的稳定行,因此这种解决方案不适用于小规模应用的用户。另外如果虚机中运行的为DPI业务(深度报文识别),报文只会发送一次,且不会重传,报文一旦丢失,就会造成不可修复的危害。这种应用场景,用户从业务程序角度,根本没办法解决热迁移期间丢包的问题。
因此,如何提供一种虚机热迁移不丢包的解决方案,成为亟待解决的技术问题。
发明内容
有鉴于此,为了克服现有技术的不足,本发明提供一种vDPA虚机热迁移不丢包的解决方案,由vDPA虚机保障无报文丢失,避免因为虚机热迁移而影响用户端的业务。
本发明vDPA虚机热迁移不丢包的方法,包括:
步骤S1:根据热迁移请求,将源主机上的主要脏页推送至目标主机;
步骤S2:通过源主机虚拟交换机将流量从源主机vDPA网卡迁移至目标主机的网卡,目标主机开始抓取缓存报文并将缓存报文存入网卡;
步骤S3:暂停源主机虚机,将源主机上剩余的脏页全部推送至目标主机;
步骤S4:在完成所有脏页推送后,启动目标主机虚机,将缓存报文发送至vDPA网卡,将流量迁移至vDPA网卡,完成虚机迁移。
进一步地,本发明vDPA虚机热迁移不丢包的方法的步骤S1,包括:
用户端根据源主机运行状态向源主机虚拟化管理软件发送热迁移请求;
源主机虚拟化管理软件接收热迁移请求后与目标主机虚拟化管理软件建立SOCKET连接;
目标主机虚拟化管理软件创建网卡并启动缓存程序;
源主机虚拟化管理软件将需要迁移的源主机虚机对应的脏页推送至目标主机虚拟化管理软件;
当完成一次推送后,继续推送上一次推送期间产生的脏页;
不断重复推送,当推送的脏页大小小于设定值时,判定主要脏页推送完成,停止脏页推送。
进一步地,本发明vDPA虚机热迁移不丢包的方法的步骤S2,包括:源主机虚拟化管理软件通知源主机虚拟交换机迁移流量至网卡,停止源主机虚拟交换机与源主机vDPA网卡之间的流量收发,并将流量迁入至目标主机虚拟交换机,目标主机虚拟交换机与目标主机的网卡之间开始持续相互收发流量。
进一步地,本发明vDPA虚机热迁移不丢包的方法的步骤S3,包括:暂停源主机虚机,采用源主机虚拟化管理软件将源主机虚机暂停前的脏页发送至目标主机虚拟化管理软件,通过源主机虚拟化管理软件通知目标主机虚拟化管理软件脏页推送完成。
进一步地,本发明vDPA虚机热迁移不丢包的方法的步骤S4,包括:
目标主机虚拟化管理软件接收脏页推送完成的通知后启动目标主机虚机,并同时启动目标主机vDPA网卡;
目标主机虚机启动后,通过目标主机虚拟化管理软件通知目标主机网卡发送缓存报文,目标主机网卡将缓存报文发送至目标主机vDPA网卡;
通过目标主机虚拟化管理软件通知目标主机虚拟交换机迁移流量至目标主机vDPA网卡,停止目标主机虚拟交换机与网卡之间的流量收发,通过目标主机虚拟交换机将目标主机网卡中的流量迁移至目标主机vDPA网卡。
进一步地,本发明vDPA虚机热迁移不丢包的方法的步骤S4,还包括:
通过目标主机虚拟化管理软件向源主机虚拟化管理软件发送虚机启动完成的通知;
断开源主机和目标主机的SOCKET连接,并由源主机释放虚机;
通过源主机虚拟化管理软件向用户端返回完成热迁移完成的通知。
进一步地,本发明vDPA虚机热迁移不丢包的方法的步骤S4中,由源主机释放虚机资源,包括:通过源主机虚拟化管理软件向源主机虚机发送释放虚机资源的通知,释放虚机内存,并通过源主机虚机释放源主机vDPA网卡。
本发明vDPA虚机热迁移不丢包的方法,可以解决热迁移期间的丢包问题,确保虚机整个热迁移期间无报文丢失。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为现有技术中虚机迁移方法的流程图。
图2为本发明示例性第一实施例的一种vDPA虚机热迁移不丢包的方法的流程图。
图3为本发明示例性第一实施例的一种vDPA虚机热迁移不丢包的方法的执行流程图。
实施方式
下面结合附图对本发明实施例进行详细描述。
需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合;并且,基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
需要说明的是,下文描述在所附权利要求书的范围内的实施例的各种方面。应显而易见,本文中所描述的方面可体现于广泛多种形式中,且本文中所描述的任何特定结构及/或功能仅为说明性的。基于本公开,所属领域的技术人员应了解,本文中所描述的一个方面可与任何其它方面独立地实施,且可以各种方式组合这些方面中的两者或两者以上。举例来说,可使用本文中所阐述的任何数目个方面来实施设备及/或实践方法。另外,可使用除了本文中所阐述的方面中的一或多者之外的其它结构及/或功能性实施此设备及/或实践此方法。
图2为根据本发明示例性第一实施例的一种vDPA虚机热迁移不丢包的方法的流程图,图3为根据本发明示例性第一实施例的一种vDPA虚机热迁移不丢包的方法的执行流程图,如图2和图3所示,本实施例的方法,包括:
步骤S1:根据热迁移请求,将源主机上的主要脏页推送至目标主机;
步骤S2:通过源主机虚拟交换机将流量从源主机vDPA网卡迁移至目标主机的网卡,目标主机开始抓取缓存报文并将缓存报文存入网卡;
步骤S3:暂停源主机虚机,将源主机上剩余的脏页全部推送至目标主机;
步骤S4:在完成所有脏页推送后,启动目标主机虚机,将缓存报文发送至vDPA网卡,将流量迁移至vDPA网卡,完成虚机迁移。
本发明示例性第二实施例提供一种vDPA虚机热迁移不丢包的方法,本实施例是图2和图3所示方法的优选实施例,本实施例vDPA虚机热迁移不丢包的方法的步骤S1,包括:
用户端根据源主机运行状态向源主机虚拟化管理软件发送热迁移请求;
源主机虚拟化管理软件接收热迁移请求后与目标主机虚拟化管理软件建立SOCKET连接;
目标主机虚拟化管理软件创建网卡并启动缓存程序;
源主机虚拟化管理软件将需要迁移的源主机虚机对应的脏页推送至目标主机虚拟化管理软件;
当完成一次推送后,继续推送上一次推送期间产生的脏页;
不断重复推送,当推送的脏页大小小于设定值时,判定主要脏页推送完成,停止脏页推送。
本发明示例性第三实施例提供一种vDPA虚机热迁移不丢包的方法,本实施例是图2和图3所示方法的优选实施例,本实施例vDPA虚机热迁移不丢包的方法的步骤S2,包括:源主机虚拟化管理软件通知源主机虚拟交换机迁移流量至网卡,停止源主机虚拟交换机与源主机vDPA网卡之间的流量收发,并将流量迁入至目标主机虚拟交换机,目标主机虚拟交换机与目标主机的网卡之间开始持续相互收发流量。
本发明示例性第四实施例提供一种vDPA虚机热迁移不丢包的方法,本实施例是图2和图3所示方法的优选实施例,本实施例vDPA虚机热迁移不丢包的方法的步骤S3,包括:暂停源主机虚机,采用源主机虚拟化管理软件将源主机虚机暂停前的脏页发送至目标主机虚拟化管理软件,通过源主机虚拟化管理软件通知目标主机虚拟化管理软件脏页推送完成。
本发明示例性第五实施例提供一种vDPA虚机热迁移不丢包的方法,本实施例是图2和图3所示方法的优选实施例。
本实施例vDPA虚机热迁移不丢包的方法的步骤S4,包括:
目标主机虚拟化管理软件接收脏页推送完成的通知后启动目标主机虚机,并同时启动目标主机vDPA网卡;
目标主机虚机启动后,通过目标主机虚拟化管理软件通知目标主机网卡发送缓存报文,目标主机网卡将缓存报文发送至目标主机vDPA网卡;
通过目标主机虚拟化管理软件通知目标主机虚拟交换机迁移流量至目标主机vDPA网卡,停止目标主机虚拟交换机与网卡之间的流量收发,通过目标主机虚拟交换机将目标主机网卡中的流量迁移至目标主机vDPA网卡。
本实施例vDPA虚机热迁移不丢包的方法的步骤S4,还包括:
通过目标主机虚拟化管理软件向源主机虚拟化管理软件发送虚机启动完成的通知;
断开源主机和目标主机的SOCKET连接,并由源主机释放虚机;
通过源主机虚拟化管理软件向用户端返回完成热迁移完成的通知。
在实际应用中,本实施例vDPA虚机热迁移不丢包的方法的步骤S4中,由源主机释放虚机资源,包括:通过源主机虚拟化管理软件向源主机虚机发送释放虚机资源的通知,释放虚机内存,并通过源主机虚机释放源主机vDPA网卡。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (5)
1.一种vDPA虚机热迁移不丢包的方法,其特征在于,所述方法,包括:
步骤S1:根据热迁移请求,将源主机上的主要脏页推送至目标主机;
步骤S2:通过源主机虚拟交换机将流量从源主机vDPA网卡迁移至目标主机的网卡,目标主机开始抓取缓存报文并将缓存报文存入网卡;
步骤S3:暂停源主机虚机,将源主机上剩余的脏页全部推送至目标主机;
步骤S4:在完成所有脏页推送后,启动目标主机虚机,将缓存报文发送至vDPA网卡,将流量迁移至vDPA网卡,完成虚机迁移;
步骤S2包括:源主机虚拟化管理软件通知源主机虚拟交换机迁移流量至网卡,停止源主机虚拟交换机与源主机vDPA网卡之间的流量收发,并将流量迁入至目标主机虚拟交换机,目标主机虚拟交换机与目标主机的网卡之间开始持续相互收发流量;
步骤S4包括:
目标主机虚拟化管理软件接收脏页推送完成的通知后启动目标主机虚机,并同时启动目标主机vDPA网卡;
目标主机虚机启动后,通过目标主机虚拟化管理软件通知目标主机网卡发送缓存报文,目标主机网卡将缓存报文发送至目标主机vDPA网卡;
通过目标主机虚拟化管理软件通知目标主机虚拟交换机迁移流量至目标主机vDPA网卡,停止目标主机虚拟交换机与网卡之间的流量收发,通过目标主机虚拟交换机将目标主机网卡中的流量迁移至目标主机vDPA网卡。
2.根据权利要求1所述的vDPA虚机热迁移不丢包的方法,其特征在于,步骤S1,包括:
用户端根据源主机运行状态向源主机虚拟化管理软件发送热迁移请求;
源主机虚拟化管理软件接收热迁移请求后与目标主机虚拟化管理软件建立SOCKET连接;
目标主机虚拟化管理软件创建网卡并启动缓存程序;
源主机虚拟化管理软件将需要迁移的源主机虚机对应的脏页推送至目标主机虚拟化管理软件;
当完成一次推送后,继续推送上一次推送期间产生的脏页;
不断重复推送,当推送的脏页大小小于设定值时,判定主要脏页推送完成,停止脏页推送。
3.根据权利要求1所述的vDPA虚机热迁移不丢包的方法,其特征在于,步骤S3,包括:暂停源主机虚机,采用源主机虚拟化管理软件将源主机虚机暂停前的脏页发送至目标主机虚拟化管理软件,通过源主机虚拟化管理软件通知目标主机虚拟化管理软件脏页推送完成。
4.根据权利要求1所述的vDPA虚机热迁移不丢包的方法,其特征在于,步骤S4,还包括:
通过目标主机虚拟化管理软件向源主机虚拟化管理软件发送虚机启动完成的通知;
断开源主机和目标主机的SOCKET连接,并由源主机释放虚机;
通过源主机虚拟化管理软件向用户端返回完成热迁移完成的通知。
5.根据权利要求4所述的vDPA虚机热迁移不丢包的方法,其特征在于,步骤S4中,由源主机释放虚机,包括:通过源主机虚拟化管理软件向源主机虚机发送释放虚机资源的通知,释放虚机内存,并通过源主机虚机释放源主机vDPA网卡。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211150314.0A CN115499385B (zh) | 2022-09-21 | 2022-09-21 | 一种vDPA虚机热迁移不丢包的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211150314.0A CN115499385B (zh) | 2022-09-21 | 2022-09-21 | 一种vDPA虚机热迁移不丢包的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115499385A CN115499385A (zh) | 2022-12-20 |
CN115499385B true CN115499385B (zh) | 2023-09-12 |
Family
ID=84470443
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211150314.0A Active CN115499385B (zh) | 2022-09-21 | 2022-09-21 | 一种vDPA虚机热迁移不丢包的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115499385B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106250228A (zh) * | 2016-08-11 | 2016-12-21 | 北京网迅科技有限公司杭州分公司 | 虚拟机实体热迁移网路平滑切换的方法及装置 |
CN106911534A (zh) * | 2017-02-28 | 2017-06-30 | 郑州云海信息技术有限公司 | 一种虚拟机热迁移方法及其*** |
CN107544841A (zh) * | 2016-06-29 | 2018-01-05 | 中兴通讯股份有限公司 | 虚拟机热迁移方法和*** |
CN107819708A (zh) * | 2016-09-12 | 2018-03-20 | 阿里巴巴集团控股有限公司 | 基于虚拟机迁移的数据处理方法、***及设备 |
CN109739618A (zh) * | 2018-12-10 | 2019-05-10 | 新华三云计算技术有限公司 | 虚拟机迁移方法及装置 |
CN110633127A (zh) * | 2018-06-25 | 2019-12-31 | 华为技术有限公司 | 一种数据处理方法及相关设备 |
CN112148421A (zh) * | 2019-06-29 | 2020-12-29 | 华为技术有限公司 | 虚拟机迁移的方法以及装置 |
CN112148430A (zh) * | 2020-09-28 | 2020-12-29 | 中电积至(海南)信息技术有限公司 | 一种虚拟网络功能的虚拟机在线安全迁移的方法 |
CN114143252A (zh) * | 2021-11-29 | 2022-03-04 | 中国电信集团***集成有限责任公司 | 一种虚拟机迁移时组播流量不间断的实现方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102081552A (zh) * | 2009-12-01 | 2011-06-01 | 华为技术有限公司 | 一种物理机到虚拟机的在线迁移方法、装置和*** |
US9729517B2 (en) * | 2013-01-22 | 2017-08-08 | Amazon Technologies, Inc. | Secure virtual machine migration |
US20210165675A1 (en) * | 2019-12-02 | 2021-06-03 | Xiao Wang | Live migration for hardware accelerated para-virtualized io device |
-
2022
- 2022-09-21 CN CN202211150314.0A patent/CN115499385B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107544841A (zh) * | 2016-06-29 | 2018-01-05 | 中兴通讯股份有限公司 | 虚拟机热迁移方法和*** |
CN106250228A (zh) * | 2016-08-11 | 2016-12-21 | 北京网迅科技有限公司杭州分公司 | 虚拟机实体热迁移网路平滑切换的方法及装置 |
CN107819708A (zh) * | 2016-09-12 | 2018-03-20 | 阿里巴巴集团控股有限公司 | 基于虚拟机迁移的数据处理方法、***及设备 |
CN106911534A (zh) * | 2017-02-28 | 2017-06-30 | 郑州云海信息技术有限公司 | 一种虚拟机热迁移方法及其*** |
CN110633127A (zh) * | 2018-06-25 | 2019-12-31 | 华为技术有限公司 | 一种数据处理方法及相关设备 |
CN109739618A (zh) * | 2018-12-10 | 2019-05-10 | 新华三云计算技术有限公司 | 虚拟机迁移方法及装置 |
CN112148421A (zh) * | 2019-06-29 | 2020-12-29 | 华为技术有限公司 | 虚拟机迁移的方法以及装置 |
CN112148430A (zh) * | 2020-09-28 | 2020-12-29 | 中电积至(海南)信息技术有限公司 | 一种虚拟网络功能的虚拟机在线安全迁移的方法 |
CN114143252A (zh) * | 2021-11-29 | 2022-03-04 | 中国电信集团***集成有限责任公司 | 一种虚拟机迁移时组播流量不间断的实现方法 |
Non-Patent Citations (1)
Title |
---|
云计算中虚拟机脏页实时迁移的改进策略;曾少慧;邱彬;;汕头大学学报(自然科学版)(第02期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115499385A (zh) | 2022-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110691370B (zh) | 一种数据传输方法、装置及*** | |
US10587544B2 (en) | Message processing method, processing server, terminal, and storage medium | |
KR20210129175A (ko) | 클록 드리프트 프로세싱 방법, 네트워크 기능 네트워크 엘리먼트들, 및 저장 매체 | |
CN106034084B (zh) | 一种数据传输方法及装置 | |
WO2019001421A1 (zh) | 网络切片管理方法、装置及计算机可读存储介质 | |
CN106878343B (zh) | 一种云计算环境下提供网络安全即服务的*** | |
CN103763121A (zh) | 一种网络配置信息快速下发的方法及装置 | |
US10827003B2 (en) | Application data migration method and network device | |
WO2021184992A1 (zh) | 一种镜像文件的上传方法、相关设备及计算机存储介质 | |
US11602001B2 (en) | Method and device for resuming data radio bearer, storage medium and electronic device | |
CN109525542A (zh) | 数据恢复方法、发送/接收装置和计算机可读存储介质 | |
EP3952213A1 (en) | Communication method, apparatus, and system | |
CN107995233B (zh) | 建立连接的方法及相应的设备 | |
CN107995326B (zh) | 一种容器网络的管理方法及装置 | |
CN113297133B (zh) | 一种服务迁移质量保障方法及*** | |
WO2016149945A1 (zh) | 一种生命周期事件的处理方法及vnfm | |
CN101262479A (zh) | 一种网络文件共享的方法、服务器和网络文件共享的*** | |
CN115499385B (zh) | 一种vDPA虚机热迁移不丢包的方法 | |
CN111158872B (zh) | 一种提交并守护spark任务的方法及装置 | |
WO2019062725A1 (zh) | 一种上行数据传输方法及装置 | |
CN115580667B (zh) | 数据传输方法、装置、设备及存储介质 | |
WO2019154017A1 (zh) | 多路径建立方法及装置 | |
Ramana et al. | Multipath transmission control protocol for live virtual machine migration in the cloud environment | |
US10623422B2 (en) | Protocol to detect a foreign device connected between network modules | |
Dietz et al. | Slipstream: Automatic interprocess communication optimization |
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 |