[发明专利]一种多级流表查找方法和装置有效
申请号: | 201310269726.0 | 申请日: | 2013-06-28 |
公开(公告)号: | CN103354522A | 公开(公告)日: | 2013-10-16 |
发明(设计)人: | 丁万夫;林程勇;谢高岗;关洪涛;黄昆;于吉星 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | H04L12/741 | 分类号: | H04L12/741 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 唐华明 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 多级 查找 方法 装置 | ||
技术领域
本发明涉及通信领域,尤其涉及一种多级流表查找方法和装置。
背景技术
随着网络设备新技术的发展,特别是出于对可编程、虚拟化的支持,网络设备开始向控制、数据平面分离的方向发展,OpenFlow作为其中之一,引发了广泛的关注。OpenFlow网络由OpenFlow交换机、FlowVisor和控制器(Controller)三部分组成,其中,OpenFlow交换机是整个OpenFlow网络的核心部件,主要管理数据层的转发,FlowVisor对网络进行虚拟化,Controller对网络进行集中控制,实现控制层的功能。OpenFlow交换机接收到数据包后,首先在本地的流表(flow table)上查找转发目标端口。如果没有匹配,则将数据包转发给控制器,由控制层决定转发端口。OpenFlow在OpenFlow交换机上实现数据转发,而在控制器上实现数据的转发控制,从而实现了数据转发层和控制层的分离。
从上述数据包在OpenFlow网络上的处理过程可知,对流表的查找是一个重要环节。一般地,本地流表不止一个,而是由多个流表串接起来组成多级流表。现有的多级流表的匹配域都为固定多级流表匹配域,其每个流表的匹配域固定。每个流表具有独立的查找单元,一旦数据包到达,则查找单元查找其对应的流表。然后,通过查找所得下一个流表的ID判断跳转的下一个流表,并将查找的结果添加对应的动作到指令集。流表的跳转是可以跨表跳转的,根据OpenFlow协议规定,每个流表匹配完成后可以指定下一个流表的ID,只要该ID大于当前表ID即可。例如,指定流表1的匹配结果为跳转到流表3,则流表1可以不经过流表2直接跳转到流表3。
上述现有的对多级流表的查找方法,其主要缺点在于多级流表中每个单个的流表为固定匹配域,每次更换匹配域需要修改硬件逻辑,缺乏灵活性。
发明内容
本发明实施例提供一种多级流表查找方法和装置,以增强流表匹配域配置的灵活性。
本发明第一方面提供一种多级流表查找方法,所述方法包括:
在收到数据包时抽取所述数据包的匹配信息;
根据流表匹配域配置信息,从所述数据包的匹配信息中选择关键字;
以所述关键字为查找关键字,从多级流表中第一级流表开始,查找所述多级流表中每一级流表的匹配域进行所述查找关键字与所述匹配域的匹配;
若当前一级流表的匹配域匹配完成,则执行相应的指令,若所述当前一级流表不是最后一级流表或者有执行动作的指令时,则执行相应的动作。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述执行相应的指令和动作后,所述方法还包括:对所述抽取的数据包的匹配信息进行修改。
结合第一方面、第一方面的第一种可能的实现方式或第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,从所述数据包的匹配信息中选择关键字,包括:
根据以位图表示的所述流表匹配域配置信息,从所述数据包的匹配信息中确定用于进行流表匹配域匹配的匹配信息;
以所述确定的匹配信息组成所述关键字。
结合第一方面、第一方面的第一种可能的实现方式或第一方面的第二种可能的实现方式,在第一方面的第四种可能的实现方式中,从所述数据包的匹配信息中选择关键字,包括:
根据以固定编码表示的所述流表匹配域配置信息,从所述数据包的匹配信息中确定用于进行流表匹配域匹配的匹配信息;
以所述确定的匹配信息组成所述关键字。
本发明第二方面提供一种多级流表查找装置,所述装置包括:
抽取模块,用于在收到数据包时抽取所述数据包的匹配信息;
关键字生成模块,用于根据流表匹配域配置信息,从所述数据包的匹配信息中选择关键字;
查找模块,用于以所述关键字为查找关键字,从多级流表中第一级流表开始,查找所述多级流表中每一级流表的匹配域进行所述查找关键字与所述匹配域的匹配;
执行模块,用于若当前一级流表的匹配域匹配完成,则执行相应的指令,若所述当前一级流表不是最后一级流表或者有执行动作的指令时,则执行相应的动作。
结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述装置还包括:
修改模块,用于对所述抽取的数据包的匹配信息进行修改。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310269726.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:报文过滤方法与装置
- 下一篇:一种链路连接信息的获取方法和设备