
Thanks Matthias for the explanation, I was working on the project which required libvirt to control/set networking on a given ESX host. I may need
Date: Sun, 5 Aug 2012 22:45:26 +0200 Subject: Re: [libvirt] [PATCH v5] ESX: Add routines to interface driver From: matthias.bolte@googlemail.com To: ata.husain@hotmail.com CC: libvir-list@redhat.com
2012/8/5 Matthias Bolte <matthias.bolte@googlemail.com>:
2012/8/2 Ata E Husain Bohra <ata.husain@hotmail.com>:
Add following routines to esx_interface_driver: esxNumOfInterfaces, esxNumOfDefinedInterfaces, esxListInterfaces, esxListDefinedInterfaces, esxInterfaceLookupByMACString, esxInterfaceGetXMLDesc, esxInterfaceUndefine, esxInterfaceCreate, esxInterfaceDestroy
Signed-off-by: Ata E Husain Bohra <ata.husain@hotmail.com>
Okay, I finally had time to take a detailed look at the interface driver and the related network driver and your proposed implementation for the interface driver.
I think listing HostVirtualNics in the interface driver is not the correct mapping between vSphere API and libvirt. Also listing HostVirtualNics as bridges is not correct because a HostVirtualNic is not a bridge. A HostVirtualSwitch can be seen as a kind of bridge, but a HostVirtualSwitch is more like a virtual network in libvirt terms.
In terms of libvirt the interface driver is about physical NICs that can be used to connect a libvirt virtual network to the physical network. Therefore, the interface driver should just list the PhysicalNics, but not the HostVirtualNics. I think there is currently no place in the libvirt API to map the HostVirtualNics to. Also I don't think that it is important to make the HostVirtualNics available via libvirt API. I might be wrong here, but mapping them via libvirt interface driver is still wrong in my opinion.
Regarding the network driver, I think a libvirt virtual network is best represented by a HostVirtualSwitch and the HostPortGroups are mapped to the portgroups of a libvirt virtual switch.
I'm sorry that I let you wait for quite a while now until I came to this understanding that is contrary to your proposed interface driver.
I missed to mention that I proposed an implementation for the interface and network drivers according to the described mapping:
https://www.redhat.com/archives/libvir-list/2012-August/msg00307.html https://www.redhat.com/archives/libvir-list/2012-August/msg00308.html
-- Matthias Bolte http://photron.blogspot.com