Linux Today: Linux News On Internet Time.

Bandwidth Limiting HOWTO with Linux, tc and iproute2

Sep 24, 2008, 12:06 (2 Talkback[s])
(Other stories by Adam Palmer)

[ Thanks to Adam Palmer for this link. ]

"I've recently optimized the scripts used for bandwidth management in one of our UK facilities and I thought I'd post a quick howto on it.

"My setup here is a live feed entering eth0 on this linux router and leaving eth1 into a switch connected to a collection of other servers. This is set up as an unrestricted public router, routing between a /30 on eth0 and a /24 on eth1.

"Note: We can't in any way restrict the amount of traffic that eth0 receives from the outside, so instead we restrict how fast eth0 sends data out, the same applies the other way round. So, if we want to limit the amount of data that the local servers can send, we shape the router's external interface (eth0). If we want to limit the amount of data that the local servers can receive, we shape the router's internal interface (eth1)

"I have tried not to get bogged down with too many irrelevant details here and would be happy to answer any questions or take any corrections. It's pretty simple and it works well. Install bmon and you can confirm this yourself. The purpose of this is that I can take a 10mbit connection and limit the traffic to 5mbit ensuring that I don't break the 95th percentile that I want to maintain at the datacenter. I can increase and decrease this at any time as traffic requires or permits respectively."

Complete Story

Related Stories: