CN112052075A - 云桌面虚拟机的热迁移方法、服务器及存储介质 - Google Patents

云桌面虚拟机的热迁移方法、服务器及存储介质 Download PDF

Info

Publication number
CN112052075A
CN112052075A CN202011060985.9A CN202011060985A CN112052075A CN 112052075 A CN112052075 A CN 112052075A CN 202011060985 A CN202011060985 A CN 202011060985A CN 112052075 A CN112052075 A CN 112052075A
Authority
CN
China
Prior art keywords
cloud desktop
desktop virtual
virtual machine
migration
service
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
Application number
CN202011060985.9A
Other languages
English (en)
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.)
China Mobile Communications Group Co Ltd
China Mobile Hangzhou Information Technology Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Hangzhou Information Technology 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 China Mobile Communications Group Co Ltd, China Mobile Hangzhou Information Technology Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN202011060985.9A priority Critical patent/CN112052075A/zh
Publication of CN112052075A publication Critical patent/CN112052075A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • 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/4557Distribution of virtual machine instances; Migration and load balancing
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明实施例涉及云桌面虚拟机技术领域,公开了一种云桌面虚拟机的热迁移方法、服务器及存储介质。本发明中获取各个云桌面虚拟机所承载的业务的类型;其中,业务的类型至少包括:高时延敏感类型和低时延敏感类型;根据业务的类型确定各个云桌面虚拟机的热迁移的优先级;其中,低时延敏感类型的业务迁移的优先级高于高时延敏感类型的业务;根据优先级依次对各个云桌面虚拟机进行热迁移。从而在针对云桌面和云游戏等服务器中的云桌面虚拟机进行热迁移时,提高用户对高时延敏感类型的业务的服务体验。

Description

