[ovs-dev] ovsdb implementation

Ben Pfaff blp at nicira.com
Sat Oct 5 15:28:01 UTC 2013


On Sat, Oct 05, 2013 at 09:12:43AM +0400, Vasiliy Tolstov wrote:
> 2013/10/4 Ben Pfaff <blp at nicira.com>:
> > You've mentioned that you're working on an ovsdb implementation.  If
> > part of this is client bindings for another language (e.g. Java, ...),
> > then I'd like to invite you to consider contributing it to the Open
> > vSwitch project.  We'd be happy to include more OVSDB language
> > bindings.
> 
> 
> Hello, Ben. Yes i'm try to write golang ovsdb package to contol
> vSwitch from my own golang controller =).

Oh, interesting.  I don't know much about Go.

> I need to dynamically create gre and vxlan tunnels now.

It seems to be little-known but you can use GRE and VXLAN without
creating a separate interface for each tunnel.  The best explanation is
in a commit message:

commit 0ad90c845b7e82090a846fbe9f927e8d1c84cfc9
Author: Jarno Rajahalme <jarno.rajahalme at nsn.com>
Date:   Thu May 9 15:24:16 2013 +0300

    OpenFlow-level flow-based tunneling support.
    
    Adds tun_src and tun_dst match and set capabilities via new NXM fields
    NXM_NX_TUN_IPV4_SRC and NXM_NX_TUN_IPV4_DST.  This allows management of
    large number of tunnels via the flow tables, without requiring the tunnels
    to be pre-configured.
    
    Flow-based tunnels can be configured with options remote_ip=flow and
    local_ip=flow.  local_ip=flow requires remote_ip=flow.  When set, the
    tunnel remote IP address and/or local IP address is set from the flow,
    instead of the tunnel configuration.
    
    Example:
    
    $ ovs-vsctl add-port br0 gre -- set Interface gre ofport_request=1 type=gre options:remote_ip=flow options:key=flow
    $ ovs-ofctl add-flow br0 "in_port=LOCAL actions=set_tunnel:1,set_field:192.168.0.1->tun_dst,output:1"
    $ ovs-ofctl add-flow br0 "in_port=1 tun_src=192.168.0.1 tun_id=1 actions=LOCAL"
    
    Signed-off-by: Jarno Rajahalme <jarno.rajahalme at nsn.com>
    Signed-off-by: Ben Pfaff <blp at nicira.com>

The one big weakness to this support is that there's currently no way
to enable CFM or BFD without adding an interface.

> When i'm create full support for all ovsdb things i'm glad to
> contribute my work to open vSwitch project.

That sounds nice, thanks!



More information about the dev mailing list