聚合速率控制方法、设备以及系统与流程

文档序号:17817496发布日期:2019-06-05 21:56
聚合速率控制方法、设备以及系统与流程

本申请涉及通信领域,尤其涉及一种聚合速率控制方法、设备以及系统。



背景技术:

第三代合作伙伴计划(3rd Generation Partnership Project,3GPP)网络采用的是“尽力而为”的机制,为了满足不同业务场景的传输质量需求,系统会通过同时配置不同的服务质量(quality of service,Qos)参数以满足不同业务场景的需求。3GPP协议中定义的Qos参数包括:Qos等级定义(Qos class indentifier,QCI)、ARP(allocation and retention priority)、保证比特速率(guaranteed bit rate,GBR)、比特率上限(maximum bit rate,MBR)以及最大聚合速率(aggregated maximum bit rate,AMBR)等等。

在3GPP网络中,已经有成熟的机制对最大聚合速率进行控制,但是,在基于openflow的网络中尚未实现对最大聚合速率进行控制。



技术实现要素:

本申请实施例提供了一种聚合速率控制方法,能够在基于openflow的网络中实现对最大聚合速率进行控制。

第一方面,提供了一种聚合速率控制方法,包括:

网关交换机接收软件自定义网络SDN控制器发送的流表项以及连接表,其中,所述流表项至少包括匹配域以及流表指令,所述连接表至少包括报文处理操作;网关交换机解析并获取收到的目标数据报文的报头信息,并将所述报头信息与所述流表项的匹配域进行匹配;在与所述流表项的匹配域匹配成功的情况下,网关交换机执行所述流表项的流表指令中的连接指令,其中,所述连接指令用于指向连接表;网关交换机执行所述连接表的报文处理操作,其中,所述报文处理操作用于在聚合业务流的比特速率大于设定的最大聚合速率的情况下,将所述目标数据报文丢弃或者缓存。

第二方面,提供了一种聚合速率控制方法,包括:

SDN控制器根据QOS控制策略生成流表项以及连接表,其中,所述流表项至少包括匹配域以及流表指令,所述流表指令至少包括连接指令,所述连接指令用于指向所述连接表,所述连接表至少包括报文处理操作,所述报文处理操作用于在聚合业务流的比特速率大于设定的最大聚合速率的情况下,将目标数据报文丢弃或者缓存;SDN控制器向网关交换机发送所述流表项以及所述连接表。

上述第一方面和第二方面分别从网关交换机和SDN控制器的角度分别描述了一种聚合速率控制方法,能够在基于openflow的网络中实现对最大聚合速率进行控制。

结合第一方面或者第二方面,将所述目标数据报文丢弃或者缓存具体至少两种方式:

在第一种方式中,网关交换机直接将所述目标数据报文丢弃或者缓存。

在第二种方式中,网关交换机基于报文丢弃或缓存策略将所述目标数据报文丢弃或缓存。具体地,在所述目标数据报文的优先级别小于聚合业务流的其他数据报文的优先级别的情况下,网关交换机将所述目标数据报文丢弃或者缓存;或者,在所述目标数据报文的优先级别为指定优先级别的情况下,网关交换机将所述目标数据报文丢弃或者缓存。

结合第一方面或者第二方面,当将所述目标数据报文缓存时,在将所述目标数据报文缓存之后,在所述聚合业务流的比特速率降低至小于所述设定的最大聚合速率的情况下,所述网关交换机重传所述目标数据报文。下面将分别从传输路径和重传方式两个角度分别介绍网关交换机如何重传目标数据报文。

从传输路径来看,所述网关交换机通过缓存前的用户面路径重传所述目标数据报文;或者,所述网关交换机通过新建立的用户面路径重传所述目标数据报文。

从重传方式来看,所述网关交换机直接重传所述目标数据报文;或者,在所述目标数据报文的优先级别大于缓存的其他数据报文的情况下,所述网关交换机重传所述目标数据报文。

结合第一方面或者第二方面,所述连接表至少包括:连接表标识、所述最大聚合速率以及所述报文处理操作。

第三方面,提供了一种聚合速率控制方法,包括:SDN控制器接收网关交换机上报的聚合业务流的比特速率;SDN控制器确定所述聚合业务流的比特速率大于最大聚合速率;在所述聚合业务流的比特速率大于所述最大聚合速率的情况下,SDN控制器向所述网关交换机下发流表项,其中,所述流表项用于指示所述网关交换机将所述聚合业务流中的目标数据报文丢弃或者缓存,所述聚合业务流共享所述最大聚合速率。

第四方面,提供了一种聚合速率控制方法,包括:

网关交换机向SDN控制器上报聚合业务流的比特速率;

网关交换机接收所述SDN控制器根据所述聚合业务流的比特速率返回的流表项,其中,所述流表项用于指示所述网关交换机将所述聚合业务流中的目标数据报文丢弃或者缓存,所述聚合业务流共享所述最大聚合速率;

网关交换机执行所述流表项的流表指令将所述目标数据报文进行丢弃或者缓存。

上述第三方面和第四方面分别从网关交换机和SDN控制器的角度分别描述了一种聚合速率控制方法,能够在基于openflow的网络中实现对最大聚合速率进行控制。

结合第三方面或者第四方面,流表项用于指示所述网关交换机将所述目标数据报文丢弃或者缓存的方式至少包括以下两种:

在第一种方式中,所述流表项用于指示所述网关交换机直接将所述目标数据报文丢弃或者缓存;或者,

在第二种方式中,所述流表项用于指示所述网关交换机在所述目标数据报文的优先级别小于所述聚合业务流中的数据报文的优先级别的情况下,将所述目标数据报文丢弃或者缓存。

结合第三方面或者第四方面,在所述聚合业务流的比特速率下降至小于所述聚合比特速率的情况下,SDN控制器指示所述网关交换机重传缓存的所述目标数据报文。

从传输路径来看,所述网关交换机通过缓存前的用户面路径重传所述目标数据报文;或者,所述网关交换机通过新建立的用户面路径重传所述目标数据报文。

从重传方式来看,所述网关交换机直接重传所述目标数据报文;或者,在所述目标数据报文的优先级别大于缓存的其他数据报文的情况下,所述网关交换机重传所述目标数据报文。

第五方面,提供了一种第一网络设备,所述第一网络设备包括能够执行如第一方面任一项或者第四方面任一项所述的方法的单元。

第六方面,提供了一种第二网络设备,所述第二网络设备包括能够执行如第二方面任一项或者第三方面任一项所述的方法的单元。

第七方面,提供了一种第一网络设备,包括:处理器、发射器和接收器,其中:所述处理器用于执行如第一方面任一项所述的方法;或者,所述处理器用于执行如第四方面任一项所述的方法。

第八方面,提供了一种第二网络设备,包括:处理器、发射器和接收器,其中:所述处器用于执行如第二方面任一项所述的方法;或者,所述处理器用于执行如第三方面任一项所述的方法。

第九方面,提供了一种通信系统,包括:第一网络设备和第二网络设备,其中:在所述第一网络设备用于实现如第一方面任一项所述的方法的情况下,所述第二网络设备用于实现如第二方面任一项所述的方法;或者,在所述第一网络设备用于实现如第四方面任一项所述的方法的情况下,所述第二网络设备用于实现如第三方任一项所述的方法。

附图说明

为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是现有技术中的3GPP网络的系统结构示意图;

图2是本申请实施例涉及的基于openflow的网络的系统结构示意图;

图3是本申请实施例涉及的用户级的聚合业务流的构成示意图;

图4是现有技术中基于openflow的网络对数据进行处理的流程示意图;

