[ovs-dev] [PATCH 0/4] Native tunnel: Update neigh entries in tnl termination.
pvalerio at redhat.com
Tue Nov 9 22:29:43 UTC 2021
- rebased against master
- turned 'ageing' -> 'aging'
- further details of v1 -> v2 respin has been added
to each patch
The series is composed of the following patches:
#1: Expires is modified in different contexts (revalidator, pmd-rx, bfd-tx).
It's probably not very racy for many reasons, but it seems a good idea
to use an atomic here (especially with the introduction of #3).
#2: Introduces the possibility to set and read the entries timeout.
It's useful for debugging purpose. Includes a self-test.
#3: While performing some tests I noticed unstable timeouts (more
visible when the ageing time is low) during nd snoop.
It turned out to be a problem of revalidation. Additional
details can be found in the commit description.
#4: Fixes a use case in which the tnl neigh entry never
gets updated (further details in the commit message).
Includes a self-test.
The use case fixed in #4 could be fixed relaxing the check in
tnl_arp_snoop(), allowing to snoop ARP requests as well, but such
approach could add unneeded entries in the cache.
Paolo Valerio (4):
Native tunnel: Read/write expires atomically.
Native tunnel: Add tnl/neigh/aging command.
Native tunnel: Do not refresh the entry while revalidating.
Tunnel: Snoop ingress packets and update neigh cache if needed.
NEWS | 2 +
lib/tnl-neigh-cache.c | 135 +++++++++++++++++++++++++-------
lib/tnl-neigh-cache.h | 4 +-
ofproto/ofproto-dpif-xlate.c | 17 +++-
ofproto/ofproto-tnl-unixctl.man | 9 +++
tests/tunnel-push-pop-ipv6.at | 66 ++++++++++++++++
tests/tunnel-push-pop.at | 82 +++++++++++++++++++
7 files changed, 286 insertions(+), 29 deletions(-)
More information about the dev