[go: up one dir, main page]

CN101707807B - Method and device for scheduling service queue - Google Patents

Method and device for scheduling service queue Download PDF

Info

Publication number
CN101707807B
CN101707807B CN2009102469766A CN200910246976A CN101707807B CN 101707807 B CN101707807 B CN 101707807B CN 2009102469766 A CN2009102469766 A CN 2009102469766A CN 200910246976 A CN200910246976 A CN 200910246976A CN 101707807 B CN101707807 B CN 101707807B
Authority
CN
China
Prior art keywords
bandwidth
service
queue
service flow
total
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.)
Expired - Fee Related
Application number
CN2009102469766A
Other languages
Chinese (zh)
Other versions
CN101707807A (en
Inventor
申建平
王雷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN2009102469766A priority Critical patent/CN101707807B/en
Publication of CN101707807A publication Critical patent/CN101707807A/en
Application granted granted Critical
Publication of CN101707807B publication Critical patent/CN101707807B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention discloses a method for scheduling a service queue, which comprises the following steps of: establishing a plurality of service queues on a network element; using the network element to measure a service quality (Qos) parameter of a service flow on each Real-time Transport Protocol (RTP) passage in a transmission layer; using the network element to distribute the service flow on each RTP passage to corresponding service queue in a network layer; adjusting a band width of each service flow and a weight value of the service queue according to the Qos parameter of each service flow and sending the service flow in each service queue to a lower layer according to weighted cyclic scheduling. Meanwhile, the invention also discloses a device for scheduling the service queue. According to the scheme of the invention, cross-layer optimized scheduling of the service queue can be realized, and the band width of the service flow and the weight of the service queue can be adjusted in real time.

Description

Method and device for scheduling service queue
Technical Field
The present invention relates to the field of mobile communications, and in particular, to a method and an apparatus for scheduling a service queue.
Background
In the current Global System for Mobile Communications (GSM) System, interfaces between network elements basically adopt an increasingly popular Internet Protocol (IP) structure, that is, the interfaces between two network elements transmit and exchange data using messages, and generally adopt a message form of real-time transport protocol (RTP)/User Datagram Protocol (UDP)/IP/media access control protocol (MAC).
Between these network elements in the GSM system, there may be multiple traffic flows at the same time. When there are too many IP packets from one party, if the IP packets cannot be sent from another exit party in time, the network element needs to perform differentiated control according to the quality of service (Qos) requirements of each service. For the network element, it is possible to implement different control on different services by providing good forwarding Queue mechanisms, such as a Queue based on service Priority (PQ), a Weighted Round Robin (WRR), and the like. The PQ method comprises the steps of classifying flow, scheduling according to the priority of the classified flow strictly, processing the flow with high priority, and processing the flow with low priority; the defects are as follows: if high priority traffic is always present, traffic lower than its priority is always not scheduled. The WRR scheduling not only guarantees the priority of the traffic as a whole, but also can guarantee that each queue gets a certain service time.
For a conventional WRR, its weight does not change after setting. If the preset weight value is not reasonable or each service volume is greatly changed, a larger Qos difference exists between different services, or the Qos of some services cannot reach the expected weight value, which affects the scheduling of the service queue.
In terms of service queues, as shown in fig. 1, a conventional WRR scheduling method is classified according to service types, and is not further differentiated within the same service, so that it is not possible to further differentiate and control different services of the same type.
Disclosure of Invention
In view of this, the main objective of the present invention is to provide a method and an apparatus for scheduling a service queue, so as to implement dynamic scheduling of the service queue.
In order to achieve the purpose, the technical scheme of the invention is realized as follows:
the invention provides a method for scheduling a service queue, which comprises the following steps:
establishing a plurality of weight-based service queues on a network element;
measuring Qos parameters of service flow on each RTP channel in real time at a transmission layer;
distributing the service flow on each RTP channel to a corresponding service queue in a network layer;
estimating the network condition according to the Qos parameter of the service flow on each RTP channel and the threshold of the network Qos parameter, obtaining the bandwidth adjustment quantity of the corresponding service flow, adjusting the bandwidth of each service flow and adjusting the weight value of the service queue according to the adjusted bandwidth; and transmitting the service flow in each service queue to the lower layer according to WRR scheduling.
In the foregoing solution, the measuring Qos parameters of service flows on each RTP channel in real time at the transport layer specifically includes: the Qos parameters of the traffic flow on each RTP channel are measured in real time at the transport layer using the real-time transport control protocol (RTCP).
In the foregoing solution, the threshold of the network Qos parameter is: and estimating the network condition of each service flow in advance according to the actual network condition of each service flow.
In the above scheme, the method further comprises: in all the service flows, when the total bandwidth quantity needing to be increased is smaller than the total bandwidth quantity needing to be reduced, the service flow needing to be reduced reduces the bandwidth quantity proportionally, and the service flow needing to be increased increases the bandwidth quantity proportionally; when the total required bandwidth amount is larger than the total required bandwidth amount, the bandwidth is proportionally increased for each service flow which needs to increase the bandwidth according to the total required bandwidth amount; the total amount of bandwidth needed to be increased is made equal to the total amount of bandwidth needed to be decreased.
In the above scheme, the method further comprises: comparing the total bandwidth amount needing to be increased with the total bandwidth amount needing to be reduced through the sum of all the service flow bandwidth adjustment amounts, and determining that the total bandwidth amount needing to be increased is smaller than the total bandwidth amount needing to be reduced when the sum is smaller than zero; when the sum is greater than zero, it is determined that the total amount of bandwidth needed to be increased is greater than the total amount of bandwidth needed to be decreased.
In the above scheme, when a plurality of weight-based service queues are established on the network element, the method further includes dividing sub-queues for the service queues according to dividing conditions; the dividing according to the dividing condition is dividing according to different service flows and/or dividing according to Qos parameters;
when the network layer distributes the service flow on each RTP channel to the corresponding service queue, the method further comprises the step of putting the service flow on each RTP channel into a sub-queue meeting the dividing condition;
the sending the service flow in each service queue to the lower layer according to the WRR scheduling further comprises: and transmitting the service flow in each service queue sub-queue to the lower layer according to WRR scheduling.
In the above scheme, the adjusting of the weight value of the service queue specifically includes: according to the adjusted bandwidth, the weight value of the service queue is adjusted by using the mapping relation between the weight value and the bandwidth; and each sub-queue in the service queue also adjusts the corresponding weight value according to the adjustment of the service queue.
The invention provides a device for scheduling a service queue, which comprises:
a Qos measurement module, which is used for measuring the Qos parameter of the service flow on each RTP channel in real time at the transmission layer;
the traffic classification module is used for distributing the service flow on each RTP channel to a corresponding service queue in a network layer;
a multi-service queue module for providing a plurality of service queues at a network layer;
a WRR scheduling module, configured to perform network estimation at a network layer according to the measured QoS parameter of the service flow and a network QoS parameter threshold, to obtain a bandwidth adjustment amount of the corresponding service flow, adjust the bandwidth of each service flow, and adjust the weight value of the service queue according to the adjusted bandwidth; and the method is also used for sending the service flow in each service queue to the lower layer according to WRR scheduling.
In the above scheme, the traffic classification module is further configured to place the traffic flow on each RTP channel into a sub-queue meeting the partition condition;
in the above scheme, the multi-service queue module is further configured to divide a plurality of sub-queues for the service queue according to the division condition in the network layer;
in the above scheme, the WRR scheduling module is further configured to send the service flows in each service queue sub-queue to the lower layer according to WRR scheduling.
In the above scheme, the WRR scheduling module is further configured to, in all the service queues, when the total bandwidth amount that needs to be increased is smaller than the total bandwidth amount that needs to be decreased, proportionally decrease the bandwidth amount for the service flow that needs to decrease the bandwidth, and proportionally increase the bandwidth amount for the service flow that needs to increase the bandwidth; when the total required increased bandwidth quantity is larger than the total required decreased bandwidth quantity, according to the total required decreased bandwidth quantity, proportionally increasing the bandwidth quantity of each service flow needing increased bandwidth, and enabling the total required increased bandwidth quantity to be equal to the total required decreased bandwidth quantity.
In the above scheme, the WRR scheduling module is further configured to calculate a sum of bandwidth adjustment amounts of all current traffic flows, and when the sum is less than zero, determine that a total bandwidth amount that needs to be increased is less than a total bandwidth amount that needs to be decreased; when the sum is greater than zero, determining that the total amount of bandwidth needed to be increased is greater than the total amount of bandwidth needed to be decreased.
The invention provides a method and a device for scheduling service queues.A plurality of service queues and sub-queues are established on a network element; a network element measures Qos parameters of service flows on each RTP channel in real time; the network element distributes the service flow on each RTP channel to a corresponding service queue on a network layer, and puts the service flow into the sub-queue meeting the division condition for the service queue divided with the sub-queue; adjusting the bandwidth of each service flow and the weight value of the service queue according to the Qos parameter of each service flow; and transmitting the service flow in each service queue and the sub-queue to the lower layer according to WRR scheduling; therefore, cross-layer optimized service queue scheduling is realized, the bandwidth of the service flow and the weight of the service queue can be adjusted in real time, and further differentiated control of the service flow can be realized by dividing the sub-queues.
Drawings
Fig. 1 is a schematic structural diagram of WRR scheduling in the prior art;
FIG. 2 is a flow chart illustrating a method for scheduling a service queue according to the present invention;
fig. 3 is a schematic structural diagram of a device for scheduling a service queue according to the present invention.
Detailed Description
The basic idea of the invention is: establishing a plurality of weight-based service queues and service queues for establishing subqueues in need on a network element; measuring the Qos parameter of the service flow on each RTP channel in real time by using RTCP in a transmission layer; distributing the service flow on each RTP channel to a corresponding service queue in a network layer; adjusting the bandwidth of each service flow and the weight value of the service queue according to the Qos parameter of each service flow; and transmitting the service flow in each service queue to the lower layer according to WRR scheduling.
The invention is further described in detail below with reference to the figures and the specific embodiments.
As shown in fig. 2, a method for scheduling a service queue according to the present invention includes the following steps:
step 201: establishing a plurality of service queues on a network element, dividing the service queues with the sub-queues to be established according to dividing conditions, and setting initial values of the weight of the service queues and the sub-queues according to the mapping relation between the weight values and the bandwidth; meanwhile, setting a network Qos parameter threshold;
specifically, a plurality of weight-based service queues are established on a network element according to service types, and the service queues with the sub-queues to be established are divided into the sub-queues according to dividing conditions, for example, a data queue and a voice queue are established according to the service types, and for the data queues, the dividing conditions are set to be divided into streaming media sub-queues, background-level sub-queues (Web access types) and interactive-level sub-queues (FTP types) according to different services; for the voice queue, the dividing condition is set to be divided according to the Qos parameter, and the voice queue can be divided into a plurality of sub-queues based on the Qos parameter. The Qos parameter may be one or more of a delay, a jitter time, and a packet loss rate.
Setting an initial value of the weight of the service queue according to a mapping relation between the weight value and the bandwidth, wherein the mapping relation is as follows:
the weight value of each service queue is (bandwidth of service flow/total bandwidth of each service flow) × the total weight value of each service queue;
for example: the total bandwidth of each service flow is 10M, the total weight value of the service queue where each service flow is located is 100, the bandwidth allocation of the service flow 1 is 5M, and the weight value of the service queue 1 is 50; if the bandwidth allocation of the service flow 2 is 3M, the weight value of the service queue 2 is 30; if the bandwidth allocation of the service flow 3 is 1M, the weight value of the service queue 3 is 10; if the bandwidth allocation of the service flow 4 is 1M, the weight value of the service queue 4 is 10;
in addition, the initial value of the weight of each sub queue is also set according to the mapping relation, such as: the streaming media sub-queue in the data queue has the highest weight, the background level sub-queue has the second weight, and the interactive level sub-queue has the lowest weight; and each sub queue in the voice queue is sequentially decreased according to the serial number weight, namely: the weights of the sub-queues 1-n of the service queue i are sequentially decreased; the sum of the weighted values of the sub queues is equal to the weighted value of the service queue; and obtaining the initial value of the weight of each sub-queue by using the bandwidth of the service flow and the total bandwidth of the service flow in each sub-queue according to the mapping relation.
Meanwhile, according to the actual network condition of each service flow, setting a network Qos parameter threshold for estimating the network condition of each service flow; the network conditions include overload, full load, light load.
Step 202: the network element measures the Qos parameter of the service flow on each RTP channel by using RTCP at a transmission layer;
specifically, when communication starts, RTCP messages are periodically sent between network elements in a transport layer, and the network elements count Qos parameters required for all received RTCP messages. The period is typically 5 seconds.
Step 203: the network element distributes the service flow on each RTP channel to a corresponding service queue on a network layer, and puts the service flow into the sub-queue meeting the division condition for the service queue divided with the sub-queue;
for example: for a data queue, putting a service flow into a corresponding streaming media sub-queue, a background level sub-queue or an interactive level sub-queue according to the condition that the service flow is a streaming media service, a background level service or an interactive level service; for the voice queue, the Qos parameter adopts time delay, and then the maximum time delay division threshold D is setmax_THAnd a minimum delay division threshold Dmin_THTo divide into 3 sub-queues, the storage time delay in the sub-queue 1 is larger than Dmax_THThe traffic flow of (2); seed of Japanese apricotDeposit delay in queue 2 at Dmax_THAnd Dmin_THTraffic flow in between; subqueue 3 deposit less than Dmin_THThe traffic flow of (2); and according to the time delay of the service flow, putting the service flow into a sub-queue meeting the time delay condition. At the initial moment, no Qos measurement parameter is obtained yet, and all voice messages are sent in the sub-queue 1.
Step 204: estimating the network condition according to the Qos parameter of the service flow on each RTP channel and the threshold of the network Qos parameter to obtain the bandwidth adjustment quantity of the corresponding service flow, and adjusting the weight value of the service queue where the service flow is positioned by utilizing the mapping relation between the weight value and the bandwidth according to the bandwidth adjustment quantity;
specifically, in the network layer, the measured Qos parameter is compared with a network Qos parameter threshold, network condition estimation is performed to obtain whether the network condition is overloaded, fully loaded or lightly loaded, and in the case of overload, a bandwidth adjustment amount required to be increased is calculated to increase the bandwidth; under the condition of light load, calculating the bandwidth adjustment amount required to be reduced, and reducing the bandwidth; when the device is fully loaded, the bandwidth is not adjusted; meanwhile, according to the adjusted bandwidth, the weight value of the service queue is adjusted by using the mapping relation between the weight value and the bandwidth; each subqueue in the service queue also adjusts the corresponding weight value according to the adjustment of the service queue; for example: adopting time delay in Qos parameter, wherein the set threshold of the network Qos parameter is maximum time delay DmaxAnd minimum time delay Dmin(ii) a Calculating the average value D of the time delay according to the time delay counted by the RTCP messagesavcNamely: for voice services, DavcTaking the average value of the time delay counted by each RTCP message; for data traffic, DavcThe weighted average value of the time delay counted by each RTCP message is taken, namely when the data queue comprises a streaming media sub-queue, a background level sub-queue and an interactive level sub-queue, the calculation method of the weighted average value of the time delay is as follows:
<math> <mrow> <msub> <mi>D</mi> <mi>avc</mi> </msub> <mo>=</mo> <mfrac> <mrow> <munder> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>&le;</mo> <mn>3</mn> </mrow> </munder> <msub> <mi>PW</mi> <mi>i</mi> </msub> <mo>&CenterDot;</mo> <msub> <mi>PD</mi> <mi>i</mi> </msub> </mrow> <mrow> <munder> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>&le;</mo> <mn>3</mn> </mrow> </munder> <msub> <mi>PW</mi> <mi>i</mi> </msub> </mrow> </mfrac> </mrow> </math>
wherein i is not less than 1 and not more than 3, PWiFor subqueue weights in the data queue, PDiIs the sub-queue delay in the data queue.
When D is presentavc>DmaxWhen the traffic is overloaded, the bandwidth needs to be increased;
when D is presentmax>Davc>DminWhen the service flow is full, the current bandwidth is maintained;
when D is presentavc<DminWhen the traffic is lightly loaded, the bandwidth can be reduced;
when the network condition is overload or underload, the bandwidth needs to be adjusted, and the adjustment amount Δ W is as follows:
<math> <mrow> <mi>&Delta;W</mi> <mo>=</mo> <mfenced open='{' close=''> <mtable> <mtr> <mtd> <mrow> <mo>(</mo> <mfrac> <msub> <mi>D</mi> <mi>avc</mi> </msub> <msub> <mi>D</mi> <mi>max</mi> </msub> </mfrac> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> <mo>*</mo> <mi>W</mi> </mtd> <mtd> <msub> <mi>D</mi> <mi>avc</mi> </msub> <mo>></mo> <msub> <mi>D</mi> <mi>max</mi> </msub> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>(</mo> <mfrac> <msub> <mi>D</mi> <mi>avc</mi> </msub> <msub> <mi>D</mi> <mi>min</mi> </msub> </mfrac> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> <mo>*</mo> <mi>W</mi> </mtd> <mtd> <msub> <mi>D</mi> <mi>avc</mi> </msub> <mo>&lt;</mo> <msub> <mi>D</mi> <mi>min</mi> </msub> </mtd> </mtr> </mtable> </mfenced> </mrow> </math>
in the formula, W is the current bandwidth of the service, and when Δ W is less than 0, it indicates that the current service flow can reduce the bandwidth by | Δ W |; when Δ W > 0, it indicates that the traffic flow needs to increase the bandwidth by Δ W.
Further, in this step, in all the service flows, when the total bandwidth amount required to be increased is smaller than the total bandwidth amount required to be decreased, the service required to decrease the bandwidth decreases the bandwidth amount proportionally, and the service required to increase the bandwidth increases the bandwidth amount proportionally; when the total required bandwidth amount is larger than the total required bandwidth amount, the bandwidth is proportionally increased for each service flow which needs to increase the bandwidth according to the total required bandwidth amount; equating the total amount of bandwidth required to increase to the total amount of bandwidth required to decrease; namely: if the total bandwidth adjustment amount of all current service flows isSum Σ Δ WiN is equal to or less than 0, i is equal to 1, 2, 3, n is the total number of all the service flows needing bandwidth adjustment; then, it is indicated that the total required increase bandwidth amount is smaller than the total required decrease bandwidth amount in all the traffic flows; let | Δ W+L is the total amount of bandwidth required to be increased, | Δ W-L is the total amount of bandwidth required to be reduced, Wi-For the bandwidth of the ith traffic stream requiring bandwidth reduction by | Δ Wi-|;Wi+For the ith traffic flow needing increased bandwidth, the increase is | Δ Wi+L. Then:
<math> <mrow> <mo>|</mo> <mi>&Delta;</mi> <msub> <mi>W</mi> <mrow> <mi>i</mi> <mo>-</mo> </mrow> </msub> <mo>|</mo> <mo>=</mo> <mo>|</mo> <mi>&Delta;</mi> <msub> <mi>W</mi> <mi>i</mi> </msub> <mo>|</mo> <mo>-</mo> <mrow> <mo>(</mo> <mo>|</mo> <mi>&Delta;</mi> <msub> <mi>W</mi> <mo>-</mo> </msub> <mo>|</mo> <mo>-</mo> <mo>|</mo> <mi>&Delta;</mi> <msub> <mi>W</mi> <mo>+</mo> </msub> <mo>|</mo> <mo>)</mo> </mrow> <mo>*</mo> <mfrac> <msub> <mi>W</mi> <mrow> <mi>i</mi> <mo>-</mo> </mrow> </msub> <mrow> <mi>&Sigma;</mi> <msub> <mi>W</mi> <mi>i</mi> </msub> </mrow> </mfrac> </mrow> </math>
<math> <mrow> <mo>|</mo> <mi>&Delta;</mi> <msub> <mi>W</mi> <mrow> <mi>i</mi> <mo>+</mo> </mrow> </msub> <mo>|</mo> <mo>=</mo> <mo>|</mo> <mi>&Delta;</mi> <msub> <mi>W</mi> <mi>i</mi> </msub> <mo>|</mo> <mo>+</mo> <mrow> <mo>(</mo> <mo>|</mo> <mi>&Delta;</mi> <msub> <mi>W</mi> <mo>-</mo> </msub> <mo>|</mo> <mo>-</mo> <mo>|</mo> <mi>&Delta;</mi> <msub> <mi>W</mi> <mo>+</mo> </msub> <mo>|</mo> <mo>)</mo> </mrow> <mo>*</mo> <mfrac> <msub> <mi>W</mi> <mrow> <mi>i</mi> <mo>+</mo> </mrow> </msub> <mrow> <mi>&Sigma;</mi> <msub> <mi>W</mi> <mi>i</mi> </msub> </mrow> </mfrac> </mrow> </math>
if Σ Δ WiGreater than 0, indicating that the total required increase bandwidth is greater than the total required decrease bandwidth in all traffic flows, in which case the bandwidth | Δ W needs to be decreasedi-Traffic flow and need to increase bandwidth | Δ Wi+The traffic flow of | is proportionally adjusted to the bandwidth quantity as shown in the following formula:
|ΔWi-|=|ΔWi|
<math> <mrow> <mo>|</mo> <mi>&Delta;</mi> <msub> <mi>W</mi> <mrow> <mi>i</mi> <mo>+</mo> </mrow> </msub> <mo>|</mo> <mo>=</mo> <mo>|</mo> <mi>&Delta;</mi> <msub> <mi>W</mi> <mo>-</mo> </msub> <mo>|</mo> <mo>*</mo> <mfrac> <msub> <mi>W</mi> <mrow> <mi>i</mi> <mo>+</mo> </mrow> </msub> <mrow> <mi>&Sigma;</mi> <msub> <mi>W</mi> <mrow> <mi>i</mi> <mo>+</mo> </mrow> </msub> </mrow> </mfrac> </mrow> </math>
step 205: and transmitting the service flow in each service queue and the sub-queue to the lower layer according to WRR scheduling.
Based on the above method, the present invention further provides a device for scheduling a service queue, as shown in fig. 3, the device includes: a Qos measuring module 31, a traffic classification module 32, a multi-service queue module 33, and a WRR scheduling module 34; wherein,
a Qos measuring module 31, configured to store a network Qos parameter threshold, measure a Qos parameter of a service flow on each RTP channel in real time by using RTCP in a transport layer, transmit the measured Qos parameter to the traffic classification module 32 and the WRR scheduling module 34, and transmit the stored network Qos parameter threshold to the WRR scheduling module 34;
a traffic classification module 32, configured to allocate, in a network layer, a service stream on each RTP channel to a service queue according to a service type;
a multi-service queue module 33 for providing a plurality of service queues at the network layer; the sub-queues are divided according to dividing conditions;
a WRR scheduling module 34, configured to adjust, at the network layer, bandwidth of a corresponding service flow and a weight value of a service queue according to a measured Qos parameter of the service flow; the system is also used for sending the service flow in each service queue to the lower layer according to WRR scheduling; the adjusting of the bandwidth of the corresponding service flow and the weight value of the service queue according to the measured Qos parameter of the service flow specifically includes: and performing network estimation according to the measured Qos parameter of the service flow and the network Qos parameter threshold, and adjusting the bandwidth of the corresponding service flow and the weight value of the service queue, see step 204.
The traffic classification module 32 is further configured to, for the service queue into which the sub-queue is divided, put the service flow into the sub-queue meeting the conditions according to the dividing conditions of the sub-queue; for example, for a data queue, according to the fact that a service flow is a streaming media service, a background-level service or an interactive-level service, the service flow is placed into a corresponding streaming media sub-queue, a background-level sub-queue or an interactive-level sub-queue; for a voice queue, according to the Qos parameter of the service flow, putting the service flow into a sub-queue meeting the Qos parameter condition;
the multi-service queue module 33 is further configured to divide a plurality of sub-queues for the service queue according to the dividing condition in the network layer;
the WRR scheduling module 34 is further configured to send the service flows in each service queue sub-queue to a lower layer according to WRR scheduling;
the WRR scheduling module 34 is further configured to, in all the service queues, when the total bandwidth amount required to be increased is smaller than the total bandwidth amount required to be decreased, proportionally decrease the bandwidth amount of the service flow required to decrease the bandwidth, and proportionally increase the bandwidth amount of the service flow required to increase the bandwidth; when the total required bandwidth amount is larger than the total required bandwidth amount, according to the total required bandwidth amount, proportionally increasing the bandwidth of each service flow needing to increase the bandwidth, and enabling the total required bandwidth amount to be equal to the total required bandwidth amount;
further, the WRR scheduling module 34 is further configured to calculate a sum of bandwidth adjustment amounts of all current traffic flows, where the increased bandwidth amount is a positive value, the decreased bandwidth amount is a negative value, and when the sum is less than zero, it is determined that the total bandwidth amount that needs to be increased is less than the total bandwidth amount that needs to be decreased; when the sum is greater than zero, determining that the total amount of bandwidth needed to be increased is greater than the total amount of bandwidth needed to be decreased.
The above description is only exemplary of the present invention and should not be taken as limiting the scope of the present invention, and any modifications, equivalents, improvements, etc. that are within the spirit and principle of the present invention should be included in the present invention.

Claims (11)

1. A method for scheduling a traffic queue, the method comprising:
establishing a plurality of weight-based service queues on a network element;
measuring quality of service (Qos) parameters of traffic flows on each real-time transport protocol (RTP) channel in real time at a transport layer;
distributing the service flow on each RTP channel to a corresponding service queue in a network layer;
estimating the network condition according to the Qos parameter of the service flow on each RTP channel and the threshold of the network Qos parameter, obtaining the bandwidth adjustment quantity of the corresponding service flow, adjusting the bandwidth of each service flow and adjusting the weight value of the service queue according to the adjusted bandwidth; and transmitting the service flow in each service queue to the lower layer according to Weighted Round Robin (WRR) scheduling.
2. The method according to claim 1, wherein said measuring Qos parameters of service flows on each RTP channel in real time at a transport layer specifically comprises: the Qos parameters of the traffic flow on each RTP channel are measured in real time at the transport layer using the real-time transport control protocol (RTCP).
3. The method of claim 1, wherein the network Qos parameter threshold is: and estimating the network condition of each service flow in advance according to the actual network condition of each service flow.
4. The method of claim 3, further comprising: in all the service flows, when the total bandwidth quantity needing to be increased is smaller than the total bandwidth quantity needing to be reduced, the service flow needing to be reduced reduces the bandwidth quantity proportionally, and the service flow needing to be increased increases the bandwidth quantity proportionally; when the total required bandwidth amount is larger than the total required bandwidth amount, the bandwidth is proportionally increased for each service flow which needs to increase the bandwidth according to the total required bandwidth amount; the total amount of bandwidth needed to be increased is made equal to the total amount of bandwidth needed to be decreased.
5. The method of claim 4, further comprising: comparing the total bandwidth amount needing to be increased with the total bandwidth amount needing to be reduced through the sum of all the service flow bandwidth adjustment amounts, and determining that the total bandwidth amount needing to be increased is smaller than the total bandwidth amount needing to be reduced when the sum is smaller than zero; when the sum is greater than zero, it is determined that the total amount of bandwidth needed to be increased is greater than the total amount of bandwidth needed to be decreased.
6. The method according to any of claims 1 to 5, wherein when establishing a plurality of weight-based service queues on the network element, further comprising dividing the service queues into sub-queues according to a dividing condition; the dividing according to the dividing condition is dividing according to different service flows and/or dividing according to Qos parameters;
when the network layer distributes the service flow on each RTP channel to the corresponding service queue, the method further comprises the step of putting the service flow on each RTP channel into a sub-queue meeting the dividing condition;
the sending the service flow in each service queue to the lower layer according to the WRR scheduling further comprises: and transmitting the service flow in each service queue sub-queue to the lower layer according to WRR scheduling.
7. The method according to claim 6, wherein the adjustment of the weight value of the service queue specifically comprises: according to the adjusted bandwidth, the weight value of the service queue is adjusted by using the mapping relation between the weight value and the bandwidth; and each sub-queue in the service queue also adjusts the corresponding weight value according to the adjustment of the service queue.
8. An apparatus for scheduling a traffic queue, the apparatus comprising:
a Qos measurement module, which is used for measuring the Qos parameter of the service flow on each RTP channel in real time at the transmission layer;
the traffic classification module is used for distributing the service flow on each RTP channel to a corresponding service queue in a network layer;
a multi-service queue module for providing a plurality of service queues at a network layer;
a WRR scheduling module, configured to perform network estimation at a network layer according to the measured QoS parameter of the service flow and a network QoS parameter threshold, to obtain a bandwidth adjustment amount of the corresponding service flow, adjust the bandwidth of each service flow, and adjust the weight value of the service queue according to the adjusted bandwidth; and the method is also used for sending the service flow in each service queue to the lower layer according to WRR scheduling.
9. The apparatus of claim 8,
the flow classification module is also used for putting the service flow on each RTP channel into a sub-queue meeting the division condition;
the multi-service queue module is also used for dividing a plurality of sub-queues for the service queue according to the dividing conditions in the network layer;
and the WRR scheduling module is also used for transmitting the service flow in each service queue sub-queue to the lower layer according to WRR scheduling.
10. The apparatus of claim 8 or 9, wherein the WRR scheduling module is further configured to, in all the traffic queues, when the total amount of bandwidth required to be increased is smaller than the total amount of bandwidth required to be decreased, proportionally decrease the amount of bandwidth for the traffic flow requiring to be decreased, and proportionally increase the amount of bandwidth for the traffic flow requiring to be increased; when the total required increased bandwidth quantity is larger than the total required decreased bandwidth quantity, according to the total required decreased bandwidth quantity, proportionally increasing the bandwidth quantity of each service flow needing increased bandwidth, and enabling the total required increased bandwidth quantity to be equal to the total required decreased bandwidth quantity.
11. The apparatus of claim 10, wherein the WRR scheduling module is further configured to calculate a sum of bandwidth adjustment amounts of all current traffic flows, and when the sum is less than zero, determine that the total amount of bandwidth that needs to be increased is less than the total amount of bandwidth that needs to be decreased; when the sum is greater than zero, determining that the total amount of bandwidth needed to be increased is greater than the total amount of bandwidth needed to be decreased.
CN2009102469766A 2009-12-14 2009-12-14 Method and device for scheduling service queue Expired - Fee Related CN101707807B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009102469766A CN101707807B (en) 2009-12-14 2009-12-14 Method and device for scheduling service queue

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009102469766A CN101707807B (en) 2009-12-14 2009-12-14 Method and device for scheduling service queue

Publications (2)

Publication Number Publication Date
CN101707807A CN101707807A (en) 2010-05-12
CN101707807B true CN101707807B (en) 2012-11-28

Family

ID=42377964

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009102469766A Expired - Fee Related CN101707807B (en) 2009-12-14 2009-12-14 Method and device for scheduling service queue

Country Status (1)

Country Link
CN (1) CN101707807B (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101909015B (en) * 2010-08-26 2012-08-22 北京天融信科技有限公司 Method for realizing quality of service (QoS) of security gateway
CN102231697A (en) * 2011-06-17 2011-11-02 瑞斯康达科技发展股份有限公司 Bandwidth dispatching method of message queues as well as message reporting method and device
US8873394B2 (en) * 2012-02-03 2014-10-28 Apple Inc. System and method for performing packet queuing on a client device using packet service classifications
CN104243340B (en) * 2014-09-28 2017-11-10 新华三技术有限公司 Message processing method and device in a kind of software defined network
CN104717158B (en) * 2015-03-02 2019-03-05 中国联合网络通信集团有限公司 A kind of method and device adjusting bandwidth scheduling strategy
CN106254268A (en) * 2015-06-04 2016-12-21 中兴通讯股份有限公司 service quality scheduling method and device
CN107770736B (en) * 2016-08-18 2021-08-10 中国移动通信集团重庆有限公司 Data service issuing and scheduling method and device
CN107171975B (en) * 2017-05-27 2019-10-01 西南交通大学 The dispatching method of Train Control and service network
CN112714081B (en) * 2019-10-24 2024-05-03 华为技术有限公司 A data processing method and device thereof
CN111638986A (en) * 2020-06-02 2020-09-08 中电科航空电子有限公司 QoS queue scheduling method, device, system and readable storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1674534A (en) * 2005-04-27 2005-09-28 广东省电信有限公司研究院 Method for distributing accuratelly bandwidth for different queue at IP network equipment port
CN1750517A (en) * 2005-11-07 2006-03-22 中兴通讯股份有限公司 A Method for Realizing Service Bandwidth Guarantee

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1674534A (en) * 2005-04-27 2005-09-28 广东省电信有限公司研究院 Method for distributing accuratelly bandwidth for different queue at IP network equipment port
CN1750517A (en) * 2005-11-07 2006-03-22 中兴通讯股份有限公司 A Method for Realizing Service Bandwidth Guarantee

Also Published As

Publication number Publication date
CN101707807A (en) 2010-05-12

Similar Documents

Publication Publication Date Title
CN101707807B (en) Method and device for scheduling service queue
US7826358B2 (en) Hierarchical virtual queuing
US20170187641A1 (en) Scheduler, sender, receiver, network node and methods thereof
EP2862301B1 (en) Multicast to unicast conversion technique
US8045563B2 (en) Dynamically adjusted credit based round robin scheduler
US8767553B2 (en) Dynamic resource partitioning for long-term fairness to non-elastic traffic on a cellular basestation
EP2438716B1 (en) Congestion-based traffic metering
CN101969403B (en) E-Model-based dejittering buffer management method
EP2448174B1 (en) An apparatus for controlling data traffic and a method for measuring QoE
MXPA06001454A (en) Cooperative autonomous and scheduled resource allocation for a distributed communication system.
US20070248101A1 (en) Efficient policer based weighted fair bandwidth method and system
CN109428830A (en) A kind of device and method of dynamic adjustment ONU equipment port speed constraint threshold values
Ramos et al. Dynamic adaptation policies to improve quality of service of real-time multimedia applications in IEEE 802.11 e WLAN networks
US20110242973A1 (en) System and method for dynamically policing network traffic based on egress queue status
Higuchi et al. Delay guarantee and service interval optimization for HCCA in IEEE 802.11 e WLANs
EP2292060A1 (en) Method for achieving an optimal shaping rate for a new packet flow
KR101007024B1 (en) Apparatus and method for guaranteeing service quality traffic speed in mobile communication system
Patel et al. Implementation and evaluation of dynamically weighted low complexity fair queuing (DWLC-FQ) algorithm for packet scheduling in WiMAX networks
Shin et al. Packet scheduling over a shared wireless link for heterogeneous classes of traffic
Yuan et al. iVoIP: an intelligent bandwidth management scheme for VoIP in WLANs
Foh et al. Scalable video transmission over the IEEE 802.11 e networks using cross-layer rate control
Yin et al. Admission control with multi-constrained QoS providing in wireless sensor networks
EP2388978A1 (en) Methods and devices for determining network link load
Yang et al. QoS model of a router with feedback control
Al-Khasib et al. Mini round robin: an enhanced frame-based scheduling algorithm for multimedia networks

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20121128

Termination date: 20171214

CF01 Termination of patent right due to non-payment of annual fee