图5是本申请实施例提供了一种聚合速率控制方法的交互图;

图6是图5所示的聚合速率控制方法的具体实施例的交互示意图;

图7是本申请实施例提供了另一种聚合速率控制方法的交互图;

图8是图7所示的聚合速率控制方法的一具体应用场景的示意图;

图9是图8所示的应用场景下使用图7所示的聚合速率控制方法的具体实施例的交互示意图;

图10是图7所示的聚合速率控制方法的另一具体应用场景的示意图;

图11是图10所示的应用场景下使用图7所示的聚合速率控制方法的具体实施例的交互示意图;

图12是本申请实施例提供的一种装置的结构示意图;

图13是本申请实施例提供的一种通信系统的结构示意图;

图14是本申请实施例提供的一种通信系统的结构示意图。

具体实施方式

如图1所示,传统的3GPP网络包括:终端设备110(user equipment,UE)、基站120(eNodeB,eNB)、服务网关130(serving gateway,SGW)、分组数据节点网关140(packet data node gateway,PGW)以及移动性管理实体150(mobility management entity,MME)。3GPP网络实现了用户面功能和控制面功能的分离,其中,用户面功能负责数据业务的传输和处理,控制面功能负责协调和控制信令的传送和处理。下面将分别介绍3GPP网络中各个设备实现的用户面功能以及控制面功能。

eNB 120实现的功能可以划分为用户面功能以及控制面功能。其中,eNB 120的用户面功能包括:数据报文和信令消息转发调度处理。eNB 120的控制面功能包括:无线资源分配以及L1L2配置管理。应理解,上述eNB 120的用户面功能以及控制面功能的举例只是为了进行说明,而非构成具体限定。

SGW 130实现的功能可以划分为用户面功能以及控制面功能。其中,SGW 130的用户面功能包括:数据报文转发、服务质量(quality of service,Qos)执行以及计费信息统计等等。SGW的控制面功能包括:承载管理。应理解,上述SGW 130的用户面功能以及控制面功能的举例只是为了进行说明,而非构成具体限定。

PGW 140实现的功能可以分为用户面功能以及控制面功能。其中,PGW 140的用户面功能包括:数据转发,QoS执行等。PGW 140的控制面功能包括:IP地址分配,承载管理等。应理解,上述PGW 140的用户面功能以及控制面功能的举例只是为了进行说明,而非构成具体限定。

MME 150实现的功能主要为控制面功能。其中,MME 150的控制面功能包括:寻呼(paging)、切换、漫游、鉴权、对非接入层(Non-Access Stratum,NAS)信令的加密和完整性保护,对接入层(Access Stratum,AS)安全性控制、空闲状态移动性控制等等。应理解,上述MME 150的控制面功能的举例只是为了进行说明,而非构成具体限定。

不难理解,图1所示的例子不仅可以应用于4G系统中,而且,还可以应用于5G或者后续演进的系统中,此处不作具体限定。

随着开放流(openflow)技术的发展,现有技术使用openflow技术对传统的3GPP网络进行了改造,从而得到本申请实施例涉及的openflow网络。

如图2所示,本申请的openflow网络包括UE 210、eNB交换机220(switch)、GW交换机230、软件定义网络控制器240(SDN controller)(software defined network,SDN)、eNB控制机250以及核心网控制机260。不难理解,尽管本申请实施例的网络架构不同于3GPP网络的网络架构,但是,openflow网络可以实现3GPP网络的功能。其中,eNB交互机220用于实现如图1所示3GPP网络中的eNB的用户面功能。GW交换机230用于实现如图1所示3GPP网络中的SGW的用户面功能以及PGW的用户面功能。eNB控制机250用于实现如图1所示3GPP网络中的eNB的控制面功能。核心网控制机260用于实现SGW的控制面功能、PGW的控制面功能以及MME的控制面功能。应理解,上述图2所示的网络架构仅仅是作为一种举例,不应构成具体限定。

不难理解,由于在3GPP网络中QoS执行功能是由GW网关实现,对应地,在openflow网络中QoS执行功能是由GW交换机实现。换而言之,GW交换机需要对QCI、ARP、GBR、MBR以及AMBR等等Qos参数进行控制。下面将对QoS参数中包括的QCI、ARP、GBR、MBR以及AMBR分别进行详细的介绍。

QCI规定了不同QCI等级的资源类型、优先级别、分组延时预算和丢包率等等,从而为数据业务提供不同的服务质量。其中,当QCI等级不同时,基于openflow的网络为数据业务确定的QCI等级对应的资源类型、优先级别、分组延时预算和丢包率等等中的至少一个也不同。不难理解,当资源类型为GBR类型时,网络为数据业务提供的服务质量优于当资源类型为Non-GBR类型时,网络为数据业务提供的服务质量;优先级别较高时,网络为数据业务提供的服务质量优于优先级别较低时,网络为数据业务提供的服务质量;分组时延预算较小时,网络为数据业务提供的服务质量优于分组时延预算较大时,网络为数据业务提供的服务质量。丢包率较小时,网络为数据业务提供的服务质量优于丢包率较大时,网络为数据业务提供的服务质量。QCI的定义具体可以参阅表1。

表1标准QCI定义

ARP参数包含下面三个要素:优先级(priority level),抢占能力(pre-emption capability),被抢占脆弱性(pre-emption vulnerability)。其中,在资源紧张的情况下,为优先级别高的数据业务建立承载优先于为优先级别低的数据业务建立承载。在资源紧张的情况下,抢占能力强的数据业务抢占别的承载的资源优先于抢占能力弱的数据业务抢占别的承载的资源。在资源紧张的情况下,被抢占脆弱性高的数据业务释放承载以提供资源给别的承载使用优先于被抢占脆弱性低的数据业务释放承载以提供资源给别的承载使用。

GBR用于表示网络为数据业务提供的比特速率的最小值,即,网络为数据业务提供的比特速率必须大于GBR。例如,假设GBR为3Mbit/s,则网络为数据业务提供的比特速率可以是4Mbit/s或者5Mbit/s等等。可以理解,上述GBR的举例仅仅是用于说明,不构成具体限定。

MBR用于表示网络为数据业务提供的比特速率的最大值,即,网络为数据业务提供的比特速率必须小于MBR。例如,假设MBR为6Mbit/s,则网络为数据业务提供的比特速率可以是4Mbit/s或者5Mbit/s等等。可以理解,上述MBR的举例仅仅是用于说明,不构成具体限定。

AMBR用于限制为聚合业务流提供的比特速率不能大于最大聚合速率,即,当聚合业务流的比特速率大于最大聚合速率时,需要将聚合业务流中的部分或者全部业务流的报文丢弃或者缓存。其中,聚合业务流可以包括用户设备(user equipment,UE)级的聚合业务流以及接入点(access point name,APN)级的聚合业务流等等。如图3所示,用户级的聚合业务流可以是同一个用户设备累计的多种业务流的组合,例如,同一签约用户的视频业务流、语音业务流以及游戏业务流等等。接入点级的聚合业务流可以是同一接入设备累计的多种业务流的组合,例如,同一接入设备的视频业务流、语音业务流以及游戏业务流等等。举例说明,假设最大聚合速率为10Mbit/s,聚合业务流中视频业务流的比特速率为3Mbit/s、语音业务流的比特速率为2Mbit/s以及游戏业务流的比特速率为4Mbit/s,则聚合业务流的比特速率小于最大聚合速率。

在具体实现中,GW交换机很容易实现对QCI、GBR、MBR等等进行控制,但是,GW交换机却难以对AMBR实现控制,具体的原因分析如下:

