[发明专利]一种OF协议指令实现方法及控制器在审
申请号: | 201410041056.1 | 申请日: | 2014-01-27 |
公开(公告)号: | CN104811429A | 公开(公告)日: | 2015-07-29 |
发明(设计)人: | 康提;汪军;胡永生;田甜 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L12/931 |
代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 田红娟;龙洪 |
地址: | 518057 广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 of 协议 指令 实现 方法 控制器 | ||
技术领域
本发明涉及通讯领域,尤其是SDN网络使用OF协议的一种OF协议指令实现方法及控制器。
背景技术
美国斯坦福大学于2008年提出了了OpenFlow协议,该协议采用转发/控制分离架构,外置控制面实体采用OpenFlow协议控制转发面设备实现各种转发逻辑,而转发面设备主要功能就是根据OpenFlow控制器下发的流表执行受控转发,其行为是标准化的:收到一条报文,取出其头部L2/L3/L4相关字段值,以其作为关键字查找流表,匹配到一个表项后,根据表项内容中的指令集对报文字段进行处理,完毕后根据指示转发到某一逻辑或物理端口。此协议思想进一步演进,称为SDN(Software Defined Network,软件定义网络技术),即可以在控制面采用软件编程实现各种复杂的网络应用,而转发面设备无需任何改变,由于控制面采用通用服务器+通用操作系统,并且可以使用通用的软件编程工具,也可以使用Python这样的脚本编程语言实现,这使得新的网络协议的支持变得非常简单,而且新技术部署周期大大缩短。
根据OF协议,目前对流的处理是通过流水线来实现的,一条流水线包含多张流表,每张流表要求报文能够匹配某些字段的值,对匹配的报文做一定的操作,这些操作包含在指令(Instruction(s))里面。以OF1.3为例,目前支持以下类型的指令:
指令的结构和值域按照TLV(Type,Length,Value)格式来实现,即每一个指令结构体都包含一个类型域、长度域和值域,其中值域的长度由长度域确定,指令结构如下如图1所示。
指令中的value可以是明确的值,如OFPIT_GOTO_TABLE指令类型ofp_instruction_goto_table结构体,其值域就是跳转的目的表号;也可以是一个动作(action)或动作组(actions)的列表,如OFPIT_APPLY_ACTIONS类型指令。以OF1.3为例,目前支持以下类型的动作:
每种类型的action有各自对应的结构体,用于表明操作对象和范围。如图1所示,每个动作类型的结构体同样遵循TLV结构。每下发一张流表,将携带一个或多个ofp_instruction_XX+ofp_action_YY(s)的结构。
分析TLV结构,type用于说明Instruction和action的类型,即采取的操作和如何设别value;length说明总结构体的长度,由于type字段和length字段长度固定,可得到value的长度;value是操作所携带的参数,通过type进行区分。分析协议中各类型的Instruction和action的有效率,即有效数据(type+对应value)长度与总长度之比,可以发现这个值在25%-75%之间。对于不同流表中指令的组合,由于可能还需增加额外的padding字段,有效率则更低,使得控制器下发给转发面的流表包含大量冗余信息,导致下发数据负载较大。
转发面对每个消息的解析,按照OF协议,都需要从Instruction的头部开始,以分析type类型,获取对应value的值,将Instruction及其所有的action重新解析一遍,过程冗余,效率较低。
发明内容
本发明所要解决的技术问题是,提供一种OF协议指令实现方法及控制器,以减少控制面与转发面之间的流量负载。
为了解决上述技术问题,本发明公开了一种OF协议指令实现方法,包括:
控制器根据初始配置获取各流表所支持的所有指令及其类型,针对各流表中指令生成属性标识符,将属性标识符与指令之间的映射关系表保存在控制器本地;
当所述控制器检测到上线的交换机时,向所述上线的交换机下发所保存的映射关系表;
其中,每个属性标识符至少标识出其对应流表中所有指令的指令类型,指令结构,以及各指令的值的类型和长度信息。
可选地,上述方法中,所述属性标识符还标识出对应流表中指令中携带的行为的类型和行为的值的类型和长度信息。
可选地,上述方法还包括:
在运行过程中,若有新增配置,则所述控制器生成新的流表,并对新的流表中指令生成新的属性标识符,将新的属性标识符与指令之间的映射关系更新保存至本地的映射关系表。
可选地,上述方法还包括:
所述控制器将更新后的映射关系表下发到所有交换机;或者
所述控制器仅将新的属性标识符与指令之间的映射关系下发到所有交换机。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410041056.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种信息的展示方法及装置
- 下一篇:位置信息的共享方法和装置