APP下载

基于人在环的指控系统验证信息采集系统研究

2015-12-23张文阁,李中山,崔伟宁

兵器装备工程学报 2015年9期
关键词:信息采集验证

【信息科学与控制工程】

基于人在环的指控系统验证信息采集系统研究

张文阁,李中山,崔伟宁

(装甲兵工程学院 信息工程系,北京100072)

摘要:针对指控系统验证过程中因信息采集难而导致试验分析难于量化的问题,在对基于人在环指控系统验证试验过程产生的数据进行分析、抽象基础上,提出了基于外挂的信息采集方法,具体描述了采集系统的体系结构、支撑技术和实现方法;开发出一种不干扰原系统正常运行的试验信息自动采集系统,为指控系统验证定量分析提供了重要支撑;系统测试表明:所研究的信息采集系统达到预期目的。

关键词:指控系统;人在环;验证;信息采集

收稿日期:2015-03-11

作者简介:张文阁(1970—),男,副教授,主要从事军事信息系统研究。

doi:10.11809/scbgxb2015.09.026

中图分类号:TP393.0

文章编号:1006-0707(2015)09-0102-04

本文引用格式:张文阁,李中山,崔伟宁.基于人在环的指控系统验证信息采集系统研究[J].四川兵工学报,2015(9):102-105.

Citationformat:ZHANGWen-ge,LIZhong-shan,CUIWei-ning.OnInformationCollectionSystemofCommandandControlSystemVerificationBasedonMan-in-Loop[J].JournalofSichuanOrdnance,2015(9):102-105.

OnInformationCollectionSystemofCommandand

ControlSystemVerificationBasedonMan-in-Loop

ZHANGWen-ge,LIZhong-shan,CUIWei-ning

(DepartmentofInformationEngineering,AcademyofArmoredForceEngineering,Beijing100072,China)

Abstract:Aiming at the problem that the information collection of the experiment is so hard that quantitative analysis is difficult in the command and control verification process. First, we analyzed the data which produced in the experiment process and abstracting it. And then a plug-in technique used to collect information was presented, and the architecture and key techniques was described. A new information collection system was developed, which is the base of the quantitative analysis of command and control system verification. Testing shows: the system is worked.

Keywords:commandandcontrolsystem;man-in-loop;verification;informationcollection

信息系统是基于信息系统的体系作战的最基本、最重要的依托,指挥控制系统作为信息系统的核心,在作战指挥过程中发挥效能的程度决定了信息系统的效能[1]。为避免指控系统在实际作战过程中存在不适用的问题,在系统投入使用前有必要在试验环境下进行验证。以验证支持系统的实兵参与程度为标准,目前的系统验证方法归纳起来主要有3种:实兵、实装验证法,人在环、模拟环境、实装验证法,虚拟环境、实装验证法[2]。其中第2种方法由于具有人和部分实装在环,通常也称为半实物仿真或系统试验床[3],本信息采集就是在这种验证环境下进行。

1验证环境构建

试验主要是在计算机模拟战场环境的基础上,通过一定的作战想定,驱动指挥员通过指控系统指挥部队操作实际装备进行近似于实兵的对抗,以保证指控系统在接近实战的战场环境中得到验证[4]。其验证环境包括硬件设备、软件、人员三部分,其中硬件包括计算机、网络、显示设备、作业环境、各种作战和保障装备,软件包括操作系统、仿真系统、指控系统、武器装备信息系统、数据库管理系统,人员包括导调人员、作战指挥人员、装备操作人员、保障人员等。

2系统体系结构

2.1数据体系

试验时有两类数据是需要采集的,一类是对指控系统及其相关装备操作的数据,主要指人员通过指控系统输入和处理的交互信息;另一类是通过网络传递的系统间的交互信息。将两类信息进行抽象,操作数据可分为底层数据和应用数据,其中底层数据指来自操作系统的原始的数据,包括键盘输入的数据和鼠标移动、点击的数据等;应用数据指由应用程序接收的数据,例如文本框的文本内容。网络数据则全部抽象为数据包。其数据体系如图1所示。

从以上分析可以看出,指控系统验证过程中要采集的数据实质是软件运行过程中产生的后台信息,它不同于软件运行过程中主动输出的信息,一般需要通过一定的黑客技术进行窃取[5]。外挂的本意是外部调用程序的通俗称法,接近于WINDOWS的API(应用接口函数),一般是指在计算机中一个程序通过某种事件触发而得以挂接到另外一个程序的空间里(常用的触发事件有键盘触发,鼠标触发,消息触发),通常通过截取、利用原软件运行时产生的数据,以达到一定目的(分析或修改被挂接程序)的程序[6]。基于人在环进行指控系统验证时,各种信息系统构成网络化的运行环境,如果借鉴程序外挂技术,就能在不受具体的软件限制、不干扰原系统运行的情况下采集试验信息。