云桌面虚拟机的热迁移方法、服务器及存储介质
技术领域
本发明实施例涉及云桌面虚拟机技术领域,特别涉及一种云桌面虚拟机的热迁移方法、服务器及存储介质。
背景技术
云桌面是将桌面计算机的计算和存储资源(包括CPU、硬盘、内存)集中部署在云计算数据中心机房,通过虚拟化技术将物理资源转化为虚拟资源;企业根据用户的需求将虚拟资源集成为不同规格的云桌面虚拟机,云桌面虚拟机通过将显卡输出的画面抓取传输至远程终端,实现画面与操作的分离,在远程提供集中统一的桌面服务。在提供桌面服务时,云桌面虚拟机可以与外部服务器相互传输流量,且传输的流量为各种业务流量,如音视频流量或文件流量。云桌面虚拟机同样可以与远程终端进行流量的传输,云桌面虚拟机传输音视频流量至远程终端,并接收来自远程终端的操作指令,总的来说,云桌面所起到的功能类似于代理功能。
当前云桌面虚拟机技术的实现需要依赖服务器,在服务器无法正常工作时,部署于服务器中的云桌面虚拟机同样无法提供服务,因此在服务器故障或维护时无法正常工作时,需要将部署于其上的云桌面虚拟机迁移至其他正常工作的服务器中,以便云桌面虚拟机可以正常提供服务。相关技术中,通常获取云桌面虚拟机的大小,内存数据等信息,并将云桌面虚拟机的内存数据等信息复制到其他服务器的云桌面虚拟机上,从而实现云桌面虚拟机业务的迁移。
发明人发现相关技术中至少存在如下问题:由于云桌面虚拟机在迁移过程中通常处于离线状态,而在离线状态下用户无法获取到新的数据,因此在针对云桌面和云游戏等服务器中的云桌面虚拟机进行热迁移时,由于这类服务器与终端交互数据较多,时延敏感性较高,因而在热迁移过程中会严重影响到用户对该服务的体验。
发明内容
本发明实施例的目的在于提供一种云桌面虚拟机的热迁移方法、服务器及存储介质,从而在针对云桌面和云游戏等服务器中的云桌面虚拟机进行热迁移时,提高用户对高时延敏感类型的业务的服务体验。
为解决上述技术问题,本发明的实施例提供了一种云桌面虚拟机的热迁移方法,包括:获取各个云桌面虚拟机所承载的业务的类型;其中,业务的类型至少包括:高时延敏感类型和低时延敏感类型;根据业务的类型确定各个云桌面虚拟机的热迁移的优先级;其中,低时延敏感类型的业务的热迁移的优先级高于高时延敏感类型的业务;根据优先级依次对各个云桌面虚拟机进行热迁移。
本发明的实施例还提供了一种服务器,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述云桌面虚拟机的热迁移方法。
本发明的实施例还提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现上述云桌面虚拟机的热迁移方法。
本发明实施例相对于相关技术而言,根据云桌面虚拟机所承载的业务的类型,将业务分为高时延敏感类型的业务和低时延敏感类型的业务,根据业务的类型确定各个云桌面虚拟机的热迁移的优先级,并根据优先级依次对各个云桌面虚拟机进行热迁移。由于高时延敏感类型的业务排在热迁移的最后,在其他业务类型的云桌面虚拟机迁移过程中,高时延敏感类型的云桌面虚拟机可以正常工作,保证用户体验。另外,其他业务类型的云桌面虚拟机的热迁移需要一定的时间,这段时间可供高时延敏感类型的云桌面虚拟机工作直到本次服务结束,从而极大程度避免影响到对用户的服务,提高用户对高时延敏感类型的业务的服务体验。
另外,获取各个云桌面虚拟机所承载的业务的类型,包括:获取云桌面虚拟机的上行流量值和下行流量值;根据上行流量值和下行流量值确定云桌面虚拟机承接的业务的类型。
另外,获取云桌面虚拟机的上行流量值和下行流量值,包括:获取云桌面虚拟机对应的流表;根据流表中的流表项确定云桌面虚拟机的上行流量值和下行流量值。根据流表项对业务类型进行自适应分类,提高业务感知的准确性,及时性。
另外,在根据优先级依次对各个云桌面虚拟机进行热迁移之后,还包括:判断热迁移的进行时间是否达到预设时间;若达到预设时间,则停止热迁移,并对未进行热迁移的云桌面虚拟机重新进行优先级的排序,根据排序对未进行热迁移的云桌面虚拟机进行热迁移。由于随着时间的变化业务的运行情况也会发生改变,重新排序可以使热迁移期间停止运行的云桌面虚拟机提前进行热迁移,不会影响用户体验。
另外,对未进行热迁移的云桌面虚拟机重新进行优先级的排序,包括:根据当前各个云桌面虚拟机的上行流量值和下行流量值确定各个云桌面虚拟机的当前优先级;根据当前优先级对各个云桌面虚拟机进行排序。
另外,在根据优先级依次对各个云桌面虚拟机进行热迁移之前,还包括:确定各个云桌面虚拟机热迁移对应的目的服务器;根据优先级依次对各个云桌面虚拟机进行热迁移,包括:根据优先级依次将各个云桌面虚拟机热迁移至对应的目的服务器。不同的云桌面虚拟机可以迁移到不同的目标服务器,避免接收云桌面虚拟机的目标服务器负载过重,导致性能下降。
另外,确定各个云桌面虚拟机热迁移对应的目的服务器,包括:根据服务器的负载情况,以及云桌面虚拟机大小确定各个云桌面虚拟机热迁移对应的目的服务器。
另外,根据优先级依次将各个云桌面虚拟机热迁移至对应的目的服务器,包括:确定待热迁移的云桌面虚拟机所处的源服务器与待热迁移的云桌面虚拟机对应的目的服务器之间的若干条路径;确定若干条路径对应的带宽;根据若干条路径对应的带宽的比率将待热迁移的云桌面虚拟机热迁移至对应的目的服务器,直至各个云桌面虚拟机热迁移至对应的目的服务器。利用若干条路径进行云桌面虚拟机的热迁移,减少迁移时间。另外,按若干条路径对应的带宽的比率确定各个路径分配的传输量,可以增加迁移过程的同步性。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是根据本发明第一实施例中的云桌面虚拟机的热迁移方法的流程图;
图2是根据本发明第一实施例中的云桌面虚拟机热迁移过程的示意图;
图3是根据本发明第二实施例中的云桌面虚拟机的热迁移方法的流程图;
图4是根据本发明第二实施例中的云桌面虚拟机热迁移过程的示意图;
图5是根据本发明云桌面虚拟机流量传输过程的示意图;
图6是根据本发明第三实施例中的服务器的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施例进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施例中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施例的种种变化和修改,也可以实现本申请所要求保护的技术方案。
以下各个实施例的划分是为了描述方便,不应对本发明的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。
本发明的第一实施例涉及一种云桌面虚拟机的热迁移方法,获取各个云桌面虚拟机所承载的业务的类型;其中,业务的类型至少包括:高时延敏感类型和低时延敏感类型;根据业务的类型确定各个云桌面虚拟机的热迁移的优先级;其中,低时延敏感类型的业务的优先级高于高时延敏感类型的业务;根据优先级依次对各个云桌面虚拟机进行热迁移,从而提高用户对高时延敏感类型的业务的服务体验。下面对本实施方式的云桌面虚拟机的热迁移方法的实现细节进行具体的说明,以下内容仅为方便理解提供的实现细节,并非实施本方案的必须。
本实施例涉及的云桌面虚拟机的热迁移方法如图1所示,包括:
步骤101,获取各个云桌面虚拟机所承载的业务的类型。
具体地说,云桌面虚拟机是指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。在实体计算机中能够完成的工作在云桌面虚拟机中都能够实现。云桌面和云游戏服务就是利用云端数据中心的云桌面虚拟机中与游戏服务器进行交互或者图形数据的渲染。利用云桌面虚拟机实现云游戏服务的优势在于:首先,当用户需要进行游戏时可以申请具有更多资源的云桌面虚拟机,在无游戏需求时可以使用资源相对较少的云桌面虚拟机,从而可以弹性分配资源,提高资源利用率。其次,当用户所使用的云桌面虚拟机出现问题时,可以切换云桌面虚拟机的方式或恢复快照的方式排除问题,不需要复杂的定位问题和故障排查,便于系统运维。最后,用户在使用云端云桌面虚拟机进行游戏时可以享受统一提供的平台服务,例如游戏加速服务,云端存储服务,高速宽带服务等,优化了用户的游戏体验。
由于实现上述云端服务的基础依赖于部署在云端服务器的云桌面虚拟机,因此在云端服务器需要维护或扩容等原因无法工作时,可以将云端服务器中的云桌面虚拟机迁移至其他服务器中,如图2所示,云桌面虚拟机1,云桌面虚拟机2和云桌面虚拟机3依赖于服务器2,在服务器2需要停机维护时,可以将云桌面虚拟机迁移至其他的服务器,如将云桌面虚拟机1和云桌面虚拟机2迁移至服务器1,将云桌面虚拟机3迁移至服务器3。云桌面虚拟机在其他服务器中可以正常为用户提供服务,从而避免影响用户的服务体验。
在对云桌面虚拟机进行热迁移时,需要获取云桌面虚拟机所承载的业务的类型,业务的类型包括高时延敏感类型和低时延敏感类型,高时延敏感类型的业务与其它设备的交互性高,而低时延敏感类型的业务与其它设备的交互性低。在云游戏服务中业务具体包括:游戏业务,视频业务,下载业务和网页业务等等,其中,游戏业务交互性较高,对时延敏感度极高,因此游戏业务属于高时延敏感类型的业务;而网页业务或待机状态下的云桌面虚拟机在内存占用,带宽占用上较小,对时延敏感度较低,因此,网页业务数据低时延敏感类型的业务。
在确定云游戏服务器的云桌面虚拟机所承载的业务的类型时,可以根据云桌面虚拟机的上行流量值和下行流量值来确定。云桌面虚拟机的上行流量值和下行流量值在承载该云桌面虚拟机的服务器发送或接收的数据包中获取。具体地说,可以利用软件定义网络(Software Defined Network,SDN)中的控制器对网络具有全局视图的特点,从服务器所属的SDN交换机获取服务器上云桌面虚拟机的流量统计信息,并根据流量统计信息计算得到上行流量值和下行流量值。其中,上行流量值代表云桌面虚拟机发送给终端的流量,下行流量值代表云桌面虚拟机从外部接收的流量,如图5所示,云桌面虚拟机发送给终端设备的上行流量为音视频流量,云桌面虚拟机的宿主机服务器2将上行流量通过因特网发送至终端设备。云桌面虚拟机接收的内容服务器发送的下行流量可以为任意类型的流量,如音视频流量和文件流量等,云桌面虚拟机的宿主机服务器2通过因特网接收内容服务器的下行流量。
SDN交换机在获取服务器上云桌面虚拟机的流量统计信息时,利用网络通信协议openflow接收服务器发送的数据包,查看该数据包是否存在匹配流表项,若存在,OpenFlow交换机根据流表项可以获取云桌面虚拟机的流量统计信息。若不存在匹配流表项,则将该数据包通过packet-in向上转发给SDN控制器,由SDN控制器根据拓扑策略产生路由,并将路由产生的流表下发至OpenFlow交换机,OpenFlow交换机根据新下发的流表项可以获取云桌面虚拟机的流量统计信息。上述中的流表项主要由匹配域,动作域和统计域三部分组成,其中匹配域包括:入口端,源Mac地址,目的Mac地址,以太网类型,VLAN类型,VLAN优先级,源IP地址,IP协议,IP服务类型,源端口和目的端口,统计域包括:数据包数,字节数和存在时间。
在根据流量统计信息计算上行流量值和下行流量值时,终端设备侧的上行流量值可以通过OpenFlow交换机统计内源地址(IPsrc)为云桌面虚拟机地址(IPvm)的流表项,并统计预设周期内满足上述要求的流表项中的字节数(ByteCount)得到上行流量值,这样做可以使云桌面虚拟机发出的所有流量(FlowCountUP)均被OpenFlow交换机内流表项所统计,进而计算出准确的上行流量值。同理,对于内容服务器侧的下行流量值,通过统计目的地址(IPdes)为云桌面虚拟机地址(IPvm)的流表项,并统计预设周期内满足上述要求的流表项中的字节数(ByteCount)得到下行流量值。
在获取上行流量值和下行流量值之后,可以根据云桌面虚拟机的上行流量值和下行流量值对虚拟器承载的业务的类型进行聚类,流量大小与业务的类型的对应关系如下表格所示:
Figure BDA0002712373260000051
Figure BDA0002712373260000061
基于上行流量和下行流量对业务进行聚类时,结合各个业务的类型的特性进行分类,例如,在为用户提供视频业务时,屏幕的画面变化频繁,因此云桌面虚拟机发送至终端设备的音视频流量较大,且云桌面虚拟机从内容服务器同样获取音视频流量且下行流量较大;在为用户提供下载业务时,云桌面虚拟机从内容服务器获取文件流量较多,因此下行流量较大,而为终端设备提供的画面并不会发生太大的改变,因此上行的音视频流量较小。综上,下行流量基于云桌面虚拟机从内容服务器获取的流量的大小而变化,上行流量基于云桌面虚拟机为终端设备侧提供的显示画面的变化而变化,画面越丰富上行音视频流量越大。
基于上述说明中各个业务类型上下行流量的特点可以在计算得到云桌面虚拟机的上行流量值和下行流量值之后,根据流量值大小对应得到该云桌面虚拟机的业务类型具体为视频业务,游戏业务,下载业务或网页业务或待机状态。而根据各个业务的工作特点可以知道各个业务类型的时间敏感性由高到低依次为:游戏业务,音视频业务,下载业务,网页业务或待机。或者,还可以根据流量增速确定云桌面虚拟机的业务类型,例如,游戏业务的上行增速最小,下载业务的下行增速最小,低负载业务的上下行增速均接近零,从而可以根据流量增速来判断出所对应的业务类型。
另外,在根据虚拟器的上行流量值和下行流量值对云桌面虚拟机承载的业务的类型进行聚类时,可以利用聚类算法Kmeans对云桌面虚拟机的业务类型进行聚类,将同一业务类型的云桌面虚拟机统计为一个集合。具体可以将每个云桌面虚拟机的上行流量值和下行流量值作为样本数据集,样本数据集Input(X1,X2,…,Xn)中包含n个云桌面虚拟机的流量数据X1至Xn。在样本数据中随机选取k个数据作为聚类中心,其中k的取值根据业务类型的分组来确定,如需要将n个云桌面虚拟机分为两个业务类型的分组,则k取2,如果需要将n个云桌面虚拟机分为4个业务类型的分组,则k取4。计算样本数据集中每个数据与选取的聚类中心之间的距离,每个聚类中心可以看做一个分组,将样本数据放入相距距离最短的聚类中心对应的分组中,计算各组中数据与聚类中心的距离之和,若大于预设阈值,则基于分组内的数据重新选取聚类中心,再次重复上述将样本数据进行分组的操作,直至分组内的数据与聚类中心的距离之和小于预设阈值。分组完成后每个分组内的数据对应的云桌面虚拟机即为承载同类型业务的云桌面虚拟机,完成业务类型的聚类,提高业务类型分类的准确性和及时性。
步骤102,根据业务的类型确定各个云桌面虚拟机的热迁移的优先级。
具体地说,低时延敏感类型的业务的优先级高于高时延敏感类型的业务,例如,视频业务等时间敏感性较高的业务,设置较低的优先级,迁移顺序靠后以减少视频业务质量的下降。下载业务等时间敏感性较低的业务,设置较高的优先级,可以相对优先对承载该业务类型的云桌面虚拟机进行迁移。
在设置优先级时,可以根据聚类计算后的分组,每个分组代表一个业务类型的云桌面虚拟机的集合,将低时间敏感类型对应的分组内的云桌面虚拟机均设置高优先级,将高时间敏感类型对应的分组内的云桌面虚拟机均设置为低优先级,提高设置优先级的效率。
步骤103,根据优先级依次对各个云桌面虚拟机进行热迁移。
具体地说,根据优先级的高低依次对各个云桌面虚拟机进行热迁移,优先迁移优先级高的云桌面虚拟机,将优先级低的云桌面虚拟机排后进行热迁移。
另外,可以根据优先级的高低生成云桌面虚拟机的列表,列表中云桌面虚拟机的信息按优先级高低排列。在迁移时间未达到预设时间时,根据云桌面虚拟机的列表的顺序依次进行热迁移,在迁移时间达到预设时间时,列表中为完成迁移的云桌面虚拟机停止进行热迁移,待云桌面虚拟机的列表中的云桌面虚拟机信息更新后,根据更新后的云桌面虚拟机的排序重新按序执行热迁移操作。
在对列表中的云桌面虚拟机的排序进行更新时,可以获取当前云桌面虚拟机的上行流量值和下行流量值,根据流量值重新对列表中剩余的云桌面虚拟机承载的业务的类型进行分类,并重新设置各个云桌面虚拟机的优先级,从而可以根据当前云桌面虚拟机承载的业务的类型对云桌面虚拟机重新进行排序。重新排序后的列表中,可以将上一次热迁移过程中正常停止服务的云桌面虚拟机的排序提前,从而避免中断服务,提高用户体验。
本发明实施例相对于相关技术而言,根据云桌面虚拟机所承载的业务的类型,将业务分为高时延敏感类型的业务和低时延敏感类型的业务,根据业务的类型确定各个云桌面虚拟机的热迁移的优先级,并根据优先级依次对各个云桌面虚拟机进行热迁移。由于高时延敏感类型的业务排在热迁移的最后,在其他业务类型的云桌面虚拟机迁移过程中,高时延敏感类型的云桌面虚拟机可以正常工作,保证用户体验。另外,其他业务类型的云桌面虚拟机的热迁移需要一定的时间,这段时间可供高时延敏感类型的云桌面虚拟机工作直到本次服务结束,从而极大程度避免影响到对用户的服务,提高用户对高时延敏感类型的业务的服务体验。
本发明的第二实施例涉及一种云桌面虚拟机的热迁移方法,在本发明第二实施例中,确定各个云桌面虚拟机热迁移对应的目的服务器,并根据优先级依次将各个云桌面虚拟机热迁移至对应的目的服务器。由于不同的云桌面虚拟机可以迁移到不同的目标服务器,可以避免接收云桌面虚拟机的目标服务器负载过重而导致性能下降。
本实施例涉及的云桌面虚拟机的热迁移方法如图3所示,包括:
步骤301,获取各个云桌面虚拟机所承载的业务的类型。
步骤302,根据业务的类型确定各个云桌面虚拟机的热迁移的优先级。
步骤301、302与第一实施例中步骤101、102一一对应,为避免重复在此不再赘述。
步骤303,确定各个云桌面虚拟机热迁移对应的目的服务器。
具体地说,在确定各个云桌面虚拟机的迁移顺序之后,还可以根据服务器的负载情况和云桌面虚拟机的大小确定各个云桌面虚拟机对应的目的服务器,确定的目的服务器即为该云桌面虚拟机所迁移到的服务器。在选择云桌面虚拟机对应的目标服务器时,可以选出负载足以支撑待迁移的云桌面虚拟机运行的若干个服务器Server(S1,S2,…,Sn),针对服务器Si,计算源服务器至Si的所有路径的集合Pi,计算Pi内每条路径的最小带宽,并计算路径的最小带宽之和Bi,同理针对每一个服务器S进行计算得到路径集合Path(P1,P2,…,Pn),以及最小带宽之和的集合BandWidth(B1,B2,…,Bn)。选择最小带宽之和的集合中数字最大的服务器做为该云桌面虚拟机的目的服务器。
步骤304,根据优先级依次将各个云桌面虚拟机热迁移至对应的目的服务器。
具体地说,热迁移过程中选择多路径传输以提升迁移速度,减小带宽占用,多路径迁移如图4所示,云桌面虚拟机3利用两条路径迁移至服务器3,假设每条路径的迁移速度为50Mbps,那么云桌面虚拟机3迁移至服务器3的总速度可以达到100Mbps,从而提高了迁移速度。
在选择多路径进行迁移时,可以根据每条路径的带宽分配迁移的流量,根据所选择的若干条路径对应的带宽的比率对迁移的流量进行分配,例如云桌面虚拟机迁移需要迁移500M流量,若利用三条路径对该云桌面虚拟机进行迁移,三条路径的带宽分别为50Mbps,50Mbps,150Mbps。那么三条路径的带宽的比率为1:1:3,根据带宽比率每个路径分配的流量分别为100M,100M,300M。这样做可以最大程度的保证云桌面虚拟机在各条路径的传输可以同时完成,避免因等待其他路径传输而浪费时间,提高传输的同步性。
下面对根据带宽比率分配流量可以保证传输的同步性进行验证,假设云桌面虚拟机的大小为Size,云桌面虚拟机与目的服务器之间有j条路径,每条路径对应的最小带宽为Bj。根据带宽比率分配给每条路径传输的云桌面虚拟机的流量
Figure BDA0002712373260000081
其中,Bi为j条路径的最小带宽之和。计算得到每条路径完成传输所需时间相同,均为
Figure BDA0002712373260000082
由于每条路径传输云桌面虚拟机的流量所花费时间相同,因此按带宽比率分配流量可以最大程度的保证云桌面虚拟机热迁移过程中全部流量传输完成的同步性,从而可以实现在同步传输完成后立即对云桌面虚拟机进行重组,减少因等待而浪费的重组时间。
在本实施例中,确定各个云桌面虚拟机热迁移对应的目的服务器,并根据优先级依次将各个云桌面虚拟机热迁移至对应的目的服务器。由于不同的云桌面虚拟机可以迁移到不同的目标服务器,可以避免接收云桌面虚拟机的目标服务器负载过重而导致性能下降。另外,在多路径迁移时根据带宽比率为每个路径分配流量,可以最大程度的保证云桌面虚拟机在各条路径的传输可以同时完成,避免因等待其他路径传输而浪费时间。
上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
本发明第三实施例涉及一种服务器,如图6所示,包括至少一个处理器501;以及,与至少一个处理器501通信连接的存储器502;其中,存储器502存储有可被至少一个处理器501执行的指令,指令被至少一个处理器501执行,以使至少一个处理器501能够执行上述的任一方法实施例中的云桌面虚拟机的热迁移方法。
其中,存储器502和处理器501采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器501和存储器502的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器501处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器501。
处理器501负责管理总线和通常的处理,还可以提供各种功能,包括定时、外围接口、电压调节、电源管理以及其他控制功能。而存储器502可以被用于存储处理器501在执行操作时所使用的数据。
本发明第四实施例涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例。
即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施例是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

