Do not follow this link, or you will be blocked from this site. This is a spider trap.

NOTES:

If you are going to use HTB, edit linux/include/net/pkt_sched.h, changing PSCHED_JIFFIES to PSCHED_CPU.
If you want ultimate precision, edit linux/net/sched/sch_htb.c, changing HYSTERESIS from 1 to 0.  Otherwise, HTB will dequeue packets in pairs (to improve response).
There is a serious bug in HTB before version 3.17, so use a kernel version 2.4.26 or newer.

EXAMPLES

My Wonder Shaper script (Ultimate Traffic Shaper).
At work, this used to shape my proxyARP setup for both uploads and downloads.
The current HTB script (running at work), including IMQ, is here.
Here is the working proxyARP startup script.
While we had 2 providers:  rc.nano1 is the multipath routing configuration script.  Here is proxy-arp.sh (at the bottom of rc.nano1), plus its config file.  This is the (very poor) HTB shaping script.  By adding an alias to each internal computer's internet-facing NIC, no NAT is required.   /etc/iproute2/rt_tables
My old nano script (For a while, I had 3 providers here at home).  Dead Gateway Detection the hard way.
Robert Kurjata's multipath script.
u32 match arp example.
u32 match mac examples.
Fernando Favero's nano-based Load Balancing script, posted to the LARTC mailing list 31Aug04.
Daniel Bartlett's load balancing script, posted to the LARTC mailing list 15Nov04.
Tóth Nándor's Multiple Uplinks example script, posted to the LARTC mailing list 31Jan05.

DOCUMENTATION and LINKS

Download iproute2 source here.
My local copy of the Linux Advanced Routing and Traffic Control HOWTO.  Here is The Real Thing.
tc man page Show or manipulate traffic control settings.
A tc tutorial.  IMQ is here.  Here is my (slightly edited) local copy of the tc tutorial.
tc-htb man page Hierarchy Token Bucket.
tc-sfq man page Stochastic Fairness Queueing.
tc-tbf man page Token Bucket Filter.
Help for HTB "tc" commands.
Jason Boxman's Linux traffic control guide.
Shane Chen's Linux Traffic Shaping.
Nuutti Kotivuori ("Naked")'s excellent explanation of TCP queueing, posted to the LARTC mailing list 15Feb04. This is a must read.
The Linux High Availability project, and the ipfail plugin for it.
The RCC QoS project "to regulate and prioritize network flows".

SHAPING / QoS / TRAFFIC CONTROL LINKS

David DeLauro's Dynamic Rate Limiting: description and statistics.  PaceMaker download and installation instructions page.
David McNab's pyshaper, a program for managing your internet traffic in real time.
James Jones' Rate Limiting by IP ranges.
Dan Singletary's ADSL Bandwidth Management HOWTO.
Emmanuel Roger's QoS connection tuning HOWTO.
Martin Devera ("Devik")'s web site  Devik is the author of HTB.
Jim diGriz's web site.  His QoS script is famous.
Stef Coene's web site.  After the LARTC HOWTO, this is your second reading assignment.
Andreas Klauer's Fair NAT documentation.

API:

Dan Siemon's LQL, the Linux QoS Library, which provides a C API to manipulate the network queueing disciplines, classes and classifiers in the Linux kernel.

ESFQ:

Gypsy's (that's me...) LARTC FTP site.  My esfq hack for iproute2-2.6.9 thru .11 and kernel 2.4.18 thru .29.   The esfq here was created by copying the sfq code from a 2.4.18 kernel, then modifying it so it will accept parameters.  Since the sfq code has not been maintained (thus it hasn't changed) in 2.4 kernels, the hack will work for any newer 2.4 kernel.
Here is the source for my hack: Alexander Atanasov's esfq. This is for 2.4 kernels, but won't compile in the current iproute2.

IMQ, HSFC, Etc.:

IMQ and HFSC - among other things - by Patrick McHardy.   Actually, Patrick stopped maintaining it, so IMQ is here now.
Poitr Neuman maintains a patch set (with links) for kernel version 2.6 here.  This includes esfq, IMQ, wrr, Layer-7, IPP2P and ipt-account.
Because there is no documentation for HFSC, you may want to download Tomasz Paszkowski's HUGE but working HFSC startup script.
Marcin Ka³u¿a's HFSC script was posted to the LARTC mailing list 14May05.
Perhaps this thread will shed additional light on your HFSC research.

U32 and FWMARK:

Russell Stuart's The u32 filter.  Better yet, see all this fine documentation!
Catalin BOIE's u32 and fwmark patches and examples. dead link. can anyone help, please?

MULTIPATH

Martin A. Brown's excellent Guide to IP Layer Network Administration.
Julian Anastasov's web site Dead Gateway Detection.  Read dgd.txt and dgd-usage.txt.  Don't miss nano, the load balancing/multi ISP HOWTO.
Nguyen Dinh Nam's Multi Homed Linux Networking tutorial (my edited copy).  Here's the real thing.
Ron Senykoff's CODE page, which contains links to his QoS Bridge HOWTO and Load Balancing script.
Here is Ron's posting on 30Mar04 to the LARTC mailing list, where he describes combining connections for increased throughput.
Read Ming-Ching Tiew's Load Balancing, Failover and NAT page (at least the introduction).
Have a look at Roger Gregory ("godot")'s netsane, which configures 2 external interfaces for multipath routing.

MONITORING

qdisc monitoring for kernel version 2.6 by Vincent Perrier.
bwm-ng source.  Volker Gropp's (the developer) web site.
bmon - Portable bandwidth monitor.
iptraf, Gerard Java's excellent monitor.  There is a mailing list as well as a web site.
A Windows speed monitor by Ziff Davis Publishing.
More monitoring to come...
Do not follow this link, or you will be blocked from this site. This is a spider trap.