报文处理方法及装置制造方法及图纸

技术编号:8657489 阅读:191 留言:0更新日期:2013-05-02 01:21
本发明专利技术实施例提供一种报文处理方法及装置,该方法通过获取发送端发送的请求报文;转发驱动模块直接将所述请求报文转发至预设的应用程序进行处理;所述转发驱动模块用于将原本发往操作系统协议栈进行处理的请求报文,转发给所述应用程序;所述应用程序用于直接存储并过滤所述请求报文的报文头,获取报文载荷部分,并根据所述报文载荷部分中预定字段来确定所述请求报文的类型以进行相应处理,获得处理结果;以及对所述处理结果添加报文头,获得响应报文后直接返回给所述发送端。本实施例提供的报文处理方法及装置,可以满足网络测试要求。

【技术实现步骤摘要】

本专利技术实施例涉及通信技术,尤其涉及一种报文处理方法及装置
技术介绍
网络测试通过高性能服务器对各种软硬件进行测试,来验证软硬件是否能够达到既定功能。现有技术中,在对高性能网络爬虫或报文过滤设备等的网络测试时,为了避免采用高价的仪器与设备搭建的测试设备,常在实验室中开发特定的服务器,使其具有特定功能,能够完成特定的测试。例如,使用套接字协议对轻量级的服务器做一些更改,在Linux系统上采用Epoll技术,或在Windows系统上采用完成端口模型等,通过应用程序处理服务器对应的命令。然而,现有对轻量级服务器的更改,常受限于操作系统性能,采用操作系统提供的套接字协议,无法满足测试要求。
技术实现思路
本专利技术实施例提供一种报文处理方法及装置,用以满足网络测试要求。第一方面,本专利技术实施例提供一种报文处理方法,包括:获取发送端发送的请求报文;转发驱动模块直接将所述请求报文转发至预设的应用程序进行处理;所述转发驱动模块用于将原本发往操作系统协议栈进行处理的请求报文,转发给所述应用程序;所述应用程序用于直接存储并过滤所述请求报文的报文头,获取报文载荷部分,并根据所述报文载荷部分中预定字段来确定所述请求报文的类型以进行相应处理,获得处理结果;以及对所述处理结果添加报文头,获得响应报文后直接返回给所述发送端。结合第一方面,在第一种可能的实现方式中,所述根据所述报文载荷部分中预定字段来确定所述请求报文的类型以进行相应处理包括:若根据所述报文载荷部分中的重置RST字段确定所述请求报文为重置报文,则直接退出处理流程;若根据所述报文载荷部分中的断开连接FIN字段确定所述请求报文为断开连接报文,则生成确认ACK消息,并生成指示所述发送端断开连接的FIN字段;若根据所述报文载荷部分中的建立连接SYN字段确定所述请求报文为建立连接报文,则生成确认ACK消息;若根据所述报文载荷部分中的数据PSH字段确定所述请求报文为数据报文,则生成确认ACK消息;若所述报文载荷部分中的有效数据长度大于零,则对所述有效数据进行处理,获得处理结果。结合第一方面或第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述请求报文为符合传输控制协议TCP协议的报文;对应地,所述应用程序用于直接存储并过滤所述请求报文的报文头,获取报文载荷部分包括:所述应用程序存储所述请求报文的介质访问控制层MAC头和网络之间互连的协议IP头,并依次过滤所述请求报文中的MAC头和IP头,获得报文载荷部分;相应地,对所述处理结果添加报文头包括:对所述处理结果依次添加上TCP头、IP头和MAC头。第二方面,本专利技术实施例提供一种报文处理装置,包括:获取模块,用于获取发送端发送的请求报文;转发驱动模块,用于将原本发往操作系统协议栈进行处理的请求报文,转发给处理模块;处理模块,存储有预设的应用程序,用于直接存储并过滤所述请求报文的报文头,获取报文载荷部分,并根据所述报文载荷部分中预定字段来确定所述请求报文的类型以进行相应处理,获得处理结果;以及对所述处理结果添加报文头,获得响应报文后直接返回给所述发送端。结合第二方面,在第一种可能的实现方式中,所述处理模块根据所述报文载荷部分中预定字段来确定所述请求报文的类型以进行相应处理包括:若根据所述报文载荷部分中的重置RST字段确定所述请求报文为重置报文,则直接退出处理流程;若根据所述报文载荷部分中的断开连接FIN字段确定所述请求报文为断开连接报文,则生成确认ACK消息,并生成指示所述发送端断开连接的FIN字段;若根据所述报文载荷部分中的建立连接SYN字段确定所述请求报文为建立连接报文,则生成确认ACK消息;若根据所述报文载荷部分中的数据PSH字段确定所述请求报文为数据报文,则生成确认ACK消息;若所述报文载荷部分中的有效数据长度大于零,则对所述有效数据进行处理,获得处理结果。结合第二方面或第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述请求报文为符合传输控制协议TCP协议的报文;对应地,所述处理模块直接存储并过滤所述请求报文的报文头,获取报文载荷部分包括:所述处理模块存储所述请求报文的介质访问控制层MAC头和网络之间互连的协议IP头,并依次过滤所述请求报文中的MAC头和IP头,获得报文载荷部分;相应地,对所述处理结果添加报文头包括:对所述处理结果依次添加上TCP头、IP头和MAC头。 本专利技术实施例提供的报文处理方法及装置,该方法通过获取发送端发送的请求报文;转发驱动模块直接将请求报文转发至预设的应用程序进行处理;转发驱动模块用于将原本发往操作系统协议栈进行处理的请求报文,转发给应用程序;应用程序用于直接存储并过滤请求报文的报文头,获取报文载荷部分,并根据报文载荷部分中预定字段来确定请求报文的类型以进行相应处理,获得处理结果;以及对处理结果添加报文头,获得响应报文后直接返回给所述发送端。在处理请求报文时,将原本发往操作系统协议栈进行处理的请求报文,转发给应用程序,由应用程序对该请求报文进行简化处理,提高了报文处理性能,能够满足网络测试要求。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术报文处理方法实施例一的流程示意图;图2为本专利技术报文处理方法实施例二的流程示意图;图3为本专利技术报文处理装置实施例一的结构示意图。具体实施例方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。图1为本专利技术报文处理方法实施例一的流程示意图。本实施例提供了一种报文处理方法,该方法可以由任意执行报文处理操作的报文处理装置来执行,该装置可以通过软件和/或硬件实现。如图1所示,本实施例的方法可以包括:步骤101:获取发送端发送的请求报文。在本实施例中,发送端可以为网络或者各种计算机设备,报文处理装置可以直接获取发送端发送的请求报文,还可以通过抓包工具抓取请求报文。步骤102:转发驱动模块直接将请求报文转发至预设的应用程序进行处理。在获取到请求报文后,转发驱动模块直接将请求报文转发至预设的应用程序中进行处理。其中,转发驱动模块用于将原本发往操作系统协议栈进行处理的请求报文,转发给应用程序。在具体实现过程中,转发驱动模块可以内嵌在各种高性能网络收发包硬件卡中,该高性能网络收发包硬件卡接收和发送数据的速度较高,并可以直接插入报文处理装置的外围部件互连总线(Peripheral Component Interconnect,简称PCI)插槽或通过其它接口连接在报文处理装置上。本领域技术人员可以理解,该高性能网络收发包硬件卡具备通用的网卡接口,能够直接插入网线,获取发送端发送的请求报文,或者向发送端返回响应报文。该高性能网络收发包硬件卡的处理效率高,每秒钟处理的比特位高达IOG (1G本文档来自技高网...

【技术保护点】
一种报文处理方法,其特征在于,包括:获取发送端发送的请求报文;转发驱动模块直接将所述请求报文转发至预设的应用程序进行处理;所述转发驱动模块用于将原本发往操作系统协议栈进行处理的请求报文,转发给所述应用程序;所述应用程序用于直接存储并过滤所述请求报文的报文头,获取报文载荷部分,并根据所述报文载荷部分中预定字段来确定所述请求报文的类型以进行相应处理,获得处理结果;以及对所述处理结果添加报文头,获得响应报文后直接返回给所述发送端。

【技术特征摘要】
1.一种报文处理方法,其特征在于,包括: 获取发送端发送的请求报文; 转发驱动模块直接将所述请求报文转发至预设的应用程序进行处理;所述转发驱动模块用于将原本发往操作系统协议栈进行处理的请求报文,转发给所述应用程序;所述应用程序用于直接存储并过滤所述请求报文的报文头,获取报文载荷部分,并根据所述报文载荷部分中预定字段来确定所述请求报文的类型以进行相应处理,获得处理结果;以及对所述处理结果添加报文头,获得响应报文后直接返回给所述发送端。2.根据权利要求1所述的方法,其特征在于,所述根据所述报文载荷部分中预定字段来确定所述请求报文的类型以进行相应处理包括: 若根据所述报文载荷部分中的重置RST字段确定所述请求报文为重置报文,则直接退出处理流程; 若根据所述报文载荷部分中的断开 连接FIN字段确定所述请求报文为断开连接报文,则生成确认ACK消息,并生成指示所述发送端断开连接的FIN字段; 若根据所述报文载荷部分中的建立连接SYN字段确定所述请求报文为建立连接报文,则生成确认ACK消息; 若根据所述报文载荷部分中的数据PSH字段确定所述请求报文为数据报文,则生成确认ACK消息; 若所述报文载荷部分中的有效数据长度大于零,则对所述有效数据进行处理,获得处理结果。3.根据权利要求1或2所述的方法,其特征在于,所述请求报文为符合传输控制协议TCP协议的报文;对应地,所述应用程序用于直接存储并过滤所述请求报文的报文头,获取报文载荷部分包括: 所述应用程序存储所述请求报文的介质访问控制层MAC头和网络之间互连的协议IP头,并依次过滤所述请求报文中的MAC头和IP头,获得报文载荷部分;相应地,对所述处理结果添加报文头包括: 对所述处理结果依次添加上TCP头、IP头...

【专利技术属性】
技术研发人员:杨勇
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1