* [LARTC] egress bandwidth not limited / limited extremely
@ 2007-01-16 0:57 Roman Skula
2007-01-16 14:53 ` [LARTC] egress bandwidth not limited / limited Andy Furniss
` (4 more replies)
0 siblings, 5 replies; 6+ messages in thread
From: Roman Skula @ 2007-01-16 0:57 UTC (permalink / raw)
To: lartc
I'm just-so-fresh to the list, so hello everyone.
I'm having a realy hard time with setting up very simple bandwidth
management. What I am trying to do is setup a 10Mbit interface to send
at only 1920kbit to most of the network (to make sure it hardly ever
tops 2mbit). I did succeed with the ingress traffic... With egress
however, I get very odd results at different speeds.
With HTB:
If i try to throttle at 0.5mbit for example, a windows box on 1mbit ADSL
line is capable of downloading at ~64k from the box i'm limiting, while
a bsd box on a 4mbit DSL line happily downloads at ~200k. Limiting to
2mbit looks like there are no results at all
With TBF:
The dowloads from the limited box are always ~5k, at least to what I've
observed with different configurations (even with limits at 2mbit).
I'm doing all of that directly on the Internet with public IPs.
I think I've read all the TLDP and LARTC to no results, so would greatly
appreciate any help with strictly cutting the bandwidth ath ~1920kbit.
What am I missing?
The scrips I've tried (or tried their variants):
#tc qdisc add dev eth0 root handle 1: htb default 20
#tc class add dev eth0 parent 1: classid 1:1 htb rate 10mbit
#tc class add dev eth0 parent 1:1 classid 1:10 htb rate 9.5mbit
#tc class add dev eth0 parent 1:1 classid 1:20 htb rate 0.5mbit
#tc qdisc add dev eth0 parent 1:10 handle 10: sfq perturb 10
#tc qdisc add dev eth0 parent 1:20 handle 20: sfq perturb 10
#tc filter add dev eth0 parent 1: protocol ip u32 match ip dst
a.b.c.d/24 flowid 1:10
#tc qdisc add dev eth0 root tbf rate 0.5mbit burst 5kb latency 70ms
peakrate 1mbit minburst 1540
(yes that does 0.5mbit limiting, but it would be a start...)
#tc qdisc add dev eth0 root handle 1: htb default 20
#tc class add dev eth0 parent 1: classid 1:1 htb rate 1920kbit
#tc class add dev eth0 parent 1:1 classid 1:10 htb rate 128kbit prio 1
#tc class add dev eth0 parent 1:1 classid 1:20 htb rate 1792kbit prio 2
#tc qdisc add dev eth0 parent 1:10 handle 10: sfq perturb 10
#tc qdisc add dev eth0 parent 1:20 handle 20: sfq perturb 10
#tc filter add dev eth0 parent 1:0 protocol ip prio 10 u32 match ip tos
0x10 0xff flowid 1:10
#tc filter add dev eth0 parent 1:0 protocol ip prio 10 u32 match ip
protocol 1 0xff flowid 1:10
I use the latest iproute2 from the gentoo portage, marked as stable on
amd64:
sys-apps/iproute2-2.6.16.20060323/
I manually setup to NIC at server boot, with:
#!/bin/sh
mii-tool -F 10baseT-FD eth0
(but I had the same problems before I did that when the box was in a
private LAN)
The server details are:
(serenity:~) # uname -a89zx
Linux serenity 2.6.18-gentoo-r4 #1 SMP Mon Jan 15 12:33:56 CET 2007
x86_64 Intel(R) Pentium(R) D CPU 3.00GHz GenuineIntel GNU/Linux
(this is genkernel generated)
(serenity:~) # grep -i config_hz
/etc/kernels/kernel-config-x86_64-2.6.18-gentoo-r4
# CONFIG_HZ_100 is not set
CONFIG_HZ_250=y
# CONFIG_HZ_1000 is not set
CONFIG_HZ%0
(serenity:~) # lspci | grep -i ether
05:04.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5714
Gigabit Ethernet (rev a3)
05:04.1 Ethernet controller: Broadcom Corporation NetXtreme BCM5714
Gigabit Ethernet (rev a3)
(serenity:~) # lsmod
Module Size Used by
sch_sfq 7424 0
sch_htb 18944 1
act_police 8480 1
cls_u32 9480 2
sch_ingress 5248 1
sch_tbf 8320 0
ipt_LOG 8192 1
xt_limit 4352 1
xt_state 3840 1
ip_conntrack 53092 1 xt_state
xt_tcpudp 4864 5
iptable_filter 4736 1
iptable_mangle 4480 0
ip_tables 22312 2 iptable_filter,iptable_mangle
x_tables 18824 5
ipt_LOG,xt_limit,xt_state,xt_tcpudp,ip_tables
(serenity:~) # iptables -nL
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:20
flags:0x17/0x02
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:21
flags:0x17/0x02
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
flags:0x17/0x02
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
flags:0x17/0x02
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp
dpts:20000:20100 flags:0x17/0x02
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state
RELATED,ESTABLISHED
ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0 icmp type 8
LOG all -- 0.0.0.0/0 0.0.0.0/0 limit: avg
3/hour burst 5 LOG flags 0 level 4 prefix `iptables-IN-policy: '
Chain FORWARD (policy DROP)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
(the mangle tables are empty)
Regards,
--
Roman Sku³a (http://roman.skula.com)
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [LARTC] egress bandwidth not limited / limited
2007-01-16 0:57 [LARTC] egress bandwidth not limited / limited extremely Roman Skula
@ 2007-01-16 14:53 ` Andy Furniss
2007-01-16 17:05 ` [LARTC] egress bandwidth not limited / limited extremely Roman Skula
` (3 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Andy Furniss @ 2007-01-16 14:53 UTC (permalink / raw)
To: lartc
Roman Skula wrote:
> 05:04.1 Ethernet controller: Broadcom Corporation NetXtreme BCM5714
> Gigabit Ethernet (rev a3)
You may need to turn off segmentation offload with ethtool -k
Andy.
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [LARTC] egress bandwidth not limited / limited extremely
2007-01-16 0:57 [LARTC] egress bandwidth not limited / limited extremely Roman Skula
2007-01-16 14:53 ` [LARTC] egress bandwidth not limited / limited Andy Furniss
@ 2007-01-16 17:05 ` Roman Skula
2007-01-17 11:12 ` Marek Kierdelewicz
` (2 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Roman Skula @ 2007-01-16 17:05 UTC (permalink / raw)
To: lartc
Andy Furniss napisa³(a):
> Roman Skula wrote:
>> 05:04.1 Ethernet controller: Broadcom Corporation NetXtreme BCM5714
>> Gigabit Ethernet (rev a3)
> You may need to turn off segmentation offload with ethtool -k
A huge, wet kiss for you, this turned my sky blue again. :)
Many thanks!
Best of wishes,
--
Roman Sku³a (http://roman.skula.com)
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [LARTC] egress bandwidth not limited / limited extremely
2007-01-16 0:57 [LARTC] egress bandwidth not limited / limited extremely Roman Skula
2007-01-16 14:53 ` [LARTC] egress bandwidth not limited / limited Andy Furniss
2007-01-16 17:05 ` [LARTC] egress bandwidth not limited / limited extremely Roman Skula
@ 2007-01-17 11:12 ` Marek Kierdelewicz
2007-01-17 21:11 ` Andy Furniss
2007-01-17 21:18 ` [LARTC] egress bandwidth not limited / limited Andy Furniss
4 siblings, 0 replies; 6+ messages in thread
From: Marek Kierdelewicz @ 2007-01-17 11:12 UTC (permalink / raw)
To: lartc
Hi there,
>> 05:04.1 Ethernet controller: Broadcom Corporation NetXtreme BCM5714
>> Gigabit Ethernet (rev a3)
>You may need to turn off segmentation offload with ethtool -k
That's very interesting. Do you have any more information on this
subject? Does tso in general distrupt accuracy of tc ops or is it the
case only with Broadcom nics? Any links would be very much appreciated.
Thanks for response in advance!
cheers,
Marek Kierdelewicz
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [LARTC] egress bandwidth not limited / limited extremely
2007-01-16 0:57 [LARTC] egress bandwidth not limited / limited extremely Roman Skula
` (2 preceding siblings ...)
2007-01-17 11:12 ` Marek Kierdelewicz
@ 2007-01-17 21:11 ` Andy Furniss
2007-01-17 21:18 ` [LARTC] egress bandwidth not limited / limited Andy Furniss
4 siblings, 0 replies; 6+ messages in thread
From: Andy Furniss @ 2007-01-17 21:11 UTC (permalink / raw)
To: lartc
Marek Kierdelewicz wrote:
> Hi there,
>
>
>>>05:04.1 Ethernet controller: Broadcom Corporation NetXtreme BCM5714
>>>Gigabit Ethernet (rev a3)
>
>
>>You may need to turn off segmentation offload with ethtool -k
>
>
> That's very interesting. Do you have any more information on this
> subject? Does tso in general distrupt accuracy of tc ops or is it the
> case only with Broadcom nics? Any links would be very much appreciated.
I don't have any gig eth, but it's not just Broadcom.
There have been other posts on here where people have needed to increase
htb's mtu parameter to get htb to handle it - despite the interface
being 1500. For shaping traffic for a slow link that is not going to be
nice - you could end up dropping multiple tcp segments at once, and it
will hurt jitter. I don't imagine it's right to do it for shaping at gig
speed either, maybe the default long queue on eth saves dropping.
I suppose those using gig eth and shaping routed traffic at 1500 MTU
will not notice unless they try and shape locally generated aswell.
Andy.
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [LARTC] egress bandwidth not limited / limited
2007-01-16 0:57 [LARTC] egress bandwidth not limited / limited extremely Roman Skula
` (3 preceding siblings ...)
2007-01-17 21:11 ` Andy Furniss
@ 2007-01-17 21:18 ` Andy Furniss
4 siblings, 0 replies; 6+ messages in thread
From: Andy Furniss @ 2007-01-17 21:18 UTC (permalink / raw)
To: lartc
Roman Skula wrote:
> Andy Furniss napisa³(a):
>
>>Roman Skula wrote:
>>
>>>05:04.1 Ethernet controller: Broadcom Corporation NetXtreme BCM5714
>>>Gigabit Ethernet (rev a3)
>>
>>You may need to turn off segmentation offload with ethtool -k
>
> A huge, wet kiss for you, this turned my sky blue again. :)
Lol - I forgot to mention: be carefull about using htb default, your
arp/other link layer end up there. If you don't specify a default htb
will let them through unshaped, you can make a filter to catch the
unclassified IP traffic and send it to the class you want.
Andy.
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2007-01-17 21:18 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-01-16 0:57 [LARTC] egress bandwidth not limited / limited extremely Roman Skula
2007-01-16 14:53 ` [LARTC] egress bandwidth not limited / limited Andy Furniss
2007-01-16 17:05 ` [LARTC] egress bandwidth not limited / limited extremely Roman Skula
2007-01-17 11:12 ` Marek Kierdelewicz
2007-01-17 21:11 ` Andy Furniss
2007-01-17 21:18 ` [LARTC] egress bandwidth not limited / limited Andy Furniss
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.