[go: up one dir, main page]

CN102694740B - A kind of array dispatching method and device - Google Patents

A kind of array dispatching method and device Download PDF

Info

Publication number
CN102694740B
CN102694740B CN201210217512.4A CN201210217512A CN102694740B CN 102694740 B CN102694740 B CN 102694740B CN 201210217512 A CN201210217512 A CN 201210217512A CN 102694740 B CN102694740 B CN 102694740B
Authority
CN
China
Prior art keywords
scheduling
state
queue
priority
dispatching
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210217512.4A
Other languages
Chinese (zh)
Other versions
CN102694740A (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.)
Maipu Communication Technology Co Ltd
Original Assignee
Maipu Communication Technology Co Ltd
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 Maipu Communication Technology Co Ltd filed Critical Maipu Communication Technology Co Ltd
Priority to CN201210217512.4A priority Critical patent/CN102694740B/en
Publication of CN102694740A publication Critical patent/CN102694740A/en
Application granted granted Critical
Publication of CN102694740B publication Critical patent/CN102694740B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

This application discloses a kind of array dispatching method, the method comprises: each scheduler object is assigned to corresponding scheduling queue by the first priority of status according to each described scheduler object; When detecting that the flow of arbitrary described scheduler object is greater than CIR and is less than MIR, this scheduler object is switched to corresponding scheduling queue by the second priority of status according to this scheduler object; When detecting that the flow of arbitrary described scheduler object is not less than MIR, this scheduler object is switched out current place scheduling queue; According to the absolute priority of each scheduling queue, each scheduler object on scheduling queue is dispatched, by RR algorithm, robin scheduling is carried out according to the state quota of correspondence to the multiple scheduler objects on same scheduling queue.Based on same inventive concept, also propose a kind of device, different scheduling strategies can be realized by the different scheduling parameter of configuration, improve dispatching flexibility.

Description

