计算机系统应用  2021, Vol. 30 Issue (4): 283-287   PDF    
电网调度控制系统中的应用商店设计
边雁1,2, 邹庆1,2, 黄昆1,2,3, 马德超1,2     
1. 南瑞集团有限公司(国网电力科学研究院有限公司), 南京 211106;
2. 国电南瑞科技股份有限公司, 南京 211106;
3. 智能电网保护和运行控制国家重点实验室, 南京 211106
摘要:随着现代电网调度控制系统的发展, 大量人机云终端存在安装应用的需求, 但是目前应用软件管理面临诸多问题, 如应用软件发布、升级、维护自动化程度低, 软件部署之后缺乏信息反馈回路, 后期维护成本高, 难以满足目前的需求. 另外, 在电网系统中网络的分区隔离让应用传输也面临跨网络分区分发问题, 从使用角度看, 应用上传和下载遇到大文件时传输速度慢严重影响用户体验. 为了这一系列的问题, 本文提出一种用于电网调度控制系统的应用商店设计方案, 主要用以解决软件的自动化发布、升级、维护问题, 并且解决应用分发过程中的网络传输问题, 以达到提升软件质量和易用性的目的, 除此之外还可以通过分析用户行为等信息对用户提供推荐功能. 应用的全生命周期管理及对其的跟踪分析都由应用商店完成.
关键词: 应用商店    应用上架    下载安装    升级反馈    分发传输    
Design of Application Store in Power Grid Dispatching Control System
BIAN Yan1,2, ZOU Qing1,2, HUANG Kun1,2,3, MA De-Chao1,2     
1. NARI Group Corporation (State Grid Electric Power Research Institute), Nanjing 211106, China;
2. NARI Technology Co. Ltd., Nanjing 211106, China;
3. State Key Laboratory of Smart Grid Protection and Control, Nanjing 211106, China
Abstract: With the advancement in modern power grid dispatching and control systems, many human–machine cloud terminals need to be equipped with applications, but the present demand is hardly met because the application management is facing such problems as low automation in the release, upgrade, and maintenance of applications, the lack of information feedback loops after software deployment, and high cost of later maintenance. In addition, cross-regional distribution is another problem in transmission due to the partition of the network in the power grid system. User experience is largely worsened by the tardy uploading and downloading of large files. To solve this problem, this study proposes a design scheme for the application store of power grid dispatching and control systems, which is mainly used for more automatic release, upgrade, and maintenance of applications as well as faster and smoother network transmission in application distribution. In this way, the quality and usability of applications are improved. Besides, information such as user behavior can be analyzed to make recommendations. The application store is capable of both life cycle management and tracking analysis of applications.
Key words: application store     application listing     download and installation     upgrade feedback     distribution and transmission    

随着计算机技术的日益发展, 特别是以集群、云计算为导向的技术的突飞猛进, 在新型电网调度控制系统中, 服务器、工作站已经不再是过去相互独立的个体模式, 而是逐步发展成了一个“物理分布、逻辑统一”的有机体. 新型电网调度控制系统对应用软件管理提出了更高的要求, 相较于以往只需完成应用安装、根据需求进行应用升级的方式已经不适合目前这种开放型电网调度控制系统. 运行于工作站上的大量应用软件如何实现高可用, 准确安装所需版本, 后续如何升级、运营维护, 应用提供商如何获取准确的用户反馈信息并根据反馈信息对应用进行质量提升都是亟待解决的问题. 应用软件智能化管理、运维显得迫在眉睫.

除此之外, 在电网调度控制系统中, 网络传输是一个重要问题, 电网调度控制系统的总体安全防护需要遵循“安全分区、网络专用、横向隔离、纵向认证”的安全防护方针[1], 安全可靠传输是保障电网正常运行的基础, 应用分发必须符合电网控制系统的网络模式. 在应用分发过程中, 还要解决大文件的上传下载的速度问题, 优化系统的用户体验.

应用商店这一概念最早由苹果公司提出并应用于移动通信领域. 应用商店不仅是一个应用提供商发布应用的渠道还是用户下载应用的平台, 用户可以通过免费或收费的方式从应用商店平台选取所需要的软件进行下载[2]. 后来谷歌公司在安卓系统上也开始提供应用商店功能. 逐渐地, 苹果和安卓通过应用商店形成了各自的生态圈. 应用提供商和用户之间依靠应用商店建立起联系. 与此同时, 众多应用的不断出现, 应用提供商也将应用商店视为应用推广的重要渠道之一[3]. 应用商店规范应用提供商的行为, 要求应用提供商上传合法有效的应用软件并对其进行审核. 用户通过应用商店进行应用下载安装升级等操作, 并可以对应用进行评分, 应用商店依据这些信息可以对应用提供商提供有效的反馈信息, 促进应用提供商不断改进提升应用.

