数据报文的控制方法、设备及系统与流程

文档序号:11965301阅读:356来源:国知局
数据报文的控制方法、设备及系统与流程
本发明涉及通信技术领域,尤其涉及一种数据报文的方法、设备及系统。

背景技术:
当前,由于网络暴露出了越来越多的弊病以及人们对网络性能需求的提高,很多复杂功能被加入到交换设备的体系结构当中,例如开放式最短路径优先OpenShortestPathFirst,简称OSPF)协议,组播,区分服务,流量工程,防火墙等等。这样就使得路由器等交换设备越来越臃肿,而且性能提升的空间越来越小。一种开放流(简称OpenFlow)技术的提出能够解决上述的现有交换设备(如交换机或者路由器等)越来越臃肿,而且性能提升的空间越来越小的问题。OpenFlow技术下的OpenFlow交换设备(简称OpenFlowSwitch)将原来完全由OpenFlow交换设备控制的报文转发过程转化为由OpenFlow交换设备和控制设备(简称Controller)来共同完成,从而实现了数据转发和路由控制的分离。控制设备可以通过事先规定好的接口操作来控制OpenFlow交换设备中的流表,从而达到控制数据转发的目的。具体的过程为,OpenFlow交换设备在接收到报文时,向控制设备发送报文消息,以使得所述控制设备获取到所述报文内容,在OpenFlow协议中规定了OpenFlow交换设备中的每个流表项所对应的动作,这样所述控制设备通过所述OpenFlow协议中规定的每个流表项所对应的动作,向所述OpenFlow交换设备发送OpenFlow协议消息,以对所述报文或整个OpenFlow交换设备的数据进行管理控制,例如数据转发、防火墙设置、路由设置等均在所述OpenFlow协议中有规定。在实现本发明实施例的过程中,发明人发现现有技术中至少存在如下问题:OpenFlow交换设备只能通过OpenFlow协议中规定的功能对OpenFlow交换设备或报文进行控制管理,不能实现所述OpenFlow协议外的功能。

