Native userspace tunnels learn tnl-neigh from the outer Ethernet
source MAC of every encapsulated IPv4/IPv6 data packet.  That MAC is
the last hop, not the remote VTEP.  Under ECMP or MLAG the cache
flaps, seq_change(tnl_conf_seq) runs, and every datapath flow is
revalidated.

Add Interface option neigh_snoop, default true, so BFD still recovers
when the remote VTEP NIC MAC actually changes.  Setting
options:neigh_snoop=false on an OpenFlow tunnel port skips the
data-packet tnl_neigh_set() path for that port only.  ARP, GARP, and
ND snooping is unchanged.

Userspace native tunneling only.  Tests: tunnel_push_pop,
tunnel_push_pop_ipv6.

v2: Resend via git send-email.  v1 failed git am (Gmail linkified
    tests/tunnel-push-pop*.at paths).

Girish Kumar (1):
  xlate: Add neigh_snoop option to skip ECMP MAC flaps.

 NEWS                          |   6 ++
 lib/netdev-vport.c            |  10 +++
 lib/netdev.h                  |   1 +
 lib/tnl-ports.c               |  27 +++++++-
 lib/tnl-ports.h               |   1 +
 ofproto/ofproto-dpif-xlate.c  | 116 +++++++++++++++++++++++++++++++++-
 ofproto/tunnel.c              |  36 +++++++++++
 ofproto/tunnel.h              |   3 +
 tests/tunnel-push-pop-ipv6.at |  48 ++++++++++++++
 tests/tunnel-push-pop.at      |  48 ++++++++++++++
 vswitchd/vswitch.xml          |  13 ++++
 11 files changed, 306 insertions(+), 3 deletions(-)

Signed-off-by: Girish Kumar <[email protected]>
-- 
2.47.3
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to