2.2技术体系

为了实现底层数据的采集,本系统研究了两种方式来实现外挂技术:一是基于设备驱动程序直接读取I/O端口的技术,从键盘和鼠标端口上直接截获输入;二是利用消息钩子方式,研究了键盘和鼠标的消息的截获和处理。而应用数据的采集则可以通过编程语句直接实现采集,将采集的底层数据和应用数据进行融合,就会得到完整的操作数据。为了实现网络数据采集,主要采用了网络嗅探技术,用于监听、分析系统之间以网络数据包形式传递的各种消息,将符合一定规则的数据包抓取后保存到日志即可。信息采集系统的技术体系架构如图1所示。

驱动技术层包括设备访问驱动、键盘鼠标钩子和网络嗅探器,用于安装在系统底层,采集交互信息和网络信息使用,通过动态库实现。采集技术层包括键盘鼠标信息采集器、网络信息采集器,用于信息的采集并记录。分析技术层包括键盘鼠标信息分析器和网络信息分析器,用于采集信息的分析。

2.3数据处理体系

操作数据和网络交互数据的采集都是在用户单机上完成,并记录在日志中,需要在单机上存储为一定格式的文档备份。在网络数据中选取事件作为主关键字,将同一事件的网络数据和操作数据进行关联处理,形成一个事件在该单机的完整记录,所有的事件形成一个单机席位事件记录群文档,存储在信息采集数据席位终端库。当一次试验完毕后,将该终端数据库上报到管理服务器数据库。

在服务器数据库端,同样利用事件为主关键字,将与同一事件相关的各个单机所采集的数据记录列为事件全网数据记录表,按席位(单机)进行数据的归类整理,格式统一、集中、关联性强,便于后继进行试验分析。其数据处理体系如图1所示。

3系统设计与实现

3.1系统模块设计

系统共分3大构件,如图2所示。

图2 信息采集系统组成

3.1.1操作数据采集构件

预处理:用于在操作数据采集之前,事先标记指挥信息系统的界面元素,为后续采集提供基础。

HOOK和注册:主要实现采集构件向操作系统的注册,和对需要处理的键盘、鼠标等消息的HOOK。消息监听和日志记录:采取一定的监听策略,过滤掉不需要的和重复的消息事件,针对有代表性和特定意义的进行处理。日志记录则通过写入本地文件及写入网络数据库的方式记录消息事件。

分析处理:采集到的信息是操作人员的对指控系统业务操作序列,通过分析处理,把这些序列组成容易理解的信息。

特定命令响应:能够接收来自网络的特殊命令序列,执行动作。例如采集的开始、结束,采集内容的变化等。

3.1.2网络数据采集构件

网络数据采集构件主要流程:通过更换网络库、网络抓包等手段对数据包进行抓取,通过重新组包、协议解析进行内容的理解,通过日志记录进行内容的存储。

抓包工具:对进出系统的数据进行抓取。

组包工具:用于把采集到的TCP/IP数据包按照协议规范进行正确组包,形成完整的待分析数据包。

协议解析:把待分析数据包按照相关的协议进行解析处理,实现不同专业兵种报文格式解析。

日志记录: 把解析的报文进行记录,方便后续的分析、评估处理。

3.1.3网络数据采集构件

C端数据处理:对单机(客户端)所采集的操作数据和网络数据进行融合、存储并上报到服务器端数据库。所上报的数据为单机的事件为主关键字的数据表。

S端数据处理:对各单机采集的数据以事件为关键字进行分类、关联处理。

3.2系统技术实现

3.2.1操作数据采集的实现

1) 基于设备驱动程序的信息采集。本构件利用设备驱动程序直接从键盘缓冲区和鼠标缓冲区读取底层数据。根据Windows驱动程序创建要求,需要实现DriverEntry()函数,用于生成控制设备,并进行必要的初始化。通过DDK和编译脚本配置,把驱动程序编译成.sys格式,就可以进行调用了,编写了动态库,用于封装对驱动程序的调用。其中动态库实现把驱动程序安装为系统服务,并实现了表1的函数。

表1 接口函数

2) 基于HOOK技术的信息采集。HOOK本质是一段用以处理系统消息的程序,通过系统调用,将其挂入到系统,HOOK机制允许应用程序截获并处理发往指定窗口的消息或特定事件。任何一个HOOK都由系统来维护一个指针列表(钩子链表),其指针指向HOOK的各个处理函数,HOOK处理函数必须是一个回调函数。在使用时可以根据其监视范围的不同将其分为全局和线程两大HOOK类,本构件研究了全局HOOK的实现。为了设置HOOK,只需将回调函数放置于链首即可,操作系统会使其首先被调用。具体实现时由函数SetWindowsHookEx()负责将回调函数放置于HOOK链表的开始位置。如果被监视的事件发生,系统马上会调用位于相应链表开始处的HOOK处理函数进行处理,如果需要把事件传递给下一个处理函数,就通过函数CallNestHookEx()来实现。在过程的最后再调用一次CallNextHookEx( )函数,否则将会引起一些无法预知的系统行为或是系统锁定。最后在使用完毕后应利用函数UnhookWindowsHookEx(),及时将其卸载以释放其所占资源。

3.2.2网络数据采集的实现

本系统使用网络嗅探技术实现网络数据的采集,网络嗅探即SNIFF,工作在网络的底层,在网络上监听数据包来获取敏感信息。其系统调用层级如图3所示。

图3 系统调用层级

本构件采用Wincap库。首先要获取网卡信息,通过函数pcap_findalldevs()返回的pcap_if结构,可以得到探测到的网卡设备的更详尽信息。调用pcap_open_live()打开网卡,使之开始捕获数据,采用回调函数pcap_loop()捕获数据包。利用函数pcap_compile()编译一个包过滤器,过滤需要的包。函数pcap_setfilter() 在核心驱动中将过滤器和捕获过程结合在一起,从这一时刻起,所有网络的数据包都要经过过滤,过滤后的数据包将被传入应用程序。

接着解析数据包,调用的pcap_loop()(或者pcap_dispatch())函数可以进行数据包的捕获,而每一个数据包到达时该函数会调用pcap_handler()函数进行数据包处理,返回一个指向捕获器头部和一个指向帧数据的指针(包含协议头)。

3.2.3数据管理模块的实现

本构件采用C/S两层结构模式的网络数据库,数据库采用SQL,可以方便的对采集的数据进行存储、查询、检索、显示。

1) 数据结构设计。分为操作数据、网络数据、席位数据、服务器端数据结构,以试验的事件(指令或报文)为主关键字,通过席位数据表实现事件的网络数据和操作数据的单机融合,服务器端数据表实现全网数据融合。其表间的关系如图4所示。

2) 数据管理功能设计:在客户端的子数据库可实现对网络数据、操作数据、席位数据3个记录表的储存功能,能自动完成席位数据表的统计功能并上报服务器端。服务器端能实现对各个席位终端对该事件的数据进行管理。

图4 数据记录架构表关系

4系统测试

在进行人在环的指控系统验证时,在各指控终端部署完采集系统后,首先使用对象标识软件进行界面对象的标识。采集开始后,操作日志和网络数据同步采集,提取具有含义的操作记录,经单机数据库存储并上报服务端,融合为全网数据记录。如图5~图8。

图5 操作日志原始记录

图6 操作日志解析结果记录

图7 原始网络数据

图8 解析后的网络数据

5结束语

基于人在环的指控系统验证信息采集技术是人在环试验验证的支撑技术。本文所研究的采集系统在不干扰指控系统运行和人员操作的条件下进行试验信息采集,也可以用于其他信息系统的信息采集,能为信息系统分析评定提供可靠的数据源。下一步需要继续对所采集的信息的分析处理进行深入研究及将本系统拓展应用于指控系统训练成绩评定的研究。

参考文献:

[1]李兴柱,李富荣,张晖.基于信息系统的体系作战能力建设100问[M].北京:国防大学出版社,2011:4-7.

[2]夏永春,吴东亚,尹光洪.指控系统验证相关问题研究[J].装甲兵工程学院学报,2013,27(4):65-69.

[3]包卫东,于云程,沙基昌.C3I快速原型法与试验床[J].小型微型计算机系统,1998,19(5):24-30.

[4]KassRA,AlbertsDS,HayesRE.作战试验及其逻辑[M].北京:国防工业出版社,2010:73-74.

[5]曹小平,程静.基于微信的自助查询系统的设计与实现[J].重庆工商大学学报:自然科学版,2014,31(2):66-69.

[6]王万请,王德全,岳春生.信息采集技术在模拟训练中的应用[J].指挥信息系统与技术,2012,3(2):67-70.

[7]EricColeNetworkSecurityBible,2ndEdition[M].北京:清华大学出版社,2010:99-111.

[8]倪步喜.Windows的钩子技术及实现[J].计算机与现代化,2007,3(1):28-30.

(责任编辑杨继森)

猜你喜欢

信息采集验证
基于Internet的网络化交通信息采集系统
合理猜想,有效验证
如何提高卷烟零售市场信息采集的有效性
小题也可大做
弹药保障需求分析实验模型输出数据的验证研究
汽车外后视镜抖动问题模型的试验验证
HPGe γ谱仪无源效率刻度软件验证