流表处理方法、装置、开放流控制器及开放流交换机的制作方法_3

文档序号:9730090阅读:来源:国知局
是否有非IP类型的字段,并且有has_mask设置,即化enFlow交换机检查request中的 0FPTFPT_MATCH属性,其中所有0XM header的has_mask标记都为化1 se,除了一个0XM header。并且该0XM对应源IP地址,或者目的IP地址。是则继续步骤S1008,否则转步骤 S1012 ;
[0070] 步骤 S1008, OpenFlow 交换机检查 request 中是否设置了 0FPTFMF_MASK_R0UTE 标 记,是则继续步骤S1010,否则转步骤S1012 ;
[0071] 步骤S1010,化enFlow交换机调用相应资源完成路由表的创建;
[0072] 步骤S1012,化enFlow交换机按照现有的TCAM方式创建流表。
[0073] 优选实施方式二
[0074] 在本优选实施方式中,阐述了化enFlow交换机在收到了控制器发送的流配置消 息(Flow mod)后的处理流程。图11是根据本发明优选实施方式的化enFlow交换机在收 到了控制器发送的流配置消息后的处理流程图,如图11所示,该流程包括如下步骤:
[00巧]步骤S1102,化enFlow交换机接收到控制器发送的flow mod (流表模式)添加请 求;
[0076] 步骤S1104,化enFlow交换机根据flow mod(流表模式)消息中的t油le id(流 表标识)找到对应的table feature (流表特征),确定其为路由表;
[0077] 步骤S1106, OpenFlow交换机检查flow mod中的匹配域及动作(action)与 t油lefeature (流表特征)是否一致,如果匹配域及action操作是一致,则进行步骤 S1108,否则转到步骤S1110进行报错处理;
[007引步骤S1108,化enFlow交换机解析flow mod消息为路由条目信息,插入路由表;
[0079] 步骤S1110, OpenFlow交换机向控制器发送错误error消息,error类型为0FPET_ BAD_MATCH。在本优选实施方式中,还需要扩展现有的ofp_bad_match_code的值,扩展了Η 个因为匹配不一致导致的错误,具体的扩展定义如下,其中斜体部分为新定义的错误code。
[0080] enum ofp_bad_match_code{
[0081] 0FPBMC_BAD_TYPE = 0,
[0082] 0FPBMC_BAD_LEN = 1,
[0083] 0FPBMC_BAD_TAG = 2,
[0084] 0FPBMC_BAD_DL_ADDR_MASK = 3,
[00 巧]0FPBMC_BAD_NW_ADDR_MASK = 4,
[0086] 0FPBMC_BAD_WILDCA畑S = 5,
[0087] 0FPBMC_BAD_FIELD = 6,
[0088] 0FPBMC_BAD_VALUE = 7,
[0089] 0FPBMC_BAD_MASK = 8,
[0090] 0FPBMC_BAD_PREREQ = 9,
[0091] 0FPBMC_DUP_FIELD = 10,
[0092] 0FPBMC_EWRM = 11,
[0093] OFPBAC_BAD_FIELD_MASK_FIX = 12, /*t油le fea化re 中 0FPTFMF_MASK_FIX 标志 位与当前flow entry不一重义*/
[0094] 0FPBAC_BAD_FKLD_MASK_R0UTE = 13, /*t油le fea化re 中 0FPTFMF_MASK_R0UTE 标记位与当前flow ent巧不一致*/
[0095] }
[0096] 显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可W用通用 的计算装置来实现,它们可W集中在单个的计算装置上,或者分布在多个计算装置所组成 的网络上,可选地,它们可W用计算装置可执行的程序代码来实现,从而,可W将它们存储 在存储装置中由计算装置来执行,并且在某些情况下,可W W不同于此处的顺序执行所示 出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或 步骤制作成单个集成电路模块来实现。送样,本发明不限制于任何特定的硬件和软件结合。
[0097] W上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技 术人员来说,本发明可W有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修 改、等同替换、改进等,均应包含在本发明的保护范围之内。
【主权项】
1. 一种流表处理方法,其特征在于,包括: 扩展向开放流OpenFlow交换机发送的流表特征消息,其中,所述流表特征消息中包括 有用于指示流表创建结构的流表匹配信息; 将所述流表特征消息发送给所述OpenFlow交换机。2. 根据权利要求1所述的方法,其特征在于,扩展向开放流OpenFlow交换机发送的流 表特征消息包括以下至少之一: 扩展用于指示流表创建结构的流表匹配信息为用hash表实现流表的创建结构; 扩展用于指示流表创建结构的流表匹配信息为用路由表实现流表的创建结构。3. -种流表处理方法,其特征在于,包括: 接收开放流OpenFlow控制器发送的流表特征消息,其中,所述流表特征消息中包括有 用于指示流表创建结构的流表匹配信息; 依据所述流表匹配信息指示的流表创建结构创建流表。4. 根据权利要求3所述的方法,其特征在于,依据所述流表匹配信息指示的流表创建 结构创建流表包括以下至少之一: 在所述流表匹配信息为用于表征掩码固定的标记〇FPTFMF_MASK_FIX置位,并且OFPTFPT_WILDCARDS属性的0XM队列为空的情况下,采用hash表创建所述流表; 在所述流表匹配信息为用于表征掩码同路由表的0FPTFMF_MASK_R0UTE置位的情况 下,采用路由表创建所述流表。5. -种流表处理装置,其特征在于,包括: 扩展模块,用于扩展向开放流OpenFlow交换机发送的流表特征消息,其中,所述流表 特征消息中包括有用于指示流表创建结构的流表匹配信息; 发送模块,用于将所述流表特征消息发送给所述OpenFlow交换机。6. 根据权利要求5所述的装置,其特征在于,所述扩展模块包括以下至少之一: 第一扩展单元,用于扩展用于指示流表创建结构的流表匹配信息为用hash表实现流 表的创建结构; 第二扩展单元,用于扩展用于指示流表创建结构的流表匹配信息为用路由表实现流表 的创建结构。7. -种开放流OpenFlow控制器,其特征在于,包括权利要求5至6中任一项所述的装 置。8. -种流表处理装置,其特征在于,包括: 接收模块,用于接收开放流OpenFlow控制器发送的流表特征消息,其中,所述流表特 征消息中包括有用于指示流表创建结构的流表匹配信息; 创建模块,用于依据所述流表匹配信息指示的流表创建结构创建流表。9. 根据权利要求8所述的装置,其特征在于,所述创建模块包括以下至少之一: 第一创建单元,用于在所述流表匹配信息为用于表征掩码固定的标记〇FPTFMF_MASK_ FIX置位,并且OFPTFPT_WILDCARDS属性的0XM队列为空的情况下,采用hash表创建所述流 表; 第二创建单元,用于在所述流表匹配信息为用于表征掩码同路由表的〇fptfmf_mask_ROUTE置位的情况下,采用路由表创建所述流表。 置。10. -种开放流OpenFlow交换机,其特征在于,包括权利要求8至9中任一项所述的装
【专利摘要】本发明公开了一种流表处理方法、装置、开放流控制器及开放流交换机,其中,该方法包括:扩展向开放流OpenFlow交换机发送的流表特征消息,其中,流表特征消息中包括有用于指示流表创建结构的流表匹配信息;将流表特征消息发送给OpenFlow交换机,通过本发明,解决了相关技术中,构建流表存在成本高,效率低的问题,进而达到了节省成本,提高流表构建效率的效果。
【IPC分类】H04L12/937, H04L12/743, H04L12/751
【公开号】CN105490946
【申请号】CN201410478493
【发明人】胡方伟, 刘奇峰
【申请人】中兴通讯股份有限公司
【公开日】2016年4月13日
【申请日】2014年9月18日
【公告号】WO2015131617A1
当前第3页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1