From mboxrd@z Thu Jan 1 00:00:00 1970 From: Brian Rak Date: Tue, 11 Mar 2014 16:48:06 +0000 Subject: tc burst size rollover Message-Id: <531F3E46.4050503@gameservers.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: lartc@vger.kernel.org I'm seeing some weird behavior when I'm trying to add some htb queue settings with large burst sizes. It seems that if I specify a burst size over 3355443kb, the number rolls over. For example: # tc class add dev vnet1 parent 1: classid 1:1 htb rate 12500kbps ceil 125000kbps burst 3355444kb # tc class show dev vnet1 parent 1: class htb 1:1 root prio 0 rate 100000Kbit ceil 1000Mbit burst 812b cburst 1375b Is there supposed to be a limitation here? I can't seem to find anything in the documentation talking about it. I've tested this with iproute2-3.12.0 on 3.13.1-1.el6.elrepo.x86_64. This is the full set of commands I was using (these are what libvirt applies by default): tc qdisc del dev vnet1 root tc qdisc del dev vnet1 ingress tc qdisc add dev vnet1 root handle 1: htb default 1 tc class add dev vnet1 parent 1: classid 1:1 htb rate 12500kbps ceil 125000kbps burst 3355444kb tc class show dev vnet1 parent 1: Ultimately, I'm trying to allow bursts at 1000mbit up to 100GB or so, then restrict things to a lower speed. I'm not aware of any way to do this aside from using a large burst size.