预览加载中,请您耐心等待几秒...
1/7
2/7
3/7
4/7
5/7
6/7
7/7

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN105357128A(43)申请公布日2016.02.24(21)申请号201510731215.5(22)申请日2015.10.30(71)申请人迈普通信技术股份有限公司地址610041四川省成都市高新区九兴大道16号迈普大厦(72)发明人何三波(74)专利代理机构成都虹桥专利事务所(普通合伙)51124代理人吴中伟(51)Int.Cl.H04L12/743(2013.01)H04L12/741(2013.01)权利要求书1页说明书3页附图2页(54)发明名称流表创建及查询方法(57)摘要本发明涉及数据通信领域中的数据报文转发控制技术,其公开了一种流表创建及查询方法,提高流表查询速度实现报文快速转发。本发明采用HASH表组织流表并创建流表项,HASH值的范围为0到2N,所述流表项中包括以报文六元组或者九元组构成的KEY值及利用所述KEY值计算出来的32位HASH值;以32位HASH值的低N位作为HASH表的HASH值,将所述流表项添加到低N位HASH值对应的冲突链上。本发明适用于各种类型报文的转发控制。CN105357128ACN105357128A权利要求书1/1页1.流表创建方法,其特征在于,包括:采用HASH表组织流表并创建流表项,HASH值的范围为0到2N,所述流表项中包括以报文六元组或者九元组构成的KEY值及利用所述KEY值计算出来的32位HASH值;以32位HASH值的低N位作为HASH表的HASH值,将所述流表项添加到低N位HASH值对应的冲突链上。2.如权利要求1所述的流表创建方法,其特征在于,在创建流表项时,将所述KEY值及利用所述KEY值计算出来的32位HASH值作为流表项中开始部分的字段。3.如权利要求1所述的流表创建方法,其特征在于,所述六元组包括:源地址、源端口、目的地址、目的端口、层四协议号和接口索引;所述九元组包括源地址、源端口、目的地址、目的端口、层四协议号、服务类型、分片标志、层四标志和接口索引。4.流表查询方法,其特征在于,包括:当设备从接口接收到报文后,采用报文的六元组或九元组作为KEY值,并对所述KEY值进行HASH计算,获得32位HASH值,以所述32位HASH值的低N位作为HASH表的HASH值,在所述HASH值对应的冲突链上查找流表。5.如权利要求4所述的流表查询方法,其特征在于,在所述HASH值对应的冲突链上查找流表的方法为:使用32位HASH值和KEY值依次与冲突链上各个流表项的32位HASH值和KEY值进行比较运算,若二者都相等,则所对应的流表项就是需要查找的流表项。6.如权利要求5所述的流表查询方法,其特征在于,还包括:若查找到流表则对流表项进行相应操作,若未查找到流表,则创建流表项。7.如权利要求6所述的流表查询方法,其特征在于,所述若未查找到流表,则创建流表项包括:创建的流表项中包括六元组或者九元组或者转发信息,将创建的流表项保存在其KEY值在HASH表中对应的冲突链的末尾。8.如权利要求7所述的流表查询方法,其特征在于,该流表查询方法还包括:若某个流表项在一定时间内未被报文刷新,则将该流表项进行老化处理。9.如权利要求7所述的流表查询方法,其特征在于,所述特定位置为报文描述符。10.如权利要求6-9任意一项所述的流表查询方法,其特征在于,所述对流表项进行相应操作还包括:根据流表信息转发报文。2CN105357128A说明书1/3页流表创建及查询方法技术领域[0001]本发明涉及数据通信领域中的数据报文转发控制技术,具体涉及流表创建及查询方法。背景技术[0002]在数据通信设备如路由器中,转发面需要处理一些控制业务如ACL(AccessControlList,访问控制列表)、QOS(QualityOfService,服务质量)等,这些业务的处理一般需要查询比较大的表,查表比较耗时,一般不能满足数据报文转发性能要求。[0003]ACL、QOS等控制业务需要使用报文中的五元组(源地址、源端口、目的地址、目的端口和层四协议号)或者七元组(源地址、源端口、目的地址、目的端口、层四协议号、服务类型(Tos,TypeOfService)和层4标志)对报文进行控制。[0004]为此,以报文的六元组(源地址、源端口、目的地址、目的端口、层四协议号和接口索引)或者九元组(源地址、源端口、目的地址、目的端口、层四协议号、分片标志、服务类型、层4标志和接口索引)可以唯一定义一条流,使用六元组或者九元组作为KEY值构建流表项,流表项中包括KEY值和其它字段。接口接收到报文后,先在流表中查找流表项,把查找的流表项保存在特定的位置(如报文描述符中,报文描述符是存储报文信息的控制块)。ACL、QOS等控制业务直接在特定位