[发明专利]一种基于普通交换芯片的OpenFlow多级流表的实现方法在审

专利信息
申请号: 201510141725.7 申请日: 2015-03-27
公开(公告)号: CN104821890A 公开(公告)日: 2015-08-05
发明(设计)人: 汪革;芶利平;奚天荣 申请(专利权)人: 上海博达数据通信有限公司
主分类号: H04L12/24 分类号: H04L12/24
代理公司: 上海天翔知识产权代理有限公司 31224 代理人: 刘常宝
地址: 201203 上海市浦*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 普通 交换 芯片 openflow 多级 实现 方法
【说明书】:

技术领域

发明涉及数据通信领域,特别涉及一种基于普通交换芯片的OpenFlow多级流表的实现方法。

背景技术

随着数据通信设备的复杂程度不断提高,云计算及其业务的发展,服务器的应用需求产生了爆炸性的增长,随着社交网络,移动互联网,物联网等业务领域的快速发展,大数据正日益成为当前的焦点,其面向的海量数据处理也对当今的网络提出了更高的要求。传统的网络架构已经不能够满足今天的企业,运营商和终端用户的需求。

发明内容

鉴于上述技术问题,本发明的目的在于提供一种基于普通交换芯片的OpenFlow多级流表的实现方法,以满足现有网络对数据通信处理的要求。

为了达到上述目的,本发明采用如下的技术方案:

一种基于普通交换芯片的OpenFlow多级流表的实现方法,该方法由网络设备维护一个或者若干个多级流表(FlowTable),并且数据流只按照这些流表进行转发,所述流表由一些关键字和执行动作组成的灵活规则,并且每个关键字字段都是可以通配的,流表本身的生成、维护、下发完全由外置的控制器(Controller)来管理。

优选的,所述多级流表(FlowTable)的下发可以是主动的,也可以是被动的,在主动模式下,控制器(Controller)将自己收集的流表信息主动下发给网络设备,随后网络设备可以直接根据流表进行转发;在被动模式下,网络设备收到一个报文没有匹配的流表(FlowTable)记录时,将该报文转发给控制器(Controller),由控制器(Controller)进行决策该如何转发,并下发相应的流表。

优选的,所述多级流表(FlowTable)里设有pipeline管道,基于该pipeline管道形成报文处理流水线,整个处理流程在报文入方向有32个匹配阶段(Match Stage),同时在报文出方向有32个匹配阶段(Match Stage)。

优选的,所述pipeline管道基于以下三个步骤来实现:

a)找到对应流表中最高优先级的匹配项;

b)将匹配项中的指令(instructions)应用到packet、match、action上,并更新对应流表中的动作信息;

c)将报文中的匹配项和动作集送往多级流表中的下一个表(table)。如果没有在多级流表的所有的表(table)中匹配,那么有多种默认行为可以实现,如丢包、继续下一个表、发往controller。

优选的,所述流表由流量实体(Flow Entry)组成,一个流表中包含多个流表项。

优选的,所述流表流表项包括匹配字段(Match Fields)、计数器和指令集三个部分,所述匹配字段(Match Fields)是报文匹配的输入关键字,计数器是管理所需,指令集是决定报文如何转发,最基本的转发行为包括转发给某个端口、封装改写报文后转发以及丢弃。

优选的,所述流表项通过匹配字段和优先级决定,在一个流表中匹配字段和优先级共同确定唯一的流表项,其中所有字段通配和优先级等于0的流表项为table-miss流表项,所述table-miss表项指定在流表中如何处理与其他流表项未匹配的数据包。

优选的,在进行流表项匹配时,优先级最高的流表项必须被选择,此时与选择流表项相关的计数器也会被更新,选定流表项的指令集也被执行。

优选的,对于table-miss表项,默认情况下,在流表中不存在table-miss表项,控制器可以在任何时候添加或删除它,而且它可能会超时失效,able-miss表项可以匹配流表中其他表项中不能匹配的数据,当数据包与table-miss表项匹配时,table-miss表项指令就会执行,如果该table-miss表项直接将数据包通过CONTROLLER端口发送到控制器,那么报文中的信息必须与一个table-miss表项匹配;如果该table-miss表项不存在,默认情况下,流表项无法将数据包丢弃。

优选的,所述多级流表(FlowTable)按顺序编号,从0开始,据此构成的流水线处理总是从第一流表开始,数据包第一个与流表0的流表项匹配,其它流表根据第一个表的匹配结果来调用。

优选的,所述流表进行处理时,将数据包与流表中的流表项进行匹配,从而选择流表项,如果匹配到了流表项,那么包括在该流表项的指令集被执行时,这些指令可能明确指导数据包传递到另一个流表,在那里同样的处理被重复执行。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海博达数据通信有限公司,未经上海博达数据通信有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201510141725.7/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top