[libvirt] some questions about libvirt features and limitations

Florian Vichot florian.vichot at diateam.net
Wed Mar 4 15:11:54 UTC 2009

> I'm not sure - it depends what you're doing with the TAP device on the
> host side of things ?

The project I'm working on is an information system simulator. So I need 
virtual machines and virtual networks. I plan to use libvirt to provide 
the virtual machines, but even though I know libvirt provides virtual 
network facilities, the ones we developed are more adequate to what we 
need. So I need a way to "bridge" the network frames coming from the 
virtual machines into our "virtual networks". The way we do that using 
our current setup is by "sniffing" all traffic from TAP interface (that 
each corresponds to an "ethX" interface inside a guest) and injecting 
those frames inside our "virtual networks" to have those frames routed 
where necessary.

So what I need is a TAP for each ethernet interface in each guest, and 
that's it. No bridge, no NAT. Just a one-to-one correspondence of guest 
"ethX" interfaces to host TAP interfaces.

It seems to be what libvirt provides, but it always comes with a bridge. 
Is there a way to get the TAP without the bridge ?

> It provides the implementation for various parts of the API, specificaly
> the network driver, the storage driver, node device driver. Some of the
> hypervisor drivers also live in the daemon (QEMU & LXC). So it should
> be running at all times.
> It can also be configured to allow secure remote access with TLS/SSL
> and SASL authenticaiton.

Thank you for the clarification. I will start the daemon then :).

> Yes, seems like a good idea. We already support <filesystem type='directory'>
> for the LXC container driver, so it makes perfect sense to support it for
> OpenVZ too if its practical.

Ok. Then I'll do that, and send a patch to the mailing list separately.

>> Is there support in libvirt of "cloning" (duplicating a VM disk
>> /filesystem) ?
> Not at this time, but it is on the todo list.

Too bad. I'll probably keep my ugly code for that until the API are 
added in libvirt, then I'll port what I have to libvirt.

> They are APIs to let you query information about all devices present on
> the host node. eg, find out about PCI devices, USB devices, block devices,
> network interfaces, etc, etc. If you know the 'HAL' software, then it is
> basically doing the same thing.

Thank you for the explanation.

PS: Sorry for the duplicate original email.

More information about the libvir-list mailing list