Queue scheduling method and device
Technical Field
The present application relates to the field of communications technologies, and in particular, to a queue scheduling method and apparatus.
Background
In a data communication network, congestion is easily caused in a data transmission process due to inconsistent bandwidths of upstream and downstream devices, and in order to ensure QoS requirements of different services in the network, traffic of the different services needs to be scheduled at an outlet of the device.
The scheduling algorithms commonly used at present are SP and RR algorithms and related scheduling methods derived based on the SP and RR algorithms. SPs are able to implement priority scheduling, but may cause low priority queues to be starved by high priority queues. RR enables proportional scheduling of multiple queues but does not guarantee priority of the queues. In order to realize a more flexible scheduling strategy, some implementations combine SP and RR, and perform RR scheduling on queues at the same priority, and perform SP scheduling on queues at different priorities. This provides a flexible scheduling strategy for the actual multi-service traffic scheduling needs to some extent, but still cannot completely meet some complex and diverse scheduling needs. In fact, the scheduling requirements are quite different and varied in different applications, and the specific scheduling algorithm customized for each application scenario, although it can meet the specific application, lacks flexibility.
Disclosure of Invention
In view of this, the present application provides a queue scheduling method and apparatus, which can implement different scheduling strategies by configuring different scheduling parameters, thereby improving scheduling flexibility.
In order to solve the technical problem, the technical scheme of the invention is realized as follows:
a queue scheduling method configures scheduling parameters for each scheduling object according to a scheduling policy, wherein the scheduling parameters include a committed rate (CIR), a maximum rate (MIR), a status priority and a status quota, and the status priority includes a first status priority and a second status priority, and the method includes:
distributing each scheduling object to a corresponding scheduling queue according to the first state priority of each scheduling object; when the flow of any one scheduling object is detected to be larger than the CIR and smaller than the MIR, switching the scheduling object to a corresponding scheduling queue according to the second state priority of the scheduling object; when the flow of any one scheduling object is detected to be not less than the MIR, switching the scheduling object out of the current scheduling queue, wherein the queue number of each scheduling queue corresponds to the state priority value of the scheduling object;
and scheduling each scheduling object on the scheduling queue according to the absolute priority of each scheduling queue, and performing round-robin scheduling on a plurality of scheduling objects on the same scheduling queue through an RR algorithm according to the corresponding state quota.
An apparatus, the apparatus comprising: the device comprises a configuration unit, a detection unit, an allocation unit and a scheduling unit;
the configuration unit is configured to configure scheduling parameters for each scheduling object according to a scheduling policy, where the scheduling parameters include a committed rate CIR, a maximum rate MIR, a state priority and a state quota, and the state priority includes a first state priority and a second state priority;
the detection unit is used for detecting the flow of each scheduling object;
the allocation unit is used for allocating each scheduling object to a corresponding scheduling queue according to the first state priority of each scheduling object configured by the configuration unit; when the detecting unit detects that the flow of any one of the scheduling objects is greater than the CIR and less than the MIR, the scheduling object is switched to the corresponding scheduling queue according to the second state priority of the scheduling object configured by the configuration unit; when the detecting unit detects that the flow of any one scheduling object is not less than MIR, the scheduling object is switched out of the current scheduling queue, wherein the queue number of each scheduling queue corresponds to the state priority value of the scheduling object;
and the scheduling unit is used for scheduling each scheduling object distributed by the distribution unit on the scheduling queues according to the absolute priority of each scheduling queue, and performing round-robin scheduling on a plurality of scheduling objects on the same scheduling queue according to the corresponding state quotas through an RR algorithm.
To sum up, according to the present application, scheduling parameters are configured for each scheduled object according to a scheduling policy, where the configured scheduling parameters include dual priorities, and according to a relationship between a current flow of the scheduled object and CIRs and MIRs, it is determined that the scheduled object is allocated to a corresponding scheduling queue according to that priority, each scheduled object on the scheduling queue is scheduled according to an absolute priority of each scheduling queue during scheduling, and multiple scheduled objects on the same scheduling queue are scheduled in turn according to a corresponding state quota through an RR algorithm, so that different scheduling policies can be implemented by configuring different scheduling parameters, and scheduling flexibility is improved.
Drawings
FIG. 1 is a flowchart illustrating a queue scheduling method according to an embodiment of the present invention;
FIG. 2 is a diagram illustrating the allocation of scheduling queues to scheduling objects according to scheduling parameters of the scheduling objects;
fig. 3 is a schematic diagram illustrating the allocation situation of each scheduling object in the scheduling queue when the traffic rate of the scheduling object S1 is greater than the CIR;
fig. 4 is a schematic diagram illustrating the allocation situation of each scheduling object in the scheduling queue when the traffic rate of the scheduling object S2 is greater than the CIR;
fig. 5 is a schematic diagram illustrating a distribution situation of each scheduling object in a scheduling queue when a traffic rate of the scheduling object S1 is greater than MIR;
fig. 6 is a schematic structural diagram of an apparatus for scheduling queues according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the embodiments of the present invention will be described in detail with reference to the accompanying drawings.
The embodiment of the invention provides a queue scheduling method, which is used for configuring scheduling parameters for each scheduling object, wherein the scheduling parameters comprise a committed rate (CIR), a maximum rate (MIR), a state priority and a state quota, the state priority comprises a first state priority and a second state priority, and the state quota comprises the first state quota and the second state quota. When the flow of any scheduling object is not more than CIR, the scheduling object is determined to be in the first state, when the flow of any scheduling object is more than CIR and less than MIR, the scheduling object is determined to be in the second state, and when the flow of any scheduling object is not less than MIR, the scheduling object is determined to be in the third state. When any scheduling object is in a first state, the corresponding scheduling parameters are a first state priority and a first state quota, when any scheduling object is in a second state, the corresponding scheduling parameters are a second state priority and a second state quota, and when any scheduling object is in a third state, the corresponding priority and the corresponding state quota are not configured because the scheduling object cannot be distributed to a scheduling queue.
Referring to fig. 1, fig. 1 is a schematic flow chart of a queue scheduling method according to an embodiment of the present invention. The method comprises the following specific steps:
step 101, distributing each scheduling object to a corresponding scheduling queue according to the first state priority of each scheduling object; when the flow of any one scheduling object is detected to be larger than the CIR and smaller than the MIR, switching the scheduling object to a corresponding scheduling queue according to the second state priority of the scheduling object; and when the flow of any one scheduling object is detected to be not less than the MIR, switching the scheduling object out of the current scheduling queue, wherein the queue number of each scheduling queue corresponds to the state priority value of the scheduling object.
When the dispatching objects are distributed in the step, the flow of each dispatching object is smaller than the CIR certainly, and therefore the dispatching objects are all in the first state, the queue number of each dispatching queue corresponds to the state priority value of each dispatching object, if the queue number is 1-10, the setting range of the first priority and the second priority of each dispatching object is 1-10, and therefore each dispatching object is distributed to the corresponding dispatching queue according to the first state priority of each dispatching object. In the embodiment of the invention, the scheduling object with double priorities and double quotas is adopted for scheduling, so that when any scheduling object is in the third state, the scheduling object is switched out of the scheduling queue, and even if no scheduling object can be scheduled on the scheduling queue, the scheduling object switched out of the scheduling queue cannot be scheduled. According to actual needs, scheduling of a scheduling object with multiple priorities and multiple quotas can be configured, and specific implementation is similar to that of a dual-priority dual-quota scheduling, and detailed description is omitted here.
And step 102, scheduling the flow of the scheduling objects on the scheduling queues according to the absolute priority of each scheduling queue, and performing round-robin scheduling on a plurality of scheduling objects on the same scheduling queue according to the corresponding state quotas through an RR algorithm.
In this step, the absolute priority of each scheduling queue may be preset, for example, the smaller the queue number of the scheduling queue is, the larger the absolute priority of the scheduling queue is, or the larger the queue number of the scheduling queue is, the larger the absolute priority of the scheduling queue is, and the priority of each scheduling object also needs to be configured correspondingly according to the priority of the scheduling queue.
The round-robin scheduling of the plurality of scheduling objects on the same scheduling queue according to the corresponding state quotas through the RR algorithm comprises the following steps: when any one of the plurality of scheduling objects is in a first state, the corresponding state quota is a first state quota; and when the dispatching objects are in the second state, the corresponding state quota is the second state quota, and the dispatching objects on the same dispatching queue are subjected to cycle dispatching through an RR algorithm according to the state quota corresponding to the current states of the dispatching objects, wherein when the flow of any one dispatching object is not greater than the CIR, the dispatching object is in the first state, and when the flow of the dispatching object is greater than the CIR and less than the MIR, the dispatching object is in the second state.
In step 101, when the scheduling object is switched to the corresponding scheduling queue according to the second state priority of the scheduling object, the method further includes:
when the overtime time is up, if the scheduling object is in the first state, the scheduling object is switched to a corresponding scheduling queue according to the priority of the first state of the scheduling object; if the dispatching object is in the second state, the overtime timing is carried out on the dispatching object again; and if the scheduling object is in the third state, switching the scheduling object out of the scheduling queue, wherein when the flow of the scheduling object is not less than the MIR, the scheduling object is in the third state.
When the scheduling object is switched out of the scheduling queue in step 101, the method further includes:
when the overtime time is up, if the scheduling object is in the first state, the scheduling object is switched to a corresponding scheduling queue according to the priority of the first state of the scheduling object; if the scheduling object is in the second state, switching the scheduling object to a corresponding scheduling queue according to the priority of the second state of the scheduling object; if the dispatching object is in the third state, the overtime timing is carried out on the dispatching object again.
The setting of the timeout timing can be realized in a token bucket mode during specific realization, and the time required for the second state of the scheduling object to be changed into the first state or the time required for the third state to be changed into the second state is obtained according to the current flow of the scheduling object.
When the scheduling parameter configured by each scheduling object changes, the scheduling queue is allocated to each scheduling object again according to the changed scheduling parameter of each scheduling object and scheduling is carried out. Therefore, when the scheduling strategy is changed, the new scheduling strategy can be met by modifying the scheduling parameters, and the cost is greatly saved.
The following two examples are used to illustrate how to configure the parameters of each scheduling object according to the scheduling policy:
in the first scheduling policy, three different grids of traffic flows are respectively F1, F2 and F3, and now F1 is required to at least guarantee 2M, but F1 is limited not to exceed 5M at most, F2 at least guarantees 3M, the maximum bandwidth of F2 is not limited, F3 at least guarantees 3M, and the maximum bandwidth of F3 is not limited. When F1, F2, F3 are within guaranteed bandwidth, priority F1 is the same as F2 and higher than F3, and the quota ratio of F1 to F2 is 2: 3. when F1, F2, F3 exceed their guaranteed bandwidth, priority F3 is higher than F2 and higher than F1.
According to the above strategy, assuming that the number N of the scheduling queues is 6, assuming that the interface bandwidth is 10M, three scheduling objects are created, which are respectively S1, S2 and S3, and the scheduling parameters of each scheduling object are set as follows:
S1:
CIR =2M, MIR =5M, the first state priority is 0, the second state priority is 5, the first state quota is 2K, K is a constant coefficient, the second state quota is xK, and x represents an arbitrary number.
S2:
CIR =3M, MIR =10M, first state priority is 0, second state priority is 4, first state quota is 3K, and second state quota is xK.
S2:
CIR =3M, MIR =10M, first state priority is 2, second state priority is 3, first state quota is xK, and second state quota is xK.
According to the above arrangement, a scheduling policy can be implemented, and the first state priorities of F1 and F2 are known to be the same from the assumed scheduling policy, so that when the priorities are in the first state, the state quota ratios of F1 and F2 need to be configured, and when other priorities are in the first state, only one service flow is available, and any quota ratio is available.
Scheduling policy two, assuming for some reason that it is now required that the priority of F1, F2, F3 when exceeding the guaranteed bandwidth becomes F1 higher than F2 higher than F3, and the priority of F3 when exceeding its guaranteed bandwidth becomes the same as F2 higher than F1, the parameters of S1, S2 and S3 only need to be adjusted as follows:
S1:
CIR =2M, MIR =5M, first state priority is 0, second state priority is 5, first state quota is xK, and second state quota is xK.
S2:
CIR =3M, MIR =10M, first state priority is 1, second state priority is 3, first state quota is xK, and second state quota is 3K.
S3:
CIR =3M, MIR =10M, first state priority is 2, second state priority is 3, first state quota is xK, and second state quota is 3K.
From the above, when the scheduling policy changes, only the six parameters need to be adjusted to meet the requirements of the new scheduling policy.
The following takes the scheduling policy one as an example, and with reference to the accompanying drawings, details how the embodiments of the present invention implement queue scheduling are described.
At the time of initialization, the scheduled objects S1, S2, and S3 are all in the first state, and therefore, the scheduled object S1 and the scheduled object S2 are allocated to the scheduled queue with queue number 0, and the scheduled object S3 is allocated to the scheduled queue with queue number 2 according to the values 0, and 2 of the priority in the first state of each scheduled object, as shown in fig. 2, fig. 2 is a schematic diagram of allocating the scheduled queue to each scheduled object according to the scheduling parameter of each scheduled object. In fig. 2, each queue is scheduled according to the absolute priority of each scheduling queue, so that the scheduling object on the scheduling queue with the queue number of 0 is scheduled first, two scheduling objects are arranged on the scheduling queue, and RR round-robin scheduling is performed according to the ratio of 2K: 3K.
When it is detected that the traffic rate of the scheduled object S1 is greater than 2M and less than 5M, it is determined that the scheduled object S1 is in the second state, and when the scheduled object S1 is in the second state, the priority of the second state is 5, so that the scheduled object S is switched to a scheduling queue with a queue number of 5, see fig. 3, which is a schematic diagram illustrating the allocation situation of each scheduled object in the scheduling queue when the traffic rate of the scheduled object S1 is greater than CIR. At the same time, the scheduling object S1 is changed from the second state to the first state for overtime timing, and when the overtime time is up, if the scheduling object S1 is in the first state, the scheduling object S1 is switched to the corresponding scheduling queue according to the priority of the first state; if the scheduling object S1 is in the second state, the timeout of the scheduling object S1 is performed again; if the scheduling object S1 is in the third state, the scheduling object S1 is switched out of the scheduling queue, wherein when the traffic of the scheduling object is not less than the MIR, the scheduling object S1 is in the third state. In fig. 3, each queue is scheduled according to the absolute priority of each scheduling queue, so that the scheduling object on the scheduling queue with the queue number of 0 is scheduled first, and if 1 scheduling object exists on the scheduling queue, the scheduling object S2 on the scheduling queue is scheduled.
After a certain time, when it is detected that the traffic of the scheduled object S2 is greater than 3M and less than 10M, it is determined that the scheduled object S2 is in the second state, and according to the fact that the scheduled object S2 is in the second state, the priority of the second state is 4, the scheduled object S2 is switched to a scheduled queue with a queue number of 4, see fig. 4, where fig. 4 is a schematic diagram illustrating the allocation situation of each scheduled object in the scheduled queue when the traffic rate of the scheduled object S2 is greater than CIR. At the same time, the scheduling object S2 is changed from the second state to the first state for overtime timing, and when the overtime time is up, if the scheduling object S2 is in the first state, the scheduling object S2 is switched to the corresponding scheduling queue according to the priority of the first state; if the scheduling object S2 is in the second state, the timeout of the scheduling object S2 is performed again; if the scheduler object S2 is in the third state, the scheduler object S2 is switched out of the scheduler queue. In fig. 4, each queue is scheduled according to the absolute priority of each scheduling queue, so that the scheduling object on the scheduling queue with the queue number of 2 is scheduled first, and the scheduling object on the scheduling queue S3 is scheduled when 1 scheduling object exists on the scheduling queue.
Assuming that the traffic of the scheduling object S1 exceeds 5M at a certain time, S1 is switched out of the scheduling queue, see fig. 5, where fig. 5 is a schematic diagram illustrating the allocation of each scheduling object in the scheduling queue when the traffic rate of the scheduling object S1 is greater than MIR. In fig. 5, each queue is scheduled according to the absolute priority of each scheduling queue, so that the scheduling object on the scheduling queue with the queue number of 2 is scheduled first, and the scheduling object on the scheduling queue S3 is scheduled when 1 scheduling object exists on the scheduling queue. Since the schedule S1 is switched out of the dispatch queue, the object S1 will not be dispatched at this time even though there is no traffic to dispatch the dispatch queue S2 and the dispatch queue S3. At the same time, the scheduling object S1 is changed from the third state to the second state for overtime timing, and when the overtime time is up, if the scheduling object S1 is in the first state, the scheduling object S1 is switched to the corresponding scheduling queue according to the priority of the first state; if the scheduling object S1 is in the second state, switching to the corresponding scheduling queue according to the second state priority of the scheduling object S1; if the scheduling object S1 is in the third state, the timeout is performed again for the scheduling object S1.
In a specific implementation, the first state may be green, the second state may be yellow, and the third state may be red, in order to easily distinguish the states. But also can be realized by other forms or colors according to actual needs.
The embodiment of the invention is based on the same inventive concept, and also provides a device. Referring to fig. 6, fig. 6 is a schematic structural diagram of an apparatus for scheduling queues according to an embodiment of the present invention. The device includes: configuration unit 601, detection unit 602, allocation unit 603, and scheduling unit 604.
A configuring unit 601, configured to configure scheduling parameters for each scheduling object according to the scheduling policy, where the scheduling parameters include CIR, MIR, status priority and status quota, and the status priority includes a first status priority and a second status priority.
A detecting unit 602, configured to detect traffic of each scheduling object.
An allocating unit 603, configured to allocate each scheduling object to a corresponding scheduling queue according to the first state priority of each scheduling object configured by the configuring unit 601; when the detecting unit 602 detects that the flow of any one of the scheduling objects is greater than the CIR and less than the MIR, the scheduling object is switched to the corresponding scheduling queue according to the second state priority of the scheduling object configured by the configuring unit 601; when the detecting unit 602 detects that the traffic of any of the scheduling objects is not less than the MIR, the scheduling object is switched out of the current scheduling queue, where the queue number of each scheduling queue corresponds to the status priority value of the scheduling object.
The scheduling unit 604 is configured to schedule each scheduling object allocated by the allocating unit 603 on the scheduling queue according to the absolute priority of each scheduling queue, and perform round-robin scheduling on multiple scheduling objects on the same scheduling queue according to the corresponding state quotas through an RR algorithm.
Preferably, the first and second liquid crystal films are made of a polymer,
the configuration unit 601, where the configured scheduling parameter includes a first state quota and a second state quota.
A scheduling unit 604, configured to, when any one of the multiple scheduling objects is in a first state, determine a corresponding state quota to be a first state quota; and when the dispatching objects are in the second state, the corresponding state quota is the second state quota, and the dispatching objects on the same dispatching queue are subjected to cycle dispatching through an RR algorithm according to the state quota corresponding to the current states of the dispatching objects, wherein when the flow of any one dispatching object is not greater than the CIR, the dispatching object is in the first state, and when the flow of the dispatching object is greater than the CIR and less than the MIR, the dispatching object is in the second state.
Preferably, the apparatus further comprises: a timing unit 605.
A timing unit 605, configured to perform timeout timing when the second state of the scheduling object is changed to the first state for the scheduling object when the allocating unit 603 switches the scheduling object to the corresponding scheduling queue according to the second state priority of the scheduling object.
The allocating unit 603 is further configured to, when the timeout time expires in the timing unit 605, switch the scheduling object to the corresponding scheduling queue according to the priority of the scheduling object in the first state if the scheduling object is in the first state; if the scheduling object is in the second state, the trigger timing unit 605 performs timeout timing on the scheduling object again; and if the scheduling object is in the third state, switching the scheduling object out of the scheduling queue, wherein when the flow of the scheduling object is not less than the MIR, the scheduling object is in the third state.
Preferably, the first and second liquid crystal films are made of a polymer,
the timing unit 605 is further configured to perform a third state-to-second state timeout timing on the scheduling object when the allocating unit 603 switches the scheduling object out of the scheduling queue.
The allocating unit 603 is further configured to, when the timeout time expires in the timing unit 605, switch the scheduling object to the corresponding scheduling queue according to the priority of the scheduling object in the first state if the scheduling object is in the first state; if the scheduling object is in the second state, switching the scheduling object to a corresponding scheduling queue according to the priority of the second state of the scheduling object; if the scheduling object is in the third state, the trigger timing unit 605 performs timeout on the scheduling object again.
Preferably, the apparatus further comprises: a determination unit 606.
A determining unit 606, configured to determine whether the scheduling parameter configured by each scheduling object configured by the configuring unit changes.
The allocating unit 603 is further configured to, when the determining unit 606 determines that the scheduling parameter configured for each scheduling object changes, reallocate the scheduling queue for each scheduling object according to the changed scheduling parameter of each scheduling object and trigger the scheduling unit 604 to perform scheduling.
The units of the above embodiments may be integrated into one body, or may be separately deployed; may be combined into one unit or further divided into a plurality of sub-units.
To sum up, in the specific embodiment of the present invention, scheduling parameters are configured for each scheduled object according to a scheduling policy, where the configured scheduling parameters include dual priorities, and according to a relationship between current traffic of the scheduled object and CIRs and MIRs, it is determined that the scheduled object is allocated to a corresponding scheduling queue according to that priority, each scheduled object on the scheduling queue is scheduled according to an absolute priority of each scheduling queue during scheduling, and multiple scheduled objects on the same scheduling queue are scheduled in round-robin manner according to corresponding state quotas through an RR algorithm, so that different scheduling policies can be implemented by configuring different scheduling parameters, and scheduling flexibility is improved.
When the scheduling strategy is changed, the requirements of the new scheduling strategy can be met only by adjusting the six parameters, and the new scheduling strategy can be met only by modifying the configured parameters, so that the scheduling flexibility is improved, and the deployment cost is greatly saved.
The above description is only a preferred embodiment of the present invention, and is not intended to limit the scope of the present invention. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (8)

