CN104092581A - 智能变电站报文记录与分析系统中报文快速处理方法 - Google Patents
智能变电站报文记录与分析系统中报文快速处理方法 Download PDFInfo
- Publication number
- CN104092581A CN104092581A CN201410302405.0A CN201410302405A CN104092581A CN 104092581 A CN104092581 A CN 104092581A CN 201410302405 A CN201410302405 A CN 201410302405A CN 104092581 A CN104092581 A CN 104092581A
- Authority
- CN
- China
- Prior art keywords
- message
- intelligent substation
- messages
- ring
- analyzing system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开一种智能变电站报文记录与分析系统中报文快速处理方法,系统网卡驱动的修改方法能迅速把报文从链路层推送至PF_RING报文捕获模块;在PF_RING模块中引入的报文过滤方法能结合智能化变电站报文特征,快速对智能化变电站报文进行分类,从而使报文记录与分析系统对不同类型报文进行存储及处理;共享内存创建及配置方法能使报文记录与分析系统更为稳定高效;报文分配机制有效地减少了内存空间切换及内容检验所需开销,提高了报文向应用分配的效率。本发明为智能变电站的报文记录与分析系统提供高效的报文处理机制,实现快速捕获并过滤报文,迅速地把过滤后的各种报文分类并及时传递到各应用程序,实现智能变电站监控及数据分析的高效应用。
Description
技术领域
本发明涉及报文快速处理方法,尤其是涉及一种智能变电站报文记录与分析系统中报文快速处理方法。
背景技术
智能变电站报文记录与分析系统依赖于报文的捕获。传统的报文捕获机制包含三个主要部分:一是针对特定操作系统的包捕获机制;二是针对用户程序的接口;三是包过滤机制。不同的操作系统实现的包捕获机制可能不一样,但形式上基本相同。数据包常规的传输路径依次为:网卡、设备驱动层、数据链路层、IP网络层、传输层、应用程序,而报文捕获机制是在数据链路层增加一个旁路处理,对发送和接收到的数据包做过滤/缓冲等相关处理,最后直接传递到应用程序,报文捕获机制并不影响操作系统对数据包的网络协议栈处理。对应用程序而言,由报文捕获机制提供统一的接口,使应用程序只需简单的调用若干函数就能获得所需数据包。包过滤机制是对所捕获到的数据包根据用户的要求进行筛选,最终把过滤后的数据包传递给应用程序,其最典型的应用即:对不同类型的报文,先进行过滤分类,再分别进行数据传输。虽然传统的报文捕获机制不影响操作系统对数据包的网络协议栈处理,但由于该机制需要从链路层额外拷贝,并且当应用程序调用接口获得该报文时,需要从用户空间切换到内核空间,并把数据从内核空间拷贝到用户空间,整个过程耗时较长。智能变电站的报文记录和分析系统需对站内高负荷网络环境的全景数据进行存储及实时分析,显然传统的报文捕获机制会不堪重负,甚至会出现大量丢包的问题。
智能变电站的主要特征之一就是以交换式以太网和光缆组成的网络通信系统替代以往的二次连接电缆和回路,过程层、间隔层、站控层之间都是按IEC 61850标准的协议进行通信。IEC61850按照变电站自动化系统所要完成的监测、保护和控制三大功能,从逻辑上及物理上将系统分成三层:站控层、间隔层和过程层。站控层设备(监控系统,远动系统等)与间隔层设备之间采用IEC61850进行通信,实现网络共用,信息共享。间隔层IED(保护、测量装置、计量装置等)和过程层IED(如合并单元、智能单元等)通过发布/订阅模式通信,主要完成传输间隔层装置需要的采样值(SMV)和开关值(GOOSE)。
间隔层内IED数据收发以TCP/IP方式进行,在应用层选择制造报文规范(MMS)作为应用层协议与变电站监控系统通信,其映射一般遵循 MMS +TCP/IP+ISO/IEC802.3模式。过程层向间隔层传送的数据主要包括:采样测量值(SMV报文)和分合闸操作命令(GOOSE报文)等。这些报文都有很高的实时性要求且传输数据量巨大,因此SMV报文和GOOSE报文均采用二层以太网多播的形式传播。由于间隔层内存在着大量的数字化设备,以及这些设备需要实时地提供SMV报文,所以在间隔层内存在着大量的SMV报文和少数GOOSE报文。例如,在大型变电站中,间隔层SMV的总流量能达到每秒几百兆的规模,占报文总量的95%以上,而GOOSE则可能是每秒几兆。当然还存在着少数的MMS,PTP报文等。
报文记录与分析系统中针对不同类型的报文提供了不同应用程序。例如通过GOOSE监控应用程序就能掌握整个变电站中的事件及其发生时间;而SMV监控应用程序则能及时发现电压,电流的有效值、相位等。由于报文负荷的严重不均,这就迫切需要一个高效的包过滤机制,能快速地把各种报文分类,并分派到各个不同应用。而传统的过滤机制,在应用层对所有捕获的报文进行过滤,这对于GOOSE,MMS,PTP等报文监控,是十分低效的行为。
发明内容
本发明的目的在于提供一种智能变电站报文记录与分析系统中报文快速处理方法,该方法为智能变电站报文记录与分析系统提供高效的报文处理机制,实现快速捕获并过滤报文,迅速地把过滤后的各种报文分类并及时传递到各应用程序,实现智能变电站监控及数据分析的高效应用。
本发明的目的是这样实现的:
一种智能变电站报文记录与分析系统中报文快速处理方法:包括下列步骤:
A、修改网卡驱动:根据不同的硬件驱动代码,修改数据包获取函数,将数据包推送给PF_RING;
B、在PF_RING模块中管理共享内存:为应用程序提供统一的共享内存管理接口,SMV、GOOSE、MMS、PTP应用程序通过PF_RING模块创建或销毁共享内存;
C、在PF_RING模块中将数据包分类:在PF_RING模块中,将数据包快速分类成:SMV,GOOSE,MMS,PTP报文,并将分好类的报文写入SMV、GOOSE、MMS、PTP应用程序对应的共享内存;
D、实现标准的linux socket系统调用:上层应用程序通过这些socket系统调用,从对应的共享内存中获取数据并进行分析,判断是否发生了异常事件。
本发明的系统网卡驱动的修改方法能迅速把数据包从链路层推送至PF_RING报文捕获模块,PF_RING是一种全新的网络套接字类型,因其内部采用环状的共享内存,故命名为RING(PF是Protocol Family的简写);在PF_RING模块中引入的报文过滤方法能结合智能化变电站报文特征,快速对智能化变电站报文进行分类,从而使报文记录与分析系统对不同类型报文进行存储及处理;共享内存创建及配置方法结合智能化变电站报文的类型创建不同的共享内存并灵活的接受上层应用的配置,使报文记录与分析系统更为稳定高效;报文分配机制通过消息通知机制,有效地减少了内存空间切换及内容检验所需开销,提高了报文向应用分配的效率。
本发明利用内存共享,实现了内核与用户空间直接共享数据,避免了内核与用户空间需要来回切换,网络数据经过多次拷贝才能抵达用户空间的耗时问题。该方法同时为上层监控,分析程序提供了快速无损的数据过滤平台,可以高效的将不同类型的数据分配至相关应用,极大地提高了对智能化变电站网络报文的处理速度,实现了整站全景数据的分析处理。本发明作为一个高效、无损的报文处理平台,用于报文的高效捕获、分类及向不同应用的分配,这个平台不仅提供了高效的捕获数据手段,同时最大程度地兼容了各种硬件,针对不同地硬件平台,只需修改底层相应的网卡驱动便能将整个报文记录与分析系统移植到对应的硬件平台。该发明为报文记录与分析系统的上层监控,分析应用的快速开发提供了保证,使得上层应用的设计与实现无需考虑底层硬件的差异,使得应用移植更加快速、稳定。
因此,本发明具有为智能变电站报文记录与分析系统提供高效的报文处理机制、实现快速捕获并过滤报文、迅速地把过滤后的各种报文分类并及时传递到各应用程序、实现智能变电站监控及数据分析的高效应用的优点。
附图说明
图1为本发明的PF_RING模块捕获机制示意图;
图2为本发明的智能变电站报文快速处理方法示意图。
具体实施方式
下面结合实施例并对照附图对本发明作进一步详细说明。
一种智能变电站报文记录与分析系统中报文快速处理方法,包括下列步骤:
A、修改网卡驱动:在PF_RING模块中实现一个统一的接口供网卡驱动调用。在PF_RING的初始化函数ring_init中,通过linux的网络接口register_netdevice_notifier将该接口以钩子的形式注册到网卡的驱动程序中,最后修改系统网卡的驱动程序,使网卡驱动在接收到数据包后,立即调用PF_RING注册的钩子将二层包推送给PF_RING;通过以上方法,即使更换了不同类型的网卡,也只需要修改网卡驱动这一个点,就能将整个平台移植过去。
B、在PF_RING模块中管理共享内存:SMV、GOOSE、MMS、PTP应用程序通过打开网卡设备,通知PF_RING模块将使用什么类型的报文;当应用程序通过mmap创建共享内存时,PF_RING模块根据该应用程序指定的大小创建对应的共享内存,并根据该应用程序使用的报文的类型,为该共享内存生成一个掩码;
C、在PF_RING模块中将数据包分类:PF_RING模块在接收到二级报文以后,根据二级报文的格式,仅对二级报文头进行解码。根据报文头的以太网类型,快速地识别出报文的具体类型;接着根据报文的具体类型,生成一个位掩码;最后通过将该掩码与PF_RING模块中所有的共享内存的掩码进行与运算,将报文写入所有满足条件的共享内存中;
D、实现标准的linux socket系统调用:应用程序通过poll系统调用,可以第一时间接受到PF_RING模块的通知,知道共享内存中有数据可读;接着通过read系统调用,应用程序就能从共享内存中将数据取出,对报文进行具体的分析。例如,SMV可以对采样值的电压、电流进行分析,判断是否有过压、过流发生。
Claims (1)
1.一种智能变电站报文记录与分析系统中报文快速处理方法,包括下列步骤:
A、修改网卡驱动:根据不同的硬件驱动代码,修改数据包获取函数,将数据包推送给PF_RING;
B、在PF_RING模块中管理共享内存:为应用程序提供统一的共享内存管理接口,SMV、GOOSE、MMS、PTP应用程序通过PF_RING模块创建或销毁共享内存;
C、在PF_RING模块中将数据包分类:在PF_RING模块中,将数据包快速分类成:SMV,GOOSE,MMS,PTP报文,并将分好类的报文写入SMV、GOOSE、MMS、PTP应用程序对应的共享内存;
D、实现标准的linux socket系统调用:上层应用程序通过这些socket系统调用,从对应的共享内存中获取数据并进行分析,判断是否发生了异常事件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410302405.0A CN104092581A (zh) | 2014-06-30 | 2014-06-30 | 智能变电站报文记录与分析系统中报文快速处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410302405.0A CN104092581A (zh) | 2014-06-30 | 2014-06-30 | 智能变电站报文记录与分析系统中报文快速处理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104092581A true CN104092581A (zh) | 2014-10-08 |
Family
ID=51640263
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410302405.0A Pending CN104092581A (zh) | 2014-06-30 | 2014-06-30 | 智能变电站报文记录与分析系统中报文快速处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104092581A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104378439A (zh) * | 2014-11-24 | 2015-02-25 | 上海许继电气有限公司 | 基于共享内存实现变电站装置信息实时传输的系统及方法 |
CN105138278A (zh) * | 2015-07-27 | 2015-12-09 | 云南电力调度控制中心 | 一种智能变电站网络报文的裸盘存储方法 |
CN106656658A (zh) * | 2016-11-17 | 2017-05-10 | 许继集团有限公司 | 一种变电站信息推送系统 |
CN107171895A (zh) * | 2017-07-01 | 2017-09-15 | 浙江省计量科学研究院 | 一种通信网络数据流量测量方法 |
CN107332725A (zh) * | 2016-04-29 | 2017-11-07 | 广东电网有限责任公司电力调度控制中心 | 一种快速解析pcap报文的方法 |
CN110290198A (zh) * | 2019-06-21 | 2019-09-27 | 上海东土远景工业科技有限公司 | 一种goose报文发送方法及装置 |
CN111953568A (zh) * | 2020-08-19 | 2020-11-17 | 杭州迪普科技股份有限公司 | 丢包信息管理方法与装置 |
CN112532690A (zh) * | 2020-11-04 | 2021-03-19 | 杭州迪普科技股份有限公司 | 一种报文解析方法、装置、电子设备及存储介质 |
CN113839889A (zh) * | 2021-09-18 | 2021-12-24 | 深圳震有科技股份有限公司 | 一种报文处理方法、终端及计算机可读存储介质 |
WO2023040412A1 (zh) * | 2021-09-18 | 2023-03-23 | 华为技术有限公司 | 一种报文处理方法、网卡及服务器 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5673394A (en) * | 1990-10-31 | 1997-09-30 | Microsoft Corporation | Method of sharing memory between an operating system and an application program |
CN101178694A (zh) * | 2006-11-07 | 2008-05-14 | 莱克斯信息技术(北京)有限公司 | Intel e1000零拷贝的方法 |
CN101841470A (zh) * | 2010-03-29 | 2010-09-22 | 东南大学 | 一种基于Linux的底层数据包的高速捕获方法 |
-
2014
- 2014-06-30 CN CN201410302405.0A patent/CN104092581A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5673394A (en) * | 1990-10-31 | 1997-09-30 | Microsoft Corporation | Method of sharing memory between an operating system and an application program |
CN101178694A (zh) * | 2006-11-07 | 2008-05-14 | 莱克斯信息技术(北京)有限公司 | Intel e1000零拷贝的方法 |
CN101841470A (zh) * | 2010-03-29 | 2010-09-22 | 东南大学 | 一种基于Linux的底层数据包的高速捕获方法 |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104378439A (zh) * | 2014-11-24 | 2015-02-25 | 上海许继电气有限公司 | 基于共享内存实现变电站装置信息实时传输的系统及方法 |
CN105138278A (zh) * | 2015-07-27 | 2015-12-09 | 云南电力调度控制中心 | 一种智能变电站网络报文的裸盘存储方法 |
CN105138278B (zh) * | 2015-07-27 | 2018-05-25 | 云南电力调度控制中心 | 一种智能变电站网络报文的裸盘存储方法 |
CN107332725B (zh) * | 2016-04-29 | 2020-10-16 | 广东电网有限责任公司电力调度控制中心 | 一种快速解析pcap报文的方法 |
CN107332725A (zh) * | 2016-04-29 | 2017-11-07 | 广东电网有限责任公司电力调度控制中心 | 一种快速解析pcap报文的方法 |
CN106656658A (zh) * | 2016-11-17 | 2017-05-10 | 许继集团有限公司 | 一种变电站信息推送系统 |
CN107171895A (zh) * | 2017-07-01 | 2017-09-15 | 浙江省计量科学研究院 | 一种通信网络数据流量测量方法 |
CN110290198A (zh) * | 2019-06-21 | 2019-09-27 | 上海东土远景工业科技有限公司 | 一种goose报文发送方法及装置 |
CN110290198B (zh) * | 2019-06-21 | 2022-03-04 | 上海东土远景工业科技有限公司 | 一种goose报文发送方法及装置 |
CN111953568A (zh) * | 2020-08-19 | 2020-11-17 | 杭州迪普科技股份有限公司 | 丢包信息管理方法与装置 |
CN111953568B (zh) * | 2020-08-19 | 2022-04-08 | 杭州迪普科技股份有限公司 | 丢包信息管理方法与装置 |
CN112532690A (zh) * | 2020-11-04 | 2021-03-19 | 杭州迪普科技股份有限公司 | 一种报文解析方法、装置、电子设备及存储介质 |
CN113839889A (zh) * | 2021-09-18 | 2021-12-24 | 深圳震有科技股份有限公司 | 一种报文处理方法、终端及计算机可读存储介质 |
WO2023040412A1 (zh) * | 2021-09-18 | 2023-03-23 | 华为技术有限公司 | 一种报文处理方法、网卡及服务器 |
CN113839889B (zh) * | 2021-09-18 | 2024-04-05 | 深圳震有科技股份有限公司 | 一种报文处理方法、终端及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104092581A (zh) | 智能变电站报文记录与分析系统中报文快速处理方法 | |
EP3072260B1 (en) | Methods, systems, and computer readable media for a network function virtualization information concentrator | |
CN110855493B (zh) | 用于混合环境的应用拓扑图绘制装置 | |
CN107800554B (zh) | 数据采集方法、装置和系统 | |
US8478714B2 (en) | Integrated distribution management system channel adapter | |
CN102638453B (zh) | 一种基于Linux系统服务器的语音数据内核转发方法 | |
CN103166933A (zh) | 一种数据安全交换系统及方法 | |
CN102955977A (zh) | 一种基于云技术的能效服务方法及其能效服务平台 | |
CN110868349B (zh) | 物联网环境下分布式高并发数据采集与处理方法及系统 | |
CN103095498B (zh) | 话单采集方法和系统 | |
CN103581966A (zh) | 一种智能手机实时监测优化配置方法 | |
CN108574627B (zh) | 一种sdn网络多控制域协同管理方法和系统 | |
US20120109663A1 (en) | Advanced Metering Infrastructure Event Filtering | |
CN101753584A (zh) | VxWorks系统下提高智能变电站快速报文处理速度的方法 | |
CN103400220A (zh) | 一种网络设备信息的采集、分类以及固定标识的方法 | |
CN109493251B (zh) | 一种电力无线公网监控系统 | |
CN105227403A (zh) | 一种OpenStack网络流量监控方法 | |
CN105357662A (zh) | 用电现场采集sim卡检测系统 | |
CN110989537A (zh) | 生产数据处理方法、设备、介质及系统 | |
Shen et al. | Standardizing the Internet of Things in an evolutionary way | |
CN116431324A (zh) | 一种基于Kafka高并发数据采集与分发的边缘系统 | |
CN112491596B (zh) | 一种基于云端的故障处理方法及装置 | |
CN105930295B (zh) | 一种智能变电站二次设备即插即用的方法及装置 | |
CN107332725B (zh) | 一种快速解析pcap报文的方法 | |
CN104578404A (zh) | 一种电力系统二次设备在线监测系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20141008 |