面向轻量级智能变电站信息异常性检测系统及其方法与流程

文档序号:22251892发布日期:2020-09-18 12:56阅读:153来源:国知局
本发明涉及电气系统的智能检测技术,具体涉及一种面向轻量级智能变电站信息异常性检测系统及其方法。
背景技术
::智能变电站是以iec61850协议为基础,变电站内部智能电气设备之间可以共享信息,同时内部智能电气设备间可以互操作的一种新型变电站。变电站的智能化使得智能变电站网络原有的相对封闭性被打破,智能变电站的信息安全成为学术界和工程界广泛关注的对象。为了保障智能变电站的正常运行,辅助运维工作人员进行故障定位和故障分析,很多科研人员都注力于保障智能变电站安全运行方面的研究。市场上现有针对智能变电站配置文件的相关解析系统以及智能变电站信息异常捕捉系统,前者可以独立分析解析变电站配置软件,后者可以捕获智能变电站异常信息。上述现有技术方案没有分析报文故障的原因,没有设置异常报警机制,缺少异常信息的分类记录,不方便多角度的分析异常产生的原因;而且没有将智能变电站异常信息和当前智能变电站配置文件中相关内容相结合,使得运维工作人员更加直观分析故障产生原因和快速故障定位。技术实现要素:本发明的目的在于提供一种面向轻量级智能变电站信息异常性检测系统及其方法。实现本发明目的的技术解决方案为:一种面向轻量级智能变电站信息异常性检测系统,包括系统配置模块、嗅探模块、检测报警工作模块和管理模块,其中:所述系统配置模块用于解析变电站配置文件,与捕捉的报文配置信息进行比对,以及获取智能变电站全部整帧报文信息;所述嗅探模块用于获取实时流经系统的报文信息,进行筛选、分类和保存;所述检测报警模块用于接收数据包goose、smv、mms,与预先设定的异常规则集进行比对报警;所述管理模块用于实现用户权限赋予、值班日志记录和系统数据记录。进一步的,所述系统配置模块包括智能变电站scd文件的导入解析单元和监听网卡单元,其中智能变电站scd文件的导入解析单元用于解析变电站配置文件,和捕捉的报文配置信息进行比对;所述监听网卡单元用于获取智能变电站全部整帧报文信。更进一步的,所述智能变电站scd文件的导入解析单元利用dom4j库解析变电站配置文件,即利用saxreader.read(xmlsource)()读取xml源的文档;document.getrootelement()得到的xml的根元素,利用element.node(index)获得在元素特定索引xml节点,利用element.attributes()获取一个元素的所有属性,从而得到系统所需要的全部节点信息,和捕捉的报文配置信息进行一一比对。进一步的,所述嗅探模块获取的报文信息包括报文appid、源地址、目的地址和侦测时间。进一步的,所述检测报警模块包括goose报警单元、smv报警单元、mms报文报警单元,其中:所述goose报警单元包括goose报文格式和配置检测子单元、goose报文状态变化检测子单元、goose报文中断检测子单元和goose报文测试状态检测子单元;所述smv报警单元包括smv报文格式和配置错误检测子单元、smv报文中断和抖动检测子单元、smv报文不同步检测子单元和smv报文品质因数变化检测子单元;所述mms报文报警单元包括mms报文格式错误检测子单元。进一步的,所述管理模块包括用户管理单元、管理人日志单元和文档管理单元,其中用户管理单元用于实现用户权限赋予;所述管理人日志单元用于实现值班日志记录;所述文档管理单元用于实现系统数据记录。进一步的,利用javafx为智能变电站信息异常性检测系统开发图形化操作界面。一种面向轻量级智能变电站信息异常性检测方法,包括如下步骤:系统配置模块解析变电站配置文件,与捕捉的报文配置信息进行比对,同时获取智能变电站全部整帧报文信息;嗅探模块获取实时流经系统的报文信息,进行筛选、分类和保存;检测报警模块接收数据包goose、smv、mms,与预先设定的异常规则集进行比对报警;管理模块进行用户权限管理、值班日志记录和系统数据记录。一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:系统配置模块解析变电站配置文件,与捕捉的报文配置信息进行比对,同时获取智能变电站全部整帧报文信息;嗅探模块获取实时流经系统的报文信息,进行筛选、分类和保存;检测报警模块接收数据包goose、smv、mms,与预先设定的异常规则集进行比对报警;管理模块进行用户权限管理、值班日志记录和系统数据记录。一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:系统配置模块解析变电站配置文件,与捕捉的报文配置信息进行比对,同时获取智能变电站全部整帧报文信息;嗅探模块获取实时流经系统的报文信息,进行筛选、分类和保存;检测报警模块接收数据包goose、smv、mms,与预先设定的异常规则集进行比对报警;管理模块进行用户权限管理、值班日志记录和系统数据记录。与现有技术相比,本发明具有如下有益效果:结合当前智能变电站配置文件对智能变电站系统的信息异常检测报警,反馈信息运行状态,实现了异常信息的多样性分类记录,能够协助运维工作人员进行在线分析、故障定以及事后对该类异常信息的总结归纳,为运维人员提供有意义、有规律的信息总结,为未来异常性信息安全检测、修复提供一个有力的基础技术支持,在工程上具有一定的应用价值。附图说明图1为系统整体设计框架图;图2为系统主界面图;图3为系统模块界面图;图3(a)为scd配置文件导入解析图,图3(b)为嗅探模块界面图,图3(c)为异常报文具体信息图,图3(d)为用户管理图;图4系统登录配置图图4(a)为登录界面图,图4(b)为配置成功界面图;图5为系统异常检测报警图图5(a)为goose报文状态改变检测报警图,图5(b)为goose报文中断检测报警图,图5(c)为goose报文重启检测报警图,图5(d)为smv报文中断异常检测报警图,图5(e)为smv丢失异常检测报警图,图5(f)为smv非同步异常检测报警图,图5(g)为系统检测异常文档图。具体实施方式为进一步阐述本发明所采取的技术手段及其效果,以下结合实施例和附图对本发明作进一步地说明。可以理解的是,此处所描述的具体实施方式仅仅用于解释本发明,而非对本发明的限定。本发明提供的智能变电站信息异常性检测系统,包括系统配置模块、嗅探模块、检测报警模块和管理模块,其中:所述系统配置模块包括智能变电站scd文件的导入解析单元和监听网卡单元。所述智能变电站scd文件的导入解析单元用于解析当前智能变电站配置文件,和捕捉到的报文配置信息进行比对。本发明中,智能变电站scd文件的导入解析功能是智能变电站的配置文件导入,检测系统解析当前配置文件,以便于检测报警模块的正常使用。由于智能变电站scd配置文件是用scl语言编写的,它在语法上符合xml语言,所以要对scd文件进行解析,才可以进行报文内容配置的检测,本发明利用dom4j库解析配制文件,利用saxreader.read(xmlsource)()读取xml源的文档;document.getrootelement()得到的xml的根元素,利用element.node(index)获得在元素特定索引xml节点,利用element.attributes()获取一个元素的所有属性。从而得到系统所需要的全部节点信息,和捕捉的报文配置信息进行一一比对。所述监听网卡单元用于获取流经智能变电站全部整帧报文信息。根据本发明,在默认情况下网卡设备会提前分析流经的报文,只有目的地址是本地的才接受,而其他的则一律丢弃;在混合模式下,只要经过网卡,无论报文地址、格式、目的地址,凡是流经该网卡都会被接收,所以网络适配器需要设置成混杂模式,以便获取全部整帧报文信息。所述嗅探模块用于截获内容有报文appid、源地址、目的地址和侦测时间,方便运维人员在线观测信息数据。所述嗅探模块还用于保存实时流经系统的信息,当运维人员需要参考归总当前数据信息时,可以按下相应按钮,实现该功能,按需保存的功能可以减小内存压力。同时,该模块将嗅探到的报文信息按照当前智能变电站系统appid进行筛选,之后按照时间统计分类,这样运维观测人员可以选择具体某一设备,重点检测该设备各类报文流量,从而能对系统报文信息深入解析。所述嗅探模块启动同时,系统实时计数报文数量,并且以折线图的形式在主页面显示。所述检测报警模块包括goose报警单元、smv报警单元和mms报警单元,用于接收数据包goose、smv、mms,并与预先设定的异常规则集进行比对,当数据包与某个规则相符的时候,才会报警记录日志;若数据包与任意一条规则都不匹配时,它将会被丢弃,不会在整个系统留下任何记录,这样可以减轻整体系统数据存储压力,避免浪费存储资源。所述goose报警单元包括goose报文格式和配置错误检测子单元、goose报文状态变化检测子单元、goose报文中断检测子单元和goose报文测试状态检测子单元。所述smv报警单元包括smv报文格式和配置错误检测子单元、smv报文中断和抖动检测子单元、smv报文不同步检测子单元和smv报文品质因数变化检测子单元。所述mms报文报警单元包括mms报文格式错误检测子单元。运维人员可以按照报文appid、mac、错误类型、侦测时间等多种排序对异常信息进行查看,为异常统计和分析提供了许多便捷性,方便运维人员快速定位异常。运维人员对当前异常信息结合scd文件解析内容进行查看和处理后,可以给出处理意见和系统记录,方便其他运维人员汇总分析。所述模块开启时,系统主界面以扇形统计图形式对检测报警信息进行实时分类记录以及对报警处理进度实时记录。所述管理模块包括用户管理单元、管理人日志单元和文档管理单元。所述用户管理单元就是对用户权限的赋予,admin权限最高,可以执行本系统全部功能,可以新增用户,赋予不同的用户属性;user不能修改其他用户名和密码,但是可以使用嗅探、检测和意见管理功能;guest只有浏览功能,不能操作系统。所述管理人日志单元用于实现正常运维工作人员的值班日志填写,他人不能对管理人日志进行随意篡改和删除。所述文档管理单元用于实现对系统的数据保存,查看数据文件。实施例为了验证本发明方案的有效性,进行如下仿真实验。利用javafx为智能变电站信息异常检测系统开发了图形化操作界面,通过图形化界面的简单操作可以完成配置系统文件和参数,开启/关闭检测(包括嗅探模式和检测报警模式)以及填写日志与查看系统记录文件的功能。为了使用人员方便操作和查看检测结果,在各种界面中均按照常用的表现方式选择相应的控件实现对应功能。在系统配置模块里对智能变电站配置文件scd、网卡模式进行配置,然后开启整个检测系统。智能变电站内部报文被系统捕获后,正常报文可以在嗅探模块作用下实时滚动在监测系统嗅探界面上,异常报文会在检测报警模块中发出警报,记录在管理模块下的异常报文类中,运维工作人员可以实时查看报文异常信息,也可以事后离线查看。运维工作人员在进行异常处理后会有相应日志记录人员动作。测试系统的运行环境是在windows中安装javadeveloptoolkit(jdk)1.8,将jdk附带的runtimeenvironment(jre)的二进制文件目录(/bin)配置在系统环境变量里,将数据包抓取中间件jpcap的动态链接库(dll)及java类库(jar)集成到该jdk中。硬件配置采用8g内存,500g硬盘,i5-10210ucpu。在智能变电站实验系统正常运行时,基本不会产生异常数据。在本发明的系统的性能及其功能测试中,使用npi-801测试工具,它可以模拟真实状况中单路或者多路的goose、smv报文的发送功能及其goose报文接收功能。测试人员根据自己的需要可以选择组合一些报文状态,从而可以模拟真实情况下的各种事件以及报文发生异常时的状况,但是与实际智能变电站信息系统相比,信息流较为简单,数据量较少。(1)系统整体模块设计该检测系统由一个主界面及其4个窗口界面组成,分别为:系统配置界面,嗅探模式工作界面,检测报警工作界面和管理界面。通过图形化界面的简单操作可以完成配置系统参数,开启/关闭检测(包括嗅探模式和检测报警模式)以及填写处理意见的功能。在各种界面中均按照常用的表现方式选择相应的控件实现对应功能,为了使用人员方便操作和查看检测结果,在实施例中利用javafx为智能变电站网络异常检测功能开发了图形化操作界面应用软件。javafx是java为图形界面提供的一组新型工具包,包含了窗口、标签、按钮、文本框、密码框等很多内置控件,可以很好地兼容跨平台。整个程序显示窗口利用javafxscenebuilder设计,界面清晰明了,系统整体框如图1所示。(1)配置界面:使用javafx.stage.filechooser作为资源管理器的入口,用于选择信息存储路径及scd文件路径;使用javafx.scene.control.textfield控件显示文件路径;使用javafx.scene.control.radiobutton和javafx.scene.control.choicebox两个组件实现网卡选择。(2)嗅探模式界面、检测报警模式界面以及管理模式界面均使用javafx.scene.control.radiobutton控件实现用户操作按钮;使用javafx.scene.control.tablecolumnu和javafx.scene.control.tableview呈现嗅探模式所检测到的数据内容,用javafx.scene.chart.linechart、javafx.scene.chart.categoryaxis、javafx.scene.chart.linechartnumberaxis进行图形化展示。(2)系统各模块功能及实现本实施例设计的智能变电站信息异常性检测系统由4个模块构成,主界面如图2所示。配置模块设计在配置模块中,主要分为两个功能,智能变电站配置文件scd的配置和监听网卡的配置。(1)scd配置文件的导入解析如图3(a)所示,智能变电站scd文件的导入解析功能是智能变电站的配置文件导入,检测系统解析当前配置文件,以便于检测报警模块的正常使用。因为智能变电站scd配置文件是用scl语言编写的,它在语法上符合xml语言,所以要对scd文件进行解析,才可以进行报文内容配置的检测。本实施例使用dom4j库来实现这一功能。利用saxreader.read(xmlsource)()读取xml源的文档。document.getrootelement()得到的xml的根元素。element.node(index)获得在元素特定索引xml节点。element.attributes()获取一个元素的所有属性。从而得到系统所需要的节点信息,和捕捉的报文配置信息进行比对。(2)监听网卡的配置因为在默认情况下网卡设备会提前分析流经的报文,只有目的地址是本地的才接受,而其他的则一律丢弃;在混合模式下,只要经过网卡,无论报文地址、格式、目的地址,凡是流经该网卡都会被接收,所以网络适配器需要设置成混杂模式,以便获取全部整帧报文信息。嗅探模块设计在成功配置当前系统scd文件和选择监听网卡后,就可以点击嗅探模式按钮,系统进入嗅探模式。点击“未启动”按钮就可以从网络上读取数据包信息,并且在窗口滚动实时显示,直到检测人员点击“已启动”按钮终止嗅探模式。本系统采用jpcapcaptor.opendevice方法开启监听网,jpcapcaptor.looppacket方法启动抓包。为looppacket方法的参数接口packetreciver设计了两个实现类,分别用于在嗅探模式和警报模式进行数据包的处理。系统将捕捉到报文信息根据以太网类型就可以区别三类报文。不符合三类报文的信息直接丢弃,这样可以避免造成系统数据流量过大,检测时间变长。检测系统按下嗅探模式界面开启按键,系统界面显示所路径报文如图3(b)所示,是嗅探模式下的界面截图,截获内容有报文appid、源地址、目的地址、侦测时间等一系列数据信息,这样方便于运维人员在线观测信息数据。嗅探模式下增加可以保存当前流经系统的信息的功能,当运维人员需要参考归总当前数据信息时,可以按下相应按钮,实现该功能,按需保存的功能可以减小内存压力。同时,该模块将嗅探到的报文信息结合当前变电站配置文件的解析结果,系统能够按照智能变电站系统设备appid进行筛选,之后按照时间统计分类,这样运维观测人员可以选择具体某一设备,重点检测该设备各类报文流量,从而能对系统报文信息深入解析。嗅探模块启动同时,系统实时计数报文数量,并且以折线图的形式在主页面显示。检测报警模块设计检测报警模块:对比接收到的三类数据包goose、smv、mms与之前设定的异常规则集以发现网络通信的异常行为。当数据包与某个规则相符的时候,才会报警记录日志;若数据包与任意一条规则都不匹配时,它将会被丢弃,不会在整个系统留下任何记录,这样可以减轻整体系统数据存储压力,避免浪费存储资源。(1)goose报警检测单元goose报文报警检测单元分为4大类,第一类goose报文格式/配置错误检测子单元。在此规则下,定义了报文长度错误goose_length_error、报文tlv解码错误goose_tlv_encoding_error、报文配置错误goose_scd_mismatch。第二大类为goose报文状态变化检测子单元。在此规则下定义了goose报文重启goose_restart、goose报文虚变goose_status_change、goose报文乱序goose_dummy_change)。第三大类为goose报文中断检测子单元。在此规则下定义了goose报文中断goose_interrupted。第四大类为goose报文处于测试状态检测子单元,在此规则下定义了goose_test,该功能的判断只需要在goose报文格式配置状态都正常时候检测gooseapdu.test==1就可以判断。(2)smv报警检测单元第一大类smv报文格式/配置错误报警检测子单元。在此规则下,定义了报文长度错误smv_length_error、报文tlv解码错误smv_tlv_encoding_error、报文配置错误smv_scd_mismatch。第二大类smv报文中断/抖动检测子单元。在此规则下定义了smv中断smv_lost。第三大类smv报文不同步检测子单元。在此规则下定义了报文不同步异常smv_mv_nsynchronous。第四大类smv报文品质因数变化检测子单元。在此规则下定义了smv_validity。(3)mms报文报警检测单元mms报文格式错误检测子单元,在此规则下定义了mms报文格式错误mms_asn_error。点击“未启动”按钮,开启异常检测模式,点击同一按钮,停止检测报警模式。在此过程中,若有异常数据包经过,将会被捕捉记录,生成相应的日志文件。运维人员可以按照appid、mac、错误类型、侦测时间等多种排序对异常信息进行查看,为异常统计和分析提供了许多便捷性,方便运维人员快速定位异常。双击任一异常报文信息,通过给检测表格的行添加监听方法对控件事件进行处理,弹出异常报文的具体信息,如图3(c)所示。运维人员对当前异常信息结合scd文件解析内容进行查看和处理后,可以给出处理意见和系统记录,方便其他运维人员汇总分析。同时系统主界面以扇形统计图形式对检测报警信息进行分类以及对报警处理进度实时记录。管理模块设计管理模块设计分为三个部分,用户管理单元,管理人日志单元以及文档管理单元。(1)用户管理就是用户权限的赋予和建立。点击设置按钮,可以对不同的运维工作人员设置不同的权限。其中admin权限最高,可以新增用户,赋予不同的用户属性,使用系统的所用功能;user不能修改其他用户名和密码,但是可以使用嗅探、检测和意见管理功能;guest只有浏览功能,不能操作系统。具体操作功能如图3(d)所示。(2)管理人日志就是当前运维工作人员可以记录对报警异常信息的处理结果和方法或者当前值班日志。点击“添加”按钮,填写当前日志,一旦成功提交,无法修改。同时也不能进行空白填写。这样可以防止其他非正常运维工作人员对管理人日志内容进行随意篡改和删除。(3)文档管理可以查阅当前保存的数据文件,这个功能只能是admin来执行,以防止文件内容被删改或移除。点击“查看数据文件”按钮,可以进入数据文件库中,文档中有四个excel文件,包括用户账号文件user、正常信息文件message、异常信息文件alert和管理人日志文件opinion。这四个文件可以方便其他运维工作人员随时查询工作记录,了解系统运行状态。userexcel表中定义了用户编号userid、用户账号username、用户密码password,用户角色role。messageexcel表中定义了正常信息编号msgid、正常信息idappid、正常信息源ip目的地址mac、正常报文存储路径filepath、正常报文捕获时间time、正常报文类型type。alertexcel表中定义了异常信息编号alertid、异常报文类型alerttype、异常报文捕获时间time、当前异常信息的标注opinion、异常信息源ip目的地址mac、异常信息idappid、异常报文存储路径filepath。opinionexcel表中定义了日志编号opinionid、日志时间time、日志内容content。数据库采用基于apache.poi类库,以excel文件作为数据存储介质的自行设计开发的轻量级数据库。数据持久层完整实现了传统数据库基础的增、删、改、查功能,同时便于非专业人员进行数据分析,也弥补了传统数据库需要另外安装部署的问题。(3)智能变电站信息异常检测系统测试步骤第一步运维相关人员登录智能变电站信息异常监测系统需要进行密码登录操作,如图4(a)所示,只有登录成功才可进入系统的主要操作页面。同时不同的用户拥有不同的权限,在这里可以选用admin权限,以获得最大化测试系统功能。若用户名密码不统一,或者无该用户名,无法进入系统。第二步在配置模块中把网卡选择为混合网卡模式,把当前变电站的scd文件导入到系统中并且正确解析。如图4(b)所示。若当前scd文件错误或者系统解析scd文件失败,系统无法进入嗅探和检测模式。点击“嗅探模式”按钮,在智能变电站系统运行正常状态下,智能变电站信息异常监测系统不会发出警报,嗅探模式窗口会实时显示路经报文信息。第三步进行典型异常信息检测。点击“检测模式”按钮,系统进入检测功能。(4)智能变电站信息异常检测系统测试结果本实施例用几个典型的异常来测试系统功能,如表1所示。表1测试用例(1)goose报文状态改变在正常发送状态下,改变报文数据集内任何一处内容,goose报文状态就会发生改变,检测结果如图5(a)所示。(2)goose中断状态测试原理:在此种情况下,点击报文发送按钮,保证其他配置正确和报文格式正确。将测试软件的停止发送状态按钮按下,则达到goose中断状态异常测试条件。系统检测出该异常信息,发出警报如图5(b)所示。(3)goose报文重启状态测试原理:继续按下发送按钮,则goose报文又进入重启测试过程。达到goose重启状态异常测试条件。系统检测出该异常信息,发出警报如图5(c)所示。(4)smv报文中断异常检测测试原理:在smv正常发送的过程中,点击停止发送,就达到smv中断异常测试条件。系统检测该异常警报信息,发出警报如图5(d)所示。(5)smv报文丢包异常检测测试原理:在smv报文发送过程中,点击模拟丢帧模式按钮,丢包异常检测条件达成,测试结果如图5(e)所示。检测系统发出smv丢包异常警报。(6)smv非同步异常检测测试过程:在正常发送中将同步域值改变,不为ture即可,则非同步异常测试条件达成。测试结果如图5(f)所示。检测系统发出smv非同步异常警报。经过验证,测试用例均能通过测试。测试结束后,该系统数据文档记录如下文档如图5(g)所示。系统可以成功记录该系统信息,并且可以根据异常对系统信息人工判断原因。综上所述,本发明应用java程序设计语言在windows平台上开发了智能变电站信息异常检测系统,所述系统包括四大功能模块,即配置模块、嗅探模块、检测报警模块以及管理模块,并对所述智能变电站信息异常监测系统的测试与验证,验证了设计的信息异常规则正确且系统功能有效。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1