技术文章

基于微服务架构的警用数据链应用设计

特种装备网
发布时间:
2021-05-10

摘 要:随着5G技术的应用推广,物联网、边缘计算、人工智能等技术的不断发展,针对警用智能装备的安全管控、互联互通、任务协同成为实战中急需解决的问题。本文依托警用数据链项目,通过引入微服务的设计理念,设计一套基于可复用的微服务框架的、可靠的警用数据链应用服务方案。

关键词:公共安全;警用数据链;微服务;智能装备

0、引言

近年来,各级公安机关持续推进科技信息化建设,逐步建成覆盖全警种、全业务的集专用网络、应用系统、安全保障、标准规范为一体的公安信息化体系。随着我国科技快速发展、新技术广泛应用,公安部适时启动了针对实现万物互联互通的数字化“天网”;对海量数据拥有超级计算能力的“天算”;具有超级智能控制能力的“天智”等技术研究和工程实施工作。同时,以警用数字集群、移动警务、公安视频网、警用机器人、警用无人机等为代表的具有公安专用化、移动化、智能化特点的新装备、新系统陆续投入实战。智能装备、新型装备大量部署,产生了大量信息和数据,在集中存储、管控、调度的模式下,对传输、存储、处理、应用等方面造成了巨大的压力,产生难以承受的基础设施投资、运维压力。同时,还降低了信息的活力,无法及时响应一线实战需求。为解决这些问题,我们结合警用数据链技术、物联网技术、人工智能技术研制的警用智能型网关设备将信息、数据在“边”侧进行处理,大大缓解了中心结点的压力。

1、微服务

微服务提供了一种更友好的持续交付业务影响的方式,是一些协同工作的小而自治的服务。一个微服务就是一个独立的实体,它可以独立地部署在PAAS层,也可以作为一个操作系统进程存在[1]。相较于单体应用,使用微服务构建出来的应用是一系列松耦合的、自治的服务组成。通过开发这些只做一件事的服务,开发者可以避免大型应用中所存在的缺乏活力和混乱的状态。具体来说,微服务是一种独立的能力,其被设计为可执行程序或进程,并通过超文本传输协议(HTTP)、RESTful Web服务、消息队列等标准但轻量级的进程间通信机制来与其他微服务进行通信。微服务与标准应用不同之处在于,每个微服务各自进行开发、测试、部署以及按需伸缩,并独立于其他微服务。通常软件应用或平台的平均寿命是4~6年,之后应用或系统会因为各种原因逐渐被废弃[1]。微服务在技术决策上给我们极大的自由度,使我们能够快速响应那些不可避免的变化。微服务有很多好处,其中很多好处也适用于分布式系统。支撑微服务开发的五大架构原则是自治性、可恢复性、透明性、自动化和一致性[2]。微服务应用架构如图1所示。

基于微服务架构的警用数据链应用设计

微服务不是孤立运行的,每个微服务都会和其他的微服务一起共存于一个环境中,而我们就在这个环境中开发、部署和运行微服务。

1.1平台层

微服务平台提供了工具、基础架构和一些高级的基本部件,以支持微服务的快速开发、运行和部署。一个成熟的平台层会让技术人员把重心放在功能开发上,而非一些底层的工作。

1.2服务层

开发的各个服务会借助下层的平台层的支持来相互作用,以提供业务和技术功能。服务层是依赖底层平台对可靠的运行和通信方案的抽象,通过边界层将功能暴露给应用的客户端。开发者所开发的服务实现的是不同的功能。

(1)业务能力是组织为了创造价值和实现业务目标所做的工作。划到业务功能的微服务直接体现的就是业务目标。

(2)技术能力通过实现共享的技术功能来支持其他服务。

1.3边界层

边界层隐藏了内部服务的复杂性,只展示一个统一的外观。像移动APP、网页用户界面或者物联网设备之类的客户端都可以和微服务应用进行交互。边界层还可以实现一些面向客户端的功能,如认证和授权、限流、缓存、日志和指标收集等[3]。

(1)边界层对内部的复杂度和变更进行了封装和抽象。

(2)边界层提供了访问数据和功能的方法,以便客户端可以使用适合自己的传输方式和内容类型来访问。

1.4客户端层

与三层架构中的展示层一样,客户端层为用户提供了一个应用界面。将客户端层与下面的其他几层进行分离,就可以以细粒度的方式来开发用户界面,并且可以满足不同类型的客户端的需求。