应用商店从本质上看, 是一个双边市场, 汇聚了应用提供商和开发者资源[4]. 从应用提供商角度看, 应用商店作为应用发布的平台, 极大程度上提高了应用的可管理性, 将以往需要向海量用户提供应用的方式转变成向应用平台提交应用的唯一版本; 从用户角度看, 应用商店提供经过审核的应用, 相较于应用无管理的状态而言更为安全可靠, 且可以根据应用评价或打分对应用的可用性易用性有初步认识; 从应用商店角度看, 应用商店的出现使得应用可管可控, 通过审核验证的应用方可提供给用户, 并且用户的反馈信息可以传递至应用提供商. 应用商店的产生和使用形成了一个多方获益的局面, 进而推动应用安装、使用、运维向着自动化、智能化的方向发展.

在现代智能电网调度控制系统(以下简称“调控系统”)中, 不断增长的人机终端都存在安装应用的需求, 应用管理这个问题日益突出, 如何能够对应用可管可控并进行智能运维的问题摆在了我们面前, 在电网调控系统中我们也开始尝试针对应用商店这一理念展开探索. 在移动通信中, 应用商店理念的成功落地并得到广泛应用, 使得在电力行业中借鉴并使用应用商店这一理念成为了可能.

根据上述现状, 本文提出一种应用于电力调度系统中符合其自身发展特色的应用商店技术方案, 通过提供统一应用软件管理平台, 各应用提供者统一向平台提交最新的应用软件, 并通过应用商店获取用户对于软件的反馈. 对于应用提供者而言屏蔽掉应用使用者的差异性, 降低应用分发的工作量. 与此同时, 该应用商店方案符合电网控制系统网络安全需求并且优化了文件上传下载的流程.

1 总体架构

新一代电网调度控制系统主要由以下几个模块构成: 提供全局模型以及实时数据断面的模型数据中心, 进行全局分析、防控、决策的分析决策中心, 对电网数据进行采集与控制的监控子系统[5,6]. 分布在不同调控中心的人机云终端上, 根据自身实际需要通过应用商店下载安装各种应用客户端.

应用商店总体架构如图1所示.

图 1 应用商店总体框架

应用商店服务、应用商店管理端以及应用商店客户端通过对不同业务的管理, 进而结合成应用于新一代电网调度控制系统的应用商店管理平台.

应用商店服务作为应用商店管理平台的核心, 负责应用的全生命周期管理. 应用提供商和用户对应用的一系列操作, 如: 应用上传、应用审核、应用发布、应用下载、应用更新、应用反馈、应用回退、应用下架等都由应用商店服务提供支持.

应用商店管理端主要用于应用提供商向应用商店上传并提交应用. 应用提供商将应用提交给具备检测资质的第三方检测机构. 第三方检测机构对应用进行检测, 主要从软件功能、软件性能、软件稳定性、软件安全、软件合法性等多个角度进行检测验证, 最终向应用提供商出具检测报告. 应用提供商取得第三方检测报告后, 通过应用商店管理端向应用商店服务提交应用程序、检测报告、应用基本信息及相关使用、说明文档. 应用商店管理员在应用商店管理端发现审核申请后, 针对应用提供商提交的内容进行核实, 符合条件的应用可以通过审核进行上架发布, 不符合管理要求的应用软件进行驳回并告知具体原因, 以便应用提供商后续改进后重新提交审核.

应用商店客户端主要是用户通过应用商店服务提供的信息获取管理端发布的各类应用软件. 用户通过应用商店客户端可下载安装各类应用软件, 应用商店客户端后续向用户提示版本更新, 进行应用软件升级, 除此之外, 客户端还负责收集一些用户操作行为及使用反馈供应用提供商使用.

2 关键技术 2.1 应用全生命周期管理

应用商店作为应用管理平台, 需要对应用可用性、合法性等进行检查. 应用商店针对不同厂家的各类应用能够实现对应用从应用准备、应用下发、用户反馈到应用回收的全生命周期管理. 应用提供厂商在应用商店进行注册, 经过审核通过后的厂商具有上传应用的权限. 未经过审核的厂商可以根据反馈信息对注册信息进行修改重新提交注册申请.

