US20050047415A1 - Data traffic manager and method therefor - Google Patents
Data traffic manager and method therefor Download PDFInfo
- Publication number
- US20050047415A1 US20050047415A1 US10/649,924 US64992403A US2005047415A1 US 20050047415 A1 US20050047415 A1 US 20050047415A1 US 64992403 A US64992403 A US 64992403A US 2005047415 A1 US2005047415 A1 US 2005047415A1
- Authority
- US
- United States
- Prior art keywords
- class
- data
- shaper
- queues
- cell
- 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.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/56—Queue scheduling implementing delay-aware scheduling
- H04L47/562—Attaching a time tag to queues
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/6215—Individual queue per QOS, rate or priority
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/622—Queue service order
- H04L47/6225—Fixed service order, e.g. Round Robin
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/625—Queue scheduling characterised by scheduling criteria for service slots or service orders
- H04L47/627—Queue scheduling characterised by scheduling criteria for service slots or service orders policing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5678—Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
- H04L2012/568—Load balancing, smoothing or shaping
Definitions
- the present invention relates to a method and apparatus for data traffic management and, more particularly, to a time-spaced traffic management system for ATM data that uses per-class queues.
- ATM Asynchronous Transfer Mode
- An ATM network should be capable of providing differentiated Quality of Service (QoS) to these services and applications.
- Traffic Management protects the network and the end systems from congestion and promotes efficient use of network resources. Generic functions such as Connection Admission Control, Feedback Control, Usage Parameter Control, Cell Loss Priority Control, Traffic Shaping, Network Resource Management and Frame Discard are provided to facilitate efficient traffic management.
- An ATM multiplexer connects different user devices (for example, DS 1 , DS 3 , T 1 /E 1 , Ethernet) then translates the protocols to ATM cell format and multiplexes the cells into a UNI interface (OC- 3 c or DS 3 PLCP).
- the UNI interface may connect to the ATM switch.
- the combination of interfaces and services presents a difficult challenge to multiplexer implementation.
- the interface between the multiplexer and the network should support statistical multiplexing, traffic management, cell buffering, cell queuing, priority schemes, and fairness algorithms in accordance with data transmission standards. Traditional approaches require separate hardware and general purpose CPUs for each interface type and protocol, which results in many individual designs and limited reuse of software.
- per-VC queues Conventional shaping and scheduling algorithms used for ATM traffic management involve per-VC (Virtual Connection) queues. Such per-VC queues are processed with multi-level scheduling (two or more, for example, one for ATM classes and one for VCs) and shaping mechanisms.
- Typical shaping and scheduling algorithms include GCRA (Generic Cell Rate Algorithm), Priority Scheduling, WFQ, Scoreboard Scheduling, Fair Share Scheduling, Timestamp Scheduling, etc.
- GCRA Generic Cell Rate Algorithm
- Priority Scheduling Priority Scheduling
- WFQ Priority Scheduling
- Scoreboard Scheduling Scoreboard Scheduling
- Fair Share Scheduling Timestamp Scheduling
- Per-VC queuing and multi-level scheduling involves as many queues as the number of VCs and all of the queues must be scanned for each cell transmission.
- Some implementations compromise on the number of VCs that can be supported.
- Other implementations use two-dimensional timing chains that need frequent chain manipulations adding to computational overheads.
- Timestamp based scheduling mechanisms need a plurality of timers running at various time granularities making timer management complex.
- Some prioritized queue shaping mechanisms treat different classes of traffic alike.
- Some fair share schedulers perform round robin scheduling across VCs, however, do not distinguish between different classes of traffic.
- One proposed method replaces per-VC shaping queues that must be processed during each cell-emission period with a sequence of shaping queues shared by a plurality of virtual circuits only one of which must be processed during each cell-emission period.
- queuing cells of different VCs/classes to the shaper queues and scheduling of the shaper queues is quite complex.
- a cell arriving late causes designation of serving queues of all the VCs to be shifted, the impact of which is not clear.
- an additional overflow queue is required for variable-bit-rate VCs.
- FIG. 1 is block diagram of a data traffic manager in accordance with an embodiment of the present invention
- FIG. 2 is a block diagram of another data traffic manager in accordance with an embodiment of the present invention.
- FIG. 3 is a flow chart illustrating a modified generic cell rate algorithm of a data traffic manager in accordance with an embodiment of the present invention.
- the present invention is a data traffic manager that uses a time spaced round robin (TSRR) scheduler.
- TSRR scheduler uses just per-class queues and avoids the use of per-VC queues and their associated complex processing.
- the TSRR algorithm is computationally efficient as it uses a modified GCRA and simple round robin mechanisms for processing the class queues.
- the TSRR scheduler significantly reduces the resources required, both processing and memory, thereby reducing the overall cost of ATM Traffic Management.
- the present invention is a data traffic manager having an enqueue engine connected to at least one port for receiving cells of data and a plurality of per-class shaper queues connected to the enqueue engine that receive respective cells of data from the enqueue engine.
- the shaper queues are spaced generally equally in time.
- the enqueue engine determines whether a cell of data is one of conformant and non-conformant.
- a conformant cell is queued to a currently served queue and a non-conformant cell is shaped based on a cell delay time.
- a time spaced round robin (TSRR) scheduler connected to the plurality of per-class queues schedules cells of data from the shaper queues for transmission.
- TSRR time spaced round robin
- the present invention is a data traffic manager that receives cell data of various class types from one or more data ports.
- the traffic manager includes a plurality of per-class queues connected to the one or more data ports, wherein at least one per-class queue is provided for each class of cell data and cell data from each class is queued in its respective queue.
- a first scheduler is connected to the plurality of per-class queues for scheduling the cell data and associated virtual connection (VC) traffic and Quality of Service (QoS) parameters.
- VC virtual connection
- QoS Quality of Service
- a shaper enqueue engine is connected to the first scheduler for managing the cells and their associated VC and QoS data.
- a plurality of per-class shaper queues are connected to the enqueue engine.
- the per-class shaper queues receive and queue respective cells and their associated data managed by the enqueue engine. At least one shaper queue is provided for each class.
- a second scheduler is connected to the plurality of per-class shaper queues for scheduling cells of data from the shaper queues for transmission.
- a timer is connected to the second scheduler and provides timing information thereto
- the present invention provides a method of managing ATM data traffic, comprising the steps of:
- GCRA generic cell rate algorithm
- the data traffic manager 10 includes an enqueue engine 12 , a plurality of per-class shaper queues 14 , 16 and 18 , a scheduler 20 and a timer 22 .
- the enqueue engine 12 is connected to at least one port 24 for receiving cells of data.
- the port comprises ATM Adaptation Layers (AAL) or other ATM ports.
- the enqueue engine 12 receives constant bit rate (CBR), real time-variable bit rate (rt-VBR) and non-real time variable bit rate (nrt-VBR) cells of data via the port 24 .
- CBR constant bit rate
- rt-VBR real time-variable bit rate
- nrt-VBR non-real time variable bit rate
- rt-VBR the difference between rt-VBR and nrt-VBR is the QoS parameters that they specify.
- rt-VBR specifies the same QoS parameters as CBR, i.e., cell loss ratio, peak-to-peak cell delay variation and maximum cell transfer delay, while nrt-VBR specifies only CLR as a QoS parameter.
- the enqueue engine 12 may also receive unspecified bit rate (UBR) cells of data. The enqueue engine 12 determines whether a cell of data is either conformant or non-conformant using a GCRA or preferably, a modified GCRA, such as the modified GCRA shown in FIG. 3 .
- UBR unspecified bit rate
- a conformant data cell is queued to a currently served queue or the queue that is going to be served next if the current queue is full so that the conformant cell gets transmitted right away.
- the enqueue engine 12 determines whether the non-conformant cell has to be dropped or shaped based on how long the non-conformant cell has to be delayed to make it conformant and hence ready for transmission.
- the plurality of per-class shaper queues 14 , 16 and 18 are connected to the enqueue engine 12 and receive respective cells of data from the enqueue engine 12 .
- the plurality of per-class shaper queues includes at least one CBR class queue 14 , at least one rt-VBR class queue 16 and at least one non-real time variable bit rate nrt-VBR class queue 18 .
- each class queue 14 , 16 and 18 includes a plurality of such queues.
- the CBR class queue 14 could comprise thirty-two (32) queues such that each CBR class queue can hold about thirty-two cells of data.
- the rt-VBR and nrt-VBR shaper queues 16 and 18 may include a similar number of similarly sized queues.
- the data traffic manager 10 preferably also includes a UBR class queue 26 for UBR data.
- the scheduler 20 is connected to the plurality of per-class shaper queues 14 , 16 and 18 and the UBR class queue 26 for scheduling cells of data from the shaper queues 14 , 16 , 18 and 26 for transmission.
- the scheduler 20 is preferably a time spaced round robin (TSRR) scheduler and in this embodiment, performs scheduling based on predetermined weight and/or priority values for each class, as well as timing information generated by the timer 22 .
- TSRR time spaced round robin
- n shaper queues of size ‘s’ queue length—number of cells that a queue can hold
- n and s may be different for each class depending on granularity and a total number of queues available.
- the timer 22 which is connected to the scheduler 20 , generates ticks for the cell time Tc. For example, for OC-3c, 1 cell time Tc is about 2.8 ⁇ s.
- each shaper queue within a class is serviced cyclically for s ticks in a cycle of n*s ticks.
- the shaper queues 14 , 16 , 18 and 26 are serviced cyclically for ‘Ts’ duration and for each cell transmission only one queue from each class is scanned.
- W/P RR Weighted/Priority Round-Robin scheduler 20 scans currently served queues (one from each class) based on class weight/priority.
- priority round robin all the cells in the CBR queue 14 are scheduled before the rt-VBR queue 16 and all cells in the rt-VBR queue 16 are scheduled before the nrt-VBR queue 18 .
- Cells from the UBR class queue 26 are scheduled only when there are no cells to be scheduled from the other class queues 14 , 16 , and 18 .
- the CBR queue 14 is serviced Wcbr times
- the rt-VBR queue 16 is serviced Wrt-VBR times
- the nrt-VBR queue 18 is serviced Wnrt-VBR times
- the UBR queue 26 is serviced Wu times, where W is a weight value.
- Shaping is basically delaying the transmission of a cell by placing the cell in the appropriate shaper queue. While the scheduler 20 schedules cells from the shaper queues 14 , 16 , 18 and 26 for transmission, the enqueue engine 12 manages the shaper queues 14 , 16 and 18 (but not the UBR queue 26 ).
- the time the cell has to be delayed is the difference between the current time and the time at which the cell should be transmitted. If this difference exceeds a predetermined value (referred to as maxCTD in FIG. 3 ), in one embodiment of the invention, the cell is immediately dropped.
- the shaper queue to be used for delaying the cell is determined based on the time difference and the queue that is currently being served.
- the cell is queued to the respective shaper queue based on queue thresholds. The cell is dropped or discarded if the shaper queue is above the non-conformant threshold of the class.
- Step 30 indicates the arrival of a cell k at a time t a (k).
- the time at which the cell is to be sent or transmitted is determined as TAT-L, where TAT is a theoretical arrival time and L is a limit value. TAT can have an initial value of current time.
- the calculated time to send is compared to the cell arrival time t a (k). If the time to send is not greater than the arrival time, then the cell is a conforming cell and the algorithm proceeds to step 36 , where it is queued in the currently served queue for transmission. Step 38 follows step 36 .
- TAT is compared to t a (k).
- TAT is set to the value of t a (k) and at step 42 TAT is incremented by I (the increment value I equals 1/PCR for CBR, and 1/SCR for rt-VBR and nrt-VBR).
- TAT is not less than t a (k)
- TAT is incremented by I at step 42 .
- the algorithm proceeds to step 44 to determine the time that the cell has to be delayed.
- step 44 the time to send less the arrival time t a (k) is compared to a predetermined maximum value (maxCTD) and if the difference is greater than maxCTD, then the cell is dropped at step 48 . If the difference is not greater than maxCTD, then the algorithm proceeds to step 46 .
- TAT is incremented by I, at step 42 and then the next received data cell is processed.
- FIG. 2 another embodiment of a data manager 50 in accordance with the present invention is shown.
- the data manager 50 may be implemented using a RISC processor, such as a Motorola C-Port Network processor.
- the data manager 50 has two levels of scheduling, one at ingress, before shaping, and another at egress, before transmission. At ingress, Weighted Round Robin (WRR) scheduling is used and at egress strict priority scheduling is used.
- WRR Weighted Round Robin
- the data manager 50 is connected to an AALs (ATM Adaptation Layers—upper layers of ATM) or other ATM ports to receive ATM cells.
- AALs ATM Adaptation Layers—upper layers of ATM
- the received data cells are placed into respective class queues.
- the data manager includes a CBR class queue 52 , an rt-VBR class queue 54 , a nrt-VBR class queue 56 and an UBR class queue 58 .
- a WRR scheduler 60 receives the data cells from the class queues 52 , 54 and 56 based on weights assigned to each of the classes.
- the CBR, rt-VBR and nrt-VBR class queues 52 , 54 and 56 are assigned weights of 4, 3 and 1 respectively so that the CBR class queue 52 is serviced four out of eight times, the rt-VBR class queue 54 is serviced three out of eight times and the nrt-VBR class queue 56 is serviced one out of eight times.
- the WRR scheduler 60 is connected to a shaper enqueue engine 62 .
- the shaper enqueue engine 62 receives the cells dequeued by the WRR scheduler 60 and shapes them by placing the cells in various queues. It should be understood that the shaper enqueue engine 62 receives not just cells of data, but also their associated VC and QoS data.
- the enqueue engine 62 is connected to a plurality of CBR shaper queues 64 , a plurality of rt-VBR shaper queues 66 and a plurality of nrt-VBR shaper queues 68 .
- the enqueue engine 62 maintains and manages the different sets of shaper queues for each class (except UBR class) with a simple tail drop mechanism and protects queue availability for conformant cells using thresholds.
- the enqueue engine 62 determines the shaper queue to be used for the cell with a modified GCRA ( FIG. 3 ) as described above.
- the shaper queues 64 , 66 and 68 and the UBR class queue 58 are connected to a PRR scheduler 70 that schedules cells from the shaper queues 64 , 66 and 68 and the UBR class queue 58 based on the class priority.
- the present invention also provides a method of managing ATM cell data received at a data port.
- the received data is analyzed with an enqueue engine, like the enqueue engines 12 and 62 using a modified generic cell rate algorithm (GCRA) as shown in FIG. 3 .
- GCRA modified generic cell rate algorithm
- the analyzed data is placed into one of a plurality of per-class shaper queues 14 , 16 and 18 and the cell data stored in the per-class shaper queues is scheduled for transmission using a weighted/priority round robin algorithm, such as the one implemented by the scheduler 20 .
- the plurality of per-class shaper queues includes at least one CBR class queue, at least one rt-VBR class queue and at least one non-real time variable bit rate nrt-VBR class queue.
- n shaper queues of size ‘s’, where n and s are different for each class depending on granularity and a total number of queues available.
- Each shaper queue 14 , 16 , 18 and 26 within a class is serviced cyclically for ‘s’ ticks in a cycle of n*s ticks.
- a traffic manager in accordance with the present invention needs just one timer and scans only one queue per-class during each cell time period, which makes the traffic manager computationally efficient, simple and scalable.
- the present invention uses relatively simple to implement algorithms like the modified GCRA to determine the shaper queue for en-queuing cells and weighted or priority round robin scheduling for de-queuing cells from the shaper queues.
- Different sets of shaper queues for CBR, rt-VBR and nrt-VBR traffic classes are used and the scheduler dequeues cells from these sets of queues in weighted/prioritized fashion, which provides class isolation and prioritization.
- Cell Delay Variation is controlled with ‘n’, shaper queues, ‘s’ (queue length—number of cells that a queue can hold) and ‘Ts’ (time space between queues) for each class.
- the shaping decision is based on GCRA and cells arriving in burst are placed in appropriate shaping queues, as opposed to using an overflow queue.
- a data traffic manager can be used to manage other types of data besides ATM, such as variable size IP data. It is understood, therefore, that this invention is not limited to the particular embodiments disclosed, but covers modifications within the spirit and scope of the present invention as defined by the appended claims.
Abstract
A data traffic manager includes a time-spaced round robin (TSRR) scheduler and an enqueue engine. The enqueue engine is connected to an ATM data port and receives cells of data and determines whether the cell data is one of conformant and non-conformant. The data is placed into one of a plurality of per-class shaper queues that are spaced generally equally in time. A conformant cell is queued to a currently served queue and a non-conformant cell is shaped based on a cell delay time. The TSRR scheduler schedules cells of data from the shaper queues for transmission using a time-spaced round robin algorithm.
Description
- The present invention relates to a method and apparatus for data traffic management and, more particularly, to a time-spaced traffic management system for ATM data that uses per-class queues.
- The growth and popularity of the Internet has led to tremendous amounts of data (voice, video, etc.) being transmitted from point to point and between servers. Multimedia and other high-bandwidth applications support Asynchronous Transfer Mode (ATM), which supports a wide variety of services and applications. An ATM network should be capable of providing differentiated Quality of Service (QoS) to these services and applications. Traffic Management protects the network and the end systems from congestion and promotes efficient use of network resources. Generic functions such as Connection Admission Control, Feedback Control, Usage Parameter Control, Cell Loss Priority Control, Traffic Shaping, Network Resource Management and Frame Discard are provided to facilitate efficient traffic management.
- An ATM multiplexer connects different user devices (for example, DS1, DS3, T1/E1, Ethernet) then translates the protocols to ATM cell format and multiplexes the cells into a UNI interface (OC-3 c or DS3 PLCP). The UNI interface may connect to the ATM switch. The combination of interfaces and services presents a difficult challenge to multiplexer implementation. The interface between the multiplexer and the network should support statistical multiplexing, traffic management, cell buffering, cell queuing, priority schemes, and fairness algorithms in accordance with data transmission standards. Traditional approaches require separate hardware and general purpose CPUs for each interface type and protocol, which results in many individual designs and limited reuse of software.
- Conventional shaping and scheduling algorithms used for ATM traffic management involve per-VC (Virtual Connection) queues. Such per-VC queues are processed with multi-level scheduling (two or more, for example, one for ATM classes and one for VCs) and shaping mechanisms. Typical shaping and scheduling algorithms include GCRA (Generic Cell Rate Algorithm), Priority Scheduling, WFQ, Scoreboard Scheduling, Fair Share Scheduling, Timestamp Scheduling, etc. However, per-VC queue processing requires a lot of computational resources and as such, is typically done in hardware.
- Per-VC queuing and multi-level scheduling involves as many queues as the number of VCs and all of the queues must be scanned for each cell transmission. The larger the number of VCs, the larger the number of scans, making the processing complex and requiring an increasing amount of computing resources. Hence, some implementations compromise on the number of VCs that can be supported. Other implementations use two-dimensional timing chains that need frequent chain manipulations adding to computational overheads. Timestamp based scheduling mechanisms need a plurality of timers running at various time granularities making timer management complex. Some prioritized queue shaping mechanisms treat different classes of traffic alike. Some fair share schedulers perform round robin scheduling across VCs, however, do not distinguish between different classes of traffic.
- One proposed method replaces per-VC shaping queues that must be processed during each cell-emission period with a sequence of shaping queues shared by a plurality of virtual circuits only one of which must be processed during each cell-emission period. However, queuing cells of different VCs/classes to the shaper queues and scheduling of the shaper queues is quite complex. A cell arriving late causes designation of serving queues of all the VCs to be shifted, the impact of which is not clear. Also, for variable-bit-rate VCs, an additional overflow queue is required.
- It would be desirable to provide a method and apparatus that performs efficient and cost-effective traffic management. It further would be desirable to have a traffic management process that does not cause defects.
- The following detailed description of preferred embodiments of the invention, will be better understood when read in conjunction with the appended drawings. For the purpose of illustrating the invention, there is shown in the drawings embodiments that are presently preferred. It should be understood, however, that the invention is not limited to the precise arrangement and instrumentalities shown. In the drawings:
-
FIG. 1 is block diagram of a data traffic manager in accordance with an embodiment of the present invention; -
FIG. 2 is a block diagram of another data traffic manager in accordance with an embodiment of the present invention; and -
FIG. 3 is a flow chart illustrating a modified generic cell rate algorithm of a data traffic manager in accordance with an embodiment of the present invention. - The detailed description set forth below in connection with the appended drawings is intended as a description of the presently preferred embodiment of the invention, and is not intended to represent the only form in which the present invention may be practiced. It is to be understood that the same or equivalent functions may be accomplished by different embodiments that are intended to be encompassed within the spirit and scope of the invention. As will be understood by those of skill in the art, the present invention can be applied to various packages and package types. In the drawings, like numerals are used to indicate like elements throughout.
- The present invention is a data traffic manager that uses a time spaced round robin (TSRR) scheduler. The TSRR scheduler uses just per-class queues and avoids the use of per-VC queues and their associated complex processing. The TSRR algorithm is computationally efficient as it uses a modified GCRA and simple round robin mechanisms for processing the class queues. The TSRR scheduler significantly reduces the resources required, both processing and memory, thereby reducing the overall cost of ATM Traffic Management.
- In one embodiment, the present invention is a data traffic manager having an enqueue engine connected to at least one port for receiving cells of data and a plurality of per-class shaper queues connected to the enqueue engine that receive respective cells of data from the enqueue engine. The shaper queues are spaced generally equally in time. The enqueue engine determines whether a cell of data is one of conformant and non-conformant. A conformant cell is queued to a currently served queue and a non-conformant cell is shaped based on a cell delay time. A time spaced round robin (TSRR) scheduler connected to the plurality of per-class queues schedules cells of data from the shaper queues for transmission.
- In another embodiment, the present invention is a data traffic manager that receives cell data of various class types from one or more data ports. The traffic manager includes a plurality of per-class queues connected to the one or more data ports, wherein at least one per-class queue is provided for each class of cell data and cell data from each class is queued in its respective queue. A first scheduler is connected to the plurality of per-class queues for scheduling the cell data and associated virtual connection (VC) traffic and Quality of Service (QoS) parameters. A shaper enqueue engine is connected to the first scheduler for managing the cells and their associated VC and QoS data. A plurality of per-class shaper queues are connected to the enqueue engine. The per-class shaper queues receive and queue respective cells and their associated data managed by the enqueue engine. At least one shaper queue is provided for each class. A second scheduler is connected to the plurality of per-class shaper queues for scheduling cells of data from the shaper queues for transmission. A timer is connected to the second scheduler and provides timing information thereto
- In yet another embodiment, the present invention provides a method of managing ATM data traffic, comprising the steps of:
- receiving ATM cell data from a data port;
- analyzing the received data with an enqueue engine using a modified generic cell rate algorithm (GCRA);
- placing the analyzed cell data into one of a plurality of per-class shaper queues; and
- scheduling the cell data stored in the per-class shaper queues for transmission using a weighted/priority round robin algorithm.
- Referring now to
FIG. 1 , a functional block diagram of adata traffic manager 10 in accordance with an embodiment of the present invention is shown. Thedata traffic manager 10 includes anenqueue engine 12, a plurality of per-class shaper queues scheduler 20 and atimer 22. Theenqueue engine 12 is connected to at least oneport 24 for receiving cells of data. In the embodiment shown, the port comprises ATM Adaptation Layers (AAL) or other ATM ports. Theenqueue engine 12 receives constant bit rate (CBR), real time-variable bit rate (rt-VBR) and non-real time variable bit rate (nrt-VBR) cells of data via theport 24. As understood by those of skill in the art, the difference between rt-VBR and nrt-VBR is the QoS parameters that they specify. rt-VBR specifies the same QoS parameters as CBR, i.e., cell loss ratio, peak-to-peak cell delay variation and maximum cell transfer delay, while nrt-VBR specifies only CLR as a QoS parameter. Theenqueue engine 12 may also receive unspecified bit rate (UBR) cells of data. Theenqueue engine 12 determines whether a cell of data is either conformant or non-conformant using a GCRA or preferably, a modified GCRA, such as the modified GCRA shown inFIG. 3 . A conformant data cell is queued to a currently served queue or the queue that is going to be served next if the current queue is full so that the conformant cell gets transmitted right away. For a non-conformant cell, theenqueue engine 12 determines whether the non-conformant cell has to be dropped or shaped based on how long the non-conformant cell has to be delayed to make it conformant and hence ready for transmission. - The plurality of per-
class shaper queues enqueue engine 12 and receive respective cells of data from theenqueue engine 12. The plurality of per-class shaper queues includes at least oneCBR class queue 14, at least one rt-VBR class queue 16 and at least one non-real time variable bit rate nrt-VBR class queue 18. Preferably, eachclass queue CBR class queue 14 could comprise thirty-two (32) queues such that each CBR class queue can hold about thirty-two cells of data. The rt-VBR and nrt-VBR shaper queues data traffic manager 10 preferably also includes aUBR class queue 26 for UBR data. - The
scheduler 20 is connected to the plurality of per-class shaper queues UBR class queue 26 for scheduling cells of data from theshaper queues scheduler 20 is preferably a time spaced round robin (TSRR) scheduler and in this embodiment, performs scheduling based on predetermined weight and/or priority values for each class, as well as timing information generated by thetimer 22. - More particularly, for each class (CBR, rt-VBR and nrt-VBR), there are ‘n’ shaper queues of size ‘s’ (queue length—number of cells that a queue can hold), where n and s may be different for each class depending on granularity and a total number of queues available. The
shaper queues timer 22, which is connected to thescheduler 20, generates ticks for the cell time Tc. For example, for OC-3c, 1 cell time Tc is about 2.8 μs. Put another way, each shaper queue within a class is serviced cyclically for s ticks in a cycle of n*s ticks. - The
shaper queues scheduler 20 scans currently served queues (one from each class) based on class weight/priority. In case of priority round robin, all the cells in theCBR queue 14 are scheduled before the rt-VBR queue 16 and all cells in the rt-VBR queue 16 are scheduled before the nrt-VBR queue 18. Cells from theUBR class queue 26 are scheduled only when there are no cells to be scheduled from theother class queues CBR queue 14 is serviced Wcbr times, the rt-VBR queue 16 is serviced Wrt-VBR times, the nrt-VBR queue 18 is serviced Wnrt-VBR times and theUBR queue 26 is serviced Wu times, where W is a weight value. - Shaping is basically delaying the transmission of a cell by placing the cell in the appropriate shaper queue. While the
scheduler 20 schedules cells from theshaper queues enqueue engine 12 manages theshaper queues FIG. 3 ), in one embodiment of the invention, the cell is immediately dropped. The shaper queue to be used for delaying the cell is determined based on the time difference and the queue that is currently being served. The cell is queued to the respective shaper queue based on queue thresholds. The cell is dropped or discarded if the shaper queue is above the non-conformant threshold of the class. - Referring now to
FIG. 3 , a flow chart of a modified GCRA used by theenqueue engine 12 is shown. As mentioned above, in this embodiment theenqueue engine 12 manages theshaper queues Step 30 indicates the arrival of a cell k at a time ta(k). Atstep 32, the time at which the cell is to be sent or transmitted (Time_to_send) is determined as TAT-L, where TAT is a theoretical arrival time and L is a limit value. TAT can have an initial value of current time. For CBR, L is equal to CDVT (Cell Delay Variation Tolerance) and for rt-VBR and nrt-VBR, L is equal to BT (burst tolerance)+CDVT, where, BT=(MBS−1)*(1/SCR− 1/PCR). MBS is maximum burst size; SCR is sustainable cell rate; and PCR is peak cell rate. Atstep 34, the calculated time to send is compared to the cell arrival time ta(k). If the time to send is not greater than the arrival time, then the cell is a conforming cell and the algorithm proceeds to step 36, where it is queued in the currently served queue for transmission.Step 38 followsstep 36. Atstep 38, TAT is compared to ta(k). If TAT is less than ta(k), then atstep 40, TAT is set to the value of ta(k) and atstep 42 TAT is incremented by I (the increment value I equals 1/PCR for CBR, and 1/SCR for rt-VBR and nrt-VBR). On the other hand, if TAT is not less than ta(k), then TAT is incremented by I atstep 42. Atstep 34, if the time to send is greater than ta(k), then the algorithm proceeds to step 44 to determine the time that the cell has to be delayed. Atstep 44, the time to send less the arrival time ta(k) is compared to a predetermined maximum value (maxCTD) and if the difference is greater than maxCTD, then the cell is dropped atstep 48. If the difference is not greater than maxCTD, then the algorithm proceeds to step 46. Atstep 46, the shaper queue to which the cell is queued (Qe) is determined as Qe=(Qc+Time_to_send−ta(k)+Qc—time_elapsed/s) modulo n. After the shaper queue Qe is determined, TAT is incremented by I, atstep 42 and then the next received data cell is processed. - Several implementations of the data traffic manager in accordance with the present invention are possible. However, the concepts and fundamental blocks like modified GCRA, enqueue engine, round-robin schedulers remain the same. Referring now to
FIG. 2 , another embodiment of adata manager 50 in accordance with the present invention is shown. Thedata manager 50 may be implemented using a RISC processor, such as a Motorola C-Port Network processor. Thedata manager 50 has two levels of scheduling, one at ingress, before shaping, and another at egress, before transmission. At ingress, Weighted Round Robin (WRR) scheduling is used and at egress strict priority scheduling is used. - Like the
data manager 10 inFIG. 1 , thedata manager 50 is connected to an AALs (ATM Adaptation Layers—upper layers of ATM) or other ATM ports to receive ATM cells. The received data cells are placed into respective class queues. Accordingly, the data manager includes aCBR class queue 52, an rt-VBR class queue 54, a nrt-VBR class queue 56 and anUBR class queue 58. AWRR scheduler 60 receives the data cells from theclass queues VBR class queues CBR class queue 52 is serviced four out of eight times, the rt-VBR class queue 54 is serviced three out of eight times and the nrt-VBR class queue 56 is serviced one out of eight times. - The
WRR scheduler 60 is connected to a shaper enqueueengine 62. The shaper enqueueengine 62 receives the cells dequeued by theWRR scheduler 60 and shapes them by placing the cells in various queues. It should be understood that the shaper enqueueengine 62 receives not just cells of data, but also their associated VC and QoS data. Like theenqueue engine 12, theenqueue engine 62 is connected to a plurality ofCBR shaper queues 64, a plurality of rt-VBR shaper queues 66 and a plurality of nrt-VBR shaper queues 68. Also like the enqueueengine 12, theenqueue engine 62 maintains and manages the different sets of shaper queues for each class (except UBR class) with a simple tail drop mechanism and protects queue availability for conformant cells using thresholds. Theenqueue engine 62 determines the shaper queue to be used for the cell with a modified GCRA (FIG. 3 ) as described above. Theshaper queues UBR class queue 58 are connected to aPRR scheduler 70 that schedules cells from theshaper queues UBR class queue 58 based on the class priority. Shaper queues within a class are serviced cyclically based on a timer tick Tc generated by thetimer 22 and time spacing between queues (Ts=s*Tc) and across classes, a strict priority scheduling is used. That is, all cells in currently servicedCBR queue 64 are scheduled before rt-VBR queue 66 and all cells in currently served rt-VBR queue 66 are scheduled before nrt-VBR queue 68. Cells belonging to the UBR class and stored in theUBR class queue 58 are not shaped and are scheduled only when there are no cells in the other class queues. - In addition to the
data traffic managers enqueue engines FIG. 3 . The analyzed data is placed into one of a plurality of per-class shaper queues scheduler 20. For an ATM traffic manager, the plurality of per-class shaper queues includes at least one CBR class queue, at least one rt-VBR class queue and at least one non-real time variable bit rate nrt-VBR class queue. Preferably however, for each class there are ‘n’ shaper queues of size ‘s’, where n and s are different for each class depending on granularity and a total number of queues available. Eachshaper queue - A traffic manager in accordance with the present invention needs just one timer and scans only one queue per-class during each cell time period, which makes the traffic manager computationally efficient, simple and scalable. As compared to prior art data traffic shapers, the present invention uses relatively simple to implement algorithms like the modified GCRA to determine the shaper queue for en-queuing cells and weighted or priority round robin scheduling for de-queuing cells from the shaper queues. Different sets of shaper queues for CBR, rt-VBR and nrt-VBR traffic classes are used and the scheduler dequeues cells from these sets of queues in weighted/prioritized fashion, which provides class isolation and prioritization. Further, Cell Delay Variation is controlled with ‘n’, shaper queues, ‘s’ (queue length—number of cells that a queue can hold) and ‘Ts’ (time space between queues) for each class. It should also be noted that according to the present invention, the shaping decision is based on GCRA and cells arriving in burst are placed in appropriate shaping queues, as opposed to using an overflow queue.
- The description of the preferred embodiments of the present invention have been presented for purposes of illustration and description, but are not intended to be exhaustive or to limit the invention to the forms disclosed. It will be appreciated by those skilled in the art that changes could be made to the embodiments described above without departing from the broad inventive concept thereof. For example, a data traffic manager can be used to manage other types of data besides ATM, such as variable size IP data. It is understood, therefore, that this invention is not limited to the particular embodiments disclosed, but covers modifications within the spirit and scope of the present invention as defined by the appended claims.
Claims (30)
1. A data traffic manager, comprising:
an enqueue engine connected to at least one port for receiving cells of data, wherein the enqueue engine determines whether a cell of data is one of conformant and non-conformant;
a plurality of per-class shaper queues connected to the enqueue engine that receive respective cells of data from the enqueue engine, wherein the shaper queues are spaced generally equally in time and wherein a conformant cell is queued to a currently served queue and a non-conformant cell is shaped based on a cell delay time; and
a time spaced round robin (TSRR) scheduler connected to the plurality of per-class queues for scheduling cells of data from the shaper queues for transmission.
2. The data traffic manager of claim 1 , wherein the enqueue engine is connected to at least one ATM port.
3. The data traffic manager of claim 2 , wherein the enqueue engine receives constant bit rate (CBR) cells, real time-variable bit rate (rt-VBR) cells and non-real time variable bit rate (nrt-VBR) cells.
4. The data traffic manager of claim 3 , wherein the plurality of per-class shaper queues includes at least one CBR class queue, at least one rt-VBR class queue and at least one non-real time variable bit rate nrt-VBR class queue.
5. The data traffic manager of claim 4 , wherein for each class, there are ‘n’ shaper queues of size ‘s’, wherein n and s are different for each class depending on a granularity and a total number of queues available.
6. The data traffic manager of claim 5 , wherein each shaper queue within a class is serviced cyclically for ‘s’ ticks in a cycle of n*s ticks.
7. The data traffic manager of claim 6 , wherein between classes, the TSRR scheduler performs scheduling based on predetermined weight and priority values for each class.
8. The data traffic manager of claim 4 , wherein the plurality of per-class shaper queues includes a UBR class queue.
9. The data traffic manager of claim 8 , further comprising a timer connected to the TSRR scheduler for providing timing information thereto.
10. The data traffic manager of claim 9 , wherein the TSRR scheduler schedules cells from the shaper queues and the UBR class queue based on predetermined weight and priority values and timing information generated by the timer.
11. The data traffic manager of claim 9 , wherein the enqueue engine manages the shaper queues with a threshold tail drop mechanism and protects queue availability for conformant cells.
12. The data traffic manager of claim 11 , wherein the enqueue engine discards a cell that has to be delayed beyond a predetermined time period.
13. The data traffic manager of claim 9 , wherein the enqueue engine discards a cell when the shaper queue thereof exceeds a predetermined threshold value.
14. The data traffic manager of claim 9 , wherein the enqueue engine determines a shaper queue to be used for a data cell via a generic cell rate algorithm (GCRA).
15. The data traffic manager of claim 9 , wherein the enqueue engine determines a shaper queue to be used for a data cell via a modified generic cell rate algorithm (GCRA).
16. A data traffic manager that receives cell data of various class types from one or more data ports, the traffic manager comprising:
a plurality of per-class queues connected to the one or more data ports, wherein at least one per-class queue is provided for each class of cell data and cell data from each class is queued in its respective queue;
a first scheduler connected to the plurality of per-class queues for scheduling the cell data and associated virtual connection (VC) traffic and Quality of Service (QoS) parameters;
a shaper enqueue engine connected to the first scheduler for managing the cells and their associated VC and QoS data;
a plurality of per-class shaper queues connected to the enqueue engine that receive and queue respective cells and their associated data managed by the enqueue engine, wherein at least one shaper queue is provided for each class;
a timer for generating timing information; and
a second scheduler, connected to the plurality of per-class shaper queues and the timer, for scheduling cells of data from the shaper queues for transmission.
17. The data traffic manager of claim 16 , wherein the first scheduler schedules the cell data and associated VC and QoS parameters from the per-class queues using a weighted round robin algorithm.
18. The data traffic manager of claim 17 , wherein the shaper enqueue engine determines which shaper queue is to be used for queuing cell data using a modified generic cell rate algorithm (GCRA).
19. The data traffic manager of claim 18 , wherein the shaper enqueue engine manages the shaper queues with a threshold tail drop mechanism.
20. The data traffic manager of claim 19 , wherein the shaper enqueue engine discards cell data that has to be delayed beyond a predetermined time limit.
21. The data traffic manager of claim 18 , wherein the second scheduler schedules the cell data from the per-class shaper queues based on a class weight and priority algorithm.
22. The data traffic manager of claim 21 , wherein the shaper enqueue engine manages the shaper queues within a class cyclically using the timing information generated by the timer.
23. The data traffic manager of claim 22 , wherein the shaper enqueue engine manages the shaper queues such that between classes, scheduling is performed on a class priority basis.
24. The data traffic manager of claim 16 , wherein the plurality of per-class queues includes constant bit rate (CBR), real time variable bit rate (rt-VBR), non-real time variable bit rate (nrt-VBR), and unspecified bit rate (UBR) class queues.
25. The data traffic manager of claim 24 , wherein the plurality of per-class shaper queues includes CBR, rt-VBR, and nrt-VBR class queues.
26. A method of managing ATM data traffic, comprising the steps of:
receiving ATM cell data from a data port;
analyzing the received data with an enqueue engine using a modified generic cell rate algorithm (GCRA);
placing the analyzed cell data into one of a plurality of per-class shaper queues; and
scheduling the cell data stored in the per-class shaper queues for transmission using a weighted priority round robin algorithm.
27. The method of managing ATM data traffic of claim 25 , wherein plurality of per-class shaper queues includes at least one CBR class queue, at least one rt-VBR class queue and at least one non-real time variable bit rate nrt-VBR class queue.
28. The method of managing ATM data traffic of claim 26 , wherein for each class, there are ‘n’ shaper queues of size ‘s’, wherein n and s are different for each class depending on a granularity and a total number of queues available.
29. The method of managing ATM data traffic of claim 27 , wherein each shaper queue within a class is serviced cyclically for ‘s’ ticks in a cycle of n*s ticks.
30. The method of managing ATM data traffic of claim 28 , wherein the plurality of per-class shaper queues includes a UBR class queue.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/649,924 US20050047415A1 (en) | 2003-08-28 | 2003-08-28 | Data traffic manager and method therefor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/649,924 US20050047415A1 (en) | 2003-08-28 | 2003-08-28 | Data traffic manager and method therefor |
Publications (1)
Publication Number | Publication Date |
---|---|
US20050047415A1 true US20050047415A1 (en) | 2005-03-03 |
Family
ID=34217041
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/649,924 Abandoned US20050047415A1 (en) | 2003-08-28 | 2003-08-28 | Data traffic manager and method therefor |
Country Status (1)
Country | Link |
---|---|
US (1) | US20050047415A1 (en) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020044529A1 (en) * | 1995-10-11 | 2002-04-18 | Natalie Giroux | Fair queue servicing using dynamic weights (DWFQ) |
US20050249220A1 (en) * | 2004-05-05 | 2005-11-10 | Cisco Technology, Inc. | Hierarchical QoS behavioral model |
US20060029079A1 (en) * | 2004-08-05 | 2006-02-09 | Cisco Technology, Inc. A California Corporation | Pipeline scheduler including a hierarchy of schedulers and multiple scheduling lanes |
US20070047553A1 (en) * | 2005-08-25 | 2007-03-01 | Matusz Pawel O | Uplink scheduling in wireless networks |
US20070070895A1 (en) * | 2005-09-26 | 2007-03-29 | Paolo Narvaez | Scaleable channel scheduler system and method |
US20070140122A1 (en) * | 2005-12-21 | 2007-06-21 | Murthy Krishna J | Increasing cache hits in network processors using flow-based packet assignment to compute engines |
US20080112318A1 (en) * | 2006-11-13 | 2008-05-15 | Rejean Groleau | Traffic shaping and scheduling in a network |
US20090064157A1 (en) * | 2007-08-30 | 2009-03-05 | International Business Machines Corporation | Asynchronous data structure pull application programming interface (api) for stream systems |
US20100142524A1 (en) * | 2007-07-02 | 2010-06-10 | Angelo Garofalo | Application data flow management in an ip network |
US7830889B1 (en) * | 2003-02-06 | 2010-11-09 | Juniper Networks, Inc. | Systems for scheduling the transmission of data in a network device |
CN102420747A (en) * | 2011-11-17 | 2012-04-18 | 清华大学 | Service source shaping method based on date packet achieving interval wave filtration |
US20150063107A1 (en) * | 2013-08-29 | 2015-03-05 | Calix, Inc. | System and method for automated quality of service configuration through the access network |
US9031079B1 (en) * | 2004-08-06 | 2015-05-12 | Juniper Networks, Inc. | Hierarchical shaping of network traffic |
WO2015187946A1 (en) * | 2014-06-05 | 2015-12-10 | KEMP Technologies Inc. | Adaptive load balancer and methods for intelligent data traffic steering |
US9917781B2 (en) | 2014-06-05 | 2018-03-13 | KEMP Technologies Inc. | Methods for intelligent data traffic steering |
CN113612700A (en) * | 2021-08-12 | 2021-11-05 | 北京邮电大学 | Low-delay zero-jitter mixed time-sensitive traffic scheduling method and device |
CN116755779A (en) * | 2023-08-18 | 2023-09-15 | 腾讯科技(深圳)有限公司 | Method, device, equipment, storage medium and chip for determining cycle interval |
Citations (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5515363A (en) * | 1994-06-30 | 1996-05-07 | Digital Equipment Corporation | Traffic shaping system with transmit latency feedback for asynchronous transfer mode networks |
US5719865A (en) * | 1994-12-08 | 1998-02-17 | Nec Corporation | Traffic shaping method and apparatus for ATM switching unit |
US5724513A (en) * | 1994-06-30 | 1998-03-03 | Digital Equipment Corporation | Traffic shaping system for asynchronous transfer mode networks |
US5850399A (en) * | 1997-04-04 | 1998-12-15 | Ascend Communications, Inc. | Hierarchical packet scheduling method and apparatus |
US5898669A (en) * | 1996-03-22 | 1999-04-27 | Shimony; Ilan | ATM traffic management device |
US5974033A (en) * | 1996-09-06 | 1999-10-26 | Nec Corporation | Dynamic shaping apparatus of traffic of ATM network |
US5999515A (en) * | 1996-12-06 | 1999-12-07 | Nec Corporation | Method and apparatus for shaping processing in which discard of ATM cell effectively performed |
US6005866A (en) * | 1996-12-02 | 1999-12-21 | Conexant Systems, Inc. | Scheduler utilizing dynamic schedule table |
US6104700A (en) * | 1997-08-29 | 2000-08-15 | Extreme Networks | Policy based quality of service |
US6144637A (en) * | 1996-12-20 | 2000-11-07 | Cisco Technology, Inc. | Data communications |
US6163542A (en) * | 1997-09-05 | 2000-12-19 | Carr; David Walter | Virtual path shaping |
US6195333B1 (en) * | 1996-10-28 | 2001-02-27 | Fujitsu Network Communications, Inc. | Unframed isochronous shaping method to reduce delay and delay variation in a CBR transmission system |
US6198723B1 (en) * | 1998-04-14 | 2001-03-06 | Paxonet Communications, Inc. | Asynchronous transfer mode traffic shapers |
US6229788B1 (en) * | 1998-05-27 | 2001-05-08 | Nortel Networks Limited | Method and apparatus for traffic shaping in a broadband fiber-based access system |
US6266324B1 (en) * | 1997-04-23 | 2001-07-24 | Nec Corporation | ATM device and shaping method |
US6389019B1 (en) * | 1998-03-18 | 2002-05-14 | Nec Usa, Inc. | Time-based scheduler architecture and method for ATM networks |
US6438134B1 (en) * | 1998-08-19 | 2002-08-20 | Alcatel Canada Inc. | Two-component bandwidth scheduler having application in multi-class digital communications systems |
US6574220B1 (en) * | 1999-07-06 | 2003-06-03 | Avaya Technology Corp. | Traffic shaper that accommodates maintenance cells without causing jitter or delay |
US6621792B1 (en) * | 1999-02-23 | 2003-09-16 | Avaya Technology Corp. | Computationally-efficient traffic shaper |
US20040196788A1 (en) * | 2003-04-02 | 2004-10-07 | Sandeep Lodha | Customer-specific traffic shaping |
US20050010676A1 (en) * | 2003-06-30 | 2005-01-13 | Muthaiah Venkatachalam | Time-based transmission queue for traffic management of asynchronous transfer mode virtual circuits on a multi-threaded, multi-processor system |
US20050018601A1 (en) * | 2002-06-18 | 2005-01-27 | Suresh Kalkunte | Traffic management |
US6862265B1 (en) * | 2000-04-13 | 2005-03-01 | Advanced Micro Devices, Inc. | Weighted fair queuing approximation in a network switch using weighted round robin and token bucket filter |
US6993040B2 (en) * | 1997-06-24 | 2006-01-31 | Alcatel Canada Inc. | Adaptive service weight assignments for ATM scheduling |
US7161903B2 (en) * | 2000-09-01 | 2007-01-09 | Omron Corporation | Control station, apparatus and network system |
-
2003
- 2003-08-28 US US10/649,924 patent/US20050047415A1/en not_active Abandoned
Patent Citations (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5724513A (en) * | 1994-06-30 | 1998-03-03 | Digital Equipment Corporation | Traffic shaping system for asynchronous transfer mode networks |
US5515363A (en) * | 1994-06-30 | 1996-05-07 | Digital Equipment Corporation | Traffic shaping system with transmit latency feedback for asynchronous transfer mode networks |
US5719865A (en) * | 1994-12-08 | 1998-02-17 | Nec Corporation | Traffic shaping method and apparatus for ATM switching unit |
US5898669A (en) * | 1996-03-22 | 1999-04-27 | Shimony; Ilan | ATM traffic management device |
US5974033A (en) * | 1996-09-06 | 1999-10-26 | Nec Corporation | Dynamic shaping apparatus of traffic of ATM network |
US6195333B1 (en) * | 1996-10-28 | 2001-02-27 | Fujitsu Network Communications, Inc. | Unframed isochronous shaping method to reduce delay and delay variation in a CBR transmission system |
US6005866A (en) * | 1996-12-02 | 1999-12-21 | Conexant Systems, Inc. | Scheduler utilizing dynamic schedule table |
US5999515A (en) * | 1996-12-06 | 1999-12-07 | Nec Corporation | Method and apparatus for shaping processing in which discard of ATM cell effectively performed |
US6144637A (en) * | 1996-12-20 | 2000-11-07 | Cisco Technology, Inc. | Data communications |
US5850399A (en) * | 1997-04-04 | 1998-12-15 | Ascend Communications, Inc. | Hierarchical packet scheduling method and apparatus |
US6266324B1 (en) * | 1997-04-23 | 2001-07-24 | Nec Corporation | ATM device and shaping method |
US6993040B2 (en) * | 1997-06-24 | 2006-01-31 | Alcatel Canada Inc. | Adaptive service weight assignments for ATM scheduling |
US6104700A (en) * | 1997-08-29 | 2000-08-15 | Extreme Networks | Policy based quality of service |
US6163542A (en) * | 1997-09-05 | 2000-12-19 | Carr; David Walter | Virtual path shaping |
US6389019B1 (en) * | 1998-03-18 | 2002-05-14 | Nec Usa, Inc. | Time-based scheduler architecture and method for ATM networks |
US6198723B1 (en) * | 1998-04-14 | 2001-03-06 | Paxonet Communications, Inc. | Asynchronous transfer mode traffic shapers |
US7002916B2 (en) * | 1998-04-14 | 2006-02-21 | Conexant Systems, Inc. | Asynchronous transfer mode traffic shapers |
US6229788B1 (en) * | 1998-05-27 | 2001-05-08 | Nortel Networks Limited | Method and apparatus for traffic shaping in a broadband fiber-based access system |
US6438134B1 (en) * | 1998-08-19 | 2002-08-20 | Alcatel Canada Inc. | Two-component bandwidth scheduler having application in multi-class digital communications systems |
US6621792B1 (en) * | 1999-02-23 | 2003-09-16 | Avaya Technology Corp. | Computationally-efficient traffic shaper |
US6574220B1 (en) * | 1999-07-06 | 2003-06-03 | Avaya Technology Corp. | Traffic shaper that accommodates maintenance cells without causing jitter or delay |
US6862265B1 (en) * | 2000-04-13 | 2005-03-01 | Advanced Micro Devices, Inc. | Weighted fair queuing approximation in a network switch using weighted round robin and token bucket filter |
US7161903B2 (en) * | 2000-09-01 | 2007-01-09 | Omron Corporation | Control station, apparatus and network system |
US20050018601A1 (en) * | 2002-06-18 | 2005-01-27 | Suresh Kalkunte | Traffic management |
US20040196788A1 (en) * | 2003-04-02 | 2004-10-07 | Sandeep Lodha | Customer-specific traffic shaping |
US20050010676A1 (en) * | 2003-06-30 | 2005-01-13 | Muthaiah Venkatachalam | Time-based transmission queue for traffic management of asynchronous transfer mode virtual circuits on a multi-threaded, multi-processor system |
Cited By (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7023866B2 (en) * | 1995-10-11 | 2006-04-04 | Alcatel Canada Inc. | Fair queue servicing using dynamic weights (DWFQ) |
US20020044529A1 (en) * | 1995-10-11 | 2002-04-18 | Natalie Giroux | Fair queue servicing using dynamic weights (DWFQ) |
US7830889B1 (en) * | 2003-02-06 | 2010-11-09 | Juniper Networks, Inc. | Systems for scheduling the transmission of data in a network device |
US20110019544A1 (en) * | 2003-02-06 | 2011-01-27 | Juniper Networks, Inc. | Systems for scheduling the transmission of data in a network device |
US20050249220A1 (en) * | 2004-05-05 | 2005-11-10 | Cisco Technology, Inc. | Hierarchical QoS behavioral model |
US7675926B2 (en) * | 2004-05-05 | 2010-03-09 | Cisco Technology, Inc. | Hierarchical QoS behavioral model |
US20060029079A1 (en) * | 2004-08-05 | 2006-02-09 | Cisco Technology, Inc. A California Corporation | Pipeline scheduler including a hierarchy of schedulers and multiple scheduling lanes |
US7876763B2 (en) * | 2004-08-05 | 2011-01-25 | Cisco Technology, Inc. | Pipeline scheduler including a hierarchy of schedulers and multiple scheduling lanes |
US9363186B2 (en) | 2004-08-06 | 2016-06-07 | Juniper Networks, Inc. | Hierarchical shaping of network traffic |
US9031079B1 (en) * | 2004-08-06 | 2015-05-12 | Juniper Networks, Inc. | Hierarchical shaping of network traffic |
US20070047553A1 (en) * | 2005-08-25 | 2007-03-01 | Matusz Pawel O | Uplink scheduling in wireless networks |
US20070070895A1 (en) * | 2005-09-26 | 2007-03-29 | Paolo Narvaez | Scaleable channel scheduler system and method |
US7675928B2 (en) * | 2005-12-15 | 2010-03-09 | Intel Corporation | Increasing cache hits in network processors using flow-based packet assignment to compute engines |
US20070140122A1 (en) * | 2005-12-21 | 2007-06-21 | Murthy Krishna J | Increasing cache hits in network processors using flow-based packet assignment to compute engines |
US20080112318A1 (en) * | 2006-11-13 | 2008-05-15 | Rejean Groleau | Traffic shaping and scheduling in a network |
US8891372B2 (en) * | 2007-07-02 | 2014-11-18 | Telecom Italia S.P.A. | Application data flow management in an IP network |
US9935884B2 (en) * | 2007-07-02 | 2018-04-03 | Telecom Italia S.P.A. | Application data flow management in an IP network |
US20150071073A1 (en) * | 2007-07-02 | 2015-03-12 | Telecom Italia S.P.A. | Application data flow management in an ip network |
US20100142524A1 (en) * | 2007-07-02 | 2010-06-10 | Angelo Garofalo | Application data flow management in an ip network |
US20090064157A1 (en) * | 2007-08-30 | 2009-03-05 | International Business Machines Corporation | Asynchronous data structure pull application programming interface (api) for stream systems |
US8141080B2 (en) * | 2007-08-30 | 2012-03-20 | International Business Machines Corporation | Asynchronous data structure pull application programming interface (API) for stream systems |
CN102420747A (en) * | 2011-11-17 | 2012-04-18 | 清华大学 | Service source shaping method based on date packet achieving interval wave filtration |
US9185042B2 (en) * | 2013-08-29 | 2015-11-10 | Calix, Inc. | System and method for automated quality of service configuration through the access network |
US20150063107A1 (en) * | 2013-08-29 | 2015-03-05 | Calix, Inc. | System and method for automated quality of service configuration through the access network |
WO2015187946A1 (en) * | 2014-06-05 | 2015-12-10 | KEMP Technologies Inc. | Adaptive load balancer and methods for intelligent data traffic steering |
US9866487B2 (en) | 2014-06-05 | 2018-01-09 | KEMP Technologies Inc. | Adaptive load balancer and methods for intelligent data traffic steering |
US9917781B2 (en) | 2014-06-05 | 2018-03-13 | KEMP Technologies Inc. | Methods for intelligent data traffic steering |
CN113612700A (en) * | 2021-08-12 | 2021-11-05 | 北京邮电大学 | Low-delay zero-jitter mixed time-sensitive traffic scheduling method and device |
CN116755779A (en) * | 2023-08-18 | 2023-09-15 | 腾讯科技(深圳)有限公司 | Method, device, equipment, storage medium and chip for determining cycle interval |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20050047415A1 (en) | Data traffic manager and method therefor | |
CA2247367C (en) | Event-driven cell scheduler and method for supporting multiple service categories in a communication network | |
US5850399A (en) | Hierarchical packet scheduling method and apparatus | |
US6377583B1 (en) | Rate shaping in per-flow output queued routing mechanisms for unspecified bit rate service | |
US7596086B2 (en) | Method of and apparatus for variable length data packet transmission with configurable adaptive output scheduling enabling transmission on the same transmission link(s) of differentiated services for various traffic types | |
US5926459A (en) | Rate shaping in per-flow queued routing mechanisms for available bit rate service | |
US6163542A (en) | Virtual path shaping | |
EP0748086A1 (en) | Method for scheduling message cells leaving an ATM node | |
Lenzini et al. | Tradeoffs between low complexity, low latency, and fairness with deficit round-robin schedulers | |
JPH1084383A (en) | Packet scheduling equipment and packet transfer method | |
GB2324679A (en) | Communications cell scheduler | |
US7471688B2 (en) | Scheduling system for transmission of cells to ATM virtual circuits and DSL ports | |
US6961342B1 (en) | Methods and apparatus for switching packets | |
EP0817433B1 (en) | Packet switched communication system and traffic shaping process | |
CA2371325A1 (en) | Scheduler implementing weighted fair queuing by a weight limited first in-first out methodology | |
US6822939B2 (en) | Method and apparatus for guaranteeing a minimum cell rate (MCR) for asynchronous transfer mode (ATM) traffic queues | |
Lund et al. | Fair prioritized scheduling in an input-buffered switch | |
EP0817431B1 (en) | A packet switched communication system | |
US6449252B1 (en) | ATM path cell scheduling for constant and variable bit rate traffic | |
EP0817434A2 (en) | A packet switched communication system and traffic shaping process | |
Yen et al. | Sliding weighted fair queueing scheme for real-time applications | |
Al-Khasib et al. | Mini round robin: an enhanced frame-based scheduling algorithm for multimedia networks | |
SHIM et al. | A simple scheduling algorithm guaranteeing delay bounds in ATM networks | |
Al-Khasib et al. | Fair and efficient frame-based scheduling algorithm for multimedia networks | |
Gupta et al. | Performance Evaluation of ATM Networks with Round Robin and Weighted Round Robin Algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MOTOROLA, INC., ILLINOIS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CHANNEGOWDA, RADHAKRISHNA;PAKTI, DHANANJAY S.;REEL/FRAME:014478/0247 Effective date: 20030813 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |