From: Andy Furniss <adf.lists@gmail.com>
To: lartc@vger.kernel.org
Subject: Re: Can't get the ingress policer to work
Date: Thu, 09 May 2013 11:00:33 +0000 [thread overview]
Message-ID: <518B81D1.2040400@gmail.com> (raw)
In-Reply-To: <518B64EE.8060503@open-t.co.uk>
Sebastian Arcus wrote:
> I'm trying to limit the bandwidth on the ingress leg of my Internet
> connection. I'm using the code from lartc.org:
>
>
> tc qdisc add dev eth0 handle ffff: ingress
>
> tc filter add dev eth0 parent ffff: protocol ip prio 50 \
> u32 match ip src 0.0.0.0/0 police rate 500kbit \
> burst 10k drop flowid :1
>
>
> I've tried rates of 1Mbit, 10Mbit, 100Mbit. I've tried bursts of 1k,
> 10k, 100k, 1000k. Nothing seems to make any difference. The test
> download starts at about 20Mbytes/second - then keeps on slowing down
> and stalling intermittently all the way down to 6kbytes/second. Then it
> bobs up and down, stalling all the time, between 5kbytes/second and
> 17kbytes/second. There seems to be absolutely no relation between the
> rate I set and the resulting download rate.
>
> I'm testing on two VM's. With no traffic shaping on, I get about 36
> megabytes/second clean speed between the two vms. Kernel on both sides
> is 3.8.4. I'm only applying traffic shaping on one of the vm's.
>
> Any suggestions would be much appreciated. I ran out of ideas so far.
> I've reread the tc-htb man page, searched google on the ingress queue -
> but can't see what am I missing.
I've never tested with a virtual machine so don't know exactly what to
do. The issue is that by default the kernel/driver will aggregate
inbound packets into larger ones and this doesn't work well with
policers default mtu setting as it drops them.
I have suggested mtu 3100 in the past as an extra parameter as it
happened to work on a quick test on a real 100m nic - maybe for vm you
need to go higher, or just turn off any sort of offload for the virtual
device with ethtool and see if that helps.
ethtool -k <devname>
to see what the settings are (generic-receive-offload is likely the
culprit) and eg.
ethtool -K <devname> gro off
prev parent reply other threads:[~2013-05-09 11:00 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-09 8:57 Can't get the ingress policer to work Sebastian Arcus
2013-05-09 9:39 ` Sebastian Arcus
2013-05-09 9:51 ` Ian Macintosh
2013-05-09 10:09 ` Sebastian Arcus
2013-05-09 10:21 ` Andy Furniss
2013-05-09 10:28 ` fanfei
2013-05-09 10:36 ` Sebastian Arcus
2013-05-09 10:41 ` Sebastian Arcus
2013-05-09 11:00 ` Andy Furniss [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=518B81D1.2040400@gmail.com \
--to=adf.lists@gmail.com \
--cc=lartc@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.