Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 27 Mar 1997 22:23:11 +0900
From:      Kenjiro Cho <kjc@csl.sony.co.jp>
To:        rsvp-test@ISI.EDU
Cc:        freebsd-hackers@freebsd.org, arl@arl.wustl.edu
Subject:   ALTQ/CBQ alpha release
Message-ID:  <199703271323.WAA06023@hotaka.csl.sony.co.jp>

next in thread | raw e-mail | index | archive | help

I am pleased to announce the first public alpha release of ALTQ/CBQ.
ALTQ is an alternate queueing framework for BSD Unix, currently built
on FreeBSD-2.2.1R.

We have ported SUN/UCL/LBL-CBQ onto this framework, which can be used
as a traffic control kernel for RSVP.

The release includes:
	alternate queueing support for FreeBSD-2.2.1R kernel
	CBQ and WFQ implementation
	tools for CBQ
	RSVP stubs for CBQ

The source code is available at:
	<ftp://ftp.csl.sony.co.jp/pub/kjc/altq.tar.gz>;
	or
	<http://www.csl.sony.co.jp/person/kjc/programs.html>;

Note that the CBQ related part is just a port of Sun's RSVP/CBQ.


				Kenjiro Cho
				Sony Computer Science Laboratory Inc.

--------------------------------------------------------------

		ALTQ -- Version 0.2

				March 27, 1997

This is an alpha release of Alternate Queueing for BSD Unix.
This is ALPHA version in alpha quality, so use it at your own risk!
All interfaces are likely to change in the future release.

The release includes:
	alternate queueing support for FreeBSD-2.2.1R kernel
	CBQ and WFQ implementation
	tools for CBQ
	RSVP stubs for CBQ

but lacks some of necessary documentation and functions.  Some
functions are implemented poorly. 

This release supports only limited network drivers.
Supported network cards are:
	vx: 3Com PCI Ethernet Cards (3C590, 3C595, 3C900, 3C905)
	de: DEC 21040 PCI Ethernet Controller
	fxp:Intel EtherExpress Pro/100B PCI Fast Ethernet
	ep: 3Com 3C509 3C589
	ed: Western Digital and SMC 80xx; Novell NE1000 and NE2000; 3Com 3C503
	en: Efficient Network Inc. PCI ATM card.
	    Adaptec 155Mbps PCI ATM card.
	    (Chuck Cranor's driver is included in the ALTQ release.)
	lo: local loop (just for testing)

The idea behind this package is to provide better queueing schemes
required to realize resource-sharing and quality of service.
Currently, the only queueing scheme implemented in BSD Unix is
the simple tail-drop FIFO queueing.  The BSD Unix systems have no
general method to implement alternate queueing schemes, which is the
main obstacle to implement a new queueing scheme to BSD Unix.

We have designed and implemented a generic alternate queueing
framework for the BSD Unix systems, and ported Sun's CBQ onto this
framework.  The system can be used for resource reservation with the
RSVP implementation from ISI.

The preliminary performance test result is encouraging; our CBQ
implementation is able to handle 100Mbps without noticeable overhead.

The goals of this project are three-fold:
    - to provide a framework to implement better queueing schemes.
    - to provide a link-sharing test-bed for network operators.
    - to provide a traffic control kernel to the RSVP community.

You can get the latest ALTQ release from
	<http://www.csl.sony.co.jp/person/kjc/programs.html>;
	or
	<ftp://ftp.csl.sony.co.jp/pub/kjc/altq.tar.gz>;


For RSVP users:
Note that the rsvp stubs are just a port of Sun's RSVP/CBQ.  So, it
does nothing better than Sun's RSVP.  Also note that currently it
supports only Controlled-Load Service and takes only bandwidth (rate)
parameter to map the flow to a CBQ class.
You can find the original Sun's RSVP/CBQ at
<ftp://playground.sun.com/pub/rsvp/>;
Please don't ask me questions regarding RSVP.  There's a mailing-list
on RSVP implementation issues <rsvp-test@isi.edu>.  To subscribe, you
can send mail to "majordomo@isi.edu" with the following command in the
body of your email message: "subscribe rsvp-test".

For ATM users:
The ATM driver is based on bsdatm1.4
<ftp://dworkin.wustl.edu/dist/bsd/bsdatm1.4.tar.gz>; written by Chuck
Cranor of Washington University <http://dworkin.wustl.edu/pub/chuck/>.
Please get the original distribution and read the included documents
for how to setup ATM.
Also note that the current ATM driver doesn't support multicast so
that some work is necessary to use with RSVP.

WFQ:
A sample WFQ implementation by Hiroshi Kyusojin of Keio University
(kyu@mt.cs.keio.ac.jp).

Change to TCP:
FreeBSD-2.2 has a problem which resets TCP window size to the default
value even when the user specifies the window size.  To avoid this
problem, "in_addroute() in netinet/in_rmx.c" is modified.  A side
effect is that TCP doen't save its ssthresh value on close, but it's
what other 4.4BSD derived systems do.


Send bug reports, suggestions, etc. to

	kjc@csl.sony.co.jp

			Kenjiro Cho
			Sony Computer Science Laboratory Inc.
			WIDE Project				


The CBQ related part of the release is derived from the RSVP/CBQ
implementation of Sun Microsystems, Inc.  The CBQ part is known as 
SUN/UCL/LBL-CBQ.  

The README file of the Sun RSVP 0.4.8 release says:

	Major components of this release were contributed by USC
	Information Sciences Institute (ISI), MIT Laboratory for
	Computer Science (LCS), the Xerox Palo Alto Research Center
	(PARC), Lawrence Berkeley Laboratories (LBL), and University
	College, London (UCL).  We are deeply indebted to these groups
	for their kind assistance.

So, I'm also deeply indebted to these groups.  Special thanks to Sally
Floyd of Lawrence Berkeley Laboratories, her papers and notes on CBQ
are most helpful.

--------------------------------------------------------------




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199703271323.WAA06023>