技术实现要素:
本发明的实施例提供一种数据报文的控制方法、设备及系统,能够解决现有技术中由于OpenFlow交换设备只能通过OpenFlow协议中规定的功能对OpenFlow交换设备或报文进行控制管理,不能实现所述OpenFlow协议外的功能的问题。为达到上述目的,本发明采用如下技术方案:一种数据报文的控制方法,包括:控制设备根据匹配信息和操作信息的对应关系生成流表项操作指示消息,所述流表项操作指示消息包括所述匹配信息和所述操作信息,所述匹配信息和所述操作信息的对应关系是事先配置的,所述操作信息包括自定义操作指示和交换设备所支持的控制命令,所述自定义操作指示用于指示执行所述控制命令;所述控制设备发送所述流表项操作指示消息至所述交换设备,以使所述交换设备生成流表项,所述流表项的匹配域包括所述匹配信息,所述流表项的操作域包括所述操作信息,所述流表项用于指示所述交换设备当所述数据报文与所述匹配信息匹配时,根据所述自定义操作指示,对所述数据报文执行所述控制命令。一种数据报文的控制方法,包括:交换设备接收控制设备发送的流表项操作指示消息,所述流表项操作指示消息包括匹配信息和操作信息,所述操作信息包括自定义操作指示和所述交换设备所支持的控制命令,所述自定义操作指示用于指示执行所述控制命令;所述交换设备根据所述流表项操作指示消息生成流表项,所述流表项的匹配域包括所述匹配信息,所述流表项的操作域包括所述操作信息,所述流表项用于指示所述交换设备当所述数据报文与所述匹配信息匹配时,根据所述自定义操作指示,对所述数据报文执行所述控制命令。一种控制设备,包括:第一生成单元,用于根据匹配信息和操作信息的对应关系生成流表项操作指示消息,所述流表项操作指示消息包括所述匹配信息和所述操作信息,所述匹配信息和所述操作信息的对应关系是事先配置的,所述操作信息包括自定义操作指示和交换设备所支持的控制命令,所述自定义操作指示用于指示执行所述控制命令;第一发送单元,用于发送所述流表项操作指示消息至所述交换设备,以使所述交换设备生成流表项,所述流表项的匹配域包括所述匹配信息,所述流表项的操作域包括所述操作信息,所述流表项用于指示所述交换设备当所述数据报文与所述匹配信息匹配时,根据所述自定义操作指示,对所述数据报文执行所述控制命令。一种交换设备,包括:第三接收单元,用于接收控制设备发送的流表项操作指示消息,所述流表项操作指示消息包括匹配信息和操作信息,所述操作信息包括自定义操作指示和所述交换设备所支持的控制命令,所述自定义操作指示用于指示执行所述控制命令;第二生成单元,用于根据所述流表项操作指示消息生成流表项,所述流表项的匹配域包括所述匹配信息,所述流表项的操作域包括所述操作信息,所述流表项用于指示所述交换设备当所述数据报文与所述匹配信息匹配时,根据所述自定义操作指示,对所述数据报文执行所述控制命令。一种数据报文的控制系统,包括上述的控制设备以及上述的交换设备。本发明实施例提供的数据报文的控制方法、设备及系统,由于控制设备根据匹配信息和操作信息的对应关系生成流表项操作指示消息,所述操作信息包括自定义操作指示和交换设备所支持的控制命令,所述自定义操作指示用于指示执行所述控制命令;所述控制设备发送所述流表项操作指示消息至所述交换设备,以使所述交换设备生成流表项,所述流表项用于指示所述交换设备当所述数据报文与所述匹配信息匹配时,根据所述自定义操作指示,对所述数据报文执行所述控制命令。这样使得所述交换设备所支持的控制命令均能在所述交换设备中实现,与现有技术相比,本发明实施例能够解决OpenFlow交换设备只能通过OpenFlow协议中规定的功能对OpenFlow交换设备或报文进行控制管理,不能实现所述OpenFlow协议外的功能的问题。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例提供的数据报文的控制方法的流程图一;图2为本发明实施例提供的数据报文的控制方法的流程图二;图3为本发明又一实施例提供的数据报文的控制方法的流程图;图4为本发明实施例提供的控制设备的结构示意图一;图5为本发明实施例提供的控制设备的结构示意图二;图6为本发明实施例提供的交换设备的结构示意图一;图7为本发明实施例提供的交换设备的结构示意图二;图8为本发明实施例提供的数据报文的控制系统的结构示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。为使本发明技术方案的优点更加清楚,下面结合附图和实施例对本发明作详细说明。如图1所示,本发明实施例提供的数据报文的控制方法,从控制设备侧进行阐述,所述方法包括:步骤101、控制设备根据匹配信息和操作信息的对应关系生成流表项操作指示消息。其中,所述流表项操作指示消息包括所述匹配信息和所述操作信息,所述匹配信息和所述操作信息的对应关系是事先配置的,所述操作信息包括自定义操作指示和交换设备所支持的控制命令,所述自定义操作指示用于指示执行所述控制命令。其中,所述流表项操作指示消息用于指示所述交换设备生成流表项,从而将所述流表项操作指示消息中的匹配信息配置到流表项的匹配域中,将所述流表项操作指示消息中的操作信息配置到流表项的操作域中。其中,所述匹配信息中带有大量数据报文与所述操作信息的对应关系,用于在交换设备接收到数据报文时,所述数据报文若与所述匹配信息匹配,则能通过所述匹配信息找到对应的操作信息。其中,所述操作信息用于在交换设备在接收到数据报文,并根据所述匹配信息找到所述操作信息时,所述操作信息中带有自定义操作指示,指示所述交换设备执行所述操作信息中所述交换设备所支持的控制命令。例如所述自定义操作指示可以是告知所述交换设备,执行自定义的控制命令,所述自定义的控制命令即为预先设置的所述交换设备所支持的控制命令。其中,所述匹配信息和所述操作信息的对应关系是事先配置的,所述事先配置可以是事先设置有匹配信息和所述操作信息的对应关系表,所述对应关系表可以事先设置在所述控制设备本地的数据库中,或者设置在其他网元处,但不仅局限于此。其中,由于所述交换设备具有各种型号及系统版本,不同型号及系统版本下的交换设备可以支持不同的控制命令,例如某一型号及系统版本下的交换设备的显示控制命令为“show”,而另一型号及系统版本下的交换设备的显示控制命令为“display”,但不仅局限于此。步骤102、所述控制设备发送所述流表项操作指示消息至所述交换设备,以使所述交换设备生成流表项。其中,所述流表项的匹配域包括所述匹配信息,所述流表项的操作域包括所述操作信息,所述流表项用于指示所述交换设备当所述数据报文与所述匹配信息匹配时,根据所述自定义操作指示,对所述数据报文执行所述控制命令。具体的,由于所述控制设备不知道所述交换设备的型号和系统版本,因此为了保证所述交换设备所支持的控制指令能够到达所述交换设备,所述控制设备将不同型号和系统版本对应的流表项操作指示消息均发送给所述交换设备。具体的,一般所述流表项存在三个域,匹配域、操作域以及数据域,匹配域中存储有数据报文头等信息,例如本实施例中的匹配信息;所述操作域中存储有与匹配域中各个数据报文头对应的报文将采取的处理动作信息,如本实施例中的操作信息;所述数据域存储了数据报文的报文数量及字节大小等信息。具体的,所述控制设备发送所述流表项操作指示消息至所述交换设备可以是通过OpenFlow协议消息中的OFDF_VENDOR_EXTENSION消息发送。如图2所示,本发明实施例提供的数据报文的控制方法,从交换设备侧进行阐述,所述方法包括:步骤201、交换设备接收控制设备发送的流表项操作指示消息。其中,所述流表项操作指示消息包括匹配信息和操作信息,所述操作信息包括自定义操作指示和所述交换设备所支持的控制命令,所述自定义操作指示用于指示执行所述控制命令。步骤202、所述交换设备根据所述流表项操作指示消息生成流表项。其中,所述流表项的匹配域包括所述匹配信息,所述流表项的操作域包括所述操作信息,所述流表项用于指示所述交换设备当所述数据报文与所述匹配信息匹配时,根据所述自定义操作指示,对所述数据报文执行所述控制命令。本发明实施例提供的数据报文的控制方法,由于控制设备根据匹配信息和操作信息的对应关系生成流表项操作指示消息,所述操作信息包括自定义操作指示和交换设备所支持的控制命令,所述自定义操作指示用于指示执行所述控制命令;所述控制设备发送所述流表项操作指示消息至所述交换设备,以使所述交换设备生成流表项,所述流表项用于指示所述交换设备当所述数据报文与所述匹配信息匹配时,根据所述自定义操作指示,对所述数据报文执行所述控制命令。这样使得所述交换设备所支持的控制命令均能在所述交换设备中实现,与现有技术相比,本发明实施例能够解决OpenFlow交换设备只能通过OpenFlow协议中规定的功能对OpenFlow交换设备或报文进行控制管理,不能实现所述OpenFlow协议外的功能的问题。如图3所示,本发明又一实施例提供的数据报文的控制方法,所述方法包括:步骤301、交换设备发送所述交换设备的型号信息以及系统版本信息至控制设备。执行步骤302,再执行步骤303,或者直接执行步骤303。步骤302、所述交换设备发送数据报文至所述控制设备。在所述控制设备接收到所述交换设备发送的所述数据报文后,执行步骤303。具体的,所述控制设备生成所述流表项操作指示消息可以是由所述交换设备发送数据报文触发,也可以是根据预先设置的策略触发,例如在所述控制设备上的存储有匹配信息和所述操作信息的对应关系的数据库发生变化时,生成所述流表项操作指示消息,但不仅局限于此。步骤303、所述控制设备根据匹配信息和所述操作信息的对应关系,以及所述交换设备的型号信息和系统版本信息,生成所述流表项操作指示消息。具体的,由于所述交换设备具有各种型号及系统版本,不同型号及系统版本下的交换设备可以支持不同的控制命令,因此为了使得所述流表项操作指示消息中无其他型号及系统版本的交换设备的匹配信息和操作信息,所述控制设备根据匹配信息和所述操作信息的对应关系,以及所述交换设备的型号信息和系统版本信息,生成所述流表项操作指示消息。步骤304、所述控制设备发送所述流表项操作指示消息至所述交换设备。其中,所述流表项操作指示消息包括匹配信息和操作信息,所述操作信息包括自定义操作指示和所述交换设备所支持的控制命令,所述自定义操作指示用于指示执行所述控制命令。步骤305、所述交换设备根据所述流表项操作指示消息生成流表项。其中,所述流表项的匹配域包括所述匹配信息,所述流表项的操作域包括所述操作信息,所述流表项用于指示所述交换设备当所述数据报文与所述匹配信息匹配时,根据所述自定义操作指示,对所述数据报文执行所述控制命令。步骤306、当接收到所述数据报文时,若所述数据报文与所述流表项的所述匹配信息匹配,所述交换设备根据所述流表项的所述自定义操作指示,对所述数据报文执行所述流表项的所述控制命令。本发明又一实施例提供的数据报文的控制方法,由于控制设备根据匹配信息和操作信息的对应关系生成流表项操作指示消息,所述操作信息包括自定义操作指示和交换设备所支持的控制命令,所述自定义操作指示用于指示执行所述控制命令;所述控制设备发送所述流表项操作指示消息至所述交换设备,以使所述交换设备生成流表项,所述流表项用于指示所述交换设备当所述数据报文与所述匹配信息匹配时,根据所述自定义操作指示,对所述数据报文执行所述控制命令。这样使得所述交换设备所支持的控制命令均能在所述交换设备中实现,与现有技术相比,本发明实施例能够解决OpenFlow交换设备只能通过OpenFlow协议中规定的功能对OpenFlow交换设备或报文进行控制管理,不能实现所述OpenFlow协议外的功能的问题。如图4所示,本发明实施例提供的控制设备,包括:第一生成单元41,用于根据匹配信息和操作信息的对应关系生成流表项操作指示消息,所述流表项操作指示消息包括所述匹配信息和所述操作信息,所述匹配信息和所述操作信息的对应关系是事先配置的,所述操作信息包括自定义操作指示和交换设备所支持的控制命令,所述自定义操作指示用于指示执行所述控制命令。其具体实现方式参见图1中步骤101所示,此处不再赘述。第一发送单元42,用于发送所述流表项操作指示消息至所述交换设备,以使所述交换设备生成流表项,所述流表项的匹配域包括所述匹配信息,所述流表项的操作域包括所述操作信息,所述流表项用于指示所述交换设备当所述数据报文与所述匹配信息匹配时,根据所述自定义操作指示,对所述数据报文执行所述控制命令。其具体实现方式参见图1中步骤102所示,此处不再赘述。进一步的,如图5所示,所述控制设备,还包括:第一接收单元43,用于接收所述交换设备的型号信息以及系统版本信息。其具体实现方式参见图3中步骤301所示,此处不再赘述。所述第一生成单元41,具体用于:根据所述匹配信息和所述操作信息的对应关系,以及所述交换设备的型号信息和系统版本信息,生成所述流表项操作指示消息。其具体实现方式参见图3中步骤303所示,此处不再赘述。进一步的,如图5所示,所述控制设备,还包括:第二接收单元44,用于接收所述交换设备发送的所述数据报文。其具体实现方式参见图3中步骤302所示,此处不再赘述。本发明实施例提供的控制设备,由于控制设备根据匹配信息和操作信息的对应关系生成流表项操作指示消息,所述操作信息包括自定义操作指示和交换设备所支持的控制命令,所述自定义操作指示用于指示执行所述控制命令;所述控制设备发送所述流表项操作指示消息至所述交换设备,以使所述交换设备生成流表项,所述流表项用于指示所述交换设备当所述数据报文与所述匹配信息匹配时,根据所述自定义操作指示,对所述数据报文执行所述控制命令。这样使得所述交换设备所支持的控制命令均能在所述交换设备中实现,与现有技术相比,本发明实施例能够解决OpenFlow交换设备只能通过OpenFlow协议中规定的功能对OpenFlow交换设备或报文进行控制管理,不能实现所述OpenFlow协议外的功能的问题。如图6所示,本发明实施例提供的交换设备,包括:第三接收单元51,用于接收控制设备发送的流表项操作指示消息,所述流表项操作指示消息包括匹配信息和操作信息,所述操作信息包括自定义操作指示和所述交换设备所支持的控制命令,所述自定义操作指示用于指示执行所述控制命令。其具体实现方式参见图2中步骤201所示,此处不再赘述。第二生成单元52,用于根据所述流表项操作指示消息生成流表项,所述流表项的匹配域包括所述匹配信息,所述流表项的操作域包括所述操作信息,所述流表项用于指示所述交换设备当所述数据报文与所述匹配信息匹配时,根据所述自定义操作指示,对所述数据报文执行所述控制命令。其具体实现方式参见图2中步骤202所示,此处不再赘述。进一步的,如图7所示,所述交换设备,还包括:执行单元53,用于当接收到所述数据报文时,若所述数据报文与所述流表项的所述匹配信息匹配,根据所述流表项的所述自定义操作指示,对所述数据报文执行所述流表项的所述控制命令。其具体实现方式参见图3中步骤306所示,此处不再赘述。进一步的,如图7所示,所述交换设备,还包括:第二发送单元54,用于发送所述交换设备的型号信息以及系统版本信息至所述控制设备。其具体实现方式参见图3中步骤301所示,此处不再赘述。进一步的,如图7所示,所述交换设备,还包括:第三发送单元55,用于发送所述数据报文至所述控制设备。其具体实现方式参见图3中步骤302所示,此处不再赘述。本发明实施例提供的交换设备,由于控制设备根据匹配信息和操作信息的对应关系生成流表项操作指示消息,所述操作信息包括自定义操作指示和交换设备所支持的控制命令,所述自定义操作指示用于指示执行所述控制命令;所述控制设备发送所述流表项操作指示消息至所述交换设备,以使所述交换设备生成流表项,所述流表项用于指示所述交换设备当所述数据报文与所述匹配信息匹配时,根据所述自定义操作指示,对所述数据报文执行所述控制命令。这样使得所述交换设备所支持的控制命令均能在所述交换设备中实现,与现有技术相比,本发明实施例能够解决OpenFlow交换设备只能通过OpenFlow协议中规定的功能对OpenFlow交换设备或报文进行控制管理,不能实现所述OpenFlow协议外的功能的问题。如图8所示,本发明实施例提供的数据报文的控制系统,包括上述的控制设备61以及交换设备62。其具体实现方式参见上述控制设备及交换设备的实施例,此处不再赘述。本发明实施例提供的数据报文的控制系统,由于控制设备根据匹配信息和操作信息的对应关系生成流表项操作指示消息,所述操作信息包括自定义操作指示和交换设备所支持的控制命令,所述自定义操作指示用于指示执行所述控制命令;所述控制设备发送所述流表项操作指示消息至所述交换设备,以使所述交换设备生成流表项,所述流表项用于指示所述交换设备当所述数据报文与所述匹配信息匹配时,根据所述自定义操作指示,对所述数据报文执行所述控制命令。这样使得所述交换设备所支持的控制命令均能在所述交换设备中实现,与现有技术相比,本发明实施例能够解决OpenFlow交换设备只能通过OpenFlow协议中规定的功能对OpenFlow交换设备或报文进行控制管理,不能实现所述OpenFlow协议外的功能的问题。通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1