一种基于两级缓存的报文处理方法技术

技术编号:16302649 阅读:39 留言:0更新日期:2017-09-26 20:52
本发明专利技术提出一种基于两级缓存的报文处理方法,通过物理网卡采用DMA方式将报文数据拷贝到一级缓存并通知协议解析模块,协议解析模块直接获取报文数据首地址并进行协议解析,将协议解析结果组织成业务逻辑数据结构压入二级缓存,再由业务逻辑模块弹出二级缓存中的缓存数据,直接处理业务逻辑,实现报文解析、业务逻辑处理的分层缓存策略。本发明专利技术的方法适用于大流量通信情况下的报文分析,避免了报文数据的拷贝,不丢包,且易于实现、简单、可靠。

A message processing method based on two level cache

The invention provides a method for processing message level two cache based on the packet data is copied into the cache and notify the protocol analysis module through the physical network using the DMA protocol analysis module, direct access to the first address and data packet protocol analysis, protocol analysis results will be organized into business logic data structure is pressed into the two level cache by then, the business logic module pop-up cache data cache in the two level, directly handle the business logic implementation of hierarchical caching strategy, business logic processing message parsing. The method of the invention is suitable for the analysis of packets in the condition of large flow communication, avoids the copying of message data, does not lose packets, and is easy to realize, simple and reliable.

【技术实现步骤摘要】
一种基于两级缓存的报文处理方法
本专利技术属于电力系统通讯网络报文记录分析领域,尤其涉及到变电站内的GOOSE、SV、MMS、104通讯报文抓取及分析技术。
技术介绍
随着电力系统网络化和智能化的发展进程,查询网络故障原因就需要网络报文记录分析仪长期高效稳定运行,当网络故障发生时,可以提供现场证据和问题分析的依据,所以提供长期高效稳定运行的网络分析仪非常有必要。目前,电力系统的网络报文记录分析多采用FPGA进行报文抓取,并需要进行从FPGA到内核,内核到应用进程,应用进程内的多次拷贝过程,导致报文记录和分析的效率下降,报文流量大时容易丢包,并且长时间运行不稳定,容易形成过多内存碎片,导致记录装置故障的问题。解决以上问题的关键就在于提供一种可以解决上述问题的长期高效稳定运行的报文处理方法。
技术实现思路
本专利技术的主要目的在于,克服现有处理方式的不足,提供一种电力系统网络报文处理方法,提高处理的效率和长期运行稳定性,为网络故障分析提供可靠依据。为了实现以上目的,本专利技术采用的技术方案是:基于二级缓存的报文记录分析方法,包含以下步骤:步骤1:分配一级缓存、二级缓存,设置物理网卡进入监听模本文档来自技高网...
一种基于两级缓存的报文处理方法

【技术保护点】
一种基于两级缓存的报文处理方法,其特征在于,包括以下步骤:步骤1:分配一级缓存、二级缓存,设置物理网卡进入监听模式;步骤2:物理网卡接收到报文数据后,采用DMA方式将报文数据拷贝到一级缓存,并通知协议解析模块,将报文数据首地址传递给协议解析模块;步骤3:协议解析模块接收到报文数据首地址后,进行协议解析,并将解析结果组织成业务逻辑数据结构压入二级缓存,同时通知业务逻辑模块;步骤 4:业务逻辑模块接收到协议解析模块的通知后,直接弹出二级缓存内的业务逻辑数据结构并进行业务逻辑处理。

【技术特征摘要】
1.一种基于两级缓存的报文处理方法,其特征在于,包括以下步骤:步骤1:分配一级缓存、二级缓存,设置物理网卡进入监听模式;步骤2:物理网卡接收到报文数据后,采用DMA方式将报文数据拷贝到一级缓存,并通知协议解析模块,将报文数据首地址传递给协议解析模块;步骤3:协议解析模块接收到报文数据首地址后,进行协议解析,并将解析结果组织成业务逻辑数据结构压入二级缓存,同时通知业务逻辑模块;步骤4:业务逻辑模块接收到协议解析模块的通知后,直接弹出二级缓存内的业务逻辑数据结构并进行业务逻辑处理。2.根据权利要求1所述的基于两级缓存的报文处理方法,其特征在于,步骤1中一级缓存分配于内核高端内存区域,并映射成共享区域,按照2048字节为单位的报文数据块进行组织。3.根据权利要求1所述的基于两级缓存的报文处理方法,其特征在于,步骤2中当物理网卡接收到报文数据后,物理网卡触发硬件中断激活内核网卡数据中断处理函...

【专利技术属性】
技术研发人员:蒋玉柱刘明慧胡绍谦
申请(专利权)人:南京南瑞继保电气有限公司南京南瑞继保工程技术有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1