CN104079492A - 一种OpenFlow网络中流表配置的方法、装置和*** - Google Patents
一种OpenFlow网络中流表配置的方法、装置和*** Download PDFInfo
- Publication number
- CN104079492A CN104079492A CN201310105392.3A CN201310105392A CN104079492A CN 104079492 A CN104079492 A CN 104079492A CN 201310105392 A CN201310105392 A CN 201310105392A CN 104079492 A CN104079492 A CN 104079492A
- Authority
- CN
- China
- Prior art keywords
- stream table
- switching equipment
- type
- stream
- matching domain
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/54—Organization of routing tables
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0806—Configuration setting for initial configuration or provisioning, e.g. plug-and-play
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/036—Updating the topology between route computation elements, e.g. between OpenFlow controllers
- H04L45/037—Routes obligatorily traversing service-related nodes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种OpenFlow网络中流表配置的方法、装置和***,能够提升网络***的业务切换适应能力,提高工作效率。所述方法包括:控制设备确定交换设备需要转发的业务类型;根据所述交换设备需要转发的业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息;发送流表配置消息给所述交换设备,所述流表配置消息携带所述业务类型对应的流表匹配能力信息,以使得所述交换设备根据所述流表匹配能力信息,配置所述业务类型所需的流表。本发明适用于通信领域。
Description
技术领域
本发明涉及通信领域,尤其涉及一种OpenFlow网络中流表配置的方法、装置和***。
背景技术
随着通信技术的发展,网络领域的创新步伐已经远远落后于服务器端,客户需要网络可以更快速并且更容易的配置,因此人们开始把注意力放到可编程网络上,SDN(Software Defined Network,软件定义的网络)应运而生。
SDN是把传统封闭的网络变成一个开放式的环境,就像电脑一样可以实现编程,创建易于管理的网络虚拟化层,将网络控制从物理基础设施中解耦,让第三方开发网络应用程序来控制网络的运行。OpenFlow技术是实现SDN的一种方式,它能够让用户自己定义流量,并决定流量在网络中的传输路径。
基于OpenFlow技术组成的OpenFlow网络包括OpenFlow控制器、OpenFlow交换机。其中OpenFlow交换机是核心组件,由OpenFlow协议、安全通道和流表三部分组成。
根据OpenFlow协议,OpenFlow交换机在与控制器建立连接时,需向控制器报告自身具备的能力,包括交换机当前支持的流表级数、每级流表的表项数量、每级流表的流表匹配域类型。控制器根据交换机的能力报告制定该交换机的流规则,下发到交换机的流表中。但是,如果交换机的应用场景发生改变,导致所述交换设备需要转发的业务类型发生改变,交换机所支持的流表匹配域无法满足改变后的业务类型时,则控制器无法生成相应的流规则,更无法完成相应的转发业务。现有技术在交换机的应用场景发生改变时,将OpenFlow交换机退出联网,对交换机重新进行软件甚至硬件的配置,再接入交换网络,重新与控制器建立连接,最终生成对应的流规则,完成相应的转发业务。
该方法虽然最终可以实现交换机的应用场景发生改变时业务的正常转发,但是必须通过将OpenFlow交换机退出联网的方式实现,使得整个网络***的业务切换适应能力差,影响工作效率。
发明内容
本发明的实施例提供一种OpenFlow网络中流表配置的方法、装置和***,能够支持流表的动态配置,提升网络***的业务切换适应能力,提高工作效率。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,本发明实施例提供一种OpenFlow网络中流表配置的方法,所述方法基于OpenFlow协议的控制设备,所述方法包括:
确定交换设备需要转发的业务类型;
根据所述交换设备需要转发的所述业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息;
发送流表配置消息给所述交换设备,所述流表配置消息携带所述业务类型对应的流表匹配能力信息,以使得所述交换设备根据所述流表匹配能力信息,配置所述业务类型所需的流表。
根据第一方面,在第一种可能的实现方式中,所述流表匹配能力信息包括所述业务类型对应的流表级数、每级流表的表项数量、每级流表的流表匹配域类型。
根据第一种可能的实现方式,在第二种可能的实现方式中,在所述发送流表配置消息给所述交换设备前,所述方法还包括:
接收所述交换设备发送的所述交换设备当前配置的每级流表的流表匹配域类型;
判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域类型一致;
若所述交换设备当前配置的每级流表的流表匹配域类型与所述业务类型对应的每级流表的流表匹配域类型不一致,执行所述发送流表配置消息给所述交换设备的步骤。
根据第一种可能的实现方式,在第三种可能的实现方式中,在所述发送流表配置消息给所述交换设备前,所述方法还包括:
判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型;
若所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型,执行所述发送流表配置消息给所述交换设备的步骤。
根据第一种可能的实现方式,在第四种可能的实现方式中,在所述发送流表配置消息给所述交换设备前,所述方法还包括:
接收所述交换设备发送的所述交换设备当前配置的每级流表的流表匹配域类型;
判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域类型一致;
若所述交换设备当前配置的每级流表的流表匹配域类型与所述业务类型对应的每级流表的流表匹配域类型不一致,判断所述业务类型对应的每级流表的流表流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型;
若所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型,执行所述发送流表配置消息给所述交换设备的步骤。
根据第一种可能的实现方式,在第五种可能的实现方式中,在所述发送流表配置消息给所述交换设备前,所述方法还包括:
接收所述交换设备发送的所述交换设备当前配置的每级流表的流表匹配域类型;
判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型;
若所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型,判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域类型一致;
若所述交换设备当前配置的每级流表的流表匹配域类型与所述业务类型对应的每级流表的流表匹配域类型不一致,执行所述发送流表配置消息给所述交换设备的步骤。
根据第三种可能的实现方式或第四种可能的实现方式或第五种可能的实现方式,在第六种可能的实现方式中,交换设备每级流表能支持的流表匹配域类型预先存储在所述控制设备中;
所述判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,包括:
根据预先存储的所述交换设备每级流表能支持的流表匹配域类型,判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
根据第三种可能的实现方式或第四种可能的实现方式或第五种可能的实现方式,在第七种可能的实现方式中,在所述判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型前,还包括:
接收所述交换设备发送的所述交换设备每级流表能支持的流表匹配域类型;
所述判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,包括:
根据所述交换设备发送的所述交换设备每级流表能支持的流表匹配域类型,判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
根据第一方面至第七种可能的实现方式,在第八种可能的实现方式中,在所述发送流表配置消息给所述交换设备后,所述方法还包括:
发送第一指示消息给所述交换设备,所述第一指示消息携带所述控制设备下发的流规则和所述流规则对应的目标级数流表的信息,所述第一指示消息指示所述交换设备将所述控制设备下发的所述流规则适配所述目标级数流表并保存适配结果,其中,所述目标级数流表为即将存放所述适配结果的一级流表。
第二方面,本发明实施例提供一种OpenFlow网络中流表配置的方法,所述方法基于OpenFlow协议的交换设备,所述方法包括:
接收控制设备发送的流表配置消息,所述流表配置消息携带所述交换设备需要转发的业务类型对应的流表匹配能力信息;
根据所述交换设备需要转发的所述业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中。
根据第二方面,在第一种可能的实现方式中,所述流表匹配能力信息包括所述业务类型对应的流表级数、每级流表的表项数量、每级流表的流表匹配域类型。
根据第一种可能的实现方式,在第二种可能的实现方式中,在所述接收所述控制设备发送的流表配置消息前,所述方法还包括:
发送所述交换设备当前配置的每级流表的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型一致,且所述控制设备在所述交换设备当前配置的每级流表的流表匹配域类型与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型不一致时发送流表配置消息。
根据第一种可能的实现方式,在第三种可能的实现方式中,在所述接收控制设备发送的流表配置消息前,所述方法还包括:
发送所述交换设备每级流表能支持的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,且所述控制设备在所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型时发送所述流表配置消息。
根据第一种可能的实现方式,在第四种可能的实现方式中,在所述接收控制设备发送的流表配置消息前,所述方法还包括:
发送所述交换设备当前配置的每级流表的流表匹配域类型和所述交换设备每级流表能支持的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型一致,且所述控制设备在所述交换设备当前配置的每级流表的流表匹配域类型与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型不一致时,判断所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,且所述控制设备在所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型时发送所述流表配置消息;
或
发送所述交换设备当前配置的每级流表的流表匹配域类型和所述交换设备每级流表能支持的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,且所述控制设备在所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表的流表匹配域类型时,判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型一致,且所述控制设备在所述交换设备当前配置的每级流表的流表匹配域类型与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型不一致时发送所述流表配置消息。
根据第二方面至第四种可能的实现方式,在第五种可能的实现方式中,所述根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中,包括:
清除所述交换设备中当前配置的流表内容,释放流表存储资源;
根据所述需要转发的业务类型对应的流表匹配能力信息,对所述流表存储资源进行重新划分和映射。
根据第二方面至第五种可能的实现方式,在第六种可能的实现方式中,在所述接收控制设备发送的流表配置消息后,根据所述需要转发的业务类型对应的流表的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中前,所述方法还包括:
关闭转发业务端口,其中,所述转发业务端口用于转发所述交换设备需要转发的业务类型对应的业务数据包;
在所述根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中后,所述方法还包括:
打开所述转发业务端口。
根据第二方面至第六种可能的实现方式,在第七种可能的实现方式中,在所述根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中后,所述方法还包括:
接收所述控制设备发送的第一指示消息,所述第一指示消息携带所述控制设备下发的流规则和所述流规则对应的目标级数流表的信息,所述第一指示消息指示所述交换设备将所述控制设备下发的所述流规则适配所述目标级数流表并保存适配结果,其中,所述目标级数流表为即将存放所述适配结果的一级流表;
将所述控制设备发送的所述第一指示消息携带的所述流规则适配所述目标级数流表后保存适配结果。
根据第七种可能的实现方式,在第八种可能的实现方式中,所述第一指示消息还携带所述流规则的类型,其中,所述流规则的类型包括精确流规则或通配流规则;
所述将所述控制设备发送的所述第一指示消息携带的所述流规则适配所述目标级数流表后保存适配结果,包括:
根据所述第一指示消息携带的所述流规则的类型,确定所述流规则是精确流规则还是通配流规则;
若所述流规则是精确流规则,根据所述目标级数流表当前配置的流表匹配域类型,从所述流规则中抽取与所述目标级数流表适配的流表匹配域;
根据所述目标级数流表的存储结构,将所述与所述目标级数流表适配的所述流表匹配域重新排列;
将排列后的与所述目标级数流表适配的所述流表匹配域和所述流规则的其它信息对应存储到所述目标级数流表对应的存储器。
根据第七种可能的实现方式,在第九种可能的实现方式中,所述第一指示消息还携带所述流规则的类型,其中,所述流规则的类型包括精确流规则或通配流规则;
所述将所述控制设备发送的所述第一指示消息携带的所述流规则适配所述目标级数流表后保存适配结果,包括:
根据所述第一指示消息携带的所述流规则的类型,确定所述流规则是精确流规则还是通配流规则;
若所述流规则是通配流规则,根据所述目标级数流表当前配置的流表匹配域类型,从所述流规则中抽取与所述目标级数流表适配的流表匹配域;
将所述流规则中与所述目标级数流表不适配的流表匹配域设置掩码;
将所述已经将所述流规则中与所述目标级数流表不适配的流表匹配域设置掩码的流规则存储在所述目标级数流表对应的存储器。
第三方面,本发明实施例提供一种OpenFlow控制设备,所述控制设备包括业务类型确定单元、流表匹配能力信息确定单元、发送单元;
所述业务类型确定单元,用于确定交换设备需要转发的业务类型;
所述流表匹配能力信息确定单元,用于根据所述交换设备需要转发的所述业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息;
所述发送单元,用于发送流表配置消息给所述交换设备,所述流表配置消息携带所述业务类型对应的流表匹配能力信息,以使得所述交换设备根据所述流表匹配能力信息,配置所述业务类型所需的流表。
根据第三方面,在第一种可能的实现方式中,所述流表匹配能力信息包括所述业务类型对应的流表级数、每级流表的表项数量、每级流表的流表匹配域类型。
根据第一种可能的实现方式,在第二种可能的实现方式中,所述控制设备还包括接收单元、执行判断单元、执行单元;
所述接收单元,还用于在所述发送单元发送流表配置消息给所述交换设备前,接收所述交换设备发送的所述交换设备当前配置的每级流表的流表匹配域类型;
所述执行判断单元,用于判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域类型一致;
所述执行单元,用于若所述交换设备当前配置的每级流表的流表匹配域类型与所述业务类型对应的每级流表的流表匹配域类型不一致,执行所述发送流表配置消息给所述交换设备的步骤。
根据第一种可能的实现方式,在第三种可能的实现方式中,所述控制设备还包括执行判断单元、执行单元;
所述执行判断单元,用于在所述发送单元发送流表配置消息给所述交换设备前,判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型;
所述执行单元,用于若所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型,执行所述发送流表配置消息给所述交换设备的步骤。
根据第一种可能的实现方式,在第四种可能的实现方式中,所述控制设备还包括接收单元、执行判断单元、执行单元;
所述接收单元,用于在所述发送单元发送流表配置消息给所述交换设备前,接收所述交换设备发送的所述交换设备当前配置的每级流表的流表匹配域类型;
所述执行判断单元,用于判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域类型一致;
若所述交换设备当前配置的每级流表的流表匹配域类型与所述业务类型对应的每级流表的流表匹配域类型不一致,判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型;
所述执行单元,用于若所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型,执行所述发送流表配置消息给所述交换设备的步骤。
根据第一种可能的实现方式,在第五种可能的实现方式中,所述控制设备还包括接收单元、执行判断单元、执行单元;
所述接收单元,用于在所述发送单元发送流表配置消息给所述交换设备前,接收所述交换设备发送的所述交换设备当前配置的每级流表的流表匹配域类型;
所述执行判断单元,用于判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型;
若所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型,判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域类型一致;
所述执行单元,用于若所述交换设备当前配置的每级流表的流表匹配域类型与所述业务类型对应的每级流表的流表匹配域类型不一致,执行所述发送流表配置消息给所述交换设备的步骤。
根据第三种可能的实现方式或第四种可能的实现方式或第五种可能的实现方式,在第六种可能的实现方式中,交换设备每级流表能支持的流表匹配域类型预先存储在所述控制设备中;
所述执行判断单元判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,包括:
根据预先存储的所述交换设备每级流表能支持的流表匹配域类型,判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
根据第三种可能的实现方式或第四种可能的实现方式或第五种可能的实现方式,在第七种可能的实现方式中,所述接收单元,用于在所述执行判断单元判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型前,接收所述交换设备发送的所述交换设备每级流表能支持的流表匹配域类型;
所述执行判断单元判断所述业务类型对应的每级流表的匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,包括:
根据所述交换设备发送的所述交换设备每级流表能支持的流表匹配域类型,判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
根据第三方面至第七种可能的实现方式,在第八种可能的实现方式中,所述发送单元,还用于在所述发送流表配置消息给所述交换设备后,发送第一指示消息给所述交换设备,所述第一指示消息携带所述控制设备下发的流规则和所述流规则对应的目标级数流表信息,所述第一指示消息指示所述交换设备将所述控制设备下发的所述流规则适配所述目标级数流表并保存适配结果,其中,所述目标级数流表为即将存放所述适配结果的一级流表。
第四方面,本发明实施例提供一种OpenFlow交换设备,所述交换设备包括接收单元、配置单元;
所述接收单元,用于接收控制设备发送的流表配置消息,所述流表配置消息携带所述交换设备需要转发的业务类型对应的流表匹配能力信息;
所述配置单元,用于根据所述需要转发的所述业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中。
根据第四方面,在第一种可能的实现方式中,所述流表匹配能力信息包括所述业务类型对应的流表级数、每级流表的表项数量、每级流表的流表匹配域类型。
根据第一种可能的实现方式,在第二种可能的实现方式中,所述交换设备还包括发送单元;
所述发送单元,用于在所述接收单元接收所述控制设备发送的流表配置消息前,发送所述交换设备当前配置的每级流表的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型一致,且所述控制设备在所述交换设备当前配置的每级流表的流表匹配域类型与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型不一致时发送流表配置消息。
根据第一种可能的实现方式,在第三种可能的实现方式中,所述交换设备还包括发送单元;
所述发送单元,用于在所述接收单元接收所述控制设备发送的流表配置消息前,发送所述交换设备每级流表能支持的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,且所述控制设备在所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型时发送所述流表配置消息。
根据第一种可能的实现方式,在第四种可能的实现方式中,所述交换设备还包括发送单元;
所述发送单元,用于发送所述交换设备当前配置的每级流表的流表匹配域类型和所述交换设备每级流表能支持的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型一致,且所述控制设备在所述交换设备当前配置的每级流表的流表匹配域类型与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型不一致时,判断所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,且所述控制设备在所述交换设备需要转发的所述业务类型对应的每级流表的匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型时发送所述流表配置消息;
或
所述发送单元,用于发送所述交换设备当前配置的每级流表的流表匹配域类型和所述交换设备每级流表能支持的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,且所述控制设备在所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型时,判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型一致,且所述控制设备在所述交换设备当前配置的每级流表的流表匹配域类型与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型不一致时发送所述流表配置消息。
根据第四方面至第四种可能的实现方式,在第五种可能的实现方式中,所述配置单元根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中包括:
清除所述交换设备中当前配置的流表内容,释放流表存储资源;
根据所述需要转发的业务类型对应的流表匹配能力信息,对所述流表存储资源进行重新划分和映射。
根据第四方面至第五种可能的实现方式,在第六种可能的实现方式中,所述交换设备还包括关闭单元和打开单元;
所述关闭单元,用于在所述接收单元接收控制设备发送的流表配置消息后,所述配置单元根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中前,关闭转发业务端口,其中,所述转发业务端口用于转发所述交换设备需要转发的业务类型对应的业务数据包;
所述打开单元,用于在所述配置单元根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中后,打开所述转发业务端口。
根据第四方面至第六种可能的实现方式,在第七种可能的实现方式中,所述交换设备还包括适配单元和存储单元;
所述接收单元,还用于在所述配置单元根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中后,接收所述控制设备发送的第一指示消息,所述第一指示消息携带所述控制设备下发的流规则和所述流规则对应的目标级数流表的信息,所述第一指示消息指示所述交换设备将所述控制设备下发的所述流规则适配所述目标级数流表并保存适配结果,其中,所述目标级数流表为即将存放所述适配结果的一级流表;
所述适配单元,用于将所述控制设备发送的所述第一指示消息携带的所述流规则适配所述目标级数流表;
所述存储单元,用于存储适配结果。
根据第七种可能的实现方式,在第八种可能的实现方式中,所述第一指示消息还携带所述流规则的类型,其中,所述流规则的类型包括精确流规则或通配流规则;
所述适配单元将所述控制设备发送的所述第一指示消息携带的所述流规则适配所述目标级数流表包括:
根据所述第一指示消息携带的所述流规则的类型,确定所述流规则是精确流规则还是通配流规则;
若所述流规则是精确流规则,根据所述目标级数流表当前配置的流表匹配域类型,从所述流规则中抽取与所述目标级数流表适配的流表匹配域;
根据所述目标级数流表的存储结构,将所述与所述目标级数流表适配的所述流表匹配域重新排列;
所述存储单元存储适配结果包括:
将排列后的与所述目标级数流表适配的所述流表匹配域和所述流规则的其它信息对应存储到所述目标级数流表对应的存储器。
根据第七种可能的实现方式,在第九种可能的实现方式中,所述第一指示消息还携带所述流规则的类型,其中,所述流规则的类型包括精确流规则或通配流规则;
所述适配单元将所述控制设备发送的所述第一指示消息携带的所述流规则适配所述目标级数流表包括:
根据所述第一指示消息携带的所述流规则的类型,确定所述流规则是精确流规则还是通配流规则;
若所述流规则是通配流规则,根据所述目标级数流表当前配置的流表匹配域类型,从所述流规则中抽取与所述目标级数流表适配的流表匹配域;
将所述流规则中与所述目标级数流表不适配的流表匹配域设置掩码;
所述存储单元存储适配结果包括:
将所述已经将所述流规则中与所述目标级数流表不适配的流表匹配域设置掩码的流规则存储在所述目标级数流表对应的存储器。
第五方面,本发明实施例提供一种OpenFlow网络***,所述***包括本发明实施例提供的任一项OpenFlow控制设备和OpenFlow交换设备。
可见,本发明实施例提供一种的OpenFlow网络中流表配置的方法、装置和***,控制设备确定交换设备需要转发的业务类型;根据所述交换设备需要转发的所述业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息;发送流表配置消息给所述交换设备;所述交换设备接收所述控制设备发送的流表配置消息,根据所述流表配置消息携带的所述交换设备需要转发的所述业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中。基于上述实施例的描述,在交换设备的应用场景改变,导致所述交换设备需要转发的业务类型发生改变,所述交换设备当前配置的流表匹配域无法满足改变后的业务类型时,通过流表的动态配置,使得交换设备配置后的流表匹配域满足应用场景改变后的业务类型,增强了整个网络***的业务切换适应能力,提升了***的工作效率。
附图说明
图1为本发明实施例提供的一种OpenFlow网络中流表配置的方法;
图2为本发明实施例提供的另一种OpenFlow网络中流表配置的方法;
图3为本发明实施例提供的又一种OpenFlow网络中流表配置的方法;
图4为本发明实施例提供的又一种OpenFlow网络中流表配置的方法;
图5为本发明实施例提供的又一种OpenFlow网络中流表配置的方法;
图6为本发明实施例提供的又一种OpenFlow网络中流表配置的方法;
图7为本发明实施例提供的又一种OpenFlow网络中流表配置的方法;
图8为本发明实施例提供的一种OpenFlow网络中交换设备将控制设备下发的流规则适配目标级数流表后保存的方法;
图9为本发明实施例提供的一种精确匹配流规则转化图;
图10为本发明实施例提供的一种通配匹配流规则转化图;
图11为本发明实施例提供的一种OpenFlow控制设备;
图12为本发明实施例提供的另一种OpenFlow控制设备;
图13为本发明实施例提供的又一种OpenFlow控制设备;
图14为本发明实施例提供的一种OpenFlow交换设备;
图15为本发明实施例提供的另一种OpenFlow交换设备;
图16为本发明实施例提供的又一种OpenFlow交换设备;
图17为本发明实施例提供的又一种OpenFlow交换设备;
图18为本发明实施例提供的一种OpenFlow控制设备;
图19为本发明实施例提供的另一种OpenFlow控制设备;
图20为本发明实施例提供的另一种OpenFlow控制设备;
图21为本发明实施例提供的一种OpenFlow交换设备;
图22为本发明实施例提供的另一种OpenFlow交换设备;
图23为本发明实施例提供的又一种OpenFlow交换设备;
图24为本发明实施例提供的一种OpenFlow网络***。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
OpenFlow协议将传统的固定的物理硬件组成的网络改造成动态可变的软件定义网络SDN(Software Defined Network,软件定义网络),是一套具有开放接口的协议,能够实现控制面与转发面的分离。
基于OpenFlow协议组成的网络***包括OpenFlow控制器和OpenFlow交换设备。其中,所述控制器对与其连接的交换设备进行管理,如管理交换设备的建立新流表、更新、删除和查找流表等。所述交换设备在所述OpenFlow网络中执行来自所述控制器的命令,根据所述控制器下发的流规则对接收到的数据包进行转发。当所述交换机对于某一个接收到的数据包无法找到对应的流规则时,则把该数据包发送给所述控制器,由所述控制器决定该包的转发动作,并下发新的流规则到所述交换设备。
OpenFlow交换设备由流表、安全通道和OpenFlow协议三部分组成。其中,所述交换设备通过所述安全通道与OpenFlow控制器连接。所述OpenFlow协议用来描述控制器与交换设备之间交互所用信息的标准,所述流表是所述交换设备进行转发策略控制的核心数据结构,交换设备通过查找所述流表来决策对进入交换机的网络流量所采取的行为。
OpenFlow交换设备接收OpenFlow控制器下发的流规则,并将其存储在称为流表的装置中,流表的每一个表项即为一个流规则,流规则由Match Field(匹配域)、Counters(计数器)和Actions(指令集)组成,其中,匹配域用于与接收到的数据报文进行匹配,计数器用于记录该表项与数据报文匹配的统计信息,指令集决定报文如何转发。
匹配域分为两类,一类为精确匹配项,即数据报文需要与该匹配域完全相等才称作匹配成功;一类为通配匹配项,即数据报文的一部分与该匹配域中的对应部分一致即称为匹配成功,其余部分可以在匹配过程中忽略,该忽略规则由匹配域中的mask(掩码)位决定。
OpenFlow协议1.1及以上版本规定了OpenFlow交换设备的多流表结构,即交换设备中存在多级流表,分别存储不同内容的流规则,对于接收到的数据报文,从Table0(0级流表)开始匹配,根据表项中的指令集对后续流表进行串行查找。
实施例一、
本发明实施例提供一种OpenFlow网络中流表配置的方法,所述方法基于OpenFlow协议的控制设备,具体如图1所示,包括:
101、确定交换设备需要转发的业务类型。
具体的,在所述OpenFlow网络中,当所述交换设备与所述控制设备建立连接时,所述控制设备首先确定所述交换设备需要转发的业务类型。
102、根据所述交换设备需要转发的业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息。
具体的,在所述OpenFlow网络中,所述控制设备中预先存储了业务类型与流表匹配能力信息的对应关系,当所述控制设备确定交换设备需要转发的业务类型后,根据所述交换设备需要转发的业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息。
具体的,所述流表匹配能力信息可以包括所述业务类型对应的流表级数、每级流表的表项数量、每级流表的流表匹配域类型,本发明实施例对此不作具体限定。
需要说明的是,交换设备在每级流表中分别提供不同的流表匹配域类型,以适应特定的应用场景,支持所需的转发业务,如表一所示:
表一
流表级数 | 匹配域 | 匹配类型 | 业务类型 |
0级流表 | 源MAC+目的MAC | 精确匹配 | L2 |
1级流表 | 输入接口+VLAN ID | 精确匹配 | |
2级流表 | 源IP+目的IP+以太网类型 | 通配匹配 | L3 |
3级流表 | 目的MAC+目的IP+目的接口 | 通配匹配 | 防火墙 |
103、发送流表配置消息给所述交换设备,所述流表配置消息携带所述业务类型对应的流表匹配能力信息,以使得所述交换设备根据所述流表匹配能力信息,配置所述业务类型所需的流表。
具体的,在所述控制设备确定所述业务类型对应的流表匹配能力信息后,还发送流表配置消息给所述交换设备,这样所述交换设备才能根据所述流表配置消息,配置所述业务类型所需的流表。
当然,所述控制设备有可能在确定所述业务类型对应的流表匹配能力信息后,便直接发送流表配置消息给所述交换设备,也可能经过了其它过程,比如在确定所述交换设备需要转发的业务类型对应的流表匹配能力信息中每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型后,和/或确定所述交换设备当前配置的每级流表的流表匹配域类型与所述交换设备需要转发的业务类型对应的流表匹配能力信息中每级流表的流表匹配域不一致,需要重新配置后,才发送流表配置消息给所述交换设备,本发明实施例对此不作具体限定。
需要说明的是,所述发送流表配置消息的控制设备不限于现有OpenFlow网络中的OpenFlow控制器,也可以是集成OpenFlow配置点的控制装置,即所述流表配置消息可以由所述OpenFlow配置点发出,本发明实施例对此不作具体限定,仅说明所述控制设备发送流表配置消息给所述交换设备,以实现OpenFlow网络中流表的配置。
本发明实施例还提供一种OpenFlow网络中流表配置的方法,所述方法基于OpenFlow协议的交换设备,具体如图2所示,所述方法包括:
201、接收控制设备发送的流表配置消息,所述流表配置消息携带所述交换设备需要转发的业务类型对应的流表匹配能力信息。
具体的,在所述控制设备发送流表配置消息给所述交换设备后,所述交换设备接收所述控制设备发送的流表配置消息。
具体的,所述流表匹配能力信息可以包括所述业务类型对应的流表级数、每级流表的表项数量、每级流表的流表匹配域类型,本发明实施例对此不作具体限定。
202、根据所述交换设备需要转发的所述业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中。
具体的,所述交换设备在接收所述流表配置消息后,根据所述交换设备需要转发的所述业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中,具体可以包括:
清除所述交换设备中当前配置的流表内容,释放流表存储资源;
根据所述需要转发的业务类型对应的流表匹配能力信息,对所述流表存储资源进行重新划分和映射。
本发明实施例提供一种OpenFLow网络中流表配置的方法,所述方法包括:控制设备确定交换设备需要转发的业务类型;根据所述交换设备需要转发的业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息;发送流表配置消息给所述交换设备;所述交换设备接收所述控制设备发送的流表配置消息,根据所述流表配置消息携带的所述交换设备需要转发的所述业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中。
基于上述实施例提供的一种OpenFLow网络中流表配置的方法,因为该方法在交换设备的应用场景改变,导致所述交换设备需要转发的业务类型发生改变,所述交换设备当前配置的流表匹配域无法满足改变后的业务类型时,通过流表的动态配置,使得交换设备配置后的流表匹配域满足应用场景改变后的业务类型,增强了整个网络***的业务切换适应能力,提升了***的工作效率。
实施例二、
本发明实施例提供一种OpenFlow网络中流表配置的方法,所述方法基于OpenFlow协议的控制设备和与其连接的交换设备,具体如图3所示,所述方法包括:
301、控制设备确定交换设备需要转发的业务类型。
具体的,在所述OpenFlow网络中,当所述交换设备与所述控制设备建立连接时,所述控制设备首先确定所述交换设备需要转发的业务类型。
302、控制设备根据所述交换设备需要转发的业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息。
其中,所述流表匹配能力信息包括所述业务类型对应的流表级数、每级流表的表项数量、每级流表的流表匹配域类型。
具体的,在所述OpenFlow网络中,所述控制设备中预先存储了业务类型与流表匹配能力信息的对应关系,当所述控制设备确定交换设备需要转发的业务类型后,根据所述交换设备需要转发的业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息。
303、控制设备判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
具体的,所述交换设备每级流表能支持的流表匹配域类型具体可以是预先存储在所述控制设备中,也可以是通过所述控制设备与所述交换设备的交互获取的,本发明实施例对此不作具体限定,仅说明所述控制设备判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
304、若是,控制设备发送流表配置消息给所述交换设备,所述流表配置消息携带所述业务类型对应的流表匹配能力信息。
具体的,若所述业务类型对应的每级流表的流表匹配域类型是所述交换设备对应级别的流表能支持的流表匹配域类型,说明所述交换设备中支持配置所述业务类型对应的流表,此时发送流表配置消息给所述交换设备。
当然,若所述业务类型对应的每级流表的流表匹配域类型不是所述交换设备对应级别的流表能支持的流表匹配域类型,则流表无法配置,此时所述控制设备可能会发送报错消息,但因为流表无法配置不在我们讨论的范畴,故本发明实施例对此不作具体限定。
305、所述交换设备接收所述控制设备发送的流表配置消息。
306、所述交换设备根据所述流表配置消息携带的所述业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中。
具体的,所述交换设备根据所述流表配置消息携带的所述业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中具体包括:
清除所述交换设备中当前配置的流表内容,释放流表存储资源;
根据所述需要转发的业务类型对应的流表匹配能力信息,对所述流表存储资源进行重新划分和映射。
本方法通过在发送流表配置消息前,先判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,若是,才发送流表配置消息的方法,提升了流表配置的透明度。
进一步的,若所述交换设备每级流表能支持的流表匹配域类型是通过所述控制设备与所述交换设备的交互获取的,则在所述控制设备判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型前,所述方法还包括:
所述交换设备发送所述交换设备每级流表能支持的流表匹配域类型给所述控制设备;
所述控制设备接收所述交换设备发送的所述交换设备每级流表能支持的流表匹配域类型。
本发明实施例还提供一种OpenFlow网络中流表配置的方法,所述方法以所述控制设备确定所述交换设备的流表需要重新配置后,发送流表配置消息给所述交换设备进行说明,如图4所示,包括:
401、控制设备确定交换设备需要转发的业务类型。
具体的,在所述OpenFlow网络中,当所述交换设备与所述控制设备建立连接时,所述控制设备首先确定所述交换设备需要转发的业务类型。
402、控制设备根据所述交换设备需要转发的所述业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息。
其中,所述流表匹配能力信息包括所述业务类型对应的流表级数、每级流表的表项数量、每级流表的流表匹配域类型。
具体的,在所述OpenFlow网络中,所述控制设备中预先存储了业务类型与流表匹配能力信息的对应关系,当所述控制设备确定交换设备需要转发的业务类型后,根据所述交换设备需要转发的业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息。
403、交换设备发送所述交换设备当前配置的每级流表的流表匹配域类型给所述控制设备。
404、控制设备接收所述交换设备发送的所述交换设备当前配置的每级流表的流表匹配域类型。
405、控制设备判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域类型一致。
具体的,若所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域类型一致,则可以确定所述交换设备的流表不需要重新配置;
若所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域类型不一致,则可以确定所述交换设备的流表需要重新配置,执行步骤406。
406、若不一致,发送流表配置消息给所述交换设备,所述流表配置消息携带所述交换设备需要转发的业务类型对应的流表匹配能力信息。
407、所述交换设备接收所述控制设备发送的流表配置消息。
408、所述交换设备根据所述流表配置消息携带的所述交换设备需要转发的所述业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中。
具体的,所述交换设备根据所述流表配置消息携带的所述业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中具体包括:
清除所述交换设备中当前配置的流表内容,释放流表存储资源;
根据所述需要转发的业务类型对应的流表匹配能力信息,对所述流表存储资源进行重新划分和映射。
该方法由于控制设备在确定流表需要重新配置后才发送流表配置消息,使得交换设备进行流表配置,因此防止了流表不需要配置时仍进行流表配置的操作,节省了***资源。
可选的,本发明实施例还提供一种OpenFlow网络中流表配置的方法,如图5所示,包括:
501、控制设备确定交换设备需要转发的业务类型。
502、控制设备根据所述交换设备需要转发的业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息。
其中,所述流表匹配能力信息包括所述业务类型对应的流表级数、每级流表的表项数量、每级流表的流表匹配域类型。
503、交换设备发送所述交换设备每级流表能支持的流表匹配域类型给所述控制设备。
需要说明的是,步骤501、502和步骤503没有绝对的先后顺序,所述控制设备确定交换设备需要转发的业务类型,和交换设备发送所述交换设备每级流表能支持的流表匹配域类型给所述控制设备,二者分别是在交换设备与控制设备建立连接之初各自执行的动作,本发明实施例对二者的先后顺序不作具体限定。
504、控制设备接收所述交换设备发送的所述交换设备每级流表能支持的流表匹配域类型。
505、交换设备发送所述交换设备当前配置的每级流表的流表匹配域类型给所述控制设备。
需要说明的是,步骤503与步骤505没有绝对的先后顺序,可能是所述控制设备与所述交换设备建立连接时,所述交换设备一次发送给所述控制设备的,也可能是两次发送给所述控制设备的,本发明实施例对此不作具体限定。
506、控制设备接收所述交换设备发送的所述交换设备当前配置的每级流表的流表匹配域类型。
507、控制设备判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
508、若是,判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域一致。
509、若不一致,发送流表配置消息给所述交换设备,所述流表配置消息携带所述交换设备需要转发的业务类型对应的流表匹配能力信息。
510、所述交换设备接收所述控制设备发送的流表配置消息。
511、所述交换设备根据所述流表配置消息携带的所述交换设备需要转发的业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中。
具体的,所述OpenFlow网络中流表配置的方法的具体描述可参考图3和图4所示的实施例的描述,本发明实施例对此不再赘述。
本方法在发送流表配置消息前,不仅判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,还判断所述交换设备的流表是否需要重新配置,在确定所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型,且确定所述交换设备的流表需要重新配置后,才发送流表配置消息,以使得所述交换设备配置所需的流表,这样不仅能提升流表配置的透明度,防止了流表不需要配置时仍进行流表配置的操作,节省了***资源。
可选的,本发明实施例还提供一种流表配置的方法,具体如图6所示,包括:
601、控制设备确定交换设备需要转发的业务类型。
602、控制设备根据所述交换设备需要转发的业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息。
其中,所述流表匹配能力信息包括所述业务类型对应的流表级数、每级流表的表项数量、每级流表的流表匹配域类型。
603、交换设备发送所述交换设备每级流表能支持的流表匹配域类型给所述控制设备。
需要说明的是,步骤601、602和步骤603没有绝对的先后顺序,所述控制设备确定交换设备需要转发的业务类型,和交换设备发送所述交换设备能支持的所有流表匹配域类型给所述控制设备,二者分别是在交换设备与控制设备建立连接之初各自执行的动作,本发明实施例对二者的先后顺序不作具体限定。
604、控制设备接收所述交换设备发送的所述交换设备每级流表能支持的流表匹配域类型。
605、交换设备发送所述交换设备当前配置的每级流表的流表匹配域类型给所述控制设备。
需要说明的是,步骤603与步骤605没有绝对的先后顺序,可能是所述控制设备与所述交换设备建立连接时,所述交换设备一次发送给所述控制设备的,也可能是两次发送给所述控制设备的,本发明实施例对此不作具体限定。
606、控制设备接收所述交换设备发送的所述交换设备当前配置的每级流表的流表匹配域类型。
607、控制设备判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域一致。
608、若不一致,判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
609、若是,发送流表配置消息给所述交换设备,所述流表配置消息携带所述交换设备需要转发的业务类型对应的流表匹配能力信息。
610、所述交换设备接收所述控制设备发送的流表配置消息。
611、所述交换设备根据所述流表配置消息携带的所述交换设备需要转发的业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中。
具体的,所述OpenFlow网络中流表配置的方法的具体描述可参考图3和图4所示的实施例的描述,本发明实施例对此不再赘述。
图6所述的实施例与图5所述的实施例区别仅在于判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型与判断所述交换设备的流表是否需要重新配置的先后顺序不同,但二者皆是在确定所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型,且确定所述交换设备的流表需要重新配置后,才发送流表配置消息,以使得所述交换设备配置所需的流表,这样不仅能提升流表配置的透明度,防止了流表不需要配置时仍进行流表配置的操作,节省了***资源。
进一步的,为了保证在流表配置过程中,不出现数据包的错误转发情况,在所述接收控制设备发送的流表配置消息后,根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中前,所述方法还包括:
关闭转发业务端口,其中,所述转发业务端口用于转发所述交换设备需要转发的业务类型对应的业务数据包;
在所述根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中后,所述方法还包括:
打开所述转发业务端口。
进一步的,本发明实施例还提供一种OpenFlow网络中流表配置的方法,具体以流表配置完成后,所述控制设备还下发流规则给所述交换设备进行说明,如图7所示,所述方法包括:
701、控制设备确定交换设备需要转发的业务类型。
具体的,在所述OpenFlow网络中,当所述交换设备与所述控制设备建立连接时,所述控制设备首先确定所述交换设备需要转发的业务类型。
702、控制设备根据所述交换设备需要转发的所述业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息。
具体的,在所述OpenFlow网络中,所述控制设备中预先存储了业务类型与流表匹配能力信息的对应关系,当所述控制设备确定交换设备需要转发的业务类型后,根据所述交换设备需要转发的业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息。
具体的,所述流表匹配能力信息可以包括所述业务类型对应的流表级数、每级流表的表项数量、每级流表的流表匹配域类型。
703、控制设备发送流表配置消息给所述交换设备,所述流表配置消息携带所述业务类型对应的流表匹配能力信息。
704、所述交换设备接收所述控制设备发送的流表配置消息。
705、所述交换设备根据所述交换设备需要转发的所述业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中。
具体的,所述交换设备根据所述需要转发的所述业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中具体可以包括:
清除所述交换设备中当前配置的流表内容,释放流表存储资源;
根据所述需要转发的业务类型对应的流表匹配能力信息,对所述流表存储资源进行重新划分和映射。
706、控制设备发送第一指示消息给所述交换设备,所述第一指示消息携带所述控制设备下发的流规则和所述流规则对应的目标级数流表的信息,所述第一指示消息指示所述交换设备将所述控制设备下发的流规则适配所述目标级数流表并保存适配结果,其中,所述目标级数流表为即将存放所述适配结果的一级流表。
具体的,当所述交换设备将需要转发的业务类型对应的流表配置在所述交换设备中后,可能为了确保控制器及时获知交换设备的状态,会发送流表配置完成的指示消息给所述控制设备,使得所述控制设备发送第一指示消息给交换设备,也可能是控制设备在执行完步骤703后,经过一段延时,直接执行步骤706,本发明实施例对此不作具体限定,仅说明所述控制设备发送第一指示消息给所述交换设备,所述第一指示消息携带所述控制设备下发的流规则和所述流规则对应的目标级数流表的信息。
707、交换设备接收所述控制设备发送的第一指示消息。
708、交换设备将所述控制设备发送的所述第一指示消息携带的所述流规则适配目标级数流表后保存。
具体的,所述第一指示消息还携带所述流规则的类型,其中,所述流规则的类型包括精确流规则或通配流规则。所述交换设备将所述控制设备发送的所述第一指示消息携带的所述流规则适配目标级数流表后保存的方法如图8所示,包括:
801、根据所述第一指示消息携带的所述流规则的类型,确定所述流规则是精确流规则还是通配流规则。
具体的,在OpenFlow网络的交换设备中,流表的匹配域分为两类,一类为精确匹配项,即数据报文需要与该匹配域完全相等才称作匹配成功;一类为通配匹配项,即数据报文的一部分与该匹配域中的对应部分相等即称为匹配成功,其余部分可以在匹配过程中忽略,该忽略规则由匹配域中的mask(掩码)位决定。
相应的,所述控制设备下发的流规则也分为两类,一类为精确流规则,另一类为通配流规则,不同的流规则有不同的适配和保存方式。
若所述流规则为精确流规则,执行步骤802;
若所述流规则为通配流规则,执行步骤805。
802、若所述流规则是精确流规则,根据所述目标级数流表当前配置的流表匹配域类型,从所述流规则中抽取与所述目标级数流表适配的流表匹配域。
具体的,举例来说,若所述控制器下发了如图9左侧所示的流规则到表一的0级流表中,因为表一的0级流表为精确匹配,匹配域类型为源MAC+目的MAC,则交换设备首先从图9左侧流规则的匹配中取出源MAC和目的MAC。
803、根据所述目标级数流表的存储结构,将所述与所述目标级数流表适配的所述流表匹配域重新排列。
具体的,因为所述交换设备中配置了所述交换设备需要转发的业务类型对应的流表,则接上例,此时需按照0级流表的存储结构,将取出的源MAC和目的MAC重新排列。
804、将排列后的与所述目标级数流表适配的所述流表匹配域和所述流规则的其它信息对应存储到所述目标级数流表对应的存储器。
具体的,在将所述与所述目标级数流表适配的所述流表匹配域重新排列后,可以按照所述目标级数流表的存储格式,将排列后的与所述目标级数流表适配的所述流表匹配域和所述流规则的其它信息对应存储到所述目标级数流表对应的存储器。其中,图9左侧的流规则的精确存储格式如图9右侧所示。
需要说明的是,交换设备中的流表分同构设计和异构设计,现有技术中较为普遍的采用异构设计,即需要对每一种类型的不同级数流表使用单独的存储器进行流表存储。例如,匹配域为A+B+C的某级流表需要存储在一个存储器实体,匹配域C+D+E的另一级流表需要存储在另一个存储器实体,诸如此类,这样的设计较为复杂,也不利于流表管理模块实现动态的流表类型调整。所以流表的设计可以考虑同构设计,即交换设备内部的流表管理模块以及流表存储的数据结构不需要根据流表的类型而单独设计,而是一个流表管理模块管理所有的流表类型,一个存储实体可以存储所有类型的精确流表,另一个存储实体可以存储所有类型的通配流表,这样利于实现不同类型流表的动态配置。
本发明实施例对交换设备内部的设计不作具体限定,仅说明将与所述目标流表适配的流表匹配域和所述流规则对应的其它信息存储到所述目标级数流表对应的存储器,具体的,这里的其它信息是指所述流规则中除匹配域信息之外的信息,例如图9所示的流规则中的指令集和计数器。
805、若所述流规则是通配流规则,根据所述目标级数流表当前配置的流表匹配域类型,从所述流规则中抽取与所述目标流表适配的流表匹配域。
具体的,举例来说,若所述控制器下发了如图10左侧所示的流规则到表一的2级流表中,因为表一的2级流表为通配匹配,支持的匹配域类型为源IP+目的IP+以太类型,则交换设备首先从图10左侧流规则的匹配域抽取源IP+目的IP+以太类型。
806、将所述流规则中与所述目标级数流表不适配的流表匹配域设置掩码。
具体的,接上例,在从控制设备下发的流规则中取出与所述目标级数流表适配的流表匹配域后,接着将其它流表匹配域的掩码设置为不关心。
807、将所述已经将所述流规则中与所述目标级数流表不适配的流表匹配域设置掩码的流规则存储在所述目标级数流表对应的存储器。
具体的,若所述控制器下发了如图10左侧所示的流规则到表一的2级流表中,则最终将图10右侧所示的流规则存储到2级流表对应的存储器。
图8所示的实施例给出了所述交换设备将所述控制设备下发的流规则适配目标级数流表后保存的过程,当然,在将所述流规则进行适配和保存后,交换设备还需对接收到的报文进行查找处理,具体可参照流规则适配保存的方法进行相应的查找处理,本发明实施例对此不再赘述。
本发明实施例提供一种OpenFLow网络中流表配置的方法,所述方法包括:控制设备确定交换设备需要转发的业务类型;根据所述交换设备需要转发的业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息;发送流表配置消息给所述交换设备;所述交换设备接收所述控制设备发送的流表配置消息,根据所述流表配置消息携带的所述交换设备需要转发的所述业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中。
基于上述实施例提供的一种OpenFLow网络中流表配置的方法,因为该方法在交换设备的应用场景改变,导致所述交换设备需要转发的业务类型发生改变,所述交换设备当前配置的流表匹配域无法满足改变后的业务类型时,通过流表的动态配置,使得交换设备配置后的流表匹配域满足应用场景改变后的业务类型,增强了整个网络***的业务切换适应能力,提升了***的工作效率。
实施例三、
本发明实施例提供一种OpenFLow控制设备1100,具体如图11所示,所述控制设备1100包括业务类型确定单元1101、流表匹配能力信息确定单元1102、发送单元1103。
所述业务类型确定单元1101,用于确定交换设备需要转发的业务类型。
所述流表匹配能力信息确定单元1102,用于根据所述交换设备需要转发的所述业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息。
所述发送单元1103,用于发送流表配置消息给所述交换设备,所述流表配置消息携带所述业务类型对应的流表匹配能力信息,以使得所述交换设备根据所述流表匹配能力信息,配置所述业务类型所需的流表。
进一步的,所述流表匹配能力信息可以包括所述业务类型对应的流表级数、每级流表的表项数量、每级流表的流表匹配域类型。
进一步的,如图12所示,所述控制设备1100还可以包括接收单元1104、执行判断单元1105、执行单元1106。
所述接收单元1104,还用于在所述发送单元1103发送流表配置消息给所述交换设备前,接收所述交换设备发送的所述交换设备当前配置的每级流表的流表匹配域类型。
所述执行判断单元1105,用于判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域类型一致。
所述执行单元1106,用于若所述交换设备当前配置的每级流表的流表匹配域类型与所述业务类型对应的每级流表的流表匹配域类型不一致,执行所述发送流表配置消息给所述交换设备的步骤。
可选的,如图13所示,所述控制设备1100还可以包括执行判断单元1105、执行单元1106。
所述执行判断单元1105,用于在所述发送单元1103发送流表配置消息给所述交换设备前,判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
所述执行单元1106,用于若所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型,执行所述发送流表配置消息给所述交换设备的步骤。
可选的,如图12所示,所述控制设备1100还可以包括接收单元1104、执行判断单元1105、执行单元1106。
所述接收单元1104,用于在所述发送单元1103发送流表配置消息给所述交换设备前,接收所述交换设备发送的所述交换设备当前配置的每级流表的流表匹配域类型。
所述执行判断单元1105,用于判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域类型一致。
若所述交换设备当前配置的每级流表的流表匹配域类型与所述业务类型对应的每级流表的流表匹配域类型不一致,判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
所述执行单元1106,用于若所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型,执行所述发送流表配置消息给所述交换设备的步骤。
可选的,如图12所示,所述控制设备1100还可以包括接收单元1104、执行判断单元1105、执行单元1106。
所述接收单元1104,用于在所述发送单元1103发送流表配置消息给所述交换设备前,接收所述交换设备发送的所述交换设备当前配置的每级流表的流表匹配域类型。
所述执行判断单元1105,用于判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
若所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型,判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域类型一致。
所述执行单元1106,用于若所述交换设备当前配置的每级流表的流表匹配域类型与所述业务类型对应的每级流表的流表匹配域类型不一致,执行所述发送流表配置消息给所述交换设备的步骤。
进一步的,交换设备每级流表能支持的流表匹配域类型预先存储在所述控制设备1100中。
所述执行判断单元1105判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,包括:
根据预先存储的所述交换设备每级流表能支持的流表匹配域类型,判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
可选的,所述接收单元1104,还用于在所述执行判断单元1105判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型前,接收所述交换设备发送的所述交换设备每级流表能支持的流表匹配域类型。
所述执行判断单元1105判断所述业务类型对应的每级流表的匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,包括:
根据所述交换设备发送的所述交换设备每级流表能支持的流表匹配域类型,判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
进一步的,所述发送单元1103,还用于在所述发送流表配置消息给所述交换设备后,发送第一指示消息给所述交换设备,所述第一指示消息携带所述控制设备1100下发的流规则和所述流规则对应的目标级数流表的信息,所述第一指示消息指示所述交换设备将所述控制设备1100下发的所述流规则适配所述目标级数流表并保存适配结果,其中,所述目标级数流表为即将存放所述适配结果的一级流表。
具体的,所述控制设备1100在OpenFlow网络中进行流表配置的方法可参考实施例一和实施例二的描述,本发明实施例对此不再赘述。
本发明实施例提供一种OpenFLow控制设备,所述控制设备包括业务类型确定单元、流表匹配能力信息确定单元、发送单元。所述业务类型确定单元,用于确定交换设备需要转发的业务类型;所述流表匹配能力信息确定单元,用于根据所述交换设备需要转发的所述业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息;所述发送单元,用于发送流表配置消息给所述交换设备,所述流表配置消息携带所述业务类型对应的流表匹配能力信息,以使得所述交换设备根据所述流表匹配能力信息,配置所述业务类型所需的流表。
基于本发明实施例提供的一种OpenFLow控制设备,因为所述控制设备在交换设备的应用场景改变,导致所述交换设备需要转发的业务类型发生改变,所述交换设备当前配置的流表匹配域无法满足改变后的业务类型时,通过流表的动态配置,使得交换设备配置后的流表匹配域满足应用场景改变后的业务类型,增强了整个网络***的业务切换适应能力,提升了***的工作效率。
实施例四、
本发明实施例提供一种OpenFlow交换设备1400,具体如图14所示,所述交换设备1400包括接收单元1401、配置单元1402。
所述接收单元1401,用于接收控制设备发送的流表配置消息,所述流表配置消息携带所述交换设备1400需要转发的业务类型对应的流表匹配能力信息。
所述配置单元1402,用于根据所述需要转发的所述业务类型对应的流表匹配能力信息,将所述交换设备1400需要转发的业务类型对应的流表配置在所述交换设备1400中。
进一步的,所述流表匹配能力信息可以包括所述业务类型对应的流表级数、每级流表的表项数量、每级流表的流表匹配域类型。
进一步的,如图15所示,所述交换设备1400还可以包括发送单元1403。
所述发送单元1403,用于在所述接收单元1401接收所述控制设备发送的流表配置消息前,发送所述交换设备1400当前配置的每级流表的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备1400当前配置的每级流表的流表匹配域类型是否与所述交换设备1400需要转发的所述业务类型对应的每级流表的流表匹配域类型一致,且所述控制设备在所述交换设备1400当前配置的每级流表的流表匹配域类型与所述交换设备1400需要转发的所述业务类型对应的每级流表的流表匹配域类型不一致时发送流表配置消息。
可选的,如图15所示,所述交换设备1400还可以包括发送单元1403。
所述发送单元1403,用于在所述接收单元1401接收所述控制设备发送的流表配置消息前,发送所述交换设备1400每级流表能支持的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备1400需要转发的所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备1400对应级别的流表能支持的流表匹配域类型,且所述控制设备在所述交换设备1400需要转发的所述业务类型对应的每级流表的流表匹配域类型为所述交换设备1400对应级别的流表能支持的流表匹配域类型时发送所述流表配置消息。
可选的,如图15所示,所述交换设备1400还可以包括发送单元1403。
所述发送单元1403,用于发送所述交换设备1400当前配置的每级流表的流表匹配域类型和所述交换设备1400每级流表能支持的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备1400当前配置的每级流表的流表匹配域类型是否与所述交换设备1400需要转发的所述业务类型对应的每级流表的流表匹配域类型一致,且所述控制设备在所述交换设备1400当前配置的每级流表的流表匹配域类型与所述交换设备1400需要转发的所述业务类型对应的每级流表的流表匹配域类型不一致时,判断所述交换设备1400需要转发的所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备1400对应级别的流表能支持的流表匹配域类型,且所述控制设备在所述交换设备1400需要转发的所述业务类型对应的每级流表的匹配域类型为所述交换设备1400对应级别的流表能支持的流表匹配域类型时发送所述流表配置消息;
或
所述发送单元1403,用于发送所述交换设备1400当前配置的每级流表的流表匹配域类型和所述交换设备1400每级流表能支持的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备1400需要转发的所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备1400对应级别的流表能支持的流表匹配域类型,且所述控制设备在所述交换设备1400需要转发的所述业务类型对应的每级流表的流表匹配域类型为所述交换设备1400对应级别的流表能支持的流表匹配域类型时,判断所述交换设备1400当前配置的每级流表的流表匹配域类型是否与所述交换设备1400需要转发的所述业务类型对应的每级流表的流表匹配域类型一致,且所述控制设备在所述交换设备1400当前配置的每级流表的流表匹配域类型与所述交换设备1400需要转发的所述业务类型对应的每级流表的流表匹配域类型不一致时发送所述流表配置消息。
进一步的,所述配置单元1402根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备1400需要转发的业务类型对应的流表配置在所述交换设备1400中包括:
清除所述交换设备1400中当前配置的流表内容,释放流表存储资源。
根据所述需要转发的业务类型对应的流表匹配能力信息,对所述流表存储资源进行重新划分和映射。
进一步的,如图16所示,所述交换设备1400还可以包括关闭单元1404和打开单元1405。
所述关闭单元1404,用于在所述接收单元1401接收控制设备发送的流表配置消息后,所述配置单元1402根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备1400需要转发的业务类型对应的流表配置在所述交换设备1400中前,关闭转发业务端口,其中,所述转发业务端口用于转发所述交换设备需要转发的业务类型对应的业务数据包。
所述打开单元1405,用于在所述配置单元1402根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备1400需要转发的业务类型对应的流表配置在所述交换设备1400中后,打开所述转发业务端口。
进一步的,如图17所示,所述交换设备1400还包括可以适配单元1406和存储单元1407。
所述接收单元1401,还用于在所述配置单元1402根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备1400需要转发的业务类型对应的流表配置在所述交换设备1400中后,接收所述控制设备发送的第一指示消息,所述第一指示消息携带所述控制设备下发的流规则和所述流规则对应的目标级数流表的信息,所述第一指示消息指示所述交换设备1400将所述控制设备下发的所述流规则适配所述目标级数流表并保存适配结果,其中,所述目标级数流表为即将存放所述适配结果的一级流表。
所述适配单元1406,用于将所述控制设备发送的所述第一指示消息携带的所述流规则适配所述目标级数流表。
所述存储单元1407,用于存储适配结果。
进一步的,所述第一指示消息还携带所述流规则的类型,其中,所述流规则的类型包括精确流规则或通配流规则。
所述适配单元1406将所述控制设备发送的所述第一指示消息携带的所述流规则适配所述目标级数流表包括:
根据所述第一指示消息携带的所述流规则的类型,确定所述流规则是精确流规则还是通配流规则。
若所述流规则是精确流规则,根据所述目标级数流表当前配置的流表匹配域类型,从所述流规则中抽取与所述目标级数流表适配的流表匹配域。
根据所述目标级数流表的存储结构,将所述与所述目标级数流表适配的所述流表匹配域重新排列。
所述存储单元1407存储适配结果包括:
将排列后的与所述目标级数流表适配的所述流表匹配域和所述流规则的其它信息对应存储到所述目标级数流表对应的存储器。
可选的,所述第一指示消息还携带所述流规则的类型,其中,所述流规则的类型包括精确流规则或通配流规则。
所述适配单元1406将所述控制设备发送的所述第一指示消息携带的所述流规则适配所述目标级数流表包括:
根据所述第一指示消息携带的所述流规则的类型,确定所述流规则是精确流规则还是通配流规则。
若所述流规则是通配流规则,根据所述目标级数流表当前配置的流表匹配域类型,从所述流规则中抽取与所述目标级数流表适配的流表匹配域。
将所述流规则中与所述目标级数流表不适配的流表匹配域设置掩码。
所述存储单元1407存储适配结果包括:
将所述已经将所述流规则中与所述目标级数流表不适配的流表匹配域设置掩码的流规则存储在所述目标级数流表对应的存储器。
具体的,所述交换设备1400在OpenFlow网络中进行流表配置的方法可参考实施例一和实施例二的描述,本发明实施例对此不再赘述。
本发明实施例提供一种OpenFLow交换设备,所述交换设备包括接收单元、配置单元。所述接收单元,用于接收控制设备发送的流表配置消息,所述流表配置消息携带所述交换设备需要转发的业务类型对应的流表匹配能力信息;所述配置单元,用于根据所述需要转发的所述业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中。
基于本发明实施例提供的一种OpenFLow交换设备,因为所述交换设备在应用场景改变,导致需要转发的业务类型发生改变,当前配置的流表匹配域无法满足改变后的业务类型时,通过流表的动态配置,使得配置后的流表匹配域满足应用场景改变后的业务类型,增强了整个网络***的业务切换适应能力,提升了***的工作效率。
实施例五、
本发明实施例提供一种OpenFlow控制设备1800,如图18所示,所述控制设备1800包括处理器1801、发送器1802。
所述处理器1801,用于确定交换设备需要转发的业务类型。
所述处理器1801,还用于根据所述交换设备需要转发的所述业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息。
所述发送器1802,用于发送流表配置消息给所述交换设备,所述流表配置消息携带所述业务类型对应的流表匹配能力信息,以使得所述交换设备根据所述流表匹配能力信息,配置所述业务类型所需的流表。
进一步的,所述流表匹配能力信息包括所述业务类型对应的流表级数、每级流表的表项数量、每级流表的流表匹配域类型。
进一步的,如图19所示,所述控制设备1800还可以包括接收器1803、执行器1804。
所述接收器1803,用于在所述发送器1802发送流表配置消息给所述交换设备前,接收所述交换设备发送的所述交换设备当前配置的每级流表的流表匹配域类型。
所述处理器1801,还用于判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域类型一致。
所述执行器1804,用于若所述交换设备当前配置的每级流表的流表匹配域类型与所述业务类型对应的每级流表的流表匹配域类型不一致,执行所述发送流表配置消息给所述交换设备的步骤。
可选的,如图20所示,所述控制设备1800还可以包括执行器1804。
所述处理器1801,用于在所述发送器1802发送流表配置消息给所述交换设备前,判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
所述执行器1804,用于若所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型,执行所述发送流表配置消息给所述交换设备的步骤。
可选的,如图19所示,所述控制设备1800还可以包括接收器1803、执行器1804。
所述接收器1803,用于在所述发送器1802发送流表配置消息给所述交换设备前,接收所述交换设备发送的所述交换设备当前配置的每级流表的流表匹配域类型。
所述处理器1801,用于判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域类型一致。
若所述交换设备当前配置的每级流表的流表匹配域类型与所述业务类型对应的每级流表的流表匹配域类型不一致,判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
所述执行器1804,用于若所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型,执行所述发送流表配置消息给所述交换设备的步骤。
可选的,如图19所示,所述控制设备1800还可以包括接收器1803、执行器1804。
所述接收器1803,用于在所述发送器1802发送流表配置消息给所述交换设备前,接收所述交换设备发送的所述交换设备当前配置的每级流表的流表匹配域类型。
所述处理器1801,用于判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
若所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型,判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域类型一致。
所述执行器1804,用于若所述交换设备当前配置的每级流表的流表匹配域类型与所述业务类型对应的每级流表的流表匹配域类型不一致,执行所述发送流表配置消息给所述交换设备的步骤。
进一步的,交换设备每级流表能支持的流表匹配域类型预先存储在所述控制设备1800中。
所述处理器1801判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,包括:
根据预先存储的所述交换设备每级流表能支持的流表匹配域类型,判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
可选的,所述接收器1803,还用于在所述处理器1801判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型前,接收所述交换设备发送的所述交换设备每级流表能支持的流表匹配域类型。
所述处理器1801判断所述业务类型对应的每级流表的匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,包括:
根据所述交换设备发送的所述交换设备每级流表能支持的流表匹配域类型,判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
进一步的,所述发送器1802,还用于在所述发送流表配置消息给所述交换设备后,发送第一指示消息给所述交换设备,所述第一指示消息携带所述控制设备1800下发的流规则和所述流规则对应的目标级数流表的信息,所述第一指示消息指示所述交换设备将所述控制设备1800下发的所述流规则适配所述目标级数流表并保存适配结果,其中,所述目标级数流表为即将存放所述适配结果的一级流表。
具体的,所述控制设备1800在OpenFlow网络中进行流表配置的方法可参考实施例一和实施例二的描述,本发明实施例对此不再赘述。
本发明实施例提供一种OpenFLow控制设备,所述控制设备包括处理器、发送器。所述处理器,用于确定交换设备需要转发的业务类型;所述处理器,还用于根据所述交换设备需要转发的所述业务类型核预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息;所述发送器,用于发送流表配置消息给所述交换设备,所述流表配置消息携带所述业务类型对应的流表匹配能力信息,以使得所述交换设备根据所述流表匹配能力信息,配置所述业务类型所需的流表。
基于本发明实施例提供的一种OpenFLow控制设备,因为所述控制设备在交换设备的应用场景改变,导致所述交换设备需要转发的业务类型发生改变,所述交换设备当前配置的流表匹配域无法满足改变后的业务类型时,通过流表的动态配置,使得交换设备配置后的流表匹配域满足应用场景改变后的业务类型,增强了整个网络***的业务切换适应能力,提升了***的工作效率。
实施例六、
本发明实施例提供一种OpenFlow交换设备2100,具体如图21所示,所述交换设备2100包括接收器2101、处理器2102。
所述接收器2101,用于接收控制设备发送的流表配置消息,所述流表配置消息携带所述交换设备2100需要转发的业务类型对应的流表的流表匹配能力信息。
所述处理器2102,用于根据所述需要转发的所述业务类型对应的流表匹配能力信息,将所述交换设备2100需要转发的业务类型对应的流表配置在所述交换设备2100中。
进一步的,所述流表匹配能力信息可以包括所述业务类型对应的流表级数、每级流表的表项数量、每级流表的流表匹配域类型。
进一步的,如图22所示,所述交换设备2100还可以包括发送器2103。
所述发送器2103,用于在所述接收器2101接收所述控制设备发送的流表配置消息前,发送所述交换设备2100当前配置的每级流表的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备2100当前配置的每级流表的流表匹配域类型是否与所述交换设备2100需要转发的所述业务类型对应的每级流表的流表匹配域类型一致,且所述控制设备在所述交换设备2100当前配置的每级流表的流表匹配域类型与所述交换设备2100需要转发的所述业务类型对应的每级流表的流表匹配域类型不一致时发送流表配置消息。
可选的,如图22所示,所述交换设备2100还可以包括发送器2103。
所述发送器2103,用于在所述接收器2101接收所述控制设备发送的流表配置消息前,发送所述交换设备2100每级流表能支持的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备2100需要转发的所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备2100对应级别的流表能支持的流表匹配域类型,且所述控制设备在所述交换设备2100需要转发的所述业务类型对应的每级流表的流表匹配域类型为所述交换设备2100对应级别的流表能支持的流表匹配域类型时发送所述流表配置消息。
可选的,如图22所示,所述交换设备2100还可以包括发送器2103。
所述发送器2103,用于发送所述交换设备2100当前配置的每级流表的流表匹配域类型和所述交换设备2100每级流表能支持的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备2100当前配置的每级流表的流表匹配域类型是否与所述交换设备2100需要转发的所述业务类型对应的每级流表的流表匹配域类型一致,且所述控制设备在所述交换设备2100当前配置的每级流表的流表匹配域类型与所述交换设备2100需要转发的所述业务类型对应的每级流表的流表匹配域类型不一致时,判断所述交换设备2100需要转发的所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备2100对应级别的流表能支持的流表匹配域类型,且所述控制设备在所述交换设备2100需要转发的所述业务类型对应的每级流表的匹配域类型为所述交换设备2100对应级别的流表能支持的流表匹配域类型时发送所述流表配置消息;
或
所述发送器2103,用于发送所述交换设备2100当前配置的每级流表的流表匹配域类型和所述交换设备2100每级流表能支持的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备2100需要转发的所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备2100对应级别的流表能支持的流表匹配域类型,且所述控制设备在所述交换设备2100需要转发的所述业务类型对应的每级流表的流表匹配域类型为所述交换设备2100对应级别的流表能支持的流表匹配域类型时,判断所述交换设备2100当前配置的每级流表的流表匹配域类型是否与所述交换设备2100需要转发的所述业务类型对应的每级流表的流表匹配域类型一致,且所述控制设备在所述交换设备2100当前配置的每级流表的流表匹配域类型与所述交换设备2100需要转发的所述业务类型对应的每级流表的流表匹配域类型不一致时发送所述流表配置消息。
进一步的,所述处理器2102根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备2100需要转发的业务类型对应的流表配置在所述交换设备2100中包括:
清除所述交换设备2100中当前配置的流表内容,释放流表存储资源。
根据所述需要转发的业务类型对应的流表匹配能力信息,对所述流表存储资源进行重新划分和映射。
进一步的,所述处理器2102,还用于在所述接收器2101接收控制设备发送的流表配置消息后,所述处理器2102根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备2100需要转发的业务类型对应的流表配置在所述交换设备2100中前,关闭转发业务端口,其中,所述转发业务端口用于转发所述交换设备需要转发的业务类型对应的业务数据包。
所述处理器2102,还用于在根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备2100需要转发的业务类型对应的流表配置在所述交换设备2100中后,打开所述转发业务端口。
进一步的,如图23所示,所述交换设备2100还可以包括存储器2104。
所述接收器2101,还用于在所述处理器2102根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备2100需要转发的业务类型对应的流表配置在所述交换设备2100中后,接收所述控制设备发送的第一指示消息,所述第一指示消息携带所述控制设备下发的流规则和所述流规则对应的目标级数流表的信息,所述第一指示消息指示所述交换设备2100将所述控制设备下发的所述流规则适配所述目标级数流表并保存适配结果,其中,所述目标级数流表为即将存放所述适配结果的一级流表。
所述处理器2102,用于将所述控制设备发送的所述第一指示消息携带的所述流规则适配所述目标级数流表。
所述存储器2104,用于存储适配结果。
进一步的,所述第一指示消息还携带所述流规则的类型,其中,所述流规则的类型包括精确流规则或通配流规则。
所述处理器2102将所述控制设备发送的所述第一指示消息携带的所述流规则适配所述目标级数流表包括:
根据所述第一指示消息携带的所述流规则的类型,确定所述流规则是精确流规则还是通配流规则。
若所述流规则是精确流规则,根据所述目标级数流表当前配置的流表匹配域类型,从所述流规则中抽取与所述目标级数流表适配的流表匹配域。
根据所述目标级数流表的存储结构,将所述与所述目标级数流表适配的所述流表匹配域重新排列。
所述存储单元存储适配结果包括:
将排列后的与所述目标级数流表适配的所述流表匹配域和所述流规则的其它信息对应存储到所述目标级数流表对应的存储器2104。
可选的,所述第一指示消息还携带所述流规则的类型,其中,所述流规则的类型包括精确流规则或通配流规则。
所述处理器2102将所述控制设备发送的所述第一指示消息携带的所述流规则适配所述目标级数流表包括:
根据所述第一指示消息携带的所述流规则的类型,确定所述流规则是精确流规则还是通配流规则。
若所述流规则是通配流规则,根据所述目标级数流表当前配置的流表匹配域类型,从所述流规则中抽取与所述目标级数流表适配的流表匹配域。
将所述流规则中与所述目标级数流表不适配的流表匹配域设置掩码。
所述存储器2104存储适配结果包括:
将所述已经将所述流规则中与所述目标级数流表不适配的流表匹配域设置掩码的流规则存储在所述目标级数流表对应的存储器2104。
具体的,所述交换设备2100在OpenFlow网络中进行流表配置的方法可参考实施例一和实施例二的描述,本发明实施例对此不再赘述。
本发明实施例提供一种OpenFLow交换设备,所述交换设备包括接收器、处理器。所述接收器,用于接收控制设备发送的流表配置消息,所述流表配置消息携带所述交换设备需要转发的业务类型对应的流表匹配能力信息;所述处理器,用于根据所述需要转发的所述业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中。
基于本发明实施例提供的一种OpenFLow交换设备,因为所述交换设备在应用场景改变,导致需要转发的业务类型发生改变,当前配置的流表匹配域无法满足改变后的业务类型时,通过流表的动态配置,使得配置后的流表匹配域满足应用场景改变后的业务类型,增强了整个网络***的业务切换适应能力,提升了***的工作效率。
实施例七、
本发明实施例提供一种OpenFlow网络***2400,具体如图24所示,所述***2400包括控制设备1800和交换设备2100。
所述控制设备1800,用于确定交换设备2100需要转发的业务类型。
所述控制设备1800,还用于根据所述交换设备2100需要转发的所述业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息。
所述控制设备1800,还用于发送流表配置消息给所述交换设备2100,所述流表配置消息携带所述业务类型对应的流表匹配能力信息,以使得所述交换设备根据所述流表匹配能力信息,配置所述业务类型所需的流表。
所述交换设备2100,用于接收控制设备1800发送的流表配置消息。
所述交换设备2100,还用于根据所述需要转发的所述业务类型对应的流表匹配能力信息,将所述需要转发的业务类型对应的流表配置在所述交换设备2100中。
基于上述实施例的描述,本发明实施例提供的OpenFlow网络***,通过所述控制设备与所述交换设备之间的交互,在交换设备的应用场景改变,导致所述交换设备需要转发的业务类型发生改变,所述交换设备当前配置的流表匹配域无法满足改变后的业务类型时,可以通过流表的动态配置,使得交换设备配置后的流表匹配域满足应用场景改变后的业务类型,增强了整个网络***的业务切换适应能力,提升了***的工作效率。
需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本发明而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (39)
1.一种OpenFlow网络中流表配置的方法,所述方法基于OpenFlow协议的控制设备,其特征在于,所述方法包括:
确定交换设备需要转发的业务类型;
根据所述交换设备需要转发的所述业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息;
发送流表配置消息给所述交换设备,所述流表配置消息携带所述业务类型对应的流表匹配能力信息,以使得所述交换设备根据所述流表匹配能力信息,配置所述业务类型所需的流表。
2.根据权利要求1所述的方法,其特征在于,所述流表匹配能力信息包括所述业务类型对应的流表级数、每级流表的表项数量、每级流表的流表匹配域类型。
3.根据权利要求2所述的方法,其特征在于,在所述发送流表配置消息给所述交换设备前,所述方法还包括:
接收所述交换设备发送的所述交换设备当前配置的每级流表的流表匹配域类型;
判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域类型一致;
若所述交换设备当前配置的每级流表的流表匹配域类型与所述业务类型对应的每级流表的流表匹配域类型不一致,执行所述发送流表配置消息给所述交换设备的步骤。
4.根据权利要求2所述的方法,其特征在于,在所述发送流表配置消息给所述交换设备前,所述方法还包括:
判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型;
若所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型,执行所述发送流表配置消息给所述交换设备的步骤。
5.根据权利要求2所述的方法,其特征在于,在所述发送流表配置消息给所述交换设备前,所述方法还包括:
接收所述交换设备发送的所述交换设备当前配置的每级流表的流表匹配域类型;
判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域类型一致;
若所述交换设备当前配置的每级流表的流表匹配域类型与所述业务类型对应的每级流表的流表匹配域类型不一致,判断所述业务类型对应的每级流表的流表流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型;
若所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型,执行所述发送流表配置消息给所述交换设备的步骤。
6.根据权利要求2所述的方法,其特征在于,在所述发送流表配置消息给所述交换设备前,所述方法还包括:
接收所述交换设备发送的所述交换设备当前配置的每级流表的流表匹配域类型;
判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型;
若所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型,判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域类型一致;
若所述交换设备当前配置的每级流表的流表匹配域类型与所述业务类型对应的每级流表的流表匹配域类型不一致,执行所述发送流表配置消息给所述交换设备的步骤。
7.根据权利要求4-6任一项所述的方法,其特征在于,交换设备每级流表能支持的流表匹配域类型预先存储在所述控制设备中;
所述判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,包括:
根据预先存储的所述交换设备每级流表能支持的流表匹配域类型,判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
8.根据权利要求4-6任一项所述的方法,其特征在于,在所述判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型前,还包括:
接收所述交换设备发送的所述交换设备每级流表能支持的流表匹配域类型;
所述判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,包括:
根据所述交换设备发送的所述交换设备每级流表能支持的流表匹配域类型,判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
9.根据权利要求1-8任一项所述的方法,其特征在于,在所述发送流表配置消息给所述交换设备后,所述方法还包括:
发送第一指示消息给所述交换设备,所述第一指示消息携带所述控制设备下发的流规则和所述流规则对应的目标级数流表的信息,所述第一指示消息指示所述交换设备将所述控制设备下发的所述流规则适配所述目标级数流表并保存适配结果,其中,所述目标级数流表为即将存放所述适配结果的一级流表。
10.一种OpenFlow网络中流表配置的方法,所述方法基于OpenFlow协议的交换设备,其特征在于,所述方法包括:
接收控制设备发送的流表配置消息,所述流表配置消息携带所述交换设备需要转发的业务类型对应的流表匹配能力信息;
根据所述交换设备需要转发的所述业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中。
11.根据权利要求10所述的方法,其特征在于,所述流表匹配能力信息包括所述业务类型对应的流表级数、每级流表的表项数量、每级流表的流表匹配域类型。
12.根据权利要求11所述的方法,其特征在于,在所述接收所述控制设备发送的流表配置消息前,所述方法还包括:
发送所述交换设备当前配置的每级流表的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型一致,且所述控制设备在所述交换设备当前配置的每级流表的流表匹配域类型与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型不一致时发送流表配置消息。
13.根据权利要求11所述的方法,其特征在于,在所述接收控制设备发送的流表配置消息前,所述方法还包括:
发送所述交换设备每级流表能支持的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,且所述控制设备在所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型时发送所述流表配置消息。
14.根据权利要求11所述的方法,其特征在于,在所述接收控制设备发送的流表配置消息前,所述方法还包括:
发送所述交换设备当前配置的每级流表的流表匹配域类型和所述交换设备每级流表能支持的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型一致,且所述控制设备在所述交换设备当前配置的每级流表的流表匹配域类型与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型不一致时,判断所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,且所述控制设备在所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型时发送所述流表配置消息;
或
发送所述交换设备当前配置的每级流表的流表匹配域类型和所述交换设备每级流表能支持的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,且所述控制设备在所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表的流表匹配域类型时,判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型一致,且所述控制设备在所述交换设备当前配置的每级流表的流表匹配域类型与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型不一致时发送所述流表配置消息。
15.根据权利要求10-14任一项所述的方法,其特征在于,所述根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中,包括:
清除所述交换设备中当前配置的流表内容,释放流表存储资源;
根据所述需要转发的业务类型对应的流表匹配能力信息,对所述流表存储资源进行重新划分和映射。
16.根据权利要求10-15任一项所述的方法,其特征在于,在所述接收控制设备发送的流表配置消息后,根据所述需要转发的业务类型对应的流表的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中前,所述方法还包括:
关闭转发业务端口,其中,所述转发业务端口用于转发所述交换设备需要转发的业务类型对应的业务数据包;
在所述根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中后,所述方法还包括:
打开所述转发业务端口。
17.根据权利要求10-16任一项所述的方法,其特征在于,在所述根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中后,所述方法还包括:
接收所述控制设备发送的第一指示消息,所述第一指示消息携带所述控制设备下发的流规则和所述流规则对应的目标级数流表的信息,所述第一指示消息指示所述交换设备将所述控制设备下发的所述流规则适配所述目标级数流表并保存适配结果,其中,所述目标级数流表为即将存放所述适配结果的一级流表;
将所述控制设备发送的所述第一指示消息携带的所述流规则适配所述目标级数流表后保存适配结果。
18.根据权利要求17所述的方法,其特征在于,所述第一指示消息还携带所述流规则的类型,其中,所述流规则的类型包括精确流规则或通配流规则;
所述将所述控制设备发送的所述第一指示消息携带的所述流规则适配所述目标级数流表后保存适配结果,包括:
根据所述第一指示消息携带的所述流规则的类型,确定所述流规则是精确流规则还是通配流规则;
若所述流规则是精确流规则,根据所述目标级数流表当前配置的流表匹配域类型,从所述流规则中抽取与所述目标级数流表适配的流表匹配域;
根据所述目标级数流表的存储结构,将所述与所述目标级数流表适配的所述流表匹配域重新排列;
将排列后的与所述目标级数流表适配的所述流表匹配域和所述流规则的其它信息对应存储到所述目标级数流表对应的存储器。
19.根据权利要求17所述的方法,其特征在于,所述第一指示消息还携带所述流规则的类型,其中,所述流规则的类型包括精确流规则或通配流规则;
所述将所述控制设备发送的所述第一指示消息携带的所述流规则适配所述目标级数流表后保存适配结果,包括:
根据所述第一指示消息携带的所述流规则的类型,确定所述流规则是精确流规则还是通配流规则;
若所述流规则是通配流规则,根据所述目标级数流表当前配置的流表匹配域类型,从所述流规则中抽取与所述目标级数流表适配的流表匹配域;
将所述流规则中与所述目标级数流表不适配的流表匹配域设置掩码;
将所述已经将所述流规则中与所述目标级数流表不适配的流表匹配域设置掩码的流规则存储在所述目标级数流表对应的存储器。
20.一种OpenFlow控制设备,其特征在于,所述控制设备包括业务类型确定单元、流表匹配能力信息确定单元、发送单元;
所述业务类型确定单元,用于确定交换设备需要转发的业务类型;
所述流表匹配能力信息确定单元,用于根据所述交换设备需要转发的所述业务类型和预存储的业务类型与流表匹配能力信息的对应关系,确定所述业务类型对应的流表匹配能力信息;
所述发送单元,用于发送流表配置消息给所述交换设备,所述流表配置消息携带所述业务类型对应的流表匹配能力信息,以使得所述交换设备根据所述流表匹配能力信息,配置所述业务类型所需的流表。
21.根据权利要求20所述的控制设备,其特征在于,所述流表匹配能力信息包括所述业务类型对应的流表级数、每级流表的表项数量、每级流表的流表匹配域类型。
22.根据权利要求21所述的控制设备,其特征在于,所述控制设备还包括接收单元、执行判断单元、执行单元;
所述接收单元,还用于在所述发送单元发送流表配置消息给所述交换设备前,接收所述交换设备发送的所述交换设备当前配置的每级流表的流表匹配域类型;
所述执行判断单元,用于判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域类型一致;
所述执行单元,用于若所述交换设备当前配置的每级流表的流表匹配域类型与所述业务类型对应的每级流表的流表匹配域类型不一致,执行所述发送流表配置消息给所述交换设备的步骤。
23.根据权利要求21所述的控制设备,其特征在于,所述控制设备还包括执行判断单元、执行单元;
所述执行判断单元,用于在所述发送单元发送流表配置消息给所述交换设备前,判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型;
所述执行单元,用于若所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型,执行所述发送流表配置消息给所述交换设备的步骤。
24.根据权利要求21所述的控制设备,其特征在于,所述控制设备还包括接收单元、执行判断单元、执行单元;
所述接收单元,用于在所述发送单元发送流表配置消息给所述交换设备前,接收所述交换设备发送的所述交换设备当前配置的每级流表的流表匹配域类型;
所述执行判断单元,用于判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域类型一致;
若所述交换设备当前配置的每级流表的流表匹配域类型与所述业务类型对应的每级流表的流表匹配域类型不一致,判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型;
所述执行单元,用于若所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型,执行所述发送流表配置消息给所述交换设备的步骤。
25.根据权利要求21所述的控制设备,其特征在于,所述控制设备还包括接收单元、执行判断单元、执行单元;
所述接收单元,用于在所述发送单元发送流表配置消息给所述交换设备前,接收所述交换设备发送的所述交换设备当前配置的每级流表的流表匹配域类型;
所述执行判断单元,用于判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型;
若所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型,判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述业务类型对应的每级流表的流表匹配域类型一致;
所述执行单元,用于若所述交换设备当前配置的每级流表的流表匹配域类型与所述业务类型对应的每级流表的流表匹配域类型不一致,执行所述发送流表配置消息给所述交换设备的步骤。
26.根据权利要求23-25任一项所述的控制设备,其特征在于,交换设备每级流表能支持的流表匹配域类型预先存储在所述控制设备中;
所述执行判断单元判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,包括:
根据预先存储的所述交换设备每级流表能支持的流表匹配域类型,判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
27.根据权利要求23-25任一项所述的控制设备,其特征在于,
所述接收单元,用于在所述执行判断单元判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型前,接收所述交换设备发送的所述交换设备每级流表能支持的流表匹配域类型;
所述执行判断单元判断所述业务类型对应的每级流表的匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,包括:
根据所述交换设备发送的所述交换设备每级流表能支持的流表匹配域类型,判断所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型。
28.根据权利要求20-27任一项所述的控制设备,其特征在于,
所述发送单元,还用于在所述发送流表配置消息给所述交换设备后,发送第一指示消息给所述交换设备,所述第一指示消息携带所述控制设备下发的流规则和所述流规则对应的目标级数流表的信息,所述第一指示消息指示所述交换设备将所述控制设备下发的所述流规则适配所述目标级数流表并保存适配结果,其中,所述目标级数流表为即将存放所述适配结果的一级流表。
29.一种OpenFlow交换设备,其特征在于,所述交换设备包括接收单元、配置单元;
所述接收单元,用于接收控制设备发送的流表配置消息,所述流表配置消息携带所述交换设备需要转发的业务类型对应的流表匹配能力信息;
所述配置单元,用于根据所述需要转发的所述业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中。
30.根据权利要求29所述的交换设备,其特征在于,所述流表匹配能力信息包括所述业务类型对应的流表级数、每级流表的表项数量、每级流表的流表匹配域类型。
31.根据权利要求30所述的交换设备,其特征在于,所述交换设备还包括发送单元;
所述发送单元,用于在所述接收单元接收所述控制设备发送的流表配置消息前,发送所述交换设备当前配置的每级流表的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型一致,且所述控制设备在所述交换设备当前配置的每级流表的流表匹配域类型与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型不一致时发送流表配置消息。
32.根据权利要求30所述的交换设备,其特征在于,所述交换设备还包括发送单元;
所述发送单元,用于在所述接收单元接收所述控制设备发送的流表配置消息前,发送所述交换设备每级流表能支持的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,且所述控制设备在所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型时发送所述流表配置消息。
33.根据权利要求30所述的交换设备,其特征在于,所述交换设备还包括发送单元;
所述发送单元,用于发送所述交换设备当前配置的每级流表的流表匹配域类型和所述交换设备每级流表能支持的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型一致,且所述控制设备在所述交换设备当前配置的每级流表的流表匹配域类型与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型不一致时,判断所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,且所述控制设备在所述交换设备需要转发的所述业务类型对应的每级流表的匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型时发送所述流表配置消息;
或
所述发送单元,用于发送所述交换设备当前配置的每级流表的流表匹配域类型和所述交换设备每级流表能支持的流表匹配域类型给所述控制设备,以使得所述控制设备判断所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型是否为所述交换设备对应级别的流表能支持的流表匹配域类型,且所述控制设备在所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型为所述交换设备对应级别的流表能支持的流表匹配域类型时,判断所述交换设备当前配置的每级流表的流表匹配域类型是否与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型一致,且所述控制设备在所述交换设备当前配置的每级流表的流表匹配域类型与所述交换设备需要转发的所述业务类型对应的每级流表的流表匹配域类型不一致时发送所述流表配置消息。
34.根据权利要求29-33任一项所述的交换设备,其特征在于,所述配置单元根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中包括:
清除所述交换设备中当前配置的流表内容,释放流表存储资源;
根据所述需要转发的业务类型对应的流表的流表匹配能力信息,对所述流表存储资源进行重新划分和映射。
35.根据权利要求29-34任一项所述的交换设备,其特征在于,所述交换设备还包括关闭单元和打开单元;
所述关闭单元,用于在所述接收单元接收控制设备发送的流表配置消息后,所述配置单元根据所述需要转发的业务类型对应的流表的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中前,关闭转发业务端口,其中,所述转发业务端口用于转发所述交换设备需要转发的业务类型对应的业务数据包;
所述打开单元,用于在所述配置单元根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中后,打开所述转发业务端口。
36.根据权利要求29-35任一项所述的交换设备,其特征在于,所述交换设备还包括适配单元和存储单元;
所述接收单元,还用于在所述配置单元根据所述需要转发的业务类型对应的流表匹配能力信息,将所述交换设备需要转发的业务类型对应的流表配置在所述交换设备中后,接收所述控制设备发送的第一指示消息,所述第一指示消息携带所述控制设备下发的流规则和所述流规则对应的目标级数流表的信息,所述第一指示消息指示所述交换设备将所述控制设备下发的所述流规则适配所述目标级数流表并保存适配结果,其中,所述目标级数流表为即将存放所述适配结果的一级流表;
所述适配单元,用于将所述控制设备发送的所述第一指示消息携带的所述流规则适配所述目标级数流表;
所述存储单元,用于存储适配结果。
37.根据权利要求36所述的交换设备,其特征在于,所述第一指示消息还携带所述流规则的类型,其中,所述流规则的类型包括精确流规则或通配流规则;
所述适配单元将所述控制设备发送的所述第一指示消息携带的所述流规则适配所述目标级数流表包括:
根据所述第一指示消息携带的所述流规则的类型,确定所述流规则是精确流规则还是通配流规则;
若所述流规则是精确流规则,根据所述目标级数流表当前配置的流表匹配域类型,从所述流规则中抽取与所述目标级数流表适配的流表匹配域;
根据所述目标级数流表的存储结构,将所述与所述目标级数流表适配的所述流表匹配域重新排列;
所述存储单元存储适配结果包括:
将排列后的与所述目标级数流表适配的所述流表匹配域和所述流规则的其它信息对应存储到所述目标级数流表对应的存储器。
38.根据权利要求36所述的交换设备,其特征在于,所述第一指示消息还携带所述流规则的类型,其中,所述流规则的类型包括精确流规则或通配流规则;
所述适配单元将所述控制设备发送的所述第一指示消息携带的所述流规则适配所述目标级数流表包括:
根据所述第一指示消息携带的所述流规则的类型,确定所述流规则是精确流规则还是通配流规则;
若所述流规则是通配流规则,根据所述目标级数流表当前配置的流表匹配域类型,从所述流规则中抽取与所述目标级数流表适配的流表匹配域;
将所述流规则中与所述目标级数流表不适配的流表匹配域设置掩码;
所述存储单元存储适配结果包括:
将所述已经将所述流规则中与所述目标级数流表不适配的流表匹配域设置掩码的流规则存储在所述目标级数流表对应的存储器。
39.一种OpenFlow网络***,其特征在于,所述***包括:如权利要求20-28任一项所述的OpenFlow控制设备和如权利要求29-38任一项所述的OpenFlow交换设备。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310105392.3A CN104079492B (zh) | 2013-03-28 | 2013-03-28 | 一种OpenFlow网络中流表配置的方法、装置和*** |
PCT/CN2013/087563 WO2014153967A1 (zh) | 2013-03-28 | 2013-11-21 | 一种OpenFlow网络中流表配置的方法、装置和*** |
EP13879969.7A EP2955884B1 (en) | 2013-03-28 | 2013-11-21 | Method, apparatus and system for configuring flow table in openflow network |
US14/856,751 US9755967B2 (en) | 2013-03-28 | 2015-09-17 | Method, apparatus, and system for configuring flow table in OpenFlow network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310105392.3A CN104079492B (zh) | 2013-03-28 | 2013-03-28 | 一种OpenFlow网络中流表配置的方法、装置和*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104079492A true CN104079492A (zh) | 2014-10-01 |
CN104079492B CN104079492B (zh) | 2017-10-10 |
Family
ID=51600544
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310105392.3A Active CN104079492B (zh) | 2013-03-28 | 2013-03-28 | 一种OpenFlow网络中流表配置的方法、装置和*** |
Country Status (4)
Country | Link |
---|---|
US (1) | US9755967B2 (zh) |
EP (1) | EP2955884B1 (zh) |
CN (1) | CN104079492B (zh) |
WO (1) | WO2014153967A1 (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104378299A (zh) * | 2014-11-20 | 2015-02-25 | 杭州华三通信技术有限公司 | 流表项处理方法以及装置 |
CN104954261A (zh) * | 2015-05-26 | 2015-09-30 | 上海斐讯数据通信技术有限公司 | 利用流表转发数据的方法及*** |
CN105721329A (zh) * | 2014-12-05 | 2016-06-29 | 中兴通讯股份有限公司 | 分流方法、OpenFlow交换机、控制器和分流*** |
TWI558133B (zh) * | 2014-12-23 | 2016-11-11 | 財團法人工業技術研究院 | 軟體定義網路的控制方法、控制器和封包處理方法 |
US9693282B2 (en) | 2014-12-23 | 2017-06-27 | Industrial Technology Research Institute | Control method, controller and packet processing method for software-defined network |
CN107070693A (zh) * | 2017-01-12 | 2017-08-18 | 烽火通信科技股份有限公司 | 基于OpenFlow流表的快速配置POTN业务的方法及装置 |
CN107171852A (zh) * | 2017-06-15 | 2017-09-15 | 烽火通信科技股份有限公司 | 基于OpenFlow的二层业务配置***及其方法 |
CN107294863A (zh) * | 2017-06-22 | 2017-10-24 | 深圳市泰信通信息技术有限公司 | 网络数据流转发方法、装置、***及可读存储介质 |
WO2017198052A1 (zh) * | 2016-05-19 | 2017-11-23 | 华为技术有限公司 | 一种报文的处理方法和装置 |
CN107786434A (zh) * | 2016-08-29 | 2018-03-09 | 北京华为数字技术有限公司 | 业务报文处理方法和通信设备 |
CN108512769A (zh) * | 2017-02-28 | 2018-09-07 | 华为技术有限公司 | 一种软件定义网络中流表项发送、接收方法及相关设备 |
CN114079634A (zh) * | 2020-08-21 | 2022-02-22 | 深圳市中兴微电子技术有限公司 | 一种报文转发方法、装置及计算机可读存储介质 |
CN114710434A (zh) * | 2022-03-11 | 2022-07-05 | 深圳市风云实业有限公司 | 一种基于OpenFlow交换机的多级流表构建方法 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9848068B2 (en) * | 2013-04-16 | 2017-12-19 | Telefonaktiebolaget L M Ericsson (Publ) | Method for providing a parser to extract information from fields of a data packet header |
CN104468357B (zh) * | 2013-09-16 | 2019-07-12 | 中兴通讯股份有限公司 | 流表的多级化方法、多级流表处理方法及装置 |
US9461842B2 (en) * | 2014-04-11 | 2016-10-04 | Avaya Inc. | Limiting network service configuration based on network service type and mode advertisements |
EP3148134B1 (en) * | 2014-06-18 | 2020-02-26 | Huawei Technologies Co., Ltd. | Method and device for controlling service data flow |
US9571412B2 (en) * | 2014-11-21 | 2017-02-14 | Cavium, Inc. | Systems and methods for hardware accelerated timer implementation for openflow protocol |
CN104486102B (zh) * | 2014-12-02 | 2017-10-27 | 杭州华三通信技术有限公司 | 一种多功能网络设备和流量处理方法 |
CN104518969B (zh) * | 2014-12-12 | 2018-12-25 | 北京智谷睿拓技术服务有限公司 | 数据报文处理方法、装置及交换机 |
CN104518970B (zh) * | 2014-12-12 | 2018-12-25 | 北京智谷睿拓技术服务有限公司 | 流表更新方法、装置及控制器 |
WO2017052589A1 (en) * | 2015-09-25 | 2017-03-30 | Hewlett Packard Enterprise Development Lp | Pre-processing of data packets with network switch application-specific integrated circuit |
WO2017105431A1 (en) * | 2015-12-16 | 2017-06-22 | Hewlett Packard Enterprise Development Lp | Dataflow consistency verification |
EP3366014A4 (en) * | 2015-12-17 | 2019-05-01 | Hewlett-Packard Enterprise Development LP | REDUCED SET OF ORTHOGONAL NETWORK POLICY SELECTIONS |
US10394599B2 (en) | 2017-01-05 | 2019-08-27 | International Business Machines Corporation | Breaking dependence of distributed service containers |
CN114422471A (zh) * | 2020-10-10 | 2022-04-29 | ***通信有限公司研究院 | 数据传输方法、流表配置方法、装置、设备及存储介质 |
CN112769829B (zh) * | 2021-01-11 | 2022-10-04 | 科大讯飞股份有限公司 | 云物理机的部署方法、相关设备及可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102710432A (zh) * | 2012-04-27 | 2012-10-03 | 北京云杉世纪网络科技有限公司 | 云计算数据中心中的虚拟网络管理***及方法 |
WO2012130264A1 (en) * | 2011-03-29 | 2012-10-04 | Nec Europe Ltd. | User traffic accountability under congestion in flow-based multi-layer switches |
CN102857416A (zh) * | 2012-09-18 | 2013-01-02 | 中兴通讯股份有限公司 | 一种实现虚拟网络的方法和虚拟网络 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2408155A4 (en) | 2009-03-09 | 2015-01-28 | Nec Corp | OPENFLOW COMMUNICATION SYSTEM AND OPENFLOW COMMUNICATION METHOD |
JP5717164B2 (ja) * | 2009-10-07 | 2015-05-13 | 日本電気株式会社 | コンピュータシステム、及びコンピュータシステムのメンテナンス方法 |
US8971342B2 (en) | 2010-04-19 | 2015-03-03 | Nec Corporation | Switch and flow table controlling method |
US20120099591A1 (en) * | 2010-10-26 | 2012-04-26 | Dell Products, Lp | System and Method for Scalable Flow Aware Network Architecture for Openflow Based Network Virtualization |
US9001827B2 (en) * | 2010-12-17 | 2015-04-07 | Big Switch Networks, Inc. | Methods for configuring network switches |
-
2013
- 2013-03-28 CN CN201310105392.3A patent/CN104079492B/zh active Active
- 2013-11-21 WO PCT/CN2013/087563 patent/WO2014153967A1/zh active Application Filing
- 2013-11-21 EP EP13879969.7A patent/EP2955884B1/en active Active
-
2015
- 2015-09-17 US US14/856,751 patent/US9755967B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012130264A1 (en) * | 2011-03-29 | 2012-10-04 | Nec Europe Ltd. | User traffic accountability under congestion in flow-based multi-layer switches |
CN102710432A (zh) * | 2012-04-27 | 2012-10-03 | 北京云杉世纪网络科技有限公司 | 云计算数据中心中的虚拟网络管理***及方法 |
CN102857416A (zh) * | 2012-09-18 | 2013-01-02 | 中兴通讯股份有限公司 | 一种实现虚拟网络的方法和虚拟网络 |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104378299A (zh) * | 2014-11-20 | 2015-02-25 | 杭州华三通信技术有限公司 | 流表项处理方法以及装置 |
CN104378299B (zh) * | 2014-11-20 | 2017-10-17 | 新华三技术有限公司 | 流表项处理方法以及装置 |
CN105721329A (zh) * | 2014-12-05 | 2016-06-29 | 中兴通讯股份有限公司 | 分流方法、OpenFlow交换机、控制器和分流*** |
TWI558133B (zh) * | 2014-12-23 | 2016-11-11 | 財團法人工業技術研究院 | 軟體定義網路的控制方法、控制器和封包處理方法 |
US9693282B2 (en) | 2014-12-23 | 2017-06-27 | Industrial Technology Research Institute | Control method, controller and packet processing method for software-defined network |
CN104954261A (zh) * | 2015-05-26 | 2015-09-30 | 上海斐讯数据通信技术有限公司 | 利用流表转发数据的方法及*** |
CN104954261B (zh) * | 2015-05-26 | 2018-01-16 | 上海斐讯数据通信技术有限公司 | 利用流表转发数据的方法及*** |
CN107404440A (zh) * | 2016-05-19 | 2017-11-28 | 华为技术有限公司 | 一种转发表项发送方法、报文转发方法及装置 |
CN107404440B (zh) * | 2016-05-19 | 2021-01-29 | 华为技术有限公司 | 一种转发表项发送方法、报文转发方法及装置 |
WO2017198052A1 (zh) * | 2016-05-19 | 2017-11-23 | 华为技术有限公司 | 一种报文的处理方法和装置 |
CN107786434B (zh) * | 2016-08-29 | 2021-06-15 | 北京华为数字技术有限公司 | 业务报文处理方法和通信设备 |
CN107786434A (zh) * | 2016-08-29 | 2018-03-09 | 北京华为数字技术有限公司 | 业务报文处理方法和通信设备 |
CN107070693A (zh) * | 2017-01-12 | 2017-08-18 | 烽火通信科技股份有限公司 | 基于OpenFlow流表的快速配置POTN业务的方法及装置 |
CN107070693B (zh) * | 2017-01-12 | 2019-10-11 | 烽火通信科技股份有限公司 | 基于OpenFlow流表的快速配置POTN业务的方法及装置 |
CN108512769A (zh) * | 2017-02-28 | 2018-09-07 | 华为技术有限公司 | 一种软件定义网络中流表项发送、接收方法及相关设备 |
CN108512769B (zh) * | 2017-02-28 | 2021-04-09 | 华为技术有限公司 | 一种软件定义网络中流表项发送、接收方法及相关设备 |
CN107171852A (zh) * | 2017-06-15 | 2017-09-15 | 烽火通信科技股份有限公司 | 基于OpenFlow的二层业务配置***及其方法 |
CN107171852B (zh) * | 2017-06-15 | 2019-11-08 | 烽火通信科技股份有限公司 | 基于OpenFlow的二层业务配置***及其方法 |
CN107294863B (zh) * | 2017-06-22 | 2021-04-16 | 深圳市泰信通信息技术有限公司 | 网络数据流转发方法、装置、***及可读存储介质 |
CN107294863A (zh) * | 2017-06-22 | 2017-10-24 | 深圳市泰信通信息技术有限公司 | 网络数据流转发方法、装置、***及可读存储介质 |
CN114079634A (zh) * | 2020-08-21 | 2022-02-22 | 深圳市中兴微电子技术有限公司 | 一种报文转发方法、装置及计算机可读存储介质 |
CN114079634B (zh) * | 2020-08-21 | 2024-03-12 | 深圳市中兴微电子技术有限公司 | 一种报文转发方法、装置及计算机可读存储介质 |
CN114710434A (zh) * | 2022-03-11 | 2022-07-05 | 深圳市风云实业有限公司 | 一种基于OpenFlow交换机的多级流表构建方法 |
CN114710434B (zh) * | 2022-03-11 | 2023-08-25 | 深圳市风云实业有限公司 | 一种基于OpenFlow交换机的多级流表构建方法 |
Also Published As
Publication number | Publication date |
---|---|
EP2955884A4 (en) | 2016-03-16 |
EP2955884A1 (en) | 2015-12-16 |
US20160006650A1 (en) | 2016-01-07 |
CN104079492B (zh) | 2017-10-10 |
WO2014153967A1 (zh) | 2014-10-02 |
EP2955884B1 (en) | 2020-07-01 |
US9755967B2 (en) | 2017-09-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104079492A (zh) | 一种OpenFlow网络中流表配置的方法、装置和*** | |
CN106452857B (zh) | 生成配置信息的方法和网络控制单元 | |
US10547463B2 (en) | Multicast helper to link virtual extensible LANs | |
CN103026660B (zh) | 网络策略配置方法、管理设备以及网络管理中心设备 | |
US9917729B2 (en) | Methods, systems, and computer readable media for multi-layer orchestration in software defined networks (SDNs) | |
CN109428749A (zh) | 网络管理方法及相关设备 | |
CN107113241B (zh) | 路由确定方法、网络配置方法以及相关装置 | |
CN105323136A (zh) | 信息的处理方法及装置 | |
Chartsias et al. | SDN/NFV-based end to end network slicing for 5G multi-tenant networks | |
CN104426756B (zh) | 一种服务节点能力信息的获取方法及控制平台 | |
CN106464583A (zh) | 实现具有开放流数据和控制平面的云计算机中的3g分组核心 | |
US20140359091A1 (en) | Dynamically migrating virtual machines and gateways | |
CN109660441A (zh) | Overlay网络中组播复制的方法及装置 | |
CN113783781A (zh) | 使虚拟私有云之间网络互通的方法和装置 | |
WO2021098824A1 (zh) | 网络切片创建方法、基础网络控制器、***和存储介质 | |
CN109412951A (zh) | 一种发送路由信息的方法和装置 | |
Jiang et al. | Efficient joint approaches for location-constrained survivable virtual network embedding | |
CN101860452B (zh) | 网元的管理方法和*** | |
CN104869064A (zh) | 一种流表更新方法及装置 | |
CN106330783B (zh) | 一种OpenFlow交换机能力上报的方法及装置 | |
CN114640627A (zh) | 报文转发方法及装置、非易失性存储介质、处理器 | |
US20120170581A1 (en) | Policy homomorphic network extension | |
EP2983333B1 (en) | A system and method for providing routes to physical residential gateways | |
CN104426777A (zh) | 路由更新方法和路由设备 | |
CN116599839A (zh) | 云网关***、数据处理方法、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |