一种openflow流表的查表方法和装置制造方法及图纸

技术编号:13277935 阅读:41 留言:0更新日期:2016-05-19 02:47
本发明专利技术公开了一种openflow流表的查表方法,控制平面上,将各级openflow流表按照关键字域划分为精确匹配流表和至少一个分类匹配流表,按照流表配置信息的关键字域,将流表配置信息作为表项下发到精确匹配流表或分类匹配流表中,转发平面上,采用报文的所有关键字对精确匹配流表进行查表,在查找到匹配的表项时,按照所述表项的功能进行报文处理;在没有查找到匹配的表项时,提取报文的不同关键字域的关键字对所述至少一个分类匹配流表进行并行查表,根据查表的结果,动态建立精确匹配流表的表项,并按照所述表项的功能进行报文处理,本发明专利技术同时还公开了一种openflow流表的查表装置。

【技术实现步骤摘要】

本专利技术涉及以太网数据通信领域,尤其涉及一种openflow流表的查表方法和装置
技术介绍
随着软件定义网络(SDN,Software Defined Network)的兴起,openflow 作为其中一种主流的技术,得到了广泛的研究,标准日趋成熟,逐渐被各设备商和运营商接受和认可。但作为新兴技术,无论在转发层面还是控制层面,openflow技术也都遇到了巨大的挑战,在实现上也存在较多的技术瓶颈,阻碍openflow技术的进一步推广和应用。从转发层面上来看,主要存在下面的问题:1、为了涵盖更多的复杂业务和业务扩展的需要,openflow技术提出多级流表的概念,并没有限制流表的级数,每个报文可能采用不同的关键字多次查找流表,也可能利用上一级流表的查找结果作为关键字查找后续流表,这就带来了设计的复杂性和降低转发性能的问题。2,OpenFlow标准中定义了一张流表可以使用任意的关键字字段组合去做查表,当前主流的方法是采用三态内容寻址存储器(TCAM)芯片实现流表,而openflow标准中定义的关键字字段很多,如果全部关键字都考虑进来的话,需要576比特(bit)的key表示一个表项,那么一个36Mbit的TCAM芯片,最大只能存储64K个表项,这个规格是很难满足业界需求的,而且TCAM芯片是昂贵的资源,纯粹通过TCAM芯片来实现流表不太现实。
技术实现思路
为解决现有存在的技术问题,本专利技术主要提供一种openflow流表的查表方法和 目.ο本专利技术的技术方案是这样实现的:本专利技术提供一种openflow流表的查表方法,该方法包括:控制平面上,将各级openflow流表按照关键字域划分为精确匹配流表和至少一个分类匹配流表,接收openflow控制器下发的流表配置信息,按照流表配置信息的关键字域,将流表配置信息作为表项下发到精确匹配流表或分类匹配流表中;转发平面上,采用报文的所有关键字对精确匹配流表进行查表,在查找到匹配的表项时,按照所述表项的功能进行报文处理;在没有查找到匹配的表项时,提取报文的不同关键字域的关键字对所述至少一个分类匹配流表进行并行查表,根据查表的结果,动态建立精确匹配流表的表项,并按照所述表项的功能进行报文处理。上述方案中,所述至少一个分类匹配流表包括:二层(L2)流表、三层(L3)流表、多协议标签交换(MPLS)流表和模糊匹配(wildcard)流表。上述方案中,所述按照流表配置信息的关键字域,将流表配置信息作为表项下发到精确匹配流表或分类匹配流表中,包括:将关键字域为精确匹配所有关键字的流表配置信息作为精确匹配流表的表项,下发到精确匹配流表中,将关键字域为只匹配二层基本业务的流表配置信息作为L2流表的表项,下发到L2流表中,将关键字域为只匹配三层基本业务和关键字域为只匹配MPLS业务的流表配置信息,分别作为L3流表和MPLS流表的表项下发到对应的L3流表和MPLS流表中,将其他的流表配置信息作为wildcard流表的表项下发到wildcard流表中。上述方案中,所述根据查表的结果,动态建立精确匹配流表的表项,包括:将从分类匹配流表中查找到的匹配的表项的功能设置到流表转发流程的功能集中,将流表转发流程的功能集与报文的所有关键字作为一个精确匹配流表的表项,并设置动态表项标志,记录表项生成时间戳,设置表项的老化时间。上述方案中,该方法还包括:对精确匹配流表的动态表项进行老化和更新。本专利技术提供一种openflow流表的查表装置,该装置包括:控制平面模块、转发平面模块;其中,控制平面模块,用于将各级openflow流表按照关键字域划分为精确匹配流表和至少一个分类匹配流表,接收openflow控制器下发的流表配置信息,按照流表配置信息的关键字域,将流表配置信息作为表项下发到精确匹配流表或分类匹配流表中;转发平面模块,用于采用报文的所有关键字对精确匹配流表进行查表,在查找到匹配的表项时,按照所述表项的功能进行报文处理;在没有查找到匹配的表项时,提取报文的不同关键字域的关键字对所述至少一个分类匹配流表进行并行查表,根据查表的结果,动态建立精确匹配流表的表项,并按照所述表项的功能进行报文处理。上述方案中,所述至少一个分类匹配流表包括:L2流表、L3流表、MPLS流表和wildcard 流表。上述方案中,所述控制平面模块,具体用于将关键字域为精确匹配所有关键字的流表配置信息作为精确匹配流表的表项,下发到精确匹配流表中,将关键字域为只匹配二层基本业务的流表配置信息作为L2流表的表项,下发到L2流表中,将关键字域为只匹配三层基本业务和关键字域为只匹配MPLS业务的流表配置信息,分别作为L3流表和MPLS流表的表项下发到对应的L3流表和MPLS流表中,将其他的流表配置信息作为wildcard流表的表项下发到wildcard流表中。上述方案中,所述转发平面模块,具体用于在没有查找到匹配的表项时,提取报文的不同关键字域的关键字对所述至少一个分类匹配流表进行并行查表,将查找到的匹配的表项的功能设置到流表转发流程的功能集中,将流表转发流程的功能集与报文的所有关键字作为一个精确匹配流表的表项,并设置动态表项标志,记录表项生成时间戳,设置表项的老化时间。上述方案中,所述转发平面模块,还用于对精确匹配流表的动态表项进行老化和更新。本专利技术提供了一种openflow流表的查表方法和装置,控制平面上,将各级openflow流表按照关键字域划分为精确匹配流表和至少一个分类匹配流表,接收openflow控制器下发的流表配置信息,按照流表配置信息的关键字域,将流表配置信息作为表项下发到精确匹配流表或分类匹配流表中,转发平面上,采用报文的所有关键字对精确匹配流表进行查表,在查找到匹配的表项时,按照所述表项的功能进行报文处理;在没有查找到匹配的表项时,提取报文的不同关键字域的关键字对所述至少一个分类匹配流表进行并行查表,根据查表的结果,动态建立精确匹配流表的表项,并按照所述表项的功能(act1n)进行报文处理;如此,后续对所述报文转发时,直接查找精确匹配流表即可,实现了只查一次流表就可转发报文,而且精确匹配流表可以在动态随机存取存储器(DRAM)上实现,并不需要TCAM芯片实现,节省TCAM芯片资源。【附图说明】图1为本专利技术实施例实现openflow流表的查表方法的流程示意图;图2为本专利技术实施例实现openflow流表的查表方法的平面示意图;图3为本专利技术实施例步骤102的具体流程示意图;图4为本专利技术实施例步骤103的具体流程示意图;图5为本专利技术实施例实现openflow流表的查表装置的结构程示意图。【具体实施方式】本专利技术实施例中,控制平面上,将各级openflow流表按照关键字域划分为精确匹配流表和至少一个分类匹配流表,接收openflow控制器下发的流表配置信息,按照流表配置信息的关键字域,将流表配置信息作为表项下发到精确匹配流表或分类匹配流表中,转发平面上,采用报文的所有关键字对精确匹配流表进行查表,在查找到匹配的表项时,按照所述表项的功能进行报文处理;在没有查找到匹配的表项时,提取报文的不同关键字域的关键字对所述至少一个分类匹配流表进行并行查表,根据查表的结果,动态建立精确匹配流表的表项,并按照所述表项的功能进行本文档来自技高网...

【技术保护点】
一种openflow流表的查表方法,其特征在于,该方法包括:控制平面上,将各级openflow流表按照关键字域划分为精确匹配流表和至少一个分类匹配流表,接收openflow控制器下发的流表配置信息,按照流表配置信息的关键字域,将流表配置信息作为表项下发到精确匹配流表或分类匹配流表中;转发平面上,采用报文的所有关键字对精确匹配流表进行查表,在查找到匹配的表项时,按照所述表项的功能进行报文处理;在没有查找到匹配的表项时,提取报文的不同关键字域的关键字对所述至少一个分类匹配流表进行并行查表,根据查表的结果,动态建立精确匹配流表的表项,并按照所述表项的功能进行报文处理。

【技术特征摘要】

【专利技术属性】
技术研发人员:牛广平
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1