[发明专利]报文处理方法及装置有效
申请号: | 201210584139.6 | 申请日: | 2012-12-28 |
公开(公告)号: | CN103078720A | 公开(公告)日: | 2013-05-01 |
发明(设计)人: | 杨勇 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | H04L1/16 | 分类号: | H04L1/16;H04L29/08 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 谭磊 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 报文 处理 方法 装置 | ||
技术领域
本发明实施例涉及通信技术,尤其涉及一种报文处理方法及装置。
背景技术
网络测试通过高性能服务器对各种软硬件进行测试,来验证软硬件是否能够达到既定功能。
现有技术中,在对高性能网络爬虫或报文过滤设备等的网络测试时,为了避免采用高价的仪器与设备搭建的测试设备,常在实验室中开发特定的服务器,使其具有特定功能,能够完成特定的测试。例如,使用套接字协议对轻量级的服务器做一些更改,在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协议的报文;对应地,所述处理模块直接存储并过滤所述请求报文的报文头,获取报文载荷部分包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210584139.6/2.html,转载请声明来源钻瓜专利网。