面向高机动环境的终端随遇接入边缘云方法*
2024-01-02葛光富杨丰源王俊超朱立捷
葛光富,杨丰源,王俊超,朱立捷,吴 鹏,费 超
(中国电子科技集团公司第二十八研究所,江苏 南京 210007)
0 引言
伴随着物联网[1]、车联网[2]、船联网[3]、飞联网[4]等领域的迅猛发展,边缘计算技术不断取得突破,各类云业务延展至边缘,进而提高了信息系统的规模及其复杂度,为边缘环境的服务、组织、运用带来了挑战。
综合军用和民用市场,边缘环境下有着大量的信息设备用于搭建各中小型信息系统,但这些设备的软硬件资源参差不齐、性能不一,有些甚至较差。其中,终端设备的问题尤为突出,受限的计算、存储、网络资源会约束各地能够集成部署使用的信息服务。为给各类终端设备带来更多且质量有保证的服务,可通过集约利用边缘环境中如机动车辆、船舶、飞机等的服务器类型设备资源构建边缘云,引接“云”的信息服务能力向网络边缘延伸,并就近向“端”提供“云”“边”信息服务。进一步,为满足高机动场景运用需求,支撑各类终端设备适地就近接入边缘云享用“云”“边”信息服务以开展有关业务,并兼顾提高资源利用效率和系统可用性,可应用于边缘环境高机动条件下的终端随遇接入边缘云技术成为信息系统软件服务平台统筹规划中的必要考虑因素。
目前暂未有针对边缘环境高机动条件下边缘云的终端动态发现与随遇接入方法,故为此统筹设计机动通信网络条件下边缘云的动态自发现接入,支撑物理分布边缘云数据、服务等资源的弱连接下高可用,以减少因边缘云的服务器硬件故障、网络通信失联、软件系统问题、人为失误操作等带来的终端应用“云”“边”信息服务风险,已成为当前信息系统建设所急需。
1 边缘云概述
边缘云计算简称边缘云,其本质上是分布在网络边缘侧,提供实时数据处理、分析决策的小规模云数据中心,是由大规模地域分散的边缘云节点相互协同组成的分布式云。边缘云基于云计算技术的核心和边缘计算的能力构筑在边缘基础设施之上的云计算平台,形成边缘位置上计算、网络、存储、安全等能力全面的弹性云平台,并与中心云和物联网终端形成“云、边、端三体协同”的端到端的技术架构,通过将网络转发、存储、计算和智能化数据分析等工作放在边缘处理,降低响应时延、减轻云端压力、降低带宽成本,并提供全网调度、算力分发等云服务[5]。
边缘云的发展历程如图1 所示。1998 年,Akamai 公司提出了内容分发网络[6](Content Delivery Network,CDN),它是一种基于互联网的缓存网络,而边缘计算的基本思想便是功能缓存。2009 年,Satyanarayanan 等人提出了Cloudlet[7]的概念,Cloudlet 是一个可信且资源丰富的主机,部署在网络边缘,与互联网连接[8],可以被移动设备访问,为其提供服务。2013 年,美国太平洋西北国家实验室Ryan LaMothe 提出了“edge computing[9]”一词,这是“edge computing”首次被提出。2018 年,《边缘云计算技术及标准化白皮书》正式发布,边缘云计算概念定义逐渐明晰。边缘云[10-11]在许多领域应用较为广泛,面向特定领域的边缘云在智慧医疗[12]、云游戏、工业互联网等领域发展迅速。
图1 边缘云发展历程
2 系统模型
本地终端启动时,根据与网络中邻近边缘云的连接情况发现可接入的边缘云,经边缘云在线认证后接入边缘云,并记录所接入的边缘云和服务节点。终端开始工作后,根据与网络中邻近边缘云的连接情况变化,按就近接入原则判定新接入边缘云、更换接入服务节点或更换接入边缘云,或者退出边缘云。系统模型如图2 所示。
图2 系统模型
系统模型中,服务器[13]组是本地所有计算机服务器作为对外通联及服务的整体。边缘云是分布在网络边缘侧,提供实时数据处理、分析决策的小规模云数据中心。网络是指终端与边缘云中服务器组所属机动承载平台间通信所在的网络,其中,当终端与边缘云中服务器组属于同一个机动承载平台时,两者间以有线或无线宽带方式进行内部网络连接,当两者属于不同机动承载平台时,以无线方式进行外部网络连接且遵循IP 通信标准。个体边缘云在网络中可以唯一标识,同时个体服务器组节点即服务节点在边缘云中可以唯一标识。
各终端集成部署边缘云发现接入模块,用于终端探测感知获取可接入的边缘云及服务节点,支持终端按就近接入原则调整接入边缘云或服务节点,以及在通信断开或过远时退出边缘云。边缘云中服务节点集成部署终端用户入云认证模块,用于边缘云认证在线接入的终端并许可终端的入云申请。
在本地终端未接入边缘云的情况下,监听认证发现网络中邻近存在可接入的边缘云时,终端新接入边缘云。在本地终端已接入边缘云的情况下:监听认证发现已接入边缘云中存在可更快接入服务节点时,终端更换接入服务节点;监听认证发现网络中邻近存在可更快接入的边缘云时,终端更换接入边缘云;监听认证发现已接入边缘云中不存在可更快接入的服务节点时,终端接入保持;超出接入边缘云保持时间未监听到接入边缘云心跳时,终端退出边缘云。
上述系统模型考虑了高机动条件下终端的自主发现接入边缘云,然而暂未有针对该场景的终端对边缘云的动态发现与接入方法,因此,针对该问题,提出一种面向高机动环境的终端动态自适应接入边缘云方法。
3 终端动态自适应接入边缘云方法
面向高机动环境的终端随遇接入边缘云方法包括边缘云探测接入和边缘云接入调整两个阶段,具体如下文所述。
3.1 边缘云探测接入
本地终端启动时,根据与网络中邻近边缘云的连接情况发现可接入的边缘云,经边缘云在线认证后接入边缘云,并获取所接入边缘云的标识和接入服务节点标识。边缘云探测接入过程如图3 所示。
图3 边缘云探测接入的过程
边缘云探测接入包括终端入云申请、终端入云认证、终端入云执行3 个阶段。具体介绍如下:
(1)终端入云申请。本地终端启动时,由边缘云探测接入模块向邻近发送终端入云申请,其中:在终端与边缘云中服务器组属于同一个机动承载平台的情况下,通过内部网络以有线或无线宽带方式连接向邻近发送;在终端与边缘云中服务器组属于不同机动承载平台的情况下,通过外部网络以无线方式向邻近广播发送。入云申请附带系统验证码,之后监听等待在邻近边缘云探测应答时间TNearCloudDetect内接收邻近边缘云应答的终端入云许可。
(2)终端入云认证。如果网络中有邻近边缘云,当邻近边缘云中服务节点的终端用户入云认证模块监听接收到终端入云申请时,在线验证申请附带提交的系统验证码与系统的统一识别码一致否,两者一致则表明入云申请通过。将申请入云终端作为终端用户加入边缘云该服务节点的边缘云接入终端用户列表,其中记录该终端的身份标识和IP地址信息,之后向申请入云终端回复终端入云许可,许可附带边缘云标识IDCloud、服务节点标识IDNode和消息发送时间戳tNodeMsgSnd。
(3)终端入云执行。本地终端接收到邻近边缘云的终端入云许可时,判定本地终端已通过边缘云在线认证,此时获取许可附带边缘云标识IDCloud、服务节点标识IDNode、消息发送时间戳tNodeMsgSnd,以及该消息接收时间戳tNodeMsgRcv,并根据式(1)计算得知服务节点消息送达时间。
之后,记录已接入边缘云标识IDCloudEnter=IDCloud、已接入服务节点标识IDNodeEnter=IDNode、已接入服务节点消息送达时间TNodeEnterMsgTrans=TNodeMsgTrans、已接入边缘云心跳时间tCloudHeart,tCloudHeart等于消息接收时间戳tNodeMsgRcv,以及记录接入边缘云状态为已接入,即StateCloudEnter=true,终止等待邻近边缘云探测应答,然后TNearCloudDetect内接收邻近边缘云应答的终端入云许可。否则,当邻近边缘云探测应答时间TNearCloudDetect结束仍未接收到邻近边缘云的终端入云许可时,判定本地终端未发现可接入的邻近边缘云,此时记录接入边缘云状态为未接入,即StateCloudEnter=false。
3.2 边缘云接入调整
本地终端开始工作后,结合所接入边缘云标识和接入服务节点标识,根据与网络中邻近边缘云(含接入边缘云)的连接变化情况,按就近原则判定新接入边缘云,或更换接入服务节点,或更换接入边缘云,或退出边缘云。边缘云接入调整如图4 所示。
图4 边缘云接入调整
3.2.1 终端新入云调整
在终端未接入边缘云即StateCloudEnter=false 的情况下,当监听认证发现网络中邻近存在可接入的边缘云时,本地终端新接入边缘云,该过程如图5所示。
图5 终端新入云调整的过程
终端新入云调整包括终端入云调整判定、终端新入云记录、终端入云登记提报、终端入云登记执行4 个阶段,具体介绍如下文所述。
(1)终端入云调整判定
终端入云调整判定过程如图6 所示。当本地终端监听接收到外部网络中邻近边缘云的心跳时,验证心跳附带的系统验证码与系统的统一识别码一致否,两者一致则表明可接入此边缘云,此时获取心跳附带边缘云标识IDCloud、服务节点标识IDNode和消息发送时间戳tNodeMsgSnd,以及该消息接收时间戳tNodeMsgRcv,并进一步在终端已接入边缘云StateCloudEnter=true 的情况下根据式(2)计算得知服务节点消息送达时间。
图6 终端入云调整判定的过程
然后在心跳附带服务节点标识IDNode与已接入服务节点标识IDNodeEnter不同的情况下,根据式(3)计算得知是否更换接入服务节点。
之后根据式(4)判定终端入云调整状态。
式中:1 表示新接入边缘云,2 表示更换接入服务节点,3 表示更换接入边缘云,4 表示接入保持。
(2)终端新入云记录
在本地终端新接入边缘云的情况下,本地终端记录已接入边缘云标识IDCloudEnter=IDCloud、已接入服务节点标识IDNodeEnter=IDNode、已接入服务节点消息送达时间TNodeEnterMsgTrans=TNodeMsgTrans、已接入边缘云心跳时间tCloudHeart,tCloudHeart等于消息接收时间戳tNodeMsgRcv,以及记录接入边缘云状态为已接入,即StateCloudEnter=true。
(3)终端入云登记提报
本地终端通过外部网络以无线方式向新接入边缘云中服务节点发送终端入云登记,登记附带系统验证码。
(4)终端入云登记执行
当新接入边缘云中服务节点的终端用户入云认证模块监听接收到终端入云登记时,在线验证登记附带提交的系统验证码与系统的统一识别码一致否,两者一致则表明入云登记通过,将登记入云终端作为终端用户加入边缘云的边缘云接入终端用户列表,其中记录该终端的身份标识和IP 地址信息。
3.2.2 终端接入服务节点调整
在终端已接入边缘云StateCloudEnter=true 的情况下,当监听认证发现已接入边缘云中存在可更快接入的服务节点时,本地终端更换接入服务节点,该过程如图7 所示。
图7 终端接入服务节点调整的过程
终端接入服务节点调整包括终端入云调整判定、终端接入服务节点更新、终端入云登记提报、终端入云登记执行4 个阶段。具体介绍如下文所述。
(1)终端入云调整判定
终端入云调整判定的详细步骤同终端新入云调整中的终端入云调整判定过程。
(2)终端接入服务节点更新
在本地终端更换接入服务节点的情况下,本地终端更新已接入服务节点标识IDNodeEnter=IDNode、已接入服务节点消息送达时间TNodeEnterMsgTrans=TNodeMsgTrans、已接入边缘云心跳时间tCloudHeart,tCloudHeart等于消息接收时间戳tNodeMsgRcv。
(3)终端入云登记提报
终端入云登记提报的详细步骤同终端新入云调整中的终端入云登记提报过程。
(4)终端入云登记执行
终端入云登记执行的详细步骤同终端新入云调整中的终端入云登记执行过程。
3.2.3 终端接入边缘云调整
在终端已接入边缘云StateCloudEnter=true 情况下,当监听认证发现网络中邻近存在可更快接入的边缘云时,本地终端更换接入边缘云,该过程如图8所示。
图8 终端接入边缘云调整的过程
终端接入边缘云调整包括终端入云调整判定、终端接入边缘云更新、终端入云登记提报、终端入云登记执行4 个阶段。具体介绍如下文所述。
(1)终端入云调整判定
终端入云调整判定的详细步骤同终端新入云调整中的终端入云调整判定过程。
(2)终端接入边缘云更新
在本地终端更换接入边缘云的情况下,本地终端更新已接入边缘云标识IDCloudEnter=IDCloud、已接入服务节点标识IDNodeEnter=IDNode、已接入服务节点消息送达时间TNodeEnterMsgTrans=TNodeMsgTrans和已接入边缘云心跳时间tCloudHeart,tCloudHeart等于消息接收时间戳tNodeMsgRcv。
(3)终端入云登记提报
终端入云登记提报的详细步骤同终端新入云调整中的终端入云登记提报过程。
(4)终端入云登记执行
终端入云登记执行的详细步骤同终端新入云调整中的终端入云登记执行过程。
3.2.4 终端接入边缘云保持
在终端已接入边缘云StateCloudEnter=true 的情况下,在接入边缘云保持时间TCloudEnterHold内监听到接入边缘云心跳时,本地终端接入边缘云保持,该过程如图9 所示。
图9 终端接入边缘云保持的过程
终端接入边缘云保持包括终端入云调整判定、终端接入保持更新两个阶段。具体介绍如下文所述。
(1)终端入云调整判定
终端入云调整判定的详细步骤同终端新入云调整中的终端入云调整判定过程。
(2)终端接入保持更新
在本地终端接入边缘云保持的情况下,本地终端更新已接入服务节点消息送达时间TNodeEnterMsgTrans=TNodeMsgTrans、已接入边缘云心跳时间tCloudHeart,tCloudHeart等于消息接收时间戳tNodeMsgRcv。
3.2.5 终端退出边缘云
在终端已接入边缘云即StateCloudEnter=true 的情况下,当超出接入边缘云保持时间TCloudEnterHold而未监听到接入边缘云心跳时,本地终端退出边缘云,该过程如图10 所示。
图10 终端退出边缘云的过程
终端退出边缘云包括终端出云判定、终端出云执行两个阶段。具体介绍如下文所述。
(1)终端出云判定。
本地终端距离上一次已接入边缘云心跳时间tCloudHeart,若超过接入边缘云保持时间TCloudEnterHold仍未监听接收到邻近边缘云心跳,则本地终端判定退出边缘云。
(2)终端出云执行
在本地终端退出边缘云的情况下,更新接入边缘云状态为未接入,即StateCloudEnter=false。
4 仿真结果及分析
4.1 仿真及结果
按照本文方法使用C++语言编写边缘云发现接入软件程序,结合运用边缘云聚云散软件[14],运行该软件并在不同外部无线通信带宽环境下对其进行仿真模拟性能试验。分别在环境无线带宽为2 Mbit/s、8 Mbit/s、100 Mbit/s、1 000 Mbit/s 的情况下依次仿真模拟,并设定带宽可用率为0.5。同时,IP 协议头长度为20 字节,UDP 报文头长度为8 字节,终端入云申请报的终端身份标识、系统验证码字段长度均为8 字节,终端入云许可报的边缘云身份标识、终端入云时间字段长度也均为8 字节。进而,终端入云申请报大小=20+8+16=44 字节,终端入云许可报大小=20+8+16=44 字节;终端入云申请报传输用时=(终端入云申请报大小×8 bit)÷(环境无线带宽×带宽可用率×1 048 576 bit)×1 000 000 μs;终端入云许可报传输用时=(终端入云许可报大小×8 bit)÷(环境无线带宽×带宽可用率×1 048 576 bit)×1 000 000 μs;终端用户接入边缘云用时=终端入云申请报传输用时+终端入云许可报传输用时;终端用户接入边缘云用时=终端入云申请报传输用时+终端入云许可报传输用时;边缘云可并发接入终端用户数=(1 000 000 μs÷终端用户接入边缘云用时)个/s,具体数据及仿真试验结果如表1 所示。在终端用户接入边缘云的过程中,本地计算时间包括终端入云申请报、终端入云许可报的接收解析时间,可忽略不计。
表1 仿真参数设置与仿真结果
4.2 性能分析
由仿真结果可知,在环境无线带宽为2 Mbit/s、8 Mbit/s、100 Mbit/s、1 000 Mbit/s 的条件下,边缘云聚调整用时为671.38 μs、167.84 μs、13.42 μs、1.34 μs,边缘云可并发接入终端用户数对应为1 489 个/s、5 957 个/s、74 472 个/s、744 727 个/s。因此,本系统可以适配各种带宽条件,极速、便捷地完成千数量级以上终端用户接入边缘云,既可以支持边缘云的终端动态高可用接入,又可以实现终端接入边缘云面向高机动环境的场景运用,应用的范围更加广泛,且有助于提高系统边缘服务的稳定性及效能。同时,如图11 所示,本文方法可支持通过边缘信息基础设施平台[15]监视终端接入边缘云的状态,能够为上层信息服务系统实时掌握其服务终端用户的状况提供依据。
图11 终端随遇接入边缘云
5 结语
本文所提系统在边缘环境高机动条件下,根据与网络中邻近边缘云的连接实时变化的情况,自适应调整终端接入边缘云,或新接入边缘云,或更换接入服务节点,或更换接入边缘云,或退出边缘云。所提系统不但支持边缘云的终端动态高可用接入,而且实现了终端接入边缘云面向高机动环境的场景运用,可支撑边缘云平台环境为各类终端设备提供更多且质量有保证的“云”“边”数据、服务资源,更适用于机动车辆、船舶、飞机等业务信息系统,有助于提高系统边缘服务的稳定性及效能。