From 1284f8c71da8ec35cba04351cf62cba7bdd7f847 Mon Sep 17 00:00:00 2001 From: Vladimir Isaev Date: Tue, 18 Feb 2020 15:26:12 +0300 Subject: 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 Change-Id: Ib5baa85032a44402d5f48c1145245260a42c7bae --- test/test_neighbor.py | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) (limited to 'test') diff --git a/test/test_neighbor.py b/test/test_neighbor.py index d1fb8f83582..7157839127b 100644 --- a/test/test_neighbor.py +++ b/test/test_neighbor.py @@ -1731,7 +1731,7 @@ class NeighborAgeTestCase(VppTestCase): # # Set the neighbor configuration: # limi = 200 - # age = 2 seconds + # age = 0 seconds # recycle = false # self.vapi.ip_neighbor_config(af=vaf.ADDRESS_IP4, @@ -1808,6 +1808,27 @@ class NeighborAgeTestCase(VppTestCase): self.assertFalse(self.vapi.ip_neighbor_dump(sw_if_index=0xffffffff, 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 -- cgit 1.2.3-korg