References on CBQ (Class-Based Queueing)
This web page has moved. The updated version is
now maintained at
Floyd, S., and Jacobson, V.,
Link-sharing and Resource Management Models for Packet Networks
IEEE/ACM Transactions on Networking,
Vol. 3 No. 4, pp. 365-386, August 1995.
This paper focuses mainly on the link-sharing mechanisms in CBQ.
- Hoffman, D.,
Implementation report on the LBL/UCL/Sun CBQ kernel,
Toronto IETF, July 1994.
- Wakeman, I., Ghosh, A., Crowcroft, J.,
Jacobson, V., and Floyd, S.,
Implementing Real Time Packet Forwarding Policies using Streams,
Usenix 1995 Technical Conference, January 1995, New Orleans,
Louisiana, pp. 71-82.
This paper describes a Streams implementation of CBQ, and proposes a flexible
and extensible mechanism for packet classification.
Usenix also maintains an
for Usenix members.
- Floyd, S.,
Notes on CBQ and Guaranteed Service.
Draft document, July 1995.
This note discusses one way of implementing
guaranteed service using the CBQ framework.
Notes on the relationship between CBQ and RSVP.
Draft note, October 1997.
Other References on Hierarchical Link-Sharing
- Jon C.R. Bennett and H. Zhang,
Hierarchical Packet Fair Queueing Algorithms.
To appear in
IEEE/ACM Transactions on Networking.
Also in Proceedings of SIGCOMM'96, Aug, 1996.
The Hierarchical Packet Fair Queueing (H-PFQ) algorithm
approximates the idealized Hierarchical Generalized
Processor Sharing (H-GPS) model, which simultaneously
supports hierarchical link-sharing and
- Ion Stoica, Hui Zhang, and T. S. Eugene Ng,
A Hierarchical Fair Service Curve Algorithm for Link-Sharing,
Real-Time and Priority Service.
Proceedings of SIGCOMM'97.
The Hierarchical Fair Service Curve (H-FSC) algorithm
improves on H-PFQ by supporting priority service
in addition to hierarchical link-sharing and fair queueing.
Publically-Available CBQ Implementations
LBNL's CBQ code v1.1 , November 1995.
This is a research prototype, designed to be easy
to graft onto an existing system running BSD networking code.
(The 11/95 changes to the original distribution are only to
comments, not to the code itself.)
LBNL/SUN CBQ code v2.0 first released in May 1997
link-sharing and weighted-round-robin scheduling within
priority levels, and includes supporting user-level scheduling daemon
and kernel code.
The current release is v2.0h.
The CBQ v2 code is primarily for Solaris,
but the rm_class.[ch] files can also be compiled for
Notes on the CBQ Code and occasional
to the v2 code are still in progress.
The LBNL/SUN CBQ v2.0 distribution also includes a note on
Using CBQ with RSVP.
Linux has CBQ support in the
2.1.* and 2.2.* kernels, written by Alexey Kuznetsov, and
based on the work in the ns simulator.
- Cho, K.,
ALTQ: Alternate Queueing for FreeBSD
This is a beta release of Alternate Queueing for BSD Unix,
with CBQ, RED, WFQ, and RSVP stubs for CBQ.
Freliminary test results.
- Floyd, S.,
Notes of Class-Based Queueing: Setting Parameters.
Informal notes, September 1995.
These are informal notes about how to set the class parameters
- Hoffman, D., and Speer, M.,
An early access experimental release of Solaris RSVP/CBQ.
This is a Solaris port of the ISI RSVP release,
including the CBQ v2.0 packet scheduler.
Commercial CBQ Implementations
incorporates CBQ in their
products for managed broadband access to the Internet.
Web pages on other scheduling algorithms
[the Network Research Group]
Contact firstname.lastname@example.org to suggest an entry to add to this page.
Last modified: March 1999