在现有技术中,openflow网络是采用下发流表项(flow entry)的方式对数据报文进行处理。为了便于理解,下面将以GW交换机为例具体进行说明基于openflow的网络如何是采用下发流表项对数据报文进行处理的:如图4所示,S101:SDN控制器向GW交换机下发流表项;S102:GW交换机将接收到的流表项进行存储;S103:GW交换机接收到数据报文之后,解析并获取收到的数据报文的报头信息,并将报头信息与存储在GW交换机中的流表项的匹配域进行匹配;S104:如果报头信息与流表项的匹配域匹配成功,则GW交换机按照流表指令对数据报文进行处理。

为了满足不同场景的需要,openflow网络需要基于不同的粒度对数据报文进行处理。例如,openflow网络可能需要从流粒度、承载粒度、APN(access point name)粒度以及UE(user equipment)粒度等等多种不同的粒度对数据报文进行处理。例如,GW网关在进行Qos控制时,对QCI、GBR、MBR的控制都是基于流粒度的数据报文处理,对AMBR的控制是基于APN粒度以及UE粒度的数据报文处理。

但是,基于openflow的网络是基于流表项对数据报文进行处理的,即,基于openflow的网络是基于流粒度对数据报文进行处理的,所以,基于openflow的网络难以在比流粒度更大的粒度上对数据报文进行处理。然而,对于QCI、GBR、MBR等等的控制是基于流粒度对数据报文进行处理的,对AMBR的控制是基于UE粒度或者APN粒度对数据报文进行处理的,所以,在现今的基于openflow的网络中只能实现对QCI、GBR、MBR等等的控制,尚未实现对AMBR进行控制。

为了解决上述问题,本申请提供了两种聚合速率控制方法、装置以及系统,能够在基于openflow的网络架构上实现对AMBR进行控制。

如图5所示,本申请实施例提供了一种聚合速率控制方法。本申请实施例的聚合速率控制方法包括如下步骤:

S201:SDN控制器根据QOS控制策略生成流表项以及连接表。

在本申请实施例中,QOS控制策略至少包括聚合业务流的最大聚合速率。可选地,QOS控制策略还可以包括聚合业务流的QCI以及非聚合业务流的QCI、GBR、MBR等等。举例来说,QOS控制策略可以是:聚合业务流的最大聚合速率为10Mbit/S。可以理解,上述Qos控制策略的举例仅仅用于说明,不应构成具体的限定。

在本申请实施例中,最大聚合速率是网络为聚合业务流能够提供的比特速率的最大值。即,如果聚合业务流的比特速率小于最大聚合速率,则网络能够正常工作,如果聚合业务流的比特速率大于最大聚合速率,则网络需要将聚合业务流中的部分和全部业务流的数据报文进行丢弃或者缓存,直到聚合业务流的比特速率小于最大聚合速率。也就是说,聚合业务流能够占用网络的比特速率不能超过最大聚合速率。

举例说明,假设最大聚合速率为20Mbit/s,聚合业务流中视频业务流的比特速率为7Mbit/s、语音业务流的比特速率为3Mbit/s以及游戏业务流的比特速率为5Mbit/s,则聚合业务流的比特速率小于最大聚合速率,网络能够正常工作。又假设最大聚合速率为20Mbit/s,聚合业务流中视频业务流的比特速率为10Mbit/s、语音业务流的比特速率为3Mbit/s以及游戏业务流的比特速率为8Mbit/s,则聚合业务流的比特速率大于最大聚合速率,需要将网络需要将聚合业务流中的部分和全部业务流的数据报文进行丢弃或者缓存。

S202:SDN控制器将流表项以及连接表发送给GW交换机。相应地,GW交换机接收SDN控制器发送的流表项以及连接表。

S203:GW交换机解析并获取收到的目标数据报文的报头信息,并将报头信息与流表项的匹配域进行匹配。

在本申请实施例中,目标数据报文是采用特定格式组织起来的数据。当目标数据报文采用的协议不同时,目标数据报文的格式通常也并不相同,例如,当目标数据报文采用TCP/IP协议时,目标数据报文采用的格式不同于当目标数据报文采用UDP协议时,目标数据报文采用的格式。但是,即使目标数据报文的格式各不相同,如表2所示,目标数据报文通常都会包括报头信息(head)、净荷(playload)以及校验信息,其中,报头信息通常用于承载与用户数据相关的传输信息,例如,报文长度、报文类型、报文的标识信息等等。报文的标识信息可以是报文的唯一标识,例如,IP五元组(源IP地址、目的IP地址、协议类型、源端口号、目的端口号)中的至少一个,或者,以太网帧头的各种头域(源MAC地址、目的MAC地址等等)中的至少一个,此处不做具体限定。净荷通常用于承载用户数据,例如,视频数据、音频数据以及游戏数据等等。检验信息用于校验报头信息以及净荷的正确性。不难理解,当净荷占据整个目标数据报文的比例越大时,目标数据报文的传输效率越高,当净荷占据整个目标数据报文的比例越小时,目标数据报文的传输效率越低。

表2目标数据报文

如表3所示,以以太网帧协议为例,目标数据报文可以包括6个字节的目的MAC地址、6个字节的源MAC地址、2个字节的报文类型/长度、46至1500字节的数据以及4字节的帧校验序列(frame check sequence,FCS)。其中,目标数据报文的报头信息包括目的MAC地址、源MAC地址、报文类型以及报文长度。目标数据报文的净荷包括46至1500字节的数据。数据报文的校验信息包括4字节的FCS。应理解,上述例子中以目标数据报文采用以太网帧协议为例进行说明,但是,在实际应用中,目标数据报文还可以采用其他的协议,此处不作具体限定。

表3目标数据报文(以太网帧协议)

在本申请实施例中,如表4所示,流表项通常可以包括但不限于:匹配域(Match Fields)、优先级别(priority)、计数器(counters)、流表指令(instructiong)、老化时间(Timeout)、附属属性(Cookie)以及便签(flag)。应理解,表4所示的流表项仅仅是作为一种举例,不应构成具体的限定。

表4流表项

在一具体实施方式中,匹配域可用于承载与目标数据报文的报头信息进行匹配的指定值。例如,指定值可以是IP五元组(源IP地址、目的IP地址、协议类型、源端口号、目的端口号)中的至少一个,或者,可以是以太网帧头的各种头域(源MAC地址、目的MAC地址等等)中的至少一个。需要说明的是,上述匹配域的举例仅仅是用于说明,不应构成具体的限定。在实际应用中,通过目标数据报文的报头信息与流表项的匹配域进行匹配,就可以确定目标数据报文对应的流表项,从而获得目标数据报文的处理方式。

在一具体实施方式中,流表指令用于指示对目标数据报文的处理方式,例如,指向连接表、转发、丢弃、修改报文头、封装以及解封装等等。在实际应用中,在目标数据报文的报头信息与流表项的匹配域能够匹配时,则对应执行流表项中的流表指令。

S204:在目标数据报文的报头信息与流表项的匹配域相匹配时,GW交换机执行流表项的流表指令中的连接指令。

在本申请实施例中,在目标数据报文的报头信息与流表项的匹配域相匹配时,GW交换机执行流表项的流表指令中的连接指令指向连接表。举个例子说明,假设SDN控制器向GW交换机下发流表项为:匹配域为源IP地址为192.168.0.12,目的IP地址为192.168.0.135,流表指令为指向连接表。GW交换机接收到数据报文之后,解析并获取收到的数据报文的报头信息为源IP地址为192.168.0.12,目的IP地址为192.168.0.135,则目标数据报文的报头信息与流表项的匹配域相匹配,GW交换机按照流表指令将指向连接表。应理解,此处的例子仅仅是用于进行举例,不应构成具体限定。