2、警用数据链

警用数据链(PoliceDataLink,简称PDL)为满足不同环境下执行多种任务的各级公安机关共享现场态势和实时指挥控制的需求,满足系统、人、物三者间主动信息交互、任务协同需求,充分利用现有公安各类信息系统和通信系统资源,采用标准化消息传输协议、灵活可靠的组网方式、安全保密的通信传输信道,而构成的一种警用通信技术,包括消息协议、数据链管理系统和数据链设备三部分。

警用数据链主要有四个方面的特征:

(1)信息交换实时化。压缩数据量,提高信息传输效率;采用高效、实时交换协议;实时性需求为主,兼顾可靠性。

(2)传输协议标准化。建立警用标准数据链消息传输协议;采用可变长度信息编码;保证信息无二义。

(3)传输网络综合化。综合利用专网、公网、自组网;信息网络间自主传输;安全加密传输。

(4)连接对象多样化。多种方式接入现有警用通信装备;接入各类智能装备、信息系统;开放装备接入接口。

警用装备既有严格的管理要求、系统的使用方案,又需要在现场使用中灵活配置、辅助警员更好地开展工作。这样的应用场景,需要警用数据链体系主干管理清晰,前端灵活可变。设计的警用数据链基本架构,由警用数据链管理系统、警用数据链网关/节点设备和警用数据链终端设备、客户端组成,警用数据链架构如图2所示。

基于微服务架构的警用数据链应用设计

数据链管理系统主要是对数据链网关和终端设备进行安全管控、任务协同调度;数据链网关/节点设备主要承担大量警用装备接入、信息交换等需求,网关/节点可以通过无线或有线方式管理警用数据链终端/客户端,对纳入管理的数据链终端设备/客户端提供信息转发、状态监听、安全管控、任务协同调度等功能;警用数据链终端设备/客户端可以直连警用装备,为警用装备提供数据链服务。

警用数据链网关/节点设备是警用数据链系统中的核心设备,既可用来组成系统,又可以用来单独与警用数据链终端设备/客户端组网使用。警用数据链网关/节点设备功能分为两大部分,对接入本网关/节点的终端设备/客户端而言,提供警用数据链服务功能,是P-MQ(警用数据链消息队列)服务端;对其上级网关/节点而言是P-MQ客户端。网关/节点设备对接入自身的设备具有身份认证、协议转发、路由管理等功能。

3、警用数据链应用微服务设计

警用数据链技术和设备是为警用装备数据应用、互联互通、任务协同提供保障的技术手段。随着警用智能装备越来越多,应用场景越来越复杂,警用数据链技术应有灵活可变的协议、可管控、可扩展的系统架构设计,才能为用户所接受。警用数据链实现的基本功能需要进一步开发,设计如下功能:设备身份识别、消息订阅、消息广播、消息转发、消息重传、消息存储、设备状态消息、告警、消息完整性、端到端安全、遥晕、遥毙、复活、数据配准、系统授时、监视、数据查询、网络管理、日志管理、设备管控等。

设计微服务应用也就意味着设计分布式系统。开发者必须考虑到延迟性、可靠性以及应用中的状态一致性[4]。警用数据链微服务架构如图3所示。

基于微服务架构的警用数据链应用设计

3.1、警用数据链平台层

警用数据链平台层通过微服务的设计思想可以实现海量消息的异步处理、消除峰值、与业务层解耦的设计模式。

警用数据链平台层的目标是对接移动警务平台,警用数据链管理系统通过移动警务服务的总线实现业务数据的流转。考虑到微服务的技术特点,如异构性、简单性、伸缩性、去中心化,警用数据链平台可以根据实际网络情况不同、网关及下挂警用设备不同、应用场景不同进行动态调整,在基础设施符合公安部相关规范(数据隔离)的同时,也要考虑到潜在的故障隔离问题。

3.2、警用数据链服务层

微服务是面向服务的架构。服务层是依赖底层平台对可靠的运行和通信方案的抽象,通信协议则是通信方案的核心。

