CN100463451C - Multidimensional queue dispatching and managing system for network data stream - Google Patents
Multidimensional queue dispatching and managing system for network data stream Download PDFInfo
- Publication number
- CN100463451C CN100463451C CNB200510121085XA CN200510121085A CN100463451C CN 100463451 C CN100463451 C CN 100463451C CN B200510121085X A CNB200510121085X A CN B200510121085XA CN 200510121085 A CN200510121085 A CN 200510121085A CN 100463451 C CN100463451 C CN 100463451C
- Authority
- CN
- China
- Prior art keywords
- queue
- packet
- queues
- formation
- attribute
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 230000015572 biosynthetic process Effects 0.000 claims description 93
- 238000005755 formation reaction Methods 0.000 claims description 93
- 238000007726 management method Methods 0.000 claims description 69
- 238000000034 method Methods 0.000 claims description 9
- 230000006735 deficit Effects 0.000 claims description 7
- 230000008569 process Effects 0.000 claims description 4
- IESVDEZGAHUQJU-ZLBXKVHBSA-N 1-hexadecanoyl-2-(4Z,7Z,10Z,13Z,16Z,19Z-docosahexaenoyl)-sn-glycero-3-phosphocholine Chemical compound CCCCCCCCCCCCCCCC(=O)OC[C@H](COP([O-])(=O)OCC[N+](C)(C)C)OC(=O)CC\C=C/C\C=C/C\C=C/C\C=C/C\C=C/C\C=C/CC IESVDEZGAHUQJU-ZLBXKVHBSA-N 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract description 7
- 230000000875 corresponding effect Effects 0.000 description 14
- 230000003139 buffering effect Effects 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 235000003642 hunger Nutrition 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000016571 aggressive behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000037351 starvation Effects 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Said invention provides multi dimension queue scheduling and management systems management systems of network data network data stream for network data network data stream with multi attribute and multi - value taking. Said system has N queue groups equipollent with the number of network data package, each queue group has M <sub >i </sub > number of queue equal with the number of taking value of attribute i, the arrival network data network data package queuing to make scheduling and administration according to attribute and attribute value in order to provide different service. Said invention only needs NM queues to realize fine queue control. Compared with current queue scheduling technology, said invention simplifies complexity and can realizes multiple system.
Description
Technical field
The invention belongs to networking technology area, particularly relate to a kind of technology of serving of classifying and list in order of importance and urgency of the packet in the network being carried out multidimensional.
Technical background
Queue scheduling strategy commonly used, its key problem are how to realize fair allocated bandwidth and dynamic bandwidth sharing, and avoid the influence of undesired business.What is called is distributed bandwidth liberally, is exactly that each type of service obtains identical bandwidth, and perhaps some types of service obtain than other type of service more bandwidth according to gerentocratic intention.What is called is shared bandwidth reasonably, will distribute to a kind of remaining bandwidth of type of service exactly, shares for other type of service.What is called is avoided the influence of undesired type of service, shows abnormal the time in some type of service exactly, guarantees that other types of service are served normally.
Existing queue scheduling strategy commonly used has: FIFO (first in first out), PQ (priority query), FQ (Fair Queue), WRR (weighting circulation), WFQ (Weighted Fair Queuing), DRR (deficit circulation) etc.
FIFO be a kind of substantially the most also be to use at present maximum queue scheduling strategies.FIFO joins the team according to the data packet arrival order, according to this order each bag is carried out nondistinctive service again.The maximum delay of packet is by the decision of the length of formation, therefore can make the time delay Be Controlled in allowed limits by the size of adjusting queue buffer.
In the PQ dispatching algorithm, the packet of each type is corresponding to a priority query.Packet in the same priority formation is served according to FIFO.But in scheduling process, the formation of high priority is always serviced before Low Priority Queuing.Be characterized in that crucial business can be guaranteed.It comprises two kinds of application of absolute priority formation (Strict priority queuing) and rate limit priority query (Rate-controlled priority queuing).In last application, a certain formation only just is scheduled under the situation of the formation higher than its priority for sky.Its shortcoming is under the bigger situation of high-priority queue flow, and the formation meeting of lower priority is in hunger (starvation) state for a long time.In used back one, high-priority queue was coupled with a bandwidth constraints, in case the bandwidth that high-priority queue consumes surpasses this restriction, then forwarded next Low Priority Queuing to.
FQ is to each formation Cyclic Service, and each formation is once only transmitting a packet in the circulation.Be characterized in preventing the conversion of burst flow, make each formation enjoy identical output bandwidth Internet resources.Its shortcoming is when the packet in the formation during obviously greater than the packet in other formations, and this formation will other formation more bandwidth of occupation ratio, so it can not really realize the fair allocat of bandwidth.
WFQ is as a kind of improvement to FQ, and it satisfies the different requirements of different business for bandwidth by giving the different weight of each queue assignment.
In the WRR queue scheduling algorithm, the corresponding formation of each type of service, each formation is assigned with certain resource and priority, adopts the mode of poll to serve these formations.Once in the middle of the circulation, each formation can send a packet at least, according to the different bandwidth of difference acquisition of weight.
DRR (deficit circulation) distributes to individual queue that different quota (quantum)---it determines the bandwidth that this formation is shared.The formation of each non-NULL of scheduler polls adds in the value with the deficit counter after the quota of this formation, if the size of this formation head of the queue packet is not more than the value of deficit counter, then it is served, simultaneously the value of corresponding minimizing deficit counter; , be the value of the size of sky or head of the queue packet so greater than counter up to formation to this formation service.Be characterized in being independent of each other between algorithm is simple, each formation can really obtain and weight is suitable bandwidth, individual queue, can giving each queue assignment different bandwidth etc. on demand.It improves scheduling strategy MDRR and is used in the router of Cisco 12000 series.
Queue management method at present commonly used, its queue management mechanism can be divided into two big classes: the passive type queue management (Passive Queue Management, PQM) and Active Queue Management (Active Queue Management, AQM).
" losing tail " (DropTail) strategy is generally adopted in traditional passive type queue management, promptly when buffering area is full, abandons newly arrived packet.Its limitation is that the responsibility with congested control pushes away to end subscriber, can not punish malicious stream; In some cases, can allow certain stream or a few stream monopolize between queue empty, stop the bag of other streams to enter formation; Can make formation in the long duration, be in to be full of the state of (or almost being full of).
Active Queue Management mechanism is exactly to require network itself to participate in the management and the control of resource.Its difference is: by adopting specific data packet discarding technology, safeguard that buffering area occupation quantity (being the length of formation) is in certain scope.Promptly, when network is slightly congested, just abandon a spot of packet according to predetermined rule, thereby make some source end reduce transmission rate, reduced the overtime re-transmission that packet causes because of the overlong time in buffering area, and prevented congested further deterioration, reduce packet loss, also had the ability of holding burst flow simultaneously.Typical Active Queue Management mechanism comprises RED, BLUE, ARED, PDPC etc.
The RED algorithm, promptly the earlier detection algorithm has two threshold value relevant with queue length: min at random
ThAnd max
ThWhen packet arrived router, RED calculated average queue length avg, when average queue length avg less than pre-set threshold min
ThThe time receive all packets; When avg greater than min
ThAnd less than max
ThThe time abandon according to certain probability P new for packet; When avg greater than max
ThThe time packet that arrives all be dropped.RED has adopted the method for moving average when calculating average queue length avg.Drop probabilities P is not only relevant with avg, and is also relevant with the quantity count of the bag that enters formation from last packet loss till now continuously.Along with the increase of count, the possibility that next bag is dropped is also in slow increase, so as equably, avoid packet loss continuously.
The difference of BLUE algorithm and RED maximum is that BLUE uses actual queue length to reflect congestion condition, and uses packet loss incident and link idle incident to manage congested.BLUE dynamically changes drop probabilities P value: reduce the P value when link idle and queue empty, formation is overflowed and is caused continuous packet loss then to increase the P value.In the minimum interval freeze-time time, probability P can only change once.Parameter d 1 has determined the amount that P increases when formation is overflowed, and d2 has determined the amount that P reduces when link idle.When d1 is bigger when a lot of than d2, the packet loss incident is endowed bigger proportion, thereby can make fast reaction to the quick increase of flow.
ARED (Adaptive RED) basic idea is exactly that to decide RED by the variation of checking average queue length be should be more radical or more conservative, thereby keeps average queue length at min as far as possible
ThAnd max
ThBetween.It comes automatic configuration parameter maxp according to the variation of flow.If avg is at min
ThNear vibration illustrates that congested control is too radical, so reduce maxp; If avg is at max
ThNear vibration illustrates that congested control is too cautious, so just increases maxp.ARED changes very little a kind of algorithm to RED, and it has kept the basic structure of RED, but has eliminated formation latency issue and the sensitivity to parameter problem of RED.
PDPC (Packet Discard Prevention Counter) algorithm is monitored the physical length of formation: when queue length less than min
ThThe time receive newly arrived packet; When the team leader greater than max
ThThe time abandon this packet; When the team leader between min
ThAnd max
ThBetween the time, with this data packet discarding, and calculator counter is changed to n, be no more than max the team leader then
ThSituation under receive an ensuing n packet.The characteristics of PDPC are to show congestedly by abandoning the individual data bag, receive the possibility that an ensuing n packet can reduce to abandon from the same send window of TCP a plurality of packets.Algorithm is simple, is easy to realize, and is fast to the reacting condition speed of wireless network, and the fairness between the various flows is provided.Its shortcoming is: when network user's number increased greatly, its performance can very fast decline, and parameters lacks enough adaptivitys.
Can see that from aforementioned queue scheduling strategy existing technology all is a certain attribute according to packet, for example stream, type of service etc. are distinguished them, send into corresponding formation then and wait in line service.This differentiating method is not suitable for multiattribute situation.If a packet has N attribute at most, each attribute has M value at most, then with the existing method of classifying and list in order of importance and urgency, and maximum demand (M+1)
N-1 formation could realize classifying and list in order of importance and urgency control! For example, if we distinguish the IP datagram in the network according to its attribute such as protocol field, port field, length, then the Japan that is represented by following table can see to the actual count data on the backbone of the U.S.:
The statistics of 03 month 20 days 14:0-14:5 branches of table 1 MAWI2005
Classify by protocol, be divided into 6 kinds at least;
Distinguish by datagram length, can be divided into 7 sections;
Classify by port, can be divided into 19 at least;
Two bags that can be distinguished in an attribute may be combined in together again in another attribute.For example, divide into two bags of tcp and upd by protocol, their port may be 53 (dns), and packet length may be all between 128-255.
So, needs are divided into 24 (agreements: (length section)=168 formation port) * 7 when we come datagram is carried out the branch time-like by whole these three attributes.
In some cases, for example when network operation situation was monitored, system need be by queue scheduling and management, and the proportional limit that each component in the network is shared is in normal range (NR), as above shown in the table, increase the harm that network is caused unusually with what avoid some component.The exemplary that some component increases unusually is an extensive aggression, and for example the assailant sends a large amount of TCP SYN grouping, HTTP GET request, DNS inquiry, long packets or TCP bag etc. to killed server.If adopt existing queue scheduling and administrative skill, for above-mentioned example, system will need to set up 168 formations arranged side by side, and the packet that arrives is classified and list in order of importance and urgency control.If adopt tandem queue scheduling and the mode of managing, then between each attribute, artificially introduced sequencing.Some has the bag than multiattribute, may run into bottleneck in tandem queue, might be dropped; Some has the path weak point that wrapping in of less attribute walked in the tandem queue, thereby is passed through fast.This shows that the employing prior art is carried out tandem queue scheduling and management, lost the priority of parallel queue and the key characters such as first-in first-out queue service that weight is controlled, same formation is interior.Therefore, existing queue scheduling and administrative skill are not suitable for the situation that multiattribute (or multidimensional) queuing is controlled.
Summary of the invention
The objective of the invention is to overcome the deficiencies in the prior art, a kind of multidimensional queue dispatching and management system of network data flow is provided.Utilize this technology to make network can use, different packets is carried out distinguishing control, for example quality of service control, security control etc. than the more effective mode of existing queue scheduling technology.
In order to realize goal of the invention, the technical scheme of employing is as follows:
A kind of multidimensional queue dispatching of network data flow and management system, be used for managing to having the network data flow that multiattribute and each attribute have a plurality of values, it is provided with N the set of queues that equates with the attribute number of network packet, and each set of queues i is provided with the M that equates with attribute i value number
iIndividual formation is sorted in network packet to line up in the concrete formation by attribute and property value then and dispatches and manage, so that different services to be provided.
Concrete multiattribute queueing form is as follows:
The sign i of packet i is sent into respectively and attribute
The corresponding queues group
In, described sign i can adopt the memory address of pointer or packet;
After by above-mentioned multidimensional queue packet being carried out multiple attributive classification queuing, has the same alike result value
Packet in formation
In carry out FIFO queuing.
The present invention also comprises the set of queues scheduling strategy, and described set of queues scheduling strategy comprises the polling operation between pre-scheduling operation, actual schedule operation and the set of queues:
Described pre-scheduling operation is the scheduling operation to the formation in the set of queues, can adopt the existing queue scheduling strategy that is applicable to the pairing attribute characteristics of this set of queues, for example PQ of priority query or Fair Queue FQ or weighting circulation WRR or Weighted Fair Queuing WFQ or deficit circulation DRR etc.When a set of queues is polled to and during non-NULL, then moves the queue scheduling strategy of this set of queues, can leave the formation at its place up to an item (might as well establish package identification i) of lining up
Should identify i from formation
The middle taking-up; Note just polled queue number
When moving the queue scheduling strategy of this set of queues in order to next time, from NextState, i.e. formation
Beginning; Finish the operation of pre-scheduling this time then.
Described actual schedule operation is to obtain the attribute counter C of the packet i of pre-scheduling operation
iSubtract 1, and whether check C
i=0; If C
i≠ 0, then finish actual schedule operation this time; If C
i=0, then finish last scheduling operation to this packet, soon packet i will be actual leaves whole set of queues and formation under order, and default service (for example sending or handle its request etc.) is provided; Finishing default service will need a period of time, finish actual schedule operation this time after finishing.
Polling operation between the described set of queues, specific as follows:
(a) according to all set of queues of the mode poll of fair poll or WRR;
(b) if the empty queue group then forwards next set of queues to;
(c) if the non-empty queue group is then carried out the pre-scheduling operation, carry out actual scheduling operation again, forward next set of queues then to.
Corresponding with above-mentioned multiattribute queuing strategy and set of queues scheduling strategy, the present invention also provides the multidimensional queue management algorithm, and described multidimensional queue management algorithm is provided with a queue management primary module, and manages submodule for each formation is provided with one.But the queue management submodule does not directly carry out the operation of formation, is for the queue management primary module provides parameter, i.e. the probability of packet discard; By real management and the operation of carrying out all formations of queue management primary module.
Described multidimensional queue management algorithm is specific as follows:
When packet i arrives, described multiattribute queueing form will carry out attributes match to it, and select a formation in set of queues and each group according to its attribute and property value, be provided with C
iIndividual attribute, and establish these formations and be respectively
The pairing management submodule of each formation carries out queue management according to the Queue Management Algorithm of setting, thereby draws each formation
Abandon a new probability that arrives packet
With probability
Decision abandons this packet still allows it participate in queuing; If allow its queuing, then the sign i with it joins simultaneously
In the formation; Otherwise abandon this packet.
Described management submodule decides the probability of packet discard according to one or more combinations that distribute the long distribution of formation, time delay distribution, arrival process, loss ratio, service time.Each management submodule all adopts the Queue Management Algorithm that is suitable for own characteristic, it can be existing any Queue Management Algorithm, comprise RED algorithm or BLUE algorithm or ARED algorithm or PDPC algorithm, and the Queue Management Algorithm that each management submodule adopts can be different.
The present invention is by N attribute of N set of queues corresponding data bag, and each set of queues is provided with maximum M formation, the corresponding property value of each formation.By queue scheduling strategy provided by the invention and Queue Management Algorithm, maximum only needs NM formation just can realize classifying and list in order of importance and urgency control.And the present invention can be applicable to the packet in the network is carried out fine-grained control, can realize multiple application system, for example QoS guarantees, has service, bandwidth sharing, classification rate controlled and the filtration of differentiation, network intrusions to defend, flow through filter etc. unusually, and is widely applicable.
Description of drawings
Fig. 1 is the system construction drawing of one embodiment of the present of invention;
Fig. 2 is a queue scheduling principle schematic of the present invention;
Fig. 3 is a queue management principle schematic of the present invention.
Embodiment
The present invention is described further below in conjunction with accompanying drawing.
System configuration of the present invention as shown in Figure 1, at first the characteristic value with each field of the interested relevant protocal layers of system deposits the attributive character storehouse in, uses during in order to the multiattribute coupling.When a packet arrived, system deposited it in the memory block in, and write down its address or local sign.Begin then this packet is carried out the multiattribute coupling.These attributes and pairing property value are noted.Find a plurality of corresponding queues groups in the multidimensional queue administration module according to these attributes, find a formation in each set of queues according to property value again, obtain the probability of each this packet of queue drop thus.Obtain total average drop probability by all these drop probabilities again.Total average drop probability has just determined to abandon or admit this packet.If decision abandons, then this packet is removed from storage, and emptied the record of other relevant this packet; If decision is admitted, then the service of ranking of multidimensional queue dispatching module is sent in the sign or the address of this packet.The formation of being advanced be exactly in the pairing set of queues of each attribute of this packet with the property value corresponding queues.When this packet after advancing individual queue group all obtains service power, this packet just can leave the multidimensional queue dispatching module, also, gives the classified service module with the sign or the memory address of this packet, from storage, take out this packet by it, and classified service is provided.The classified service strategy can be different according to the difference of application system.For example, the simplest method of service sends this packet exactly.This mode is by means of aforementioned queue scheduling and queue management strategy, can guarantee in the network each component proportion within the specific limits, avoid some component to increase unusually, thereby can be applied to guarantee quality of service, guarantee each professional fair shared network bandwidth, guarantee network harmony operation, dissolve various application systems such as attack stream.Comparatively Fu Za method of service is to provide distinguishing service to the packet with some attribute.This mode can also realize the fine-grained control to packet, anomaly that discovery may exist or known or novel attack except the characteristics with aforesaid assurance network harmony operation.For example can find the common trait of the packet that is dropped, can take the corresponding strategy defence thus, prevent to attack and reduce abandoning normal data packet from the integrated mode of the formation of high flood rate.
The queue scheduling principle as shown in Figure 2.At first to determine the set of queues number of system and the number of the formation in each set of queues.If the interested attribute of system has N, then need N set of queues.If each attribute has M respectively
1, M
2..., M
NIndividual value, then the individual queue group needs M respectively
1, M
2..., M
NIndividual formation.After the number of the formation in determining set of queues number and each set of queues, need determine the queue scheduling strategy of individual queue group respectively according to the characteristics of each attribute.They needn't adopt identical queue scheduling strategy, can be in the existing queue scheduling strategy any one, and for example PQ, FQ, WRR, WFQ, DRR etc. need only it and are suitable for the characteristics of the pairing attribute of set of queues.Also harmony mutually between the individual queue group scheduling strategy, they are independent operating separately.
After determining the queue scheduling strategy of individual queue group, need to determine the maximum length of individual queue, the average latency that it should guarantee to line up and drop probability are within the specific limits.Here it should be noted that, when calculating average latency and drop probability, service time and serviced length of data package do not have direct relation, this is because each set of queues is only finished pre-scheduling, just gone out the item of this set of queues by pre-scheduling, not necessarily obtain service immediately, the set of queues that it may also need to wait for other is finished the pre-scheduling to this packet, just can obtain follow-up service.So it seems between two items of its pre-scheduling dequeue, might have the packet of not participating in the queuing of this set of queues to be served and cause time delay between these two projects from a given set of queues.
After a packet arrives and finishes attributes match, be provided with C
iIndividual attribute:
...,
Wherein
It is attribute
Value, the sign i of this packet, or the memory address of pointer or packet is copied into C by module
iPart, and send into respectively and attribute
The subclass of corresponding queues group set
In.
In each set of queues
In, according to value sort module is sent into package identification i and property value
Corresponding queues
In.So, have the same alike result value
Packet, can be in identical formation
In carry out FIFO queuing.
For a given set of queues
The pre-scheduling module can adopt any predetermined queue scheduling strategy, for example a kind of among PQ, FQ, WRR, WFQ, the DRR.If this set of queues non-NULL then moves given queue scheduling strategy, up to an item of lining up, for example package identification i can leave formation.Should identify i and from formation, take out, and note current state, when moving the queue scheduling strategy of this set of queues, from NextState in order to next time.After finishing these operations, promptly finished after the pre-scheduling, carry out next step actual schedule operation.
The actual schedule operation at first will just obtain the attribute counter C of the packet i of pre-scheduling operation
iSubtract 1.Check C then
iWhether equal 0, promptly whether this packet has obtained the pre-scheduling service of all set of queues that it added.If C
i≠ 0, then illustrate this packet still in some set of queues, wait in line the service; If C
i=0, then explanation can be finished the last scheduling operation to this packet, and the relevant record that is about to packet i is removed from whole set of queues and formation, takes out from buffering area then, sends into follow-up classified service module.Finish follow-up classified service and will need a period of time.During this period, all set of queues stop pre-scheduling operation, only carry out newly the operation of joining the team to packet.After the service of finishing packet i, control is returned to the poll module.
By the polling operation between the poll module execution set of queues.It is responsible for all set of queues of poll.If the empty queue group is not then done any operation, forward next set of queues to; If the non-empty queue group is then carried out the pre-scheduling operation, carry out real scheduling operation then.Except that set of queues that is being polled to was carried out described pre-scheduling operation, other set of queues can not be carried out the pre-scheduling operation, but can carry out newly operating and the queue management operation to joining the team of project.
The queue management principle as shown in Figure 3.At first determine the Queue Management Algorithm of each each formation of set of queues, for example: RED, BLUE, ARED, PDPC etc. are referred to as AQM here
N, m, wherein AQM represents Active Queue Management Algorithm, and which set of queues n represents, and m represents which formation in this set of queues.The Queue Management Algorithm of each formation is all carried out by a management submodule.Each management submodule is independent operating all, adopts Queue Management Algorithm separately to carry out queue management.But these queue management submodules directly do not carry out the operation of formation, for example abandon packet that overflows etc., they are just according to the long distribution of formation, time delay distribution, arrival process, loss ratio, distribution service time etc., adopt the part or all of parameter in them, these are decided by Queue Management Algorithm, decide the probability of packet discard.With Queue Management Algorithm RED is example, works as formation
Average queue length less than min
ThThe time, the probability that abandons new arrival packet is 0; When average queue is grown up in max
ThThe time, the probability that abandons new arrival packet is 1; When the average queue strong point in min
ThAnd max
ThBetween the time, the probability that abandons new arrival packet is for dynamic decision
So individual queue management submodule only provides required parameter for the decision-making of queue management primary module.Real management and the operation of carrying out all formations of queue management primary module comprises abandoning the packet that overflows etc.
After packet i arrives and finishes attributes match, begin to carry out queue management.According to the attribute and the property value of this packet, the formation of establishing this packet plan adding is respectively
Each formation is all carried out queue management according to the Queue Management Algorithm of oneself by separately queue management submodule.If formation
Abandoning a new probability that arrives packet is
Then the average probability p that abandons of all formations of just being added of packet i is
After having calculated average drop probability p, produce a random number R according to the even distribution on (0,1) interval.Deny that decision abandons this packet or allows it participate in queuing according to R greater than p.If R is greater than p then allow its queuing, the sign i that is about to it gives follow-up queue scheduling module, makes the sign i of this packet can join formation simultaneously
In; Otherwise abandon this packet, be about to it and in buffering area, remove, and empty the whole records relevant with this packet.
Claims (3)
1, a kind of multidimensional queue dispatching of network data flow and management method, be used for dispatching and managing to having the network data flow that multiattribute and each attribute have a plurality of values, it is characterized in that being provided with N the set of queues that equates with the attribute number of network packet, and each set of queues i is provided with the M that equates with attribute i value number
iIndividual formation, then the network packet that arrives is carried out following operation by attribute and property value:
Comprise the multidimensional queue management algorithm, described multidimensional queue management algorithm is provided with a queue management primary module, and manages submodule for each formation is provided with one;
Described multidimensional queue management algorithm is specific as follows:
If packet i has C
iIndividual attribute, and the formation of selecting according to its attribute and property value is respectively
The pairing management submodule of each formation all carries out queue management according to the Queue Management Algorithm of setting, thereby draws each formation
Abandon a new probability that arrives packet
The average probability p that all formations that packet i will just be added all abandon is
After having calculated average drop probability p, produce a random number R according to the even distribution on (0,1) interval, according to R greater than p deny, decision abandons this packet or allows its participate in queuing, if R is greater than p then allow its queuing, if allow its queuing, then the sign i with it joins simultaneously
In the formation; Otherwise abandon this packet;
Described queueing form is as follows:
When packet i arrives, carry out attributes match, establishing packet i has C
iIndividual attribute:
Wherein
Be attribute
Value;
The sign i of packet i is sent into respectively and attribute
The corresponding queues group
In, described sign i can adopt the memory address of pointer or packet;
Also comprise the set of queues scheduling strategy, described set of queues scheduling strategy comprises the polling operation between pre-scheduling operation, actual schedule operation and the set of queues;
Described pre-scheduling operation is to be polled to and during non-NULL, to move the queue scheduling strategy of this set of queues when a set of queues, can leave its place formation up to any package identification of lining up; Should identify from the formation of place and take out; Note just polled queue number, make when move the queue scheduling strategy of this set of queues next time, know from next formation; Finish the operation of pre-scheduling this time;
Described actual schedule operation is to obtain the attribute counter C of the packet i of pre-scheduling operation
iSubtract 1; Whether check C
i=0, if C
i≠ 0, then finish actual schedule operation this time; If C
i=0, then leave whole set of queues and formation under order with packet i is actual, and default service is provided, comprise sending or handle its request; After the service of finishing packet i, finish actual schedule operation this time;
Polling operation between the described set of queues is in the following way:
(a) all set of queues of mode poll of fair poll of employing or WRR;
(b) if the empty queue group then forwards next set of queues to;
(c) if the non-empty queue group is then carried out the pre-scheduling operation, carry out actual scheduling operation again; Forward next set of queues then to.
2, the multidimensional queue dispatching of network data flow according to claim 1 and management method, the queue scheduling strategy that it is characterized in that the pre-scheduling operation employing of described set of queues scheduling strategy is the PQ of priority query or Fair Queue FQ or weighting circulation WRR or Weighted Fair Queuing WFQ or deficit circulation DRR, and the queue scheduling strategy of individual queue group is identical or different.
3, the multidimensional queue dispatching of network data flow according to claim 1 and 2 and management method, it is characterized in that described management submodule decides the probability of packet discard according to one or more combinations that distribute the long distribution of formation, time delay distribution, arrival process, loss ratio, service time, the Queue Management Algorithm that described management submodule adopts is RED algorithm or BLUE algorithm or ARED algorithm or PDPC algorithm, and the Queue Management Algorithm of respectively managing the submodule employing is identical or different, separately independent operating.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200510121085XA CN100463451C (en) | 2005-12-29 | 2005-12-29 | Multidimensional queue dispatching and managing system for network data stream |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200510121085XA CN100463451C (en) | 2005-12-29 | 2005-12-29 | Multidimensional queue dispatching and managing system for network data stream |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1801778A CN1801778A (en) | 2006-07-12 |
CN100463451C true CN100463451C (en) | 2009-02-18 |
Family
ID=36811544
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB200510121085XA Expired - Fee Related CN100463451C (en) | 2005-12-29 | 2005-12-29 | Multidimensional queue dispatching and managing system for network data stream |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100463451C (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9141569B2 (en) | 2012-12-18 | 2015-09-22 | International Business Machines Corporation | Tracking a relative arrival order of events being stored in multiple queues using a counter |
US9575822B2 (en) | 2014-08-01 | 2017-02-21 | Globalfoundries Inc. | Tracking a relative arrival order of events being stored in multiple queues using a counter using most significant bit values |
CN107645455A (en) * | 2017-09-12 | 2018-01-30 | 天津津航计算技术研究所 | A kind of message transmission dispatching method of CAN |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101179486B (en) * | 2006-11-10 | 2010-07-14 | 中兴通讯股份有限公司 | Computer network data packet forwarded CAR queue management method |
CN101447943B (en) * | 2008-12-26 | 2011-05-11 | 杭州华三通信技术有限公司 | Queue scheduling system and method |
CN101557340B (en) * | 2009-05-07 | 2011-09-21 | 中兴通讯股份有限公司 | Method for realizing multilevel queue scheduling in data network and device |
EP2273736B1 (en) * | 2009-06-29 | 2011-09-21 | Alcatel Lucent | Method of managing a traffic load |
CN102073539B (en) * | 2010-12-02 | 2013-10-09 | 华为技术有限公司 | Queue request processing method and device |
CN102594663A (en) * | 2012-02-01 | 2012-07-18 | 中兴通讯股份有限公司 | Queue scheduling method and device |
CN103281257B (en) * | 2013-06-05 | 2016-06-08 | 杭州华三通信技术有限公司 | A kind of protocol message processing method and equipment |
CN104348751B (en) | 2013-07-31 | 2019-03-12 | 中兴通讯股份有限公司 | Virtual output queue authorization management method and device |
CN103731238B (en) * | 2013-12-11 | 2017-04-05 | 福建星网锐捷网络有限公司 | Data transmission method for uplink and device |
CN106603433B (en) * | 2015-10-14 | 2019-10-25 | 瑞昱半导体股份有限公司 | Data output scheduling apparatus and method |
CN105471859B (en) * | 2015-11-20 | 2019-02-26 | 中铁工程装备集团有限公司 | A kind of access control method based on stream granularity |
CN105610733B (en) * | 2016-02-17 | 2019-03-05 | 京信通信系统(中国)有限公司 | Queue scheduling processing method and system |
CN108259382B (en) * | 2017-12-06 | 2021-10-15 | 中国航空工业集团公司西安航空计算技术研究所 | 3x256 priority scheduling circuit |
CN109408483A (en) * | 2018-09-14 | 2019-03-01 | 厦门天锐科技股份有限公司 | Date storage method based on squid proxy server |
CN109586947B (en) * | 2018-10-11 | 2020-12-22 | 上海交通大学 | Distributed equipment information acquisition system and method |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040120325A1 (en) * | 2002-12-13 | 2004-06-24 | Lawrence Ayres | System for content based message processing |
CN1631008A (en) * | 2001-07-13 | 2005-06-22 | 艾利森公司 | Method and apparatus for scheduling message processing |
CN1682502A (en) * | 2002-07-15 | 2005-10-12 | 索马网络公司 | Apparatus, system and method for the transmission of data with different QoS attributes |
-
2005
- 2005-12-29 CN CNB200510121085XA patent/CN100463451C/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1631008A (en) * | 2001-07-13 | 2005-06-22 | 艾利森公司 | Method and apparatus for scheduling message processing |
CN1682502A (en) * | 2002-07-15 | 2005-10-12 | 索马网络公司 | Apparatus, system and method for the transmission of data with different QoS attributes |
US20040120325A1 (en) * | 2002-12-13 | 2004-06-24 | Lawrence Ayres | System for content based message processing |
Non-Patent Citations (2)
Title |
---|
一种分布式联合输入输出排队结构及其调度算法. 赵俊鹏,伊鹏,郭云飞.高技术通讯,第15卷第2期. 2005 |
一种分布式联合输入输出排队结构及其调度算法. 赵俊鹏,伊鹏,郭云飞.高技术通讯,第15卷第2期. 2005 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9141569B2 (en) | 2012-12-18 | 2015-09-22 | International Business Machines Corporation | Tracking a relative arrival order of events being stored in multiple queues using a counter |
US9189433B2 (en) | 2012-12-18 | 2015-11-17 | International Business Machines Corporation | Tracking a relative arrival order of events being stored in multiple queues using a counter |
US9823952B2 (en) | 2012-12-18 | 2017-11-21 | International Business Machines Corporation | Tracking a relative arrival order of events being stored in multiple queues using a counter |
US9575822B2 (en) | 2014-08-01 | 2017-02-21 | Globalfoundries Inc. | Tracking a relative arrival order of events being stored in multiple queues using a counter using most significant bit values |
CN107645455A (en) * | 2017-09-12 | 2018-01-30 | 天津津航计算技术研究所 | A kind of message transmission dispatching method of CAN |
Also Published As
Publication number | Publication date |
---|---|
CN1801778A (en) | 2006-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100463451C (en) | Multidimensional queue dispatching and managing system for network data stream | |
US6678248B1 (en) | Policy based quality of service | |
US8467295B2 (en) | System and methods for distributed quality of service enforcement | |
US6859438B2 (en) | Policy based quality of service | |
US7916718B2 (en) | Flow and congestion control in switch architectures for multi-hop, memory efficient fabrics | |
CN101834790B (en) | Multicore processor based flow control method and multicore processor | |
US20220045972A1 (en) | Flow-based management of shared buffer resources | |
US9998400B2 (en) | Attribution of congestion contributions | |
US20080304503A1 (en) | Traffic manager and method for performing active queue management of discard-eligible traffic | |
US8248932B2 (en) | Method and apparatus for fairly sharing excess bandwidth and packet dropping amongst subscribers of a data network | |
CA2462793C (en) | Distributed transmission of traffic streams in communication networks | |
US6985442B1 (en) | Technique for bandwidth sharing in internet and other router networks without per flow state record keeping | |
CN101692648A (en) | Method and system for queue scheduling | |
CN100466593C (en) | Method of implementing integrated queue scheduling for supporting multi service | |
US8265091B2 (en) | Traffic multiplexing using timestamping | |
Astuti | Packet handling | |
Dwekat et al. | A practical fair queuing scheduler: Simplification through quantization | |
US20230022037A1 (en) | Flow-based management of shared buffer resources | |
KR100475783B1 (en) | Hierarchical prioritized round robin(hprr) scheduling | |
Yamagaki et al. | RED method with dual-fairness metrics cooperating with TCP congestion control | |
Kiameso et al. | Analysis of prioritized scheduling of assured forwarding in DiffServ Architectures | |
Yin et al. | Probability based weighted fair queueing algorithm with adaptive buffer management for high-speed network | |
Yokota et al. | QoS control mechanism based on flow rate to improve quality of short flows and low-rate flows | |
Katawala et al. | Achieving per-flow Queueing Performance without a per-flow Queue | |
Lim et al. | Edge-to-edge quality-of-service domain |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090218 Termination date: 20141229 |
|
EXPY | Termination of patent right or utility model |