S205:GW交换机执行连接表的报文处理操作。

在本申请实施例中,如表5所示,连接表至少包括连接表标识、最大聚合速率以及报文处理操作。

表5连接表

其中,连接表标识可以是连接表的唯一标识。最大聚合速率是根据Qos控制策略得到的最大聚合速率。报文处理操作用于在聚合业务流的比特速率大于设定的最大聚合速率的情况下,将目标数据报文丢弃或者缓存。可选地,连接表还可以包括指定优先等级,其中,指定优先等级用于指示GW交换机将指定优先等级的数据报文进行丢弃或者缓存。需要说明的是,表5所示的连接表仅仅是作为一种示例,不应构成具体限定。

下面将结合具体的应用场景说明如何通过图5所示的聚合速率控制方法对最大聚合速率进行控制的。假设聚合业务流包括业务流1以及业务流2,业务流1的比特速率为6Mbit/s,业务流2的比特速率为5Mbit/s,Qos控制策略为聚合业务流的最大聚合速率为10Mbit/s,如图6所示,具体的步骤可以体现为:

S301:SDN控制器根据聚合业务流的Qos控制策略生成的连接表1、流表项1以及流表项2。

在本实施例中,连接表1的连接标识为LINK-ID1,最大聚合速率为10Mbit/s,报文处理操作为在聚合业务流的比特速率大于10Mbit/s时,将业务流1的数据报文进行丢弃或者缓存。流表项1中的匹配域1为业务流1的IP五元组,流表指令1为指向连接标识为LINK-ID1的连接表1。流表2中的匹配域2为业务流2的IP五元组,流表指令2为指向连接标识为LINK-ID1的连接表1。

S302:SDN控制器将流表项1、流表项2以及连接表1下发给GW交换机。相应地,GW交换机接收SDN控制器下发的流表项1、流表项2以及连接表1。

S303:当业务流1经过GW交换机时,GW交换机将业务流1的数据报文的IP五元组与流表项1的匹配域1的IP五元组进行匹配。因为业务流1的数据报文的IP五元组与流表项1的匹配域1的IP五元组匹配成功,GW交换机执行流表指令1指向连接标识为LINK-ID1的连接表1。

S304:当业务流2经过GW交换机时,GW交换机将业务流2的数据报文的IP五元组与流表项2的匹配域2的IP五元组进行匹配。因为业务流2的数据报文的IP五元组与流表项2的匹配域2的IP五元组匹配成功,GW交换机执行流表指令2指向连接标识为LINK-ID1的连接表1。

S305:GW交换机执行连接表1中的报文处理操作,统计业务流1和业务流2的比特速率为11Mbit/s,从而确定聚合业务流的比特速率大于最大聚合业务流,将业务流1中的部分或者全部数据报文进行丢弃或者缓存。

如图7所示,本申请实施例提供了另一种聚合速率控制方法。本申请实施例的聚合速率控制方法包括如下步骤:

S401:GW交换机向SDN控制器上报聚合业务流的比特速率。相应地,SDN控制器接收GW交换机上报的聚合业务流的比特速率。

在本申请实施例中,聚合业务流可以是用户设备级的聚合业务流以及接入点级的聚合业务流等等。用户级的聚合业务流可以是同一个用户设备累计的多种业务流的组合,例如,同一签约用户的视频业务流、语音业务流以及游戏业务流等等。接入点级的聚合业务流可以是同一接入设备累计的多种业务流的组合,例如,同一接入设备的视频业务流、语音业务流以及游戏业务流等等。可以理解,上述聚合业务流的举例仅仅用于说明,不应构成具体的限定,在其他可能的实施例中,聚合业务流的业务流的数量、类型等等可以是各不相同的。

S402:SDN控制器确定所述聚合业务流的比特速率大于最大聚合速率。

在本申请实施例中,最大聚合速率是网络为聚合业务流能够提供的比特速率的最大值。即,如果聚合业务流的比特速率小于最大聚合速率,则网络能够正常工作,如果聚合业务流的比特速率大于最大聚合速率,则网络需要将聚合业务流中的部分和全部业务流的数据报文进行丢弃或者缓存,直到聚合业务流的比特速率小于最大聚合速率。也就是说,聚合业务流能够占用网络的比特速率不能超过最大聚合速率。

举例说明,假设最大聚合速率为20Mbit/s,聚合业务流中视频业务流的比特速率为7Mbit/s、语音业务流的比特速率为3Mbit/s以及游戏业务流的比特速率为5Mbit/s,则聚合业务流的比特速率小于最大聚合速率,网络能够正常工作。又假设最大聚合速率为20Mbit/s,聚合业务流中视频业务流的比特速率为10Mbit/s、语音业务流的比特速率为3Mbit/s以及游戏业务流的比特速率为8Mbit/s,则聚合业务流的比特速率大于最大聚合速率,需要将网络需要将聚合业务流中的部分和全部业务流的数据报文进行丢弃或者缓存。

S403:在所述聚合业务流的比特速率大于所述最大聚合速率的情况下,SDN控制器向所述GW交换机下发流表项。相应地,所述网关交换机接收所述SDN控制器下发的流表项。

S404:GW交换机解析并获取收到的目标数据报文的报头信息,并将报头信息与流表项的匹配域进行匹配。

在本申请实施例中,目标数据报文是采用特定格式组织起来的数据。当目标数据报文采用的协议不同时,目标数据报文的格式通常也并不相同,例如,当目标数据报文采用TCP/IP协议时,目标数据报文采用的格式不同于当目标数据报文采用UDP协议时,目标数据报文采用的格式。但是,即使目标数据报文的格式各不相同,如表2所示,目标数据报文通常都会包括报头信息(head)、净荷(playload)以及校验信息,其中,报头信息通常用于承载与用户数据相关的传输信息,例如,报文长度、报文类型、报文的标识信息等等。报文的标识信息可以是报文的唯一标识,例如,IP五元组(源IP地址、目的IP地址、协议类型、源端口号、目的端口号)中的至少一个,或者,以太网帧头的各种头域(源MAC地址、目的MAC地址等等)中的至少一个,此处不做具体限定。净荷通常用于承载用户数据,例如,视频数据、音频数据以及游戏数据等等。检验信息用于校验报头信息以及净荷的正确性。不难理解,当净荷占据整个目标数据报文的比例越大时,目标数据报文的传输效率越高,当净荷占据整个目标数据报文的比例越小时,目标数据报文的传输效率越低。

如表3所示,以以太网帧协议为例,目标数据报文可以包括6个字节的目的MAC地址、6个字节的源MAC地址、2个字节的报文类型/长度、46至1500字节的数据以及4字节的帧校验序列(frame check sequence,FCS)。其中,目标数据报文的报头信息包括目的MAC地址、源MAC地址、报文类型以及报文长度。目标数据报文的净荷包括46至1500字节的数据。数据报文的校验信息包括4字节的FCS。应理解,上述例子中以目标数据报文采用以太网帧协议为例进行说明,但是,在实际应用中,目标数据报文还可以采用其他的协议,此处不作具体限定。

在本申请实施例中,如表4所示,流表项通常可以包括但不限于:匹配域(Match Fields)、优先级别(priority)、计数器(counters)、流表指令(instructiong)、老化时间(Timeout)、附属属性(Cookie)以及便签(flag)。应理解,表4所示的流表项仅仅是作为一种举例,不应构成具体的限定。

