This series adds a new ovn controller, ovn-controller-vtep, for VTEP enabled physical switches. The high level architecture is similar to the ovn-controller. Of course the module implementation is vtep specific.
To be able to test the ovn-controller-vtep in autotest, this series include the implementation of ovn-sbctl which allows fine query and configuration of ovnsb db. And the unit tests also illustrates how to ovn-controller-vtep can be used. In this third version of series, refinements are done based on review from Ben and Russell. Particularly, OVN-SB schema is optimized by removing the unnecessary Gateway tables. So, in the "Chassis" table, the "gateway_ports" column is replaced by "logical_switches" column which maps the logical switch name in the gateway to a logical port name that exists in the OVN_Northbound database's "Logical_Port" table. Anyway, I think this series is definitly more more closer~ Go OVN! ~ Alex Wang (7): ofproto-macros.at: Make check_logs() check all daemons' log files. ovn-sb: Remove the "Gateway" table from the ovn-sb schema. ovn-sbctl: Add ovn-sbctl. ovn: Add controller for VTEP switch. ovn-controller-vtep: Add gateway module. ovn-controller-vtep: Add binding module. ovn-controller-vtep: Add pipeline module. manpages.mk | 12 + ovn/.gitignore | 2 - ovn/automake.mk | 12 +- ovn/controller-vtep/.gitignore | 2 + ovn/controller-vtep/automake.mk | 14 + ovn/controller-vtep/binding.c | 193 ++++++ ovn/controller-vtep/binding.h | 25 + ovn/controller-vtep/gateway.c | 281 +++++++++ ovn/controller-vtep/gateway.h | 24 + ovn/controller-vtep/ovn-controller-vtep.8.xml | 70 +++ ovn/controller-vtep/ovn-controller-vtep.c | 272 ++++++++ ovn/controller-vtep/ovn-controller-vtep.h | 45 ++ ovn/controller-vtep/pipeline.c | 514 +++++++++++++++ ovn/controller-vtep/pipeline.h | 25 + ovn/ovn-sb.ovsschema | 17 +- ovn/ovn-sb.xml | 34 +- ovn/utilities/.gitignore | 5 + ovn/utilities/automake.mk | 18 + ovn/{ => utilities}/ovn-nbctl.8.xml | 0 ovn/{ => utilities}/ovn-nbctl.c | 0 ovn/utilities/ovn-sbctl.8.in | 160 +++++ ovn/utilities/ovn-sbctl.c | 835 +++++++++++++++++++++++++ tests/automake.mk | 7 +- tests/ofproto-macros.at | 12 +- tests/ovn-controller-vtep.at | 239 +++++++ tests/ovn-sbctl.at | 61 ++ tests/testsuite.at | 2 + 27 files changed, 2830 insertions(+), 51 deletions(-) create mode 100644 ovn/controller-vtep/.gitignore create mode 100644 ovn/controller-vtep/automake.mk create mode 100644 ovn/controller-vtep/binding.c create mode 100644 ovn/controller-vtep/binding.h create mode 100644 ovn/controller-vtep/gateway.c create mode 100644 ovn/controller-vtep/gateway.h create mode 100644 ovn/controller-vtep/ovn-controller-vtep.8.xml create mode 100644 ovn/controller-vtep/ovn-controller-vtep.c create mode 100644 ovn/controller-vtep/ovn-controller-vtep.h create mode 100644 ovn/controller-vtep/pipeline.c create mode 100644 ovn/controller-vtep/pipeline.h rename ovn/{ => utilities}/ovn-nbctl.8.xml (100%) rename ovn/{ => utilities}/ovn-nbctl.c (100%) create mode 100644 ovn/utilities/ovn-sbctl.8.in create mode 100644 ovn/utilities/ovn-sbctl.c create mode 100644 tests/ovn-controller-vtep.at create mode 100644 tests/ovn-sbctl.at -- 1.7.9.5 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev