CN2884709Y - Differential weighting queuing and sheduling parts on network processor - Google Patents

Differential weighting queuing and sheduling parts on network processor Download PDF

Info

Publication number
CN2884709Y
CN2884709Y CNU2005201146897U CN200520114689U CN2884709Y CN 2884709 Y CN2884709 Y CN 2884709Y CN U2005201146897 U CNU2005201146897 U CN U2005201146897U CN 200520114689 U CN200520114689 U CN 200520114689U CN 2884709 Y CN2884709 Y CN 2884709Y
Authority
CN
China
Prior art keywords
priority
queue
formation
result
candidate
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 - Lifetime
Application number
CNU2005201146897U
Other languages
Chinese (zh)
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.)
Institute of Computing Technology of CAS
Original Assignee
Institute of Computing Technology of CAS
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 Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CNU2005201146897U priority Critical patent/CN2884709Y/en
Application granted granted Critical
Publication of CN2884709Y publication Critical patent/CN2884709Y/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Abstract

The utility model discloses a margin weight queue dispatching apparatus, comprising: priority buffer register, used for store the calculating results of priority; queue transmission control device, used for transmit frames in dispatching queue; priority calculating device, used for calculate priority; queue selection and arbitration device, based on priority and first frame length of queue to select and dispatch queue; it further comprises priority correctional parameter calculation device that is used for the calculation of priority correctional parameter and candidate queue buffer register that is used for save candidate queue number. The utility model has advantages of rather good equality, restricting burst transmission in network, and low operating complexity.

Description