在一具体实施方式中,匹配域可用于承载与目标数据报文的报头信息进行匹配的指定值。例如,指定值可以是IP五元组(源IP地址、目的IP地址、协议类型、源端口号、目的端口号)中的至少一个,或者,可以是以太网帧头的各种头域(源MAC地址、目的MAC地址等等)中的至少一个。需要说明的是,上述匹配域的举例仅仅是用于说明,不应构成具体的限定。在实际应用中,通过目标数据报文的报头信息与流表项的匹配域进行匹配,就可以确定目标数据报文对应的流表项,从而获得目标数据报文的处理方式。

在一具体实施方式中,流表指令用于指示对目标数据报文的处理方式,例如,转发、丢弃、修改报文头、封装以及解封装等等。在实际应用中,在目标数据报文的报头信息与流表项的匹配域能够匹配时,则对应执行流表项中的流表指令。

S405:在目标数据报文的报头信息与流表项的匹配域相匹配时,GW交换机执行流表项的流表指令将所述聚合业务流的目标数据报文进行丢弃或者缓存。

下面将结合图8具体的应用场景说明如何通过图7所示的聚合速率控制方法对最大聚合速率进行控制的。假设聚合业务流包括业务流1以及业务流2,并且都经过同一个GW网关230,业务流1的比特速率为6Mbit/s,业务流2的比特速率为5Mbit/s,Qos控制策略为聚合业务流的最大聚合速率为10Mbit/s,如图9所示,具体的步骤可以体现为:

S501:GW交换机向SDN控制器上报业务流1以及业务流2的比特速率。相应地,SDN控制器接收GW交换机上报的业务流1和业务流2的比特速率。

S502:SDN控制器统计业务流1以及业务流2的比特速率,从而确定确定聚合业务流的比特速率为11Mbit/s。

S503:SDN控制器确定聚合业务流的比特速率11Mbit/s大于最大聚合速率10Mbit/s。

S504:SDN控制器向GW交换机下发流表项1以及流表项2。相应地,GW交换机接收SDN控制器下发的流表项1以及流表项2。其中,流表项1的匹配域1为业务流1的IP五元组,流表指令1为将业务流1中的目标数据报文进行丢弃或者缓存。流表项2的匹配域2为业务流2的IP五元组,流表指令2为将业务流2中的目标数据报文进行转发。

S505:当业务流1经过GW交换机时,GW交换机将业务流1的数据报文的IP五元组与流表项1的匹配域1的IP五元组进行匹配。因为业务流1的数据报文的IP五元组与流表项1的匹配域1的IP五元组匹配成功,GW交换机执行流表项1中的流表指令1将业务流1中的目标数据报文进行丢弃或者缓存。

S506:当业务流2经过GW交换机时,GW交换机将业务流2的数据报文的IP五元组与流表项2的匹配域2的IP五元组进行匹配。因为业务流2的数据报文的IP五元组与流表项2的匹配域2的IP五元组匹配成功,GW交换机执行流表项2中的流表指令2将业务流2中的目标数据报文进行转发。

下面将结合图10具体的应用场景说明如何通过图7所示的聚合速率控制方法对最大聚合速率进行控制的。假设聚合业务流包括业务流1以及业务流2,并且,业务流1经过GW交换机1,业务流2经过GW交换机2,业务流1的比特速率为6Mbit/s,业务流2的比特速率为5Mbit/s,Qos控制策略为聚合业务流的最大聚合速率为10Mbit/s,如图11所示,具体的步骤可以体现为:

S601:GW交换机1向SDN控制器上报业务流1的比特速率。相应地,SDN控制器接收GW交换机1上报的业务流1的比特速率。

S602:GW交换机2向SDN控制器上报业务流2的比特速率。相应地,SDN控制器接收GW交换机2上报的业务流2的比特速率。

S603:SDN控制器统计业务流1以及业务流2的比特速率,从而确定确定聚合业务流的比特速率为11Mbit/s。

S604:SDN控制器确定聚合业务流的比特速率11Mbit/s大于最大聚合速率10Mbit/s。

S605:SDN控制器向GW交换机1下发流表项1。相应地,GW交换机1接收SDN控制器下发的流表项1。其中,流表项1的匹配域1为业务流1的IP五元组,流表指令1为将业务流1中的目标数据报文进行丢弃或者缓存。

S606:SDN控制器向GW交换机2下发流表项2。相应地,GW交换机2接收SDN控制器下发的流表项2。其中,流表项2的匹配域2为业务流2的IP五元组,流表指令2为将业务流2中的目标数据报文进行转发。

S607:当业务流1经过GW交换机1时,GW交换机1将业务流1的数据报文的IP五元组与流表项1的匹配域1的IP五元组进行匹配。因为业务流1的数据报文的IP五元组与流表项1的匹配域1的IP五元组匹配成功,GW交换机1执行流表项1中的流表指令1将业务流1中的目标数据报文进行丢弃或者缓存。

S608:当业务流2经过GW交换机2时,GW交换机2将业务流2的数据报文的IP五元组与流表项2的匹配域2的IP五元组进行匹配。因为业务流2的数据报文的IP五元组与流表项2的匹配域2的IP五元组匹配成功,GW交换机2执行流表项2中的流表指令2将业务流2中的目标数据报文进行转发。

下面将详细介绍在图5至图11所示的聚合速率控制方法中,GW交换机丢弃或者缓存数据报文的几种主要的方式:

在第一种方式中,GW交换机直接将目标数据报文进行丢弃或者缓存。在本实施方式中,GW交换机不需要考虑目标数据报文的级别,只要聚合业务流的的比特速率大于设定的最大聚合速率,GW交换机立刻将目标数据报文进行丢弃或者缓存,以尽快将聚合业务流的比特速率下降至最大聚合速率。例如,聚合业务流包括业务流1以及业务流2,业务流1的优先级别为1,业务流2的优先级别为5,在聚合业务流的比特速率大于设定的最大聚合速率时,GW交换机将业务流1和业务流2的目标数据报文都进行丢弃或者缓存。

在第二种方式中,GW交换机基于报文丢弃或缓存策略将所述目标数据报文丢弃或缓存。在本实施方式中,报文丢弃或缓存策略可以是自定义的策略,例如,可以是最低优先级别策略或者指定优先级别策略等等。需要说明的是,报文丢弃或者缓存策略的举例仅仅是为了进行说明,不应构成具体限定。

当报文丢弃或缓存策略为最低优先级别策略时,GW交换机在所述目标数据报文的优先级别小于聚合业务流的其他数据报文的优先级别的情况下,将所述目标数据报文丢弃或者缓存,以保证优先级别较高的数据报文能够优先进行传输。例如,聚合业务流包括业务流1以及业务流2,业务流1的优先级别为1,业务流2的优先级别为5,在聚合业务流的比特速率大于设定的最大聚合速率时,GW交换机将业务流2的目标数据报文都进行丢弃或者缓存。当然,如果将业务流2的目标数据报文都丢弃或者缓存之后,聚合业务流的比特速率仍然大于设定的最大聚合速率,则可以继续将业务流1的目标数据报文都进行丢弃或者缓存。

当报文丢弃或缓存策略为指定优先级别策略时,GW交换机在所述目标数据报文的优先级别为指定优先级别的情况下,将所述目标数据报文丢弃或者缓存,这样可以无需比较聚合业务流中的数据报文的优先级别,尽快将聚合业务流的比特速率下降至最大聚合速率。例如,聚合业务流包括业务流1以及业务流2,业务流1的优先级别为1,业务流2的优先级别为5,指定将优先级别为5的业务流进行丢弃或者缓存。在聚合业务流的比特速率大于设定的最大聚合速率时,GW交换机将业务流2的目标数据报文都进行丢弃或者缓存。当然,如果将业务流2的目标数据报文都丢弃或者缓存之后,聚合业务流的比特速率仍然大于设定的最大聚合速率,则可以继续将业务流1的目标数据报文都进行丢弃或者缓存。

