一种基于移动预测和多层服务部署的服务迁移方法和系统

文档序号:25033524发布日期:2021-05-11 17:04阅读:181来源:国知局
一种基于移动预测和多层服务部署的服务迁移方法和系统

本发明涉及移动边缘计算技术领域,具体涉及一种基于移动预测和多层服务部署的服务迁移方法和系统。



背景技术:

随着智能设备的发展,越来越多的应用需要密集的计算资源和高能耗的实时处理,如人工智能(ai)、自动驾驶汽车、交互式游戏、虚拟现实(vr)、增强现实(ar)、智能监控系统等。然而,由于物理尺寸的限制,计算能力和能量容量有限的智能设备无法有效地支持应用,传统的解决方法是与远程的云中心合作,但该方法传输时延较大,给核心网络带来较大的负担,不适合低时延应用。应对这一挑战,移动边缘计算(mobileedgecomputing,mec)作为一种新的计算模式,由欧洲电信标准协会(etsi)在2014年提出,为用户设备在网络的边缘提供计算资源,以减少计算延迟和能源消耗的问题。mec可以提高服务质量(qualityofservice,qos)和体验质量(qualityofexperience,qoe)。

为了满足任务低延迟的要求,用户应该将任务卸载到距离用户最近的mec服务器上,减少传输时延。然而,由于用户移动性和基站或wifi热点覆盖范围有限,随着用户的移动,任务将被卸载到不同的mec服务器上。当用户离开其原始位置时,有必要将其服务迁移到靠近当前用户位置的新mec服务器上。为确保任务在不同mec服务器之间迁移时服务的连续性,应在网络边缘采用一种有效的服务迁移方案,以实现无缝的服务迁移(即将服务中断时间最小化)。当前部分研究者基于服务热迁移过程中,数据可以分批次传输的特性,提出了基于移动预测进行服务迁移的方法,这种方法可以将大部分数据在发生服务迁移之前同步到目的服务器上,这样在发生服务迁移时只需要同步少部分的数据,从而降低服务中断的时间。当前基于移动预测进行服务迁移的研究工作主要集中在使用马尔可夫决策过程(markovdecisionprocess,mdp)来预测用户移动。这些方法存在复杂程度高,需要大量的先验知识,预测精度低,灵活性差,不能适应新的环境等问题,不能解决移动边缘计算环境服务平滑迁移的问题。同时,在服务迁移的过程中需要在mec服务器之间同步大量数据,产生大量的网络数据造成网络拥塞,影响网络的服务质量。所以,当前移动边缘计算环境下服务迁移面临两个问题:服务中断时间过长和网络负载过大。



技术实现要素:

鉴于以上问题,本发明提出一种基于移动预测和多层服务部署的服务迁移方法和系统,用以解决当前移动边缘计算环境下服务迁移面临的服务中断时间过长和网络负载过大的问题。

根据本发明一方面,提出一种基于移动预测和多层服务部署的服务迁移方法,该方法包括以下步骤,

步骤一、获取用户实时状态数据和任务延迟属性数据;

步骤二、根据用户实时状态数据和任务延迟属性数据进行预测,获取预测的目标mec服务器地址;其中,所述目标mec服务器包括本地mec服务器和区域mec服务器;

步骤三、将运行环境的映像文件数据和内存快照文件数据从源mec服务器提前同步到预测的目标mec服务器上,同时以固定时间间隔定期将脏内存数据从源mec服务器同步到预测的目标mec服务器上;其中,脏内存数据为源mec服务器上的内存实时变化数据;

步骤四、当检测到用户位置从源mec服务器的服务范围切换到目标mec服务器的服务范围时,源mec服务器服务停止,并将未完成同步的脏内存数据从源mec服务器同步到目标mec服务器上;

步骤五、目标mec服务器接收到最新同步的脏内存数据后,利用映像文件数据和内存快照文件数据部署运行环境,完成服务迁移。

进一步地,步骤一中所述用户实时状态数据包括位置数据、移动方向数据和移动速度数据;所述任务延迟属性数据包括网络时延、卸载任务时延要求和mec服务器的剩余资源量。

进一步地,步骤二的具体步骤包括:

步骤二一、利用已知的mec服务器分布图和数字地图数据,预先建立所有mec服务器与道路之间的映射关系;