应用准备环节主要是应用提供商准备相关资料提交应用审核的过程. 存在上架应用需求的厂商首先要提供自己的信息在应用商店中进行身份注册并完成资质审核. 通过身份认证审核后的厂商才具备上传应用的资格. 通过审核的厂商在提交应用时, 除了上传应用的安装文件外, 还要提交使用文档、更新说明以及相关的第三方检测报告, 提交申请后应用商店管理员和检测员对应用各项资料进行检测审核, 审核通过后方可进行上架, 对于不符合要求的应用驳回申请并给出相应原因.

应用下发环节主要指应用商店将应用向用户分发的过程. 经过审核上架后的应用, 用户可根据自身实际需要进行下载. 应用商店通过分析用户行为数据对应用进行排序, 主要依赖于用户下载量、用户搜索量、用户打分以及用户评论等信息. 此外, 应用商店还提供应用升级功能, 用户可以根据应用管理服务发送的应用版本升级信息决定本地已安装的应用是否需要升级.

用户反馈环节主要是用户对应用做出的反馈信息通过应用商店传递给应用提供商及应用管理服务的过程. 根据用户对应用的评价、反馈等主观指标以及应用下载量及用户搜索量等客观指标, 应用提供商依靠这些反馈信息对应用不断进行改进提升, 应用商店依赖于这些重要信息可以完成对不同用户间的个性化推荐, 这种推荐方式我们称之为基于行为数据进行推荐[7].

应用回收环节主要体现应用商店对于用户卸载应用的信息记录及处理方法. 在应用卸载阶段, 应用商店除了获取并记录卸载信息外还通过用户反馈判断是否需要下架应用. 对于存在问题的应用, 应用商店可强制下架应用也可通知应用提供商, 由应用提供商主动下架应用.

2.2 应用跨安全区分发

在电网调度控制系统中, 为了电网安全稳定运行, 通信网络实行严格管理, 通常是将网络分成生产控制大区和管理信息大区, 生产控制大区可分为控制区(安全区Ⅰ)和非控制区(安全区Ⅱ); 管理信息大区可分为信息内网(安全区Ⅲ)和信息外网(安全区Ⅳ), 安全区Ⅰ与安全区Ⅱ之间采用逻辑隔离; 安全区Ⅰ、Ⅱ与安全区Ⅲ、Ⅳ之间实现物理隔离[8]. 应用商店这类基于浏览器/客户端(B/S)架构模式的系统通常部署在管理信息大区下的安全区Ⅲ, 防止由于网络通信引起各种安全问题. 但是需要安装应用的人机云终端通常部署在生产控制大区, 如果进行网络通信, 完成应用的下载和消息的通信就是面临的实际问题.

生产控制大区和管理信息大区之间使用高于防火墙的物理隔离装置, 通常称之为横向隔离设备. 生产控制大区到管理信息大区的数据, 通过正向隔离设备, 进行高安全级别大区向低安全级别大区的单向数据传输; 而管理信息大区到生产控制大区的数据, 通过反向隔离设备, 经过内容过滤、签证、有效性检查等处理后, 实现低安全级别大区向高安全级别大区的单向数据传输, 正反向隔离设备在物理层面上控制了数据的横向流动, 确保数据的安全性和有效性[9]. 部署在管理信息大区的应用商店服务与人机云终端通过约定的接口进行通信, 通信过程中携带隔离设备需要的验证信息, 经过验证的数据才能传入到人机云终端所在的生产控制大区.

经过特定处理, 应用商店可以在电网调度控制系统中符合其网络安全要求的情况下完成消息通信及应用分发.

2.3 应用分片上传及下载

在应用商店中, 除了应用管理外, 使用最多的就是应用的上传与下载. 常见的B/S架构中通过form表单上传的方式, 除了可控性差, 还无法获取即时状态[10], 并且在应用上传下载过程中, 文件过大经常引起上传下载速度慢的问题. 上传和下载速度过慢会影响用户体验及系统处理效率, 如何能够快速上传下载应用是一个需要解决的问题. 此外, 通过浏览器上传文件, 无论采用哪一种协议, 都存在限制, 常见的限制有网络状态、协议对请求时间及文件大小的限制等, 这些限制通常会造成文件传输终端, 甚至请求被拒绝, 导致文件上传失败, 尤其是上传大文件时更为明显[11]. 所以针对大文件上传通常都采用分片的方式进行, 在应用商店中我们引入一种文件分片上传下载的方法.

