This series adds a new ovn controller, ovn-controller-vtep, for VTEP
enabled physical switches.
This V5 is not simply a rebase on top of the current master. With
the additon of logcial port 'type' and 'options' columns in ovn-nb
schema, and the new way of generating tunnel keys, this series
contains some series rework and optimization over the previous
verions. Specifically:
1. ovn logical port to be bound to a VTEP gateway chassis must
be configured with type "vtep" and "options:vtep-physical-switch"
and "vtep-logical-switch".
2. ovn-controller-vtep is responsible for setting the tunnel key of
the VTEP logical switch.
3. more unittests are added for different corner cases.
Any comments are welcomed~
Go OVN! ~
Alex Wang (12):
ovn-sb: Remove the "Gateway" table from the ovn-sb schema.
ovn-nbctl: Move ovn-nbctl to utilities directory.
ovn-sbctl: Add ovn-sbctl.
ovn-northd: Pass logical port type and options to ovn-sb database.
idl-loop: Move idl-loop into ovsdb-idl library.
ovn: Add controller for VTEP gateway.
ovsdb-idl: Move get_initial_snapshot() to ovsdb-idl.
ovn-controller-vtep: Add gateway module.
ovn-controller-vtep: Add binding module.
ovn-controller-vtep: Add vtep module.
ovn-controller-vtep: Extend vtep module to install Ucast_Macs_Remote.
ovn: Update TODOs related to vtep controller.
lib/ovsdb-idl.c | 87 +++
lib/ovsdb-idl.h | 27 +
manpages.mk | 12 +
ovn/.gitignore | 2 -
ovn/TODO | 27 +
ovn/automake.mk | 12 +-
ovn/controller-vtep/.gitignore | 2 +
ovn/controller-vtep/automake.mk | 14 +
ovn/controller-vtep/binding.c | 247 +++++++
ovn/controller-vtep/binding.h | 27 +
ovn/controller-vtep/gateway.c | 224 +++++++
ovn/controller-vtep/gateway.h | 26 +
ovn/controller-vtep/ovn-controller-vtep.8.xml | 70 ++
ovn/controller-vtep/ovn-controller-vtep.c | 266 ++++++++
ovn/controller-vtep/ovn-controller-vtep.h | 51 ++
ovn/controller-vtep/vtep.c | 368 +++++++++++
ovn/controller-vtep/vtep.h | 27 +
ovn/controller/ovn-controller.c | 125 +---
ovn/northd/ovn-northd.c | 2 +
ovn/ovn-nb.xml | 31 +-
ovn/ovn-sb.ovsschema | 16 +-
ovn/ovn-sb.xml | 75 ++-
ovn/utilities/.gitignore | 4 +
ovn/utilities/automake.mk | 23 +-
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 | 870 +++++++++++++++++++++++++
tests/automake.mk | 7 +-
tests/ovn-controller-vtep.at | 432 ++++++++++++
tests/ovn-sbctl.at | 74 +++
tests/testsuite.at | 2 +
32 files changed, 3131 insertions(+), 179 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/vtep.c
create mode 100644 ovn/controller-vtep/vtep.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
[email protected]
http://openvswitch.org/mailman/listinfo/dev