[ovs-dev] Question about ovs-vtep implementation

Lance Richardson lrichard at redhat.com
Fri Jul 8 19:20:37 UTC 2016


The "ovn-controller-vtep - vtep-macs 1" test case fails occasionally,
with ovs-vswitchd logs similar to these:

    bridge|INFO|bridge br-vtep_vtep_ls1: added interface vx1 on port 2
    tunnel|WARN|bfd1.2.3.5: attempting to add tunnel port with same config as port 'vx1' (::->1.2.3.5, key=0, dp port=4789, pkt mark=0)
    ofproto|WARN|vtep_bfd: could not add port bfd1.2.3.5 (File exists)

In the passing case, ovs-vtep.log always seems to have:

    ovs-vtep | INFO | using tunnel key 1 in lswitch0

In the failing case, the tunnel key is zero:

    ovs-vtep | INFO | using tunnel key 0 in lswitch0


ovs-vtep creates two VXLAN tunnels per logical switch, one for
ordinary data traffic and one for BFD.  These tunnels have the same
network configuration (IP addresses, UDP port, etc.), and in the
passing case the only difference in the configurations is the tunnel key.

In the failing case, the data tunnel key is 0 and the BFD tunnel
key is also 0 (it's not specified, I'm assuming it defaults
to zero), so the tunnel configurations are identical (which is why
ovs-vswitchd is rejecting the attempt to create the BFD tunnel).

My questions are:
   - Does the above description make sense?
   - What can be done to ensure that the tunnel pair uses
     two different keys (e.g. if the BFD tunnel always uses
     a key of zero, is there a way to make data tunnel keys
     start at one?)

Thanks,

    Lance



More information about the dev mailing list