[libvirt] [PATCH] esx: Implement network driver

Michal Privoznik mprivozn at redhat.com
Mon Aug 6 08:48:26 UTC 2012


On 05.08.2012 22:11, Matthias Bolte wrote:
> An ESX server has one or more PhysicalNics that represent the actual
> hardware NICs. Those can be listed via the interface driver.
> 
> A libvirt virtual network is mapped to a HostVirtualSwitch. On the
> physical side a HostVirtualSwitch can be connected to PhysicalNics.
> On the virtual side a HostVirtualSwitch has HostPortGroups that are
> mapped to libvirt virtual network's portgroups. Typically there is
> HostPortGroups named 'VM Network' that is used to connect virtual
> machines to a HostVirtualSwitch. A second HostPortGroup typically
> named 'Management Network' is used to connect the hypervisor itself
> to the HostVirtualSwitch. This one is not mapped to a libvirt virtual
> network's portgroup. There can be more HostPortGroups than those
> typical two on a HostVirtualSwitch.
> 
>          +---------------+-------------------+
>    ...---|               |                   |   +-------------+
>          | HostPortGroup |                   |---| PhysicalNic |
>          |   VM Network  |                   |   |    vmnic0   |
>    ...---|               |                   |   +-------------+
>          +---------------+ HostVirtualSwitch |
>                          |     vSwitch0      |
>          +---------------+                   |
>          | HostPortGroup |                   |
>    ...---|   Management  |                   |
>          |    Network    |                   |
>          +---------------+-------------------+
> 
> The virtual counterparts of the PhysicalNic is the HostVirtualNic for
> the hypervisor and the VirtualEthernetCard for the virtual machines
> that are grouped into HostPortGroups.
> 
>    +---------------------+   +---------------+---...
>    | VirtualEthernetCard |---|               |
>    +---------------------+   | HostPortGroup |
>    +---------------------+   |   VM Network  |
>    | VirtualEthernetCard |---|               |
>    +---------------------+   +---------------+
>                                              |
>                              +---------------+
>    +---------------------+   | HostPortGroup |
>    |    HostVirtualNic   |---|   Management  |
>    +---------------------+   |    Network    |
>                              +---------------+---...
> 
> The currently implemented network driver can list, define and undefine
> HostVirtualSwitches including HostPortGroups for virtual machines.
> Existing HostVirtualSwitches cannot be edited yet. This will be added
> in a followup patch.
> ---
>  po/POTFILES.in                 |    1 +
>  src/conf/network_conf.c        |    3 +-
>  src/conf/network_conf.h        |    3 +
>  src/esx/esx_network_driver.c   |  867 +++++++++++++++++++++++++++++++++++++++-
>  src/esx/esx_vi.c               |  171 ++++++++
>  src/esx/esx_vi.h               |   14 +
>  src/esx/esx_vi_generator.input |  151 +++++++
>  src/esx/esx_vi_generator.py    |    5 +
>  8 files changed, 1212 insertions(+), 3 deletions(-)
> 

ACK

Michal




More information about the libvir-list mailing list