]> git.puffer.fish Git - matthieu/frr.git/commit
tests: rework isis_tilfa_topo1 to fix timing issues
authorRenato Westphal <renato@opensourcerouting.org>
Fri, 7 Jun 2024 13:41:38 +0000 (10:41 -0300)
committerRenato Westphal <renato@opensourcerouting.org>
Mon, 10 Jun 2024 15:28:01 +0000 (12:28 -0300)
commit04655c5f74b11e517155e024bbb335736c2605b4
tree14fc23a3ac2371ec0db4ac38240f50d594f4ab28
parent19c3e0eca6894d0ea87a90b6b2a2877151a9a73e
tests: rework isis_tilfa_topo1 to fix timing issues

In this topotest, steps 10-15 were added to test the IS-IS switchover
functionality. In short, two cases were tested: switchover after a
link down event and switchover after a BFD down event. Both cases
were tested in sequence on the same router, rt6. This involved the
following steps:
- Setting the SPF delay timer to 15 seconds
- Shutting down the eth-rt5 interface from the switch side
- Testing the post-switchover RIB and LIB (triggered by the link down
  event)
- Testing the post-SPF RIB and LIB
- Bringing the eth-rt5 interface back up
- Configuring a BFD session between rt6 and rt5
- Shutting down the eth-rt5 interface from the switch side once again
- Testing the post-switchover RIB and LIB (triggered by the BFD down
  event)
- Testing the post-SPF RIB and LIB

Since the time window to test the post-switchover RIB and LIB was too
narrow (10 seconds), these tests were having sporadic failures.

To resolve this problem, we can simplify the switchover test as follows:
- Setting the SPF delay timer to 60 seconds (not 15)
- Disabling "link-detect" on rt6's eth-rt5 interface
- Shutting down the eth-rt5 interface from the switch side
- On rt6, testing the post-switchover RIB and LIB (triggered by the
  BFD down event)
- On rt5, testing the post-switchover RIB and LIB (triggered by the
  link down event)

Notice how we can test both post-link-down and post-BFD-down switchover
cases simultaneously by having different "link-detect" configurations
on rt5 and rt6. Additionally, by using a larger SPF delay timer, the
time window to test the post-switchover RIB and LIB is much larger
and less prone to sporadic failures.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
64 files changed:
tests/topotests/isis_tilfa_topo1/rt1/step10/show_ip_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt1/step10/show_ipv6_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt1/step10/show_mpls_table.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt1/step11/show_ip_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt1/step11/show_ipv6_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt1/step11/show_mpls_table.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt1/step12/show_ip_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt1/step12/show_ipv6_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt1/step12/show_mpls_table.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt2/step10/show_ip_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt2/step10/show_ipv6_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt2/step10/show_mpls_table.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt2/step11/show_ip_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt2/step11/show_ipv6_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt2/step11/show_mpls_table.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt2/step12/show_ip_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt2/step12/show_ipv6_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt2/step12/show_mpls_table.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt3/step10/show_ip_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt3/step10/show_ipv6_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt3/step10/show_mpls_table.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt3/step11/show_ip_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt3/step11/show_ipv6_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt3/step11/show_mpls_table.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt3/step12/show_ip_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt3/step12/show_ipv6_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt3/step12/show_mpls_table.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt4/step10/show_ip_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt4/step10/show_ipv6_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt4/step10/show_mpls_table.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt4/step11/show_ip_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt4/step11/show_ipv6_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt4/step11/show_mpls_table.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt4/step12/show_ip_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt4/step12/show_ipv6_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt4/step12/show_mpls_table.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt5/step10/show_ip_route.ref [new file with mode: 0644]
tests/topotests/isis_tilfa_topo1/rt5/step10/show_ip_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt5/step10/show_ipv6_route.ref [new file with mode: 0644]
tests/topotests/isis_tilfa_topo1/rt5/step10/show_ipv6_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt5/step10/show_mpls_table.ref [new file with mode: 0644]
tests/topotests/isis_tilfa_topo1/rt5/step10/show_mpls_table.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt5/step11/show_ip_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt5/step11/show_ipv6_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt5/step11/show_mpls_table.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt5/step12/show_ip_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt5/step12/show_ipv6_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt5/step12/show_mpls_table.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt6/step10/show_bfd_peer_down.ref [new file with mode: 0644]
tests/topotests/isis_tilfa_topo1/rt6/step10/show_bfd_peer_up.ref [new file with mode: 0644]
tests/topotests/isis_tilfa_topo1/rt6/step10/show_ip_route.ref [new file with mode: 0644]
tests/topotests/isis_tilfa_topo1/rt6/step10/show_ip_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt6/step10/show_ipv6_route.ref [new file with mode: 0644]
tests/topotests/isis_tilfa_topo1/rt6/step10/show_ipv6_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt6/step10/show_mpls_table.ref [new file with mode: 0644]
tests/topotests/isis_tilfa_topo1/rt6/step10/show_mpls_table.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt6/step11/show_ip_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt6/step11/show_ipv6_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt6/step11/show_mpls_table.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt6/step12/show_ip_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt6/step12/show_ipv6_route.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt6/step12/show_mpls_table.ref.diff [deleted file]
tests/topotests/isis_tilfa_topo1/rt6/zebra.conf
tests/topotests/isis_tilfa_topo1/test_isis_tilfa_topo1.py