Traffic scheduling system and method for packet-switched networks with fairness and low latency
AssigneeThe Regents of the University of California
InventorsDimitrios Stiliadis, Anujan Varma
Life of this patent
Estimating the term…
Loading patent…
AssigneeThe Regents of the University of California
InventorsDimitrios Stiliadis, Anujan Varma
Estimating the term…
A traffic scheduling system and method are disclosed for providing quality-of-service (QoS) guarantees in a packet-switched communication network where multiple traffic sessions share an outgoing communication link of a network switch in such a way that a certain minimum rate is reserved for each session sharing the link. The method can be applied to both general communication networks supporting variable packet sizes and Asynchronous Transfer Mode (ATM) networks with a fixed packet (cell) size. A packet arriving for transmission on an outgoing link of the switch is assigned a timestamp and placed in a priority queue in the order of increasing timestamps so that the packet with the smallest timestamp is placed at the head of the queue. The timestamp is computed based on a system potential maintained by the system, that tracks the progress of work in the system. The system potential is maintained at zero when no packets are queued at the outgoing link, and increases progressively as packets are transmitted. In addition to the timestamps, a starting potential is also calculated on arrival of each packet, and the starting potentials of queued packets are maintained in a separate priority queue, in the order of increasing starting potentials so that the smallest starting potential value appears at the head of the queue. This smallest starting potential is used to recalibrate the system potential at the end of transmission of each packet, by setting the system potential to the smallest starting potential.
A scheduling method for receiving a plurality of data packets arriving at a network switch from a plurality of connections and transmitting data packets over a communications link, each of the plurality of connections having a service rate, comprising the steps of:
A method for scheduling the transmission of data packets in a packet switch having an input port and an output port wherein individual application sessions share an outgoing communications link, comprising the steps of:
A priority queue method for selecting for transmission ATM cells arriving at an ATM network switch from a plurality of different connections wherein a timestamp value is assigned to each of plurality of ATM cells based on a system potential, wherein ATM cells are stored in a queue in a sequential order according to their timestamps, wherein the time period during which ATM cells are received is divided into W individual slots, each slot having a corresponding timestamp, comprising the steps of:
A starting-potential queue method for determining the minimum starting potential of ATM cells queued in an ATM network switch from a plurality of different connections, wherein the starting potentials of ATM cells are stored in a queue in a sequential order according to their starting potential values, wherein the time period during which ATM cells are received is divided into W individual slots, each slot having a corresponding starting potential comprising the steps of:
A method of determining the lowest starting potential of a queued ATM cell, wherein the time period during which a plurality of data packets are received is divided into slots, each of the slots having a corresponding starting-potential, each of the slots having a number, each of the slots having a state, the state including full and empty, wherein data packets comprise a plurality of ATM cells, the method comprising the steps of:
A method for updating the starting-potential queue on transmission of a cell, wherein the time period during which data packets are received is divided into slots, each slot having a corresponding starting-potential value, each slot having a number, each slot having a state, the state including full and empty, wherein data packets comprise ATM cells, the method comprising the steps of:
A scheduling system for receiving a plurality of data packets arriving at a network switch from a plurality of connections and transmitting data packets over a communications link, each of the plurality of connections having a service rate, comprising:
A system for scheduling the transmission of data packets in a packet switch having an input port and an output port wherein individual application sessions share an outgoing communications link, comprising:
A priority queue for selecting for transmission ATM cells arriving at an ATM network switch from a plurality of different connections wherein a timestamp value is assigned to each of the ATM cells based on a system potential, wherein the ATM cells are stored in a queue in a sequential order according to their timestamps, wherein the time period during which the ATM cells are received is divided into W individual slots, each slot having a corresponding timestamp, comprising:
A starting-potential queue for determining the minimum starting potential of ATM cells queued in an ATM network switch from a plurality of different connections, wherein the starting potentials of ATM cells are stored in a queue in a sequential order according to their starting potential values, wherein the time period during which ATM cells are received is divided into W individual slots, each slot having a corresponding starting potential comprising:
A system of determining the lowest starting potential of a queued ATM cell, wherein the time period during which a plurality of data packets are received is divided into slots, each of the slots having a corresponding starting-potential, each of the slots having a number, each of the slots having a state, state including full and empty, wherein data packets comprise a plurality of ATM cells, the system comprising:
A system for updating the starting-potential queue on transmission of a cell, wherein the time period during which data packets are received is divided into slots, each slot having a corresponding starting-potential value, each slot having a number, each slot having a state, the state including full and empty, wherein data packets comprise ATM cells, the system comprising:
A scheduling method for receiving a plurality of data packets arriving at a network switch from a plurality of connections and transmitting data packets over a communications link, each of the plurality of connections having a service rate, comprising the steps of:
A scheduling system for receiving a plurality of data packets arriving at a network switch from a plurality of connections and transmitting data packets over a communications link, each of the plurality of connections having a service rate, comprising:
Dependencies are inferred from the claim text.