Claims (10)

1.一种云桌面虚拟机的热迁移方法,其特征在于,包括:
获取各个云桌面虚拟机所承载的业务的类型;其中,所述业务的类型至少包括:高时延敏感类型和低时延敏感类型;
根据所述业务的类型确定所述各个云桌面虚拟机的热迁移的优先级;其中,所述低时延敏感类型的业务的热迁移的优先级高于所述高时延敏感类型的业务;
根据所述优先级依次对所述各个云桌面虚拟机进行热迁移。
2.根据权利要求1所述的云桌面虚拟机的热迁移方法,其特征在于,所述获取各个云桌面虚拟机所承载的业务的类型,包括:
获取云桌面虚拟机的上行流量值和下行流量值;
根据所述上行流量值和所述下行流量值确定所述云桌面虚拟机承接的业务的类型。
3.根据权利要求2所述的云桌面虚拟机的热迁移方法,其特征在于,所述获取云桌面虚拟机的上行流量值和下行流量值,包括:
获取云桌面虚拟机对应的流表;
根据所述流表中的流表项确定所述云桌面虚拟机的上行流量值和下行流量值。
4.根据权利要求1所述的云桌面虚拟机的热迁移方法,其特征在于,在所述根据所述优先级依次对所述各个云桌面虚拟机进行热迁移之后,还包括:
判断所述热迁移的进行时间是否达到预设时间;
若达到预设时间,则停止热迁移,并对未进行热迁移的云桌面虚拟机重新进行优先级的排序;
根据所述排序对所述未进行热迁移的云桌面虚拟机进行热迁移。
5.根据权利要求4所述的云桌面虚拟机的热迁移方法,其特征在于,所述对未进行热迁移的云桌面虚拟机重新进行优先级的排序,包括:
根据当前各个云桌面虚拟机的上行流量值和下行流量值确定各个云桌面虚拟机的当前优先级;
根据所述当前优先级对所述各个云桌面虚拟机进行排序。
6.根据权利要求1所述的云桌面虚拟机的热迁移方法,其特征在于,在所述根据所述优先级依次对所述各个云桌面虚拟机进行热迁移之前,还包括:
确定各个云桌面虚拟机热迁移对应的目的服务器;
所述根据所述优先级依次对所述各个云桌面虚拟机进行热迁移,包括:
根据所述优先级依次将所述各个云桌面虚拟机热迁移至对应的目的服务器。
7.根据权利要求6所述的云桌面虚拟机的热迁移方法,其特征在于,所述确定各个云桌面虚拟机热迁移对应的目的服务器,包括:
根据服务器的负载情况,以及云桌面虚拟机大小确定各个云桌面虚拟机热迁移对应的目的服务器。
8.根据权利要求6所述的云桌面虚拟机的热迁移方法,其特征在于,所述根据所述优先级依次将所述各个云桌面虚拟机热迁移至对应的目的服务器,包括:
确定待热迁移的云桌面虚拟机所处的源服务器与所述待热迁移的云桌面虚拟机对应的目的服务器之间的若干条路径;
确定所述若干条路径对应的带宽;
根据所述若干条路径对应的带宽的比率将所述待热迁移的云桌面虚拟机热迁移至对应的目的服务器,直至所述各个云桌面虚拟机热迁移至对应的目的服务器。
9.一种服务器,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至8中任一所述的云桌面虚拟机的热迁移方法。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8中任一项所述的云桌面虚拟机的热迁移方法。
CN202011060985.9A 2020-09-30 2020-09-30 云桌面虚拟机的热迁移方法、服务器及存储介质 Pending CN112052075A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011060985.9A CN112052075A (zh) 2020-09-30 2020-09-30 云桌面虚拟机的热迁移方法、服务器及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011060985.9A CN112052075A (zh) 2020-09-30 2020-09-30 云桌面虚拟机的热迁移方法、服务器及存储介质

