[发明专利]报文捕获方法及内核模块有效
申请号: | 201110051003.4 | 申请日: | 2011-03-03 |
公开(公告)号: | CN102098227A | 公开(公告)日: | 2011-06-15 |
发明(设计)人: | 钟登峰 | 申请(专利权)人: | 成都市华为赛门铁克科技有限公司 |
主分类号: | H04L12/56 | 分类号: | H04L12/56;H04L12/24 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 王申 |
地址: | 611731 四川*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 报文 捕获 方法 内核 模块 | ||
技术领域
本发明涉及一种报文捕获方法及内核模块,属于网络技术领域。
背景技术
报文捕获(Packet Capture),也称数据包捕获(Datagram Capture)是指捕获数据包穿越网络的行为。深度数据包捕获的是完整的网络数据包,包括报文头和有效载荷;而部分数据包捕获可以仅记录数据报头的部分信息。报文捕获技术在网络流量管理和网络安全等方面中起着重要作用。报文捕获是报文分析的基础,作为网络监测的关键技术,被广泛地应用于分布式实时控制系统、网络故障分析、入侵检测系统、网络监控系统、计算机取证系统等领域中。
以太网具有共享介质的特征,信息是以明文的形式在网络上传输,当网络适配器设置为监听模式时,由于采用以太网广播信道争用的方式,使得监听系统与正常通信的网络能够并联连接,并可以捕获任何一个在同一冲突域上传输的数据包。
现有技术中,采用软件报文分流并行处理技术实现并行报文捕获。
如图1所示,该技术基于单物理网卡,通过应用层分流并使用单独线程(或进程)进行报文捕获,使用多个线程(或进程)执行报文分析处理等工作。这样,捕包线程可以不受报文后续处理的影响,尽可能地全速执行报文捕获工作。然而,在现有技术中,报文捕获在单个线程/进程中执行,不能充分发挥多核CPU的计算能力,采用多进程方式,需要在进程间传递大量数据,进程间通讯开销过大,性能较低。
发明内容
本发明提供一种报文捕获方法及内核模块,用以实现了真正的单网卡/多网卡流量并行报文捕获。
本发明实施例的目的是通过以下技术方案实现的:
一种报文捕获方法,包括:
网络硬件接收报文;
根据从网络硬件接收到的报文的地址信息确定该报文在内核态中所属的捕获通道;
将所述报文经相应的捕获通道从内核态发送到用户态,由该用户态中与所述捕获通道对应的报文捕获程序对所述报文进行报文捕获。
一种内核模块,包括:
确定单元,用于根据从网络硬件接收到的报文的地址信息确定该报文在内核态中所属的捕获通道;
发送单元,用于将所述报文经确定单元所确定的相应的捕获通道从内核态发送到用户态,由该用户态中与所述捕获通道对应的报文捕获程序对所述报文进行报文捕获。
通过本发明实施例所提供的报文捕获方法及内核模块,通过网络硬件接收报文,根据从网络硬件接收到的报文的地址信息确定该报文在内核态中所属的捕获通道,将所述报文经相应的捕获通道从内核态发送到用户态,由该用户态中与所述捕获通道对应的报文捕获程序对所述报文进行报文捕获,实现了捕获报文的内核态分流,使得无重复报文拷贝无需要外部分流设备支持,并支持大通道数的并行捕获,多进程及多线程编程模型,完美的兼容了现有各种基于报文捕获的应用。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术的应用程序技术原理图;
图2为本发明所述报文捕获方法实施例的流程图;
图3为图2所示步骤120的具体流程图;
图4为本发明所述报文捕获方法实施例的应用程序技术原理图;
图5为本发明所述内核模块实施例的结构示意图;
图6为图5所示内核模块中的确定单元11的可选结构示意图;
图7为图6所示内核模块中的运算单元1101的可选结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
介绍本发明技术方案之前,先介绍一下各类操作系统的数据链路层报文访问接口和开发库,如下:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都市华为赛门铁克科技有限公司,未经成都市华为赛门铁克科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110051003.4/2.html,转载请声明来源钻瓜专利网。