summaryrefslogtreecommitdiffstats
path: root/src/vnet/ip-neighbor/ip_neighbor.api
diff options
context:
space:
mode:
authorNeale Ranns <nranns@cisco.com>2020-04-02 17:08:28 +0000
committerNeale Ranns <nranns@cisco.com>2020-04-23 08:15:39 +0000
commitc87fbb417a580bf8e93d0176dba6a90b3cd6a787 (patch)
treea412c1c9afb4f8728632164d731f1adf67bfd6d3 /src/vnet/ip-neighbor/ip_neighbor.api
parentc17ff6ec3b69ef228047bf346e0b524c48d2c96e (diff)
ip-neighbor: Replace feature for the ip-neighbor data-base
Type: feature DB replace is implemented with a mark and sweep algorithm (just the the FIB) Signed-off-by: Neale Ranns <nranns@cisco.com> Change-Id: I54ab06e11552219e2a18e1b4a87d531321cf3829
Diffstat (limited to 'src/vnet/ip-neighbor/ip_neighbor.api')
-rw-r--r--src/vnet/ip-neighbor/ip_neighbor.api37
1 files changed, 37 insertions, 0 deletions
diff --git a/src/vnet/ip-neighbor/ip_neighbor.api b/src/vnet/ip-neighbor/ip_neighbor.api
index b82036052f7..fc8f8222189 100644
--- a/src/vnet/ip-neighbor/ip_neighbor.api
+++ b/src/vnet/ip-neighbor/ip_neighbor.api
@@ -126,6 +126,43 @@ autoreply define ip_neighbor_config
bool recycle;
};
+/** \brief IP neighbour replace begin
+
+ The use-case is that, for some unspecified reason, the control plane
+ has a different set of neighbours it than VPP
+ currently has. The CP would thus like to 'replace' VPP's set
+ only by specifying what the new set shall be, i.e. it is not
+ going to delete anything that already eixts, rather, is wants any
+ unspecified neighbors deleted implicitly.
+ The CP declares the start of this procedure with this replace_begin
+ API Call, and when it has populated all neighbours it wants, it calls
+ the below replace_end API. From this point on it is of course free
+ to add and delete neighbours as usual.
+ The underlying mechanism by which VPP implements this replace is
+ intentionally left unspecified.
+
+ @param client_index - opaque cookie to identify the sender
+ @param context - sender context, to match reply w/ request
+*/
+autoreply define ip_neighbor_replace_begin
+{
+ u32 client_index;
+ u32 context;
+};
+
+/** \brief IP neighbour replace end
+
+ see ip_neighbor_replace_begin description.
+
+ @param client_index - opaque cookie to identify the sender
+ @param context - sender context, to match reply w/ request
+*/
+autoreply define ip_neighbor_replace_end
+{
+ u32 client_index;
+ u32 context;
+};
+
/** \brief Register for IP4 ARP resolution event on receing ARP reply or
MAC/IP info from ARP requests in L2 BDs
@param client_index - opaque cookie to identify the sender