Difference weight queue scheduler on a kind of network processing unit
Technical field
The utility model relates to data communication technology field, the difference weight queue scheduler on particularly a kind of network processing unit.
Background technology
The growth at full speed of the network bandwidth and network demand for services requires network core device that the higher transmission bandwidth and the packet transaction ability of deep layer more can be provided.Network processing unit is replacing traditional GPP (general processor), ASIC (application-specific integrated circuit (ASIC)) and FPGA implementations such as (field programmable gate array) owing to have high speed processing performance and high flexible concurrently, becomes the core of next generation network equipment.This just requires network processing unit to provide and serves controlled function preferably, and particularly in order to satisfy the requirement of ever-increasing Differentiated Services, used dispatching method must have preferable performance.On the other hand, owing to be based on the design of hardware, used dispatching method also must have lower implementation complexity.
Fairness is to weigh the most important index of dispatching method performance, owing to there is bandwidth contention, the network switching equipment must reasonably carry out assignment of traffic according to the type of Business Stream, so that high-quality Differentiated Services to be provided.In the existing dispatching method, as FCFS (service earlier first), BR (step-by-step circulation wheel changes) and FQ methods such as (fair-queueings) early put forward, and these dispatching methods all can't satisfy the requirement of network Differentiated Services.WRR (changeing by weight circulation wheel), DRR (deficiency circulation wheel changes), SRR (superfluous circulation wheel changes) and ERR methods such as (the circulation wheel change flexibly) are the dispatching methods that changes based on the circulation wheel that a class can be used for Differentiated Services, their work complexity is lower, but its dynamic dispatching performance, fair performance and delay performance all are subjected to certain restriction.WFQ (Weighted Fair Queuing), WF 2Q methods such as (Weighted Fair Queuings under the worst case) is the dispatching method based on priority criteria that a class can be used for Differentiated Services, and fairness is better, particularly WF 2Q considers bursting problem, under worst case, still has fairness preferably.But owing to these class methods need be calculated virtual time usually and flow ordering, as WF 2Q also will compare with corresponding GPS (common treatment is shared) system, and the work complexity is higher, and realizes difficulty.Characteristics just because of existing various dispatching methods can not possess high-performance simultaneously, easily realize satisfy the specific (special) requirements that network processing unit designs so need to design a kind of new dispatching method.
Summary of the invention
The purpose of this utility model is to overcome existing dispatching method work complexity height, realizes the shortcoming of difficulty, a kind of better fairness that has is provided, and can suppresses the dispatching method and the corresponding dispatching device of network burst transfer phenomenon.
To achieve these goals, the utility model provides the scheduler of the difference weight queue on a kind of network processing unit, comprise: the priority buffer register 3 that is used to preserve priority result of calculation, formation transmission control device 6 with the frame that is used for sending scheduling queue, also comprise the priority calculation element 1 that is used to calculate queue priority, arbitration device 5 is selected in formation; Priority calculation element 1 is according to the first frame length of stored each formation in the queue management parts of network processing unit and the transmission bandwidth ratio of each formation, calculate the priority of formation, the result of calculation of priority sends in the priority buffer register 3, formation selects arbitration device 5 to obtain the priority of each formation from priority buffer register 3, first frame length in conjunction with each formation, dispatching principle according to the difference weight queue dispatching method, select a formation as scheduling queue, and the result that will select sends in the formation transmission control device 6, the result who selects to be fed back in the priority calculation element 1 simultaneously, use when calculating for next priority; Formation transmission control device 6 send the frame in the scheduling queue, and the frame that notification queue management component will dispatch is deleted from respective queue according to the arbitration result of formation selection arbitration device 5.
In the technique scheme, described priority buffer register 3 is made up of activity queue's counter register and priority result register, activity queue's counter register is deposited the number of queues of each scheduling, and the priority result register is then deposited the result of calculation of queue priority.
Also comprise being used for the priority corrected parameter calculation element 2 that the priority corrected parameter calculates, be used to preserve the candidate queue buffer register 4 of candidate queue number; Priority calculation element 1 calculates the priority of formation according to the first frame length of stored each formation in the queue management parts of network processing unit and the transmission bandwidth ratio of each formation, and the result of calculation of priority sends in the priority buffer register 3; Priority corrected parameter calculation element 2 is according to the frame length of each formation, and the calculating priority level corrected parameter by priority corrected parameter decision candidate queue, and number sends to candidate queue in the candidate queue buffer register 4; Formation selects arbitration device 5 to obtain candidate queue, and the priority of candidate queue by candidate queue buffer register 4, priority buffer register 3, first frame length in conjunction with candidate queue, dispatching principle according to the difference weight queue dispatching method, select a formation as scheduling queue, and the result that will select sends in the formation transmission control device 6, the result who selects to be fed back in priority calculation element 1 and the priority corrected parameter calculation element 2 simultaneously, use when calculating for next priority; Formation transmission control device 6 send the frame in the scheduling queue, and the frame that notification queue management component will dispatch is deleted from respective queue according to the arbitration result of formation selection arbitration device 5.
Described candidate queue buffer register 4 is made up of candidate queue counter register and candidate queue register, and the candidate queue counter register is deposited the number of each scheduling candidate queue, and candidate queue number then leaves in the candidate queue register successively.
Advantage of the present utility model is:
1, has fairness preferably.
2, can suppress the generation of the burst transfer phenomenon of network.
3, has lower work complexity.
Description of drawings
Fig. 1 is the schematic diagram that utilizes the embodiment that the difference weight queue dispatching method works as dispatcher to flow queue;
The schematic diagram of the embodiment that Fig. 2 works as dispatcher to flow queue for the difference weight queue dispatching method that utilizes band priority corrected parameter;
Fig. 3 is the schematic diagram that utilizes difference weight queue dispatching method inhibition network burst phenomenon, wherein:
Fig. 3 (a) is the schematic diagram of the length of each flow queue;
Fig. 3 (b) is when not adopting the dispatching method of priority corrected parameter, the dispatching sequence of the frame in each formation;
Fig. 3 (c) is when adopting the dispatching method of priority corrected parameter, the dispatching sequence of the frame in each formation;
Fig. 4 is the structure chart of a kind of implementation of the difference weight queue dispatching device that is used for network processing unit of the present utility model;
Fig. 5 is the structure chart of the another kind of implementation of the difference weight queue scheduler that is used for network processing unit of the present utility model;
Fig. 6 (a) is the schematic diagram of priority buffer register;
Fig. 6 (b) is the schematic diagram of candidate queue buffer register;
Fig. 7 is the operational flowchart that is used for the difference weight queue scheduler of network processing unit of the present utility model;
Fig. 8 is the flow chart of difference weight queue dispatching method.
The drawing explanation:
1 priority calculation element, 2 priority corrected parameter calculation elements
3 priority buffer register groups, 4 candidate queue buffer registers
Arbitration device 6 formation transmission control devices are selected in 5 formations
Embodiment
The utility model is described in further detail below in conjunction with the drawings and specific embodiments.
Before difference weight queue dispatching method of the present utility model is elaborated, at first employed main calculating parameter in this method is described.
R: the total transmission speed of system;
r i: distribute to the transmission speed of flow queue i, ∑ r i=r (i=0,1,2...n-1, n are the flow queue number, below identical);
L i k: during the k time scheduling, the length of the first frame of flow queue i;
s k: the k time the scheduling, the flow queue that is scheduled number;
P i: the shared total transmission bandwidth ratio of flow queue i, P i = r 1 r ;
D i k: during the k time scheduling, flow queue i is according to the transmission speed of distributing, and desired first frame is sent completely time factor (this factor promptly is sent completely the time divided by r), D i k = L 1 k P 1 ;
R i k: the k time scheduling, the priority of flow queue i.
Difference weight queue dispatching method of the present utility model may further comprise the steps:
The priority of each formation of scheduling is waited in step 10, calculating.Use R i kExpression priority, the computational methods of priority as shown in Equation (1).
R i 1 = D i 1
R i k + 1 = { R i k - L sk k + D i k + 1 ( S k = i ) R i k - L sk k ( S k ≠ i ) - - - ( 1 )
In addition, when a formation became activity queue's (non-empty queue) by non-activity queue (empty queue), its priority, had promptly for flow queue i for the first frame of stream i expectation is sent completely time factor
R i k + 1 = D i k + 1
Step 20, from candidate queue the selection scheduling object.The dispatching principle of difference weight queue dispatching method of the present utility model is: select the formation of priority minimum, if there is the priority of a plurality of formations identical, and value all is minimum, then select the formation of first frame length minimum, select the formation of queue number minimum if priority and first frame length all equate.According to above-mentioned dispatching principle, select the formation that to dispatch.
Step 30, send scheduling result, and transmit frame is deleted from formation, return step 10 then and dispatch next time.
With reference to the accompanying drawings 1, embodiment 1 is an application example that utilizes above-mentioned dispatching algorithm to dispatch according to priority.3 formations to be scheduled are arranged, be respectively No. 0, No. 1 and No. 2 formations, the transmission bandwidth ratio that No. 0 formation distributed is that transmission bandwidth ratio that 0.5, No. 1 formation distributed is that the transmission bandwidth ratio that 0.2, No. 2 formation distributed is 0.3.Above-mentioned transmission bandwidth is than not changing in scheduling process.In No. 0 formation, the length of first frame is that the first frame length of 5, No. 1 formations is that the first frame length of 2, No. 2 formations is 3.According to the priority computational methods in the formula (1), when dispatching for the first time, R i 1 = D i 1 , and D i 1 = L i 1 P i , So the priority of No. 0 formation is 5/0.5=10, the priority of No. 1 formation is 2/0.2=10, and the priority of No. 2 formations is 3/0.3=10.The priority of each formation is identical, therefore, compares the first frame length of individual queue.The first frame length of No. 1 formation is 2, and therefore minimum is called the first frame of No. 1 formation, and this frame is deleted from formation when dispatching for the first time, enters scheduling for the second time then.When dispatching for the second time, the priority of each formation need recomputate.When calculating priority level, select the latter half of formula (1) for use.To No. 0 formation, therefore the formation of being called when this formation is not last scheduled, selects computing formula for use R i k + 1 = R i k - L Sk k ( S k ≠ i ) . Be scheduled when the deducting last scheduled first frame length of formation of queue priority during just with last scheduled, the priority of formation in the time of promptly can obtaining this scheduling.The priority of No. 0 formation when dispatching for the second time is 10-2=8.Same, the priority that can obtain No. 2 formations is 10-2=8.Because No. 1 formation is the formation of scheduling when dispatching for the first time, the priority computational methods of this formation are different.Its computing formula is R i k + 1 = R i k - L Sk k + D i k + 1 ( S k = i ) . Be scheduled when the deducting last scheduled first frame length of formation of queue priority during just with last scheduled, when adding this scheduling, the first frame of flow queue i expectation is sent completely time factor, the priority of formation in the time of promptly can obtaining this scheduling.The priority of No. 1 formation is 10-2+2/0.2=18.Obtain after the priority of 3 formations,, at first select the formation of priority minimum according to dispatching principle.Obviously, No. 0 formation is identical with the priority of No. 2 formations, more first frame length.The first frame length of No. 2 formations is less, therefore, when dispatching for the second time, calls the first frame of No. 2 formations, and this frame is deleted from formation, enters scheduling for the third time then.The rest may be inferred, can realize the scheduling to other frames in the formation.
Difference weight queue dispatching method of the present utility model described above has been considered allocated bandwidth and frame length, has certain fairness, is suitable for packet switching.This dispatching method has fair performance and the delay performance near WFQ, has suitably reduced the computation complexity of virtual time simultaneously, and it also takes all factors into consideration all activity queue's states, has the better dynamic scheduling performance.But should see that also there is certain defective in this dispatching method, produce burst phenomenon possibly.Described burst phenomenon mainly is meant, reason owing to dispatching algorithm, the network processing unit certain port may be concentrated at set intervals and send a secondary data, and all can concentrate the transmission mass data at every turn, flow increases suddenly in certain port a period of time thereby cause, and other a period of time does not have or has only seldom flow, and this phenomenon can cause the inefficacy of network congestion control algolithm, so should avoid as far as possible.
In order to suppress the generation of burst phenomenon, difference weight queue dispatching method of the present utility model can also increase the priority corrected parameter to realize the correction to priority.In the utility model, use V i kExpression priority corrected parameter, when it represents to dispatch for the k time, the difference of the medium frame to be scheduled of flow queue i delivery time and current time in corresponding gps system.Utilize this priority corrected parameter can make the delivery time of the first frame of each flow queue be no earlier than the delivery time of frame in the corresponding gps system.
The difference weight queue dispatching method of band priority corrected parameter may further comprise the steps:
Step 40: the priority and the priority corrected parameter that calculate each formation of waiting for scheduling.The computational methods of priority are identical with step 10, the computational methods of priority corrected parameter such as formula (2).
V i 1 = 0
V i k + 1 = { V i k + D i k - L i k ( S k = i ) V i k - L Sk k ( S k ≠ i ) - - - ( 2 )
This computing formula is represented: when dispatching for the first time, the priority corrected parameter of all candidate queue all is 0.In other scheduling, if a formation is the formation of being dispatched when last scheduled, then the priority corrected parameter of this formation is that the priority corrected parameter of this formation when last scheduled deducts the first frame length of this formation when last scheduled, and then when adding last scheduled, the first frame of flow queue i expectation is sent completely time factor (promptly V i k + 1 = V i k - L i k + D i k ) ; If the formation that a formation is dispatched when being not last scheduled, then the priority corrected parameter of this formation be the priority corrected parameter of this formation when last scheduled time that deducts last scheduled institute's scheduling queue first frame length ( V i k + 1 = V i k - L Sk k )。
Step 50: selection scheduling object from candidate queue.After the priority corrected parameter was arranged, the dispatching principle of formation also changed to some extent.Whether the dispatching principle of the difference weight queue dispatching method of band priority corrected parameter is: at first search and exist the priority corrected parameter to be less than or equal to zero flow queue, if exist, with the candidate queue of these flow queues as current scheduling, from candidate queue, select the formation of priority minimum then, if the priority minimum of a plurality of formations is arranged, then selects the shortest formation of first frame length; If do not exist the priority corrected parameter to be less than or equal to zero flow queue, then with all formations all as candidate queue, and then select the minimum and the shortest formation of first frame length of priority; The result that above-mentioned selection obtains is exactly the formation that will dispatch.
Step 60, send scheduling result, and transmit frame is deleted from formation, return step 40 then and dispatch next time.
With reference to the accompanying drawings 2, embodiment 2 is on the basis of embodiment 1, the difference weight queue dispatching method is increased an application example of priority corrected parameter.Identical with embodiment 1, in this embodiment, 3 formations to be scheduled are arranged, be respectively No. 0, No. 1 and No. 2 formations, the transmission bandwidth ratio that No. 0 formation distributed is that transmission bandwidth ratio that 0.5, No. 1 formation distributed is that the transmission bandwidth ratio that 0.2, No. 2 formation distributed is 0.3.When dispatching for the first time, the priority of No. 0, No. 1 and No. 2 formation all is 10, and according to formula (2), the priority corrected parameter of No. 0, No. 1 and No. 2 formation all is 0, so select formation after 0,1, No. 3 formation all belongs to.Because the priority of three formations is 10,,, select No. 1 the shortest formation of frame length again as the object of dispatching for the first time according to scheduling rule at this moment because the first frame length of No. 1 formation is the shortest.When dispatching for the second time, according to formula V i k + 1 = V i k - L Sk k ( S k ≠ i ) , The priority corrected parameter of No. 0 formation is 0-2=-2.Same, the priority corrected parameter of No. 2 formations is-2.No. 1 formation is the object of dispatching for the first time, and the computing formula of the priority corrected parameter of this formation is V i k + 1 = V i k - L i k + D i k , So the priority corrected parameter of No. 1 formation is 0-2+2/0.2=8.Because the priority corrected parameter of 0, No. 2 formation is a negative, so these two formations are candidate queue, compare the priority and the first frame length of these two formations again, last, when dispatching for the second time, call No. 2 formations.When dispatching for the third time, because the priority corrected parameter that has only No. 0 formation is smaller or equal to 0, so directly select No. 0 formation as scheduler object.The rest may be inferred, can realize the scheduling of other frames in the formation.
By the description of embodiment 2, a formation is after being scheduled, and the priority corrected parameter of this formation can become greatly, is unfavorable for that this formation is selected when dispatching next time, therefore the burst phenomenon in the Network Transmission is had the obvious suppression effect.Be with the effect of the difference weight queue dispatching method of priority corrected parameter to describe below in conjunction with 3 pairs in accompanying drawing.
Be diadic in network traffics and distribute under the situation of (Two-value Distribution), when the average length of frame near the time, use general dispatching algorithm that burst phenomenon takes place easily.As in the example shown in Fig. 3 (a), the length of supposing each flow queue frame is identical, when the shared bandwidth ratio of stream S1 is 0.5, other flows shared bandwidth ratio is 0.1 o'clock, if do not use the priority corrected parameter, only to dispatch according to the base priority scheduling rule of difference weight queue dispatching method, the sending order of each flow queue frame is shown in Fig. 3 (b), wherein S1 fails to be convened for lack of a quorum to concentrate at set intervals and sends once, thereby causes burst phenomenon.In the difference weight queue dispatching method, by utilizing the priority corrected parameter dispatching sequence is regulated, can suitably suppress burst phenomenon, accompanying drawing 3 (c) is to use the scheduling result behind the priority corrected parameter, can see, compare with the transmission result shown in Fig. 3 (b), send more smoothly, reduced the possibility of port burst.
In addition, the difference weight queue dispatching method also has lower work complexity.When using the difference weight queue dispatching method, the afterbody insertion that frame is joined the team and only need be carried out chained list, its computation complexity is O (1).Frame goes out team need carry out operations such as priority, the calculating of priority corrected parameter, scheduling queue selection, chain list deletion.The calculating of priority and priority corrected parameter and the time complexity that frame is needed O (1) from the chain list deletion, and the selection of scheduling queue is owing to will compare, its max calculation time complexity is O (logn) (n is the maximum number of flow queue), so the work complexity of whole difference weight queue dispatching method is O (logn).In addition, the priority of difference weight queue dispatching method and delay parameter calculate only needs simple plus and minus calculation, frame length L i kOwing to be recorded in the relevant frame information structure, can directly obtain the bandwidth ratio P of each stream iGenerally be provided with when initialization, and generally no longer change in running, so the difference weight queue dispatching method does not have special complicated parameter calculation, the realization of method is very simple.
Corresponding with difference weight queue dispatching method of the present utility model is the difference weight queue scheduler, as shown in Figure 4, for the corresponding difference weight queue scheduler of difference weight queue dispatching method of the present utility model.In Fig. 4, the part in the square frame is a difference weight queue dispatching device of the present utility model, and the outer queue management parts of square frame are arranged in network processing unit.
This dispatching device comprises: arbitration device 5 and formation transmission control device 6 are selected in priority calculation element 1, priority buffer register group 3, formation.Priority calculation element 1 selects arbitration device 5 to link to each other with priority buffer register 3 with queue management parts, formation, is used for the calculating of queue priority; Priority buffer register 3 selects arbitration device 5 to link to each other with priority calculation element 1 and formation, is used to preserve the priority result calculated; The priority result of calculation of arbitration device 5 according to current queue queue is selected in formation, according to the dispatching principle of difference weight queue dispatching method, selects a formation as scheduling queue; Formation transmission control device 6 send the frame in the scheduling queue, and the frame that notification queue management component will dispatch is deleted from respective queue according to the arbitration result of formation selection arbitration device 5.
Above-mentioned difference weight queue scheduler and aforesaid not corresponding with the dispatching method of priority corrected parameter, in this enforcement, a kind of difference weight queue dispatching method with the priority corrected parameter also is provided, as shown in Figure 5, for the corresponding difference weight queue scheduler of the difference weight queue dispatching method of band priority corrected parameter of the present utility model.In Fig. 5, the part in the square frame is a difference weight queue scheduler of the present utility model, and the outer queue management parts of square frame are arranged in network processing unit.
This scheduler comprises: arbitration device 5 and formation transmission control device 6 are selected in priority calculation element 1, priority corrected parameter calculation element 2, priority buffer register group 3, candidate queue buffer register 4, formation.
The function of various piece and mutual annexation are as follows in these parts:
Priority calculation element 1 selects arbitration device 5 to link to each other with priority buffer register 3 with queue management parts, formation, priority calculation element 1 obtains the information of the first frame of all queue queues by the interface with the queue management parts, by selecting the interface of arbitration device 5 to obtain the arbitration result of each scheduling with formation, and carry out the calculating of each queue priority according to the formula (1) of difference weight queue dispatching method, each result calculated is cached in the priority buffer register 3, and is responsible for selecting arbitration device 5 to send requests for arbitration to formation.
Priority corrected parameter calculation element 2 and queue management parts, formation selects arbitration device 5 to link to each other with candidate queue buffer register 4, priority corrected parameter calculation element 2 is obtained the information of the first frame of queue queue by the queue management parts, the arbitration result of selecting arbitration device 5 at every turn to be dispatched by formation, information according to the first frame of queue queue, the arbitration result of each scheduling and the formula (2) of difference weight queue dispatching method carry out the calculating of priority corrected parameter, if exist the priority corrected parameter smaller or equal to 0 formation, then with these formations as candidate queue, otherwise with all formations as candidate queue.Candidate result is stored in the candidate queue buffer register 4, and priority corrected parameter calculation element 2 also is responsible for and is responsible for selecting arbitration device 5 to send requests for arbitration to formation simultaneously.
Priority buffer register 3 selects arbitration device 5 to link to each other with priority calculation element 1 and formation, by the result of calculation of priority calculation element 1 resulting priority, it mainly was made up of activity queue's counter register and a plurality of priority result register when priority buffer register 3 was responsible for depositing each the scheduling.Shown in Fig. 5 (a), activity queue's counter register is deposited the number of queues of each scheduling, and the priority result register is then deposited the result of calculation of respective queue priority, and for example No. 0 priority result register correspondence the priority result of calculation of No. 0 flow queue.Formation selects arbitration device 5 to obtain dispatching priority by visiting these registers, uses for arbitration.
Candidate queue buffer register 4 selects arbitration device 5 to link to each other with priority corrected parameter calculation element 2 and formation, by priority corrected parameter calculation element 2 resulting candidate queue, it mainly was made up of candidate queue counter register and a plurality of candidate queue register when candidate queue buffer register 4 was responsible for depositing each scheduling.Shown in Fig. 5 (b), the candidate queue counter register is deposited the number of each scheduling candidate queue, candidate queue number then leaves in the candidate queue register successively, and formation selects arbitration device 5 to obtain candidate queue by visiting these registers, for the arbitration use.
The priority result of calculation of arbitration device 5 according to current queue queue is selected in formation, according to the dispatching principle of difference weight queue dispatching method, selects a formation as scheduling queue from candidate queue.It adopts the quicksort method usually in the candidate queue set, select the shortest formation of first frame length in the formation of priority minimum as scheduler object, the result of each arbitration will issue priority calculation element 1, priority corrected parameter calculation element 2 and formation transmission control device 6 simultaneously, and the above two will carry out the calculating of new priority and priority corrected parameter according to arbitration result.
Formation transmission control device 6 is selected arbitration device 5 resulting arbitration result according to formation, get the relevant parameter of scheduler object (frame), giving the next stage transmit block by transmit port with frame ranks, when sending the scheduling frame information, it also is responsible for the frame that notification queue management component will dispatch and deletes from respective queue.
Said apparatus can be by network processing unit is obtained as circuit design, and according to the described function of said apparatus, those of ordinary skill in the art need not creative work can obtain said apparatus.
When work, the component devices of each difference weight queue scheduler is concurrent working, concrete operations step to each main device is described below, wherein to priority buffer register and candidate queue operation registers owing to be basic register read write operation, do not repeat them here.
As shown in Figure 6, the main operational steps of priority calculating and priority corrected parameter calculation element is as follows,
(1) at initial phase, this device is provided with the value of initialization priority and priority corrected parameter, and the arbitration result available flag is set.
(2) if arbitration result can with continue, otherwise wait for.
(3) the unavailable mark of arbitration result is set, reads queued frame information, calculating priority level and priority corrected parameter, and determine candidate queue according to the result.
(4) priority result of calculation and candidate queue number are write buffer register.
(5) send requests for arbitration, wait for arbitrating and finish.
(6), otherwise continue wait if receiving arbitration replys then continues.
(7) the arbitration result serviceable indicia is set and returns (2), carry out next view degree and calculate
Formation selects the main operational steps of arbitration device as follows
(1) initialization enters requests for arbitration loitering phase (2).
(2), otherwise wait for if requests for arbitration is arranged then continue.
(3) obtain the candidate queue set from candidate's buffer register, carry out priority ratio, determine scheduling queue.
(4) reply and arbitration result to priority calculating and priority corrected parameter calculation element transmission arbitration,, also be responsible for simultaneously asking and arbitration result to the transmission of formation transmission control device so that they can carry out the calculating of next view degree.
(5), otherwise continue to wait for if receiving to send replys then return (2).
The main operational steps of formation transmission control device is as follows
(1) initialization enters and sends request loitering phase (2).
(2), otherwise wait for if the request of transmission is arranged then continuation.
(3) send the information of scheduling frame to the next stage transmit block.
(4), then select arbitration device to send answer signal and return (2), otherwise continue to send to formation if the scheduling frame information has sent to finish.

Claims (4)

1, the difference weight queue scheduler on a kind of network processing unit, comprise: the priority buffer register (3) that is used to preserve priority result of calculation, formation transmission control device (6) with the frame that is used for sending scheduling queue, it is characterized in that, also comprise the priority calculation element (1) that is used to calculate queue priority, arbitration device (5) is selected in formation; Wherein, described priority calculation element (1) is according to the first frame length of stored each formation in the queue management parts of network processing unit and the transmission bandwidth ratio of each formation, calculate the priority of formation, the result of calculation of priority sends in the priority buffer register (3), formation selects arbitration device (5) to obtain the priority of each formation from priority buffer register (3), first frame length in conjunction with each formation, dispatching principle according to the difference weight queue dispatching method, select a formation as scheduling queue, and the result that will select sends in the formation transmission control device (6), the result who selects to be fed back in the priority calculation element (1) simultaneously, use when calculating for next priority; Formation transmission control device (6) sends the frame in the scheduling queue according to the arbitration result of formation selection arbitration device (5), and scheduling result is turned back in the queue management parts.
2, the difference weight queue scheduler on the network processing unit according to claim 1, it is characterized in that, described priority buffer register (3) is made up of activity queue's counter register and priority result register, activity queue's counter register is deposited the number of queues of each scheduling, and the priority result register is then deposited the result of calculation of queue priority.
3, the difference weight queue scheduler on the network processing unit according to claim 2, it is characterized in that, also comprise being used for the priority corrected parameter calculation element (2) that the priority corrected parameter calculates, be used to preserve the candidate queue buffer register (4) of candidate queue number; Priority calculation element (1) is according to the first frame length of stored each formation in the queue management parts of network processing unit and the transmission bandwidth ratio of each formation, calculate the priority of formation, the result of calculation of priority sends in the priority buffer register (3); Priority corrected parameter calculation element (2) is according to the frame length of each formation, and the calculating priority level corrected parameter by priority corrected parameter decision candidate queue, and number sends to candidate queue in the candidate queue buffer register (4); Formation selects arbitration device (5) to obtain candidate queue, and the priority of candidate queue by candidate queue buffer register (4), priority buffer register (3), first frame length in conjunction with candidate queue, dispatching principle according to the difference weight queue dispatching method, select a formation as scheduling queue, and the result that will select sends in the formation transmission control device (6), the result who selects to be fed back in priority calculation element (1) and the priority corrected parameter calculation element (2) simultaneously, use when calculating for next priority; Formation transmission control device (6) send the frame in the scheduling queue, and the frame that notification queue management component will dispatch is deleted from respective queue according to the arbitration result of formation selection arbitration device (5).
4, difference weight queue scheduler according to claim 3, it is characterized in that, described candidate queue buffer register (4) is made up of candidate queue counter register and candidate queue register, the candidate queue counter register is deposited the number of each scheduling candidate queue, and candidate queue number then leaves in the candidate queue register successively.
CNU2005201146897U 2005-11-30 2005-11-30 Differential weighting queuing and sheduling parts on network processor Expired - Lifetime CN2884709Y (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNU2005201146897U CN2884709Y (en) 2005-11-30 2005-11-30 Differential weighting queuing and sheduling parts on network processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNU2005201146897U CN2884709Y (en) 2005-11-30 2005-11-30 Differential weighting queuing and sheduling parts on network processor

Publications (1)

Publication Number Publication Date
CN2884709Y true CN2884709Y (en) 2007-03-28

Family

ID=37957759

Family Applications (1)

Application Number Title Priority Date Filing Date
CNU2005201146897U Expired - Lifetime CN2884709Y (en) 2005-11-30 2005-11-30 Differential weighting queuing and sheduling parts on network processor

Country Status (1)

Country Link
CN (1) CN2884709Y (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100505688C (en) * 2005-11-23 2009-06-24 中国科学院计算技术研究所 A difference weight queue scheduling apparatus and scheduling method for network processor
CN101374109B (en) * 2008-10-07 2011-12-07 中兴通讯股份有限公司 Method and apparatus for scheduling packets
CN105763296A (en) * 2014-11-07 2016-07-13 卡雷公司 Method for dispatching network frames among processing resources

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100505688C (en) * 2005-11-23 2009-06-24 中国科学院计算技术研究所 A difference weight queue scheduling apparatus and scheduling method for network processor
CN101374109B (en) * 2008-10-07 2011-12-07 中兴通讯股份有限公司 Method and apparatus for scheduling packets
CN105763296A (en) * 2014-11-07 2016-07-13 卡雷公司 Method for dispatching network frames among processing resources
CN105763296B (en) * 2014-11-07 2020-10-27 卡雷公司 Method for scheduling network frames between processing resources

Similar Documents

Publication Publication Date Title
CN100505688C (en) A difference weight queue scheduling apparatus and scheduling method for network processor
US20070064711A1 (en) System and method for providing, by a plurality of schedulers, differentiated service to consumers of distributed resources
US7292580B2 (en) Method and system for guaranteeing quality of service in a multi-plane cell switch
US7539199B2 (en) Switch fabric scheduling with fairness and priority consideration
US7929438B2 (en) Scheduler pipeline design for hierarchical link sharing
US7415477B2 (en) Method and apparatus for allocating link bandwidth
US8339949B2 (en) Priority-aware hierarchical communication traffic scheduling
CN100420241C (en) Information switching realizing system and method and scheduling algorithm
CN101414958B (en) Method and apparatus for scheduling business
CN101286949A (en) Wireless Mesh network MAC layer resource scheduling policy based on IEEE802.16d standard
CN104009936B (en) Queue scheduling method based on dynamic weight calculation
CN101873634B (en) Method and device for scheduling bandwidth on WLAN basis
CN102594663A (en) Queue scheduling method and device
US20130163568A1 (en) Method and system for resource allocation in distributed time-division multiplexing systems
CN116055021B (en) Multi-user flexible Ethernet small particle time slot allocation method and device
CN101374109B (en) Method and apparatus for scheduling packets
CN2884709Y (en) Differential weighting queuing and sheduling parts on network processor
CN100456744C (en) Data dispatching method and system
CN106921586A (en) A kind of data flow shaping methods, data dispatching method and device
US8145823B2 (en) Parallel wrapped wave-front arbiter
Sanders An incentive compatible flow control algorithm for rate allocation in computer networks
US7385987B1 (en) Scheduling system and method for multi-level class hierarchy
CN102594670B (en) Multiport multi-flow scheduling method, device and equipment
US7231425B1 (en) Rate-based scheduling method and system
US6987774B1 (en) Method and apparatus for traffic scheduling

Legal Events

Date Code Title Description
C14 Grant of patent or utility model
GR01 Patent grant
AV01 Patent right actively abandoned

Effective date of abandoning: 20090624

AV01 Patent right actively abandoned

Effective date of abandoning: 20090624

C25 Abandonment of patent right or utility model to avoid double patenting