步骤二二、根据用户位置数据和数字地图数据获取用户所在道路信息;

步骤二三、根据移动方向数据、用户所在道路信息和映射关系获取目标mec服务器地址。

进一步地,步骤二三中还包括根据所述移动速度数据和所述任务延迟属性数据在获取的目标mec服务器中选择合适的mec服务器,若所述任务延迟属性高于预设延迟阈值,则选择区域mec服务器;若所述任务延迟属性低于预设延迟阈值,则选择本地mec服务器。

进一步地,步骤二三中还包括根据预设节点距离阈值选择目标mec服务器,若目标mec服务器的服务范围在当前道路上的覆盖距离大于预设节点距离阈值,则保留选择;若小于预设节点距离阈值,则所述目标mec服务器不被选择;其中,节点距离为mec服务器覆盖范围在道路上覆盖的距离。

根据本发明另一方面,提出一种基于移动预测和多层服务部署的服务迁移系统,包括云中心、边缘计算平台和用户端;其中,

所述云中心包括数据存储模块,用于存储数字地图数据、mec服务器分布图数据,以及运行环境的映像文件数据;数据获取模块,用于获取用户实时状态数据和任务延迟属性数据;预测模块,用于根据所述用户实时状态数据和任务延迟属性数据进行预测,获取预测的目标mec服务器地址;调度模块,用于通知边缘计算平台进行服务迁移和通知用户端目标mec服务器的ip地址;其中,用户实时状态数据包括位置数据、移动方向数据和移动速度数据;任务延迟属性数据包括网络时延、卸载任务时延要求和mec服务器的剩余资源量;目标mec服务器包括本地mec服务器和区域mec服务器;

所述边缘服务平台包括服务迁移控制模块和文件同步管理模块;所述迁移控制模块用于管理运行环境的生命周期、检查点、状态、使用检查点文件恢复运行环境、跟踪运行环境内存变化;所述文件同步管理模块用于传输文件数据,并确保源mec服务器和目标mec服务器上的文件完全一致;其中,文件数据包括映像文件数据、内存快照文件数据和脏内存数据;

所述用户端包括状态监控发送模块,用于实时跟踪用户位置、移动速度、移动方向的变化,并监控任务的延迟属性,当用户移动方向和移动距离超过预设阈值或移动速度发生变化时向云中心发送实时数据;网络模块,用于从云中心接收目标mec服务器的ip地址,并配置和监控网络质量。

进一步地,所述本地mec服务器与无线电基站一起部署,其服务范围为无线电基站的覆盖范围;所述区域mec服务器连接多个无线电基站。

进一步地,所述预测模块中获取预测的目标mec服务器地址的步骤包括:首先,利用已知的mec服务器分布图和数字地图数据,预先建立所有mec服务器与道路之间的映射关系;然后,根据用户位置数据和数字地图数据获取用户所在道路信息;最后,根据移动方向数据、用户所在道路信息和映射关系获取目标mec服务器地址。

进一步地,所述预测模块中获取预测的目标mec服务器地址的步骤还包括:根据所述移动速度数据和所述任务延迟属性数据在获取的目标mec服务器中选择合适的mec服务器,若所述任务延迟属性高于预设延迟阈值,则选择区域mec服务器;若所述任务延迟属性低于预设延迟阈值,则选择本地mec服务器。

进一步地,所述预测模块中获取预测的目标mec服务器地址的步骤还包括:根据预设节点距离阈值选择目标mec服务器,若目标mec服务器的服务范围在当前道路上的覆盖距离大于预设节点距离阈值,则保留选择;若小于预设节点距离阈值,则所述目标mec服务器不被选择;其中,节点距离为mec服务器覆盖范围在道路上覆盖的距离。

本发明的有益技术效果是:

本发明提出一种基于移动预测和多层服务部署的服务迁移方法和系统,其中,根据基于地图数据的mec服务器节点预测方法准确预测mec节点并提前同步数据,降低服务迁移时的服务中断时间,确保服务平滑迁移,是一种在线实时预测的方法,不需要用户历史数据等先验知识,到了新的环境也能适配;进一步根据基于多层部署mec节点的架构,满足高速移动环境下服务平滑迁移,减少服务中断的次数以及服务迁移产生的冗余流量,提升网络服务质量和用户体验质量。