Publications (1)

Publication Number Publication Date
CN112052075A true CN112052075A (zh) 2020-12-08

Family

ID=73606286

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011060985.9A Pending CN112052075A (zh) 2020-09-30 2020-09-30 云桌面虚拟机的热迁移方法、服务器及存储介质

Country Status (1)

Country Link
CN (1) CN112052075A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115996183A (zh) * 2021-10-15 2023-04-21 中国联合网络通信集团有限公司 流量确定方法及设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102567072A (zh) * 2010-12-20 2012-07-11 中国移动通信集团公司 一种资源分配方法、装置及系统
CN105743985A (zh) * 2016-03-24 2016-07-06 国家计算机网络与信息安全管理中心 一种基于模糊逻辑的虚拟服务迁移方法
CN109445936A (zh) * 2018-10-12 2019-03-08 深圳先进技术研究院 一种云计算负载聚类方法、系统及电子设备
CN110928636A (zh) * 2018-09-19 2020-03-27 阿里巴巴集团控股有限公司 虚拟机热迁移方法、装置和设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102567072A (zh) * 2010-12-20 2012-07-11 中国移动通信集团公司 一种资源分配方法、装置及系统
CN105743985A (zh) * 2016-03-24 2016-07-06 国家计算机网络与信息安全管理中心 一种基于模糊逻辑的虚拟服务迁移方法
CN110928636A (zh) * 2018-09-19 2020-03-27 阿里巴巴集团控股有限公司 虚拟机热迁移方法、装置和设备
CN109445936A (zh) * 2018-10-12 2019-03-08 深圳先进技术研究院 一种云计算负载聚类方法、系统及电子设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115996183A (zh) * 2021-10-15 2023-04-21 中国联合网络通信集团有限公司 流量确定方法及设备

Similar Documents

Publication Publication Date Title
EP3949293A1 (en) Slice-based routing
Yang et al. Seamless support of low latency mobile applications with nfv-enabled mobile edge-cloud
EP3754915B1 (en) Data processing method and apparatus
WO2020125539A1 (zh) 一种节点设备的选择方法及其相关设备
US11689470B2 (en) Allocation of processors for processing packets
CN102164081B (zh) 一种胖树拓扑的路由计算方法、节点设备和通信系统
US11601343B2 (en) Dynamic adaptive network
WO2017176542A1 (en) Optimal dynamic cloud network control
CN112753198B (zh) 在网络中的负载均衡和报文重排序方法及装置
CN111835849B (zh) 增强接入网服务能力的方法和装置
CN104639415A (zh) 一种虚拟机的迁移方法和软件定义网络sdn控制器
CN110798412A (zh) 组播业务处理方法、装置、云平台、设备及可读存储介质
CN112073237B (zh) 一种云边架构中大规模目标网络构建方法
US9363199B1 (en) Bandwidth management for data services operating on a local network
CN112052075A (zh) 云桌面虚拟机的热迁移方法、服务器及存储介质
CN117041147B (zh) 智能网卡设备、主机设备和方法及系统
JP4309321B2 (ja) ネットワークシステムの運用管理方法及びストレージ装置
CN114143835A (zh) 一种接入网关的方法及装置
Tkachova et al. A load balancing algorithm for SDN
WO2023193432A1 (zh) 一种数据转发方法及相关设备
CN112714146A (zh) 一种资源调度方法、装置、设备及计算机可读存储介质
KR20220161728A (ko) 네트워크 부하 분산 방법 및 장치
CN105187518A (zh) 一种cdn内容分发方法及系统
CN113395362B (zh) 移动边缘计算的服务链分群和重整方法
CN117319288B (zh) 算网一体的服务器及数据传输方法

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