[发明专利]基于软硬件结合的流管理方法有效
申请号: | 201310207149.2 | 申请日: | 2013-05-30 |
公开(公告)号: | CN103312618A | 公开(公告)日: | 2013-09-18 |
发明(设计)人: | 陈曙晖;赵国鸿;唐勇;王明贞;陈一骄;孙志刚 | 申请(专利权)人: | 中国人民解放军国防科学技术大学 |
主分类号: | H04L12/801 | 分类号: | H04L12/801;H04L12/24 |
代理公司: | 湖南兆弘专利事务所 43008 | 代理人: | 周长清 |
地址: | 410073 湖南省长沙市砚瓦池正*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 软硬件 结合 流管 方法 | ||
1.一种基于软硬件结合的流管理方法,其特征在于,步骤为:
(1)、构建软硬件结合流管理系统;软硬件结合流管理系统由硬件流管理模块、软件流管理模块和业务模块三部分组成;硬件流管理模块为FPGA硬件流管理模块,软件流管理模块作为硬件模块流管理冲突的一种处理机制;
(2)、硬件流管理模块对接收报文进行流管理;
(3)、软件流管理模块对报文进行流管理。
2.根据权利要求1所述的基于软硬件结合的流管理方法,其特征在于,所述步骤(2)的详细流程为:
(2.1)根据接收报文的五元组信息,查询硬件流表中是否有该报文所对应的流记录,如果存在更新流记录信息,流管理过程结束;如果不存在转(2.2);
(2.2)如果不存在报文所对应的流记录信息,则说明该报文是一条新流中的报文,需要确定该报文的传输层协议类型,如果是TCP报文转(2.3);如果是UDP报文转(2.5);
(2.3) 如果是TCP报文,进一步判断该报文是否为第一个SYN包,如果是则转(2.4);否则将报文发送到软件流管理模块;
(2.4)如果是第一个SYN包,如果存储流记录未出现冲突则将报文流信息存储在硬件流表中;如果出现冲突则将进一步判断,已存储的冲突流是否超时,如果超时则删除超时流,将新建的流存储在该位置,如果没有超时则将报文发送到软件流管理模块;
(2.5)如果是UDP报文,进一步确定该报文的接收端口;如果是从硬件报文接口接收的报文则直接发送给软件流管理模块;如果是从软硬件报文接口接收的报文则新建一条流进行存储,如果没有出现冲突则将流记录存储在硬件流表中,如果出现冲突需要进一步判断已存储的冲突流是否超时,如果超时则删除超时流,将新建的流存储在该位置,如果没有超时则将报文再次发送到软件流管理模块。
3.根据权利要求1所述的基于软硬件结合的流管理方法,其特征在于,所述步骤(3)的详细流程为:
(3.1)接收网口消息,判断消息类型,如果是报文接收消息转(3.2);如果是报文释放消息转(3.3);如果是流超时消息转(3.4);
(3.2)接收报文,查询软件流表,如果存在该报文所对应的流记录则更新流记录信息,如果不存在则进一步判断报文传输层协议类型;如果是TCP报文,进一步判断是否为第一个SYN包,若是则新建流记录,填写流记录信息,然后存储,若不是,属于无效报文,则将报文丢弃;如果是UDP报文,进一步判断硬件流表对应位置是否为空,如果不为空,则新建流记录存储在软件流表中,若为空,则将报文发送给硬件流管理模块处理;
(3.3 )提取报文内存地址,释放内存;
(3.4 )提取超时流地址,释放流记录空间。
4.根据权利要求1或2或3所述的基于软硬件结合的流管理方法,其特征在于,所述软硬件结合流管理系统中包含三条数据通路,其中数据通路①表示硬件流管理模块成功完成对报文流管理,直接将报文发送给业务模块;数据通路②表示由硬件流管理模块发送过来的报文被软件流管理模块成功完成流管理,将报文发送给业务模块;数据通路③表示硬件流管理模块发送给软件流管理模块的报文没有被成功流管理,然后又发送给硬件流管理模块,硬件流管理模块完成流管理,将报文发送给业务模块;数据通路③是专用于UDP报文的,因为UDP流没有开始和结束标志,在硬件流管理模块没有在流表中查找到该流时并不能直接新建一条流,需要进一步确定软件流管理模块是否已存储该流信息,如果软件流管理模块也没有处理,那么就通知硬件流管理模块对该流进行存储。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科学技术大学,未经中国人民解放军国防科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310207149.2/1.html,转载请声明来源钻瓜专利网。