附图说明

本发明可以通过参考下文中结合附图所给出的描述而得到更好的理解,其中在所有附图中使用了相同或相似的附图标记来表示相同或者相似的部件。所述附图连同下面的详细说明一起包含在本说明书中并且形成本说明书的一部分,而且用来进一步举例说明本发明的优选实施例和解释本发明的原理和优点。

图1为移动边缘计算下服务迁移场景示意图;

图2为本发明多层次部署架构示意图;

图3为本发明工作流程示意图;

图4为本发明中道路和mec节点的映射关系示意图;

图5为本发明中mec节点覆盖范围差异示意图;

图6为本发明仿真实验中某市mec节点部署分布示意图;

图7为本发明方法与其他不同方法在不同速度下产生的服务迁移流量对比图;

图8为本发明方法与其他不同方法在不同速度下产生的服务中断时间对比图;

图9为不同应用程序在本发明方法与其他不同方法下产生的服务迁移流量对比图;

图10为不同应用程序利用本发明方法进行服务迁移的镜像数据和内存数据的对比图;

图11为本发明方法与其他不同方法在不同交通方式下产生的服务中断时间对比图。

具体实施方式

在下文中将结合附图对本发明的示范性实施例进行描述。为了清楚和简明起见,在说明书中并未描述实际实施方式的所有特征。然而,应该了解,在开发任何这种实际实施例的过程中必须做出很多特定于实施方式的决定,以便实现开发人员的具体目标,例如,符合与系统及业务相关的那些限制条件,并且这些限制条件可能会随着实施方式的不同而有所改变。此外,还应该了解,虽然开发工作有可能是非常复杂和费时的,但对得益于本发明内容的本领域技术人员来说,这种开发工作仅仅是例行的任务。在此,还需要说明的一点是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的装置结构和/或处理步骤,而省略了与本发明关系不大的其他细节。

如图1所示,移动边缘计算环境下,由于用户移动性和移动边缘计算服务覆盖范围的有限性,随着用户的移动,任务将在不同的mec(移动边缘计算)服务器上进行迁移,为了保障服务质量和用户的体验质量,服务迁移工作面临更多的挑战性问题,例如,服务迁移过程中服务中断时间过长和网络负载过大。因此,亟需一个实用、高扩展性的方法,满足复杂的移动边缘计算环境下服务迁移工作的平滑性,保障服务质量。

本发明一种基于移动预测和多层服务部署的服务迁移方法和系统,实际上为移动边缘计算中基于移动预测和多层服务部署的服务迁移框架(以下简称msmf),可以通过采集用户端的移动状态(位置、速度、方向等)结合地图数据准确预测未来接入的mec节点,同时根据服务范围大小进行划分,采用多层部署方式部署mec节点,如图2所示。msmf包括三个部分:云中心、边缘计算平台和用户端。

云中心具有足够的计算和存储资源,可用于存储地图数据和图像数据、数据分析和调度,并且连接到所有mec服务器,可以从全局的角度观察所有mec服务器的状态。

地图数据:地图数据包括一个数字地图和一个mec服务器分布图。数字地图用于预测用户轨迹。利用mec服务器分布图,结合数字地图数据,建立mec服务器与道路之间的映射关系(rmr),并根据从用户端收集到的状态信息,预测用户下一步将访问哪个mec服务器。

预测模块:首先从用户端中获取用户位置、移动方向、移动速度、网络时延、卸载任务时延要求等状态信息;然后,位置数据与数字地图数据相匹配,以确定用户当前所处的道路;最后,通过映射关系rmr和移动方向可以预测未来要访问的mec服务器。

调度模块:云中心实时监控每个mec服务器的计算资源和存储资源。在开始迁移服务时,云中心根据几个重要参数选择合适的mec服务器进行迁移,这些参数包括卸载任务的延迟需求、用户移动速度、网络延迟和mec服务器的剩余资源量。选择mec服务器后,在新mec服务器上部署运行的环境后,将获得一个新的ip地址,云中心将通知用户端新的ip地址。迁移完成后,卸载任务将被发送到新的ip地址。

镜像文件:mec服务器的存储资源有限,用户卸载任务时使用的运行环境被制作成镜像文件并存储在云中心中,当用户启动任务卸载时,mec服务器直接从云中心下载任务。

根据覆盖范围的不同,边缘计算平台可以分为本地mec服务器和区域mec服务器两类,其架构如图2所示。本地mec服务器与无线电基站一起部署,其服务范围为基站的覆盖范围;区域mec服务器连接多个基站,其服务范围是本地mec服务器的几倍,但传输延迟较大。在部署自动迁移服务的同时,边缘计算平台可以部署任何操作系统和虚拟平台,主虚拟平台包括虚拟机和容器。虚拟机包括硬件虚拟化,容器仅在操作系统级别进行虚拟化,因此虚拟机的映像文件比容器大得多。考虑到迁移数据的大小,容器更适合于服务迁移。

自动迁移服务包括容器迁移控制器和文件同步管理。容器迁移控制器是边缘计算平台的核心组件,用于管理容器的生命周期、检查点、容器状态、使用检查点文件恢复容器、跟踪容器内存变化;文件同步管理用于传输文件数据,并确保源mec服务器和目标mec服务器上的文件完全一致。容器数据包括容器检查点文件和容器映像文件,这些文件是静态的,可以同步一次,然后用criu迭代来同步内存数据,每次同步脏内存数据,从而减少传输数据的大小。容器迁移涉及许多步骤。首先,服务迁移控制器从云中心获得下一个mec服务器的ip地址,并同步当前容器的映像数据。其次,调用criu中的检查点函数来生成一个检查点文件,并将其同步到目标mec服务器,跟踪内存数据的变化,并迭代同步脏内存数据。最后,当用户从当前mec服务器切换到下一个mec服务器时,当前容器被停止,在将最后一个脏内存数据同步到目标mec服务器后删除当前容器,并且容器被恢复到目标mec服务器上。用户端被通知将任务卸载到新的mec服务器。

用户端上运行着两个应用程序:第一个是迁移客户端,第二个是将服务卸载到mec服务器的应用程序。

迁移客户端由两个模块组成,分别负责位置监控、移动状态监控、网络配置监控、网络通信质量监控以及卸载任务延迟属性获取。状态监控模块实时跟踪用户位置、移动速度、移动方向的变化。设置策略,仅当移动方向和移动距离超过设置的阈值或移动速度发生变化时才向云中心发送数据,避免用户端与云中心频繁交互产生大量冗余数据。该模块还监视任务的延迟属性,该属性决定任务是被卸载到本地mec服务器还是区域mec服务器。网络模块用于从云中心接收新的mec服务器ip地址,并配置和监控网络质量。当服务从一个mec服务器迁移到另一个mec服务器时,它被分配一个新的ip地址,而被卸载的任务需要被转移到新的ip地址。

应用程序:应用程序在用户端上运行,连接到mec服务器,传输任务数据,并在卸载服务发生时接收结果。

图3详细说明了所设计框架的迁移步骤。用户当前处于源mec服务器的服务区域,并卸载任务在其上运行;用户将移动到目标mec服务器的服务区域,需要将服务从源mec服务器迁移到目标mec服务器。迁移步骤描述如下。

1)用户端将用户的状态数据(即位置、速度、方向)和任务的延迟属性发送给云中心;云中心使用这些数据实时预测下一个mec服务器;

2)云中心将预测的mec服务器信息发送到当前的mec服务器,为迁移做准备。基于本发明所提出的预测方法,可以准确地预测一个或多个mec服务器;

3)来自源mec服务器的映像文件被同步到目标mec服务器。除了目标mec服务器外,在网络负载较低时,可以提前将镜像同步到其他预测的mec服务器上,避免服务迁移造成网络拥塞,影响网络服务质量;

4)预转储(即提前将镜像文件等静态文件同步传输)和跟踪内存变化。在保持容器运行、生成检查点文件和启用内存更改跟踪的同时保存内存快照;

5)来自源mec服务器的检查点文件被同步到目标mec服务器;

6)源mec服务器上的容器保持运行,其内存数据将持续改变,这些被称为脏内存数据。这些脏内存数据将被定期同步到目标mec服务器,直到源mec服务器上的容器停止;

7)当用户从当前基站切换到另一个基站时,将触发服务中断,自动迁移服务完成下面的服务迁移步骤;

8)系统接收到切换信号,源mec服务器上的容器停止;

9)源mec服务器上的容器停止后,最新的内存文件将同步到目标mec服务器;

10)目标mec服务器接收到最新的脏内存数据后,可以使用镜像和检查点数据恢复容器;此时,服务成功地从源mec服务器迁移到目标mec服务器。

由于mec服务器的资源有限,因此需要删除不提供服务即没有在运行的容器,以确保其他服务可以迁移到当前的mec服务器上。

步骤2)中,本发明所提出的预测方法为基于地图的移动预测方法,该预测方法考虑到实际生活中人们沿道路移动这一限制条件,将mec节点的服务范围映射到道路上,然后使用地图数据结合用户的移动状态可以准确预测用户未来接入的一个或者多个mec节点。如图4所示,准确预测未来接入的mec节点之后,将运行环境的镜像文件提前部署到这些节点。相对于传统的方法需要在即将进行切换时才进行数据同步,本发明所提出的预测方法可以将数据同步的操作提前并选择网络资源充足的时候进行数据同步,避免造成网络拥堵。

首先建立mec服务器(本地mec服务器与基站部署在一起)和道路之间的映射关系,以实现基于地图的服务迁移。图4显示了考虑六边形单元结构,一条道路通过一个或多个基站的覆盖区域。汽车将通过cell1、cell2和cell3,可以根据用户移动的方向准确地预测下一个mec服务器。在确定了未来要访问的一个或者多个mec服务器后,在网络资源充足的情况下,可以提前将无状态数据同步到这些mec上。容器镜像可以提前部署到cell2和cell3,在服务切换期间仅同步脏内存数据。在不同mec服务器之间切换时,只同步少量状态数据,避免网络拥塞,提高服务质量。

然而,基站在道路上的覆盖分布并不均匀,不同基站覆盖同一条道路的距离不同。短距离覆盖会导致频繁的业务迁移和业务中断,造成业务不稳定,降低业务质量。对于像自动驾驶这样的应用程序,应该尽可能避免服务中断,否则,后果将十分严重。如图5所示,道路经过三个基站的覆盖区域,通过cell1的覆盖区域的距离非常短,当用户快速移动时,他们将很快通过这个区域。因此,权衡必须考虑是否将服务迁移到cell1。考虑到应用服务延迟需求,为了满足服务延迟需求,该区域的数据通过cell1基站转发到cell2或cell3。这样的优化可以减少服务迁移的次数,减少服务迁移产生的冗余流量,提升qos和qoe。

频繁的服务迁移会产生大量冗余网络流量和服务中断,严重影响网络质量和服务质量。由于基站的覆盖范围有限,与基站一起部署的mec服务器的服务范围也有限。当用户在不同的基站之间切换时,服务将在不同的mec服务器之间迁移。考虑到用户的移动速度不同,卸载服务不同的延迟需求框架设计基于多层部署mec服务器,根据用户的移动速度和任务的延迟需求选择合适的mec服务器(本地mec服务器或地区mec服务器)。

每个任务的延迟要求不一样,从而需要根据不同的情况进行具体分析,如果任务不需要非常低的延迟,系统会将所有任务卸载到区域mec服务器,这可以减少服务中断的次数和由服务迁移产生的冗余网络流量,减少服务中断的次数可以提高用户体验的质量;而且区域mec服务器连接多个基站,服务覆盖面积大,非常适合快速移动场景下的服务迁移。此外,本地mec服务器资源有限,在这个框架的帮助下,本地mec服务器上紧缺的资源被保留给需要低延迟的任务。

整个过程在算法1中描述。首先,使用用户的位置坐标信息匹配地图数据获取用户当前道路(步骤1);其次,根据mec映射到道路的关系图mrmap,获得当前道路范围内mec服务器提供服务的列表(步骤2);然后,基于用户移动速度、方向和任务延迟属性选择合适的mec节点(步骤3);然后,容器镜像和内存快照文件同步到选定mec服务器,同时根据设置的阈值定期同步脏内存数据到目的mec服务器,直到停止容器(步骤4-8);最后,在目的mec服务器上使用容器映像文件和最新的运行时文件恢复容器并继续提供服务。算法1的时间复杂度为o(m),明显优于基于mdp(马尔可夫决策过程)的预测方法。算法1的伪代码如下所示。

具体实施例一

