CN104092619B - 流量控制方法及装置 - Google Patents
流量控制方法及装置 Download PDFInfo
- Publication number
- CN104092619B CN104092619B CN201410360788.7A CN201410360788A CN104092619B CN 104092619 B CN104092619 B CN 104092619B CN 201410360788 A CN201410360788 A CN 201410360788A CN 104092619 B CN104092619 B CN 104092619B
- Authority
- CN
- China
- Prior art keywords
- service message
- message
- network element
- service
- current period
- 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.)
- Active
Links
Classifications
-
- 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/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2408—Traffic characterised by specific attributes, e.g. priority or QoS for supporting different services, e.g. a differentiated services [DiffServ] type of service
-
- 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/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- 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/25—Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
-
- 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/26—Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
Abstract
本发明实施例涉及一种流量控制方法及装置,包括:后端网元根据接收的业务消息的类型,确定所述业务消息的优先级和所述业务消息在处理时需要消耗的资源;根据所述业务消息的优先级和所述资源的占用率,获取当前周期接收不同类型的业务消息的数量或者调整量;向前端网元发送当前周期接收不同类型的业务消息的数量或者调整量,以使前端网元根据当前周期接收不同类型的业务消息的数量或者调整量,对不同类型业务消息的流量进行控制。可以解决现有技术中前端网元没有根据后端网元中不同类型业务消息的负载状况进行过载控制,导致对未过载的业务消息进行流控的问题。
Description
技术领域
本发明涉及移动通信领域,尤其涉及一种流量控制方法及装置。
背景技术
在目前的通信网络中,随着用户数量快速增长、业务模型多样化和网络组网复杂化,通信设备受到业务流量冲击的风险也随之加大,当业务流量超过通信设备系统设计的负荷能力,往往会造成通信设备大面积拥塞、接通率下降,甚至引发通信设备故障。为了应对各种业务大流量场景,保证系统在大流量时的稳定性,流控技术成为了研究的热点。
根据流控的保护对象与执行者在网络上所处的位置不同,RFC 6357将流控分为3类:逐跳型(Hop-by-Hop)、端到端型(End-to-End)、局部过载控制型(Local OverloadControl)。参见图1所示的三种类型的流控模型,其中,(a)和(b)属于网络流控,网络路径上的前端网元根据后端网元的负载状况控制发送过来的业务量;(c)属于网元流控,过载网元根据自身的资源负载状态,控制实际处理的业务量,对于超过网元自身处理能力的业务消息进行拒绝或丢弃。
比较而言,由于网络流控在前端网元进行流量控制,对于后端网元的资源消耗更小,因此端到端的流控效率更高。此外如果后端网元存在负荷分担的网元,前端网元可以方便地将超出后端网元处理能力的业务消息分发给其负荷分担的网元,从而提高网络资源的利用率和业务成功率。因此,现有技术中在流控时,主要采用网络流控模型。
具体地,在网络流控中,后端网元向前端通知过载消息,前端网元根据后端网元发送过载消息的频率,确定后端网元的过载程度,最终决定需要拒绝或丢弃的业务量;或者,后端网元根据自身负载状况计算业务间隔/业务速度,通知前端网元进行流控;或者,后端网元根据自身负载状况计算流控放行或拒绝比例,通知前端网元进行流控。
由上述可知,现有技术中前端网元没有根据后端网元中不同类型业务消息的负载状况进行过载控制,导致对未过载的业务消息进行流控的问题。
发明内容
本发明实施例提供了一种流量控制方法及装置,可以解决现有技术中前端网元没有根据后端网元中不同类型业务消息的负载状况进行过载控制,导致对未过载的业务消息进行流控的问题。
第一方面,提供了一种流量控制方法,该方法包括:
后端网元根据接收的业务消息的类型,确定所述业务消息的优先级和所述业务消息在处理时需要消耗的资源;
根据所述业务消息的优先级和所述资源的占用率,获取当前周期接收不同类型的业务消息的数量或者调整量;
向前端网元发送当前周期接收不同类型的业务消息的数量或者调整量,以使前端网元根据当前周期接收不同类型的业务消息的数量或者调整量,对不同类型业务消息的流量进行控制。
结合第一方面,在第一方面的第一种实现方式中,所述向前端网元发送当前周期接收不同类型的业务消息的数量或者调整量包括:
将当前周期接收不同类型的业务消息的数量或者调整量携带在业务响应消息中,向前端网元发送所述业务响应消息;或者,
设定过载控制消息,将当前周期接收不同类型的业务消息的数量或者调整量携带在所述过载控制消息,向前端网元发送所述过载控制消息。
结合第一方面或第一方面的第一种实现方式,在第一方面的第二种实现方式中,所述前端网元根据当前周期接收不同类型的业务消息的数量,对不同类型业务消息的流量进行控制包括:
对每个类型的业务消息,所述前端网元将超出当前周期接收所述类型的业务消息的数量的业务消息直接拒绝或者丢弃;或者,
所述前端网元将超出当前周期接收所述类型的业务消息的数量的业务消息分发给所述后端网元的负荷分担网元,由所述负荷分担网元进行处理。
结合第一方面或第一方面的第一种实现方式或第一方面的第二种实现方式,在第一方面的第三种实现方式中,所述方法还包括:
接收所述前端网元发送的业务消息,根据所述业务消息的类型,将所述业务消息放置到不同的业务消息缓冲队列。
结合第一方面的第三种实现方式,在第一方面的第四种实现方式中,所述根据所述业务消息的优先级和所述资源的占用率,获取当前周期接收不同类型的业务消息的数量或者调整量包括:
根据所述各业务消息缓冲队列中业务消息的优先级,为所述各业务消息缓冲队列设定权重;
对每个业务消息缓冲队列,当所述业务消息缓冲队列中的业务消息的资源的占用率小于预设的阈值时,根据所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息;
根据预设的目标时延和上一周期所述业务消息缓冲队列中的业务消息等待调度的平均时延,获取当前周期所述业务消息缓冲队列接收对应类型的业务消息的数量或者调整量;其中,所述平均时延是根据所述资源的占用率计算得到的。
结合第一方面的第四种实现方式,在第一方面的第五种实现方式中,所述方法还包括:
获取当前周期从所述业务消息缓冲队列中调度的业务消息的总数量和已调度的业务消息的数量;
所述根据所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息包括:
根据所述调度的业务消息的总数量、已调度的业务消息的数量和所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息。
第二方面,提供了一种流量控制装置,该装置包括:确定单元、获取单元和发送单元;
所述确定单元,用于根据接收的业务消息的类型,确定所述业务消息的优先级和所述业务消息在处理时需要消耗的资源;
所述获取单元,用于根据所述确定单元确定的所述业务消息的优先级和所述资源的占用率,获取当前周期接收不同类型的业务消息的数量或者调整量;
所述发送单元,用于向前端网元发送所述获取单元获取的当前周期接收不同类型的业务消息的数量或者调整量,以使前端网元根据当前周期接收不同类型的业务消息的数量或者调整量,对不同类型业务消息的流量进行控制。
结合第二方面,第二方面的第一种实现方式中,所述发送单元具体用于:
将当前周期接收不同类型的业务消息的数量或者调整量携带在业务响应消息中,向前端网元发送所述业务响应消息;或者,
设定过载控制消息,将当前周期接收不同类型的业务消息的数量或者调整量携带在所述过载控制消息,向前端网元发送所述过载控制消息。
结合第二方面或第二方面的第一种实现方式,在第二方面的第二种实现方式中,所述装置还包括:接收单元,用于接收所述前端网元发送的业务消息,根据所述业务消息的类型,将所述业务消息放置到不同的业务消息缓冲队列。
结合第二方面的第二种实现方式,在第二方面的第三种实现方式中,所述获取单元具体用于:
根据所述各业务消息缓冲队列中业务消息的优先级,为所述各业务消息缓冲队列设定权重;
对每个业务消息缓冲队列,当所述业务消息缓冲队列中的业务消息的资源的占用率小于预设的阈值时,根据所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息;
根据预设的目标时延和上一周期所述业务消息缓冲队列中的业务消息等待调度的平均时延,获取当前周期所述业务消息缓冲队列接收对应类型的业务消息的数量或者调整量;其中,所述平均时延是根据所述资源的占用率计算得到的。
结合第二方面的第三种实现方式,在第二方面的第四种实现方式中,所述获取单元还用于:
获取当前周期从所述业务消息缓冲队列中调度的业务消息的总数量和已调度的业务消息的数量;
根据所述调度的业务消息的总数量、已调度的业务消息的数量和所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息。
本发明实施例提供的流量控制方法及装置。对不同类型的业务消息,获取到的当前周期接收不同类型的业务消息的数量或者调整量不同,从而前端网元可以根据当前周期接收不同类型的业务消息的数量或者所述调整量,对不同类型的业务消息进行差异化流控。由此,可以避免前端网元对未过载的业务消息进行流控的问题。
附图说明
图1为三种类型的流控模型;
图2为本发明实施例一提供的流量控制方法流程图;
图3为本发明实施例二提供的流量控制装置示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为便于对本发明实施例的理解,下面将结合附图以具体实施例做进一步的解释说明,实施例并不构成对本发明实施例的限定。
本发明实施例提供的流量控制方法及装置。对不同类型的业务消息,获取到的当前周期接收不同类型的业务消息的数量或者调整量不同,从而前端网元可以根据当前周期接收不同类型的业务消息的数量或者所述调整量,对不同类型的业务消息进行差异化流控。由此,可以避免前端网元对未过载的业务消息进行流控的问题。
图2为本发明实施例一提供的流量控制方法流程图。所述方法的执行主体为后端网元,如图2所示,所述方法具体包括:
S210,后端网元根据接收的业务消息的类型,确定所述业务消息的优先级和所述业务消息在处理时需要消耗的资源。
网元就是一个网络系统中的某个网络单元或者节点,该网元也可以是能够独立完成一种或几种功能的设备。包括前端网元和后端网元(也即,后端过载网元)。其中,前端网元用于根据后端网元的负载状况控制向后端网元发送业务消息的速率,后端网元用于通知前端网元控制发送业务消息的速率。
举例来说,在IP多媒体子系统(IP Multimedia Subsystem,IMS)网络中,会话边界控制器(Session Border Controller,SBC)为前端网元,呼叫会话控制功能(Call SessionControl Function,CSCF)为后端网元。SBC向CSCF发送的业务消息包括8种类型:会话(INVITE)、注册(REGISTER)、能力查询(OPTIONS)、消息(MESSAGE)、信息(INFO)、订阅(SUBSCRIBE)、通知(NOTIFY)、发布(PUBLISH)。当前端网元SBC接收上述任一种类型的业务消息时,对该业务消息进行解析(举例为,可以采用关键字解析的方法),就可以得到该业务消息对应的类型。在获取到该业务消息的类型之后,就可以进一步确定该业务消息对应的优先级。同一种类型的业务消息的优先级可以相同,也可以不相同。
在本实施例中,假设同一种类型的业务消息的优先级相同,即假设前述例子中的8种类型的业务消息INVITE、REGISTER、OPTIONS、MESSAGE、INFO、SUBSCRIBE、NOTIFY、PUBLISH的优先级分别为10、8、6、5、4、3、2和1。
需要说明的是,对上述业务消息,在获取到该业务消息的类型之后,那么该业务消息在处理时需要消耗的资源也是确定的。不同类型的业务消息在处理时需要消耗的资源可以为一个或多个。例如,NOTIFY类型的业务消息在处理时需要消耗的一个资源可以为通知业务控制表,该通知业务控制表用于存放通知业务处理过程的状态/控制数据。
优选地,后端网元在接收到前端网元发送的业务消息之后,根据所述业务消息的类型,将所述业务消息放置到不同的业务消息缓冲队列。
如前述例子中,后端网元CSCF预先为上述8种类型的业务消息建立8条业务消息缓冲队列,每条业务消息缓冲队列用于缓存接收到的同一种类型的业务消息,即每条业务消息缓冲队列对应特定的类型。然后根据接收到的业务消息的类型,将该业务消息放置到与该业务消息的类型相同的业务消息缓冲队列中。具体地,后端网元预先为业务消息INVITE、REGISTER、OPTIONS、MESSAGE、INFO、SUBSCRIBE、NOTIFY、PUBLISH建立8条业务消息缓冲队列:队列1、队列2、队列3、队列4、队列5、队列6、队列7和队列8。当接收到类型为NOTIFY的业务消息,则将该业务消息放置到队列7中。
S220,根据所述业务消息的优先级和所述资源的占用率,获取当前周期接收不同类型的业务消息的数量或者调整量。
进一步地,S220还可以包括:
S2201,根据所述各业务消息缓冲队列中业务消息的优先级,为所述各业务消息缓冲队列设定权重。
具体地,如前述例子中,根据业务消息缓冲队列中缓存的业务消息的优先级,为上述8条业务消息缓冲队列设定的权重分别为10、8、6、5、4、3、2和1。对设定好权重的8条业务消息缓冲队列,后端网元在从该8条业务消息缓冲队列中调度业务消息进行处理时,按照顺序依次从队列1、队列2、队列3、队列4、队列5、队列6、队列7和队列8中调度业务消息进行处理。在从任一业务消息缓冲队列中调度业务消息的过程中,先调度最先加入业务消息缓冲队列的业务消息,之后,将上述业务消息缓冲队列的权重减1。在对队列8中的业务消息调度结束之后,再回到队列1,这样依次循环从8条业务消息缓冲队列中调度业务消息。在上述过程中,在对任一业务消息缓冲队列调度结束时,将该业务消息缓冲队列的权重恢复为初始时设定的权重。
S2202,对每个业务消息缓冲队列,当所述业务消息缓冲队列中的业务消息的资源的占用率小于预设的阈值时,根据所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息。
优选地,在为各业务消息缓冲队列设定好权重之后,对每个业务消息缓冲队列,还需要获取当前周期从所述业务消息缓冲队列中调度的业务消息的总数量和已调度的业务消息的数量,之后,根据所述调度的业务消息的总数量、已调度的业务消息的数量和所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息。
其中,获取当前周期从所述业务消息缓冲队列中调度的业务消息的总数量还可以包括:
周期性检测所述业务消息缓冲队列中业务消息在处理时需要消耗的资源的占用率,当所述业务消息缓冲队列中的业务消息的资源的占用率小于预设的阈值时,根据预设的资源的目标占用率、上一周期的资源的占用率和上一周期从所述业务消息缓冲队列中调度的业务消息的总数量,获取当前周期从所述业务消息缓冲队列中调度的业务消息的总数量。
具体地,如前述例子中,后端网元周期性(例如,1s)检测队列1至队列8的资源的占用率,对队列7,假设队列7中的业务消息在处理时需要消耗的资源只包括通知业务控制表,且预设的通知业务控制表的目标占用率为80%。那么如果在当前周期(假设在10s的时候),通知业务控制表的占用率为50%(假设预设的阈值为90%,则此时资源的占用率小于预设的阈值),从队列7中调度的业务消息的总数量为30个,则在下一周期,也即11s的时候,从队列7中调度的业务消息的总数量为:(80%/50%)*30=48个。即在第11s的时候,可以从队列7中调度48个业务消息。
需要说明的是,根据上述方法计算的当前周期从业务消息缓冲队列中调度的业务消息的总数量与上一周期调度的业务消息的总数量波动较大(即,30->48),因此,可以对最大波动幅度进行限制,比如5。具体地,如果当前周期与上一周期之间调度的业务消息的总数量的差值超过5,则以5为准调整上述差值,即将(48-30)调整为5。因此,在前述例子中,可以确定当前周期从队列7中调度的业务消息的总数量为30+5=35个。
可选地,所述周期性检测所述业务消息缓冲队列中业务消息在处理时需要消耗的资源的占用率也可以替换为:在每次从业务消息缓冲队列中调度业务消息之前,检测所述业务消息缓冲队列中业务消息在处理时需要消耗的资源的占用率是否达到预设的阈值,如果达到,则不从所述业务消息缓冲队列中调度业务消息,按顺序转到下一条队列,从下一条队列中调度业务消息;如果没有达到,则直接从所述业务消息缓冲队列中调度一个业务消息。
具体地,如前述例子中,在从队列7中调度业务消息的过程中,假设队列7的资源占用率已经达到了80%,而假设预设的阈值为80%,则队列7的资源的占用率已经达到预设的阈值。所以后端网元本次不从队列7中调度业务消息,而跳到队列8,从队列8中调度业务消息。在对其他业务消息缓冲队列中业务消息在处理时需要消耗的资源的占用率进行检测时,预设的阈值可以为80%,也可以为其他值。
在上述例子中,若队列7的资源的占用率没有达到预设的阈值,则从队列7中调度一个业务消息。并将调度的通知业务处理过程的状态/控制数据存储到通知业务控制表中。可以理解的是,通知业务控制表中通知业务处理过程的状态/控制数据数量就会相应的增加,也即队列7的资源的占用率会相应的增加。
具体地,根据所述调度的业务消息的总数量、所述已调度的业务消息的数量和所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息还可以包括:
获取所述调度的业务消息的总数量与所述已调度的业务消息的数量的差值;若所述业务消息缓冲队列的权重小于所述差值,则根据所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息;否则,根据所述差值,从所述业务消息缓冲队列中调度业务消息。
具体地,如前述例子中,假设队列7初始时设定的权重为2,队列7中缓存了30个业务消息,且假设根据上述例子中给出的方法计算出当前周期从队列7中调度的业务消息的总数量为10个,那么在当前周期,当第一次轮循到队列7,并从队列7中调度业务消息时,因为已调度的业务消息的数量为0,所以总数量与已调度的业务消息的数量的差值为10-0=10。而队列7的权重(2)小于差值(10),所以根据队列7的权重,从队列7中调度业务消息,即本次后端网元可以从队列7中调度2个业务消息,在每次从队列7中调度1个业务消息时,队列7的权重减1,且在对队列7的权重为0时,结束从队列7中调度业务消息,跳到队列8,并将队列7的权重恢复为初始设定的权重2。
需要说明的是,在上述例子中,如果在当期周期,再次轮循到队列7,并从队列7中调度业务消息时,已调度的业务消息的数量则为2,因此,总数量与已调度的业务消息的数量的差值为10-2=8。然后再将该差值(8)与权重2进行比较,并从队列7中调度业务消息,以此类推。
需要说明的是,本发明后端网元不主动根据CPU占用率,控制从业务消息缓冲队列中调度业务消息的速率,当CPU占用率增加时,受操作系统任务调度的影响,后端网元从业务消息缓冲队列调度业务消息的速率会自动降低。由于后端网元不主动基于CPU占用率进行控制,因此可以规避CPU占用率观测不准和波动大对于流控效果的影响。当软硬件变化造成可用CPU资源量变化时,流控阈值参数不需要进行相应调整。
S2203,根据预设的目标时延和上一周期所述业务消息缓冲队列中的业务消息等待调度的平均时延,获取当前周期所述业务消息缓冲队列接收对应类型的业务消息的数量或者调整量;其中,所述平均时延是根据所述资源的占用率计算得到的。
上一周期所述业务消息缓冲队列中的业务消息等待调度的平均时延=n个业务消息等待调度的时延之和/上一周期所述业务消息缓冲队列调度的业务消息的总数量n,1个业务消息等待调度的时延=业务消息出队列时间-业务消息入队列时间。
可以理解的是,上一周期业务消息缓冲队列中调度的业务消息的总数量,是根据资源的占用率计算得到的。而业务消息等待调度的平均时延是根据业务消息的总数量计算得到的,所以平均时延是根据资源的占用率得到的。
需要说明的是,不能从业务消息缓冲队列中调度出去的业务消息会缓存在业务消息缓冲队列中,如果业务消息缓冲队列接收的业务消息的数量持续大于调度的业务消息缓冲队列的总数量,会造成业务消息缓冲队列缓存的消息数量增加,业务消息等待调度的时延增加。
为了避免业务消息时延过大,需要根据预设的目标时延,对当前周期业务消息缓冲队列接收业务消息的数量进行控制。
可选地,所述预设的目标时延包括:上限阈值和下限阈值;
所述根据预设的目标时延和上一周期所述业务消息缓冲队列中的业务消息等待调度的平均时延,获取当前周期所述业务消息缓冲队列接收对应类型的业务消息的数量或者调整量包括:
根据上限阈值、下限阈值、上一周期所述业务消息缓冲队列中的业务消息等待调度的平均时延和上一周期所述业务消息缓冲队列接收对应类型的业务消息的数量,获取当前周期所述业务消息缓冲队列接收所述类型的业务消息的数量或者调整量。需要说明的是,上限阈值是根据业务消息的超时时间设定的,对队列7,假设队列7中的业务消息等待调度的时延大于3s时,则该业务消息超时,那么C_MAX可以设定为500ms,将C_MAX的值设定为小于超时时延,是为了保证在资源过载后,队列7中的业务消息的时延也不至于过大。其中,资源过载是指业务消息缓冲队列中业务消息在处理时需要消耗的资源的占用率大于预设的门限值。下限阈值是在资源没有过载的情况下,根据业务消息缓冲队列中业务消息等待调度的平均时延设定的,可以设定为300ms。
举例来说,对队列7,假设上一周期队列7中的业务消息等待调度的平均时延为B,上一周期队列7接收对应类型的业务消息的数量为A,且队列7中业务消息的上限阈值为C_MAX,下限阈值为C_MIN,将当前周期队列7接收对应类型的业务消息的数量表示为D;
具体地,根据C_MIN、C_MAX、A和B,计算D的方法如下:
如果B<C_MIN,则说明队列7中的业务消息等待调度的平均时延比较小,即队列7中缓存的业务消息的数量比较少,按一定调整量(如10%)增加队列7接收对应类型的业务消息的数量,即D=A*(1+10%);
如果B>=C_MIN且B<(C_MIN+C_MAX)/2,在对队列7中的业务消息调度的过程中,队列7的资源的占用率会相应的增加,从队列7中调度的业务消息的总数量则会相应的减少,因此队列7中的业务消息等待调度的平均时延就会增加,可以适当减小上述调整量,比如按调整量3%增加队列7接收对应类型的业务消息的数量,即D=A*(1+3%);
如果B>=(C_MIN+C_MAX)/2且B<C_MAX,当队列7的资源的占用率持续增加时,即当队列7的资源的占用率大于预设的阈值时,队列7的资源就会过载,可以按调整量(如3%)减小队列7接收对应类型的业务消息的数量,即D=A*(1-3%);
如果B>=C_MAX,则说明队列7中缓存的业务消息数量比较多,为了避免队列7中业务消息超时,可以适当增加上述调整量,比如按调整量10%减小队列7接收对应类型的业务消息的数量,即D=A*(1-10%)。
在上述方法中增减的调整量可以根据实际测试效果进行调优。
同理,可以根据上述方法获取队列2-8接收对应类型的业务消息的数量。
S230,向前端网元发送当前周期接收不同类型的业务消息的数量或者调整量,以使前端网元根据当前周期接收不同类型的业务消息的数量或者调整量,对不同类型业务消息的流量进行控制。
具体地,如前述例子中,对任一种类型的业务消息,后端网元可以将在上述四种情况下计算的D发送给前端网元,也可以直接将在上述四种情况下增减的调整量发送给前端网元,由前端网元根据接收到的增减的调整量,获取D。前端网元在获取到D之后,比如,D为10个/s,按照每秒发送10个业务消息的速率向后端网元发送上述类型的业务消息。对于超出当前周期所述业务消息缓冲队列接收对应类型的业务消息的数量的业务消息,前端网元可以直接拒绝或者丢弃,或者如果后端网元存在负荷分担的网元的情况下,前端网元可以将超出当前周期所述业务消息缓冲队列接收对应类型的业务消息的数量的业务消息分发给后端网元的负荷分担网元,由所述负荷分担网元进行正常处理,从而提高网络资源的利用率和业务消息成功率。
进一步地,向前端网元发送当前周期接收不同类型的业务消息的数量或者调整量包括:
将当前周期接收不同类型的业务消息的数量或者调整量携带在业务响应消息中,向前端网元发送所述业务响应消息;或者,
设定过载控制消息,将当前周期接收不同类型的业务消息的数量或者调整量携带在所述过载控制消息,向前端网元发送所述过载控制消息。
本发明实施例提供的流量控制方法及装置。对不同类型的业务消息,获取到的当前周期接收不同类型的业务消息的数量或者调整量不同,从而前端网元可以根据当前周期接收不同类型的业务消息的数量或者所述调整量,对不同类型的业务消息进行差异化流控。由此,可以避免前端网元对未过载的业务消息进行流控的问题。
图3为本发明实施例二提供的流量控制装置示意图。所述装置可以用于执行图2所述的方法。图3中,该装置包括:确定单元301、获取单元302和发送单元303;
确定单元301,用于根据接收的业务消息的类型,确定所述业务消息的优先级和所述业务消息在处理时需要消耗的资源;
获取单元302,用于根据确定单元301确定的所述业务消息的优先级和所述资源的占用率,获取当前周期接收不同类型的业务消息的数量或者调整量;
发送单元303,用于向前端网元发送获取单元302获取的当前周期接收不同类型的业务消息的数量或者调整量,以使前端网元根据当前周期接收不同类型的业务消息的数量或者调整量,对不同类型业务消息的流量进行控制。
可选地,发送单元303具体用于:
将当前周期接收不同类型的业务消息的数量或者调整量携带在业务响应消息中,向前端网元发送所述业务响应消息;或者,
设定过载控制消息,将当前周期接收不同类型的业务消息的数量或者调整量携带在所述过载控制消息,向前端网元发送所述过载控制消息。
可选地,所述装置还包括:接收单元304,用于接收所述前端网元发送的业务消息,根据所述业务消息的类型,将所述业务消息放置到不同的业务消息缓冲队列。
可选地,获取单元302具体用于:
根据所述各业务消息缓冲队列中业务消息的优先级,为所述各业务消息缓冲队列设定权重;
对每个业务消息缓冲队列,当所述业务消息缓冲队列中的业务消息的资源的占用率小于预设的阈值时,根据所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息;
根据预设的目标时延和上一周期所述业务消息缓冲队列中的业务消息等待调度的平均时延,获取当前周期所述业务消息缓冲队列接收对应类型的业务消息的数量或者调整量;其中,所述平均时延是根据所述资源的占用率计算得到的。
可选地,获取单元302还用于:
获取当前周期从所述业务消息缓冲队列中调度的业务消息的总数量和已调度的业务消息的数量;
根据所述调度的业务消息的总数量、已调度的业务消息的数量和所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息。
本发明实施例二提供的装置植入了本发明实施例一提供的方法,因此,本发明提供的装置的具体工作过程,在此不复赘述。
本发明实施例提供的流量控制装置,对不同类型的业务消息,获取到的当前周期接收不同类型的业务消息的数量或者调整量不同,从而前端网元可以根据当前周期接收不同类型的业务消息的数量或者所述调整量,对不同类型的业务消息进行差异化流控。由此,可以避免前端网元对未过载的业务消息进行流控的问题。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (11)
1.一种流量控制方法,其特征在于,所述方法包括:
后端网元根据接收的业务消息的类型,确定所述业务消息的优先级和所述业务消息在处理时需要消耗的资源;
根据所述业务消息的优先级和所述资源的占用率,获取当前周期接收不同类型的业务消息的数量或者调整量;
向前端网元发送当前周期接收不同类型的业务消息的数量或者调整量,以使前端网元根据当前周期接收不同类型的业务消息的数量或者调整量,对不同类型业务消息的流量进行控制。
2.根据权利要求1所述的方法,其特征在于,所述向前端网元发送当前周期接收不同类型的业务消息的数量或者调整量包括:
将当前周期接收不同类型的业务消息的数量或者调整量携带在业务响应消息中,向前端网元发送所述业务响应消息;或者,
设定过载控制消息,将当前周期接收不同类型的业务消息的数量或者调整量携带在所述过载控制消息,向前端网元发送所述过载控制消息。
3.根据权利要求1或2所述的方法,其特征在于,所述前端网元根据当前周期接收不同类型的业务消息的数量,对不同类型业务消息的流量进行控制包括:
对每个类型的业务消息,所述前端网元将超出当前周期接收所述类型的业务消息的数量的业务消息直接拒绝或者丢弃;或者,
所述前端网元将超出当前周期接收所述类型的业务消息的数量的业务消息分发给所述后端网元的负荷分担网元,由所述负荷分担网元进行处理。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
接收所述前端网元发送的业务消息,根据所述业务消息的类型,将所述业务消息放置到不同的业务消息缓冲队列。
5.根据权利要求4所述的方法,其特征在于,所述根据所述业务消息的优先级和所述资源的占用率,获取当前周期接收不同类型的业务消息的数量或者调整量包括:
根据各业务消息缓冲队列中业务消息的优先级,为所述各业务消息缓冲队列设定权重;
对每个业务消息缓冲队列,当所述业务消息缓冲队列中的业务消息的资源的占用率小于预设的阈值时,根据所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息;
根据预设的目标时延和上一周期所述业务消息缓冲队列中的业务消息等待调度的平均时延,获取当前周期所述业务消息缓冲队列接收对应类型的业务消息的数量或者调整量;其中,所述平均时延是根据所述资源的占用率计算得到的。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
获取当前周期从所述业务消息缓冲队列中调度的业务消息的总数量和已调度的业务消息的数量;
所述根据所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息包括:
根据所述调度的业务消息的总数量、已调度的业务消息的数量和所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息。
7.一种流量控制装置,其特征在于,所述装置包括:确定单元、获取单元和发送单元;
所述确定单元,用于根据接收的业务消息的类型,确定所述业务消息的优先级和所述业务消息在处理时需要消耗的资源;
所述获取单元,用于根据所述确定单元确定的所述业务消息的优先级和所述资源的占用率,获取当前周期接收不同类型的业务消息的数量或者调整量;
所述发送单元,用于向前端网元发送所述获取单元获取的当前周期接收不同类型的业务消息的数量或者调整量,以使前端网元根据当前周期接收不同类型的业务消息的数量或者调整量,对不同类型业务消息的流量进行控制。
8.根据权利要求7所述的装置,其特征在于,所述发送单元具体用于:
将当前周期接收不同类型的业务消息的数量或者调整量携带在业务响应消息中,向前端网元发送所述业务响应消息;或者,
设定过载控制消息,将当前周期接收不同类型的业务消息的数量或者调整量携带在所述过载控制消息,向前端网元发送所述过载控制消息。
9.根据权利要求7或8所述的装置,其特征在于,所述装置还包括:接收单元,用于接收所述前端网元发送的业务消息,根据所述业务消息的类型,将所述业务消息放置到不同的业务消息缓冲队列。
10.根据权利要求9所述的装置,其特征在于,所述获取单元具体用于:
根据各业务消息缓冲队列中业务消息的优先级,为所述各业务消息缓冲队列设定权重;
对每个业务消息缓冲队列,当所述业务消息缓冲队列中的业务消息的资源的占用率小于预设的阈值时,根据所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息;
根据预设的目标时延和上一周期所述业务消息缓冲队列中的业务消息等待调度的平均时延,获取当前周期所述业务消息缓冲队列接收对应类型的业务消息的数量或者调整量;其中,所述平均时延是根据所述资源的占用率计算得到的。
11.根据权利要求10所述的装置,其特征在于,所述获取单元还用于:
获取当前周期从所述业务消息缓冲队列中调度的业务消息的总数量和已调度的业务消息的数量;
根据所述调度的业务消息的总数量、已调度的业务消息的数量和所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410360788.7A CN104092619B (zh) | 2014-07-25 | 2014-07-25 | 流量控制方法及装置 |
EP15824686.8A EP3163815B1 (en) | 2014-07-25 | 2015-07-14 | Traffic control method and apparatus |
PCT/CN2015/083994 WO2016011903A1 (zh) | 2014-07-25 | 2015-07-14 | 流量控制方法及装置 |
US15/413,566 US10171363B2 (en) | 2014-07-25 | 2017-01-24 | Traffic control method and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410360788.7A CN104092619B (zh) | 2014-07-25 | 2014-07-25 | 流量控制方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104092619A CN104092619A (zh) | 2014-10-08 |
CN104092619B true CN104092619B (zh) | 2017-07-21 |
Family
ID=51640301
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410360788.7A Active CN104092619B (zh) | 2014-07-25 | 2014-07-25 | 流量控制方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10171363B2 (zh) |
EP (1) | EP3163815B1 (zh) |
CN (1) | CN104092619B (zh) |
WO (1) | WO2016011903A1 (zh) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104092619B (zh) | 2014-07-25 | 2017-07-21 | 华为技术有限公司 | 流量控制方法及装置 |
CN105224805B (zh) * | 2015-10-10 | 2018-03-16 | 百度在线网络技术(北京)有限公司 | 基于流式计算的资源管理方法及装置 |
CN105933230A (zh) * | 2016-04-01 | 2016-09-07 | 浪潮电子信息产业股份有限公司 | 一种多节点的数据传输方法、节点及计算机系统 |
CN107592284B (zh) * | 2016-07-06 | 2020-06-02 | 华为技术有限公司 | 防DoS/DDoS攻击的装置和方法 |
CN106714323B (zh) * | 2017-01-12 | 2020-04-14 | 南京邮电大学 | 一种4g网络中异构流的优先级区分调度方法 |
CN107484204B (zh) * | 2017-07-21 | 2021-09-03 | 京信网络系统股份有限公司 | 基站上行突发缓解方法及装置 |
CN107566287B (zh) * | 2017-07-26 | 2021-03-02 | 创新先进技术有限公司 | 消息流量的控制方法及装置 |
CN108134814B (zh) * | 2017-11-27 | 2020-12-22 | 海尔优家智能科技(北京)有限公司 | 一种业务数据处理方法及装置 |
CN108959399B (zh) * | 2018-06-04 | 2022-07-15 | 平安科技(深圳)有限公司 | 分布式数据删除流控方法、装置、电子设备及存储介质 |
CN109120548B (zh) * | 2018-07-02 | 2022-03-11 | 联动优势电子商务有限公司 | 一种流量控制方法及装置 |
CN109150755B (zh) * | 2018-09-25 | 2022-03-04 | 西安空间无线电技术研究所 | 一种天基数据链星载消息调度方法及装置 |
CN111355663B (zh) * | 2018-12-20 | 2023-04-07 | 中兴通讯股份有限公司 | 一种消息处理方法及系统 |
CN110011926B (zh) * | 2019-03-07 | 2022-08-23 | 新华三技术有限公司 | 一种调整报文发送时间的方法、装置、设备及存储介质 |
CN110381456B (zh) * | 2019-07-19 | 2020-10-02 | 珠海格力电器股份有限公司 | 流量管理系统及流量阈值计算方法、空调系统 |
CN112202681B (zh) * | 2020-09-18 | 2022-07-29 | 京信网络系统股份有限公司 | 数据拥塞处理方法、装置、计算机设备和存储介质 |
CN113296942B (zh) * | 2021-05-13 | 2023-05-16 | 广州博冠信息科技有限公司 | 消息调节方法、消息调节装置、存储介质及电子设备 |
CN114979979B (zh) * | 2021-09-17 | 2023-07-21 | 中移互联网有限公司 | 一种消息处理的方法及其消息处理系统 |
CN114116235A (zh) * | 2022-01-26 | 2022-03-01 | 杭州米络星科技(集团)有限公司 | 流量控制方法、装置、电子设备及计算机可读存储介质 |
CN114443441B (zh) * | 2022-04-08 | 2022-07-08 | 苏州浪潮智能科技有限公司 | 一种存储系统管理方法、装置、设备及可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102143380A (zh) * | 2010-12-31 | 2011-08-03 | 华为技术有限公司 | 内容传送网络内容提供的控制方法、装置和系统 |
CN102469548A (zh) * | 2010-11-05 | 2012-05-23 | 中兴通讯股份有限公司 | 接入处理方法、装置及系统 |
CN103746927A (zh) * | 2013-12-27 | 2014-04-23 | 杭州华为数字技术有限公司 | 基于优先级的流控pfc方法及发送设备、接收设备 |
CN103888374A (zh) * | 2014-04-15 | 2014-06-25 | 东南大学 | 综合传感网业务中间件及其实现业务传送的方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6822940B1 (en) * | 2000-09-29 | 2004-11-23 | Cisco Technology, Inc. | Method and apparatus for adapting enforcement of network quality of service policies based on feedback about network conditions |
US6957269B2 (en) * | 2001-01-03 | 2005-10-18 | Advanced Micro Devices, Inc. | Method and apparatus for performing priority-based flow control |
JP3967115B2 (ja) * | 2001-11-22 | 2007-08-29 | 株式会社エヌ・ティ・ティ・ドコモ | 基地局、無線リソース制御装置、端末装置、通信システム及び通信方法 |
US7577161B2 (en) * | 2003-02-26 | 2009-08-18 | Alcatel-Lucent Usa Inc. | Class-based bandwidth allocation and admission control for virtual private networks with differentiated service |
US8130649B2 (en) * | 2007-10-18 | 2012-03-06 | Alcatel Lucent | Ingress traffic flow control in a data communications system |
CN101686497B (zh) * | 2008-09-24 | 2013-04-17 | 华为技术有限公司 | 小区负荷均衡方法、小区负荷评估方法及装置 |
CN102217336A (zh) * | 2011-05-06 | 2011-10-12 | 华为技术有限公司 | 消息处理方法和系统 |
US9370028B2 (en) * | 2011-09-20 | 2016-06-14 | Lg Electronics Inc. | Method and apparatus for performing network connection in wireless communication system |
US20130225181A1 (en) * | 2012-02-24 | 2013-08-29 | Qualcomm Incorporated | Managing communication operations based on resource usage and access terminal category |
CN104092619B (zh) * | 2014-07-25 | 2017-07-21 | 华为技术有限公司 | 流量控制方法及装置 |
-
2014
- 2014-07-25 CN CN201410360788.7A patent/CN104092619B/zh active Active
-
2015
- 2015-07-14 WO PCT/CN2015/083994 patent/WO2016011903A1/zh active Application Filing
- 2015-07-14 EP EP15824686.8A patent/EP3163815B1/en active Active
-
2017
- 2017-01-24 US US15/413,566 patent/US10171363B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102469548A (zh) * | 2010-11-05 | 2012-05-23 | 中兴通讯股份有限公司 | 接入处理方法、装置及系统 |
CN102143380A (zh) * | 2010-12-31 | 2011-08-03 | 华为技术有限公司 | 内容传送网络内容提供的控制方法、装置和系统 |
CN103746927A (zh) * | 2013-12-27 | 2014-04-23 | 杭州华为数字技术有限公司 | 基于优先级的流控pfc方法及发送设备、接收设备 |
CN103888374A (zh) * | 2014-04-15 | 2014-06-25 | 东南大学 | 综合传感网业务中间件及其实现业务传送的方法 |
Also Published As
Publication number | Publication date |
---|---|
EP3163815A4 (en) | 2017-09-20 |
US20170134290A1 (en) | 2017-05-11 |
EP3163815A1 (en) | 2017-05-03 |
EP3163815B1 (en) | 2019-09-04 |
WO2016011903A1 (zh) | 2016-01-28 |
CN104092619A (zh) | 2014-10-08 |
US10171363B2 (en) | 2019-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104092619B (zh) | 流量控制方法及装置 | |
US8730931B1 (en) | Airtime-based packet scheduling for wireless networks | |
US9813933B2 (en) | Multi-stream service concurrent transmission method, subsystem, system and multi-interface terminal | |
CN102217365B (zh) | 长期演进基站及其处理数据业务的方法 | |
CN103369601A (zh) | 为手机客户端提供大并发处理及流量控制的方法 | |
CN102480469B (zh) | 一种sip服务集群中基于能量均衡的负载调度的方法及装置 | |
CN102035737A (zh) | 一种基于认知网络的自适应负载均衡方法和装置 | |
WO2012051562A2 (en) | Quality of service adjustments to improve network utilization | |
CN109040259A (zh) | 一种基于mec的cdn节点分配方法和系统 | |
CN106131106B (zh) | 一种基于组件的微云、微云的组网方法及装置 | |
CN108174397A (zh) | 一种任务驱动的多网关协同方法 | |
CN103796244B (zh) | 一种均衡负载的无线异构多网接入选择方法 | |
CN107171839A (zh) | 一种带宽流量成本控制方法 | |
CN109361622A (zh) | 对cdn系统的业务连接进行带宽控制的方法及cdn系统 | |
Kang et al. | Application of adaptive load balancing algorithm based on minimum traffic in cloud computing architecture | |
CN103744735B (zh) | 一种多核资源的调度方法及装置 | |
WO2022197533A1 (en) | Methods, systems, and computer readable media for hypertext transfer protocol (http) stream tuning for load and overload control | |
CN105554049B (zh) | 分布式业务量控制方法和装置 | |
CN101764993A (zh) | 一种视频点播系统中的协作缓存方法及视频点播系统 | |
CN104301241B (zh) | 一种soa动态负载分发方法与系统 | |
WO2024088079A1 (zh) | 请求处理方法以及系统 | |
WO2022016978A1 (zh) | 群组管理方法、装置、计算机设备及存储介质 | |
CN103582015B (zh) | 一种实现负载均衡的方法及装置 | |
CN107547643A (zh) | 一种负载分担方法和装置 | |
CN108616509A (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 |