郑竣杰,岑伯维,蔡泽祥,武志刚
(华南理工大学电力学院,广东省广州市 510641)
随着电力市场改革的深入,越来越多具备调控潜力的设备接入配电网[1-3]。传统的配电业务处理以智能电力装置为核心,采用软硬件耦合封闭的业务体系,无法满足海量设备接入的资源配置需要[4-5]。基于边缘计算的配电物联网[6-7]是实现软硬件解耦,提供高效、低耗服务的重要技术平台,也是配电网的重要发展方向之一。
边缘计算终端是部署在配电网终端的计算中心,以软件定义终端实现“一机多功能”的配电业务处理[8-9],是配电网适应海量设备接入和复杂业务处理的关键设备。边缘计算终端建模及其性能分析是探索配电业务处理的“一体两面”。前者研究终端设备能否高效获取业务输出,是定性研究业务可行性的理论前提;后者通过状态表征计算出所需的性能指标,是定量分析终端性能的数值依据。因此,研究边缘计算终端建模及其性能分析具有重要意义。
现有大量研究是针对边缘计算终端进行建模。文献[10]基于软硬件架构完成配电终端边缘化和容器化的建模。文献[11]从业务管理、资源管理和应用管理构筑边缘计算终端的容器系统。文献[12]基于能耗单元、计算单元和通信单元对边缘计算终端进行建模,并在业务处理时设定充电时序、计算时序和通信时序。然而,以上研究缺少对边缘计算终端内部架构的建模内容。针对边缘计算终端构建定量的性能分析方法,不仅需要从外部特性上考虑配电业务输入输出,还需要完成边缘计算终端内部架构的建模。
EdgeCloudSim[13]是本文选用的仿真软件,不仅能对配电业务处理进行建模,还能输出对应的性能参数。然而,EdgeCloudSim 的仿真模型都以移动边缘计算为应用场景[14-15],缺乏以配电物联网作为仿真场景的先例。主要表现在:1)服务器资源配置的灵活性是移动边缘计算的研究重点[16-17],但该内容无法对边缘计算终端内部容器和传输信道进行动态刻画;2)移动业务之间独立性强[18],缺乏对单独的微服务生命周期的研究,无法模拟出配电业务根据业务时序逻辑化整为零的研究思路[19-20];3)移动边缘计算对边缘计算终端的性能测试基于极端场景[21-22],力求在短时间内处理大量业务,无法获取边缘计算终端的性能参数。
本文以边缘计算终端架构和配电业务处理作为建模对象,基于仿真软件EdgeCloudSim 提出配电边缘计算终端的建模方法和资源时序曲线的生成方法。然后,以微服务生命周期作为性能分析的基本单位,提出针对配电边缘计算终端的性能分析方法。最后,根据价格型需求响应案例,结合资源时序曲线,利用本文的性能分析方法对配电边缘计算终端实现性能分析。
本文的建模内容需要考虑2 个需求。一是边缘计算终端基于业务时序逻辑实现资源动态配置;二是通过仿真实验得到性能表征,并基于性能表征对边缘计算终端做出性能分析。
为了实现以上2 个需求,需要实现以下内容的建模。
1)配电业务建模。在本文的应用场景中,单个边缘计算终端需要完成配电台区下海量接入设备的业务处理。因此,数据采集、数据分析和控制指令下发均属于业务建模需求[23-24]。基于此需求,边缘计算终端需要根据业务时序逻辑依次执行采集类微服务、分析类微服务和控制类微服务。因此,配电业务建模包括3 类微服务的生命周期和业务时序逻辑。
2)边缘计算终端架构的建模。在接收业务上传请求后,边缘计算终端根据业务时序逻辑分别调用计算资源、网络资源和存储资源完成业务处理。因此,边缘计算终端架构的建模需要考虑计算资源、网络资源和存储资源的载体[25-28]。这些载体元件包括虚拟机和虚拟交换机。
为了针对3 类微服务实现资源配置,边缘计算终端的虚拟机也分为3 类,即采集类虚拟机、分析类虚拟机和控制类虚拟机,分别用于实现数据采集、数据分析和控制指令下发。
3)资源时序曲线。作为性能表征,资源时序曲线能够反映边缘计算终端内部资源变化的动态过程,是实现性能分析的数值依据。
EdgeCloudSim 是一个模块化架构的仿真工具,为研究者提供了不同的函数模块,以满足研究者构筑边缘计算终端的需要。利用EdgeCloudSim 能够实现边缘计算终端架构、配电业务和资源时序曲线的建模。
EdgeCloudSim 的模块化特性使得边缘计算终端建模架构、配电业务建模和资源时序曲线能够化整为零,分别在不同模块完成,即图1 所示的资源配置模块、业务模块和图像函数。
由于EdgeCloudSim 的历史应用场景是移动边缘计算,如果要利用EdgeCloudSim 进行配电物联网仿真,一方面,需要在EdgeCloudSim 原有的函数模块上进行参数整定;另一方面,需要对函数模块进行自定义建模。具体内容如表1 所示。
表1 基于EdgeCloudSim 的边缘计算终端建模对象Table 1 EdgeCloudSim-based modeling objects for edge computing terminal
由图1 可知,配电业务的建模内容包括业务时序逻辑和3 类微服务的生命周期。
业务时序逻辑是构筑配电业务的逻辑基础。边缘计算终端内部容器的微服务处理相互独立,因此需要设置业务时序逻辑,以此来编排微服务处理序列和时序逻辑约束,进而统筹边缘计算终端内部的数据传输和资源配置。只要符合时序逻辑约束,同一个配电业务能够通过不同业务时序逻辑实现。
图1 中的业务时序逻辑是最基础的配电业务时序逻辑,分为3 个时序,先后处理采集类微服务、分析类微服务和控制类微服务。在表1 中,业务时序逻辑需要设置2 个建模内容,分别为微服务处理序列和时序逻辑约束。
微服务的生命周期是影响性能分析的基本单元。如图1 所示,对于采集类微服务,其生命周期由业务请求上传、微服务处理和业务数据转移构成。在表1 中,采集类微服务需要设置3 个参数,分别为上传量、转移量和指令长度。
对于分析类微服务,其生命周期由微服务处理和业务数据转移构成。在表1 中,分析类微服务需要设置2 个参数,分别为转移量和指令长度。
对于控制类微服务,其生命周期由微服务处理和业务数据下载构成。基于以上分析,在表1 中,控制类微服务需要设置2 个参数,分别为下载量和指令长度。
本文以价格型需求响应作为仿真案例。构成价格型需求响应的7 个微服务如附录A 表A1 所示,微服务参数和时序逻辑约束如表A2 所示。该案例的业务时序逻辑如图A1 所示。图A1(a)中,时序逻辑A 的编排思路为先采集后分析,仅第1 个时序就完成所有采集类微服务的业务处理。而图A1(b)中,时序逻辑B 的编排思路为边采集边分析,并将微服务3 处理编排在第2 个时序。
如图1 所示,边缘计算终端架构由虚拟机和虚拟交换机组成。其中,虚拟机是调用计算资源和存储资源的实体设备,而虚拟交换机是调用网络资源的实体设备。
虚拟机分为采集类虚拟机、分析类虚拟机和控制类虚拟机,分别用于处理对应的微服务。虚拟机接收业务请求或业务数据后,形成容器并基于容器完成微服务处理。而完成处理后,容器暂停,并释放占用的资源。在表1 中,虚拟机需要设置2 个建模内容,分别为计算资源配置和存储资源配置。
虚拟交换机能够按需调用网络资源并形成上传信道、转移信道和下载信道。在数据传输完成后,信道暂停,并释放占用的资源。其中,上传信道的两端是采集类虚拟机和虚拟交换机,转移信道的两端是2 个虚拟机,而下载信道的两端是控制类虚拟机和虚拟交换机。在表1 中,虚拟交换机需要完成网络资源配置的建模。
针对本文的价格型需求响应案例,边缘计算终端架构的参数如附录A 表A3 所示。虚拟机配置计算资源的多寡会影响微服务处理的业务延时,其计算方式如附录A 式(A1)所示。虚拟交换机配置网络资源的多寡会影响业务请求上传、数据下载/转移的业务延时,其计算方式如附录A 式(A2)所示。
性能分析的目的是通过性能表征对边缘计算终端性能进行定量分析。在本文的仿真实验中,微服务参数、业务时序逻辑和资源时序曲线是边缘计算终端的性能表征,能够实现对边缘计算终端的性能分析。
根据图1 生成资源时序曲线需要先进行边缘计算终端建模以及配电业务建模,利用EdgeCloudSim的图像函数,输出资源时序曲线。具体步骤如下:
步骤1:根据图1 模块化建模方法,在EdgeCloudSim 完成边缘计算终端架构和配电业务建模。
步 骤2:输 入 附 录A 表A2 和 表A3 的 参 数,在EdgeCloudSim 上完成仿真,并将仿真结果代入式(1)。
式中:Lcpu(t)、Lbd(t)和Lram(t)分别为计算、网络和存 储 资 源 时 序 曲 线;ε(t)为 阶 梯 函 数;ti,inicpu、ti,inibds、ti,inibde和ti.iniram分 别 为 第i个 微 服 务 的 微 服 务 处 理、上传信道、下载/转移信道和容器启用的初始时刻,i∈{1,2,…,7};si,cpu、si,bd和si,ram分 别 为 虚 拟 机 在第i个微服务配置的计算、网络和存储资源;ti,cpu、ti,ram、ti,bds和ti,bde分 别 为 第i个 微 服 务 的 计 算 资 源 占用时间、微服务处理用时、业务请求上传用时和业务数据下载/转移用时。
步骤3:利用图像函数输出Lcpu(t)、Lbd(t)和Lram(t)。
本文的性能分析方法以微服务作为性能分析的基本单位,最终输出如附录A 图A1 所示7 个微服务的生命周期以及性能指标。边缘计算终端的性能指标用业务延时和资源负荷率来衡量。具体步骤如下。
步骤1:输入边缘计算终端的3 类资源时序曲线Lcpu(t)、Lbd(t)和Lram(t)、微服务参数(见附录A 表A2)和业务时序逻辑(见附录A 图A1)。
步 骤2:对 资 源 时 序 曲 线Lcpu(t)、Lbd(t) 和Lram(t)划分时点与峰值。
步骤3:对资源时序曲线进行微服务处理检索,定位微服务处理所在的时间段。其原理为微服务参数的存储量与边缘计算终端配置的存储资源一致,而对应表达式如式(2)所示。
式 中:xi,ram为 第i个 微 服 务 的 存 储 量。
如附录A 图A2(a)所示,由于微服务1 所需存储量为k1,微服务2 所需存储量为k2,可以直接从峰值所占时段判断出微服务1 处理占用的时段为t1,微服务2 处理占用的时段为t2。
步骤4:对资源时序曲线进行业务传输检索,定位业务请求上传信道、业务数据下载/转移信道。其原理为:在微服务处理前后,配电边缘计算终端根据业务时序逻辑调用网络资源配置出传输信道,对应表达式如式(3)所示。
式中:ti,ms为整个微服务的生命周期。
如附录A 图A2(b)所示,整个微服务的生命周期分为3 个阶段,即业务请求上传、微服务处理和业务数据下载/转移。
步骤5:对资源时序曲线进行容器启停检索,定位微服务的容器初始化时间和暂停时间。其原理为:边缘计算终端在调用计算资源的前后,需要分别进行容器初始化和容器暂停,对应的表达式如式(4)所示。
式中:tbe和ted分别为容器初始化时间和容器暂停时间。
如附录A 图A2(c)所示,由于容器是计算资源的载体,在调用计算资源之前需要考虑容器初始化时间tbe,而在调用计算资源之后需要考虑容器暂停时间ted。
步骤6:根据图1 微服务生命周期,结合步骤3至5 中获取的微服务业务请求上传时间、微服务处理时段和业务数据下载/转移时间,输出7 个微服务的生命周期所在时段。同时,通过附录A 式(A1)和式(A2)得到7 个微服务的计算和网络资源配置。结合业务时序逻辑,计算得到3 类虚拟机资源峰值。
步骤7:以业务延时作为边缘计算终端的实时性指标,输出最后一个微服务的业务数据下载结束时刻作为业务延时。
步骤8:以资源负荷率作为表征资源利用程度的指标,当资源负荷率越高时表明边缘计算终端计算工作越繁忙且应对突发事件处理需求的资源越少。根据式(5)得到计算、网络和存储资源负荷率。
式中:ycpu、ybd和yram分别为计算、网络和存储资源负荷 率;h1,cpu、h1,bd、h1,ram、h2,cpu、h2,bd、h2,ram、h3,cpu、h3,bd和h3,ram分别为采集类、分析类和控制类虚拟机的计算、网络和存储资源峰值;Qcpu、Qbd和Qram分别为整个边缘计算终端的计算、网络和存储资源配置。
性能分析能够获取边缘计算终端的性能指标。本文以价格型需求响应为仿真案例,以EdgeCloudSim 为仿真软件,输入如附录A 表A2 和表A3 所示的仿真参数,以图A1 的业务时序逻辑进行业务处理。然后,根据2.1 节得到边缘计算终端的资源时序曲线,如图A3 和图A4 所示。根据2.2节的性能分析方法解析出7 个微服务的生命周期,并通过计算得到对应的性能指标。最后,从微服务角度出发,将图A3 和图A4 的性能分析结果进行对比,分析2 种业务时序逻辑造成的性能差异及其差异成因。
本节为2 个业务时序逻辑的资源时序曲线解析过程。具体计算方法参考2.2 节性能分析方法的步骤1 至6。对于业务时序逻辑A,观察附录A 图A3,并按照2.2 节的性能分析方法划分时点与峰值,得到表A4 和表A5,最终解析结果如表2 所示。表中,计算资源的单位用每秒处理的百万级的机器语言指令数(million instructions per second,MIPS)表示。同理,对于业务时序逻辑B,根据图A4,并按照2.2 节的性能分析方法划分时点与峰值,得到表A4 和表A5,最终解析结果如表A6 所示。以下仅展示图A3的解析过程。
表2 资源时序曲线解析结果Table 2 Result of resource timing curve analysis
1)观察由k1、k2和k3组成的存储资源时序曲线,由 式(2)可 得,k1=30 Mbit,x1,ram=s1,ram=30 Mbit为微服务1 的存储量,即微服务1 的微服务处理时段为t2至t7,记 为t1,ram=t7-t2。可 知,业 务 请 求 上 传结束于t2,业务数据转移开始于t7,而在附录A 图A3网络资源时序曲线中,峰值u1结束于t2,峰值u6开始于t7,结合式(3)可得,业务请求上传的时段为t1,bds=t2-t1,业 务 数 据 转 移 的 时 段 为t1,bde=t8-t7,而 微 服 务1 的 生 命 周 期 为t1,ms=t1,bds+t1,ram+t1,bde=t8-t1。微服务1、2 和3 处在同一 时 序,同 样 的 计 算 可 得 到t2,ms=t6-t1和t3,ms=t9-t1,即微服务2 生命 周期为t1至t6,而微 服务3 则为t1至t9。
结合微服务1 生命周期和附录A 图A2(c)的容器启停检索,由式(4)可得,容器初始化时间为tbe=t1-t2=0.01 s,容器暂停时间为ted=t7-t2=0.01 s。
2)观察由k5和k6组成的存储资源时序曲线,由式(2)可 得 ,k5-k6=20 Mbit,x5,ram=s5,ram=20 Mbit 为微服务5 的存储量,即微服务5 的处理时段 为t9至t10,记 为t5,ram=t10-t9。附 录A 表A2 中,微 服 务5 无 上 传 和 转 移,因 此t5,bds=t5,bde=0,最 终由 式(3)得 到t5,ms=t5,bds+t5,ram+t5,bde=t10-t9,即微服务5 的生命周期为t9至t10。
由 式(2)可 得,k6=40 Mbit,x4,ram=x6,ram=40 Mbit 为微服务4 和6 的存储量,仅观察存储资源时序曲线无法得到微服务4 和6 的生命周期。
本节从附录A 图A3 的计算资源时序曲线额外划分t11和t12,由式(4)可得,tbe=t12-t11=0.01 s。其中,t12为微服务占用计算资源的起点,t11为容器初始化起点。结合业务时序逻辑图A1(a)可以判断,t11为微服务6 的容器初始化起点,由式(2)可得,k6=40 Mbit,x6,ram=s6,ram=40 Mbit,即 微 服 务6 的微服务处理时段为t11至t13,记为t6,ram=t13-t11。表A2 中,微服务6 无上传,即t6,bds=0。从t6,ram=t13-t11可知,业务数据转移开始于t13,而图A3 中,峰值u7开始于t13,结合式(3)可得业务数据转移的时段为t6,bde=t14-t13,而 整 个 生 命 周 期 为t6,ms=t6,bds+t6,ram+t6,bde=t14-t11,即t11至t14。同理计算得到微服务4 的生命周期为t9至t11。
3)观察由k6组成的存储资源时序曲线,由式(2)可 得,k7=20 Mbit,x7,ram=s7,ram=20 Mbit 为微服务7 的存储量,即微服务7 的处理时段为t14至t15,记 为t7,ram=t15-t14。附 录A 表A2 中,微 服 务7无上传,即t7,bds=0。从t7,ram=t15-t14可知,微服务7 转移开始于t15;图A3 中,业务数据开始于t15,结合式(3)可 得,业 务 数 据 转 移 的 时 段 为t7,bde=t16-t15。 整 个 生 命 周 期 为t7,ms=t7,bds+t7,ram+t7,bde=t16-t14,即t14至t16。
4)将1)至3)的结果进行整合后,可以得到表2。表2 展示了7 个微服务生命周期和资源配置,其中,计算资源和网络资源通过附录A 式(A1)和式(A2)计算得到。
考虑到附录A 表A3 中7 个容器并发运行的极限场景,本节以一个计算、网络和存储配置分别为Qcpu=65 MIPS、Qbd=44 Mbit/s 和Qram=195 Mbit的边缘计算终端作为业务处理的载体。然后,从微服务出发,结合图A1 的2 个业务时序逻辑,参考2.2节性能分析方法的步骤6 至8 得到性能指标,并分析它们对终端造成的性能差异及其成因。
1)性能分析:对于业务时序逻辑A,由表2 可知,采集类虚拟机在时段t1至t9完成微服务处理。因此,附录A 图A3 中,时段t1至t9的资源峰值为采集类虚拟机的资源配置。
根据2.2 节的步骤8,采集类虚拟机的资源配置分 别 为h1,cpu=20 MIPS、h1,bd=30 Mbit/s 和h1,ram=30 Mbit;分析类虚拟机的资源配置分别为h2,cpu=25 MIPS、h2,bd=4 Mbit/s 和h2,ram=60 Mbit;控制类虚 拟 机 的 资 源 配 置 分 别 为h3,cpu=5 MIPS、h3,bd=10 Mbit/s 和h3,ram=20 Mbit。根据式(5)可得:
根据2.2 节的步骤7,结合表2 微服务7 的生命周期结束于t16=0.880 s,可得业务延时为0.880 s。
同理,根据2.2 节的步骤6 至8,对附录A 图A4和表A6 进行同样的计算,可以得到业务时序逻辑B下边缘计算终端的计算、网络和存储资源负荷率分别 为69.23%、88.63% 和66.67%。 业 务 延 时 为0.987 s。具体计算结果如附录A 表A7 和表A8所示。
2)性能差异分析:由附录A 表A8 可知,采集类微服务处理是引起性能差异的原因。根据表A7 引起峰值的微服务一栏可知,业务时序逻辑B 通过将微服务3 编排在第2 个时序,使得整个边缘计算终端的资源配置只需要考虑6 个微服务。由于业务时序逻辑A 需要为微服务3 额外配置资源,根据业务时序逻辑A 执行的价格型需求响应将会占用边缘计算终端76.92%的计算资源、100%的网络资源和79.49%的存储资源,而根据业务时序逻辑B 执行的价格型需求响应仅占用了69.23% 的计算资源、88.63%的网络资源和66.67%的存储资源,资源负荷率更低。这表示业务时序逻辑A 配置下的边缘计算终端工作更为繁忙,且应对突发业务处理的能力更低。
然而,根据业务时序逻辑B 配置的边缘计算终端的业务延时为0.987 s,比业务时序逻辑A 对应的业务延时慢了约10.80%。这说明在配电业务体量有限的情况下,业务时序逻辑B 通过在第1 个时序上减少并发的微服务数量来减少边缘计算终端的资源负荷,但这种业务编排牺牲了实时性。
3)最后,仿真结果和分析结果表明,由于配电边缘计算将微服务分为3 类执行,业务时序逻辑的不同将会影响边缘计算终端的性能指标。只要符合时序逻辑约束,同一个配电业务能够通过不同业务时序逻辑实现,但只有特殊的业务时序逻辑才能减少业务延时,提高边缘计算终端的实时性,或者减少资源负荷率。
本文以边缘计算终端架构和配电业务处理作为建模内容,通过对仿真软件EdgeCloudSim 的函数模块进行自定义建模与参数整定,建立配电边缘计算终端模型。然后,提出了资源时序曲线的生成方法以及针对配电边缘计算终端的性能分析方法。该性能分析方法充分考虑了配电业务根据业务时序逻辑将业务整体分解为3 类微服务执行的研究思路,以微服务生命周期作为性能分析的基本单位,将边缘计算终端的资源时序曲线、微服务参数和业务时序逻辑作为输入,计算得到所有微服务的生命周期以及性能指标。
为了验证性能分析方法的有效性,本文仅以价格型需求响应作为仿真案例。然而,配电边缘计算在现实场景中需要面临业务处理多元化的挑战。因此,在未来的研究中,有必要研究任务调度算法,实现资源优化调度,以满足更复杂的配电业务处理需求。
附录见本刊网络版(http://www.aeps-info.com/aeps/ch/index.aspx),扫英文摘要后二维码可以阅读网络全文。