2012/12/3 Davide Guerri <d.guerri@unidata.it>
Hi,
I'm having some weird problem with the setup of the QoS on a bridged network.

As the docs states, outbound/inbound average speed should be expressed in KBps (KBytes per second) but in order to get a maximum speed of 10Mbps (megabits per second) surprising enough I have to use 2560 on the guest (not 1280 as expected).
Using 1280 units I get a speed og 5Mbps.

I'm aware of peak and burst parameters but even with them I'm seeing the same (long-term) behavior.

Here follows my configuration.

Thank you in advance for any help you can provide.



Domain definition (relevant part only)

virsh # dumpxml mydomain
<domain type='kvm' id='45'>
 [...]
 <devices>
   [...]
   <interface type='network'>
     <mac address='52:54:00:xx:xx:xx'/>
     <source network='br909'/>
     <target dev='vnet43'/>
     <model type='virtio'/>
     <bandwidth>
       <inbound average='2560'/>
       <outbound average='2560'/>
     </bandwidth>
     <alias name='net0'/>
     <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
   </interface>
   [...]
 </devices>
</domain>


The network definition:
virsh # net-dumpxml br909
<network>
 <name>br909</name>
 <uuid>07319380-2025-cdcc-924a-149cd0370b56</uuid>
 <forward mode='bridge'/>
 <bridge name='br909' />
</network>


And iperf result (client and server are on the same vlan and they are running on the same host)

[  5] local xx.xx.xx.xx port 5001 connected with xx.xx.xx.yy port 18396
[  5]  0.0-30.1 sec  35.4 MBytes  9.87 Mbits/sec
 
provide your os version and libvirt version plz.
and use the following command to check the tc mtu size:
   tc filter list dev vnet0 root
if the mtu size in the output is not 64kb,then you must update your libvirt to 0.9.11 or later.