2. 中国科学院大学 电子电气与通信工程学院, 北京 100049
2. School of Electronic, Electrical and Communication Engineering, University of Chinese Academy of Sciences, Beijing 100049, China
边缘计算是一种将计算资源和服务部署在网络边缘的计算节点或智能终端设备上的分布式计算方法[1],相较于云计算,边缘计算可以为用户提供更低延迟的服务,在未来的网络发展中将发挥重要的作用。边缘存储技术是边缘计算中的一个重要研究课题,其核心在于边缘网络合理分配存储资源,从而更好地降低用户请求或节点请求的计算时延。
目前,边缘存储按照存储位置的不同可以分为基站存储[2]和移动设备存储[3],其中,由于基站的容量和存储性能高于异构的移动存储设备,因此对基站存储进行研究更具实用价值。在基站存储策略中,现有的研究方案分为协同式和非协同式两类[4]。
在非协同式的存储策略中,各个存储节点独立地根据收到的请求来存储和调配资源,无需和其他基站进行互动和信息传递。非协同式的存储策略包含基于用户偏好[5]、基于马尔科夫过程[6]、基于增强学习[7]等单点存储策略,它们可以很好地降低时延和传输代价,但是由于信息不共享,各个节点的相同资源副本数量在全局上不可控,对于一些热点内容,其爆炸式增长的副本数量会带来严峻的一致性问题,而一致性问题所引起的时延开销将严重影响用户体验质量。
协同式的存储策略利用基站之间的信息传递,通过合作提供对外服务。文献[8]利用基站间的协同作用,当一个基站缺少内容资源时,会向最近的拥有该内容的基站发出请求,从而降低该基站向云计算中心的请求次数以及总请求延迟,但是,在面临热点问题时,由于热点资源的存储位置对各个存储节点透明,导致整个网络的副本数量依旧不可控,该策略在一致性问题上与非协同策略具有相同的局限性。文献[9-10]分别提出基站间的协同策略,但它们未明确副本管理方法,如果采用中心化的管理方式,副本在各个节点中的存储与删除将大幅提升中心节点的计算压力。此外,除了传统IP寻址,边缘网络中也会包含一些命名对象寻址方式[11],如NDN(Named Data Networking)[12]的命名方式,这为副本管理带来了更多的挑战。因此,现有的存储策略在解决副本一致性问题上都存在不足,在实际应用场景中,一致性问题会带来不可忽视的时延和影响。
本文提出一种基于虚拟传播树(Virtual Spread Tree,VST)的去中心化边缘存储算法,以解决热点资源存储中的多副本一致性问题,保证用户的请求时延可控,同时维护资源的一致性。该算法建立和剪枝VST,限制树的增长,通过贪心的淘汰算法逐渐找到近似最优的资源存储节点。算法中的最大延迟低于两倍树深的传播时间,避免了其他算法中的副本爆炸式增长问题。各个节点只存储少量相邻数据,去中心化的方法能够降低存储和计算开销。此外,各个节点的淘汰算法相互独立,从而进一步降低时间开销。
1 相关知识 1.1 基站存储模型与本文假设基站存储模型可以通过如下数学模型进行描述:图
![]() |
Download:
|
图 1 基站存储模型结构 Fig. 1 Base station storage model structure |
本文进行如下假设:
1)基站与基站以及基站与用户节点之间的传输时延与节点间的距离成正比。
2)基站之间采用协同式工作策略,即
3)各个基站的存储空间足够大,除非主动删除,否则资源
分布式存储的一致性模型可以分为两类[13]:一类是面向数据的一致性模型,包括顺序一致性[14]、因果一致性[15]和线性一致性[16]等,它们从并发进程的角度来分析进程读写的执行顺序,从而划分不同的一致性等级;另一类是面向客户的一致性模型,包括最终一致性、读写一致性和写读一致性等,它们是描述客户对同一内容进行多次读写操作的一致性模型。
上述模型在理论上对一致性问题进行了系统分析,但是在实际应用中,较为常用的保证副本一致性的算法通常是Paxos[17]及改进的节点协同算法,如Raft[18]算法等,它们通过存储节点之间的选举策略和消息传递方式,从而保证各个副本的执行方式相同,即保证副本的一致性。在边缘基站存储中可以使用上述一致性算法,但相较于云分布式存储方式而言,边缘存储中各个副本节点的位置并不固定,且副本数量可能在频繁变化,导致Paxos算法很难执行。因此,需要通过扩散的方式来将一致性信息传递给各个存储节点,而此时副本数量和扩散深度会影响各个副本达到一致性的时间,为了提高用户获得资源的准确性,需要牺牲一定时间的可用性,这段时间便是一致性传播时延。为了更好地提高用户体验质量,需要控制一致性恢复过程中的时延。
2 基于虚拟传播树的边缘存储算法 2.1 虚拟传播树结构VST从全局来看是一棵K叉树,点集
![]() |
Download:
|
图 2 VST结构示意图 Fig. 2 Schematic diagram of VST structure |
VST的生成是由用户对资源的请求而驱动的,当基站
![]() |
Download:
|
图 3 VST生成算法流程 Fig. 3 The procedure of VST generation algorithm |
VST生成算法并不能保证VST树深的稳定,对于热点资源,VST的规模极为庞大,因此,需要相应的节点淘汰算法,简单且有效的方式是将最近访问频率最低的节点删除,但是这对树深的影响不可直接度量。本文采用如下方法进行节点淘汰:当新节点
$ {Q}_{j}^{\left(1\right)}=\frac{2}{1+{\mathrm{e}}^{-n}}-1 $ | (1) |
$ {Q}_{j}^{\left(2\right)}=\frac{1}{1+{\mathrm{e}}^{-\left(d\right({v}_{0}^{j}, {v}_{0}^{j-1})-{d}_{\mathrm{a}\mathrm{v}\mathrm{g}})}} $ | (2) |
$ {Q}_{j}=\alpha {Q}_{j}^{\left(1\right)}+(1-\alpha ){Q}_{j}^{\left(2\right)} $ | (3) |
式(1)中的
淘汰保留值最低的节点
算法1 VST节点淘汰算法
输入 初始的VST树VSTin,新插入节点v0,树深阈值D
输出 淘汰节点后的VST树VSTout
1.Initialize d=depth(v0,vroot);
/*depth(v0,vroot)表示叶子节点v0到根节点vroot的深度*/
2.if d≤D then
3.path=(v
for v
4.计算Q
5.end for
6.v
7.删除v
输出VSTout
8.else
9.VSTout=VSTin
10.end
2.4 一致性边缘存储策略结合VST的特性,可以设计一种解决边缘存储一致性问题的存储策略。在边缘存储已建立最大深度为D的VST后,当某个节点触发写操作,需要将更新传播到全部副本节点时,将执行一致性边缘存储策略。
由于边缘网络环境下各个副本位置的不可控,传统的Paxos等一致性算法难以直接应用,本文通过锁定服务和传播更新信息的方式实现一致性共识,从而保证用户的读写一致性。
在节点发生写操作时,系统会迅速地对存储资源进行加锁操作以锁定服务,并将相应的更新信息沿着VST的路径向父节点和子节点进行传播,由于VST树深不超过D,则传播完整棵树的时长不超过2D,平均时长为1.5D,从锁定服务到最终传播更新的时间是可控的。此外,可以通过边传播边解锁服务的方式,使得节点完成更新时就可以接收资源请求。
上述过程是在传统IP网络寻址方式的基础上进行的,但是边缘存储中可能存在信息中心网络(ICN)[19]等特殊命名方式的网络部署,因此,在这种场景下需要对算法进行一定的改进。本文针对拥有层次解析的ICN网络场景,对所提基于VST的去中心化边缘存储算法进行改进,如图 4所示。
![]() |
Download:
|
图 4 ICN网络场景中的改进VST结构示意图 Fig. 4 Schematic diagram of improved VST structure in ICN network scenario |
解析节点可以解析当前容器内所有点的位置,但副本资源存储节点可以跨容器,本文所提基于VST的去中心化边缘存储算法建立在最底层的解析容器中,针对ICN场景的改进算法包括以下3个步骤:
1)节点A发起副本一致性请求,A向其所在的解析容器中的解析节点B以及A的VST父、子节点发送信息。
2)B解析出当前容器内的副本位置,下发一致性信息。
3)所有收到一致性信息的节点将自己视作A,重复上述2个步骤,直至所有副本节点收到一致性信息。
通过容器内的解析扩散和容器间的VST扩散,系统延迟时间将进一步降低。
3 实验结果与分析为验证VST的有效性,本文搭建相应的仿真系统,模拟基站和用户间的资源访问关系。如图 5所示,按照热点资源在时间上遵循Zipf [20]分布的特征搭建多副本场景。为了验证本文算法的普适性,在一致性场景和非一致性场景下分别进行相应的实验,并重点分析请求延迟和存储开销等性能。实验过程中VST算法的参数设置如表 1所示。
![]() |
Download:
|
图 5 VST热点资源所遵循的Zipf分布 Fig. 5 Zipf distribution for VST hotspot resources |
![]() |
下载CSV 表 1 VST算法参数设置 Table 1 VST algorithm parameters setting |
在不考虑一致性的前提下,对比协同式(CV)和非协同式(NCV)的基站存储算法以及本文算法(VST)在时延、存储空间等方面的性能,结果如图 6所示。
![]() |
Download:
|
图 6 非一致性场景下3种算法的性能对比结果 Fig. 6 Performance comparison results of three algorithms in inconsistency scenarios |
从图 6可以看出:随着副本数量的增加,在平均时延方面,VST算法和CV算法表现基本一致,优于NCV算法;在存储开销方面,VST算法的存储开销远小于CV算法。综上,在不考虑一致性的场景中,VST算法稳定且性能良好。
3.2 考虑一致性的仿真实验为了考虑一致性问题,实验过程中需要添加部分对副本的写操作,并且直至所有副本都更新写操作后才可以响应用户请求,因此,需要观察副本数量和写操作频率对用户请求时延的影响。图 7所示为副本数量分别为20、50和150情况下,在不同写操作频率时用户获取准确内容的时延情况。
![]() |
Download:
|
图 7 一致性场景下3种算法的性能对比结果 Fig. 7 Performance comparison results of three algorithms in consistency scenarios |
从图 7可以看出,在副本数量固定时,随着写操作的频繁发生,CV算法与NCV算法的时延逐渐升高,最终会出现时延过高而无法响应用户请求的情况,尤其在副本数量为150时情况尤为严重。而本文VST算法的时延虽然也会随着写操作频率的升高而升高,但由于其树深稳定,延迟时间将逐渐趋于平稳,在副本数量很大时,VST算法仍然可以响应高频写场景的用户请求,保证用户获取资源的一致性。
4 结束语本文提出一种基于VST的边缘协同式基站存储算法,以解决边缘网络热点资源请求所带来的多副本不一致性问题,优化用户响应延迟。实验结果表明,在不考虑一致性的仿真场景中,与主流的协同式算法及非协同式算法相比,该算法在时延与存储开销上性能表现更优,在考虑一致性的仿真场景中,该算法的存储性能明显优于其他2种算法,在多副本高频写场景中,本文算法仍然可以提供良好的一致性服务。下一步考虑将本文算法与边缘存储策略相结合,从而为用户提供更好的边缘存储服务。
[1] |
LIU Duo, YANG Juan, TAN Yujuan. A survey on the storage issues in edge computing[J]. ZTE Technology Journal, 2019(3): 15-22. (in Chinese) 刘铎, 杨涓, 谭玉娟. 边缘存储的发展现状与挑战[J]. 中兴通讯技术, 2019(3): 15-22. |
[2] |
WANG Zhendong, PENG Mugen, CHEN Dongyong, et al. Delay-optimized small world model for base station caching[C]//Proceedings of IEEE International Symposium on Personal. Washington D.C., USA: IEEE Press, 2015: 149-152.
|
[3] |
JI M, CAIRE G, MOLISCH A F. Wireless device-to-device caching networks: basic principles and system performance[J]. IEEE Journal on Selected Areas in Communications, 2016, 34(1): 176-189. DOI:10.1109/JSAC.2015.2452672 |
[4] |
ZHANG Kaiyuan, GUI Xiaolin, REN Dewang, et al. Survey on computation offloading and content caching in mobile edge networks[J]. Journal of Software, 2019, 30(8): 2491-2516. (in Chinese) 张开元, 桂小林, 任德旺, 等. 移动边缘网络中计算迁移与内容缓存研究综述[J]. 软件学报, 2019, 30(8): 2491-2516. |
[5] |
AHLEHAGH H, DEY S. Video-aware scheduling and caching in the radio access network[J]. IEEE/ACM Transactions on Networking, 2014, 22(5): 1444-1462. DOI:10.1109/TNET.2013.2294111 |
[6] |
GU Jingxiong, WANG Wei, HUANG Aiping, et al. Distributed cache replacement for caching-enable base stations in cellular networks[C]//Proceedings of 2014 IEEE International Conference on Communications. Washington D.C., USA: IEEE Press, 2014: 148-159.
|
[7] |
SENGUPTA A, AMURU S D, TANDON R, et al. Learning distributed caching strategies in small cell networks[C]//Proceedings of 2014 International Symposium on Wireless Communications Systems. Washington D.C., USA: IEEE Press, 2014: 1223-1256.
|
[8] |
JIANG W, FENG G, QIN S. Optimal cooperative content caching and delivery policy for heterogeneous cellular networks[J]. IEEE Transactions on Mobile Computing, 2017, 16(5): 1382-1393. DOI:10.1109/TMC.2016.2597851 |
[9] |
SUN Yaping, CHEN Zhiyong, LIU Hui. Delay analysis and optimization in cache-enabled multi-cell cooperative networks[C]//Proceedings of 2016 IEEE Global Communications Conference. Washington D.C., USA: IEEE Press, 2016: 25-36.
|
[10] |
REN Dewang, GUI Xiaolin, LU Wei, et al. GHCC: grouping-based and hierarchical collaborative caching for mobile edge computing[C]//Proceedings of 2018 International Symposium on Modeling and Optimization in Mobile, Ad Hoc, and Wireless Networks. Washington D.C., USA: IEEE Press, 2018: 1-6.
|
[11] |
SHENG Yiqiang. The challenges and opportunities of mobile edge intelligence-enabled networking[J]. Journal of Network New Media, 2018, 7(4): 1-4. (in Chinese) 盛益强. 移动边缘智慧使能组网的挑战与机遇[J]. 网络新媒体技术, 2018, 7(4): 1-4. DOI:10.3969/j.issn.2095-347X.2018.04.001 |
[12] |
ZHANG L, AFANASYEV A, BURKE J, et al. Named data networking[J]. Computer Communication Review, 2014, 44(3): 66-73. DOI:10.1145/2656877.2656887 |
[13] |
ALDIN H, DELDARI H, MOATTAR M H, et al. Consistency models in distributed systems: a survey on definitions, disciplines, challenges and applications[EB/OL]. [2020-02-05]. https://arxiv.org/pdf/1902.03305.pdf.
|
[14] |
NECHES P M, MCMILLEN R J, WATSON M C, et al. Multiprocessor computer system: US 5303383[P]. 1994-04-12.
|
[15] |
AHAMAD M, NEIGER G, BURNS J E, et al. Causal memory: definitions, implementation, and programming[J]. Distributed Computing, 1995, 9(1): 37-49. DOI:10.1007/BF01784241 |
[16] |
LEE C, PARK S J, KEJRIWAL A, et al. Implementing linearizability at large scale and low latency[C]//Proceedings of the 25th Symposium on Operating Systems Principles. Washington D.C., USA: IEEE Press, 2015: 71-86.
|
[17] |
LAMPORT L. The part-time parliament[J]. ACM Transactions on Computer Systems, 1998, 16(2): 15-26. |
[18] |
ONGARO D, OUSTERHOUT J. In search of an under-standable consensus algorithm[C]//Proceedings of USENIX Annual Technical Conference. [S. l. ]: USENIX, 2014: 305-319.
|
[19] |
AHLGREN B, DANNEWITZ C, IMBRENDA C, et al. A survey of information-centric networking[EB/OL]. [2020-02-05]. http://www.it.uu.se/edu/course/homepage/projektDV/ht14/ASurveyofInformation-CentricNetworking-published.pdf.
|
[20] |
BRESLAU L, CAO P, FAN L, et al. Web caching and Zipf-like distributions: evidence and implications[C]//Proceedings of IEEE INFOCOM'99. Washington D.C., USA: IEEE Press, 1999: 126-134.
|