Bandwidth Limiting HOWTO

Tomasz Chmielewski

tch@writemail.com 

Revision History
Revision 0.22001-05-20Revised by: tc

This document describes how to set up your Linux server to limit download bandwidth or incoming traffic and how to use your internet link more efficiently.


Table of Contents
1. Introduction
1.1. New versions of this document
1.2. Disclaimer
1.3. Copyright and License
1.4. Feedback and corrections
1.5. Thanks
2. Before We Start
2.1. What do we need
2.2. How does it work?
3. Installing and Configuring Necessary Software
3.1. Installing Squid with the delay pools feature
3.2. Configuring Squid to use the delay pools feature
3.3. Solving remaining problems
3.3.1. Linux 2.2.x kernels (ipchains)
3.3.2. Linux 2.4.x kernels (iptables)
4. Dealing with Other Bandwidth-consuming Protocols Using CBQ
4.1. FTP
4.2. Napster, Realaudio, Windows Media and other issues
5. Frequently Asked Questions
5.1. Is it possible to limit bandwidth on a per-user basis with delay pools?
5.2. Is it possible to limit bandwidth on a per-user basis with cbq.init script?
5.3. CBQ sometimes doesn't work for no reason.
5.4. Delay pools are stupid; why can't I download something at full speed when the network is used only by me?
5.5. CBQ is stupid; why can't I download something at full speed when the network is used only be me?
6. Miscellaneous
6.1. Useful resources