面向边缘计算中移动媒体流的一种新型副本放置机制
1 引言
随着移动计算的飞速发展,用户在移动环境中访问互联网资源的场景和需求日益增多。人们将从个人计算机时代进入无处不在的移动计算时代。与此同时,许多无线接入网络,如通用分组无线服务、无线网络及其他蜂窝移动网络,为移动用户提供了无处不在且异构的无线接入网络的可能性。因此,互联网上的媒体数据量已急剧增长。1,2思科预测,到2020年,全球移动数据流量中75%将为视频。3最糟糕的是,当大量用户同时访问同一资源时,主干网络流量和访问延迟将显著增加,从而导致系统瓶颈。4人们已在移动环境中广泛使用传统的内容分发网络(CDN)和对等网络(P2P)技术。为发展各种移动服务,建立了用于媒体流的混合P2P‐CDN系统。5由于移动网络中存在强烈的动态移动性和拓扑变化,系统性能较差且不稳定。已有研究利用网络功能可视化(NFV)来分析动态网络中网络效用的下降问题。6王和宋提出了一种针对移动P2P‐CDN中超级节点的选择算法,提高了移动内容分发网络的效率。7副本放置技术通常被用来缓解瓶颈并改善用户体验。现有针对混合CDN中的副本放置研究8局限于内容复制,并采用非协作拉取式方法。许多解决方案已被提出以减少部署服务器的数量。9然而,一个可扩展、可靠、响应迅速且成本有效的综合方案仍然是一个难以实现的目标。10
越来越多的用户倾向于使用视频流、网页浏览、社交网络和在线游戏,这迫使供应商开发新的服务技术以提供可接受的服务质量(QoS)。11,12边缘计算的出现为这一困境带来了新的曙光。边缘计算是一种使能技术,支持在网络边缘进行计算,包括代表云服务的下行数据和代表物联网(IoT)服务的上行数据。边缘计算将对我们的社会产生巨大影响,类似于云计算。13边缘计算的一个重要特征是每个节点都可以进行计算与存储,从而使透明学习框架能够将训练模型的任务转移到服务器和边缘物联网设备上。14此外,部署具备存储和计算能力的边缘服务器可以减少边缘节点的数量,并提高节点与边缘节点之间的吞吐量。15每个节点的计算与存储能力得到充分利用。
本文提出了一种用于移动媒体流的新型副本放置机制,该机制是一种有效框架,可促进边缘计算中的QoS性能。本文的主要贡献总结如下。
- 首次,我们在RPME中引入了一种新的副本放置模型。
- 在RPME中,我们提出了基于块级存储处理副本的最优解决方案,并定义了从最近的服务器获取数据的线性序列。我们进一步设计了一套用于动态放置副本的实用解决方案,以提升边缘计算性能。
- 为了理解RPME的性能,我们进行了大量的仿真实验。实验结果表明,所提出的RPME能够有效地部署资源副本,以平衡边缘节点负载,并为用户提供满意的流媒体延迟。
本文其余部分组织如下。相关工作简洁明了,我们在第2节中将其与类似问题进行比较。第3节详细阐述了RPME的架构以及副本放置问题的形式化定义。在第4节中,作为该问题的解决方案,详细阐述了有效的副本放置策略。在第5节中,实现了所提出的策略,开展了一些实验,并将仿真结果与其他策略进行了比较。最后,我们在第6节中总结了本文并讨论了我们的未来工作。
2 相关工作
在过去十年中,研究人员对内容分发网络中的副本放置进行了大量研究。16 -18所使用的副本放置算法(RPA)是最小p‐中值问题,这是一个 NP难问题。19最具代表性的副本放置算法包括贪心算法、16热点算法17和随机算法。18贪心算法通过迭代服务器来降低复制成本。热点算法根据用户请求的数量确定副本的位置。随机算法则在服务器上随机选择一些位置放置副本。由于静态RPA无法适应快速变化的场景,因此提出了基于网络节点数据流数量的动态RPA方法。20为了保证服务质量要求,设计了对象复制算法。21此外,还提出了一种鲁棒复制布局,以在服务器随机故障的不确定性情况下提高性能。22
由于在P2P网络中节点可以随时连接或退出网络,因此CDN网络中的副本放置方案无法直接应用于P2P网络。通过分析节点连通性、数据流行度和查询成功率之间的关系,傅等人23提出了一种基于拓扑结构的动态复制方法,并为节点连通性提供了最佳的分布式模型。针对本地有序任务的调度,提出了一种混合遗传算法。24然而,该模型未考虑内容副本在网络中不同节点间传播时节点之间的相互作用,因此提出了一种 P2P网络的演化博弈论模型。25尽管研究人员已进行了诸多改进,但由于混合CDN‐P2P网络兼具CDN网络和P2P网络的优势,上述算法无法直接应用于混合CDN‐P2P网络。
考虑到CDN‐P2P的特性,提出了一种经济型启发式解决方案,以解决已被证明为NP难的组播树构建中的副本放置问题。26为了解决该问题,将RPAs视为混合CDN‐P2P中基于传输和存储成本的受限p‐中值问题。24然而,任何复制算法都存在不足之处,由于无线和移动设备的高度动态性。哈利吉和阿纳鲁伊27构建了一种新颖的实时流媒体方案,其中一种新的混合CDN‐P2P策略在CDN服务器和 P2P网络中建立了缓冲区。由于移动多媒体数据的急剧增加,用户体验显著下降。何等人28近年来研究了基于智能路由器的P2P视频内容分发网络中的副本放置策略,以提升用户的QoS。为了减少初始加载和播放延迟,研究人员还提出了一种用于移动环境中媒体流的混合P2P‐CDN系统。29
现有针对副本放置的研究通常在改进平均性能指标(如响应延迟、负载均衡、通信成本和存储开销)时考虑的是常规网络,但忽视了用户需求,无法提供个性化的网络服务。服务质量感知的副本放置机制通过优化对用户需求的处理来满足所有用户的QoS。一种用于内容普及的基于认知的预测模型,结合上下文信息与用户兴趣,以关注用户需求的方式进行副本放置,相对提高了用户满意度。然而,所提供的服务在质量上仍然不足。在本研究中,我们提出了一种个性化推荐副本放置机制,称为个性化推荐副本放置。该方案能够提升服务器的服务能力,并满足用户在内容方面的个性化需求。
3 系统模型与问题描述
本节描述了系统模型中媒体流从服务器传输到客户端的过程,并对媒体副本放置(MRP)问题进行了形式化定义。
3.1 RPME的逻辑视图
边缘计算遵循客户端/服务器架构和云计算。随着客户端数量的增加,系统性能可能会下降,因为大量发送到服务器的I/O请求可能超过服务器外部存储设备(如硬盘)的最大I/O吞吐量。这种情况可能导致客户端响应缓慢,降低用户体验。因此,合理的副本放置将显著提升系统性能。在边缘计算中,可以利用连接在服务器与客户端之间的各个边缘节点的计算能力,同时也可以在这些边缘节点中放置副本,以提高系统的性能。
我们的RPME旨在为将媒体副本放置到边缘节点解决方案中提供一个通用框架。RPME的逻辑视图如图1所示。整个系统由三种组件构成,即客户端、服务器和边缘节点(位于客户端与服务器之间的中间件中的设备,例如交换机和路由器)。客户端可以从边缘节点和服务器访问数据,但服务器中机器学习算法生成的副本只能推荐给边缘节点。
客户端记录用户信息和用户访问历史信息。服务器记录网络配置中边缘节点与客户端之间的所有通信信息。服务器可以获取数据,并利用机器学习算法(如决策树和支持向量机)对某一边缘节点通信范围内的所有用户的访问历史信息进行训练,从而获取热门内容并将其推荐给边缘节点。由于边缘节点的存储容量有限,边缘节点根据所提出的优化的RPM放置推荐副本。在客户端和边缘节点上,网络配置存储了通信信息,客户端据此可连接并与其服务范围内的边缘节点进行通信。因此,客户端能够以更低的延迟访问所需数据,从而在整个系统中保证更好的用户体验。
3.2 工作流程
系统的整体架构如上所述,系统包含四个部分。第一步,根据用户需求,客户端会向连接的边缘节点发送数据请求,该边缘节点可将此请求广播至整个系统。最近的服务器会根据服务器中的信息,明确回复哪些节点缓存了所请求的资源。下一步,该边缘节点将比较接收到的资源位置信息,选择最近的节点,并从该节点检索副本并发送回用户。上述两个步骤可清楚地在图2(见第1节)和图2(见第2节)中展示。
副本判断是第三步,如图2所示(见第3节)。连接到请求客户端的边缘节点将确定位置并从服务器访问信息。根据来自信息的两次判断结果,决定是否在此处放置副本。在图2的最后部分,边缘节点会将计算结果发送给服务器,服务器将根据该结果执行副本放置。在整个过程中,系统中存在一个实时更新数据库。它在第二步提供线性序列,在第三步提供副本位置和访问比率,并在最后一步更新副本的信息。它是整个系统的重要组成部分。
在系统中,当用户向服务器请求媒体数据时,会获取用户上下文信息和用户‐项目评分矩阵,并将其传输到服务器。我们首先基于用户上下文信息对用户进行簇划分,并更新用户‐项目评分矩阵,然后生成服务器的副本推荐序列。当服务器将副本推荐序列推送到边缘节点后,通过所提出的RPM将部分热点数据放置在边缘节点中。该边缘节点能够为多个客户端提供媒体副本。
3.3 问题描述
对于用户请求的一组媒体项{I 1 , I 2 , I3,…, In},可由服务器和边缘节点进行处理和响应。我们希望边缘节点能够响应用户的所有请求,以提升用户体验。然而,由于边缘节点的存储容量有限,将所有被请求的数据部署在边缘节点上是不现实的。
MRP问题旨在通过选择最合适的副本放置在边缘节点上,以满足用户的个性化需求并提高用户满意度。在边缘服务器存储容量有限的前提下,使边缘节点的需求(D)最大化。MRP问题被形式化为
$$ D= \max \sum_{i=1}^{m} d_i $$
受限于
- $ d_i \geq d_{\text{limitation}} $;
- $ \sum_{i=1}^{n} | d_i | \leq |M| $。
$ d_{\text{limitation}} $ 是媒体数据的最低要求;如果 $ d_i $ 低于 $ d_{\text{limitation}} $,边缘节点将不会放置该媒体数据的副本。 $|d_i|$ 是媒体数据的大小,而 $|M|$ 是边缘节点的存储容量。
事实上,我们认为在多项式时间内获得MRP问题的最优解非常困难。本文讨论了一种可行的启发式贪心算法来解决MRP问题。
4 MRP问题的解决方案
在MRP问题中,由于副本的历史评价是选择副本的重要依据,因此可以根据用户历史评分来预测用户的兴趣。为此,将推荐算法引入MRP问题中。推荐结果能够满足用户的个性化需求,因而具有较高的准确性。在本节中,我们首先收集用户信息,并分析用户访问的媒体内容的一些特征。在此基础上,提出一种推荐算法用于推荐待选的副本。此外,我们设计了一种贪婪启发式算法来解决MRP问题。
4.1 预备知识
用户所处的当前情境会影响其行为。我们首先对用户上下文进行抽象描述,并通过聚类分析将用户划分为若干不同的用户簇。这样,我们可以解决新用户的冷启动问题。在RPME模型中,用户信息和资源信息定义如下。
定义 1. 用户信息(UI) ,包括年龄、性别和职业三个属性,可表示如下:UI=(a, s, o),其中
- a 表示不同的年龄组,包括低于某个年龄和高于某个年龄。
- s 表示不同的性别,包括男性和女性。
- o 表示不同的职业,包括教师、医生和学生。
定义 2. 资源信息(RI) 可以表示为 RI=(c, r),其中
- c 表示资源类别。
- r 表示用户对资源的评分。
在RPME模型中,用户对资源的评分是通过用户的直接显式评分获得的。因此,我们可以判断用户是否对资源感兴趣。然而,用户兴趣资源类别无法直接获得。因此,除了项目的定义和用户之外,我们还根据资源的类型以及用户对资源的评分推导出用户兴趣资源类别。
定义 3. 用户行为集 :给定Γ={K1 , K2,…, Km},用户感兴趣的资源类别是一个满足K i={(uidentity, r identity)}的集合,其中
- m表示资源类别的数量。
- uidentity和ridentity分别表示用户(或客户端)和资源的标识。
4.2 个性化副本推荐算法
为了满足用户的个性化需求,我们提出了两种推荐算法来选择适当的副本到边缘节点。
4.2.1 基于决策树的副本推荐算法
在本节中,我们提出了一种基于决策树的副本推荐算法,向边缘节点推荐更精确的副本。
决策树的基本思想是根据训练集中数据的特征值向量,计算训练集中每个特征值的信息增益,然后选择信息增益最大的数据作为决策点。其余数据通过该决策点分为两部分。接着分别计算这两部分数据的信息增益。大数据将原始数据进一步划分为四部分。以此类推,递归处理所有数据。处理完成后,所得数据结构类似于二叉树结构,称为二叉决策树。
决策树的构建过程如下。数据集中的每个用户属性都是树中的一个节点。我们根据获得最大信息增益的方法来划分数据集。在构建决策树之后,为了减少过拟合问题,我们对所构建的图决策树进行剪枝。
基于决策树的副本推荐算法的伪代码如算法1所示。首先,该算法对用户信息进行归一化处理。然后,将用户数据划分为训练集和测试集。最后,利用基于决策树的副本推荐算法确定每个节点的共同兴趣类别。
决策树具有较低的计算复杂度,易于使用且效率高。决策树能够处理包含无关特征的数据,并容易构建易于理解的规则。然而,基于决策树的副本推荐算法在选择用户可能希望推荐给边缘节点的资源时存在一些缺点,例如难以处理缺失数据、过拟合,以及忽略数据集中属性之间的相关性。在下一节中,我们进一步提出一种基于聚类的副本推荐算法,以向边缘节点推荐更精确的副本。
4.2.2 基于簇的副本推荐算法
向边缘节点推荐热点数据是有效降低用户访问延迟的关键。我们提出了一种基于用户上下文聚类的协同过滤算法,以生成满足用户个性化需求的副本推荐。
我们使用k‐均值聚类算法将具有相似上下文的用户分配到同一类别。本文假设I={i 1 ,i 2 ,i3,…, ik} 表示所有类型的集合,且每个用户仅属于集合C中的一个类型。我们采用余弦相似度来计算用户信息之间的相似性。sim(μ, ν)如下所示。
$$
\text{sim}(μ, ν)= \cos(\vec{μ}, \vec{ν})= \frac{\vec{μ} \times \vec{ν}}{|\vec{μ}| \times |\vec{ν}|}
$$
为有效解决用户评分数据稀疏问题,本文在协同过滤之前采用斜率一算法19来预测评分填充矩阵。
我们首先计算项目评分偏差,即项目评分差异的平均值 l.
$$
\text{Dev}(i,j)= \frac{\sum_{μ∈θ ( i ) ∩θ ( j )}(r_{μ i} − r_{μ j})}{|θ(i) ∩ θ(j)|}
$$
$ r_{μ i} $ 是用户 μ 对项目 i 给出的评分,而 $ r_{μ j} $ 是用户 μ 对项目 j 给出的评分。 θ(i) 是对项目 i 评分过高的用户,而 θ(j) 是对项目 j 评分过高的用户。$|θ(i) ∩ θ (j)|$ 是对项目 i 和 j 都评分过高的用户数量。
然后,我们根据(3)和用户历史评分来预测未评分项目的评分。
$$
P_{μ j}= \frac{\sum_{μ∈θ ( μ )}|θ( i ) ∩ θ ( j )| ( r_{μ i} − \text{Dev}( i,j ))}{\sum_{μ∈θ ( μ )}|θ( i ) ∩ θ ( j )|}
$$
θ ( μ ) 是被用户高估的项目 μ。
本文首先使用k‐均值聚类算法将具有相似兴趣的用户划分到同一簇中。然后,根据斜率一算法结合用户‐项目评分矩阵预测未评分项目的评分并进行填充。最后,采用基于项目的协同过滤算法计算项目间的相似度,更新项目评分,并生成项目的副本推荐。该算法的详细描述如下,其伪代码在算法2中给出。
首先,利用每个用户在边缘节点上的历史访问记录,可以确定每个用户的兴趣资源类别以及每个类别下的用户数量。
其次,根据用户信息获取特征向量,并对特征向量进行归一化处理。利用K‐均值算法对用户进行聚类,可以得到每个边缘节点上的共同兴趣资源类别。
第三,我们对边缘节点上推荐的兴趣资源类别进行排序,并根据边缘节点的存储容量推荐Top‐N。
4.3 优化的副本放置算法
除了第一阶段推荐用户共同兴趣的资源副本外,另一个重要问题是这些推荐副本的放置。有效的放置算法可以在实现更好的负载均衡的同时,有效减少副本访问时间,从而提升整个网络系统的性能。
4.3.1 块级副本存储
针对每个边缘节点的存储,基于边缘节点的特点,我们提出了一种块级副本存储方案,以提升数据资源搜索的优势并节省存储空间。每个副本将被分割成多个块。每个副本块表示为 CB= tag,record,data。标签是服务器中数据库的键,RPME 使用此参数快速搜索和访问数据。记录是 RPME 中副本块的基本信息,包括最后访问时间(最新访问时间)、访问次数(访问次数)、块索引(数据块的索引)、下一数据块位置(下一个数据块的位置)、访问频率(同一区域内的访问频率)以及大小。副本是副本资源的块内容。
块级副本的核心是将副本划分为小的数据块。RPME 使用块索引(Block‐Index)按顺序标记副本的每个块,并在该块中记录下一数据块位置(Next‐Block)作为位置信息,从而使得我们可以通过第一个块找到完整的副本。块之间的存储类似于弱链接的单向链表。因此,当副本足够大,而单个边缘节点的存储空间不足以容纳时,RPME 会将一个副本的各个块存储在不同的边缘节点上。基于这些数据参数,RPME 能够精确地存储每个副本。
由于副本资源分散在边缘节点上,因此难以使用传统的副本搜索算法。为了快速搜索副本资源的位置,RPME 在服务器中设置了专门的索引数据库(Index‐DB)。Index‐DB 记录了每个缓存资源所在的边缘节点。在 Index‐DB 中,RPME 并不记录完整的数据副本,仅记录第一个副本块的位置信息。当边缘节点开始为资源进行广播时,广播信息将从最近到最远传递至服务器。根据服务器中的索引数据库,我们可以判断请求的资源或该资源的副本是否存在于该服务器所负责的区域中。一旦找到该资源的第一个块信息,即可将此信息反馈给发送请求的客户端。
在上述系统中,我们假设其包含三个部分:客户端、边缘节点和服务器。我们可以将其表示为 C ={c1 , c2,…, cn},M ={m1 , m2,…, mp} 和 S ={s1 , s2,…, sq}。根据这些节点,我们可以将网络的图结构定义为 G 和 G=(V, E),其中 V 是通信图G中的所有顶点(系统中的节点),E 是 G 中顶点之间的边。通信图 G 中的每条 E 表示为 E= E(w),其中 w 是通信成本。此外,通信图 G 中的每个 V 表示为 V=V(sc, pc),其中 sc 为共享缓存大小,pc 为私有缓存大小。因此,V 在不同类型的系统节点中具有不同的特征。
为了快速准确地找到相应的节点,我们提出了一种解决该问题的方案。我们将有效的数据获取序列定义为L={l1 , l2,…, l n} ,其中ln是自身到服务器路径上的一个计算组件。系统中的每个节点都有其自身的线性序列。我们可以得到如图3所示的通信图。这些线性序列均从自身开始,到最近的服务器结束。如果存在两个距离某组件最近的服务器,则将首先计算出的线性序列保存到数据库中。例如,边缘节点m2 到服务器s 1 和服务器s 2 ,的距离相等,此时记录的线性序列为[m 2 ,s 1 ]。
4.3.2 优化的副本放置算法
本节重点研究边缘节点的媒体副本放置。由于边缘节点的存储容量有限,我们假设每个文件在边缘节点中仅有一个副本。提出了一种优化的媒体副本放置算法,优先放置用户感兴趣的媒体副本,以优化已放置副本与用户需求之间的匹配,从而最大化满足边缘节点的要求,符合用户的个性化需求,并提升用户体验。
对于边缘节点,我们在放置副本的同时也需关注边缘节点的负载均衡。为了提高边缘节点的资源利用率,在算法3中提出了一系列改进的贪心算法。该方法考虑了边缘节点的实时负载,并选择负载最小的对等节点来放置副本。当将副本资源放置在边缘节点上时,首先选择距离请求最近的边缘节点。基于上述复制位置的思想,我们的目标是在存储容量和服务能力受限的前提下,找到一组节点来放置用户共同兴趣资源的副本,以最小化资源访问请求的延迟,并确保每个用户都能获得服务。从上述分析可知,副本放置问题可以分为两个步骤来解决。
首先,用户到达边缘节点服从泊松分布。根据用户属性和用户历史访问记录,我们使用上一节提出的推荐算法为每个边缘节点推荐用户常见的兴趣资源类别。对于新资源,需要判断其是否为边缘节点推荐的资源类别,如果是,则将其推荐给相应的边缘节点。
其次,在确定需要放置的资源副本后,我们将选择一个合适的边缘节点来放置该资源副本,以确保用户的QoS。因此,我们提出一种优化的贪心算法来求解第3.3节中描述的问题模型,以放置资源副本,从而使每个节点的负载达到均衡。
解决副本放置问题的关键在于第二步:找到满足存储容量和服务能力约束的边缘节点,以放置资源副本,从而实现每个边缘节点的负载均衡。由于副本放置问题属于NP难问题,我们提出如下贪心算法:(1)找到推荐该资源类型的节点,(2)找到满足约束条件的节点,(3)优先选择负载最小的节点放置副本。算法3列出了优化的贪心算法。
根据上述副本放置的思想,我们的目标是在存储容量和服务能力受限的前提下,找到一组节点来放置资源的副本,以最小化资源访问请求的延迟,确保每个用户都能得到服务。因此,提出了一种改进的贪心算法。
5 性能评估
5.1 实验设置
我们首先讨论媒体资源副本选择对边缘计算中副本放置的影响。为了确保有效的服务质量,我们尝试通过将资源副本放置在最合适的边缘节点和移动客户端上,以降低访问延迟。本文忽略了传输比对实验结果的影响。我们模拟了一个小型边缘计算网络,该网络包含两个服务器、十个边缘节点以及连接到边缘节点的50个终端。用户到达各个边缘节点的规律服从泊松分布。本文采用MovieLens数据集,其特征包括用户、电影、评分和稀疏程度。此外,可以从该数据集中获取用户信息。同时,随着节点数量的增加,节点与服务器之间的相对距离变得更远。
我们使用模拟器通过Python进行了一组实验,以评估所提出算法的性能。对两种推荐算法在选择副本上的准确性进行了比较和分析。我们将所提出的媒体RPM与其他算法在副本请求率、平均响应延迟和负载平衡方面进行了比较。由于用户到达边缘节点服从泊松分布,我们取十次实验的平均值。
5.2 推荐准确率
实验通过比较推荐准确率,评估了RPME模型中决策树算法和聚类算法在选择副本时的表现。在RPME模型中,每个边缘节点上资源副本的推荐准确率通过期望来衡量
$$
\text{accuracy}= \frac{1}{n} \sum_{i=1}^{n} E(i),
$$
其中,n是实验次数,E(i) 表示每个边缘节点中所有用户请求的资源副本类别的期望,范围为 $ 0 \leq E(i) \leq 1 $。
在RPME模型中,每个节点推荐的资源副本类别数量对推荐准确率有很大影响。如果在边缘节点上推荐所有资源副本类别,则准确率最高。然而,这种情况是理想化的,因为边缘节点的存储容量有限。为了获得合适的推荐类别数值,图4展示了不同情况下的准确率。
从图4中,我们可以得出两个主要结论:(1)随着推荐的资源副本类别数量的增加,推荐的准确率也随之提高;(2)聚类算法的准确率始终高于决策树。
第二个实验展示了当推荐的资源副本类别相同时,聚类算法和决策树算法在各个边缘节点上的准确率。在实验中,我们随机选择十个边缘节点,分别使用上述两种算法进行十次实验,然后计算平均准确率。图5显示,在RPME模型中,聚类算法的推荐效果优于决策树算法。
5.3 边缘节点负载均衡
考虑到副本放置问题,本文强调边缘节点的负载均衡。对于副本位置集合中的边缘节点,我们将选择负载较低的节点进行放置。在边缘计算中,影响节点负载的主要因素是磁盘I/O负载 $(L_1)$ 和磁盘空间负载 $(L_2)$。其公式如下:
$$
\text{Load}= w_1 \ast L_1 + w_2 \ast L_2,
$$
其中 $ w_1 $ 和 $ w_2 $ 分别是磁盘I/O负载和磁盘空间负载的权重值。
我们初始化每个边缘节点的存储空间,并随机分配40个数据集合,假设每个数据的大小相同。为了实现边缘节点的负载均衡,对贪心算法进行了改进。节点负载越大,表明磁盘越繁忙,占用的空间也越多。因此,考虑节点负载可以避免由于磁盘繁忙导致的副本块写入操作阻塞,从而避免系统性能下降。另一方面,在尽可能平衡副本分布的同时,可以减少后续副本调整操作的压力,节省系统资源。
在图6中,我们比较了三种算法在负载均衡下每个边缘节点的负载情况。实验结果表明,基于聚类算法的负载最大,这意味着用户请求在边缘节点得到最多响应。相反,随机算法的负载最低,这意味着用户请求无法在边缘节点得到响应,需要向服务器请求,这将增加服务器的负载,同时边缘节点也无法被充分利用。换句话说,基于聚类的推荐算法优于其他两种算法。
此外,我们比较了负载均衡副本放置和非负载均衡副本放置情况下边缘节点上的负载。如图7所示,负载均衡时的边缘节点负载大于非负载均衡时的负载。
5.4 副本请求率
定义 4. 副本请求率(D) 是指请求用户从其本地边缘节点请求的媒体副本数量与用户请求总数之比。
副本请求率表示如下:
$$
D= \frac{N_{\text{edge node}}}{N_{\text{request}}},
$$
其中 $ N_{\text{edge node}} $ 表示边缘节点处的请求响应次数, $ N_{\text{request}} $ 表示边缘节点上所有用户的总请求数。
如图8所示,在负载均衡的情况下,三种不同算法在各个边缘节点上的副本请求率相对稳定。聚类算法的副本请求率超过了其他两种算法。该算法基于推荐副本序列和用户上下文放置副本,与其他算法相比,显著提高了副本请求率。最终,由于边缘节点的存储容量和请求副本数量的限制,副本请求率的趋势变得相对稳定。
5.5 平均响应延迟
定义 5. 平均响应延迟(Tdelay) 是边缘节点和服务器上请求响应的响应时间总和与所有用户总响应时间之比。
平均响应延迟时间表示为
$$
T_{\text{delay}} = \frac{\alpha \cdot N_{\text{edge node}} + \beta \cdot N_{\text{server}}}{N_{\text{request}}},
$$
其中 $ N_{\text{server}} $ 是服务器上请求响应的数量, $ \alpha $ 和 $ \beta $ 分别是边缘节点和服务器上的延迟时间。对于边缘计算,我们可以计算每个边缘节点上所有用户访问数据库中所有副本的平均访问时间。平均响应延迟显示了全部用户请求的平均访问效率。因此,我们采用公式8来计算平均响应时间。最初,所有数据资源都存储在服务器端,副本从包含数据的各个服务器传送到每个边缘节点。优化的副本放置策略通过在边缘节点上放置副本,可以减少访问延迟。在优化之前,我们首先测量了所有边缘节点数据的平均访问延迟。我们初始化了每个边缘节点的存储信息。
在图9中,我们比较了负载均衡和非负载均衡情况下三种算法在每个边缘节点上的延迟。实验结果表明,三种算法在负载均衡情况下的延迟低于非负载均衡情况。此外,当负载均衡时,三种算法下每个边缘节点的延迟大致相同且相对稳定。
6 结论与未来工作
本文提出了一种优化机制,以解决边缘计算中的MRP问题。首先,我们介绍了边缘计算中的MRP问题,并强调了其特点。其次,我们详细构建了边缘计算模型以及MRP问题的数学描述。第三,针对边缘节点的负载均衡能力,分析了利用用户信息中推荐副本的推荐算法。基于客户端的存储和服务能力,提出了一种协作式副本放置机制来部署资源副本。此外,实现了该机制的贪心算法。
我们进行了大量实验来评估所提方案的性能。仿真结果表明,该策略可以降低客户端的访问延迟、提高服务器的负载均衡以及副本可用性。
在未来工作中,我们还将考虑复制和更新后的网络容错性,以确保客户服务的质量,提升网络稳定性,并降低网络运营成本。实验结果表明,该算法具有显著的副本需求性能。
在未来工作中,我们还将关注对所提出算法的一些改进,包括在真实网络计算环境中进行实验以及提升副本需求的性能。
1940

被折叠的 条评论
为什么被折叠?



