CN109951397A - 报文处理的方法和设备 - Google Patents
报文处理的方法和设备 Download PDFInfo
- Publication number
- CN109951397A CN109951397A CN201711382592.8A CN201711382592A CN109951397A CN 109951397 A CN109951397 A CN 109951397A CN 201711382592 A CN201711382592 A CN 201711382592A CN 109951397 A CN109951397 A CN 109951397A
- Authority
- CN
- China
- Prior art keywords
- message
- control equipment
- forwarding device
- instruction
- echo
- 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
- 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/0895—Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
-
- 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
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/34—Signalling channels for network management communication
- H04L41/342—Signalling channels for network management communication between virtual entities, e.g. orchestrators, SDN or NFV entities
-
- 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/42—Centralised routing
-
- 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/64—Routing or path finding of packets in data switching networks using an overlay routing layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
- H04L47/283—Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了一种报文处理的方法和设备,该方法包括:控制设备根据该控制设备的负载情况确定转发设备发送回声请求报文ECHO_REQUEST的时间间隔;该控制设备向转发设备发送指示信息,该指示信息用于指示时间间隔。本申请实施例的技术方案,控制设备通过动态配置转发设备发送ECHO_REQUEST报文的时间间隔,能够减少转发设备对控制设备发送大量报文而造成的冲击,提高控制设备的处理效率。
Description
技术领域
本发明实施例涉及通信领域,尤其涉及一种报文处理的方法和设备。
背景技术
为提升网络部署的灵活性和可管理性,业界提出了软件定义网络(SoftwareDefined Network,SDN)的概念。在SDN中通过开放流(OpenFlow)技术将原来完全由交换机/路由器控制的转发过程转化为由SDN转发设备(Switch)和控制设备(Controller)共同完成,实现数据转发和路由控制的分离。
具体地,在SDN中,控制设备实现网络的控制管理功能,转发设备实现网络的转发功能。OpenFlow是当前主流的SDN网络的控制协议。在OpenFlow中,控制设备通过流表表项来控制转发设备的行为。流表表项可以指示需要处理的数据报文以及相应的操作。
在SDN网络下,转发设备与控制设备之间运行OpenFlow协议,转发设备及控制设备都发送回声请求报文(ECHO_REQUEST)来查询对方是否在线,收到ECHO_REQUEST报文后,需要回复回声应答报文(ECHO_REPLY)来应答对方;回声报文(ECHO)用于查询控制设备与转发设备之间连接状态,确保通信畅通。
然而,当前大量转发设备发送ECHO_REQUEST报文可能会对控制设备造成一定的冲击;另外,当控制设备对ECHO_REQUEST报文的处理发生拥塞时,可能会在某一时刻回复大量的ECHO_REQUEST报文,这样可能会导致下一次这些转发设备又同时发起ECHO_REQUEST,造成对控制设备的冲击。
发明内容
本申请提供一种报文处理的方法和设备,能够减少转发设备对控制设备发送大量报文而造成的冲击。
第一方面,提供了一种报文处理的方法,该方法包括:首先,控制设备根据该控制设备的负载情况确定转发设备发送回声请求报文ECHO_REQUEST的时间间隔;然后该控制设备向该转发设备发送指示信息,该指示信息用于指示该时间间隔,控制设备通过动态配置转发设备发送ECHO_REQUEST报文的时间间隔,能够减少转发设备对控制设备发送大量报文而造成的冲击,提高控制设备的处理效率。
结合第一方面,在第一方面的某些实现方式中,该控制设备向该转发设备发送指示信息,包括:该控制设备向该转发设备发送指示报文,该指示报文中包括该指示信息,其中,该指示报文包括:开放流协议配置报文OFPT_SET_CONFIG、回声请求报文ECHO_REQUEST、探测报文HELLO或开放流协议获取转发设备信息报文OFPT_FEATURES_REQUEST。
结合第一方面,在第一方面的某些实现方式中,可以通过在指示报文中新增一个interval参数用于指示转发设备发送ECHO_REQUEST报文的时间的间隔。
结合第一方面,在第一方面的某些实现方式中,控制设备根据自身的负载情况确定时间间隔包括以下两种情况:
第一种情况,当前控制设备负载较大处于拥塞状态时,控制设备可以将时间间隔设置较长;或者当前控制设备负载情况较小时,可以将时间间隔设置较短。
第二种情况,针对不同的转发设备,控制设备可以设置相同的时间间隔也可以设置不同的时间间隔,具体时间间隔的设置要根据控制设备当前的自身负载情况而确定。
结合第一方面,在第一方面的某些实现方式中,控制设备确定的转发设备发送ECHO_REQUEST报文的时间间隔,能够根据不同时刻控制设备当前的负载情况进行改变。
结合第一方面,在第一方面的某些实现方式中,该指示信息携带于该指示报文的新增字段中。
结合第一方面,在第一方面的某些实现方式中,该指示信息携带于该指示报文的预留字段中。
结合第一方面,在第一方面的某些实现方式中,该指示信息包括该时间间隔的绝对值或相对值。
第二方面,提供了一种报文处理的方法,该方法包括:首先,转发设备接收控制设备发送的指示信息,该指示信息用于指示该转发设备发送ECHO_REQUEST报文的时间间隔,该时间间隔为该控制设备根据该控制设备的负载情况确定的;然后,该转发设备根据该时间间隔向该控制设备发送该ECHO_REQUEST报文。
结合第二方面,在第二方面的某些实现方式中,该转发设备接收控制设备发送的指示信息,包括:该转发设备接收该控制设备发送的指示报文,该指示报文中包括该指示信息,其中,该指示报文包括:OFPT_SET_CONFIG、ECHO_REQUEST、HELLO或OFPT_FEATURES_REQUEST。
结合第二方面,在第二方面的某些实现方式中,可以通过在指示报文中新增一个interval参数用于指示转发设备发送ECHO_REQUEST报文的时间的间隔。
结合第二方面,在第二方面的某些实现方式中,控制设备根据自身的负载情况确定时间间隔包括以下两种情况:
第一种情况,当前控制设备负载较大处于拥塞状态时,控制设备可以将时间间隔设置较长;或者当前控制设备负载情况较小时,可以将时间间隔设置较短。
第二种情况,针对不同的转发设备,控制设备可以设置相同的时间间隔也可以设置不同的时间间隔,具体时间间隔的设置要根据控制设备当前的自身负载情况而确定。
结合第二方面,在第二方面的某些实现方式中,控制设备确定的转发设备发送ECHO_REQUEST报文的时间间隔,能够根据不同时刻控制设备当前的负载情况进行改变。
结合第二方面,在第二方面的某些实现方式中,该指示信息携带于该指示报文的新增字段中。
结合第二方面,在第二方面的某些实现方式中,该指示信息携带于该指示报文的预留字段中。
结合第二方面,在第二方面的某些实现方式中,该指示信息包括该时间间隔的绝对值或相对值。
第三方面,提供了一种控制设备,包括:处理器,用于根据控制设备的负载情况确定转发设备发送ECHO_REQUEST报文的时间间隔;端口,用于向该转发设备发送指示信息,该指示信息用于指示该时间间隔。
结合第三方面,在第三方面的某些实现方式中,该端口具体用于:向该转发设备发送指示报文,该指示报文中包括该指示信息,其中,该指示报文包括:OFPT_SET_CONFIG、ECHO_REQUEST、HELLO或OFPT_FEATURES_REQUEST。
结合第三方面,在第三方面的某些实现方式中,可以通过在指示报文中新增一个interval参数用于指示转发设备发送ECHO_REQUEST报文的时间的间隔。
结合第三方面,在第三方面的某些实现方式中,控制设备根据自身的负载情况确定时间间隔包括以下两种情况:
第一种情况,当前控制设备负载较大处于拥塞状态时,控制设备可以将时间间隔设置较长;或者当前控制设备负载情况较小时,可以将时间间隔设置较短。
第二种情况,针对不同的转发设备,控制设备可以设置相同的时间间隔也可以设置不同的时间间隔,具体时间间隔的设置要根据控制设备当前的自身负载情况而确定。
结合第三方面,在第三方面的某些实现方式中,控制设备确定的转发设备发送ECHO_REQUEST报文的时间间隔,能够根据不同时刻控制设备当前的负载情况进行改变。
结合第三方面,在第三方面的某些实现方式中,该指示信息携带于该指示报文的新增字段中。
结合第三方面,在第三方面的某些实现方式中,该指示信息携带于该指示报文的预留字段中。
结合第三方面,在第三方面的某些实现方式中,该指示信息包括该时间间隔的绝对值或相对值。
第四方面,提供了一种转发设备,包括:端口,用于接收控制设备发送的指示信息,该指示信息用于指示转发设备发送ECHO_REQUEST报文的时间间隔,该时间间隔为控制设备根据该控制设备的负载情况确定的;处理器,用于获取所述时间间隔;端口还用于根据该时间间隔向该控制设备发送该ECHO_REQUEST报文。
结合第四方面,在第四方面的某些实现方式中,该端口具体用于:接收该控制设备发送的指示报文,该指示报文中包括该指示信息,其中,该指示报文包括OFPT_SET_CONFIG、ECHO_REQUEST、HELLO或OFPT_FEATURES_REQUEST。
结合第四方面,在第四方面的某些实现方式中,可以通过在指示报文中新增一个interval参数用于指示转发设备发送ECHO_REQUEST报文的时间的间隔。
结合第四方面,在第四方面的某些实现方式中,控制设备根据自身的负载情况确定时间间隔包括以下两种情况:
第一种情况,当前控制设备负载较大处于拥塞状态时,控制设备可以将时间间隔设置较长;或者当前控制设备负载情况较小时,可以将时间间隔设置较短。
第二种情况,针对不同的转发设备,控制设备可以设置相同的时间间隔也可以设置不同的时间间隔,具体时间间隔的设置要根据控制设备当前的自身负载情况而确定。
结合第四方面,在第四方面的某些实现方式中,控制设备确定的转发设备发送ECHO_REQUEST报文的时间间隔,能够根据不同时刻控制设备当前的负载情况进行改变。
结合第四方面,在第四方面的某些实现方式中,该指示信息携带于该指示报文的新增字段中。
结合第四方面,在第四方面的某些实现方式中,该指示信息携带于该指示报文的预留字段中。
结合第四方面,在第四方面的某些实现方式中,该指示信息包括该时间间隔的绝对值或相对值。
第五方面,提供一种控制设备,该设备包括:存储器,用于存储计算机程序;处理器,用于执行所述存储器中存储的计算机程序,以使得所述装置执行上述第一方面或第一方面中的任一种可能实现方式中的方法。
第六方面,提供一种转发设备,该设备包括:存储器,用于存储计算机程序;处理器,用于执行所述存储器中存储的计算机程序,以使得所述装置执行上述第二方面或第二方面中的任一种可能实现方式中的方法。
结合上述任一方面,在某些实现方式中,上述控制设备、转发设备均可以为芯片。
第七方面,提供了一种报文处理系统,该系统包括任一方面或其任一种可能实现方式中的控制设备以及任一方面或其任一种可能实现方式中的转发设备。
第八方面,提供一种可读存储介质,包括程序或指令,当所述程序或指令在计算机上运行时,根据上述第一方面和第二方面中或其任一种可能实现方式中的方法被执行。
第九方面,提供了一种包含指令的计算机程序产品,其在计算机上运行时,使得计算机执行上述第一方面和第二方面中或其任一种可能实现方式中的方法。
附图说明
图1是本发明实施例的应用场景的示意图。
图2是根据本发明实施例报文处理的方法的交互流程图。
图3是本发明一个实施例的控制设备的框图。
图4是本发明一个实施例的转发设备的框图。
图5是根据本发明实施例的报文处理系统的示意性框图。
图6是根据本发明实施例的报文处理设备的示意性框图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
本发明实施例中,控制设备可以是SDN中的控制设备,也可以是其他网络下的控制设备,转发设备可以是SDN中的转发设备,也可以是其他网络下的转发设备,以及本发明中报文处理的方法可以应用于SDN中,也可以应用于其他网络中,本发明对此不作限定。
应注意,本发明实施中的转发设备可以是OF协议下的OF交换机,也可以是SDN中其他协议下的交换机等,控制设备可以是OF协议下的OF控制器,也可以是SDN中其他协议下的控制器等,本发明对此不作限定。
应注意,本发明实施例不仅适用于OF协议下的SDN,也可适用于其他协议下的SDN,本发明对此不作限定。
图1是本发明实施例的应用场景的示意图。
本发明的实施例可以应用于SDN网络中,在SDN网络中包括两部分网络,分别为数据平面和控制平面。具体地,在控制平面中主要为控制设备进行控制操作,控制设备能够获取所有网络信息,负责指挥转发设备如何工作;在数据平面中主要为转发设备进行操作,按照控制设备的指挥进行工作。
在图1中,以使用OpenFlow协议的场景为例进行说明。如图1所示,控制设备130可以控制多个转发设备,例如图1所示的转发设备111、转发设备112和转发设备113(下面可以统称为转发设备110)。控制设备130与转发设备110之间可以采用OpenFlow协议进行通信。
具体地,在OpenFlow协议中,控制设备130可以称为OpenFlow控制器(OpenFlowController),转发设备110可以称为OpenFlow交换机(OpenFlow Switch)。
控制设备130可以通过流表(Flow Table)控制转发设备110的行为。下面将描述流表表项的内容。
流表表项(Flow Entry)通常可以包括匹配域(Match Fields)、优先级(Priority)、计数器(Counters)、指令(Instructions)、老化时间(Timeouts)和Cookie等。
匹配域中指定的值可以用来与报文的头域以及入端口号等信息进行匹配,以确定该报文是否为要处理的报文,通常也将要处理的报文称为目标报文。报文的头域可以包括网际协议(Internet Protocol,IP)五元组(即源IP地址、目的IP地址、协议类型、源端口号、目的端口号),或者以太网帧头中的各种头域等。以太网帧头中的头域可以包括媒体接入控制(Media Access Control,MAC)地址、目的MAC地址等。上述的匹配可以是精确匹配,也可以是掩码匹配。
指令域可以包括多种指令,例如动作(Action)相关的指令、Goto-Table(跳转-表)指令、Meter(计量器)指令、Write-Metadata(写元数据)指令等。由于对Meter指令没有规范的中文表述,计量器指令、计量指令、或者计量表指令等都可以指代本申请中的Meter指令。
动作(Action)相关的指令:在OpenFlow协议中,动作指令可以分为两大类,一个大类是立刻执行的动作,对应的指令为Apply-Actions,另一个大类是先存放在动作集中,直到流水线结束时才执行的动作。向动作集里写动作的指令为Write-Actions,清除动作集中所有动作的指令为Clear-Actions。不论是立刻执行的动作,还是存放在动作集中的动作,都包含多种类别,包括用于指示如何对报文进行操作的动作,比如转发、丢弃、修改报文头、封装、解封装、发送给控制设备130等。
动作相关的指令还可以包括设置队列的指令Set-Queue(设置队列)。当通过某个端口转发数据报文时,可以通过该指令设置该端口对应的队列标识(Identity,ID)。
Goto-Table指令:即流水线控制指令,指示报文在流表之间进行跳转,即从一个流表跳转到另一个流表。
Meter指令:指示利用Meter表项对报文进行简单服务质量(Quality of Service,QoS)处理。
Write-Metadata指令:指示写元数据。元数据是OpenFlow流表之间传递信息的机制,报文对应的元数据的内容可以传递到后续的流表。
控制设备130可以实现网络业务的控制逻辑,确定对什么样的报文进行什么样的操作,从而制定流表表项,并将流表表项下发给转发设备110。转发设备110保存流表表项,根据流表表项中的匹配域对接收到的报文进行匹配,对匹配的报文,即目标报文执行对应的指令,从而实现各种报文的处理。
具体地,转发设备110可以保存有一个或多个流表。可以从第一个流表对接收到的报文开始匹配。如果匹配成功,则执行匹配成功的流表表项中的指令,其中如果包含跳转到其他流表的指令,则跳转到其他流表继续进行匹配和处理;如果匹配失败,则根据Table-Miss(表缺失)表项进行处理(比如可以丢弃或者发送给控制设备130处理),如果没有Table-Miss表项,则根据流表的属性决定对如何对报文进行处理(比如可以配置为丢弃或者发送给控制设备130处理)。
通过各流表对报文处理的整个流程可以称为流水线(Pipeline)。当报文在流表之间跳转时,报文内容、入端口(ingress port)、元数据、动作集这四种信息也相应地在流表之间传递。
上述提到的Table-Miss表项是OpenFlow流表中的一个特殊表项,这个表项没有匹配域(即和所有报文都能匹配成功),匹配优先级最低,用于指示和流表中其他流表表项都匹配失败的报文如何处理。如果Table-Miss表项是某个流表中的唯一表项,则意味着该流表对所有报文都按照Table-Miss表项进行处理。
下面将详细描述上面提到的Meter表。Meter表与Meter指令相对应,二者配合可以完成简单的QoS控制功能。通过Meter指令可以指定用于处理数据报文的Meter表项。多个数据流可以共享一个Meter表项,一个数据流也可以经过多个Meter表项进行处理。
Meter表包含一个或者多个Meter表项,每个Meter表项可以包括Meter标识(MeterIdentifier,Meter ID)、一个或多个Meter Band(计量器带)和Counters(计数器)。由于不存在对于Meter Band规范的中文表述,计量器带、计量带、计量线、计量器线等都可以指代本申请中的Meter Band。
Meter ID可以唯一标识一个Meter表项。Meter表项中的Counters可以记录Meter表项的统计信息。
Meter Band可以包括以下内容:Band类型(Band Type)、速率(Rate)、突发流量(Burst Size)、计数器(Counters)和Type specific arguments(类型特定参数)。
下面描述Meter Band中的各项内容。
Band Type:指定报文的处理方式,协议中只定义了两种,包括:丢弃(Drop)和重置差分服务代码点(DSCP(Differentiated Services Code Point)Remark)。
Rate:指定Meter Band生效的速率值,如果当前速率大于多个Meter Band中指定的速率,则速率值最大的Meter Band真正生效,单位可以是kbps(千位/秒)或者PPS(包/秒)。
Burst Size:指定突发流量的大小(即可以缓存的流量),单位可以和“速率”相同。
Counters:记录Meter Band的统计信息。
Type specific arguments:与Band类型有关,当Band类型为丢弃时,不需要携带其他参数,类型为重置DSCP时,需要携带要设置的DSCP值。
下面将详细描述上面提到的队列(Queue)机制。队列是和端口绑定的,一个端口可以对应一个或者多个队列,每个队列由队列ID(Queue ID)唯一标识。
每个队列可以定义不同的队列属性,除了队列长度外,目前已定义的队列属性可以包括最大速率(MaxRate)和最小速率(MinRate)。
最小速率,可以以端口速率的千分之一为单位。最大速率,可以以端口速率的千分之一为单位。
上述Set-Queue指令可以用于指定报文要进入的队列,从而可以利用该队列的属性信息对报文进行处理。
上面描述了OpenFlow协议中相关的机制。但在OpenFlow协议中,还没有有效的机制实现动态的配置转发设备发送ECHO_REQUEST报文的时间间隔。下面将结合本发明实施例详细描述控制设备动态的配置转发设备发送ECHO_REQUEST报文的时间间隔的技术方案。
控制设备130通过流表控制转发设备110的行为之前,首先创建socket(端口号),接着转发设备110与控制设备130会彼此发送Hello数据包(探测报文),用于协商协议从而使转发设备110与控制设备130获知本方支持的最高版本的协议,最终若匹配成功双方使用都支持的最低版本协议,从而建立连接;若建立连接失败,则生成OFPT_ERROR报文(TYPE:OFPT_HELLO_FAILED,CODE=0)从而终止连接。在转发设备110与控制设备130建立连接后,转发设备110与控制设备130均可以向对方发送ECHO_REQUEST报文,接收者需要回复ECHO_REPLY,此处ECHO报文用于查询连接状态,确保通信畅通。
应理解,当没有其他数据包进行交换时,控制设备130会定期循环向转发设备110(具体可以为转发设备111、转发设备112、转发设备113)发送OFPT_ECHO_REQUEST报文。同时,控制设备130控制的多个转发设备也会不断地向其发送OFPT_ECHO_REQUEST报文确保自身与控制设备130处于连接状态。因此,控制设备会不断接收转发设备发送的大量的ECHO_REQUEST报文。
下面将结合具体的例子详细描述本发明实施例。应注意,这只是为了帮助本领域技术人员更好地理解本发明实施例,而非限制本发明实施例的范围。
图2是根据本发明实施例的报文处理的方法的交互流程图。图2中的转发设备可以是图1中的任意一个转发设备,控制设备可以为控制器。
210,控制设备根据该控制设备的负载情况确定转发设备发送ECHO_REQUEST报文的时间间隔。
在本发明实施例中,控制设备可以动态的配置转发设备发送ECHO_REQUEST报文的时间间隔。例如,控制设备可以根据其当前自身的负载情况来决定设置转发设备发送ECHO_REQUEST报文时间间隔的长短。
例如,若当前控制设备处于比较空闲的状态,即控制设备处于负载较小的情况下,可以将转发设备发送ECHO_REQUEST报文的时间间隔设置的较短一些,这样在同样的时间内控制设备能够接收到较多的转发设备发送的ECHO_REQUEST报文,并向转发设备回复ECHO_REPLY报文;若当前控制设备处于比较拥塞的状态,即控制设备处于负载较大的情况下,可以将转发设备发送ECHO_REQUEST报文的时间间隔设置的较长一些,这样在同样的时间内控制设备能够处理接收到相对较少的转发设备发送的ECHO_REQUEST报文,从而减少处于拥塞状态的控制设备的处理报文负担。同时,时间间隔并非处于一直不变的状态,控制设备在不同时刻根据负载情况的不同,时间间隔可以相应的进行动态的调整。另外,对于不同的转发设备,还可以配置不同的时间间隔,以避免多个转发设备同时向控制设备发送ECHO_REQUEST报文。
可选地,在本发明的一个实施例中,例如控制设备预计用10%的处理能力接收1万台网络设备(转发设备)发送的ECHO_REQUEST报文并进行处理,当网络设备(转发设备)数量再增加1万台时,此时控制设备即接收2万台网络设备(转发设备)发送的ECHO_REQUEST报文并进行处理,此时的网络设备(转发设备)占用了控制设备20%的处理能力,由于只预计使用10%的处理能力来接收ECHO_REQUEST报文,故此时可以将接收网络设备(转发设备)发送的ECHO_REQUEST报文的时间间隔设置放大一倍,这样控制设备依旧能够用10%的处理能力来接收2万台网络设备(转发设备)发送的ECHO_REQUEST报文并进行处理。
应理解,控制设备的处理能力可以为控制设备处理器的处理能力或者占用的处理资源。控制设备可以根据控制设备的处理能力和自身的负载情况确定转发设备发送ECHO_REQUEST报文的时间间隔。
220,转发设备接收控制设备发送的指示信息,该指示信息用于指示该转发设备发送ECHO_REQUEST报文的时间间隔。
可选地,转发设备可以接收控制设备发送的指示报文,在该指示报文中携带用于指示发送ECHO_REQUEST报文的时间间隔的指示信息。
在本申请实施例中,指示报文可以为控制设备向转发设备发送的开放流协议配置报文OFPT_SET_CONFIG、回声请求报文ECHO_REQUEST、探测报文HELLO或开放流协议获取转发设备信息报文OFPT_FEATURES_REQUEST,但本申请实施例对此并不限定。
还应理解,指示报文中包括指示信息的方式可以包括但不限定为以下方式:
方式一:指示信息承载于控制设备向转发设备发送的OFPT_SET_CONFIG报文中。
OFPT_SET_CONFIG报文用于控制设备设置或者查询转发设备的配置信息,转发设备仅需要应答查询消息,具体地,控制设备可以将配置的时间间隔的指示信息承载于OFPT_SET_CONFIG报文中。例如,对OFPT_SET_CONFIG报文进行如下设置:
OFPT_SET_CONFIG的数据结构:
struct ofp_switch_config
{struct ofp_header header;
uint16_tflags;
uint16_tmiss_send_len;
/*Max bytes of packet that datapath should send to the controller.*/
uint32_tinterval;/*switch发送ECHO_REQUEST的间隔*/}
其中,struct ofp_header header中header是所有数据包的报头,其中具有三个参数分别为:type:类型;length:整个数据包的长度;以及xid:数据包的编号。uint16_tflags用于指示分片怎么处理,每种链路层协议对数据帧的长度都有一个限制,大多数的链路层会对数据报文进行分片,把数据报文分成若干片后进行传输。uint16_t miss_send_len用于指示不匹配时,控制设备发送给转发设备的数据长度。uint32_t interval为指示信息,用于指示控制设备配置的转发设备发送ECHO_REQUEST报文的时间间隔。
具体地,当转发设备连接到控制设备并注册成功后,控制设备下发开放流协议配置报文OFPT_SET_CONFIG,在报文里面指定转发设备发送ECHO_REQUEST消息的时间间隔;转发设备收到OFPT_SET_CONFIG报文后,按照指定的间隔发送ECHO_REQUEST报文。
可选地,新增加的interval参数用于指示时间间隔,其可以位于OFPT_SET_CONFIG报文中的新增加字段中或者位于OFPT_SET_CONFIG报文中预留的字段中。
例如,新增加的interval参数可以位于指示报文中新添加的一个字段中,或者在指示报文中提前预留了字段用于interval参数来指示转发设备发送ECHO_REQUEST报文的时间间隔。
在本申请实施例中,指示信息可以具体指示转发设备发送ECHO_REQUEST报文的时间间隔的绝对值,或者指示信息可以用于指示转发设备发送ECHO_REQUEST报文的时间间隔的相对值。例如,当时间间隔设置为21时,此时的21可以表示每次转发设备发送ECHO_REQUEST报文的时间间隔,或者用1来代表时间间隔为21,在报文中发送数字1比发送数字21会节省发送该指示信息所占用的空间和资源。若该interval配置为0,则可以理解为转发设备始终不发送ECHO_REQUEST报文。
方式二:指示信息承载于控制设备向转发设备发送的回声请求报文ECHO_REQUEST中。
ECHO报文属于对称信息,分为ECHO_REQUEST报文和ECHO_REPLY报文。ECHO报文用于查询连接状态,确保通信畅通。可选地,控制设备可以将配置的时间间隔的指示信息承载于控制设备向转发设备发送的ECHO_REQUEST报文。例如,对ECHO_REQUEST报文进行如下设置:
Echo request的数据结构:
struct ofp_switch_config
{struct ofp_header header;
uint32_t interval;/*switch发送ECHO_REQUEST的间隔*/}
其中,struct ofp_header header中header是所有数据包的报头,其中具有三个参数分别为:type:类型;length:整个数据包的长度;以及xid:数据包的编号。uint32_tinterval为指示信息,用于指示控制设备配置的转发设备发送ECHO_REQUEST报文的时间间隔。
具体地,控制设备在发送ECHO_REQUEST报文到转发设备时,在ECHO_REQUEST报文里面携带一个参数:interval,该参数指示转发设备发送ECHO_REQUEST报文的时间间隔;转发设备收到控制设备发送过来的ECHO_REQUEST报文后,按照指定的间隔发送ECHO_REQUEST报文。若该interval参数配置为0,则可以理解为转发设备始终不发送ECHO_REQUEST报文。
可选地,新增加的interval参数用于指示时间间隔,其可以位于ECHO_REQUEST报文中的新增加字段中或者位于ECHO_REQUEST报文中预留的字段中。
例如,新增加的interval参数可以位于指示报文中新添加的一个字段中,或者在指示报文中将预留的字段用于interval参数来指示转发设备发送ECHO_REQUEST报文的时间间隔。
应理解,此处ECHO_REQUEST报文即为OFPT_ECHO_REQUEST报文。本发明的实施例场景为在SDN网络下,转发设备与控制设备之间运行OpenFlow协议,但并不限定于此。
在本申请实施例中,指示信息可以具体指示转发设备发送ECHO_REQUEST报文的时间间隔的绝对值,或者指示信息可以用于指示转发设备发送ECHO_REQUEST报文的时间间隔的相对值。例如,当时间间隔设置为21时,此时的21可以表示每次转发设备发送ECHO_REQUEST报文的时间间隔,或者用1来代表时间间隔为21,在报文中发送数字1比发送数字21会节省发送时该指示信息所占用的空间和资源。若该interval配置为0,则可以理解为转发设备始终不发送ECHO_REQUEST报文。
方式三:指示信息承载于控制设备向转发设备发送的探测报文HELLO中。
HELLO报文在创建socket之后,控制设备与转发设备会彼此发送HELLO数据包。HELLO报文的目的在于探测对方设备是否处于在线状态并进行协议协商,主要内容向对方设备发送本设备支持的最高版本的协议;最终HELLO报文的成果在于使用双方都支持的最低版本协议,若控制设备与转发设备匹配成功则最后建立连接,若失败则生成OFPT_ERROR报文(TYPR:OFPT_HELLO_FAILED,CODE=0),终止控制设备与转发设备的连接。
在本发实施例中,用于指示转发设备发送ECHO_REQUEST报文的时间间隔的指示信息可以承载于控制设备向转发设备发送的探测报文HELLO中。例如,在HELLO报文中增加一个interval参数,该参数用于指示时间间隔。
可选地,新增加的interval参数用于指示时间间隔,其可以位于HELLO报文中的新增加字段中或者位于HELLO报文中预留的字段中。
例如,新增加的interval参数可以位于指示报文中新添加的一个字段中,或者在指示报文中将预留的字段用于interval参数来指示转发设备发送ECHO_REQUEST报文的时间间隔。
应理解,此处HELLO报文即为OFPT_HELLO报文。本发明的实施例场景为在SDN网络下,转发设备与控制设备之间运行OpenFlow协议,但并不限定于此。
在本申请实施例中,指示信息可以具体指示转发设备发送ECHO_REQUEST报文的时间间隔的绝对值,或者指示信息可以用于指示转发设备发送ECHO_REQUEST报文的时间间隔的相对值。例如,当时间间隔设置为21时,此时的21可以表示每次转发设备发送ECHO_REQUEST报文的时间间隔,或者用1来代表时间间隔为21,在报文中发送数字1比发送数字21会节省发送时该指示信息所占用的空间和资源。若该interval配置为0,则可以理解为转发设备始终不发送ECHO_REQUEST报文。
方式四:指示信息承载于控制设备向转发设备发送的OFPT_FEATURES_REQUEST报文中。
OFPT_FEATURES_REQUEST报文是当控制设备与转发设备完成连接之后,控制设备会向转发设备发送OFPT_FEATURES_REQUEST报文用于请求转发设备的信息,OFPT_FEATURES_REQUEST消息只包含OpenFlow Header,可以通过在其中增加一个参数interval,该参数用于指示转发设备发送ECHO_REQUEST报文的时间间隔。
可选地,此处新增加的interval参数用于指示时间间隔,其可以位于OFPT_FEATURES_REQUEST报文中的新增加字段中或者位于该报文中的预留的字段中。
例如,新增加的interval参数可以位于指示报文中新添加的一个字段中,或者在指示报文中将预留的字段用于interval参数来指示转发设备发送ECHO_REQUEST报文的时间间隔。
在本申请实施例中,指示信息可以具体指示转发设备发送ECHO_REQUEST报文的时间间隔的绝对值,或者指示信息可以用于指示转发设备发送ECHO_REQUEST报文的时间间隔的相对值。例如,当时间间隔设置为21时,此时的21可以表示每次转发设备发送ECHO_REQUEST报文的时间间隔,或者用1来代表时间间隔为21,在报文中发送数字1要比发送数字21节省发送该指示信息所占用的空间和资源。若该interval配置为0,则可以理解为转发设备始终不发送ECHO_REQUEST报文。
可选地,控制设备根据自身的负载情况确定时间间隔包括以下两种情况:
第一种情况,当前控制设备处理报文能力较差或者负载较大,处于拥塞状态时,控制设备可以将时间间隔设置较长;或者当前控制设备负载情况较小时,可以将时间间隔设置较短。
第二种情况,针对不同的转发设备,控制设备可以设置相同的时间间隔也可以设置不同的时间间隔,具体时间间隔的设置要根据控制设备当前的自身负载情况而确定。
本发明实施例的报文处理方法,具体为处理转发设备发送的ECHO_REQUEST报文,控制设备确定转发设备发送回声请求报文ECHO_REQUEST的时间间隔,向转发设备发送指示信息,该指示信息用于指示时间间隔。具体地控制设备根据自身的负载情况决定时间间隔的长短,通过动态配置转发设备发送ECHO_REQUEST报文的时间间隔,能够减少转发设备对控制设备发送大量报文而造成的冲击,提高控制设备的处理效率。
应理解,控制设备确定的转发设备发送ECHO_REQUEST报文的时间间隔能够根据不同时刻控制设备当前负载情况进行改变,例如,若当前控制设备接收报文较多,即控制设备负载较大,处于比较拥塞的状态,相应的可以将时间间隔设置的较长一些,降低转发设备继续向控制设备发送ECHO_REQUEST报文而造成控制设备处理报文量增加;若当前控制设备处于相对比较空闲的状态,相应的可以将时间间隔设置的较短一些。
应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
上文详细描述了根据本发明实施例的处理转发设备发送ECHO_REQUEST报文的时间间隔的方法,下面将描述根据本发明实施例的控制设备、转发设备以及报文处理系统。应理解,本发明实施例的控制设备、转发设备以及报文处理系统可以执行前述本发明实施例的各种方法,即以下各种产品的具体工作过程,可以参考前述方法实施例中的对应过程。
图3示出了根据本发明实施例的控制设备300的示意性框图。如图3所示,该控制设备300包括:
处理器310,用于根据控制设备的负载情况确定转发设备发送ECHO_REQUEST报文的时间间隔。
端口320,连接处理器310,用于向该转发设备发送指示信息,该指示信息用于指示所述时间间隔。
本发明的实施例的控制设备,通过动态配置转发设备发送ECHO_REQUEST报文的时间间隔,具体的将该时间间隔配置到控制设备向转发设备发送的报文中,能够减少转发设备对控制设备发送大量报文而造成的冲击。
在本发明的实施例中,可选地,该端口320具体用于:向转发设备发送指示报文,该指示报文中包括指示信息,
其中,该指示报文包括:OFPT_SET_CONFIG、ECHO_REQUEST、HELLO或OFPT_FEATURES_REQUEST。
可选地,通过在指示报文中增加一个字段interval参数用于指示转发设备发送ECHO_REQUEST报文的时间间隔。
应理解,控制设备确定的转发设备发送ECHO_REQUEST报文的时间间隔能够根据不同时刻控制设备当前负载情况进行改变,例如,若当前控制设备接收报文较多,即控制设备负载较大,处于比较拥塞的状态,相应的可以将时间间隔设置的较长一些,降低转发设备继续向控制设备发送ECHO_REQUEST报文而造成控制设备处理报文量增加;若当前控制设备处于相对比较空闲的状态,相应的可以将时间间隔设置的较短一些。
可选地,该指示信息携带于指示报文的新增字段中。
可选地,该指示信息携带于所述指示报文的预留字段中。
可选地,指示信息包括转发设备发送ECHO_REQUEST报文的时间间隔的绝对值或相对值。
根据本发明实施例的控制设备300可对应于根据本发明实施例的网络中的报文处理方法中的控制设备,并且控制设备300中的各个模块的上述和其它操作和/或功能分别为了实现前述各个方法的相应流程,为了简洁,在此不再赘述。
本发明实施例的报文处理方法,具体为处理转发设备发送的ECHO_REQUEST报文,控制设备确定转发设备发送回声请求报文ECHO_REQUEST的时间间隔,向转发设备发送指示信息,该指示信息用于指示时间间隔。具体地控制设备根据自身的负载情况,或者根据处理能力以及负载情况决定设置时间间隔的长短,通过动态配置转发设备发送ECHO_REQUEST报文的时间间隔,能够减少转发设备对控制设备发送大量报文而造成的冲击,提高控制设备的处理效率。
图4示出了根据本发明实施例的转发设备400的示意性框图。如图4所示,该转发设备400包括:
端口420,用于接收控制设备发送的指示信息,该指示信息用于指示转发设备发送ECHO_REQUEST报文的时间间隔,该时间间隔为根据该控制设备的负载情况确定的。
处理器410,用于获取所述时间间隔。
端口420,还用于根据该时间间隔向控制设备发送该ECHO_REQUEST报文。
本发明的实施例的转发设备,通过接收控制设备进行动态配置并向转发设备发送的ECHO_REQUEST报文的时间间隔,能够减少转发设备对控制设备发送大量报文而造成的冲击,提高控制设备的处理效率。
在本发明的实施例中,可选地,该端口420具体用于:接收控制设备发送的指示报文,该指示报文中包括指示信息,
其中,该指示报文包括:OFPT_SET_CONFIG、ECHO_REQUEST、HELLO或OFPT_FEATURES_REQUEST。
可选地,通过在指示报文中增加一个interval参数用于指示转发设备发送ECHO_REQUEST报文的时间间隔。
应理解,控制设备确定的转发设备发送ECHO_REQUEST报文的时间间隔能够根据不同时刻控制设备当前负载情况进行改变,例如,若当前控制设备接收报文较多,即控制设备负载较大处于比较拥塞的状态,相应的可以将时间间隔设置的较长一些,降低转发设备继续向控制设备发送ECHO_REQUEST报文而造成控制设备处理报文量增加;若当前控制设备处于相对比较空闲的状态,相应的可以将时间间隔设置的较短一些。
可选地,该指示信息携带于指示报文的新增字段中。
可选地,该指示信息携带于所述指示报文的预留字段中。
例如,新增加的interval参数可以位于指示报文中新添加的一个字段中,或者在指示报文中提前预留了字段用于interval参数来指示转发设备发送ECHO_REQUEST报文的时间间隔。
可选地,指示信息包括转发设备发送ECHO_REQUEST报文的时间间隔的绝对值或相对值。
根据本发明实施例的转发设备400可对应于根据本发明实施例的网络中的报文处理方法中的转发设备,并且转发设备400中的各个模块的上述和其它操作和/或功能分别为了实现前述各个方法的相应流程,为了简洁,在此不再赘述。
本发明实施例的报文处理方法,具体为处理转发设备发送的ECHO_REQUEST报文,控制设备确定转发设备发送ECHO_REQUEST的时间间隔,向转发设备发送指示信息,该指示信息用于指示时间间隔。具体地控制设备根据自身的负载情况,或者根据负载情况以及处理能力决定设置时间间隔的长短,通过动态配置转发设备发送ECHO_REQUEST报文的时间间隔,能够减少转发设备对控制设备发送大量报文而造成的冲击,提高控制设备的处理效率。
图5示出了根据本发明实施例的报文处理系统500的示意性框图。如图5所示,该报文处理系统包括转发设备510和控制设备520,转发设备510用于获取控制设备520发送的指示信息,该指示信息用于指示转发设备发送ECHO_REQUEST报文的时间间隔,根据该时间间隔向该控制设备发送ECHO_REQUEST报文。控制设备520用于确定转发设备发送ECHO_REQUEST报文的时间间隔,该时间间隔为控制设备520根据自身的负载情况确定的,控制设备520向转发设备510发送指示信息,该指示信息用于指示该时间间隔。
根据本发明实施例的报文处理系统500中的转发设备510、控制设备520可分别对应于根据本发明实施例的网络中的报文处理方法中的转发设备、控制设备,并且转发设备510、控制设备520的上述和其它操作和/或功能分别为了实现前述各个方法的相应流程,为了简洁,在此不再赘述。
本发明实施例的报文处理系统,能够减少转发设备对控制设备发送大量报文而造成的冲击。
应理解,本发明实施例中的处理器310、处理器410可以通过处理单元或芯片实现,可选地,处理单元在实现过程中可以由多个单元构成。
应理解,本申请实施例中的端口320、端口420可以通过收发单元或芯片实现,可选地,端口320、端口420可以由发射器或接收器构成,或由发射单元或接收单元构成。
应理解,本申请实施例中的处理器310、端口320可以通过芯片实现,处理器410、端口420可以通过芯片实现。
可选地,报文处理设备还可以包括存储器,该存储器可以存储程序代码,处理器调用存储器存储的程序代码,以实现该通信设备的相应功能。可选地,处理器和存储器可以通过芯片实现。
本发明实施例还提供了一种处理装置,包括处理器和接口;
该处理器,用于执行上述本申请各种实施例中的方法。
该处理装置可以是一个芯片,该处理器可以通过硬件来实现也可以通过软件来实现,当通过硬件实现时,该处理器可以是逻辑电路、集成电路等;当通过软件来实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现,该存储器可以集成在处理器中,可以位于所述处理器之外,独立存在。
例如,该处理装置可以是现场可编程门阵列(Field-Programmable Gate Array,FPGA),可以是专用集成芯片(Application Specific Integrated Circuit,ASIC),还可以是系统芯片(System on Chip,SoC),还可以是中央处理器(Central Processor Unit,CPU),还可以是网络处理器(Network Processor,NP),还可以是数字信号处理电路(Digital Signal Processor,DSP),还可以是微控制器(Micro Controller Unit,MCU),还可以是可编程控制器(Programmable Logic Device,PLD)或其他集成芯片。
本发明提供了一种报文处理的设备的结构示意图,该设备可以为软件定义网络SDN的控制设备和转发设备,其包括处理单元和收发单元。该处理单元和该收发单元可以是软件实现也可以是硬件实现。在硬件实现的情况下,该处理单元可以是图3中的处理器310,该收发单元可以是图3中的端口320;或者,该处理单元可以是图4中的处理器410,该收发单元可以是图4中的端口420。
图6示出了本发明实施例的一种报文处理设备的结构示意图,该设备可以为软件定义网络SDN的控制设备和转发设备,包括至少一个处理器602(例如CPU),至少一个网络接口605或者其他通信接口,和存储器606。这些部件之间的通信连接。处理器602用于执行存储器606中存储的可执行模块,例如计算机程序。存储器606可能包含高速随机存取存储器(RAM:Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个网络接口605(可以是有线或者无线)实现与至少一个其他网元之间的通信连接。
在一些实施方式中,存储器606存储了程序6061,处理器602执行程序6061,用于执行前述本发明各种实施例中的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(Solid State Disk,SSD))等。
应理解,在本发明实施例中,术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系。例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (24)
1.一种报文处理的方法,其特征在于,包括:
控制设备根据所述控制设备的负载情况确定转发设备发送回声请求报文ECHO_REQUEST的时间间隔;
所述控制设备向所述转发设备发送指示信息,所述指示信息用于指示所述时间间隔。
2.根据权利要求1所述的方法,其特征在于,所述控制设备向所述转发设备发送指示信息,包括:
所述控制设备向所述转发设备发送指示报文,所述指示报文中包括所述指示信息,其中,所述指示报文包括:开放流协议配置报文OFPT_SET_CONFIG、回声请求报文ECHO_REQUEST、探测报文HELLO或开放流协议获取转发设备信息报文OFPT_FEATURES_REQUEST。
3.根据权利要求1或2所述的方法,其特征在于,所述指示信息携带于所述指示报文的新增字段中。
4.根据权利要求1或2所述的方法,其特征在于,所述指示信息携带于所述指示报文的预留字段中。
5.根据权利要求1或2所述的方法,其特征在于,所述指示信息包括所述时间间隔的绝对值或相对值。
6.一种报文处理的方法,其特征在于,包括:
转发设备接收控制设备发送的指示信息,所述指示信息用于指示所述转发设备发送ECHO_REQUEST报文的时间间隔,所述时间间隔为所述控制设备根据所述控制设备的负载情况确定的;
所述转发设备根据所述时间间隔向所述控制设备发送所述ECHO_REQUEST报文。
7.根据权利要求6所述的方法,其特征在于,所述转发设备接收控制设备发送的指示信息,包括:
所述转发设备接收所述控制设备发送的指示报文,所述指示报文中包括所述指示信息,
其中,所述指示报文包括:OFPT_SET_CONFIG、ECHO_REQUEST、HELLO或OFPT_FEATURES_REQUEST。
8.根据权利要求6或7所述的方法,其特征在于,所述指示信息携带于所述指示报文的新增字段中。
9.根据权利要求6或7所述的方法,其特征在于,所述指示信息携带于所述指示报文的预留字段中。
10.根据权利要求6或7所述的方法,其特征在于,所述指示信息包括所述时间间隔的绝对值或相对值。
11.一种控制设备,其特征在于,包括:
处理器,用于根据控制设备的负载情况确定转发设备发送ECHO_REQUEST报文的时间间隔;
端口,用于向所述转发设备发送指示信息,所述指示信息用于指示所述时间间隔。
12.根据权利要求11所述的控制设备,其特征在于,所述端口具体用于:
向所述转发设备发送指示报文,所述指示报文中包括所述指示信息,
其中,所述指示报文包括:OFPT_SET_CONFIG、ECHO_REQUEST、HELLO或OFPT_FEATURES_REQUEST。
13.根据权利要求11或12所述的控制设备,其特征在于,所述指示信息携带于所述指示报文的新增字段中。
14.根据权利要求11或12所述的控制设备,其特征在于,所述指示信息携带于所述指示报文的预留字段中。
15.根据权利要求11或12所述的控制设备,其特征在于,所述指示信息包括所述时间间隔的绝对值或相对值。
16.一种转发设备,其特征在于,包括:
端口,用于接收控制设备发送的指示信息,所述指示信息用于指示转发设备发送ECHO_REQUEST报文的时间间隔,所述时间间隔为所述控制设备根据所述控制设备的负载情况确定的;
处理器,用于获取所述时间间隔;
所述端口还用于根据所述时间间隔向所述控制设备发送所述ECHO_REQUEST报文。
17.根据权利要求16所述的转发设备,其特征在于,所述端口具体用于:
接收所述控制设备发送的指示报文,所述指示报文中包括所述指示信息,
其中,所述指示报文包括:OFPT_SET_CONFIG、ECHO_REQUEST、HELLO或OFPT_FEATURES_REQUEST。
18.根据权利要求16或17所述的转发设备,其特征在于,所述指示信息携带于所述指示报文的新增字段中。
19.根据权利要求16或17所述的转发设备,其特征在于,所述指示信息携带于所述指示报文的预留字段中。
20.根据权利要求16或17所述的转发设备,其特征在于,所述指示信息包括所述时间间隔的绝对值或相对值。
21.一种控制设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述存储器中存储的计算机程序,以使得所述装置执行根据权利要求1至5中任一项所述的方法。
22.一种转发设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述存储器中存储的计算机程序,以使得所述装置执行根据权利要求6至10中任一项所述的方法。
23.一种报文处理系统,包括根据权利要求11至15,21中任一项所述的控制设备以及根据权利要求16至20,22中任一项所述的转发设备。
24.一种可读存储介质,包括程序或指令,当所述程序或指令在计算机上运行时,根据权利要求1至10中任一项所述的方法被执行。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711382592.8A CN109951397B (zh) | 2017-12-20 | 2017-12-20 | 报文处理的方法和设备 |
PCT/CN2018/101078 WO2019119836A1 (zh) | 2017-12-20 | 2018-08-17 | 报文处理的方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711382592.8A CN109951397B (zh) | 2017-12-20 | 2017-12-20 | 报文处理的方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109951397A true CN109951397A (zh) | 2019-06-28 |
CN109951397B CN109951397B (zh) | 2021-07-20 |
Family
ID=66992412
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711382592.8A Active CN109951397B (zh) | 2017-12-20 | 2017-12-20 | 报文处理的方法和设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109951397B (zh) |
WO (1) | WO2019119836A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116527568B (zh) * | 2023-07-03 | 2023-10-31 | 北京左江科技股份有限公司 | 一种网络报文处理实时更新流表关联的实现方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103825822A (zh) * | 2014-02-18 | 2014-05-28 | 杭州华三通信技术有限公司 | 一种网络设备的状态信息传输方法和装置 |
CN103841056A (zh) * | 2014-03-13 | 2014-06-04 | 北京邮电大学 | 一种基于软件定义网络的开放存储管理调度方法和系统 |
US20140379817A1 (en) * | 2013-06-25 | 2014-12-25 | Nest Labs, Inc. | Fabric network |
CN104917760A (zh) * | 2015-05-26 | 2015-09-16 | 北京邮电大学 | 一种基于sdn的全局流表生成方法及装置 |
CN105450495A (zh) * | 2014-09-18 | 2016-03-30 | 中国电信股份有限公司 | 用于重新建立安全通信通道的方法、装置和系统 |
-
2017
- 2017-12-20 CN CN201711382592.8A patent/CN109951397B/zh active Active
-
2018
- 2018-08-17 WO PCT/CN2018/101078 patent/WO2019119836A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140379817A1 (en) * | 2013-06-25 | 2014-12-25 | Nest Labs, Inc. | Fabric network |
CN103825822A (zh) * | 2014-02-18 | 2014-05-28 | 杭州华三通信技术有限公司 | 一种网络设备的状态信息传输方法和装置 |
CN103841056A (zh) * | 2014-03-13 | 2014-06-04 | 北京邮电大学 | 一种基于软件定义网络的开放存储管理调度方法和系统 |
CN105450495A (zh) * | 2014-09-18 | 2016-03-30 | 中国电信股份有限公司 | 用于重新建立安全通信通道的方法、装置和系统 |
CN104917760A (zh) * | 2015-05-26 | 2015-09-16 | 北京邮电大学 | 一种基于sdn的全局流表生成方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109951397B (zh) | 2021-07-20 |
WO2019119836A1 (zh) | 2019-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111193666B (zh) | 使用自适应机器学习探测预测应用体验质量度量 | |
US10958555B2 (en) | Real-time application-driven synthetic probing | |
CN111682952B (zh) | 针对体验质量度量的按需探测 | |
US10148492B2 (en) | Data center bridging network configuration and management | |
US11184267B2 (en) | Intelligent in-band telemetry auto-configuration for IP networks | |
US20160301603A1 (en) | Integrated routing method based on software-defined network and system thereof | |
US10965546B2 (en) | Control of network nodes in computer network systems | |
CN105210337B (zh) | 一种nfv系统的业务实现方法及通信单元 | |
CN108471629B (zh) | 传输网络中业务服务质量的控制方法、设备及系统 | |
CN111049757B (zh) | 一种业务流处理方法及装置 | |
KR101803332B1 (ko) | 사물 인터넷 네트워크 시스템 | |
JP4769609B2 (ja) | スイッチ装置 | |
WO2016162833A1 (en) | Method and system for traffic pattern generation in a software-defined networking (sdn) system | |
CN114125924B (zh) | Tsn业务的处理方法、装置及计算机可读存储介质 | |
CN114553665A (zh) | 用于计算机网络的方法、控制器及计算机可读介质 | |
CN109005126B (zh) | 数据流的处理方法、设备和计算机可读存储介质 | |
CN107786448B (zh) | 建立业务流的转发路径的方法和装置 | |
EP3646533B1 (en) | Inline stateful monitoring request generation for sdn | |
US20130275620A1 (en) | Communication system, control apparatus, communication method, and program | |
CN117041134A (zh) | 一种数据路径规划方法、装置及设备 | |
US20160134522A1 (en) | Data flow processing method, device, and system | |
CN109951397A (zh) | 报文处理的方法和设备 | |
KR20190028059A (ko) | 오픈플로우 네트워크에서 트래픽을 제어하는 장치 및 방법 | |
JP6554011B2 (ja) | タイムアウト時間設定装置とタイムアウト時間設定方法 | |
CN108075941A (zh) | 检测业务流量性能的方法、发送装置及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |