本发明涉及一种解析pcap报文的方法,特别是涉及一种pcap报文快速解析及处理的方法,属于电力系统智能电网技术领域。
背景技术:
随着智能化变电站技术的大范围应用,二次回路由“实”转虚。二次设备之间的连接由可量测的电流电压信号转为无法直接量测的光信号传递,这也直接推动着二次回路监测技术的变革——由传统的直接量测二次回路信息转变为数据报文抓包分析。高电压等级变电站中,二次设备众多,过程层交换机中goose、sv、mms等报文数据量较大。抓包工具从过程层交换机中抓取各类报文信息并存储为pcap等格式文件,用于离线报文分析。因此需要一种能够快速解析、处理pcap报文的方法。
但是目前的pcap报文解析方法在解析大的pcap文件解析速度较慢且占用大量内存,不能满足二次回路监视系统(离线分析)的要求。pcap报文解析时未将各类报文分离,需进行不同类型报文单独分析时不够灵活,且会造成不必要的资源浪费。因为,需要一种pcap报文快速解析的方法,实现pcap报文快速解析及不同报文分类处理,使得不同分析模块能快速定位报文位置,提高报文解析、处理效率。
技术实现要素:
本发明的主要目的在于,克服现有技术中的不足,提供了一种pcap报文快速解析方法,将pcap报文中不同类型报文进行分类整理,记录不同类型报文数量及报文在共享内存中的地址偏移量,并将解析结果依次写入共享内存,供其他分析模块调用。
为了达到上述目的,本发明所采用的技术方案是:
一种快速解析pcap报文的方法,具体步骤包括:
步骤1)使用内存映射技术,将pcap文件载入共享内存;
步骤2)解析pcap文件头,分析pcap报文数据,判断后续报文是否要进行字节序转换、时间如何存储;
步骤3)设计报文计数器及地址偏移量存储列表;
步骤4)遍历pcap报文,记录pcap报文数据部分在共享内存中的地址偏移量,根据pcap报文数据中记录的报文类型标识区分报文类型,将对应报文类型计数器加一,并将记录的pcap报文数据部分在共享内存中的地址偏移量存入对应的存储列表;
步骤5)将报文分析结果写入共享内存。
作为本发明的进一步优选方案,所述报文计数器包括:报文总流量计数器、goose报文流量计数器、sv报文流量计数器、mms报文流量计数器、时间统计计数器。
作为本发明的进一步优选方案,所述pcap报文数据包括:存储字节序标志位、精确时间戳标志位。
作为本发明的进一步优选方案,所述步骤5)具体包括:依次写入pcap报文字节序、时间戳单位标识、goose报文数量、记录的各goose报文在共享内存中的地址偏移量、sv报文数量、记录的各sv报文在共享内存中的地址偏移量、mms报文数量、记录的各mms报文在共享内存中的地址偏移量。与现有技术相比,本发明具有的有益效果是:
提供了一种快速解析pcap报文的方法,记录pcap报文中不同类型报文数量及报文在共享内存中的地址偏移量,将结果写入共享内存供其他报文分析模块调用。
上述内容仅是本发明技术方案的概述,为了更清楚的了解本发明的技术手段,下面结合附图对本发明作进一步的描述。
附图说明
图1为本发明实施pcap报文快速解析及结果存储方法示意图;
图2为本发明存储pcap报文解析结果存储结构示意图;
具体实施方式
下面结合说明书附图,对本发明作进一步的说明。
本发明提供一种pcap报文快速解析方法,包括以下步骤:
1)使用内存映射技术,将pcap文件载入共享内存。
2)解析pcap文件头,分析pcap报文存储字节序标志位、精确时间戳标志位等数据,判断后续报文是否要进行字节序转换、时间如何存储等。
3)设计goose、sv、mms等报文计数器及地址偏移量存储列表,设计报文总流量计数器、goose、sv、mms等各类报文流量计数器、时间统计计数器等,用于报文统计。
4)遍历pcap报文,记录pcap报文数据部分在共享内存中的地址偏移量,根据pcap报文数据中记录的报文类型标识区分报文类型是goose、sv、mms或其他类型等,对应报文类型计数器加一,并将记录的pcap报文数据部分在共享内存中的地址偏移量存入对应的存储列表。统计各类报文流量用于分析统计。
5)将报文分析结果写入共享内存。依次写入pcap报文字节序、时间戳单位标识、goose报文数量、记录的各goose报文在共享内存中的地址偏移量、sv报文数量、记录的各sv报文在共享内存中的地址偏移量、mms报文数量、记录的各mms报文在共享内存中的地址偏移量等数据。
本发明的创新点在于,基于共享内存技术进行pcap报文的分析及结果存储。pcap报文解析时将各类报文分类统计及整理,记录报文数量及其在共享内存中的偏移量,并将结果写入共享内存,供其他报文分析模块灵活调用,提高了pcap报文解析、处理的效率,提高了pcap报文离线分析效率。
以上显示和描述了本发明的基本原理、主要特征及优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。