WO2016011903A1 - 流量控制方法及装置 - Google Patents

流量控制方法及装置 Download PDF

Info

Publication number
WO2016011903A1
WO2016011903A1 PCT/CN2015/083994 CN2015083994W WO2016011903A1 WO 2016011903 A1 WO2016011903 A1 WO 2016011903A1 CN 2015083994 W CN2015083994 W CN 2015083994W WO 2016011903 A1 WO2016011903 A1 WO 2016011903A1
Authority
WO
WIPO (PCT)
Prior art keywords
service
service message
network element
messages
message
Prior art date
Application number
PCT/CN2015/083994
Other languages
English (en)
French (fr)
Inventor
张文革
徐日东
Original Assignee
华为技术有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to EP15824686.8A priority Critical patent/EP3163815B1/en
Publication of WO2016011903A1 publication Critical patent/WO2016011903A1/zh
Priority to US15/413,566 priority patent/US10171363B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2408Traffic characterised by specific attributes, e.g. priority or QoS for supporting different services, e.g. a differentiated services [DiffServ] type of service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/25Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets

Definitions

  • the present invention relates to the field of mobile communications, and in particular, to a flow control method and apparatus.
  • RFC 6357 divides the flow control into three categories: Hop-by-Hop and End-to-End. Local Overload Control (Local Overload Control).
  • Local Overload Control Local Overload Control
  • the front-end network element on the network path controls the amount of traffic sent according to the load status of the back-end network element;
  • (c) belongs to the network element flow control.
  • the overloaded network element controls the actual processed traffic according to its own resource load status, and rejects or discards the service message that exceeds the processing capability of the network element itself.
  • the network flow control performs traffic control on the front-end network element, the resource consumption of the back-end network element is smaller, so the end-to-end flow control efficiency is higher.
  • the front-end network element can conveniently distribute the service information that exceeds the processing capability of the back-end network element to the load-sharing network element, thereby improving network resource utilization and service success rate. . Therefore, in the prior art, in the flow control, the network flow control model is mainly adopted.
  • the back-end network element notifies the front end of the overload message, and the front-end network element determines the overload degree of the back-end network element according to the frequency of the overloaded message sent by the back-end network element, and finally determines the service that needs to be rejected or discarded. Or; the back-end network element calculates the service interval/service speed according to its own load status. To notify the front-end NE to perform flow control, or to notify the front-end NE to perform flow control based on the load control release or rejection ratio.
  • the front-end network element does not perform overload control according to the load status of different types of service messages in the back-end network element, resulting in the problem of flow control of the service message that is not overloaded.
  • the embodiment of the invention provides a flow control method and device, which can solve the problem that the front-end network element does not perform overload control according to the load status of different types of service messages in the back-end network element, and the service message is not overloaded. Control problems.
  • a flow control method comprising:
  • the back-end network element determines, according to the type of the received service message, a priority of the service message and a resource that the service message needs to consume during processing;
  • the front-end network element is configured to receive the quantity or the amount of the service message of the different types of service messages in the current period, so that the front-end network element can receive the traffic of different types of service messages according to the current period.
  • the sending, by the front end network element, the quantity or the adjustment quantity of receiving the different types of service messages in the current period includes:
  • the overload control message is set, and the quantity or adjustment quantity of receiving different types of service messages in the current period is carried in the overload control message, and the overload control message is sent to the front-end network element.
  • the front end network element receives the quantity of different types of service messages according to a current period, and uses different types of service messages.
  • Traffic control includes:
  • the front-end network element directly rejects or discards the service message that exceeds the number of service messages of the type in the current period; or,
  • the front-end network element distributes the service message that receives the number of the service messages of the type in the current period to the load-sharing network element of the back-end network element, and is processed by the load-sharing network element.
  • the method further includes:
  • the obtaining, according to the priority of the service message and the occupancy rate of the resource, acquiring a current type of service message of a different type The number or adjustments include:
  • the average delay is calculated according to the occupancy rate of the resource.
  • the method further includes:
  • the scheduling the service message from the service message buffer queue according to the weight of the service message buffer queue includes:
  • a flow control device comprising: a determining unit, an obtaining unit, and a transmitting unit;
  • the determining unit is configured to determine, according to the type of the received service message, a priority of the service message and a resource that the service message needs to consume during processing;
  • the obtaining unit is configured to acquire, according to the priority of the service message and the occupancy rate of the resource, the number of adjustments or adjustments of different types of service messages received by the current period;
  • the sending unit is configured to send, to the front-end network element, a quantity or an adjustment quantity of different types of service messages received by the acquiring unit in the current period, so that the front-end network element receives the quantity or adjustment of different types of service messages according to the current period. Quantity, control the traffic of different types of business messages.
  • the sending unit is specifically configured to:
  • the overload control message is set, and the quantity or adjustment quantity of receiving different types of service messages in the current period is carried in the overload control message, and the overload control message is sent to the front-end network element.
  • the device further includes: a receiving unit, configured to receive a service message sent by the front end network element, according to The type of the service message, the service message is placed into a different service message buffer queue.
  • the acquiring unit is specifically configured to:
  • the service message For each service message buffer queue, when the service message buffers the traffic message in the queue When the occupation rate of the source is less than the preset threshold, the service message is scheduled from the service message buffer queue according to the weight of the service message buffer queue;
  • the average delay is calculated according to the occupancy rate of the resource.
  • the acquiring unit is further configured to:
  • the flow control method and device provided by the embodiments of the present invention.
  • the number of different types of service messages received by the current period is different or the amount of adjustment is different, so that the front-end network element can receive the number of different types of service messages or the adjustment amount according to the current period, for different types.
  • Business messages are differentiated from flow control. Therefore, the problem that the front-end network element performs flow control on the unoverloaded service message can be avoided.
  • Figure 1 shows three types of flow control models
  • FIG. 2 is a flowchart of a flow control method according to Embodiment 1 of the present invention.
  • FIG. 3 is a schematic diagram of a flow control apparatus according to Embodiment 2 of the present invention.
  • the flow control method and device provided by the embodiments of the present invention.
  • the number of different types of service messages received by the current period is different or the amount of adjustment is different, so that the front-end network element can receive the number of different types of service messages or the adjustment amount according to the current period, for different types.
  • Business messages are differentiated from flow control. Therefore, the problem that the front-end network element performs flow control on the unoverloaded service message can be avoided.
  • FIG. 2 is a flowchart of a flow control method according to Embodiment 1 of the present invention.
  • the execution entity of the method is a back-end network element. As shown in FIG. 2, the method specifically includes:
  • the back-end network element determines, according to the type of the received service message, a priority of the service message and a resource that the service message needs to consume during processing.
  • a network element is a network element or node in a network system.
  • the network element can also be a device that can perform one or several functions independently.
  • the front-end network element and the back-end network element (that is, the back-end overloaded network element) are included.
  • the front-end network element is configured to control the rate at which the service message is sent to the back-end network element according to the load status of the back-end network element, where the back-end network element is used to notify the front-end network element to control the rate at which the service message is sent.
  • a Session Border Controller (SBC) is a front-end network element
  • a Call Session Control Function (CSCF) is a backend.
  • the service messages sent by the SBC to the CSCF include 8 types: INVITE, REGISTER, OPTIONS, MESSAGE, INFO, SUBSCRIBE, NOTIFY, and PUBLISH).
  • the service message is parsed (for example, a keyword parsing method can be used), and the type corresponding to the service message can be obtained. After getting the type of the business message, you can To further determine the priority corresponding to the service message.
  • the priority of the same type of service message may be the same or different.
  • the priorities of the same type of service messages are the same, that is, the priorities of the eight types of service messages INVITE, REGISTER, OPTIONS, MESSAGE, INFO, SUBSCRIBE, NOTIFY, and PUBLISH in the foregoing examples are respectively 10, 8, 6, 5, 4, 3, 2, and 1.
  • a resource that needs to be consumed during the processing of the NOTIFY type service message may be a notification service control table, where the notification service control table is used to store status/control data for notifying the service processing process.
  • the back-end network element After receiving the service message sent by the front-end network element, the back-end network element places the service message into a different service message buffer queue according to the type of the service message.
  • the back-end network element CSCF pre-establishes eight service message buffer queues for the above eight types of service messages, and each service message buffer queue is used to buffer the received same type of service message, that is, each service.
  • the message buffer queue corresponds to a specific type.
  • the service message is placed in the same service message buffer queue as the service message.
  • the back-end network element establishes eight service message buffer queues for the service messages INVITE, REGISTER, OPTIONS, MESSAGE, INFO, SUBSCRIBE, NOTIFY, and PUBLISH in advance: queue 1, queue 2, queue 3, queue 4, queue 5, and queue. 6. Queue 7 and Queue 8. When a service message of type NOTIFY is received, the service message is placed in queue 7.
  • S220 may further include:
  • S2201 Set a weight for each service message buffer queue according to a priority of the service message in the service message buffer queue.
  • the service message cached according to the service message buffer queue is optimized.
  • the weights set for the above eight service message buffer queues are 10, 8, 6, 5, 4, 3, 2, and 1, respectively.
  • the back-end network elements process the service messages from the eight service message buffer queues, they are sequentially ordered from the queue 1, the queue 2, the queue 3, and the queue 4, Scheduled service messages are processed in queue 5, queue 6, queue 7, and queue 8.
  • the service message that is first added to the service message buffer queue is first scheduled, and then the weight of the service message buffer queue is decremented by one.
  • S2202 For each service message buffering queue, when the resource usage rate of the service message in the service message buffering queue is less than a preset threshold, according to the weight of the service message buffering queue, the service message buffering queue is used. Scheduling business messages.
  • the total number of service messages scheduled from the service message buffer queue and the scheduled service messages of the current period are also acquired.
  • the quantity, after which the service message is scheduled from the service message buffer queue according to the total number of the scheduled service messages, the number of scheduled service messages, and the weight of the service message buffer queue are also acquired.
  • the obtaining the total number of service messages scheduled from the service message buffer queue in the current period may further include:
  • the back-end network element periodically (for example, 1 s) detects the occupancy rate of the resources of the queue 1 to the queue 8.
  • the consumed resource only includes the notification service control table, and the target occupancy rate of the preset notification service control table is 80%.
  • the occupancy rate of the notification service control table is 50% (assuming the preset threshold is 90%, then the resource occupancy rate is less than the preset threshold), from the queue 7
  • the total number of service messages scheduled in the middle is 30.
  • the periodically detecting the rate of the resources that the service message in the service message buffer queue needs to consume during processing may also be replaced by: detecting the service message before scheduling the service message from the service message buffer queue. Whether the occupancy rate of the resource consumed by the service message in the service message buffer queue is up to a preset threshold, and if so, the service message is not scheduled from the service message buffer queue, and the next queue is transferred to the next queue. A service message is scheduled in the next queue; if not, a service message is directly dispatched from the service message buffer queue.
  • the back-end network element does not schedule the service message from the queue 7 but jumps to the queue 8 to schedule the service message from the queue 8.
  • the threshold value may be 80% or other values when detecting the occupation rate of the resources that need to be consumed when the service message is processed in other service message buffer queues.
  • the occupancy rate of the resource of the queue 7 does not reach the preset threshold, a service message is scheduled from the queue 7. And the status/control data of the scheduled notification service processing process is stored Stored in the notification service control table. It can be understood that the number of status/control data in the notification service processing table is correspondingly increased, that is, the occupancy rate of the resources of the queue 7 is correspondingly increased.
  • the scheduling the service message from the service message buffer queue may further include: according to the total number of the scheduled service messages, the number of the scheduled service messages, and the weight of the service message buffer queue.
  • the queue 7 is initially set with a weight of 2, and queue 7 has 30 service messages buffered, and it is assumed that the current period is scheduled from the queue 7 according to the method given in the above example.
  • the total number of service messages is 10, then in the current cycle, when the first round is cycled to queue 7 and the service message is scheduled from queue 7, since the number of scheduled service messages is 0, the total number has been
  • the weight (2) of the queue 7 is smaller than the difference (10).
  • the service message is scheduled from the queue 7, that is, the current back-end network element can schedule two service messages from the queue 7, in each
  • the weight of the queue 7 is decremented by 1, and when the weight of the queue 7 is 0, the scheduling of the service message from the queue 7 is ended, the queue is skipped, and the weight of the queue 7 is Revert to the initial set weight 2.
  • the back-end network element of the present invention does not actively control the rate of scheduling service messages from the service message buffer queue according to the CPU usage rate, and is affected by the operating system task when the CPU usage rate increases.
  • the effect of scheduling the rate at which the back-end network element schedules service messages from the service message buffer queue is automatically reduced. Because the back-end NEs are not actively controlled based on the CPU usage, you can avoid the impact of CPU usage mismatch and large fluctuations on the flow control effect. When the software and hardware changes cause the amount of available CPU resources to change, the flow control threshold parameters do not need to be adjusted accordingly.
  • S2203 Obtain an average delay of the service message waiting queue in the service message buffer queue according to the preset target delay and the previous period, and obtain the quantity or the amount of the service message corresponding to the service type buffer queue in the current period. Wherein the average delay is calculated based on the occupancy rate of the resource.
  • the average delay of the service message waiting for scheduling in the service message buffer queue in the previous cycle the sum of the delays of the n service messages waiting for scheduling/the total number n of the service messages scheduled by the service message buffer queue in the previous cycle,
  • the delay of one service message waiting for scheduling the outbound time of the service message - the queue time of the service message.
  • the total number of service messages scheduled in the service message buffer queue of the previous period is calculated according to the occupancy rate of the resources.
  • the average delay of the service message waiting for scheduling is calculated according to the total number of service messages, so the average delay is obtained according to the resource occupancy rate.
  • the service message that cannot be dispatched from the service message buffer queue is cached in the service message buffer queue. If the number of service messages received by the service message buffer queue continues to be greater than the total number of scheduled service message buffer queues, The number of messages that cause the traffic message buffer queue to be cached increases, and the delay of waiting for scheduling of service messages increases.
  • the preset target delay includes: an upper threshold and a lower threshold
  • Obtaining, according to the preset target delay, the average delay of the service message waiting for scheduling in the service message buffer queue in the previous cycle, and acquiring the quantity or adjustment amount of the service message corresponding to the corresponding type of the service message buffer queue in the current period. include:
  • Service elimination in the service message buffer queue according to the upper threshold, the lower threshold, and the previous period The average delay of the information waiting for scheduling and the number of service messages of the corresponding type are received by the service message buffer queue in the previous period, and the number or the amount of the service message of the type received by the service message buffer queue in the current period is obtained.
  • the upper threshold is set according to the timeout period of the service message. For the queue 7, if the delay of the service message waiting for scheduling in the queue 7 is greater than 3s, the service message times out, then C_MAX can be set to 500ms, the value of C_MAX is set to be less than the timeout delay, so as to ensure that the delay of the service message in the queue 7 is not too large after the resource is overloaded.
  • the resource overload refers to the occupation rate of the resources that need to be consumed when the service message in the service message buffer queue is processed is greater than a preset threshold.
  • the lower threshold is set according to the average delay of the service message waiting for scheduling in the service message buffer queue when the resource is not overloaded, and can be set to 300 ms.
  • the average delay of the service message waiting for scheduling in the queue 7 of the previous period is B, and the number of service messages of the corresponding type received by the queue 7 of the previous period is A, and the service message of the queue 7
  • the upper threshold is C_MAX, and the lower threshold is C_MIN, and the number of service messages of the corresponding type received by the current periodic queue 7 is represented as D;
  • the average delay of the service message waiting for scheduling in the queue 7 is relatively small, that is, the number of service messages buffered in the queue 7 is relatively small, and the queue 7 receives the corresponding type according to a certain adjustment amount (such as 10%).
  • the number of business messages, ie D A*(1+10%);
  • the number of service messages cached in the queue 7 is relatively large.
  • the adjustment amount may be appropriately increased.
  • the queue 7 receives the corresponding type of service according to the adjustment amount of 10%.
  • the number of messages, ie D A* (1-10%).
  • the amount of adjustment added or subtracted in the above method can be adjusted according to the actual test effect.
  • the number of service messages corresponding to the queue type 2-8 can be obtained according to the above method.
  • S230 Send, to the front-end network element, the quantity or the amount of the service message of the different types of service messages received in the current period, so that the front-end network element receives the quantity or the quantity of the different types of service messages according to the current period, and controls the traffic of different types of service messages. .
  • the back-end network element may send the D calculated in the above four cases to the front-end network element, or may directly increase or decrease in the above four cases.
  • the adjustment amount is sent to the front-end network element, and the front-end network element acquires D according to the received adjustment amount of the increase or decrease.
  • the service message of the above type is sent to the back-end network element at a rate of sending 10 service messages per second.
  • the front-end network element may directly reject or discard the service message that exceeds the number of service messages of the corresponding type of the service message buffer queue in the current period, or if the back-end network element has a load-sharing network element, the front-end network element
  • the service message that exceeds the number of service messages of the corresponding type in the service message buffer queue of the current period may be distributed to the load-sharing network element of the back-end network element, and the load-sharing network element performs normal processing, thereby improving network resources. Utilization rate and success rate of business messages.
  • sending the current period to the front-end network element to receive the number of different types of service messages or the adjustment amount includes:
  • the overload control message is set, and the quantity or adjustment quantity of receiving different types of service messages in the current period is carried in the overload control message, and the overload control message is sent to the front-end network element.
  • the flow control method and device provided by the embodiments of the present invention.
  • the number of different types of service messages received by the current period is different or the amount of adjustment is different, so that the front-end network element can receive different types of service messages according to the current period or the adjustment amount, and differentiate the different types of service messages. control. Therefore, the problem that the front-end network element performs flow control on the unoverloaded service message can be avoided.
  • FIG. 3 is a schematic diagram of a flow control apparatus according to Embodiment 2 of the present invention.
  • the apparatus can be used to perform the method described in FIG.
  • the apparatus includes: a determining unit 301, an obtaining unit 302, and a transmitting unit 303;
  • the determining unit 301 is configured to determine, according to the type of the received service message, a priority of the service message and a resource that the service message needs to consume during processing;
  • the obtaining unit 302 is configured to obtain, according to the priority of the service message determined by the determining unit 301 and the occupancy rate of the resource, a quantity or an adjustment quantity of receiving different types of service messages in a current period;
  • the sending unit 303 is configured to send, by the front-end network element, the number of the different types of service messages received by the acquiring unit 302 or the amount of adjustment, so that the front-end network element receives the quantity or the amount of different types of service messages according to the current period. Control the traffic of different types of business messages.
  • the sending unit 303 is specifically configured to:
  • the overload control message is set, and the quantity or adjustment quantity of receiving different types of service messages in the current period is carried in the overload control message, and the overload control message is sent to the front-end network element.
  • the device further includes: a receiving unit 304, configured to receive a service message sent by the front-end network element, and place the service message into a different service message buffer queue according to the type of the service message.
  • a receiving unit 304 configured to receive a service message sent by the front-end network element, and place the service message into a different service message buffer queue according to the type of the service message.
  • the obtaining unit 302 is specifically configured to:
  • the service message For each service message buffer queue, when the service message buffers the traffic message in the queue When the occupation rate of the source is less than the preset threshold, the service message is scheduled from the service message buffer queue according to the weight of the service message buffer queue;
  • the average delay is calculated according to the occupancy rate of the resource.
  • the obtaining unit 302 is further configured to:
  • the device provided in the second embodiment of the present invention is embedded in the method provided in the first embodiment of the present invention. Therefore, the specific working process of the device provided by the present invention is not described herein.
  • the traffic control device provided by the embodiment of the present invention receives different types of service messages or different adjustment amounts for different types of service messages in the current period, so that the front-end network element can receive different types of service messages according to the current period.
  • the number or the adjustment amount is used to perform differentiated flow control on different types of service messages. Therefore, the problem that the front-end network element performs flow control on the unoverloaded service message can be avoided.
  • the steps of the method or algorithm described in connection with the embodiments disclosed herein may be implemented in hardware, processing The software module executed by the device, or a combination of the two.
  • the software module can be placed in random access memory (RAM), memory, read only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM, or technical field. Any other form of storage medium known.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例涉及一种流量控制方法及装置,包括:后端网元根据接收的业务消息的类型,确定所述业务消息的优先级和所述业务消息在处理时需要消耗的资源;根据所述业务消息的优先级和所述资源的占用率,获取当前周期接收不同类型的业务消息的数量或者调整量;向前端网元发送当前周期接收不同类型的业务消息的数量或者调整量,以使前端网元根据当前周期接收不同类型的业务消息的数量或者调整量,对不同类型业务消息的流量进行控制。可以解决现有技术中前端网元没有根据后端网元中不同类型业务消息的负载状况进行过载控制,导致对未过载的业务消息进行流控的问题。

