[发明专利]基于FPGA的分级并行高速网络TCP流重组方法有效
| 申请号: | 201310057076.3 | 申请日: | 2013-02-22 |
| 公开(公告)号: | CN103117948A | 公开(公告)日: | 2013-05-22 |
| 发明(设计)人: | 王勇;刘勇;陶晓玲;何倩 | 申请(专利权)人: | 桂林电子科技大学 |
| 主分类号: | H04L12/803 | 分类号: | H04L12/803;H04L12/869 |
| 代理公司: | 桂林市持衡专利商标事务所有限公司 45107 | 代理人: | 陈跃琳 |
| 地址: | 541004 广*** | 国省代码: | 广西;45 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 fpga 分级 并行 高速 网络 tcp 重组 方法 | ||
技术领域
本发明涉及互联网技术领域,具体涉及一种基于FPGA的分级并行高速网络TCP流重组方法。
背景技术
随着网络犯罪手段不断趋于复杂化和多样化,传统方法无法检测出某些特殊的新型入侵行为,若敏感信息分片到几个不同的数据包中,数据包特征就会消失从而无法检测出恶意行为,无法满足网络安全防护和打击网络犯罪的实际需要。
为了提高恶意数据流检测的准确性,不能只是运用数据包级的处理,必须将每条TCP流的所有数据包重组为完整的会话流,以进行应用级分析。由于TCP流在IP层被切分成多个IP分片来传输,使得整个数据传输过程中可能存在TCP报文段失序、重复,甚至还会有丢包的情况。通过统计骨干网上的真实流量获知骨干网上的平均报文长度为300字节左右,而且只有极少数乱序数据包,另外在同一条TCP流,95%以上的乱序数据包报文间隔为一个报文段。针对上述情况,为增加网络吞吐量,选择合理的TCP流重组方法至关重要。
当前现有的TCP流重组方法多采用多线程来并行处理,但其进行磁盘I/O(Input/Output,输入/输出)操作时依然造成巨大延时,导致重组效率较低,因此很难满足高速网络数据流分析等对TCP流重组的实时性需求。
发明内容
本发明所要解决的技术问题是现有TCP流重组方法延时大且效率较低的不足,提供一种基于FPGA的分级并行高速网络TCP流重组方法。
本发明的设计思想是:采用基于FPGA的分级并行结构,作为第一级的主节点对捕获网络数据包实现负载均衡调度,在保证流粒度的前提下,将高速网络数据流瞬时均衡地调度至作为第二级的从节点中;从节点先并发访问快表以及基于哈希的双向循环链表,若访问快表先找到流记录则结束哈希双向循环链表查找流记录,否则将依赖哈希双向循环链表查找结果,从而确定该TCP流的状态,再判定此次访问TCP流记录的数据包是否有序,对于乱序数据包才为其分配存储空间,并以静态链表维护该流中的乱序数据包来实现TCP流局部重组,在保证该TCP流数据包局部有序的前提下,实现该TCP流的数据包整体有序。
为解决上述问题,本发明是通过以下方案实现的:
基于FPGA的分级并行高速网络TCP流重组方法,包括如下步骤:
S1.负载均衡调度,主节点FPGA(Field-Programmable Gate Array,现场可编程门阵列)对捕获的数据包实现负载均衡调度,在保证流粒度的前提下,使数据流均衡地调度至从节点FPGA上;即
S11.提取数据包首部信息,FPGA采用TEMAC核(Tri-Mode Ethernet MAC,三态以太网MAC核)将物理层比特流封装成MAC帧,再相应提取源IP地址、目的IP地址、源端口、目的端口、复位RST、同步SYN和终止FIN,然后并发执行哈希运算与流映射管理,并采取流映射端口优先的策略选择输出端口;
S12.根据输出端口并发执行将数据包从相应端口发出,将数据包相应信息写入对应端口队列并按周期反馈当前最大剩余数据量,以及统计并反馈本周期内的最小流量端口同时基于速率反馈动态调整下一次统计的周期;
S2.TCP(Transmission Control Protocol,传输控制协议)流记录访问,包括流记录添加、流记录查找和流记录清除;即
S21.提取数据包首部信息,FPGA采用TEMAC核将物理层比特流封装成MAC帧,然后再相应提取源IP地址、目的IP地址、源端口、目的端口、序号、确认号、复位RST、同步SYN和终止FIN;
S22.将提取的源IP地址和目的IP地址匹配快表中的CAM(Content Addressable Memory,内容可寻址存储器),若匹配命中,则将匹配命中的CAM地址作为地址访问RAM(Random Access Memory,随机存储器)得到该TCP流记录的首地址,再根据该首地址访问TCP流记录并反馈该TCP流记录的报文确认号以及该数据包的报文序号及确认号,同时反馈该TCP流记录中乱序数据包组首地址并更新时间标记,然后结束哈希双向循环链表访问TCP流记录;若匹配不命中,则不做任何处理;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于桂林电子科技大学,未经桂林电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310057076.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:轮扣式钢管支架
- 下一篇:一种无甲醛耐水仿实木地板





