[libvirt] Different VLAN IDs

Csom Gyula csom at interface.hu
Wed May 19 14:11:36 UTC 2010


Hi there,

We experienced network problems (namely net packet storm), when using multiple NICs and 
the same VLAN ID-s for different KVM guests. It turned out that we could workaround the 
problem by simply assigning different VLAN ID-s to the different NICs. (Btw our case 
looked similar to the one that was posted and discussed on the KVM mailing list. Also the
solution was picked from that discussion. See: http://www.mail-archive.com/kvm@vger.kernel.org/msg24203.html, for details)

We could resolve the problem at the KVM layer, however we have to do it at the libvirt 
layer, too. Running thru qemu_conf.c, and executing some unit tests with different type 
of interfaces (eg. ethernet, bridge, network), it turned out, that libvirt reassigns 
the same vlan ids to the guests starting from 0... 

So far the only solution we could figure out is to use a wrapper script around the KVM 
binary that replaces VLAN ID-s with unique ones. This one was picked up from a recent 
discussion on the upcoming debug API (http://www.mail-archive.com/libvir-list@redhat.com/msg23140.html). 
However the method was marked fragile in the list, due the evolving nature of the libvirt 
API.

My questions: 

  - Did anyone experience similar problems, and come up with a clean solution? Specially 
    is there any better way to provide unique VLAN ID-s thru libvirt then the above
    one? 

As far as I see the upcoming -netdev option (introduced in QEMU 0.12) will solve the 
question. However this was removed from libvirt, since the corresponding qemu monitor command 
is not yet developed: 

  - Do you have a target release for the -netdev option, or is it unknown (eg. dependent 
    on the yet unknown KVM/QEMU development schedule)?

Cheers,
Gyula

Ps.: our env: Debian GNU/Linux, libvirt, kvm, ebtables




More information about the libvir-list mailing list