ip-neighbor: Fix aging timeout
Before this patch VPP checked age for ARP/NDP records every 1e5 seconds
for any configured aging time. This is 27 hours and it looks like
misprint because 1e5 is the number of 10us ticks in a second.
Also time to wait is now difference between aging time and time alive
for nodes in alive state.
Type: fix
Signed-off-by: Vladimir Isaev <visaev@netgate.com>
Change-Id: Ib5baa85032a44402d5f48c1145245260a42c7bae
diff --git a/test/test_neighbor.py b/test/test_neighbor.py
index d1fb8f8..7157839 100644
--- a/test/test_neighbor.py
+++ b/test/test_neighbor.py
@@ -1731,7 +1731,7 @@
#
# Set the neighbor configuration:
# limi = 200
- # age = 2 seconds
+ # age = 0 seconds
# recycle = false
#
self.vapi.ip_neighbor_config(af=vaf.ADDRESS_IP4,
@@ -1809,6 +1809,27 @@
af=vaf.ADDRESS_IP4))
#
+ # load up some neighbours again with 2s aging enabled
+ # they should be removed after 10s (2s age + 4s for probes + gap)
+ #
+ for ii in range(10):
+ VppNeighbor(self,
+ self.pg0.sw_if_index,
+ self.pg0.remote_hosts[ii].mac,
+ self.pg0.remote_hosts[ii].ip4).add_vpp_config()
+ self.sleep(10)
+ self.assertFalse(self.vapi.ip_neighbor_dump(sw_if_index=0xffffffff,
+ af=vaf.ADDRESS_IP4))
+
+ #
+ # check if we can set age and recycle with empty neighbor list
+ #
+ self.vapi.ip_neighbor_config(af=vaf.ADDRESS_IP4,
+ max_number=200,
+ max_age=1000,
+ recycle=True)
+
+ #
# load up some neighbours again, then disable the aging
# they should still be there in 10 seconds time
#