Bug 636106

Summary: RFE: vSwitch: Support a logical network switch abstraction
Product: [Community] Virtualization Tools Reporter: Daniel BerrangĂ© <berrange>
Component: libvirtAssignee: Laine Stump <laine>
Severity: medium Docs Contact:
Priority: low    
Version: unspecifiedCC: crobinso, laine, xen-maint
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 643947 (view as bug list) Environment:
Last Closed: 2011-07-21 18:58:40 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On:    
Bug Blocks: 636029    

Description Daniel Berrangé 2010-09-21 14:22:08 UTC
Description of problem:
The physical network interface configuration may be different on each host machine, even though each host is using the same logical network. There needs to be a 'virtual switch' abstraction modelled in libvirt. This will let VMs be configured identically on every host, even if the physical connectivity is different.

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
Actual results:

Expected results:

Additional info:

Comment 1 Laine Stump 2011-06-15 14:14:07 UTC
Here is the latest proposal for how this will work:


Please comment appropriately in followup messages on the mailing list.

Comment 2 Laine Stump 2011-07-05 07:49:42 UTC
A series of patches providing this functionality has been posted upstream:


It is functionally complete, and has gone through rudimentary testing.

Comment 3 Laine Stump 2011-07-21 18:58:40 UTC
A series of patches to support this has been pushed upstream, and will be in the next libvirt upstream release:

commit 6fe5fde2922405176fbe9315971ab818193af0e0
Author: Laine Stump <laine@laine.org>
Date:   Tue Jul 19 22:08:15 2011 -0400

    util: define MAX
commit a3d95b550bf6a1fa032d7cc70352c88685670bac
Author: Laine Stump <laine@laine.org>
Date:   Wed Jun 29 00:38:10 2011 -0400

    conf: put virtPortProfile struct / functions in a common location
commit 524655eea2500196a98af20be3edfa198f870e85
Author: Laine Stump <laine@laine.org>
Date:   Mon Jul 18 18:44:38 2011 -0400

    conf: virDomainNetDef points to (rather than contains) virtPortProfile
commit 07f4136993c3cce619ff92f4687171a335f6bf51
Author: Laine Stump <laine@laine.org>
Date:   Sun Jun 26 04:09:00 2011 -0400

    conf: support abstracted interface info in domain interface XML
commit 40fd7073befbd6e8ed2b6935898079bb2ff874dd
Author: Laine Stump <laine@laine.org>
Date:   Tue Jul 19 23:01:09 2011 -0400

    conf: support abstracted interface info in network XML

commit b48e81bf945314d491b0919144dee8565d3d446f
Author: Laine Stump <laine@laine.org>
Date:   Thu Jun 30 17:05:07 2011 -0400

    network: separate Start/Shutdown functions for new network types

commit 03caa988a6a1497a012205796f78b2005edc09cf
Author: Laine Stump <laine@laine.org>
Date:   Sun Jul 3 21:57:45 2011 -0400

    qemu: use virDomainNetGetActual*() functions where appropriate
commit e9949a586a9a2e6642d6394f85bd58955740b69d
Author: Laine Stump <laine@laine.org>
Date:   Wed Jul 20 00:06:45 2011 -0400

    qemu: use virDomainNetGetActual*() in qemuDomainXMLToNative
commit 04711a0f32ac2e9c44081911295b436b2c0a11cf
Author: Laine Stump <laine@laine.org>
Date:   Mon Jul 4 02:27:12 2011 -0400

    network: internal API functions to manage assignment of physdev to guest