Computing Atlas

How Computing Was Built
Sign In
Text size
100%
Theme
Algorithm

Fair queuing

Network Algorithm

Fair queuing is a family of scheduling algorithms used in network switches and routers, and in some process schedulers, to share a limited resource fairly among competing flows or jobs. Instead of serving packets strictly in arrival order, which lets a flow of large packets or a burst of traffic crowd out the rest, it keeps one queue per flow and serves the queues in rotation, so that each active flow receives an equal fraction of the link, on average the link rate divided by the number of active flows. The term was coined by John Nagle in 1985, in a proposal for round-robin scheduling at the gateway between a local network and the internet, and a byte-weighted version by Alan Demers, Srinivasan Keshav and Scott Shenker followed in 1989. That version orders packets by the finish time they would have under bit-by-bit round-robin sharing, tracked on a virtual clock, and its selection step costs time logarithmic in the number of flows. The idea was later developed into weighted fair queuing and the wider practice of traffic shaping.

Facts
Time Complexity
Time Complexity (category)
Logarithmic Time -- O(log n) 1
Problem Solved
Fair sharing of a limited resource such as link capacity among competing flows 1
Connections

Credited To

Source Fair queuing (Wikipedia)

In Field

Source Fair queuing (Wikipedia)
In the Other Atlases

Developed By

Also in Business Atlas: the developer of this subject.

Source Crossref: Analysis and simulation of a fair queueing algorithm (Crossref record)Authors, affiliation
Quote, Authors, affiliation
Xerox PARC, 3333 Coyote Hill Road, Palo Alto, CA
Sources
1. Fair queuing (Wikipedia)
  • Byte-weighted algorithm, complexity
    The complexity of the algorithm is O(log(n)), where n is the number of queues/flows.
  • Lead, purpose
    The algorithm is designed to achieve fairness when a limited resource is shared
  • In Group: Scheduling Algorithms, Lead
    Fair queuing is a family of scheduling algorithms used in some process and network schedulers.
  • In Field: Computer Networking, Lead, network switches
    Fair queuing is implemented in some advanced network switches and routers.
  • Credited To: Scott Shenker, History, byte-weighted version
    A byte-weighted version was proposed by Alan Demers, Srinivasan Keshav and Scott Shenker in 1989
View the Source
Comments (0)
No comments yet. Be the first to share a thought.
Reader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.