一种数据流处理方法、设备和系统与流程

文档序号:11170992阅读:513来源:国知局
一种数据流处理方法、设备和系统与流程
本发明涉及通信技术领域,尤其涉及一种数据流处理方法、设备和系统。

背景技术:
在现代通信网络中,通过各种不同功能的网络设备通过支持各类的网络协议从而实现网元间的互联互通,其中,每一台网络设备都有内部的报文转发模块和各类的协议控制模块组成。这种分布式的控制模块部署方式使得网络的部署和管理非常复杂,为例是是某个控制参数的修改或升级,必须有人工对每台设备进行单独的操作,为了提高网元的部署灵活性和可管理性,现有技术提出了软件定义网络SDN(Software-DefinedNetwork)的概念,即通过网元设备的控制逻辑和转发功能解耦,并将控制逻辑进行集中部署,使得网络的控制和维护工作能够简单地通过对控制面设备的操作实现,从而提高网络的管理效率,并使得转发名设备更为简化,有利于实现转发设备的高性能和可重用性。在现有技术中,通常使用Openflow协议作为SDN网络中的最典型和应用最多的协议,其中,Openflow协议中的网元包括控制设备Openflowcontroller(简称OFController)和交换设备Openflowswitch(简称OFSwitch),这里控制设备预先以流表项的形式发送根据报文特征确定的业务流的转发动作至交换设备,以便交换设备存储该流表项,并对后续符合该流表项中匹配信息的报文执行对应的动作列表,但在某些协议处理的过程中,控制设备预先发送至交换设备的流表项动作中的信息不足以处理交换设备接收的用户报文,此时交换设备需要中断动作列表的执行操作并向控制器请求需要的信息,但无法对返回的报文继续执行未完成的动作,因此导致在类似的动作执行间交换设备无法处理对应的报文。