在实际应用中,GW交换机还可以将多个报文丢弃或缓存策略结合进行使用。例如,GW交换机可以将最低优先级别策略和指定优先级别策略结合起来使用。即,GW交换机先按照指定优先级别策略丢弃或者缓存目标数据报文,然后,GW交换机再按照最低优先级别策略丢弃或者缓存目标数据报文。举个例子进行说明,聚合业务流包括业务流1以及业务流2,业务流1的优先级别为1,业务流2的优先级别为3,指定将优先级别为5的业务流进行丢弃或者缓存。在聚合业务流的比特速率大于设定的最大聚合速率时,GW交换机首先按照指定优先级别策略查找优先级别为5的业务流的数据报文进行丢弃或者缓存。在查找不到优先级别为5的业务流之后,GW交换机再按照最低优先级别策略将优先级别较低的业务流2的目标数据报文进行丢弃或者缓存,在将业务流2的目标数据报文都丢弃或者缓存之后,聚合业务流的比特速率仍然大于设定的最大聚合速率,则可以继续将优先级别较高的业务流1的目标数据报文都进行丢弃或者缓存。

如果GW网关将目标数据报文缓存在自身的存储器内,则在聚合业务流的比特速率下降至小于最大聚合比特速率之后,GW网关可以将缓存在自身的存储器内的目标数据报文进行重传。下文将从重传路径以及重传顺序两个角度介绍GW网关将缓存的目标数据报文进行重传的几种方式:

从重传路径的角度来看:

在第一种方式中,所述网关交换机通过缓存前的用户面路径重传所述目标数据报文。假设openflow网络包括UE、eNB交换机、GW交换机1、GW交换机2、GW交换机3以及GW交换机4。在缓存前,目标数据报文通过UE、eNB交换机、GW交换机1以及GW交换机2的用户面路径传输所述目标数据报文,则在缓存后,依然通过用户面路径UE、eNB交换机、GW交换机1以及GW交换机2传输所述目标数据报文。

在第二种方式中,所述网关交换机通过新建立的用户面路径重传所述目标数据报文。假设openflow网络包括UE、eNB交换机、GW交换机1、GW交换机2、GW交换机3以及GW交换机4。在缓存前,目标数据报文通过UE、eNB交换机、GW交换机1以及GW交换机2的用户面路径传输所述目标数据报文,则在缓存后,可以通过新建立的用户面路径UE、eNB交换机、GW交换机3以及GW交换机4传输所述目标数据报文。

从重传顺序的角度来看:

在第一种方式中,所述网关交换机直接重传所述目标数据报文。在本实施方式中,GW交换机不需要考虑目标数据报文的级别,只要聚合业务流的的比特速率降低至小于设定的最大聚合速率,GW交换机立刻将目标数据报文进行重传,以尽快将缓存的目标数据报文进行重传。例如,缓存的目标数据报文包括业务流1的目标数据报文以及业务流2的目标数据报文,业务流1的优先级别为1,业务流2的优先级别为5。在聚合业务流的比特速率降低至小于最大聚合速率时,GW交换机将业务流1和业务流2的目标数据报文都进行重传。

在第二种方式中,在所述目标数据报文的优先级别大于缓存的其他数据报文的情况下,所述网关交换机重传所述目标数据报文。在本实施方式中,GW交换机优先将级别较高的目标数据报文进行重传,以减少优先级别较高的数据报文的传输时延。例如,缓存的目标数据报文包括业务流1的目标数据报文以及业务流2的目标数据报文,业务流1的优先级别为1,业务流2的优先级别为5。在聚合业务流的比特速率降低至小于最大聚合速率时,GW交换机优先将业务流1的目标数据报文都进行重传。在业务流1的目标数据报文都重传完毕之后,GW交换机再将业务流2的目标数据报文都进行重传。

基于与图5所示的聚合速率控制方法相同的构思,本申请实施例还提供一种装置(如图12所示),该装置用于实现前述图5实施例所描述的方法。如图12所示,装置30包括:收发单元301、处理单元302以及存储单元303。收发单元301、处理单元302以及存储单元303可通过总线或者其它方式连接(图12中以通过总线连接为例)。

收发单元301用于实现处理单元302与其他单元或者网元的内容交互。具体的,收发单元301可以是该装置的通信接口,也可以是收发电路或者收发器,还可以是收发信机。收发单元301还可以是处理单元302的通信接口或者收发电路。可选的,收发单元301可以是一个收发芯片。

处理单元302用于实现装置对数据的处理。处理单元302可以是处理电路,也可以是处理器。其中,处理器可以是中央处理器(central processing unit,CPU),网络处理器(network processor,NP)或者CPU和NP的组合。上述处理器302可以是通用处理器、数字信号处理器、专用集成电路、现成可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。处理器还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(Generic Array Logic,GAL)或其任意组合。在实现过程中,上述方法的各步骤可以通过处理单元302中的硬件的集成逻辑电路或者软件形式的指令完成。其中,处理单元302可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。

存储单元303用于存储处理单元302执行的计算机指令。存储单元303可以是存储电路也可以是存储器。存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。

当装置30为第一网络设备时,存储单元303中存储的程序代码具体用于实现图5所示实施例中的所述GW交换机的功能。具体的,处理单元302用于调用存储单元303中存储的程序代码,并执行以下步骤:

通过收发单元301接收SDN控制器发送的流表项以及连接表,其中,所述流表项至少包括匹配域以及流表指令,所述连接表至少包括报文处理操作;

解析并获取收到的目标数据报文的报头信息,并将所述报头信息与流表项的匹配域进行匹配;

在与所述流表项的匹配域匹配成功的情况下,执行所述流表项的流表指令中的连接指令,其中,所述连接指令用于指向连接表;

执行所述连接表的报文处理操作,其中,所述报文处理操作用于在聚合业务流的比特速率大于设定的最大聚合速率的情况下,将所述目标数据报文丢弃或者缓存。

可选地,所述处理单元302具体用于:直接将所述目标数据报文丢弃或者缓存;或者,基于报文丢弃或缓存策略将所述目标数据报文丢弃或缓存。

可选地,所述处理单元302具体用于:在所述目标数据报文的优先级别小于聚合业务流的其他数据报文的优先级别的情况下,将所述目标数据报文丢弃或者缓存;或者,在所述目标数据报文的优先级别为指定优先级别的情况下,将所述目标数据报文丢弃或者缓存。

可选地,当将所述目标数据报文缓存时,在将所述目标数据报文缓存之后,所述处理单元302还用于:在所述聚合业务流的比特速率降低至小于所述设定的最大聚合速率的情况下,通过收发单元301重传所述目标数据报文。

可选地,所述收发单元301还用于:通过缓存前的用户面路径重传所述目标数据报文;或者,通过新建立的用户面路径重传所述目标数据报文。

可选地,所述收发单元301还用于:直接重传所述目标数据报文;或者,在所述目标数据报文的优先级别大于缓存的其他数据报文的情况下,重传所述目标数据报文。

可选地,所述连接表至少包括:连接表标识、所述最大聚合速率以及所述报文处理操作。

需要说明的,当装置30为第一网络设备时,处理单元302的执行步骤以及处理单元302涉及的其他技术特征还可参照图5方法实施例中所述GW交换机的相关内容,这里不再赘述。

当装置30为第二网络设备时,存储单元303中存储的程序代码具体用于实现图5所示实施例中的所述SDN控制器的功能。具体的,处理单元302用于调用存储单元303中存储的程序代码,并执行以下步骤:

