[发明专利]一种用于高速获取TCP连接数据的方法和设备有效
申请号: | 201010608983.9 | 申请日: | 2010-12-17 |
公开(公告)号: | CN102111403A | 公开(公告)日: | 2011-06-29 |
发明(设计)人: | 刘朝辉;张英文;李静;张磊;白宗元;纪奎 | 申请(专利权)人: | 曙光信息产业(北京)有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L29/08 |
代理公司: | 北京安博达知识产权代理有限公司 11271 | 代理人: | 徐国文 |
地址: | 100084 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 高速 获取 tcp 连接 数据 方法 设备 | ||
1.一种用于高速获取TCP连接数据的方法,其特征在于:包含以下步骤:
A、专用芯片通过网络接口接收到TCP报文后,从报文中提取出TCP连接信息,并把原始报文暂存到板载内存中;
B、专用芯片根据报文的TCP连接信息,查询板载内存中的TCP连接表,如果是新建立连接的报文,就在连接表中给该连接增加一个新的表项;如果是关闭连接的报文,就把连接表中该连接的表项删除;如果是已经建立连接的数据报文,则在连接表项中记录该连接的当前状态;
C、对于TCP数据报文,专用芯片根据连接表项中记录的状态,判断该报文是否发生了乱序,如果没有乱序,则直接上传给主机;如果发生乱序,则把报文放入链表,等待后继报文进行重新排序,排序完成后,以报文为单位上传主机;
D、网卡在向主机提交报文前,在报文的封装头前增加一个自定义的报头结构,保存该tcp连接的信息;
E、驱动软件把报文从网卡板载内存传输到主机内存;
F、应用软件通过API接口库读取tcp数据时,接口库软件从主机内存中读取原始报文,根据报文附加的信息头,定位tcp数据,把原始报文数据结构,转换成应用需要的tcp数据结构。
2.如权利要求1所述一种用于高速获取TCP连接数据的方法,其特征在于:发生乱序后的排序过程使用报文链表,不使用拼接缓冲器,不进行tcp数据的拼接。
3.如权利要求1所述一种用于高速获取TCP连接数据的方法,其特征在于:所述D步骤中保存的TCP连接信息包括连接状态、TCP数据在报文中的偏移。
4.一种用于高速获取TCP连接数据的设备,其特征在于:包括网卡和主机软件部分,
所述网卡包括专用芯片、网络接口和板载内存;
所述主机软件部分包括网卡驱动和应用软件API接口库。
5.如权利要求4所述一种用于高速获取TCP连接数据的设备,其特征在于:所述专用芯片为网卡的主控芯片,运行所有的报文处理逻辑。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于曙光信息产业(北京)有限公司,未经曙光信息产业(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010608983.9/1.html,转载请声明来源钻瓜专利网。