技术实现要素:
本发明的实施例提供一种数据流处理方法、设备和系统,解决了交换设备通过接收的控制设备预先发送的流表项不能处理对应的用户报文导致中断操作的问题,从而提升了网络设备间的工作效率,减少了对报文的错误处理。为达到所述目的,本发明的实施例采用如下技术方案:第一方面,提供一种数据流处理方法,包括:向控制设备发送请求消息,所述请求消息包括交换设备请求的动作参数、待处理报文的标识或待处理报文;接收所述控制设备根据所述请求消息发送的报文处理信息;根据所述报文处理信息执行对应所述待处理报文的操作。在第一种可能的实现方式中,结合第一方面具体包括,所述向控制设备发送请求消息之前,还包括:接收所述控制设备预先发送的流表项,并根据所述流表项匹配所述待处理报文,所述流表项包括数据流的匹配信息及所述数据流所需的动作列表;若执行所述动作列表时发现对应的动作参数缺失,则向所述控制设备发送请求消息。在第二种可能的实现方式中,结合第一方面或第一种可能的实现方式具体包括,所述向控制设备发送请求消息,包括:将动作执行信息通过所述请求消息发送至所述控制设备和/或存储在本地,所述动作执行信息包括已执行动作标识、未执行动作标识、已执行动作列表和未执行动作列表中一种或多种。在第三种可能的实现方式中,结合第一方面或第一方面中第一种可能的实现方式或第一方面中第二种可能的实现方式具体包括,所述根据所述报文处理信息执行对应所述待处理报文的操作,还包括:根据所述报文处理信息获取所述待处理报文或所述待处理报文标识、动作参数、动作执行信息、和/或继续动作执行指令,并根据所述报文处理信息执行对应的操作。在第四种可能的实现方式中,结合第一方面或第一方面中任一种可能的实现方式具体包括,所述报文处理信息包括:所述动作参数、待处理报文或所述待处理报文的标识、动作执行信息、待执行动作列表、继续动作执行指令中至少一种。第二方面,提供一种数据流处理方法,包括:接收交换设备发送的请求消息,并根据所述请求消息确定所述交换设备所需的报文处理信息,所述请求消息包括交换设备请求的动作参数、待处理报文的标识或待处理报文;将所述报文处理信息发送至所述交换设备,以便于所述交换设备根据所述报文处理信息执行对应操作,所述报文处理信息包括所述动作参数、待处理报文或所述待处理报文的标识、动作执行信息、待执行动作列表、继续动作执行指令中至少一种。在第一种可能的实现方式中,结合第二方面具体包括,所述接收交换设备发送的请求消息,并根据所述请求消息确定所述交换设备所需的报文处理信息之前,还包括:预先向所述交换设备发送流表项,所述流表项包括数据流的匹配信息及所述数据流所需的动作列表。在第二种可能的实现方式中,结合第二方面或第一种可能的实现方式具体包括,所述接收交换设备发送的请求消息,并根据所述请求消息确定所述交换设备所需的报文处理信息,包括:根据所述请求消息获取所述请求消息对应的请求参数,并根据所述请求消息配置对应的动作列表,并根据所述请求参数和所述动作列表生成报文处理信息,以便所述交换设备根据所述报文处理信息执行对应操作。第三方面,提供一种交换设备,包括:发送单元,用于向控制设备发送请求消息,所述请求消息包括交换设备请求的动作参数、待处理报文的标识或待处理报文;接收单元,用于接收所述控制设备根据所述请求消息发送的报文处理信息;配置单元,用于根据所述报文处理信息执行对应所述待处理报文的操作。在第一种可能的实现方式中,结合第三方面具体包括,所述设备包括:匹配单元,用于向控制设备发送请求消息之前,接收所述控制设备预先发送的流表项,并根据所述流表项匹配所述待处理报文,所述流表项包括数据流的匹配信息及所述数据流所需的动作列表;所述匹配单元,还用于若执行所述动作列表时发现对应的动作参数缺失,则向所述控制设备发送请求消息。在第二种可能的实现方式中,结合第三方面或第一种可能的实现方式具体包括,所述发送单元,具体用于将动作执行信息通过所述请求消息发送至所述控制设备和/或存储在本地,所述动作执行信息包括已执行动作标识、未执行动作标识、已执行动作列表和未执行动作列表中一种或多种。在第三种可能的实现方式中,结合第三方面或第三方面中第一种可能的实现方式或第三方面中第二种可能的实现方式具体包括,所述配置单元,具体用于根据所述报文处理信息获取所述待处理报文或所述待处理报文标识、动作参数、动作执行信息、和/或继续动作执行指令,并根据所述报文处理信息执行对应的操作。在第四种可能的实现方式中,结合第三方面或第三方面中任一种可能的实现方式具体包括,所述报文处理信息包括:所述动作参数、待处理报文或所述待处理报文的标识、动作执行信息、待执行动作列表、继续动作执行指令中至少一种。第四方面,提供一种控制设备,包括:配置单元,用于接收交换设备发送的请求消息,并根据所述请求消息确定所述交换设备所需的报文处理信息,所述请求消息包括交换设备请求的动作参数、待处理报文的标识或待处理报文;发送单元,用于将所述配置单元确定的所述报文处理信息发送至所述交换设备,以便于所述交换设备根据所述报文处理信息执行对应操作,所述报文处理信息包括所述动作参数、待处理报文或所述待处理报文的标识、动作执行信息、待执行动作列表、继续动作执行指令中至少一种。在第一种可能的实现方式中,结合第四方面具体包括,所述发送单元,还用于接收交换设备发送的请求消息,并根据所述请求消息确定所述交换设备所需的报文处理信息之前,预先向所述交换设备发送流表项,所述流表项包括数据流的匹配信息及所述数据流所需的动作列表。在第二种可能的实现方式中,结合第四方面或第一种可能的实现方式具体包括,所述配置单元,包括:配置子单元,用于根据所述请求消息获取所述请求消息对应的请求参数,并根据所述请求消息配置对应的动作列表,并根据所述请求参数和所述动作列表生成报文处理信息,以便所述交换设备根据所述报文处理信息执行对应操作。第五方面,提供一种交换设备,包括:通过数据总线连接的处理器和存储器,以及分别与所述处理器和存储器连接的至少一个通信接口,其中,所述处理器,用于通过所述至少一个通信接口向控制设备发送请求消息,所述请求消息包括交换设备请求的动作参数、待处理报文的标识或待处理报文;所述处理器,还用于通过所述至少一个通信接口接收所述控制设备根据所述请求消息发送的报文处理信息;所述处理器,还用于根据所述报文处理信息执行对应所述待处理报文的操作。在第一种可能的实现方式中,结合第五方面具体包括,所述处理器,还用于通过所述至少一个通信接口向控制设备发送请求消息之前,通过所述至少一个通信接口接收所述控制设备预先发送的流表项,并根据所述流表项匹配所述待处理报文,所述流表项包括数据流的匹配信息及所述数据流所需的动作列表;所述处理器,还用于若执行所述动作列表时发现对应的动作参数缺失,则通过所述至少一个通信接口向所述控制设备发送请求消息。在第二种可能的实现方式中,结合第五方面或第一种可能的实现方式具体包括,所述处理器,还用于通过所述至少一个通信接口将动作执行信息通过所述请求消息发送至所述控制设备和/或通过所述存储器存储在本地,所述动作执行信息包括已执行动作标识、未执行动作标识、已执行动作列表和未执行动作列表中一种或多种。在第三种可能的实现方式中,结合第五方面或第五方面中第一种可能的实现方式或第五方面中第二种可能的实现方式具体包括,所述处理器,还用于根据所述报文处理信息获取所述待处理报文或所述待处理报文标识、动作参数、动作执行信息、和/或继续动作执行指令,并根据所述报文处理信息执行对应的操作。在第四种可能的实现方式中,结合第五方面或第五方面中任一种可能的实现方式具体包括,所述报文处理信息包括:所述动作参数、待处理报文或所述待处理报文的标识、动作执行信息、待执行动作列表、继续动作执行指令中至少一种。第六方面,提供一种控制设备,包括:通过数据总线连接的处理器和存储器,以及分别与所述处理器和存储器连接的至少一个通信接口,其中,所述处理器,用于通过所述至少一个通信接口接收交换设备发送的请求消息,并根据所述请求消息确定所述交换设备所需的报文处理信息,所述请求消息包括交换设备请求的动作参数、待处理报文的标识或待处理报文;所述处理器,还用于将所述报文处理信息通过所述至少一个通信接口发送至所述交换设备,以便于所述交换设备根据所述报文处理信息执行对应操作,所述报文处理信息包括所述动作参数、待处理报文或所述待处理报文的标识、动作执行信息、待执行动作列表、继续动作执行指令中至少一种。在第一种可能的实现方式中,结合第六方面具体包括,所述处理器,还用于通过所述至少一个通信接口接收交换设备发送的请求消息,并根据所述请求消息确定所述交换设备所需的报文处理信息之前,预先通过所述至少一个通信接口向所述交换设备发送流表项,所述流表项包括数据流的匹配信息及所述数据流所需的动作列表。在第二种可能的实现方式中,结合第六方面或第一种可能的实现方式具体包括,所述处理器,还用于根据所述请求消息获取所述请求消息对应的请求参数,并根据所述请求消息配置对应的动作列表,并根据所述请求参数和所述动作列表生成报文处理信息,以便所述交换设备根据所述报文处理信息执行对应操作。第七方面,提供一种通信系统,包括:交换设备和控制设备,其中,所述交换设备为第三方面或第三方面中任一种可能的实现方式所述的任一交换设备,所述控制设备为第四方面或第四方面中任一种可能的实现方式所述的任一控制设备;或者,所述交换设备为第五方面或第五方面中任一种可能的实现方式所述的任一交换设备,所述控制设备为第六方面或第六方面中任一种可能的实现方式所述的任一控制设备。本发明实施例提供的数据流处理方法、设备和系统,交换设备通过预先接收控制设备发送的流表项处理报文,当交换设备所处理报文发生中断时,该交换设备向控制设备发送请求消息,以便控制设备根据请求消息配置对应交换设备待处理报文的报文处理信息,使得交换设备根据报文处理信息完成待处理报文的操作,从而解决了交换设备通过接收的控制设备预先发送的流表项不能处理对应的用户报文导致中断操作的问题,进而提升了网络设备间的工作效率,减少了对报文的错误处理。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明的实施例提供的一种数据流处理方法的流程示意图;图2为本发明的实施例提供的另一种数据流处理方法的流程示意图;图3为本发明的实施例提供的又一种数据流处理方法的流程示意图;图4为本发明的另一实施例提供的一种数据流处理方法的流程示意图;图5为本发明的另一实施例提供的另一种数据流处理方法的流程示意图;图6为本发明的另一实施例提供的又一种数据流处理方法的流程示意图;图7为本发明的另一实施例提供的再一种数据流处理方法的流程示意图;图8为本发明的实施例提供的一种交换设备的结构示意图;图9为本发明的实施例通过的另一种交换设备的结构示意图;图10为本发明的实施例提供的一种控制设备的结构示意图;图11为本发明的实施例提供的另一种控制设备的结构示意图;图12为本发明的另一实施例提供的一种交换设备的结构示意图;图13为本发明的另一实施例提供的一种控制设备的结构示意图;图14为本发明的实施例提供的一种通信系统的结构示意图。具体实施方式本发明实施例适用于软件定义网络SDN(Software-DefinedNetwork)中任意一种通信协议,其中,本发明实施例中涉及的通信协议以Openflow协议为例。Openflow协议中的网元设备包括控制设备Openflowcontroller(简称OFController)和交换设备Openflowswitch(简称OFSwitch),其中,OFController负责根据报文特征确定该业务流的转发动作,并通过将对应的流表项下发至OFSwitch,从而OFSwitch获取并存储该流表项,并对后续符合该留匹配信息的报文执行对应的动作列表。在这里,我们以Openflow协议为例,进行方案说明。本发明提供一种数据流处理方法,在交换设备侧,参照图1所示,包括以下流程:101、交换设备向控制设备发送请求消息。其中,请求消息包括交换设备请求的动作参数、待处理报文的标识或待处理报文。这里交换设备向控制设备发送请求消息之前还包括:a、交换设备接收该控制设备预先发送的流表项,并根据流表项匹配待处理报文,该流表项包括数据流的匹配信息及数据流所需的动作列表。其中,流表项包括:流匹配信息和对应执行的动作列表,其中流匹配信息包括IP五元组、以太网帧头。这里交换设备接收到的控制设备预先发送的流表项是由控制设备端根据报文特征确定交换设备将要处理的业务流的转发动作,其中,报文特征包括:IP五元组、以太网帧头、虚拟局域网标识VlanID(VirtualLocalAreaNetworkIdentity),交换设备的转发动作包括:转发、丢弃、修改报文头、封装、解封装。b、若执行动作列表时发现对应的动作参数缺失,则向控制设备发送请求消息。102、交换设备接收该控制设备根据请求消息发送的报文处理信息。这里交换设备通过接收控制设备发送的报文处理信息,使得交换设备能够补充对待处理报文的处理信息,进而通过报文处理信息能够对待处理报文进行对应的操作,其中,报文处理信息包括动作参数、待处理报文或待处理报文的标识、动作执行信息、和/或待执行动作列表、和/或继续动作执行指令。可选的,交换设备存储根据发送的请求消息获取的动作参数。103、交换设备根据该报文处理信息执行对应待处理报文的操作。这里交换设备根据接收到的报文处理信息获取待处理报文及该待处理报文对应的动作列表,并根据获取的待处理报文及对应该待处理报文的动作列表执行对应的操作,从而完成对待处理报文的处理。本发明实施例提供一种数据流处理方法,在控制设备侧,参照图2所示,包括以下流程:201、控制设备接收交换设备发送的请求消息,并根据请求消息确定交换设备所需的报文处理信息。其中,请求消息包括交换设备请求的参数、待处理报文的标识或待处理报文。这里在控制设备接收交换设备发送的请求消息之前,还包括:控制设备预先向交换设备发送流表项,该流表项包括数据流的匹配信息及数据流所需的动作列表。这里控制设备预先通过交换设备将要处理的报文制定对应的流表项,其中该交换设备将要处理的报文在Openflow协议中以数据流的形式出现;该流表项包括数据流的匹配信息及数据流所需的动作列表,其中该流表项的制定过程可以是控制设备本地配置完成也可以由控制设备根据接收到的其他网元的初发消息完成得到的。其中流表项中的数据流所需的动作列表包括待执行的一个或多个动作类型及对应的执行参数,这里动作类型包括:转发、丢弃、队列转发、报文修改、封装以及解封装中的一个或多个动作。202、控制设备将报文处理信息发送至交换设备,以便于交换设备根据报文处理信息执行对应操作。其中,报文处理信息包括动作参数、待处理报文或待处理报文的标识、动作执行信息、待执行动作列表、继续动作执行指令中至少一种。本发明实施例提供的数据流处理方法,交换设备通过预先接收控制设备发送的流表项处理报文,当交换设备所处理报文发生中断时,该交换设备向控制设备发送请求消息,以便控制设备根据请求消息配置对应交换设备待处理报文的报文处理信息,使得交换设备根据报文处理信息完成待处理报文的操作,从而解决了交换设备通过接收的控制设备预先发送的流表项不能处理对应的用户报文导致中断操作的问题,进而提升了网络设备间的工作效率,减少了对报文的错误处理。具体的,以下结合具体的实施例进行说明。可以在图1或图2所示的实施例的基础上,参照图3所示,本发明的实施例提供了一种数据流处理方法,主要包括:交换设备通过向控制设备发送请求消息,获取控制设备根据请求消息配置的报文处理信息,使得交换设备根据报文处理信息执行对应待处理报文的执行操作;参照图3所示,为交换设备在处理报文中发生中断时通过接收控制设备发送的报文处理信息对报文进行操作的过程,具体步骤如下:301、控制设备预先向交换设备发送流表项,该流表项包括数据流的匹配信息及数据流所需的...
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1