Strange traffic control behaviour?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi, I noticed a strange behaviour on a small sample network I used to test my
traffic control setup.
Below is the network setup (sorry for my ascii art..):

end user1|------------|router1|------------|router2|------------|end user2|
        eth0         eth1     eth0        eth0    eth1         eth0

(Static routes on router1 and router2).

Test1:

I applied the following tc rules on eth1 of router1 to limit the bandwidth
to 3Mbit for a download flux (by wget or scp) from "end user2" to "end user1":

tc qdisc add dev eth1 root handle 1:0 htb default 100
tc class add dev eth1 parent 1:0 classid 1:1 htb rate 3Mbit ceil 3Mbit
tc class add dev eth1 parent 1:1 classid 1:100 htb rate 2Mbit ceil 3Mbit
tc class add dev eth1 parent 1:1 classid 1:200 htb rate 1Mbit ceil 3Mbit

Theoretically "end user1" should get about 375kbyte/s (3Mbit), but instead
I get bit less, about 330 kbye/s and the flux tends to fluctuate a bit.
(all other interfaces are "clean", no tc rules).

Test2:

However, if I apply the same tc rules to the router2's eth0 instead, I get
a *stable* flux of *exactly* 3Mbit (375kbyte/s), to be more precise what
I should have gotten on test1!

How can this be explained?

In general, noticed that tc applied "upstream" gives better results than
tc applied downstream.  In other words, it's better to limit network
traffic near the source, can you confirm?

Thanks.

-- 
Lorenzo
--
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux 802.1Q VLAN]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Git]     [Bugtraq]     [Yosemite News and Information]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux PCI]     [Linux Admin]     [Samba]

  Powered by Linux