<HTML ><HEAD ><TITLE >ADSL Bandwidth Management HOWTO</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK REL="NEXT" TITLE="Introduction" HREF="intro.html"></HEAD ><BODY CLASS="ARTICLE" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="ARTICLE" ><DIV CLASS="TITLEPAGE" ><H1 CLASS="TITLE" ><A NAME="AEN2" ></A >ADSL Bandwidth Management HOWTO</H1 ><H3 CLASS="AUTHOR" ><A NAME="AEN4" >Dan Singletary</A ></H3 ><DIV CLASS="AFFILIATION" ><DIV CLASS="ADDRESS" ><P CLASS="ADDRESS" ><TT CLASS="EMAIL" ><<A HREF="mailto:dvsing@sonicspike.net" >dvsing@sonicspike.net</A >></TT ></P ></DIV ></DIV ><DIV CLASS="REVHISTORY" ><TABLE WIDTH="100%" BORDER="0" ><TR ><TH ALIGN="LEFT" VALIGN="TOP" COLSPAN="3" ><B >Revision History</B ></TH ></TR ><TR ><TD ALIGN="LEFT" >Revision 1.3</TD ><TD ALIGN="LEFT" >2003-04-07</TD ><TD ALIGN="LEFT" >Revised by: ds</TD ></TR ><TR ><TD ALIGN="LEFT" COLSPAN="3" >Added <A HREF="links.html" >links</A > section.</TD ></TR ><TR ><TD ALIGN="LEFT" >Revision 1.2</TD ><TD ALIGN="LEFT" >2002-09-26</TD ><TD ALIGN="LEFT" >Revised by: ds</TD ></TR ><TR ><TD ALIGN="LEFT" COLSPAN="3" >Added <A HREF="intro.html#EMAILLIST" >link</A > to new Email Discussion List. Added small teaser to caveat section regarding new and improved QoS for Linux designed specifically for ADSL to be released soon.</TD ></TR ><TR ><TD ALIGN="LEFT" >Revision 1.1</TD ><TD ALIGN="LEFT" >2002-08-26</TD ><TD ALIGN="LEFT" >Revised by: ds</TD ></TR ><TR ><TD ALIGN="LEFT" COLSPAN="3" >A few corrections (Thanks to the many that pointed them out!). Added informational caveat to implementation section.</TD ></TR ><TR ><TD ALIGN="LEFT" >Revision 1.0</TD ><TD ALIGN="LEFT" >2002-08-21</TD ><TD ALIGN="LEFT" >Revised by: ds</TD ></TR ><TR ><TD ALIGN="LEFT" COLSPAN="3" >Better control over bandwidth, more theory, updated for 2.4 kernels</TD ></TR ><TR ><TD ALIGN="LEFT" >Revision 0.1</TD ><TD ALIGN="LEFT" >2001-08-06</TD ><TD ALIGN="LEFT" >Revised by: ds</TD ></TR ><TR ><TD ALIGN="LEFT" COLSPAN="3" >Initial publication</TD ></TR ></TABLE ></DIV ><DIV ><DIV CLASS="ABSTRACT" ><A NAME="AEN38" ></A ><P ></P ><P >This document describes how to configure a Linux router to more effectively manage outbound traffic on an ADSL modem or other device with similar bandwidth properties (cable modem, ISDN, etc). Emphasis is placed on lowering the latency for interactive traffic even when the upstream and/or downstream bandwidth is fully saturated.</P ><P ></P ></DIV ></DIV ><HR></DIV ><DIV CLASS="TOC" ><DL ><DT ><B >Table of Contents</B ></DT ><DT >1. <A HREF="intro.html" >Introduction</A ></DT ><DD ><DL ><DT >1.1. <A HREF="intro.html#AEN43" >New Versions of This Document</A ></DT ><DT >1.2. <A HREF="intro.html#EMAILLIST" >Email Discussion List</A ></DT ><DT >1.3. <A HREF="intro.html#AEN53" >Disclaimer</A ></DT ><DT >1.4. <A HREF="intro.html#COPYRIGHT" >Copyright and License</A ></DT ><DT >1.5. <A HREF="intro.html#AEN59" >Feedback and corrections</A ></DT ></DL ></DD ><DT >2. <A HREF="background.html" >Background</A ></DT ><DD ><DL ><DT >2.1. <A HREF="background.html#AEN65" >Prerequisites</A ></DT ><DT >2.2. <A HREF="background.html#AEN86" >Layout</A ></DT ><DT >2.3. <A HREF="background.html#AEN90" >Packet Queues</A ></DT ></DL ></DD ><DT >3. <A HREF="how-it-works.html" >How it Works</A ></DT ><DD ><DL ><DT >3.1. <A HREF="how-it-works.html#AEN115" >Throttling Outbound Traffic with Linux HTB</A ></DT ><DT >3.2. <A HREF="how-it-works.html#AEN119" >Priority Queuing with HTB</A ></DT ><DT >3.3. <A HREF="how-it-works.html#AEN126" >Classifying Outbound Packets with iptables</A ></DT ><DT >3.4. <A HREF="how-it-works.html#AEN145" >A few more tweaks...</A ></DT ><DT >3.5. <A HREF="how-it-works.html#AEN149" >Attempting to Throttle Inbound Traffic</A ></DT ></DL ></DD ><DT >4. <A HREF="implementation.html" >Implementation</A ></DT ><DD ><DL ><DT >4.1. <A HREF="implementation.html#AEN161" >Caveats</A ></DT ><DT >4.2. <A HREF="implementation.html#AEN166" >Script: myshaper</A ></DT ></DL ></DD ><DT >5. <A HREF="testing.html" >Testing the New Queue</A ></DT ><DT >6. <A HREF="onward.html" >OK It Works!! Now What?</A ></DT ><DT >7. <A HREF="links.html" >Related Links</A ></DT ></DL ></DIV ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE SUMMARY="Footer navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" > </TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" > </TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="intro.html" ACCESSKEY="N" >Next</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" > </TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" > </TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >Introduction</TD ></TR ></TABLE ></DIV ></BODY ></HTML >