1. A queue scheduling method, wherein scheduling parameters are configured for each scheduling object according to a scheduling policy, wherein the scheduling parameters include a committed rate CIR, a maximum rate MIR, a status priority and a status quota, and the status priority includes a first status priority and a second status priority, the method comprising:
distributing each scheduling object to a corresponding scheduling queue according to the first state priority of each scheduling object; when the flow of any one scheduling object is detected to be larger than the CIR and smaller than the MIR, switching the scheduling object to a corresponding scheduling queue according to the second state priority of the scheduling object; when the flow of any one scheduling object is detected to be not less than the MIR, switching the scheduling object out of the current scheduling queue, wherein the queue number of each scheduling queue corresponds to the state priority value of the scheduling object;
scheduling each scheduling object on the scheduling queue according to the absolute priority of each scheduling queue, and performing round robin scheduling on a plurality of scheduling objects on the same scheduling queue through an RR algorithm according to corresponding state quotas;
the state quota comprises a first state quota and a second state quota;
the performing round-robin scheduling on the plurality of scheduling objects on the same scheduling queue according to the corresponding state quotas through an RR algorithm comprises:
when any one of the plurality of scheduling objects is in a first state, the corresponding state quota is a first state quota; and when the dispatching objects are in the second state, the corresponding state quota is the second state quota, and the dispatching objects on the same dispatching queue are subjected to cycle dispatching through an RR algorithm according to the state quota corresponding to the current states of the dispatching objects, wherein when the flow of any dispatching object is not greater than the CIR, the dispatching object is in the first state, and when the flow of any dispatching object is greater than the CIR and less than the MIR, the dispatching object is in the second state.
2. The method of claim 1, wherein when switching the scheduling object to the corresponding scheduling queue according to the second status priority of the scheduling object, the method further comprises:
when the overtime time is up, if the scheduling object is in the first state, the scheduling object is switched to a corresponding scheduling queue according to the priority of the first state of the scheduling object; if the dispatching object is in the second state, the overtime timing is carried out on the dispatching object again; and if the scheduling object is in the third state, switching the scheduling object out of the scheduling queue, wherein when the flow of the scheduling object is not less than the MIR, the scheduling object is in the third state.
3. The method of claim 2, wherein when switching the scheduling object out of the scheduling queue, the method further comprises:
when the overtime time is up, if the scheduling object is in the first state, the scheduling object is switched to a corresponding scheduling queue according to the priority of the first state of the scheduling object; if the scheduling object is in the second state, switching the scheduling object to a corresponding scheduling queue according to the priority of the second state of the scheduling object; if the dispatching object is in the third state, the overtime timing is carried out on the dispatching object again.
4. A method according to any one of claims 1-3, characterized in that the method further comprises:
when the scheduling parameter configured by each scheduling object changes, the scheduling queue is allocated to each scheduling object again according to the changed scheduling parameter of each scheduling object and scheduling is carried out.
5. An apparatus, characterized in that the apparatus comprises: the device comprises a configuration unit, a detection unit, an allocation unit and a scheduling unit;
the configuration unit is configured to configure scheduling parameters for each scheduling object according to a scheduling policy, where the scheduling parameters include a committed rate CIR, a maximum rate MIR, a state priority and a state quota, and the state priority includes a first state priority and a second state priority;
the detection unit is used for detecting the flow of each scheduling object;
the allocation unit is used for allocating each scheduling object to a corresponding scheduling queue according to the first state priority of each scheduling object configured by the configuration unit; when the detecting unit detects that the flow of any one of the scheduling objects is greater than the CIR and less than the MIR, the scheduling object is switched to the corresponding scheduling queue according to the second state priority of the scheduling object configured by the configuration unit; when the detecting unit detects that the flow of any one scheduling object is not less than MIR, the scheduling object is switched out of the current scheduling queue, wherein the queue number of each scheduling queue corresponds to the state priority value of the scheduling object;
the dispatching unit is used for dispatching each dispatching object distributed by the distributing unit on the dispatching queues according to the absolute priority of each dispatching queue, and performing round-robin dispatching on a plurality of dispatching objects on the same dispatching queue through RR algorithm according to corresponding state quotas
Wherein,
the configuration unit is configured to configure the scheduling parameter, where the state quota includes a first state quota and a second state quota;
the scheduling unit is configured to, when any one of the multiple scheduling objects is in a first state, set a corresponding state quota to be a first state quota; and when the dispatching objects are in the second state, the corresponding state quota is the second state quota, and the dispatching objects on the same dispatching queue are subjected to cycle dispatching through an RR algorithm according to the state quota corresponding to the current states of the dispatching objects, wherein when the flow of any one dispatching object is not greater than the CIR, the dispatching object is in the first state, and when the flow of the dispatching object is greater than the CIR and less than the MIR, the dispatching object is in the second state.
6. The apparatus of claim 5, further comprising: a timing unit;
the timing unit is used for carrying out second state change to first state overtime timing on the scheduling object when the distribution unit switches the scheduling object to the corresponding scheduling queue according to the second state priority of the scheduling object;
the allocation unit is further configured to switch the scheduling object to a corresponding scheduling queue according to the priority of the scheduling object in the first state if the scheduling object is in the first state when the timing unit times out; if the scheduling object is in the second state, triggering the timing unit to perform timeout timing on the scheduling object again; and if the scheduling object is in the third state, switching the scheduling object out of the scheduling queue, wherein when the flow of the scheduling object is not less than the MIR, the scheduling object is in the third state.
7. The apparatus of claim 6,
the timing unit is further configured to perform timeout timing when the scheduling object is switched out of the scheduling queue by the allocating unit, where the third state of the scheduling object is changed into the second state;
the allocation unit is further configured to switch the scheduling object to a corresponding scheduling queue according to the priority of the scheduling object in the first state if the scheduling object is in the first state when the timing unit times out; if the scheduling object is in the second state, switching the scheduling object to a corresponding scheduling queue according to the priority of the second state of the scheduling object; and if the scheduling object is in the third state, triggering the timing unit to perform timeout timing on the scheduling object again.
8. The apparatus of any one of claims 5-7, further comprising: a determination unit;
the determining unit is configured to determine whether the scheduling parameter configured by each scheduling object configured by the configuring unit changes;
the allocating unit is further configured to, when the determining unit determines that the scheduling parameter configured by each scheduling object changes, reallocate the scheduling queue for each scheduling object according to the changed scheduling parameter of each scheduling object and trigger the scheduling unit to perform scheduling.
CN201210217512.4A 2012-06-28 2012-06-28 A kind of array dispatching method and device Active CN102694740B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210217512.4A CN102694740B (en) 2012-06-28 2012-06-28 A kind of array dispatching method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210217512.4A CN102694740B (en) 2012-06-28 2012-06-28 A kind of array dispatching method and device