SDN控制器根据QOS控制策略生成流表项以及连接表,其中,所述流表项至少包括匹配域以及流表指令,所述流表指令至少包括连接指令,所述连接指令用于指向所述连接表,所述连接表至少包括报文处理操作,所述报文处理操作用于在聚合业务流的比特速率大于设定的最大聚合速率的情况下,将目标数据报文丢弃或者缓存;

SDN控制器向网关交换机发送所述流表项以及所述连接表。

可选地,将所述目标数据报文丢弃或者缓存具体包括:直接将所述目标数据报文丢弃或者缓存;或者,基于报文丢弃或缓存策略将所述目标数据报文丢弃或缓存。

可选地,所述基于报文丢弃或缓存策略将所述目标数据报文丢弃或缓存,包括:在所述目标数据报文的优先级别小于聚合业务流的其他数据报文的优先级别的情况下,将所述目标数据报文丢弃或者缓存;或者,在所述目标数据报文的优先级别为指定优先级别的情况下,将所述目标数据报文丢弃或者缓存。

需要说明的,当装置30为第二网络设备时,处理单元302的执行步骤以及处理单元302涉及的其他技术特征还可参照图5方法实施例中所述SDN控制器的相关内容,这里不再赘述。

基于与图7所示的聚合速率控制方法相同的构思,本申请实施例还提供一种装置(如图12所示),该装置用于实现前述图7实施例所描述的方法。如图12所示,装置30包括:收发单元301、处理单元302以及存储单元303。收发单元301、处理单元302以及存储单元303可通过总线或者其它方式连接(图12中以通过总线连接为例)。

收发单元301用于实现处理单元302与其他单元或者网元的内容交互。具体的,收发单元301可以是该装置的通信接口,也可以是收发电路或者收发器,还可以是收发信机。收发单元301还可以是处理单元302的通信接口或者收发电路。可选的,收发单元301可以是一个收发芯片。

处理单元302用于实现装置对数据的处理。处理单元302可以是处理电路,也可以是处理器。其中,处理器可以是中央处理器(central processing unit,CPU),网络处理器(network processor,NP)或者CPU和NP的组合。上述处理器302可以是通用处理器、数字信号处理器、专用集成电路、现成可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。处理器还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(Generic Array Logic,GAL)或其任意组合。在实现过程中,上述方法的各步骤可以通过处理单元302中的硬件的集成逻辑电路或者软件形式的指令完成。其中,处理单元302可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。

存储单元303用于存储处理单元302执行的计算机指令。存储单元303可以是存储电路也可以是存储器。存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。

当装置30为第一网络设备时,存储单元303中存储的程序代码具体用于实现图7所示实施例中的所述GW交换机的功能。具体的,处理单元302用于调用存储单元303中存储的程序代码,并执行以下步骤:

通过收发单元301向SDN控制器上报聚合业务流的比特速率;

通过收发单元301接收所述SDN控制器根据所述聚合业务流的比特速率返回的流表项,其中,所述流表项用于指示所述网关交换机将所述聚合业务流中的目标数据报文丢弃或者缓存,所述聚合业务流共享所述最大聚合速率;

通过处理单元302执行所述流表项的流表指令将所述目标数据报文进行丢弃或者缓存。

可选地,所述流表项用于指示所述网关交换机直接将所述目标数据报文丢弃或者缓存;或者,所述流表项用于指示所述网关交换机在所述目标数据报文的优先级别小于所述聚合业务流中的数据报文的优先级别的情况下,将所述目标数据报文丢弃或者缓存。

可选地,当流表项用于指示所述网关交换机将所述目标数据报文缓存时,在所述聚合业务流的比特速率下降至小于所述聚合比特速率的情况下,通过收发单元301重传缓存的所述目标数据报文。

可选地,收发单元301通过缓存前的用户面路径重传缓存的目标数据报文;或者,通过新建的用户面路径重传缓存的目标报文,其中,所述用户面路径为在用户面上,所述网关交换机发送所述目标数据报文的路径。

可选地,在所述目标数据报文的优先级别大于缓存的其他数据报文的优先级别的情况下,收发单元301重传缓存的所述目标数据报文。

需要说明的,当装置30为第一网络设备时,处理单元302的执行步骤以及处理单元302涉及的其他技术特征还可参照图7方法实施例中所述GW交换机的相关内容,这里不再赘述。

当装置30为第二网络设备时,存储单元303中存储的程序代码具体用于实现图7所示实施例中的所述SDN控制器的功能。具体的,处理单元302用于调用存储单元303中存储的程序代码,并执行以下步骤:

接收网关交换机上报的聚合业务流的比特速率;

确定所述聚合业务流的比特速率大于最大聚合速率;

在所述聚合业务流的比特速率大于所述最大聚合速率的情况下,向所述网关交换机下发流表项,其中,所述流表项用于指示所述网关交换机将所述聚合业务流中的目标数据报文丢弃或者缓存,所述聚合业务流共享所述最大聚合速率。

可选地,当流表项用于指示所述网关交换机将所述目标数据报文丢弃或者缓存时,所述流表项用于指示所述网关交换机直接将所述目标数据报文丢弃或者缓存;或者,所述流表项用于指示所述网关交换机在所述目标数据报文的优先级别小于所述聚合业务流中的数据报文的优先级别的情况下,将所述目标数据报文丢弃或者缓存。

可选地,当流表项用于指示所述网关交换机将所述目标数据报文缓存时,所述处理器701还用于:在所述聚合业务流的比特速率下降至小于所述聚合比特速率的情况下,指示所述网关交换机重传缓存的所述目标数据报文。

可选地,所述处理单元302还用于:指示所述网关交换机通过缓存前的用户面路径重传缓存的目标数据报文;或者,指示所述网关交换机通过新建的用户面路径重传缓存的目标报文,其中,所述用户面路径为在用户面上,所述网关交换机发送所述目标数据报文的路径。

可选地,所述处理单元302还用于:指示所述网关交换机在所述目标数据报文的优先级别大于缓存的其他数据报文的优先级别的情况下,重传缓存的所述目标数据报文。

需要说明的,当装置30为第二网络设备时,处理单元302的执行步骤以及处理单元302涉及的其他技术特征还可参照图7方法实施例中所述SDN控制器的相关内容,这里不再赘述。

基于与图5所示的聚合速率控制方法相同的构思,本申请实施例还提供一种第一网络设备(图13所示)以及一种第二网络设备(如图13所示),其中,第一网络设备用于执行前述图5实施例描述的一种聚合速率控制方法中GW交换机的功能,第二网络设备用于执行前述图5实施例描述的一种聚合速率控制方法中SDN控制器的功能。

参见图13,本申请实施例的第一网络设备41包括:接收模块410、匹配模块420、执行模块430以及处理模块440。

接收模块410用于接收软件自定义网络SDN控制器发送的流表项以及连接表,其中,所述流表项至少包括匹配域以及流表指令,所述连接表至少包括报文处理操作。

所述匹配模块420用于解析并获取收到的目标数据报文的报头信息,并将所述报头信息与流表项的匹配域进行匹配。

所述执行模块430用于在与所述流表项的匹配域匹配成功的情况下,执行所述流表项的流表指令中的连接指令,其中,所述连接指令用于指向连接表。

所述处理模块440用于执行所述连接表的报文处理操作,其中,所述报文处理操作用于在聚合业务流的比特速率大于设定的最大聚合速率的情况下,将所述目标数据报文丢弃或者缓存。

可选地,所述处理模块440用于:直接将所述目标数据报文丢弃或者缓存;或者,基于报文丢弃或缓存策略将所述目标数据报文丢弃或缓存。