通过仿真实验来比较不同方法在服务迁移时产生的网络流量和服务中断时间。实验使用从openstreetmap下载的真实北京地图数据来评估本发明方法。假设本地mec服务器与基站放置在一起,区域mec服务器连接多个基站。基站布局为六边形,基站间隔为500m,在北京市中心区域部署1951个基站,如图6所示。

以有代表性的情况作为评估基准,即无论用户移动到哪里,服务总是迁移到距离用户最近的mec服务器,执行“nearest”策略。此外,将本发明方法进一步拆解如下:

1)pm表示仅基于所提出的基于地图的移动预测方法进行服务迁移;

2)pm-op表示基于所提出的基于地图的移动预测方法,且对选择的mec服务器进一步限定:遇到对道路覆盖范围距离很短的mec节点不进行服务迁移;可具体解释为,根据预设节点距离阈值选择目标mec服务器,若目标mec服务器的服务范围在当前道路上的覆盖距离大于预设节点距离阈值,则保留选择;若小于预设节点距离阈值,则目标mec服务器不被选择;其中,节点距离为mec服务器覆盖范围在道路上覆盖的距离,预设节点距离阈值需要根据提供的服务范围大小进行设置,如果服务范围比较大,那么该阀值就可以设置较大;3)pm-tier表示基于所提出的基于地图的移动预测方法和多层mec服务器部署架构进行服务迁移;

4)pm-op-tier表示基于所提出的基于地图的移动预测方法和多层mec服务器部署架构,且对选择的mec服务器进一步限定:遇到对道路覆盖范围距离很短的mec节点不进行服务迁移。

利用sumo(simulatedurbantraffic)构建用户在北京的道路或街道上移动的模拟系统,sumo是一个开源的多模式交通模拟软件包,适用于处理大型网络,可以建立交通系统模型,包括道路车辆、公共交通、行人,并实时获取相关状态数据(位置和速度)。

将北京地图数据从openstreetmap下载并加载到sumo进行仿真实验,其中,利用sumo中的工具“radomtrips.py”基于北京地图数据生成随机车辆轨迹,通过对不同车速的仿真来评估本发明方法,仿真实验的主要参数如表1所示。每个实验为车辆设定不同的速度,给每辆车分配一个不同大小的容器,按照生成的运动轨迹运行,然后计算实验结果的平均值。启动容器的时间受容器大小的影响,容器越大,启动时间越长。

表1模拟参数

所有实验的服务迁移都基于预复制方法即提前将静态数据同步到目标mec服务器。每个用户的任务都有一个属性级别,该属性级别标识任务能够容忍的最大延迟,并根据该属性系统确定任务是否将迁移到本地mec或区域mec。

实验主要测试服务迁移过程中产生的网络流量和服务切换过程中的服务中断时间。图7示出了不同方法在不同速度下产生的服务迁移流量对比图。

从图7中可以看出,服务迁移过程中产生的网络流量与用户移动的速度和mec服务器的位置(本地或区域)有关,“nearest”、“pm”和“pm-op”方法产生的网络通信量随着速度的增加而减少。当用户移动迅速时,用户在完成服务迁移之前就已经离开了当前mec服务范围,并且由于每个基站的覆盖范围有限,在此服务迁移过程中只复制了部分数据。“pm-tier”和“pm-op-tier”两种方法克服了用户移动速度过快带来的问题,减少了服务迁移的次数,大大减少了服务迁移过程中产生的网络流量,减少了70%以上,满足了用户卸载任务的延迟。

图8示出了不同方法在不同速度下产生的服务中断时间对比图。从图8中可以看出,当用户以非常低的速度移动时,有足够的时间同步源mec服务器和目标mec服务器的无状态数据,这样每个方法产生的服务停机时间非常接近。然而,当移动速度增加时,不同方法产生的停机时间会发生显著变化,尤其是“nearest”算法,因为该算法中只有当用户即将进入下一个mec服务范围时才能确定下一个接入点。速度越快,同步数据的时间就越短;当切换发生时,大量的无状态数据没有被同步,因此会产生长时间的停机时间。优化后的方法去掉了覆盖区域较小的mec服务器,当用户移动到此类基站的覆盖区域时,不会执行服务迁移,但任务会被转移之前的mec服务器。这种mec服务覆盖范围小且移动速度非常快的情况,利用本发明方法可以避免在切换之前没有完成同步无状态数据导致的大量服务中断时间。本发明方法“pm-op-tier”基于多层架构,根据用户状态和任务属性实时选择最佳的mec服务器进行服务迁移,不受用户移动速度的影响。

具体实施例二

通过基于真实数据和物理平台实验来比较不同方法在服务迁移时产生的网络流量和服务中断时间。

整个测试平台包括四个边缘服务器、一个云服务器和一个终端设备。实验在六个主机虚拟机中运行,其中,两个虚拟机充当本地mec服务器,两个虚拟机充当区域mec服务器,一个虚拟机充当云服务器,一个虚拟机充当用户终端。每个虚拟机分配有两个虚拟cpu核和2gb的虚拟内存。每个边缘mec服务器的操作系统都是ubuntu18.04lts,均按以下条件运行:(1)runc1.0.1作为容器运行时;(2)rsync3.2.3作为文件传输机制;(3)criu3.12作为检查点和恢复功能。linuxtrafficcontrol用于控制用户、服务器和云中心之间的延迟,网络带宽配置为100mb/s。本地mec服务器与用户之间的连接延迟配置为20ms,区域mec服务器与用户之间的连接延迟配置为100ms。

使用下面的用户端应用程序进行实验:

1)游戏服务器(gameserver)

xonotic(lxc约1.4g)是一款令人上瘾的竞技场风格第一人称射击游戏,具有清晰的移动和广泛的武器。游戏的服务器部分在容器中运行,多个用户端可以连接到该部分一起玩。实验中,客户机在桌面上运行,而服务器及其容器在mec服务器之间实时迁移。这个应用程序有大约160mb的中等内存需求。

2)人脸检测(facedetection);

该应用程序使用opencv库检测视频中的人脸,然后将结果发送给用户。这个应用程序的容器大小大约是700mb,而需求内存的大小大约是100mb。

3)模拟ram(ramsimulation)

一个脚本用于模拟内存密集型应用程序,例如图形计算和深度神经网络学习。容器有一个简单的python脚本,它消耗大量内存,并且内存里面的内容会随着时间不断变化。实验中内存的利用保持在大约300mb。

使用微软亚洲研究院收集的真实世界gps轨迹数据集geolife,该数据集记录了182名用户在三年多的时间(2007年4月至2012年8月)内的轨迹数据,包括用户在不同交通方式下的活动轨迹,比如开车、乘坐公共汽车、骑自行车和步行;其中,选择10条同时包括不同交通方式(步行、自行车、公共汽车、汽车)的用户运动轨迹。

首先,在作为用户端的虚拟机上运行一个脚本,将每个用户的gps数据分别发送到云中心虚拟机;其次,在云中心虚拟机上运行barefoot,基于openstreetmap下载的北京地图数据进行道路匹配;barefoot提供openstreetmap数据的访问,其包括独立的离线服务器(匹配器服务器)和在线地图匹配服务器(追踪服务器),可以灵活用于分布式设施作为地图数据服务器;最后,为每个实验选择一个测试应用程序,根据应用程序的延迟级别选择用于服务迁移测试的适当边缘服务器,并计算实验结果的平均值。

图9示出了不同应用程序在不同方法下产生的服务迁移流量对比图。从图9中可以看出,在mec环境中,服务迁移产生的网络流量大小与所使用的容器镜像的大小和应用程序的类型直接相关。服务迁移产生的迁移数据主要包括容器镜像和内存数据,不同的应用程序生成的内存数据大小是不同的。因此,除了镜像数据大小之外,服务迁移生成的网络流量还会受到应用程序生成的内存数据大小的影响,图10示出了不同应用程序每次迁移的镜像数据和内存数据的对比图。如图10所示,内存占用大的应用程序会在服务迁移过程中生成大量数据。

图11示出了不同方法在不同交通方式下产生的服务中断时间对比图。从图11中可以看出,当移动速度很低的时候差异不大,例如,当用户行走时,“nearest”方法产生的停机时间与其他方法相近;但是当选择不同的交通方式就会产生差异,尤其是“nearest”方法存在很大差异。pm-op-tier明显优于其他方法,特别是对于移动速度较快的交通模式,具有良好的性能,可以在不同模式之间无缝切换,不受移动模式的影响,为用户提供更稳定的服务。

尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1