Publications (2)

Publication Number Publication Date
CN102694740A CN102694740A (en) 2012-09-26
CN102694740B true CN102694740B (en) 2015-10-28

Family

ID=46860029

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210217512.4A Active CN102694740B (en) 2012-06-28 2012-06-28 A kind of array dispatching method and device

Country Status (1)

Country Link
CN (1) CN102694740B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104917692B (en) * 2015-06-26 2018-05-11 新华三技术有限公司 A kind of method and apparatus for distributing token
CN109408208B (en) * 2018-09-21 2022-04-01 深圳华大北斗科技股份有限公司 Multitasking method, device and system of navigation chip and storage medium
CN118509378A (en) * 2023-02-06 2024-08-16 中兴通讯股份有限公司 Message processing method, device and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6862265B1 (en) * 2000-04-13 2005-03-01 Advanced Micro Devices, Inc. Weighted fair queuing approximation in a network switch using weighted round robin and token bucket filter
US7499398B2 (en) * 2003-04-16 2009-03-03 International Business Machines Corporation Method and system for oversubscribing bandwidth in a communications network
CN101692648A (en) * 2009-08-14 2010-04-07 中兴通讯股份有限公司 Method and system for queue scheduling
CN101938403A (en) * 2009-06-30 2011-01-05 中国电信股份有限公司 Assurance method of multi-user and multi-service quality of service and service access control point
CN102036131A (en) * 2009-09-28 2011-04-27 中兴通讯股份有限公司 End-to-end QoS (Quality of Service) control method and device based on GPON (Gigabit Passive Optical Network) system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6862265B1 (en) * 2000-04-13 2005-03-01 Advanced Micro Devices, Inc. Weighted fair queuing approximation in a network switch using weighted round robin and token bucket filter
US7499398B2 (en) * 2003-04-16 2009-03-03 International Business Machines Corporation Method and system for oversubscribing bandwidth in a communications network
CN101938403A (en) * 2009-06-30 2011-01-05 中国电信股份有限公司 Assurance method of multi-user and multi-service quality of service and service access control point
CN101692648A (en) * 2009-08-14 2010-04-07 中兴通讯股份有限公司 Method and system for queue scheduling
CN102036131A (en) * 2009-09-28 2011-04-27 中兴通讯股份有限公司 End-to-end QoS (Quality of Service) control method and device based on GPON (Gigabit Passive Optical Network) system

