Re: [ovs-dev] [ovn-controller-vtep V7 3/3] ovn-controller-vtep: Update related documentation.

2015-08-20 Thread Russell Bryant
On 08/18/2015 05:58 PM, Alex Wang wrote:
 This commit conducts the following documentation changes:
 
 *   add a description in ovn-architecture manual for
 the life cycle about VTEP gateway.
 
 *   add TODOs related to ovn-controller-vtep.
 
 *   refine the ovn-sb, ovn-nb schema manual to require
 logical 'port' type and 'options' configuration.
 
 Signed-off-by: Alex Wang al...@nicira.com

Acked-by: Russell Bryant rbry...@redhat.com

-- 
Russell Bryant
___
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev


[ovs-dev] [ovn-controller-vtep V7 3/3] ovn-controller-vtep: Update related documentation.

2015-08-18 Thread Alex Wang
This commit conducts the following documentation changes:

*   add a description in ovn-architecture manual for
the life cycle about VTEP gateway.

*   add TODOs related to ovn-controller-vtep.

*   refine the ovn-sb, ovn-nb schema manual to require
logical 'port' type and 'options' configuration.

Signed-off-by: Alex Wang al...@nicira.com
---
V6-V7:
- adopt suggestions from Russell.
- leave out the documentation of feature that has not been implemented yet.

V5-V6:
- add description in ovn-architecture.

V5: new patch.
---
 ovn/TODO   |   21 +++
 ovn/ovn-architecture.7.xml |   87 
 ovn/ovn-nb.xml |   31 +---
 ovn/ovn-sb.xml |   41 +
 4 files changed, 167 insertions(+), 13 deletions(-)

diff --git a/ovn/TODO b/ovn/TODO
index 356b3ba..56cac87 100644
--- a/ovn/TODO
+++ b/ovn/TODO
@@ -80,3 +80,24 @@
So far, both ovn-controller and ovn-controller-vtep only allow
chassis to have one tunnel encapsulation entry.  We should extend
the implementation to support multiple tunnel encapsulations.
+
+** Update learned MAC addresses from VTEP to OVN
+
+   The VTEP gateway stores all MAC addresses learned from its
+   physical interfaces in the 'Ucast_Macs_Local' and the
+   'Mcast_Macs_Local' tables.  ovn-controller-vtep should be
+   able to update those information back to ovn-sb database,
+   so that other chassis knows where to send packets destined
+   to the extended external network instead of broadcasting.
+
+** Translate ovn-sb Multicast_Group table into VTEP config
+
+   The ovn-controller-vtep daemon should be able to translate
+   the Multicast_Group table entry in ovn-sb database into
+   Mcast_Macs_Remote table configuration in VTEP database.
+
+* Use BFD as tunnel monitor.
+
+   Both ovn-controller and ovn-contorller-vtep should use BFD to
+   monitor the tunnel liveness.  Both ovs-vswitchd schema and
+   VTEP schema supports BFD.
\ No newline at end of file
diff --git a/ovn/ovn-architecture.7.xml b/ovn/ovn-architecture.7.xml
index 2424836..f1d5812 100644
--- a/ovn/ovn-architecture.7.xml
+++ b/ovn/ovn-architecture.7.xml
@@ -798,6 +798,93 @@
 /li
   /ol
 
+  h2Life Cycle of a VTEP gateway/h2
+
+  p
+A gateway is a chassis that forwards traffic between the OVN-managed
+part of a logical network and a physical VLAN,  extending a
+tunnel-based logical network into a physical network.
+  /p
+
+  p
+The steps below refer often to details of the OVN and VTEP database
+schemas.  Please see codeovn-sb/code(5), codeovn-nb/code(5)
+and codevtep/code(5), respectively, for the full story on these
+databases.
+  /p
+
+  ol
+li
+  A VTEP gateway's life cycle begins with the administrator registering
+  the VTEP gateway as a codePhysical_Switch/code table entry in the
+  codeVTEP/code database.  The codeovn-controller-vtep/code
+  connected to this VTEP database, will recognize the new VTEP gateway
+  and create a new codeChassis/code table entry for it in the
+  codeOVN_Southbound/code database.
+/li
+
+li
+  The administrator can then create new codeLogical_Switch/code
+  table entry, and bind particular vlan on VTEP gateway's port to
+  any VTEP logical switch.  Once a VTEP logical switch is bound to
+  a VTEP gateway, the codeovn-controller-vtep/code will detect
+  it and add its name to the varvtep_logical_switches/var
+  column of the codeChassis/code table in the code
+  OVN_Southbound/code database.  Note, the vartunnel_key/var
+  column of VTEP logical switch is not filled at creation.  The
+  codeovn-controller-vtep/code will set the column when the
+  correponding vtep logical switch is bound to an OVN logical network.
+/li
+
+li
+  Now, the administrator can use the CMS to add VTEP logical switch
+  to the OVN logical network.  To do that, the CMS must first create a
+  new codeLogical_Port/code table entry in the code
+  OVN_Northbound/code database.  Then, the vartype/var column
+  of this entry must be set to vtep.  Next, the var
+  vtep-logical-switch/var and varvtep-physical-switch/var keys
+  in the varoptions/var column must also be specified, since
+  multiple VTEP gateways can attach to the same VTEP logical switch.
+/li
+
+li
+  The newly created logical port in the codeOVN_Northbound/code
+  database and its configuration will be passed down to the code
+  OVN_Southbound/code database as a new codePort_Binding/code
+  table entry.  The codeovn-controller-vtep/code will recognize the
+  change and bind the logical port to the corresponding VTEP gateway
+  chassis.  Configuration of binding same VTEP logical switch to
+  different OVN logical networks is not allowed and warning will be
+  generated in the log.
+/li
+
+li
+  Beside binding to the VTEP gateway