The following patch series implements the SW Gateway infrastructure. The SW gateway runs in the context of ovn-controller as other HVs. The gateway node uses a single bridge (call it br-int) that is actively controlled by OVN. This bridge also houses the tunnels connecting other HVs. Additional physical bridges are created for each logical switch supported by the gateway. These bridges act as simple wires from the POV of >= L2 on br-int and are there to support bonding at a minimum. A pair of patch ports are created to connect each physical bridge to br-int.
A new logical port type is added for SW gateways called "gw". This is needed to differentiate logic from HW gateway support. Changes to HW gateway support are coming in a next series. patch.c: Physical bridge and patch port creation physical.c: Support gateway br-int patch ports as "physical" ports This patch series builds (i.e. depends on) on a previous series supporting physical endpoints and their binding to logical ports. That series also added some gateway (gw) logical port checks that this series uses, in the physical.c file binding.c support the use of physical endpoint for gateway (gw) logical ports ovn-nb.xml; ovn-sb.xml: document the new "gw" logical port type ovn-controller.c; patch.h: Add a chassis name parameter needed for gateways Particular logical port types are not presently specified/enforced in the NB and SB schemas themselves. This may be to allow flexibility and ease of adding new types. ovn.at: A new test is added to exercise the SW gateway for L2 switching Darrell Ball (8): Add flow support for gateway patch ports in ovn-controller Create SW gateway physical bridges and patch ports Add chassis name parameter to support SW gateway in ovn-controller Add chassis name parameter to support SW gateway in ovn-controller Support physical endpoint based binding for SW gateway logical ports Add software gateway logical port type - 'gw' Add software gateway logical port type - 'gw' Add a test for software gateway using ovn-controller ovn/controller/binding.c | 15 +- ovn/controller/ovn-controller.c | 2 +- ovn/controller/patch.c | 134 +++++++++++++++++- ovn/controller/patch.h | 2 +- ovn/controller/physical.c | 5 ++++ ovn/ovn-nb.xml | 4 + ovn/ovn-sb.xml | 4 ++++ tests/ovn.at | 133 ++++++++++++++++++ 8 files changed, 291 insertions(+), 8 deletions(-) -- 1.9.1 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev