Clayton's Tech Bits

Home

Contact

Resumé / C.V.

Links

Search this site:
Custom Search

Categories:

/ (224)
  Admin/ (86)
    Apache/ (7)
      HTTPS-SSL/ (4)
    Cherokee/ (1)
    LAN/ (4)
    LVM/ (3)
    Monitoring/ (2)
      munin/ (2)
    OpenVPN/ (1)
    SSH-Proxy/ (3)
    SSH-SSL/ (6)
    backups/ (16)
      SpiderOak/ (1)
      backuppc/ (5)
      dirvish/ (1)
      misc/ (6)
      rdiff-backup/ (1)
      rsync/ (1)
      unison/ (1)
    commandLine/ (11)
    crontab/ (1)
    databases/ (8)
      MSSQL/ (2)
      MySQL/ (5)
      PostgreSQL/ (1)
    dynamicDNS/ (2)
    email/ (9)
      Dovecot/ (1)
      deliverability/ (1)
      misc/ (1)
      postfix/ (6)
    iptables/ (2)
    virtualization/ (8)
      VMware/ (1)
      virtualBox/ (7)
  Coding/ (11)
    bash/ (1)
    gdb/ (1)
    git/ (2)
    php/ (4)
    python/ (3)
      Django/ (1)
  Education/ (1)
  Hosting/ (23)
    Amazon/ (14)
      EBS/ (3)
      EC2/ (11)
    Godaddy/ (2)
    NearlyFreeSpeech/ (3)
    Rackspace/ (1)
    vpslink/ (3)
  Linux/ (20)
    Awesome/ (3)
    CPUfreq/ (1)
    Chinese/ (1)
    Debian/ (5)
      WPA/ (1)
    audio/ (1)
    encryption/ (2)
    fonts/ (1)
    misc/ (4)
    router-bridge/ (2)
  SW/ (39)
    browser/ (2)
      Chrome/ (1)
      Firefox/ (1)
    business/ (25)
      Drupal/ (8)
      KnowledgeTree/ (6)
      Redmine/ (2)
      SugarCRM/ (6)
      WebERP/ (2)
      eGroupware/ (1)
    email/ (1)
    fileSharing/ (1)
      mldonkey/ (1)
    graphics/ (2)
    research/ (2)
    website/ (6)
      blog/ (6)
        blosxom/ (3)
        rss2email/ (1)
        webgen/ (1)
  Security/ (12)
    IMchat/ (1)
    circumvention/ (2)
    e-mail/ (4)
    greatFirewall/ (1)
    hacking/ (1)
    password/ (1)
    privacy/ (1)
    skype/ (1)
  Services/ (1)
    fileSharing/ (1)
  TechWriting/ (1)
  xHW/ (13)
    Lenovo/ (1)
    Motorola_A1200/ (2)
    Thinkpad_600e/ (1)
    Thinkpad_a21m/ (3)
    Thinkpad_i1300/ (1)
    Thinkpad_x24/ (1)
    USB_audio/ (1)
    scanner/ (1)
    wirelessCards/ (2)
  xLife/ (17)
    China/ (9)
      Beijing/ (5)
        OpenSource/ (3)
    Expatriation/ (1)
    Vietnam/ (7)

Archives:

  • 2012/03
  • 2012/01
  • 2011/12
  • 2011/11
  • 2011/10
  • 2011/09
  • 2011/08
  • 2011/07
  • 2011/06
  • 2011/05
  • 2011/04
  • 2011/02
  • 2010/12
  • 2010/11
  • 2010/10
  • 2010/09
  • 2010/08
  • 2010/07
  • 2010/06
  • 2010/05
  • 2010/04
  • 2010/03
  • 2010/02
  • 2010/01
  • 2009/12
  • 2009/11
  • 2009/10
  • 2009/09
  • 2009/08
  • 2009/07
  • 2009/06
  • 2009/05
  • 2009/04
  • 2009/03
  • 2009/02
  • 2009/01
  • 2008/12
  • 2008/11
  • 2008/10
  • 2008/09
  • Subscribe XML RSS Feed

    Mon, 22 Sep 2008


    /Admin/LAN: (Not Working) Use CBQ.init to Control / Limit Bandwidth Useage by IP

    Otherwise known as "bandwidth shaping".

    Next (in Debian) install the "shaper" package, which contains the CBQ.init[1] init script. Its not very well documented, but there is a little bit[2]. The best source for information in the installed package is the comments of the script itself: /etc/init.d/shaper.

    I dropped the hammer on my bandwidth abuser by creating two files: /etc/shaper/cbq-20.101-internet:

    DEVICE=eth0,2Mbit,200Kbit
    RATE=30Kbit
    WEIGHT=3Kbit
    PRIO=5
    RULE=192.168.8.101,
    and /etc/shaper/cbq-20.internet-101:
    DEVICE=wlan0,2Mbit,200Kbit
    RATE=30Kbit
    WEIGHT=3Kbit
    PRIO=5
    RULE=192.168.8.101

    Note that this configuration has 192.168.8.101 on the wlan0 wireless network, and eth0 is the internet-facing interface.

    If you wish to watch the bandwidth in real-time, install the "nload" terminal utility. And of course, do not forget to restart shaper:

    /etc/init.d/shaper restart

    According to the docs, shaper can do a lot more complicated things, like limiting aggregrate traffic to a block of IPs, or limiting traffic to a specified port. It also would appear to be able to use priorities and the concept of aggregation to allow a lower priority user to borrow unused bandwidth from a higher priority user.

    Unfortunately, as of this writing, shaper / CBQ.init seems to be not working. It seems to make the network almost unusable for the user being capped, no matter how big the RATE setting. I have issued a bug report and will continue investigating.

    [1] http://sourceforge.net/projects/cbqinit/
    [2] http://www.faqs.org/docs/Linux-HOWTO/Bandwidth-Limiting-HOWTO.html#CBQ

    posted at: 07:23 | path: /Admin/LAN | permanent link to this entry