[发明专利]一种数据报文转发方法及装置有效
申请号: | 201310400616.3 | 申请日: | 2013-09-05 |
公开(公告)号: | CN104426768B | 公开(公告)日: | 2018-06-15 |
发明(设计)人: | 沈伟锋;周在福;吴祖光 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | H04L12/741 | 分类号: | H04L12/741 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 王仲凯 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明实施例公开了数据报文转发方法及装置,用于提高数据报文在进行流表匹配时的匹配效率。本发明实施例方法包括:获取数据报文的属性标识;根据所述属性标识在第一流表中查找第一流表项,所述第一流表项包括:动作集合,所述动作集合为一种数据报文的各个属性标识在多级流表中分别对应的指定操作;若所述第一流表项查找成功,则根据与所述属性标识匹配的第一流表项对应的动作集合对所述数据报文进行转发。 1 | ||
搜索关键词: | 属性标识 动作集合 数据报文 表项 数据报文转发 流表 匹配 表项查找 获取数据 匹配效率 报文 转发 查找 成功 | ||
获取数据报文的属性标识;
根据所述属性标识在第一流表中查找第一流表项,所述第一流表项包括:动作集合,所述动作集合为一种数据报文的各个属性标识在多级流表中对应的指定操作的集合;
若所述第一流表项查找成功,则根据与所述属性标识匹配的第一流表项对应的动作集合对所述数据报文进行转发;
若所述第一流表项查找失败,则根据所述属性标识依次在多级第二流表中查找第二流表项,依次根据各个所述第二流表项中的指定操作对所述数据报文进行转发,并根据查找到的各个所述第二流表项生成所述第一流表项,将所述第一流表项记录在所述第一流表中。
2.根据权利要求1所述的方法,其特征在于,所述第一流表项还包括:精确匹配域;
所述根据属性标识在第一流表中查找第一流表项,包括:
在第一流表中查找与所述数据报文的各个属性标识都匹配的精确匹配域,所述精确匹配域对应的第一流表项为所要查找的第一流表项。
3.根据权利要求1所述的方法,其特征在于,所述第二流表项包括:通配匹配域和指定操作;所述根据查找到的各个第二流表项生成第一流表项,包括:
在依次根据各个所述第二流表项中的指定操作对所述数据报文进行转发之后,记录执行过的所述指定操作,得到所述数据报文的动作集合;
分析所述数据报文,获得所述数据报文的精确匹配域;
根据所述数据报文的动作集合和所述精确匹配域生成所述数据报文对应的第一流表项。
4.根据权利要求1所述的方法,其特征在于,所述根据查找到的各个所述第二流表项生成所述第一流表项之后,包括:当第二流表中的第二流表项被老化时,删除第一流表中与所述第二流表项相关联的第一流表项;
或,
当第二流表中的第二流表项被修改时,删除第一流表中与所述第二流表项相关联的第一流表项;
或,
当第二流表中的第二流表项被删除时,删除第一流表中与所述第二流表项相关联的第一流表项;
或,
当第二流表中添加新的第二流表项时,检测第一流表中与所述第二流表相关联的第一流表项的优先级是否比新增第二流表项低,若是,则删除第一流表中与所述第二流表相关联的第一流表项。
5.根据权利要求1所述的方法,其特征在于,所述根据查找到的各个所述第二流表项生成所述第一流表项之后,包括:实时或定时向所述第二流表发送所述第一流表的流量统计消息,使得所述第二流表根据所述流量统计消息来记录所述数据报文的流量,并更新相应的第二流表项的空闲时间idle time。
6.一种交换机,其特征在于,包括:数据获取单元,用于获取数据报文的属性标识;
匹配查找单元,用于根据所述属性标识在第一流表中查找第一流表项,所述第一流表项包括:动作集合,所述动作集合为一种数据报文的各个属性标识在多级流表中对应的指定操作的集合;
转发单元,用于若所述第一流表项查找成功,则根据与所述属性标识匹配的第一流表项对应的动作集合对所述数据报文进行转发;
流表生成单元,用于若所述第一流表项查找失败,则在根据所述属性标识依次在多级第二流表中查找第二流表项,依次根据各个所述第二流表项中的指定操作对所述数据报文进行转发之后,根据查找到的各个所述第二流表项生成所述第一流表项,将所述第一流表项记录在所述第一流表中。
7.根据权利要求6所述的交换机,其特征在于,所述匹配查找单元具体用于:在第一流表中查找与所述数据报文的各个属性标识都匹配的精确匹配域,所述精确匹配域对应的第一流表项为所要查找的第一流表项。
8.根据权利要求6所述的交换机,其特征在于,所述流表生成单元包括:操作记录模块,用于在依次根据各个所述第二流表项中的指定操作对所述数据报文进行转发之后,记录执行过的所述指定操作,得到所述数据报文的动作集合;
报文分析模块,用于分析所述数据报文,获得所述数据报文的精确匹配域;
流表生成模块,用于根据所述数据报文的动作集合和所述精确匹配域生成所述数据报文对应的第一流表项。
9.根据权利要求6所述的交换机,其特征在于,所述交换机还包括:流表项删除单元,用于当第二流表中的第二流表项被老化时,删除第一流表中与所述第二流表项相关联的第一流表项;或,当第二流表中的第二流表项被修改时,删除第一流表中与所述第二流表项相关联的第一流表项;或,当第二流表中的第二流表项被删除时,删除第一流表中与所述第二流表项相关联的第一流表项;或,当第二流表中添加新的第二流表项时,检测第一流表中与所述第二流表相关联的第一流表项的优先级是否比新增第二流表项低,若是,则删除第一流表中与所述第二流表相关联的第一流表项。
10.根据权利要求6所述的交换机,其特征在于,所述交换机还包括:同步单元,用于实时或定时向所述第二流表发送所述第一流表的流量统计消息,使得所述第二流表根据所述流量统计消息来记录所述数据报文的流量,并更新相应的第二流表项的空闲时间idle time。该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201310400616.3/,转载请声明来源钻瓜专利网。