[ovs-dev] [patch_v10] vtep: add source node replication support.

Darrell Ball dlu998 at gmail.com
Sat May 7 16:21:20 UTC 2016


This patch updates the vtep schema to support source node replication
in addition to service node replication per logical switch.  The default
replication mode is service_node as that was the only mode previously
supported. 

New vtep-ctl commands are added to set/reset/get the replication mode
per logical switch.  Setting the replication mode is optional and if no
configuration is done, the replication mode is service node.  Clearing
the replication mode sets the replication mode back to a default of
service node.  In the event that a physical switch cannot support source
node replication,  an error is populated in the database that can be read
by a controller requesting source node replication mode.  If the
controller then resets the replication mode, the physical switch
should clear the error state.

The vtep emulator is also updated to read the vtep database logical
switch replication mode and to support both types of replication.
The vtep emulator help documentation is also updated.


v1->v2: Offline discussion
In this discussion, it was agreed only logical switch level
replication mode configuration is needed.  The rational
was that physical switch level option configuration was only
added as a convenience; using a controller, the added
benefit is minimal and hence the physical switch level
configuration portion is dropped and the logical switch
level configuration retained.

Although in v1, service node mode is the default replication mode,
v2 makes replication mode an option and only source node mode
can be optionally configured. 

If a physical switch cannot support source node replication, then an
error should be set in the physical switch table that can be read by a
controller.

v2->v3: Fixed a couple bugs in ovs-vtep I noticed after v2.

v3->v4: 
Added recommendation text for handling lack of source node
replication mode support on a transport node in a logical switch, with
input from Bruce and Anupam (offline); added to vtep.xml.
Also added recommendation for proactive source node 
replication mode support. 

Reworded alternate replication mode description in vtep.xml per
Bruce.  

Shorten name to Alternate Replication Mode from per logical switch
Alternate Replication Mode.

v4->v5:
Substituted "vtep physical switch" for "transport node" in 
switch_fault_status based on self review.

Fixed a line length violation in ovs-vtep reported by checkpatch.


v5->v6:
Changes from more review from Bruce (offline).
Removed duplicate "to" in comment in ovs-vtep.
Added a comma to vtep.xml for Alternate Replication Mode
description.

v6->v7:
In ovs-vtep, fixed a check that was missed after converting replication
mode from required to optional. One line changed per below.
 
-        if not replication_mode:
+        if replication_mode == "[]":


v7->v8:
Included both service_node and source_node in vtep schema 
replication mode enum, as per original patch. As a result, the new
column is renamed back to replication_mode from alt_replication_mode,
as per original patch.

Specified that service_node mode is a basic requirement and hence it
is the default mode and a non-support error for service_node mode should not occur.

Shortened name for set-ls-replication-mode to set-replication-mode and also
for other similar commands; i.e. removed "ls" portion.

Added a get-replication-mode command and added it to vtep-ctl tests.

Moved all replication mode information in the ovs-vtep readme to a single step. 

v8->v9:
Extended a couple variable names.
Minor rewording in a few places.
Omit invalidate cache in get-replication-mode, as its unnecessary.
Add replication modes description to ovs-vtep help file and 
vtep-ctl man page, in addition to previous vtep.xml file.
I also added another test for vtep-ctl to make the behavior
more explicit.

v9->v10:
Remove reset-replication-mode as the word is contentious.
Remove some unnecessary words.
Reorder 2 steps in ovs-vtep README.

Darrell Ball (1):
  vtep: add source node replication support.

 tests/vtep-ctl.at       | 32 +++++++++++++++++++++++
 vtep/README.ovs-vtep.md | 28 +++++++++++++++++++--
 vtep/ovs-vtep           | 36 +++++++++++++++++++++++---
 vtep/vtep-ctl.8.in      | 26 +++++++++++++++++++
 vtep/vtep-ctl.c         | 41 ++++++++++++++++++++++++++++++
 vtep/vtep.ovsschema     |  9 +++++--
 vtep/vtep.xml           | 67 +++++++++++++++++++++++++++++++++++++++++++++----
 7 files changed, 226 insertions(+), 13 deletions(-)

-- 
1.9.1




More information about the dev mailing list