Also Published As

Publication number Publication date
CN102694740A (en) 2012-09-26

Similar Documents

Publication Publication Date Title
EP1471700B1 (en) Method and device for assigning packet queue priority
EP3410641B1 (en) Network-traffic control method and network device thereof
US12368663B2 (en) Shaping outgoing traffic of network packets in a network management system
CN101557340B (en) Method for realizing multilevel queue scheduling in data network and device
CN106559354A (en) A kind of method and device for preventing CPU packet congestions
CN101436987A (en) Method and apparatus for scheduling and configuring QoS service
EP3949299A1 (en) Quality of service in virtual service networks
CN107579921B (en) Flow control method and device
CN102694740B (en) A kind of array dispatching method and device
CN104272693A (en) Allocate network bandwidth
US7843825B2 (en) Method and system for packet rate shaping
CN105490967A (en) Bandwidth allocation method and device
CN108156093A (en) Data transmission method and system are applied suitable for low bandwidth Weak link environment more
CN105577563B (en) flow management method
EP3661139B1 (en) Network device
CN102769566B (en) A kind of Multi-stage scheduling system configuration, variation and device
US20150131446A1 (en) Enabling virtual queues with qos and pfc support and strict priority scheduling
CN100370787C (en) A data packet scheduling method in packet service
CN101616096A (en) Array dispatching method and device
US8854967B2 (en) Per-class scheduling with rate limiting
US20070086483A1 (en) Method and system for policing binary flows in a switching device
CN101061681B (en) Communication time fair transmission management without explicit traffic specifications for wireless networks
CN105721339B (en) Method and device for configuring service bandwidth
WO2013160818A2 (en) Duty-cycle control in wireless network
CN106487713A (en) A kind of service quality multiplexing method and device

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