警用数据链消息协议(PMQ,PoliceMessageQueuing),是一种基于发布/订阅(Publish/Subscribe)模式的轻量级安全通信协议,该协议可以兼容MQTT协议,为警用装备提供安全可控的消息服务。警用数据链服务层主要由警用数据链(PDL)和MQTT通信协议组成。作为一种低开销、低带宽、高安全即时通信协议,为警用装备提供安全互联、协同作战能力。警用数据链消息协议根据业务功能可以划分为以下三类:

3.2.1、协同

警用数据链可以提供装备间信息交互的标准协议,作为智能装备信息交流、协同工作的基础。通过建立新型警务模式,形成装备协同,建立边缘指挥。

通过警用数据链可以形成边缘指挥节点,做到现场数据、现场装备、现场指挥融合,形成边缘指挥,现场态势感知能力。通过警用数据链,在形成数据协同、应用协同的基础上,进一步形成装备协同、任务协同。

3.2.2、管理警用数据链服务层

可以实现用户管理、设备管理、协同管理、升级管理等业务管理以及网络管理、系统管理、安全管理、告警管理、日志管理、容器管理、VPN管理等网关管理功能。

3.2.3战场态势感知

警用装备其本质是物,随着技术的进步,装备的能力提高之后,警用智能装备成为综合信息采集、传输、应用的具有一定智能的物。针对装备技术提升、全面信息化、网络化在作战中对原有集中指挥调度模式的冲击,美军提出了网络中心战模式,即加强网络边缘节点处理能力,现场信息在节点汇聚、处理;网络中各节点间相互链接,形成扁平化指挥模式,提高网络效率。

3.3、警用数据链边界层

警用数据链边界层应当遵循设计、部署、监控的微服务设计理念,在面对不断变化的需求和不断增加的复杂度,应用仍然具备可恢复性。警用数据链边界层融合了零信任网络机制,重点考虑终端设备的安全机制,如认证和授权、限流、缓存、指标收集等。

3.3.1、统一身份管理和授权

警用数据链边界应当采用单点登录方式对接入设备进行身份认证以及权限分配。针对警用装备不同计算能力,提供数字签名、唯一标识等多种认证方式,还应当考虑警用装备身份的合法性认证、数据在传输过程中的安全性、数据安全接入业务平台等问题。

3.3.2、安全代理网关

警用数据链边界通过安全代理网关实现了安全统一通道,以期满足对接入设备进行安全访问控制、审计、负载均衡等网络信息系统安全等级保护方面的要求,为边界层提供安全防护的加固功能。

3.3.3、环境感知风险度量

警用数据链边界根据自动风险度量评估机制对系统内的风险进行系统资源的动态访问授权控制,满足当前风险度量的访问请求可以得到通信证并提供资源接口。

3.3.4、AI零信任大脑

警用数据链边界针对业务逻辑采用统一接口定义,根据用户智能分析,对设备中的应用进行打分以实现动态授权。通过优化变量,可以升级策略管控。

3.4、警用数据链客户端层

警用数据链客户端层分别是网关客户端和安卓客户端。

(1)网关客户端原则上不提供可视化图形界面,主要目标是实现警用终端的设备管控、消息传输、智能应用、任务协同,各功能间相互独立,每个功能就是一个微服务。

(2)安卓客户端主要供用户与警用终端进行通信,不同于生活中常见的微信、QQ等人与人的通信工具,采用了任务方式进行展示。安卓客户端分为普通用户与管理员模式,管理员模式可以针对所属网关进行设备管控,设备分组,订阅主题修改等操作。

4、结语

面对公安行业智能装备(以机器人、无人机、智能安防、智能安检、智能终端为代表)大量应用,进一步发展形成人机协同的趋势,通过驱动模块化架构设计、按需扩展、应用性能和可靠性、代码复用性指数级提升,有助于解决处于多种无线网络环境下的装备间安全通信问题;解决当前警员与智能装备间安全通信;解决智能装备在移动环境下,身份识别问题和多种业务的安全应用问题以实现警用智能装备间安全通信,实现基于微服务的警用智能装备移动业务安全应用。

参考文献:

[1]Sam Newman.微服务设计[M].北京:人民邮电出版社,2015.

[2]Morgan Bruce.微服务实战[M].北京:人民邮电出版社,2020.

[3]吴尧.基于云平台的工业互联网管控系统的研究与设计[D].北京:北京交通大学,2019.

[4]孔智.基于MQTT的消息推送集群系统的设计与实现[D].西安:西安电子科技大学,2019.

来源:通讯世界责任编辑:杨航