From 3ee44040c66cbe47ff292ac7fb0badccbe2afe6d Mon Sep 17 00:00:00 2001 From: Neale Ranns Date: Mon, 3 Oct 2016 13:05:48 +0100 Subject: unicast RPF for FIB2.0 In a heirarchical FIB performing a unicast RPF check would require the traversal of the data-plane graph to seek out all the adjacency objects and then read those to find their interface. This is not efficient. Instead, for each path-list we construct a list of unique input interfaces and link this uRPF-list against the entry in the prefix table. In the data-plane the uRPF list can be retrieved from the load-balance lookup result and the RPF check is a simple and efficient walk across the minimal interface list. The uRPF-list is maintained as the routing heirarchy changes, in a similar way to the data-plane object graph. We also provide a knob to allow an arbitrary prefix to pass the loose check. Change-Id: Ie7c0ae3c4483ef467cfd5b136ee0315ff98ec15b Signed-off-by: Neale Ranns --- vnet/Makefile.am | 1 + 1 file changed, 1 insertion(+) (limited to 'vnet/Makefile.am') diff --git a/vnet/Makefile.am b/vnet/Makefile.am index 88d556404b7..c0ae70ddab4 100644 --- a/vnet/Makefile.am +++ b/vnet/Makefile.am @@ -763,6 +763,7 @@ libvnet_la_SOURCES += \ vnet/fib/fib_path_list.c \ vnet/fib/fib_path.c \ vnet/fib/fib_path_ext.c \ + vnet/fib/fib_urpf_list.c \ vnet/fib/fib_attached_export.c nobase_include_HEADERS += \ -- cgit 1.2.3-korg