在浏览器端, 用户通过页面选择文件上传, 上传时前端插件Web uploader对文件进行分片, 将分片后的文件打上标志通过并发的方式传输至服务端, 上传文件过程中可以同步显示上传进度. 服务端对上传了的分片进行存储, 同时将分片按顺序进行整合复原成原始文件. 采用分片上传技术后由于文件分片之间采用并发方式传输, 大大提高了大文件上传的速度, 提升了用户体验.

应用下载时, 通过应用商店客户端和服务之间所发送的请求参数的不同, 应用商店提供分片下载和整体下载两种模式. 如果采用了分片下载, 应用文件分片下载完成后由客户端重新将分片整合成原始文件. 分片下载在网络环境较差的情况下可以提升下载速度.

3 结果展示

本文提出的基于电网调度控制系统的应用商店方案设计, 课题组已经完成了面向新一代电网调度控制系统的应用商店的开发, 并成功应用于国网范围内省级及以上电力调度控制中心. 具体部署架构示意图如图2所示.

图 2 应用商店部署结构示意图

图2中两台应用商店服务器形成主备集群, 用于部署应用商店服务和应用商店管理端, 在人机云终端上部署应用商店客户端, 然后通过人机交互网络实现客户端和服务端之间的通信.

由于电力系统网络的特殊性, 应用商店服务和人机终端之间网络使用防火墙进行物理隔离, 两者之间通信依靠接口中携带校验信息完成可靠交互以达到通信目的.

应用上传下载引入分片并发方式, 大大提高了上传下载效率, 页面上提供进度提示, 对用户的使用操作更为友好.

在电网运行系统中, 上下级平台之间存在消息通信链路, 上级平台可以向下级平台推送应用更新信息, 下级平台可以从上级平台获取应用更新软件, 将更新软件提交到本地应用商店进行审核, 管理员经过审核后可以进行上架, 上架后的应用可以提供给本级的用户使用.

4 结语

在电网调度控制系统中, 随着系统不断发展壮大, 应用管理如何从无序转换为有序、可控、闭环的方式显得尤为重要. 本文通过参考移动互联网中管理应用软件的方式, 借鉴其思想, 引入应用商店这一理念, 同时结合电网网络独有的特点, 设计研发出符合电网调控系统的应用软件管理方案. 应用商店技术方案满足了应用从应用上架、应用下载到应用推荐、用户反馈、应用升级以及应用下架的全生命周期管理需求, 并且在设计和部署时符合电网“物理隔离”的要求, 保证电网安全可靠运行, 通过对文件进行分片, 提高了文件上传效率, 优化了用户体验, 从而形成一套适用于电网系统的开放生态. 后续应用商店会从人工智能角度深入研究, 尤其是针对推荐功能不断进行探索, 进一步完善电网调控系统的应用商店技术方案.

参考文献
[1]
翟明玉. 现代电网调度控制技术. 北京: 中国电力出版社, 2020: 29.
[2]
疏斌, 黄荻. 国内手机应用商店市场调研及行业监管建议. 互联网天地, 2017(Z1): 91-94.
[3]
安青邦, 贺晓能, 戈志勇. 移动互联网应用商店安全管理模式研究. 现代电信科技, 2015(5): 31-35.
[4]
杨春平. 应用商店离散化模式研究. 信息通信技术, 2013(4): 21-25.
[5]
辛耀中, 石俊杰, 周京阳, 等. 智能电网调度控制系统现状与技术展望. 电力系统自动化, 2015, 39(1): 2-8. DOI:10.7500/AEPS20141008024
[6]
汪际峰, 沈国荣. 大电网调度智能化的若干关键技术问题. 电力系统自动化, 2012, 36(1): 10-16.
[7]
周吉寅, 陈媛, 姚晨, 等. 使用Hadoop实现应用商店中的相关推荐模型. 现代计算机, 2013(17): 20-23.
[8]
国家电力监管委员会. 电力二次系统安全防护规定. 中华人民共和国国务院公报, 2005(28): 35-37.
[9]
翟明玉. 现代电网调度控制技术. 北京: 中国电力出版社, 2020.30.
[10]
白鹤, 吕红亮, 王劲林. 进度显示的大文件上传组件的设计与实现. 计算机工程与应用, 2009, 45(5): 91-94.
[11]
郑州云海信息技术有限公司. 一种文件上传方法和系统: 中国, 107528926A. [2017-12-29].