可选地,所述处理模块440用于:在所述目标数据报文的优先级别小于聚合业务流的其他数据报文的优先级别的情况下,将所述目标数据报文丢弃或者缓存;或者,在所述目标数据报文的优先级别为指定优先级别的情况下,将所述目标数据报文丢弃或者缓存。

可选地,所述网关交换机还包括重传模块450,所述重传模块450用于在所述聚合业务流的比特速率降低至小于所述设定的最大聚合速率的情况下,所述网关交换机重传所述目标数据报文。

可选地,所述重传模块450还用于:通过缓存前的用户面路径重传所述目标数据报文;或者,通过新建立的用户面路径重传所述目标数据报文。

可选地,所述重传模块450还用于:直接重传所述目标数据报文;或者,在所述目标数据报文的优先级别大于缓存的其他数据报文的情况下,重传所述目标数据报文。

可选地,所述连接表至少包括:连接表标识、所述最大聚合速率以及所述报文处理操作。

需要说明的,通过前述图5实施例的详细描述,本领域技术人员可以清楚的知道第一网络设备41所包含的各个功能模块的实现方法,所以为了说明书的简洁,在此不再详述。

参见图13,本申请实施例的第二网络设备42包括:生成模块460以及发送模块470。

所述生成模块460用于根据QOS控制策略生成流表项以及连接表,其中,所述流表项至少包括匹配域以及流表指令,所述流表指令至少包括连接指令,所述连接指令用于指向所述连接表,所述连接表至少包括报文处理操作,所述报文处理操作用于在聚合业务流的比特速率大于设定的最大聚合速率的情况下,将目标数据报文丢弃或者缓存;

所述发送模块470用于向网关交换机发送所述流表项以及所述连接表。

可选地,将所述目标数据报文丢弃或者缓存具体包括:直接将所述目标数据报文丢弃或者缓存;或者,基于报文丢弃或缓存策略将所述目标数据报文丢弃或缓存。

可选地,所述基于报文丢弃或缓存策略将所述目标数据报文丢弃或缓存,包括:在所述目标数据报文的优先级别小于聚合业务流的其他数据报文的优先级别的情况下,将所述目标数据报文丢弃或者缓存;或者,在所述目标数据报文的优先级别为指定优先级别的情况下,将所述目标数据报文丢弃或者缓存。

需要说明的,通过前述图5实施例的详细描述,本领域技术人员可以清楚的知道第二网络设备42所包含的各个功能模块的实现方法,所以为了说明书的简洁,在此不再详述。

基于与图7所示的聚合速率控制方法相同的发明构思,本申请实施例还提供一种第一网络设备(图14所示)以及一种第二网络设备(如图14所示),其中,第一网络设备用于执行前述图7实施例描述的一种聚合速率控制方法中GW交换机的功能,第二网络设备用于执行前述图7实施例描述的一种聚合速率控制方法中SDN控制器的功能。

参见图14,本申请实施例的第二网络设备51包括:接收模块510、确定模块520以及发送模块530。

所述接收模块510用于接收网关交换机上报的聚合业务流的比特速率;

所述确定模块520用于确定所述聚合业务流的比特速率大于最大聚合速率;

所述发送模块530用于在所述聚合业务流的比特速率大于所述最大聚合速率的情况下,向所述网关交换机下发流表项,其中,所述流表项用于指示所述网关交换机将所述聚合业务流中的目标数据报文丢弃或者缓存,所述聚合业务流共享所述最大聚合速率。

可选地,当流表项用于指示所述网关交换机将所述目标数据报文丢弃或者缓存时,所述流表项用于指示所述网关交换机直接将所述目标数据报文丢弃或者缓存;或者,所述流表项用于指示所述网关交换机在所述目标数据报文的优先级别小于所述聚合业务流中的数据报文的优先级别的情况下,将所述目标数据报文丢弃或者缓存。

可选地,当流表项用于指示所述网关交换机将所述目标数据报文缓存时,所述SDN控制器还包括指示模块540,所述指示模块540用于在所述聚合业务流的比特速率下降至小于所述聚合比特速率的情况下,指示所述网关交换机重传缓存的所述目标数据报文。

可选地,所述指示模块540还用于:指示所述网关交换机通过缓存前的用户面路径重传缓存的目标数据报文;或者,指示所述网关交换机通过新建的用户面路径重传缓存的目标报文,其中,所述用户面路径为在用户面上,所述网关交换机发送所述目标数据报文的路径。

可选地,所述指示模块540还用于指示所述网关交换机在所述目标数据报文的优先级别大于缓存的其他数据报文的优先级别的情况下,重传缓存的所述目标数据报文。

需要说明的,通过前述图7实施例的详细描述,本领域技术人员可以清楚的知道第二网络设备51所包含的各个功能模块的实现方法,所以为了说明书的简洁,在此不再详述。

参见图14,本申请实施例的第一网络设备52包括:发送模块550,接收模块560以及执行模块570。

所述发送模块550用于向SDN控制器上报聚合业务流的比特速率;

所述接收模块560用于接收所述SDN控制器根据所述聚合业务流的比特速率返回的流表项,其中,所述流表项用于指示所述网关交换机将所述聚合业务流中的目标数据报文丢弃或者缓存,所述聚合业务流共享所述最大聚合速率;

所述执行模块570用于执行所述流表项的流表指令将所述目标数据报文进行丢弃或者缓存。

可选地,流表项用于指示所述网关交换机将所述目标数据报文丢弃或者缓存,包括:所述流表项用于指示所述网关交换机直接将所述目标数据报文丢弃或者缓存;或者,所述流表项用于指示所述网关交换机在所述目标数据报文的优先级别小于所述聚合业务流中的数据报文的优先级别的情况下,将所述目标数据报文丢弃或者缓存。

可选地,当流表项用于指示所述网关交换机将所述目标数据报文缓存时,所述发送模块550还用于在所述聚合业务流的比特速率下降至小于所述聚合比特速率的情况下,重传缓存的所述目标数据报文。

可选地,所述发送模块550还用于:通过缓存前的用户面路径重传缓存的目标数据报文;或者,通过新建的用户面路径重传缓存的目标报文,其中,所述用户面路径为在用户面上,所述网关交换机发送所述目标数据报文的路径。

可选地,所述发送模块550还用于在所述目标数据报文的优先级别大于缓存的其他数据报文的优先级别的情况下,重传缓存的所述目标数据报文。

需要说明的,通过前述图7实施例的详细描述,本领域技术人员可以清楚的知道第一网络设备52所包含的各个功能模块的实现方法,所以为了说明书的简洁,在此不再详述。

另外,本申请实施例还提供了一种通信系统,该通信系统包括:第一网络设备和第二网络设备。所述第一网络设备对应图5方法实施例中的所述网关交换机。所述第二网络设备对应图5方法实施例中的所述SDN控制器。

具体实现中,所述第一网络设备可以是图12所示装置表征的第一网络设备,所述第二网络设备可以是图12所示的第二网络设备。所述第一网络设备可以是图13所示的第一网络设备41,所述第二网络设备可以是图13所示的第二网络设备42。

另外,本申请实施例还提供了一种通信系统,该通信系统包括:第一网络设备和第二网络设备。所述第一网络设备对应图7方法实施例中的所述GW交换机。所述第二网络设备对应图7方法实施例中的所述SDN控制器。

具体实现中,所述第一网络设备可以是图12所示装置表征的第一网络设备,第二网络设备可以是图12所示装置表征的第二网络设备。所述第一网络设备可以是图14所示的第一网络设备52,所述第二网络设备可以是图14所示的第二网络设备51。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、终端和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本申请实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1