[发明专利]流表创建及查询方法在审
申请号: | 201510731215.5 | 申请日: | 2015-10-30 |
公开(公告)号: | CN105357128A | 公开(公告)日: | 2016-02-24 |
发明(设计)人: | 何三波 | 申请(专利权)人: | 迈普通信技术股份有限公司 |
主分类号: | H04L12/743 | 分类号: | H04L12/743;H04L12/741 |
代理公司: | 成都虹桥专利事务所(普通合伙) 51124 | 代理人: | 吴中伟 |
地址: | 610041 四川省*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 创建 查询 方法 | ||
技术领域
本发明涉及数据通信领域中的数据报文转发控制技术,具体涉及流表创建及查询方法。
背景技术
在数据通信设备如路由器中,转发面需要处理一些控制业务如ACL(AccessControlList,访问控制列表)、QOS(QualityOfService,服务质量)等,这些业务的处理一般需要查询比较大的表,查表比较耗时,一般不能满足数据报文转发性能要求。
ACL、QOS等控制业务需要使用报文中的五元组(源地址、源端口、目的地址、目的端口和层四协议号)或者七元组(源地址、源端口、目的地址、目的端口、层四协议号、服务类型(Tos,TypeOfService)和层4标志)对报文进行控制。
为此,以报文的六元组(源地址、源端口、目的地址、目的端口、层四协议号和接口索引)或者九元组(源地址、源端口、目的地址、目的端口、层四协议号、分片标志、服务类型、层4标志和接口索引)可以唯一定义一条流,使用六元组或者九元组作为KEY值构建流表项,流表项中包括KEY值和其它字段。接口接收到报文后,先在流表中查找流表项,把查找的流表项保存在特定的位置(如报文描述符中,报文描述符是存储报文信息的控制块)。ACL、QOS等控制业务直接在特定位置获取流表项,ACL、QOS等控制业务可以一次查找结果,将结果记录在流表项中,后续直接使用流表项中记录的结果。
目前,流表已经成为加速控制业务的一种重要手段,那么如何快速查找流表则对于提高流表查询速度实现报文快速转发具有实际意义。
发明内容
本发明所要解决的技术问题是:提出一种流表创建及查询方法,提高流表查询速度实现报文快速转发。
本发明解决上述技术问题所采用的方案是:流表创建方法,包括:
采用HASH表组织流表并创建流表项,HASH值的范围为0到2N,所述流表项中包括以报文六元组或者九元组构成的KEY值及利用所述KEY值计算出来的32位HASH值;以32位HASH值的低N位作为HASH表的HASH值,将所述流表项添加到低N位HASH值对应的冲突链上。
进一步的,在创建流表项时,将所述KEY值及利用所述KEY值计算出来的32位HASH值作为流表项中开始部分的字段。
进一步的,所述六元组包括:源地址、源端口、目的地址、目的端口、层四协议号和接口索引;所述九元组包括源地址、源端口、目的地址、目的端口、层四协议号、服务类型、层四标志和接口索引。
此外,本发明还提出了一种流表查询方法,包括:
当设备从接口接收到报文后,采用报文的六元组或九元组作为KEY值,并对所述KEY值进行HASH计算,获得32位HASH值,以所述32位HASH值的低N位作为HASH表的HASH值,在所述HASH值对应的冲突链上查找流表。
进一步的,该流表查询方法还包括:
若查找到流表则对流表项进行相应操作,若未查找到流表,则创建流表项。
具体的,若未查找到流表,则创建流表项包括:创建的流表项中包括六元组或者九元组或转发信息,将创建的流表项保存在其KEY值在HASH表中对应的冲突链的末尾。
进一步的,所述对流表项进行相应操作包括:
对流表项进行刷新操作,并且将流表项记录保存到特定位置。
进一步的,所述特定位置为报文描述符。
进一步的,所述对流表项进行相应操作还包括:根据流表信息转发报文。
进一步的,该流表查询方法还包括:
若某个流表项在一定时间内未被报文刷新,则将该流表项进行老化处理。
进一步的,在所述HASH值对应的冲突链上查找流表的方法为:
使用32位HASH值和KEY值依次与冲突链上各个流表项的32位HASH值和KEY值进行比较运算,若二者都相等,则所对应的流表项就是需要查找的流表项。
本发明的有益效果是:使用报文中的六元组或者九元组构造流表KEY值,通过所述KEY值计算出32位HASH值,流表中包括32位HASH值字段和KEY值字段,取出32位HASH值中的低16位作为HASH表的HASH值。报文在HASH表的冲突链中通过32位HASH值和KEY值创建流表和查找流表,这样提高了KEY值中前面大部分字段相同的流表的查找速度。
附图说明
图1为采用HASH表组织流表的结构示意图;
图2为流表项构成示意图;
图3为进行优化后的流表结构示意图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于迈普通信技术股份有限公司,未经迈普通信技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510731215.5/2.html,转载请声明来源钻瓜专利网。