张明梧
基于动态多网段的数据链网络监视与管理系统的设计与实现
张明梧
(中国电子科技集团公司第二十研究所,西安 710068)
提出了一种可动态配置IP跨网段的数据链网络监视管理系统的设计与实现方法,该系统应用层采用B/S与C/S的混合架构,网络层通过软件定义网络(SDN)集群实现数据链网内成员间的跨网段交互的动态可配置。系统功能涉及平台身份控制、方案管理、跨网段参数控制、多网段内节点状态监视等技术。所设计方法的应用结果表明,该系统可以为数据链网络提供可靠的监视与管理服务,任意节点间路由关系动态可配置,提高数据链各节点的灵活性,满足项目应用要求。
网络监视与管理系统;数据链;动态多网段
数据链是一种通过固有通信协议,解决多种终端之间消息互联的信息系统[1]。随着数据链技术的发展,网内成员的型号增多。根据作战任务的不同,在实际应用中数据链内部通常会有多个不同的局域网,各节点类型不同且拥有的网段不同,节点虽然直连但不能直接交互。因此对网络内这些节点之间数据交互的管理与监控,需要满足高实时性、灵活性和针对不同平台的适配性,并能够实现指挥节点和控制节点之间网段关系的动态可配置。传统网络的IP只能通过人工绑定或者网络分配,在数据链应用时存在IP规划一次后在网络运行时不可配置,单个节点更改IP造成与其他成员冲突,一系列节点IP都需重新规划,影响整个网络通信,且存在布线混乱等问题。软件定义网络[2](Soft Define Network,SDN)是一种新型的网络架构,该网络通过OpenFlow协议把网络内各个设备的控制层面与数据层面分离开来,将设备的控制虚拟化,通过开放流表使管理人员与用户对网络进行管理,使网络可编程化地动态控制。该系统在网络层使用SDN网络集群,将数据与控制剥离开,开发接口给用户实现灵活自定义的网段控制策略,使不同网段的设备能跨网段灵活通信。在系统应用层,由于设备型号繁多,数据量有多有少,因此采用C/S与B/S混合架构的方式处理。采用数据转发服务器,根据数据量类型分别转发给不同后台服务器。针对体量小、操作频繁的数据,使用B/S架构,数据处理服务部署在轻量化服务器,数据显示应用部署在前端浏览器;针对体量大且操作相对不频繁的数据,使用C/S架构,数据处理服务部署在主服务器,数据显示应用部署在客户机。SDN控制器用微服务的方法,注册到数据转发服务器中,实现数据转发服务与SDN网络控制服务一体化的部署。本文在研究跨网段的网络架构基础上,结合项目中数据链网络监视管理系统的实际部署,完成了系统设计,对实际工程应用具有一定的参考意义。
网络监视与管理系统采用分层思想,把网络配置、数据传输和数据处理分开为网络层、数据层和应用层,系统架构如图1所示。
图1 系统架构
其中数据来源为真实设备中的数据,设备种类分为手持、车载和机载三类,网内所有设备将数据发送给网络层的SDN网络集群,集群中的SDN控制器微服务实例根据开发流表控制哪些节点间进行IP通信。根据网络层的数据流向规则,数据层的数据转发服务器对传来的数据大小进行计算,并将数据分为两类:轻量数据与主数据,根据分类发送给应用层的服务器。轻量数据发送给轻量化服务器处理后组播推送给轻量化前端;主数据发送给主服务器经处理后组播推送给客户机。
1.1.1 网络层
网络层采用SDN集群,核心为控制与转发的分离,提供控制的开发标准接口。SDN 架构由应用层、控制层、基础设施层三个部分组成[3],因此本系统的网络层架构实现思想,采用通用三层架构中的实现模式。OpenFlow 是 SDN 思想的一种实现模式[4],系统应用该模式时,SDN控制器注册成一个微服务实例,负责对外提供所有网络内路径的转发以及网络内设备的编程。目前SDN的架构有多种,本系统采用主流的OpenDayLight架构,使用“EVPN+VxLan”进行组网。
1.1.2 数据层
数据层使用时分多址(Time Division Multiple Access,TDMA)的终端,通过将时间划分成互不重叠的时隙实现多个用户共享通信资源[5]。网内节点终端只有在其分配的时隙内可以进行消息的发送,其余时隙则用来进行消息的接收。一条消息的单位是当前时隙内发射的脉冲和,因此根据四类数据链消息占用字节大小的不同,以及其RS编码的位数,数据转发处理器进行计算其字节数和人工制定的周期频数,分别交给B/S段的轻量化处理器或C/S端的主服务器处理。
1.1.3 应用层
由于系统部署在不同类型的终端上,对于具有多个子系统的综合性软件,需要根据实际情况为不同的子系统选择相应的结构类型,形成CS/BS混合结构[6]。应用层主要是运行在后台服务器上对数据处理的服务和运行在前端进行数据显示的应用。针对B/S架构,后台服务器是轻量化服务器,不部署数据库,使用WebSocket常连接机制向前端组播推送JSON格式的数据。前端是由Vue框架开发的显示界面,无需安装客户端,通过HTTP请求向后台发送POST或GET请求,后台进行响应,实现前端实体的动态变化;针对C/S架构,后台服务器是主服务器,部署数据库,处理体量大字节数多的数据链消息,使用用户数据报协议(User Datagram Protocol,UDP)组播向前端推动报文,前端为安装客户端的客户机,进行数据的上显,相对于B/S该客户机较为固定,变化较少。
1.2.1 平台身份控制
主要对网内节点成员的身份权限进行控制,防止身份冲突,保证对应网的成员在自己的网内,不与其他网的成员有冲突干扰。每个网内的成员有一个自己唯一的标识号,而不同网内的主成员之间的身份号不冲突,可以切换当前节点登录网内的成员身份号。
1.2.2 方案管理
在一次任务开始后,可以进行任务方案的切换,切换不同成员之间组成通讯网的方式和关系。对系统内已有的方案进行增加、删除和切换当前方案等,指定方案内不同网的成员职责、指控职责和话音职责。
1.2.3 跨网段参数控制
一个节点控制另一个节点时,可以在同一个网段内,也可以在不同网段内,且在任务开始后可以不结束任务更改成员的网段,即入网后的成员IP与硬件实体脱离开的动态调整。可以实现一个指挥实体在一次开始任务中的多个节点间切换,也可以实现一个控制实体在一次开始任务中所属的节点多次切换。
1.2.4 多网段内节点状态监视
对全网状态和各节点内状态进行监视,包括监视站可以在不同网段,动态对脱离网络的节点进行通知,对各节点担当的身份、节点间关系、节点总数和全网结构等进行显示。
数据链网络包含多个节点,节点分类为数据源设备和网络监视管理终端,设备数据分为主动发送数据和被动发送数据。设备与终端之间的数据采用以太网进行信息传输,终端之间采用射频网络进行信息交互。传输数据的报文分为UDP格式和JSON(JavaScript Object Notation)格式,UDP主要是数据源设备和网管终端之间,以及主服务和客户机之间通信数据格式;JSON主要是轻量化服务器和轻量化前端之间通信数据格式。
2.2.1 SDN集群
集群实现策略为保证多网段安全的基础上进行统一控制、IP路由的分发、下层设备部署的自动进行、上层数据转发服务器IP的自动配置、平台之间实施设备和平台身份号的隔离,SDN集群实现如图2所示。
图2 SDN集群实现图
实现集群的方法为:
1)使用Overlay进行大二层的实体,汇聚层使用传统VLAN进行搭建,汇聚层上层使用VxLAN搭建,网关分布式进行部署,从而实现终端IP和实体位置之间的解绑,应用服务和位置之间解绑;
2)对入网节点使用安全分组保证通信网络的信息安全和权限安全,一个安全分组对应一个VLAN/VxLAN网段,组与组之间进行ACL访问控制;
3)SDN控制器注册成为集群的一个微服务实例,对外提供接口,对于开发人员可以调用接口进行组件策略的下发,设备按照分组进行IP自动配置。用户可以使用接口进行网络自动配置,安装执行脚本一键改变IP不影响节点在网状态。在分配网段认证时使用DHCP把节点的IP地址进行上层传输;
4)数据和管理分离,功能和控制进行分离。VLAN1进行缓存管理,VLAN2进行动态配置DHCP的控制,VxLAN根据控制器接口认证的开放表自动映射,VLAN3进行无线通信的管理。
2.2.2 B/S架构
对于转发到B/S端的数据,在服务器端要处理体量小操作频率高的数据,因此采用Nginx搭建轻量化Web服务器,来对浏览器端的访问和连接数进行优化,在项目应用中解决一定程度上的并发问题,实现如图3所示。在前端使用Vue框架开发显控界面,对数据进行灵活轻量化的展示,部署环境支持浏览器或元心APP形式。在配置Nginx时,使用三台Nginx作为集群服务器,配置实现轮询处理,每台Nginx服务器的权重最初都相同,当一台服务器的数据处理服务占用率超过阈值时,权重下降,提高另外两台Nginx的权重来实现后台的轮询轻量化处理。前端搭建时开发为浏览器插件,提高集成的利用率。
图3 B/S架构
2.2.3 C/S架构
针对体量大,实时性要求高的数据,后台采用主服务器加数据库的配置,如图4所示。主服务器使用飞腾麒麟作为部署环境,数据库采用某型国产数据库。前端使用QT开发为客户端,在不同的客户机上进行部署。由于主服务器处理数据的高实时性和大体量,因此客户机最多支持5台同时访问主服务,服务进行时间片轮转方式访问数据库并将数据返回给前端。同时针对读写频繁的数据,放入Redis缓存服务器中持久化存储,针对大文件等的读写操作放入文件服务器中。对数据库的操作采用读写分离技术,对主数据库服务器和从属数据库服务器进行读写操作。
图4 C/S架构
2.2.4 动态链接库
系统开发环境为银河麒麟、飞腾麒麟和元心三套Unix系统,因此程序进行封装成文件格式为.so的动态链接库。界面使用QT进行开发,QT是一套完整、开源和跨平台的工具,针对系统里应用层的服务,对外统一打包成动态库供其他模块调用。
对于该系统,在实际项目中可以监控网内节点的数目,以及整体网络的在网率。系统可以对入网成员的经纬度、入网时间、速度航向等指标进行监视。系统既满足在单网段内节点之间控制,也可以实现跨网段之间节点的参数控制。指挥者可以动态配置不同网段内节点的IP而不影响网络的运行,可以远程下发参数和通信,各项指标满足该型项目应用需求。
本文主要在数据链网络监视管理系统的基础上,介绍了使用SDN集群来实现跨网段动态配置IP的功能,在应用架构上使用B/S与C/S混搭的风格,实现网络的灵活性和适配性,对于跨网段灵活配合IP的网络监视管理系统使用具有相应的意义。
[1] 骆光明,杨斌,邱致和,等. 数据链——信息系统连接武器系统的捷径[M]. 北京:国防工业出版社,2010.
[2] 赵超毅,陈勇,李绍前. COMPASS卫星网络基于DT-DVTR的路由算法研究[J]. 电子设计工程,2018(2):98-101.
[3] 史衍伟. 自治系统内IP子网和SDN子网的互联机制[J]. 通信学报,2014,35(Z1).
[4] 张朝昆,吴建平.软件定义网络(SDN)研究进展[J]. 软件学报,2015.
[5] 侯骁宇,李天昀,杨司韩. 分布式独特码TDMA信号的检测和频率估计[J]. 信号处理,2018,34(10):1211-1220.
[6] 俞丽华,苑庆韦,刘丽春. 基于BS/CS架构的地下管线管理系统软件设计[J]. 科技资讯,2018(16).
Design and Implementation of Data Link Network Monitoring and Management System Based on Dynamic Multi Net Segment
ZHANG Mingwu
Design and implementation method of data link network monitoring and management system which can dynamically configure IP cross segment is proposed in the paper. The application layer of the system adopts the hybrid architecture of B/S and C/S, and the network layer realizes the dynamic configuration of cross segment interaction among members of data link network through SDN network cluster. System functions include platform identity control, scheme management, cross segment parameter control, node status monitoring in multi segmented. The application result in the use of design show that the system can provide reliable monitoring and management services for the data link network, and the routing relationship between any node can be dynamically configured, which improves the flexibility of each node of the data link and meets the application requirements of the project.
Network Monitoring and Management System; Data Link; Dynamic Multi Net-Segment
TN911
A
1674-7976-(2022)-02-143-05
2022-01-15。张明梧(1994.11—),陕西西安人,硕士,主要研究方向为计算机与通信。