[发明专利]一种OpenFlow大规模流表聚合与加速查找方法在审
申请号: | 202111286196.1 | 申请日: | 2021-11-02 |
公开(公告)号: | CN115510287A | 公开(公告)日: | 2022-12-23 |
发明(设计)人: | 熊兵;周浩;曾振国;袁月 | 申请(专利权)人: | 长沙理工大学 |
主分类号: | G06F16/903 | 分类号: | G06F16/903;G06F16/901 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 410114 湖*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 openflow 大规模 聚合 加速 查找 方法 | ||
本发明设计了一种基于动作集树的流表聚合方法,其根据掩码将原始OpenFlow流表划分成若干个元组,然后通过构建或合成动作集树合并元组内外动作集可能不同的流表项。当流表进行插入或删除时,只聚合或拆分相关表项,以减小流表更新开销。进一步,本发明提供了一种OpenFlow大规模流表加速查找方法。该方法首先将流表项的内容字段分离出来采用DRAM存储,然后采用上述基于动作集树的流表聚合方法压缩流表的匹配字段,以使TCAM能够容纳绝大多数甚至所有流表项。当聚合后的流表仍超出TCAM容量时,将多数的活跃流存入TCAM,只有少数的空闲流存入SRAM,从而使大部分数据包能够直接命中TCAM实现快速转发。
技术领域
本发明涉及一种基于动作集树的流表聚合方法,以及一种OpenFlow大规模流表聚合与加速查找方法。
背景技术
软件定义网络(Software-Defined Networking,SDN)作为一种创新网络架构,将逻辑控制功能从数据转发设备中解耦出来,构建逻辑上集中的SDN控制平面,进而向上层应用提供统一编程接口,从而大大提升网络的开放性、灵活性和可编程能力,成为迈向互联网未来最有前景的发展方向之一。SDN控制平面负责构建全局网络视图并制定流规则,进而通过以OpenFlow为代表的南向接口协议下发给数据平面的交换机,以指导网络数据包的转发行为。OpenFlow将各层网络协议首部的关键字段作为流表匹配字段,并引入通配符实现任意字段的组合,以灵活定义和管理不同粒度的网络流。由于TCAM存储器支持带通配符的三态数据查询,且具有并行查找整个数据集的能力,能在一个时钟周期内输出查找结果,因此OpenFlow交换机通常采用TCAM存储流表,以实现快速通配查找。
图1展示了OpenFlow交换机的数据包基本处理过程,其工作原理如下:
(1)当OpenFlow交换机接收到一个数据包p时,首先解析提取其各层协议首部中的重要字段,计算其对应的流标识符fid;(2)利用流标识符fid查找OpenFlow流表,即并行匹配TCAM存储器中的所有流表项;(3)若流表查找成功,则返回优先级最高的匹配表项,然后执行相应的动作集。(4)若流表查找失败,则OpenFlow交换机以Packet-in消息的形式发送流安装请求给控制器。控制器再根据全局网络视图生成对应的流规则,然后下发给交换机,并安装到OpenFlow流表中,用于转发处理相应流中的后续数据包。
在OpenFlow交换机中,TCAM存储器成本高,集成度低,容量有限。当SDN部署在大规模网络中,网络并发流数量众多,OpenFlow流表项数量显著增多。同时,随着OpenFlow协议版本的持续演进,流表项的匹配字段越来越多,导致单条流表项的宽度不断增大。这两方面产生的乘法效应导致流表规模迅速增大,使得TCAM无法满足OpenFlow大规模流表的存储空间需求。目前为止,缓解流表存储问题的主流方案是采用SRAM协同TCAM存储流表。然而,SRAM采用地址寻址方式,往往通过元组空间搜索法实现通配查找,查找速度慢。对于OpenFlow大规模流表,SRAM存储的流表项数量多,查找开销大,容易产生数据包转发性能瓶颈。此外,最有前景的方法是采用流表聚合将多条相近的流表项合并成一条流表项,使得TCAM能够容纳绝大多数甚至所有OpenFlow流表项,具体如下:
如图2所示的【方案一】是一种非前缀流表聚合方法Bit Weaving。该方法首先根据流表项匹配字段的比特信息划分正交分组。然后,采用比特交换与比特合并两种技术,将单个分组内的流表项用前缀形式表示,并采用前缀聚合算法合并流表项。最后,通过比特还原将流表项的匹配字段恢复成原始的比特序列。
方案一的聚合过程如下:(1)首先将流表项按匹配字段所包含通配位的数量递增排列,并依次对两条相邻流表项的掩码进行与运算,以判断分组中是否引入交叉现象,从而划分正交分组;(2)通过交换流表项匹配字段的比特顺序,将各分组内流表项的匹配字段转换为前缀形式;(3)通过加权一维前缀聚合算法,合并分组内汉明距离为1且动作集相同的流表项;(4)根据比特交换顺序还原流表项,得到流表项匹配字段的原始比特序列,从而完成OpenFlow流表聚合过程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于长沙理工大学,未经长沙理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111286196.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种莪术药酒
- 下一篇:一种高浓度壬二酸乳膏及其制备工艺