help me.
I'm interested in QoS per-service rather than per-interface. For instance:
1. ssh output (what's printed on screen when I login from a remote host to my home machine) should get priority over, let's say, over SMTP or actually any other active protocol. 2. Incoming HTTP should get higher precedence over incoming POP (e.g. when I browse from the desktop at home I don't care if fetchmail will wait a little longer to check mail on Actcom's mail server).
Is this doable with free Linux tools?
Cheers,
--Amos
Josh Zlatin-Amishav wrote:
On Tue, 4 May 2004, Noam Rathaus wrote:
On Tuesday 04 May 2004 09:41, you wrote:
On Mon, 3 May 2004, Tal Achituv wrote:
Hi!
Is there any way to measure and or limit the monthly bandwidth on a box?
Hi Tal, To measure the bandwidth I use ntop and to limit bandwidth I use tc with the HTB. Note you can also prioritize both your egress and ingress traffic too.
Thanks,
Tal.
Hi,
Could you elaborate a bit more how you integrated ntop, tc and HTB?
Hi Noam, There are two seperate projects here. The first is ntop. It is very easy to install on Debian, I haven't had experience installing ntop on other platforms. I setup ntop on a bridge between my router and firewall. You can configure ntop to log to an RRD database, thus you do not have to worry about data reduction. You can find out more here: http://www.ntop.org/ntop.html
Bandwidth Limitation: You need the iproute package. I wrote a bash script using HTB to handle the QoS on my entire Internet connection. If you just want to limit the bandwidth on one box I would use the TBF (Token Bucket Filter) instead of HTB (Hierarchical Token Bucket).
From the Linux Advanced Routing & Traffic HOWTO: The "Token bucket filter is a simple qdisc that passes packets arriving at a rate that does not exceed the set rate, but allows short bursts that exceed the set rate ... The TBF consists of a buffer or bucket that is constantly filled by some virtual peices of information called tokens, at a specified rate (token rate). The most important parameter of the bucket is its size, that is the number of tokens it can store."
The following was tested on Debian unstable with kernel 2.6.3-1-386
To implement QoS on one box type: [EMAIL PROTECTED] root]# tc qdisc add dev eth1 root tbf rate 300kbit latency 25ms burst 1600
The following is an explantion of the above command: tc: Traffic control qdisc add dev eth1 root tbf: Change the queueing algorithm that manages the eth1 device from the default (pfifo_fast) to TBF (token bucket filter) rate 300kbit: The rate which outgoing packets will be sent latency 25ms: The maximum amount of time a packet can sit in the TBF burst 1600: The size of the bucket bucket in bytes.
To view qdisc statistics type: [EMAIL PROTECTED] root]# tc -s qdisc list dev eth1
To remove QoS on one box type: [EMAIL PROTECTED] root]# tc qdisc del dev eth1 root tbf rate 300kbit latency 25ms burst 1600
For more information read the Linux Advanced Routing & Traffic Control HOWTO: http://lartc.org/howto/
================================================================= To unsubscribe, send mail to [EMAIL PROTECTED] with the word "unsubscribe" in the message body, e.g., run the command echo unsubscribe | mail [EMAIL PROTECTED]