Description

流量控制方法及装置 技术领域
本发明涉及移动通信领域,尤其涉及一种流量控制方法及装置。
背景技术
在目前的通信网络中,随着用户数量快速增长、业务模型多样化和网络组网复杂化,通信设备受到业务流量冲击的风险也随之加大,当业务流量超过通信设备系统设计的负荷能力,往往会造成通信设备大面积拥塞、接通率下降,甚至引发通信设备故障。为了应对各种业务大流量场景,保证系统在大流量时的稳定性,流控技术成为了研究的热点。
根据流控的保护对象与执行者在网络上所处的位置不同,RFC 6357将流控分为3类:逐跳型(Hop-by-Hop)、端到端型(End-to-End)、局部过载控制型(Local Overload Control)。参见图1所示的三种类型的流控模型,其中,(a)和(b)属于网络流控,网络路径上的前端网元根据后端网元的负载状况控制发送过来的业务量;(c)属于网元流控,过载网元根据自身的资源负载状态,控制实际处理的业务量,对于超过网元自身处理能力的业务消息进行拒绝或丢弃。
比较而言,由于网络流控在前端网元进行流量控制,对于后端网元的资源消耗更小,因此端到端的流控效率更高。此外如果后端网元存在负荷分担的网元,前端网元可以方便地将超出后端网元处理能力的业务消息分发给其负荷分担的网元,从而提高网络资源的利用率和业务成功率。因此,现有技术中在流控时,主要采用网络流控模型。
具体地,在网络流控中,后端网元向前端通知过载消息,前端网元根据后端网元发送过载消息的频率,确定后端网元的过载程度,最终决定需要拒绝或丢弃的业务量;或者,后端网元根据自身负载状况计算业务间隔/业务速 度,通知前端网元进行流控;或者,后端网元根据自身负载状况计算流控放行或拒绝比例,通知前端网元进行流控。
由上述可知,现有技术中前端网元没有根据后端网元中不同类型业务消息的负载状况进行过载控制,导致对未过载的业务消息进行流控的问题。
发明内容
本发明实施例提供了一种流量控制方法及装置,可以解决现有技术中前端网元没有根据后端网元中不同类型业务消息的负载状况进行过载控制,导致对未过载的业务消息进行流控的问题。
第一方面,提供了一种流量控制方法,该方法包括:
后端网元根据接收的业务消息的类型,确定所述业务消息的优先级和所述业务消息在处理时需要消耗的资源;
根据所述业务消息的优先级和所述资源的占用率,获取当前周期接收不同类型的业务消息的数量或者调整量;
向前端网元发送当前周期接收不同类型的业务消息的数量或者调整量,以使前端网元根据当前周期接收不同类型的业务消息的数量或者调整量,对不同类型业务消息的流量进行控制。
结合第一方面,在第一方面的第一种实现方式中,所述向前端网元发送当前周期接收不同类型的业务消息的数量或者调整量包括:
将当前周期接收不同类型的业务消息的数量或者调整量携带在业务响应消息中,向前端网元发送所述业务响应消息;或者,
设定过载控制消息,将当前周期接收不同类型的业务消息的数量或者调整量携带在所述过载控制消息,向前端网元发送所述过载控制消息。
结合第一方面或第一方面的第一种实现方式,在第一方面的第二种实现方式中,所述前端网元根据当前周期接收不同类型的业务消息的数量,对不同类型业务消息的流量进行控制包括:
对每个类型的业务消息,所述前端网元将超出当前周期接收所述类型的业务消息的数量的业务消息直接拒绝或者丢弃;或者,
所述前端网元将超出当前周期接收所述类型的业务消息的数量的业务消息分发给所述后端网元的负荷分担网元,由所述负荷分担网元进行处理。
结合第一方面或第一方面的第一种实现方式或第一方面的第二种实现方式,在第一方面的第三种实现方式中,所述方法还包括:
接收所述前端网元发送的业务消息,根据所述业务消息的类型,将所述业务消息放置到不同的业务消息缓冲队列。
结合第一方面的第三种实现方式,在第一方面的第四种实现方式中,所述根据所述业务消息的优先级和所述资源的占用率,获取当前周期接收不同类型的业务消息的数量或者调整量包括:
根据所述各业务消息缓冲队列中业务消息的优先级,为所述各业务消息缓冲队列设定权重;
对每个业务消息缓冲队列,当所述业务消息缓冲队列中的业务消息的资源的占用率小于预设的阈值时,根据所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息;
根据预设的目标时延和上一周期所述业务消息缓冲队列中的业务消息等待调度的平均时延,获取当前周期所述业务消息缓冲队列接收对应类型的业务消息的数量或者调整量;其中,所述平均时延是根据所述资源的占用率计算得到的。
结合第一方面的第四种实现方式,在第一方面的第五种实现方式中,所述方法还包括:
获取当前周期从所述业务消息缓冲队列中调度的业务消息的总数量和已调度的业务消息的数量;
所述根据所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息包括:
根据所述调度的业务消息的总数量、已调度的业务消息的数量和所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息。
第二方面,提供了一种流量控制装置,该装置包括:确定单元、获取单元和发送单元;
所述确定单元,用于根据接收的业务消息的类型,确定所述业务消息的优先级和所述业务消息在处理时需要消耗的资源;
所述获取单元,用于根据所述确定单元确定的所述业务消息的优先级和所述资源的占用率,获取当前周期接收不同类型的业务消息的数量或者调整量;
所述发送单元,用于向前端网元发送所述获取单元获取的当前周期接收不同类型的业务消息的数量或者调整量,以使前端网元根据当前周期接收不同类型的业务消息的数量或者调整量,对不同类型业务消息的流量进行控制。
结合第二方面,第二方面的第一种实现方式中,所述发送单元具体用于:
将当前周期接收不同类型的业务消息的数量或者调整量携带在业务响应消息中,向前端网元发送所述业务响应消息;或者,
设定过载控制消息,将当前周期接收不同类型的业务消息的数量或者调整量携带在所述过载控制消息,向前端网元发送所述过载控制消息。
结合第二方面或第二方面的第一种实现方式,在第二方面的第二种实现方式中,所述装置还包括:接收单元,用于接收所述前端网元发送的业务消息,根据所述业务消息的类型,将所述业务消息放置到不同的业务消息缓冲队列。
结合第二方面的第二种实现方式,在第二方面的第三种实现方式中,所述获取单元具体用于:
根据所述各业务消息缓冲队列中业务消息的优先级,为所述各业务消息缓冲队列设定权重;
对每个业务消息缓冲队列,当所述业务消息缓冲队列中的业务消息的资 源的占用率小于预设的阈值时,根据所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息;
根据预设的目标时延和上一周期所述业务消息缓冲队列中的业务消息等待调度的平均时延,获取当前周期所述业务消息缓冲队列接收对应类型的业务消息的数量或者调整量;其中,所述平均时延是根据所述资源的占用率计算得到的。
结合第二方面的第三种实现方式,在第二方面的第四种实现方式中,所述获取单元还用于:
获取当前周期从所述业务消息缓冲队列中调度的业务消息的总数量和已调度的业务消息的数量;
根据所述调度的业务消息的总数量、已调度的业务消息的数量和所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息。
本发明实施例提供的流量控制方法及装置。对不同类型的业务消息,获取到的当前周期接收不同类型的业务消息的数量或者调整量不同,从而前端网元可以根据当前周期接收不同类型的业务消息的数量或者所述调整量,对不同类型的业务消息进行差异化流控。由此,可以避免前端网元对未过载的业务消息进行流控的问题。
附图说明
图1为三种类型的流控模型;
图2为本发明实施例一提供的流量控制方法流程图;
图3为本发明实施例二提供的流量控制装置示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述, 显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为便于对本发明实施例的理解,下面将结合附图以具体实施例做进一步的解释说明,实施例并不构成对本发明实施例的限定。
本发明实施例提供的流量控制方法及装置。对不同类型的业务消息,获取到的当前周期接收不同类型的业务消息的数量或者调整量不同,从而前端网元可以根据当前周期接收不同类型的业务消息的数量或者所述调整量,对不同类型的业务消息进行差异化流控。由此,可以避免前端网元对未过载的业务消息进行流控的问题。
图2为本发明实施例一提供的流量控制方法流程图。所述方法的执行主体为后端网元,如图2所示,所述方法具体包括:
S210,后端网元根据接收的业务消息的类型,确定所述业务消息的优先级和所述业务消息在处理时需要消耗的资源。
网元就是一个网络系统中的某个网络单元或者节点,该网元也可以是能够独立完成一种或几种功能的设备。包括前端网元和后端网元(也即,后端过载网元)。其中,前端网元用于根据后端网元的负载状况控制向后端网元发送业务消息的速率,后端网元用于通知前端网元控制发送业务消息的速率。
举例来说,在IP多媒体子系统(IP Multimedia Subsystem,IMS)网络中,会话边界控制器(Session Border Controller,SBC)为前端网元,呼叫会话控制功能(Call Session Control 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. 根据权利要求1-3任一所述的方法,其特征在于,所述方法还包括:
    接收所述前端网元发送的业务消息,根据所述业务消息的类型,将所述业务消息放置到不同的业务消息缓冲队列。
  5. 根据权利要求4所述的方法,其特征在于,所述根据所述业务消息的优先级和所述资源的占用率,获取当前周期接收不同类型的业务消息的数量或者调整量包括:
    根据所述各业务消息缓冲队列中业务消息的优先级,为所述各业务消息缓冲队列设定权重;
    对每个业务消息缓冲队列,当所述业务消息缓冲队列中的业务消息的资源的占用率小于预设的阈值时,根据所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息;
    根据预设的目标时延和上一周期所述业务消息缓冲队列中的业务消息等待调度的平均时延,获取当前周期所述业务消息缓冲队列接收对应类型的业务消息的数量或者调整量;其中,所述平均时延是根据所述资源的占用率计算得到的。
  6. 根据权利要求5所述的方法,其特征在于,所述方法还包括:
    获取当前周期从所述业务消息缓冲队列中调度的业务消息的总数量和已调度的业务消息的数量;
    所述根据所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息包括:
    根据所述调度的业务消息的总数量、已调度的业务消息的数量和所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息。
  7. 一种流量控制装置,其特征在于,所述装置包括:确定单元、获取单元和发送单元;
    所述确定单元,用于根据接收的业务消息的类型,确定所述业务消息的优先级和所述业务消息在处理时需要消耗的资源;
    所述获取单元,用于根据所述确定单元确定的所述业务消息的优先级和所述资源的占用率,获取当前周期接收不同类型的业务消息的数量或者调整量;
    所述发送单元,用于向前端网元发送所述获取单元获取的当前周期接收不同类型的业务消息的数量或者调整量,以使前端网元根据当前周期接收不同类型的业务消息的数量或者调整量,对不同类型业务消息的流量进行控制。
  8. 根据权利要求7所述的装置,其特征在于,所述发送单元具体用于:
    将当前周期接收不同类型的业务消息的数量或者调整量携带在业务响应消息中,向前端网元发送所述业务响应消息;或者,
    设定过载控制消息,将当前周期接收不同类型的业务消息的数量或者调整量携带在所述过载控制消息,向前端网元发送所述过载控制消息。
  9. 根据权利要求7或8所述的装置,其特征在于,所述装置还包括:接收单元,用于接收所述前端网元发送的业务消息,根据所述业务消息的类型,将所述业务消息放置到不同的业务消息缓冲队列。
  10. 根据权利要求9所述的装置,其特征在于,所述获取单元具体用于:
    根据所述各业务消息缓冲队列中业务消息的优先级,为所述各业务消息缓冲队列设定权重;
    对每个业务消息缓冲队列,当所述业务消息缓冲队列中的业务消息的资源的占用率小于预设的阈值时,根据所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息;
    根据预设的目标时延和上一周期所述业务消息缓冲队列中的业务消息等 待调度的平均时延,获取当前周期所述业务消息缓冲队列接收对应类型的业务消息的数量或者调整量;其中,所述平均时延是根据所述资源的占用率计算得到的。
  11. 根据权利要求10所述的装置,其特征在于,所述获取单元还用于:
    获取当前周期从所述业务消息缓冲队列中调度的业务消息的总数量和已调度的业务消息的数量;
    根据所述调度的业务消息的总数量、已调度的业务消息的数量和所述业务消息缓冲队列的权重,从所述业务消息缓冲队列中调度业务消息。
PCT/CN2015/083994 2014-07-25 2015-07-14 流量控制方法及装置 WO2016011903A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP15824686.8A EP3163815B1 (en) 2014-07-25 2015-07-14 Traffic control method and apparatus
US15/413,566 US10171363B2 (en) 2014-07-25 2017-01-24 Traffic control method and apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410360788.7 2014-07-25
CN201410360788.7A CN104092619B (zh) 2014-07-25 2014-07-25 流量控制方法及装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/413,566 Continuation US10171363B2 (en) 2014-07-25 2017-01-24 Traffic control method and apparatus

Publications (1)

Publication Number Publication Date
WO2016011903A1 true WO2016011903A1 (zh) 2016-01-28

Family

ID=51640301

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/083994 WO2016011903A1 (zh) 2014-07-25 2015-07-14 流量控制方法及装置

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 (20)

* Cited by examiner, † Cited by third party
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 杭州米络星科技(集团)有限公司 流量控制方法、装置、电子设备及计算机可读存储介质
CN114691318A (zh) * 2022-02-24 2022-07-01 深圳震有科技股份有限公司 一种数据排队处理方法、装置、终端及存储介质
CN114443441B (zh) * 2022-04-08 2022-07-08 苏州浪潮智能科技有限公司 一种存储系统管理方法、装置、设备及可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020087723A1 (en) * 2001-01-03 2002-07-04 Robert Williams Method and apparatus for performing priority-based flow control
US20030095538A1 (en) * 2001-11-22 2003-05-22 Ntt Docomo, Inc. Base station, radio resource control equipment, mobile station, communication system, and communication method
CN101686497A (zh) * 2008-09-24 2010-03-31 华为技术有限公司 小区负荷均衡方法、小区负荷评估方法及装置
CN102217336A (zh) * 2011-05-06 2011-10-12 华为技术有限公司 消息处理方法和系统
CN102469548A (zh) * 2010-11-05 2012-05-23 中兴通讯股份有限公司 接入处理方法、装置及系统
CN104092619A (zh) * 2014-07-25 2014-10-08 华为技术有限公司 流量控制方法及装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
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
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
CN102143380A (zh) * 2010-12-31 2011-08-03 华为技术有限公司 内容传送网络内容提供的控制方法、装置和系统
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
CN103746927B (zh) * 2013-12-27 2017-02-15 杭州华为数字技术有限公司 基于优先级的流控pfc方法及发送设备、接收设备
CN103888374B (zh) * 2014-04-15 2017-02-15 东南大学 综合传感网业务中间件及其实现业务传送的方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020087723A1 (en) * 2001-01-03 2002-07-04 Robert Williams Method and apparatus for performing priority-based flow control
US20030095538A1 (en) * 2001-11-22 2003-05-22 Ntt Docomo, Inc. Base station, radio resource control equipment, mobile station, communication system, and communication method
CN101686497A (zh) * 2008-09-24 2010-03-31 华为技术有限公司 小区负荷均衡方法、小区负荷评估方法及装置
CN102469548A (zh) * 2010-11-05 2012-05-23 中兴通讯股份有限公司 接入处理方法、装置及系统
CN102217336A (zh) * 2011-05-06 2011-10-12 华为技术有限公司 消息处理方法和系统
CN104092619A (zh) * 2014-07-25 2014-10-08 华为技术有限公司 流量控制方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3163815A4 *

Also Published As

Publication number Publication date
US10171363B2 (en) 2019-01-01
EP3163815A1 (en) 2017-05-03
CN104092619A (zh) 2014-10-08
EP3163815A4 (en) 2017-09-20
EP3163815B1 (en) 2019-09-04
CN104092619B (zh) 2017-07-21
US20170134290A1 (en) 2017-05-11

Similar Documents

Publication Publication Date Title
WO2016011903A1 (zh) 流量控制方法及装置
US10219254B2 (en) Airtime-based packet scheduling for wireless networks
US8964544B2 (en) Quality of service adjustments to improve network utilization
CN106452958B (zh) 一种流量控制方法、系统及集中控制器
JP6178523B2 (ja) 要求マネージャおよび接続マネージャの機能を実装するトランスポートアクセラレータ
JP5716090B2 (ja) データ送信オーバヘッドを減少させる方法及び装置
CN102217365B (zh) 长期演进基站及其处理数据业务的方法
US8885584B2 (en) Multiple concurrent data link management
CN103733680B (zh) 用于控制无线上行会话的方法和装置
CN102845044B (zh) 用于调度服务的资源预留的方法和设备
JP2001103120A (ja) 通信ネットワークにおいてトラフィックをスケジュールする方法及び装置
KR20090077816A (ko) 홈 네트워크의 대역폭 사용을 폴리싱하는 방법 및 장치
JP2006518953A (ja) パケット・データ通信システムにおけるフロー制御
US8341265B2 (en) Hybrid server overload control scheme for maximizing server throughput
US11190983B2 (en) Network latency control
US8811173B2 (en) Method of managing user traffic to prevent aggressive users from abusing network resources
Rashid et al. Traffic intensity based efficient packet schedualing
WO2013075281A1 (zh) 小区状态上报方法和设备
JP2004248105A (ja) 無線基地局、移動局、無線通信システム、及び無線通信方法
US8159944B2 (en) Time based queuing
Elnaka et al. A framework for QoS provisioning in unified communications networks
WO2014059579A1 (zh) 一种数据流传输的方法和设备
EP4136811A1 (en) Wireless communication system
Barretta et al. Integrate Dynamic Service Classes for Real Time Multimedia Communication on Cellular IP Environment
KR20070061051A (ko) 이더넷 대역폭 관리기의 선출 방법 및 이를 이용한 이더넷대역폭 관리 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15824686

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

REEP Request for entry into the european phase

Ref document number: 2015824686

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2015824686

Country of ref document: EP