From 04655c5f74b11e517155e024bbb335736c2605b4 Mon Sep 17 00:00:00 2001 From: Renato Westphal Date: Fri, 7 Jun 2024 10:41:38 -0300 Subject: 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 --- .../rt1/step10/show_ip_route.ref.diff | 0 .../rt1/step10/show_ipv6_route.ref.diff | 0 .../rt1/step10/show_mpls_table.ref.diff | 0 .../rt1/step11/show_ip_route.ref.diff | 0 .../rt1/step11/show_ipv6_route.ref.diff | 0 .../rt1/step11/show_mpls_table.ref.diff | 0 .../rt1/step12/show_ip_route.ref.diff | 19 - .../rt1/step12/show_ipv6_route.ref.diff | 18 - .../rt1/step12/show_mpls_table.ref.diff | 28 -- .../rt2/step10/show_ip_route.ref.diff | 0 .../rt2/step10/show_ipv6_route.ref.diff | 0 .../rt2/step10/show_mpls_table.ref.diff | 0 .../rt2/step11/show_ip_route.ref.diff | 0 .../rt2/step11/show_ipv6_route.ref.diff | 0 .../rt2/step11/show_mpls_table.ref.diff | 0 .../rt2/step12/show_ip_route.ref.diff | 0 .../rt2/step12/show_ipv6_route.ref.diff | 0 .../rt2/step12/show_mpls_table.ref.diff | 20 - .../rt3/step10/show_ip_route.ref.diff | 0 .../rt3/step10/show_ipv6_route.ref.diff | 0 .../rt3/step10/show_mpls_table.ref.diff | 0 .../rt3/step11/show_ip_route.ref.diff | 0 .../rt3/step11/show_ipv6_route.ref.diff | 0 .../rt3/step11/show_mpls_table.ref.diff | 0 .../rt3/step12/show_ip_route.ref.diff | 58 --- .../rt3/step12/show_ipv6_route.ref.diff | 45 -- .../rt3/step12/show_mpls_table.ref.diff | 60 --- .../rt4/step10/show_ip_route.ref.diff | 0 .../rt4/step10/show_ipv6_route.ref.diff | 0 .../rt4/step10/show_mpls_table.ref.diff | 0 .../rt4/step11/show_ip_route.ref.diff | 0 .../rt4/step11/show_ipv6_route.ref.diff | 0 .../rt4/step11/show_mpls_table.ref.diff | 0 .../rt4/step12/show_ip_route.ref.diff | 144 ------ .../rt4/step12/show_ipv6_route.ref.diff | 50 --- .../rt4/step12/show_mpls_table.ref.diff | 78 ---- .../isis_tilfa_topo1/rt5/step10/show_ip_route.ref | 482 +++++++++++++++++++++ .../rt5/step10/show_ip_route.ref.diff | 0 .../rt5/step10/show_ipv6_route.ref | 229 ++++++++++ .../rt5/step10/show_ipv6_route.ref.diff | 0 .../rt5/step10/show_mpls_table.ref | 301 +++++++++++++ .../rt5/step10/show_mpls_table.ref.diff | 0 .../rt5/step11/show_ip_route.ref.diff | 0 .../rt5/step11/show_ipv6_route.ref.diff | 0 .../rt5/step11/show_mpls_table.ref.diff | 0 .../rt5/step12/show_ip_route.ref.diff | 151 ------- .../rt5/step12/show_ipv6_route.ref.diff | 53 --- .../rt5/step12/show_mpls_table.ref.diff | 80 ---- .../rt6/step10/show_bfd_peer_down.ref | 6 + .../rt6/step10/show_bfd_peer_up.ref | 6 + .../isis_tilfa_topo1/rt6/step10/show_ip_route.ref | 354 +++++++++++++++ .../rt6/step10/show_ip_route.ref.diff | 0 .../rt6/step10/show_ipv6_route.ref | 112 +++++ .../rt6/step10/show_ipv6_route.ref.diff | 0 .../rt6/step10/show_mpls_table.ref | 127 ++++++ .../rt6/step10/show_mpls_table.ref.diff | 0 .../rt6/step11/show_ip_route.ref.diff | 125 ------ .../rt6/step11/show_ipv6_route.ref.diff | 56 --- .../rt6/step11/show_mpls_table.ref.diff | 106 ----- .../rt6/step12/show_ip_route.ref.diff | 153 ------- .../rt6/step12/show_ipv6_route.ref.diff | 66 --- .../rt6/step12/show_mpls_table.ref.diff | 78 ---- tests/topotests/isis_tilfa_topo1/rt6/zebra.conf | 1 + .../isis_tilfa_topo1/test_isis_tilfa_topo1.py | 358 ++------------- 64 files changed, 1665 insertions(+), 1699 deletions(-) delete mode 100644 tests/topotests/isis_tilfa_topo1/rt1/step10/show_ip_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt1/step10/show_ipv6_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt1/step10/show_mpls_table.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt1/step11/show_ip_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt1/step11/show_ipv6_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt1/step11/show_mpls_table.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt1/step12/show_ip_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt1/step12/show_ipv6_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt1/step12/show_mpls_table.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt2/step10/show_ip_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt2/step10/show_ipv6_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt2/step10/show_mpls_table.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt2/step11/show_ip_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt2/step11/show_ipv6_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt2/step11/show_mpls_table.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt2/step12/show_ip_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt2/step12/show_ipv6_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt2/step12/show_mpls_table.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt3/step10/show_ip_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt3/step10/show_ipv6_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt3/step10/show_mpls_table.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt3/step11/show_ip_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt3/step11/show_ipv6_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt3/step11/show_mpls_table.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt3/step12/show_ip_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt3/step12/show_ipv6_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt3/step12/show_mpls_table.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt4/step10/show_ip_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt4/step10/show_ipv6_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt4/step10/show_mpls_table.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt4/step11/show_ip_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt4/step11/show_ipv6_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt4/step11/show_mpls_table.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt4/step12/show_ip_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt4/step12/show_ipv6_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt4/step12/show_mpls_table.ref.diff create mode 100644 tests/topotests/isis_tilfa_topo1/rt5/step10/show_ip_route.ref delete mode 100644 tests/topotests/isis_tilfa_topo1/rt5/step10/show_ip_route.ref.diff create mode 100644 tests/topotests/isis_tilfa_topo1/rt5/step10/show_ipv6_route.ref delete mode 100644 tests/topotests/isis_tilfa_topo1/rt5/step10/show_ipv6_route.ref.diff create mode 100644 tests/topotests/isis_tilfa_topo1/rt5/step10/show_mpls_table.ref delete mode 100644 tests/topotests/isis_tilfa_topo1/rt5/step10/show_mpls_table.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt5/step11/show_ip_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt5/step11/show_ipv6_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt5/step11/show_mpls_table.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt5/step12/show_ip_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt5/step12/show_ipv6_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt5/step12/show_mpls_table.ref.diff create mode 100644 tests/topotests/isis_tilfa_topo1/rt6/step10/show_bfd_peer_down.ref create mode 100644 tests/topotests/isis_tilfa_topo1/rt6/step10/show_bfd_peer_up.ref create mode 100644 tests/topotests/isis_tilfa_topo1/rt6/step10/show_ip_route.ref delete mode 100644 tests/topotests/isis_tilfa_topo1/rt6/step10/show_ip_route.ref.diff create mode 100644 tests/topotests/isis_tilfa_topo1/rt6/step10/show_ipv6_route.ref delete mode 100644 tests/topotests/isis_tilfa_topo1/rt6/step10/show_ipv6_route.ref.diff create mode 100644 tests/topotests/isis_tilfa_topo1/rt6/step10/show_mpls_table.ref delete mode 100644 tests/topotests/isis_tilfa_topo1/rt6/step10/show_mpls_table.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt6/step11/show_ip_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt6/step11/show_ipv6_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt6/step11/show_mpls_table.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt6/step12/show_ip_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt6/step12/show_ipv6_route.ref.diff delete mode 100644 tests/topotests/isis_tilfa_topo1/rt6/step12/show_mpls_table.ref.diff diff --git a/tests/topotests/isis_tilfa_topo1/rt1/step10/show_ip_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt1/step10/show_ip_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt1/step10/show_ipv6_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt1/step10/show_ipv6_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt1/step10/show_mpls_table.ref.diff b/tests/topotests/isis_tilfa_topo1/rt1/step10/show_mpls_table.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt1/step11/show_ip_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt1/step11/show_ip_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt1/step11/show_ipv6_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt1/step11/show_ipv6_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt1/step11/show_mpls_table.ref.diff b/tests/topotests/isis_tilfa_topo1/rt1/step11/show_mpls_table.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt1/step12/show_ip_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt1/step12/show_ip_route.ref.diff deleted file mode 100644 index a8d6e6c65..000000000 --- a/tests/topotests/isis_tilfa_topo1/rt1/step12/show_ip_route.ref.diff +++ /dev/null @@ -1,19 +0,0 @@ ---- a/rt1/step11/show_ip_route.ref -+++ b/rt1/step12/show_ip_route.ref -@@ -110,16 +110,6 @@ - "labels":[ - 16060 - ] -- }, -- { -- "fib":true, -- "ip":"10.0.1.3", -- "afi":"ipv4", -- "interfaceName":"eth-sw1", -- "active":true, -- "labels":[ -- 16060 -- ] - } - ] - } diff --git a/tests/topotests/isis_tilfa_topo1/rt1/step12/show_ipv6_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt1/step12/show_ipv6_route.ref.diff deleted file mode 100644 index 637c59f6e..000000000 --- a/tests/topotests/isis_tilfa_topo1/rt1/step12/show_ipv6_route.ref.diff +++ /dev/null @@ -1,18 +0,0 @@ ---- a/rt1/step11/show_ipv6_route.ref -+++ b/rt1/step12/show_ipv6_route.ref -@@ -105,15 +105,6 @@ - "labels":[ - 16061 - ] -- }, -- { -- "fib":true, -- "afi":"ipv6", -- "interfaceName":"eth-sw1", -- "active":true, -- "labels":[ -- 16061 -- ] - } - ] - } diff --git a/tests/topotests/isis_tilfa_topo1/rt1/step12/show_mpls_table.ref.diff b/tests/topotests/isis_tilfa_topo1/rt1/step12/show_mpls_table.ref.diff deleted file mode 100644 index e110bf48e..000000000 --- a/tests/topotests/isis_tilfa_topo1/rt1/step12/show_mpls_table.ref.diff +++ /dev/null @@ -1,28 +0,0 @@ ---- a/rt1/step11/show_mpls_table.ref -+++ b/rt1/step12/show_mpls_table.ref -@@ -79,12 +79,6 @@ - "type":"SR (IS-IS)", - "outLabel":16060, - "installed":true, -- "nexthop":"10.0.1.3" -- }, -- { -- "type":"SR (IS-IS)", -- "outLabel":16060, -- "installed":true, - "nexthop":"10.0.1.2" - } - ] -@@ -96,12 +90,6 @@ - { - "type":"SR (IS-IS)", - "outLabel":16061, -- "installed":true, -- "interface":"eth-sw1" -- }, -- { -- "type":"SR (IS-IS)", -- "outLabel":16061, - "installed":true, - "interface":"eth-sw1" - } diff --git a/tests/topotests/isis_tilfa_topo1/rt2/step10/show_ip_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt2/step10/show_ip_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt2/step10/show_ipv6_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt2/step10/show_ipv6_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt2/step10/show_mpls_table.ref.diff b/tests/topotests/isis_tilfa_topo1/rt2/step10/show_mpls_table.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt2/step11/show_ip_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt2/step11/show_ip_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt2/step11/show_ipv6_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt2/step11/show_ipv6_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt2/step11/show_mpls_table.ref.diff b/tests/topotests/isis_tilfa_topo1/rt2/step11/show_mpls_table.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt2/step12/show_ip_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt2/step12/show_ip_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt2/step12/show_ipv6_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt2/step12/show_ipv6_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt2/step12/show_mpls_table.ref.diff b/tests/topotests/isis_tilfa_topo1/rt2/step12/show_mpls_table.ref.diff deleted file mode 100644 index 84a36442d..000000000 --- a/tests/topotests/isis_tilfa_topo1/rt2/step12/show_mpls_table.ref.diff +++ /dev/null @@ -1,20 +0,0 @@ ---- a/rt2/step11/show_mpls_table.ref -+++ b/rt2/step12/show_mpls_table.ref -@@ -199,7 +199,7 @@ - "backupNexthops":[ - { - "type":"SR (IS-IS)", -- "outLabel":16060, -+ "outLabel":16500, - "nexthop":"10.0.1.3" - } - ] -@@ -230,7 +230,7 @@ - "backupNexthops":[ - { - "type":"SR (IS-IS)", -- "outLabel":16061, -+ "outLabel":16501, - "interface":"eth-sw1" - } - ] diff --git a/tests/topotests/isis_tilfa_topo1/rt3/step10/show_ip_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt3/step10/show_ip_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt3/step10/show_ipv6_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt3/step10/show_ipv6_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt3/step10/show_mpls_table.ref.diff b/tests/topotests/isis_tilfa_topo1/rt3/step10/show_mpls_table.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt3/step11/show_ip_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt3/step11/show_ip_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt3/step11/show_ipv6_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt3/step11/show_ipv6_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt3/step11/show_mpls_table.ref.diff b/tests/topotests/isis_tilfa_topo1/rt3/step11/show_mpls_table.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt3/step12/show_ip_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt3/step12/show_ip_route.ref.diff deleted file mode 100644 index 8695cf848..000000000 --- a/tests/topotests/isis_tilfa_topo1/rt3/step12/show_ip_route.ref.diff +++ /dev/null @@ -1,58 +0,0 @@ ---- a/rt3/step11/show_ip_route.ref -+++ b/rt3/step12/show_ip_route.ref -@@ -198,44 +198,37 @@ - "selected":true, - "destSelected":true, - "distance":115, -- "metric":30, -+ "metric":40, - "installed":true, - "nexthops":[ - { - "fib":true, -- "ip":"10.0.4.5", -+ "ip":"10.0.1.2", - "afi":"ipv4", -- "interfaceName":"eth-rt5-1", -+ "interfaceName":"eth-sw1", - "active":true, -- "backupIndex":[ -- 0 -- ], - "labels":[ -- 30060 -+ 16060 - ] - }, - { - "fib":true, -- "ip":"10.0.5.5", -+ "ip":"10.0.4.5", - "afi":"ipv4", -- "interfaceName":"eth-rt5-2", -+ "interfaceName":"eth-rt5-1", - "active":true, -- "backupIndex":[ -- 0 -- ], - "labels":[ - 30060 - ] -- } -- ], -- "backupNexthops":[ -+ }, - { -- "ip":"10.0.1.2", -+ "fib":true, -+ "ip":"10.0.5.5", - "afi":"ipv4", -- "interfaceName":"eth-sw1", -+ "interfaceName":"eth-rt5-2", - "active":true, - "labels":[ -- 16060 -+ 30060 - ] - } - ] diff --git a/tests/topotests/isis_tilfa_topo1/rt3/step12/show_ipv6_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt3/step12/show_ipv6_route.ref.diff deleted file mode 100644 index 661d0fe75..000000000 --- a/tests/topotests/isis_tilfa_topo1/rt3/step12/show_ipv6_route.ref.diff +++ /dev/null @@ -1,45 +0,0 @@ ---- a/rt3/step11/show_ipv6_route.ref -+++ b/rt3/step12/show_ipv6_route.ref -@@ -186,7 +186,7 @@ - "selected":true, - "destSelected":true, - "distance":115, -- "metric":30, -+ "metric":40, - "installed":true, - "nexthops":[ - { -@@ -194,9 +194,6 @@ - "afi":"ipv6", - "interfaceName":"eth-rt5-1", - "active":true, -- "backupIndex":[ -- 0 -- ], - "labels":[ - 30061 - ] -@@ -206,23 +203,10 @@ - "afi":"ipv6", - "interfaceName":"eth-rt5-2", - "active":true, -- "backupIndex":[ -- 0 -- ], - "labels":[ - 30061 - ] - } -- ], -- "backupNexthops":[ -- { -- "afi":"ipv6", -- "interfaceName":"eth-sw1", -- "active":true, -- "labels":[ -- 16061 -- ] -- } - ] - } - ] diff --git a/tests/topotests/isis_tilfa_topo1/rt3/step12/show_mpls_table.ref.diff b/tests/topotests/isis_tilfa_topo1/rt3/step12/show_mpls_table.ref.diff deleted file mode 100644 index 30941b398..000000000 --- a/tests/topotests/isis_tilfa_topo1/rt3/step12/show_mpls_table.ref.diff +++ /dev/null @@ -1,60 +0,0 @@ ---- a/rt3/step11/show_mpls_table.ref -+++ b/rt3/step12/show_mpls_table.ref -@@ -165,27 +165,8 @@ - "nexthops":[ - { - "type":"SR (IS-IS)", -- "outLabel":30060, -- "installed":true, -- "nexthop":"10.0.5.5", -- "backupIndex":[ -- 0 -- ] -- }, -- { -- "type":"SR (IS-IS)", -- "outLabel":30060, -- "installed":true, -- "nexthop":"10.0.4.5", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "type":"SR (IS-IS)", - "outLabel":16060, -+ "installed":true, - "nexthop":"10.0.1.2" - } - ] -@@ -196,27 +177,8 @@ - "nexthops":[ - { - "type":"SR (IS-IS)", -- "outLabel":30061, -- "installed":true, -- "interface":"eth-rt5-2", -- "backupIndex":[ -- 0 -- ] -- }, -- { -- "type":"SR (IS-IS)", -- "outLabel":30061, -- "installed":true, -- "interface":"eth-rt5-1", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "type":"SR (IS-IS)", - "outLabel":16061, -+ "installed":true, - "interface":"eth-sw1" - } - ] diff --git a/tests/topotests/isis_tilfa_topo1/rt4/step10/show_ip_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt4/step10/show_ip_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt4/step10/show_ipv6_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt4/step10/show_ipv6_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt4/step10/show_mpls_table.ref.diff b/tests/topotests/isis_tilfa_topo1/rt4/step10/show_mpls_table.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt4/step11/show_ip_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt4/step11/show_ip_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt4/step11/show_ipv6_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt4/step11/show_ipv6_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt4/step11/show_mpls_table.ref.diff b/tests/topotests/isis_tilfa_topo1/rt4/step11/show_mpls_table.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt4/step12/show_ip_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt4/step12/show_ip_route.ref.diff deleted file mode 100644 index 2645c5945..000000000 --- a/tests/topotests/isis_tilfa_topo1/rt4/step12/show_ip_route.ref.diff +++ /dev/null @@ -1,144 +0,0 @@ ---- a/rt4/step11/show_ip_route.ref -+++ b/rt4/step12/show_ip_route.ref -@@ -160,23 +160,13 @@ - "interfaceName":"eth-rt5", - "active":true, - "backupIndex":[ -- 0 -+ 0, -+ 1 - ], - "labels":[ - 3 - ] - } -- ], -- "backupNexthops":[ -- { -- "ip":"10.0.7.6", -- "afi":"ipv4", -- "interfaceName":"eth-rt6", -- "active":true, -- "labels":[ -- 16500 -- ] -- } - ] - } - ], -@@ -196,24 +186,10 @@ - "afi":"ipv4", - "interfaceName":"eth-rt6", - "active":true, -- "backupIndex":[ -- 0 -- ], - "labels":[ - 3 - ] - } -- ], -- "backupNexthops":[ -- { -- "ip":"10.0.6.5", -- "afi":"ipv4", -- "interfaceName":"eth-rt5", -- "active":true, -- "labels":[ -- 30060 -- ] -- } - ] - } - ], -@@ -352,19 +328,12 @@ - "active":true, - "backupIndex":[ - 0, -- 1, -- 2 -+ 1 - ] - } - ], - "backupNexthops":[ - { -- "ip":"10.0.7.6", -- "afi":"ipv4", -- "interfaceName":"eth-rt6", -- "active":true -- }, -- { - "ip":"10.0.2.2", - "afi":"ipv4", - "interfaceName":"eth-rt2-1", -@@ -397,19 +366,12 @@ - "active":true, - "backupIndex":[ - 0, -- 1, -- 2 -+ 1 - ] - } - ], - "backupNexthops":[ - { -- "ip":"10.0.7.6", -- "afi":"ipv4", -- "interfaceName":"eth-rt6", -- "active":true -- }, -- { - "ip":"10.0.2.2", - "afi":"ipv4", - "interfaceName":"eth-rt2-1", -@@ -439,14 +401,6 @@ - 0 - ] - } -- ], -- "backupNexthops":[ -- { -- "ip":"10.0.7.6", -- "afi":"ipv4", -- "interfaceName":"eth-rt6", -- "active":true -- } - ] - } - ], -@@ -460,18 +414,7 @@ - { - "ip":"10.0.7.6", - "afi":"ipv4", -- "interfaceName":"eth-rt6", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "ip":"10.0.6.5", -- "afi":"ipv4", -- "interfaceName":"eth-rt5", -- "active":true -+ "interfaceName":"eth-rt6" - } - ] - } -@@ -492,13 +435,6 @@ - "afi":"ipv4", - "interfaceName":"eth-rt5", - "active":true -- }, -- { -- "fib":true, -- "ip":"10.0.7.6", -- "afi":"ipv4", -- "interfaceName":"eth-rt6", -- "active":true - } - ] - } diff --git a/tests/topotests/isis_tilfa_topo1/rt4/step12/show_ipv6_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt4/step12/show_ipv6_route.ref.diff deleted file mode 100644 index 37e3185ae..000000000 --- a/tests/topotests/isis_tilfa_topo1/rt4/step12/show_ipv6_route.ref.diff +++ /dev/null @@ -1,50 +0,0 @@ ---- a/rt4/step11/show_ipv6_route.ref -+++ b/rt4/step12/show_ipv6_route.ref -@@ -149,23 +149,10 @@ - "afi":"ipv6", - "interfaceName":"eth-rt5", - "active":true, -- "backupIndex":[ -- 0 -- ], - "labels":[ - 3 - ] - } -- ], -- "backupNexthops":[ -- { -- "afi":"ipv6", -- "interfaceName":"eth-rt6", -- "active":true, -- "labels":[ -- 16501 -- ] -- } - ] - } - ], -@@ -184,23 +171,10 @@ - "afi":"ipv6", - "interfaceName":"eth-rt6", - "active":true, -- "backupIndex":[ -- 0 -- ], - "labels":[ - 3 - ] - } -- ], -- "backupNexthops":[ -- { -- "afi":"ipv6", -- "interfaceName":"eth-rt5", -- "active":true, -- "labels":[ -- 30061 -- ] -- } - ] - } - ] diff --git a/tests/topotests/isis_tilfa_topo1/rt4/step12/show_mpls_table.ref.diff b/tests/topotests/isis_tilfa_topo1/rt4/step12/show_mpls_table.ref.diff deleted file mode 100644 index 186291ada..000000000 --- a/tests/topotests/isis_tilfa_topo1/rt4/step12/show_mpls_table.ref.diff +++ /dev/null @@ -1,78 +0,0 @@ ---- a/rt4/step11/show_mpls_table.ref -+++ b/rt4/step12/show_mpls_table.ref -@@ -179,17 +179,7 @@ - "type":"SR (IS-IS)", - "outLabel":3, - "installed":true, -- "nexthop":"10.0.7.6", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "type":"SR (IS-IS)", -- "outLabel":30060, -- "nexthop":"10.0.6.5" -+ "nexthop":"10.0.7.6" - } - ] - }, -@@ -201,17 +191,7 @@ - "type":"SR (IS-IS)", - "outLabel":3, - "installed":true, -- "interface":"eth-rt6", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "type":"SR (IS-IS)", -- "outLabel":30061, -- "interface":"eth-rt5" -+ "interface":"eth-rt6" - } - ] - }, -@@ -223,17 +203,7 @@ - "type":"SR (IS-IS)", - "outLabel":3, - "installed":true, -- "nexthop":"10.0.6.5", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "type":"SR (IS-IS)", -- "outLabel":16500, -- "nexthop":"10.0.7.6" -+ "nexthop":"10.0.6.5" - } - ] - }, -@@ -245,17 +215,7 @@ - "type":"SR (IS-IS)", - "outLabel":3, - "installed":true, -- "interface":"eth-rt5", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "type":"SR (IS-IS)", -- "outLabel":16501, -- "interface":"eth-rt6" -+ "interface":"eth-rt5" - } - ] - } diff --git a/tests/topotests/isis_tilfa_topo1/rt5/step10/show_ip_route.ref b/tests/topotests/isis_tilfa_topo1/rt5/step10/show_ip_route.ref new file mode 100644 index 000000000..fcaf5e6d6 --- /dev/null +++ b/tests/topotests/isis_tilfa_topo1/rt5/step10/show_ip_route.ref @@ -0,0 +1,482 @@ +{ + "1.1.1.1\/32":[ + { + "prefix":"1.1.1.1\/32", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":30, + "installed":true, + "nexthops":[ + { + "fib":true, + "ip":"10.0.4.3", + "afi":"ipv4", + "interfaceName":"eth-rt3-1", + "active":true, + "backupIndex":[ + 0 + ], + "labels":[ + 16010 + ] + }, + { + "fib":true, + "ip":"10.0.5.3", + "afi":"ipv4", + "interfaceName":"eth-rt3-2", + "active":true, + "backupIndex":[ + 0 + ], + "labels":[ + 16010 + ] + } + ], + "backupNexthops":[ + { + "ip":"10.0.6.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true, + "labels":[ + 16010 + ] + } + ] + } + ], + "2.2.2.2\/32":[ + { + "prefix":"2.2.2.2\/32", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":30, + "installed":true, + "nexthops":[ + { + "fib":true, + "ip":"10.0.4.3", + "afi":"ipv4", + "interfaceName":"eth-rt3-1", + "active":true, + "labels":[ + 16020 + ] + }, + { + "fib":true, + "ip":"10.0.5.3", + "afi":"ipv4", + "interfaceName":"eth-rt3-2", + "active":true, + "labels":[ + 16020 + ] + }, + { + "fib":true, + "ip":"10.0.6.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true, + "labels":[ + 16020 + ] + } + ] + } + ], + "3.3.3.3\/32":[ + { + "prefix":"3.3.3.3\/32", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":20, + "installed":true, + "nexthops":[ + { + "fib":true, + "ip":"10.0.4.3", + "afi":"ipv4", + "interfaceName":"eth-rt3-1", + "active":true, + "backupIndex":[ + 0 + ], + "labels":[ + 3 + ] + }, + { + "fib":true, + "ip":"10.0.5.3", + "afi":"ipv4", + "interfaceName":"eth-rt3-2", + "active":true, + "backupIndex":[ + 0 + ], + "labels":[ + 3 + ] + } + ], + "backupNexthops":[ + { + "ip":"10.0.6.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true, + "labels":[ + 16020, + 16030 + ] + } + ] + } + ], + "4.4.4.4\/32":[ + { + "prefix":"4.4.4.4\/32", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":20, + "installed":true, + "nexthops":[ + { + "fib":true, + "ip":"10.0.6.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true, + "backupIndex":[ + 0 + ], + "labels":[ + 3 + ] + } + ], + "backupNexthops":[ + { + "ip":"10.0.8.6", + "afi":"ipv4", + "interfaceName":"eth-rt6", + "active":true, + "labels":[ + 16040 + ] + } + ] + } + ], + "6.6.6.6\/32":[ + { + "prefix":"6.6.6.6\/32", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":30, + "installed":true, + "nexthops":[ + { + "fib":true, + "ip":"10.0.6.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true, + "labels":[ + 16060 + ] + } + ] + } + ], + "10.0.1.0\/24":[ + { + "prefix":"10.0.1.0\/24", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":20, + "installed":true, + "nexthops":[ + { + "fib":true, + "ip":"10.0.4.3", + "afi":"ipv4", + "interfaceName":"eth-rt3-1", + "active":true, + "backupIndex":[ + 0 + ] + }, + { + "fib":true, + "ip":"10.0.5.3", + "afi":"ipv4", + "interfaceName":"eth-rt3-2", + "active":true, + "backupIndex":[ + 0 + ] + } + ], + "backupNexthops":[ + { + "ip":"10.0.6.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true + } + ] + } + ], + "10.0.2.0\/24":[ + { + "prefix":"10.0.2.0\/24", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":20, + "installed":true, + "nexthops":[ + { + "fib":true, + "ip":"10.0.6.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true, + "backupIndex":[ + 0, + 1, + 2 + ] + } + ], + "backupNexthops":[ + { + "ip":"10.0.8.6", + "afi":"ipv4", + "interfaceName":"eth-rt6", + "active":true + }, + { + "ip":"10.0.4.3", + "afi":"ipv4", + "interfaceName":"eth-rt3-1", + "active":true + }, + { + "ip":"10.0.5.3", + "afi":"ipv4", + "interfaceName":"eth-rt3-2", + "active":true + } + ] + } + ], + "10.0.3.0\/24":[ + { + "prefix":"10.0.3.0\/24", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":20, + "installed":true, + "nexthops":[ + { + "fib":true, + "ip":"10.0.6.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true, + "backupIndex":[ + 0, + 1, + 2 + ] + } + ], + "backupNexthops":[ + { + "ip":"10.0.8.6", + "afi":"ipv4", + "interfaceName":"eth-rt6", + "active":true + }, + { + "ip":"10.0.4.3", + "afi":"ipv4", + "interfaceName":"eth-rt3-1", + "active":true + }, + { + "ip":"10.0.5.3", + "afi":"ipv4", + "interfaceName":"eth-rt3-2", + "active":true + } + ] + } + ], + "10.0.4.0\/24":[ + { + "prefix":"10.0.4.0\/24", + "protocol":"isis", + "distance":115, + "metric":20, + "nexthops":[ + { + "ip":"10.0.4.3", + "afi":"ipv4", + "interfaceName":"eth-rt3-1", + "backupIndex":[ + 0 + ] + }, + { + "ip":"10.0.5.3", + "afi":"ipv4", + "interfaceName":"eth-rt3-2", + "active":true, + "backupIndex":[ + 0 + ] + } + ], + "backupNexthops":[ + { + "ip":"10.0.6.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true, + "labels":[ + 16020 + ] + } + ] + } + ], + "10.0.5.0\/24":[ + { + "prefix":"10.0.5.0\/24", + "protocol":"isis", + "distance":115, + "metric":20, + "nexthops":[ + { + "ip":"10.0.4.3", + "afi":"ipv4", + "interfaceName":"eth-rt3-1", + "active":true, + "backupIndex":[ + 0 + ] + }, + { + "ip":"10.0.5.3", + "afi":"ipv4", + "interfaceName":"eth-rt3-2", + "backupIndex":[ + 0 + ] + } + ], + "backupNexthops":[ + { + "ip":"10.0.6.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true, + "labels":[ + 16020 + ] + } + ] + } + ], + "10.0.6.0\/24":[ + { + "prefix":"10.0.6.0\/24", + "protocol":"isis", + "distance":115, + "metric":20, + "nexthops":[ + { + "ip":"10.0.6.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "backupIndex":[ + 0 + ] + } + ], + "backupNexthops":[ + { + "ip":"10.0.8.6", + "afi":"ipv4", + "interfaceName":"eth-rt6", + "active":true + } + ] + } + ], + "10.0.7.0\/24":[ + { + "prefix":"10.0.7.0\/24", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":20, + "installed":true, + "nexthops":[ + { + "fib":true, + "ip":"10.0.6.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true + }, + { + "fib":true, + "ip":"10.0.8.6", + "afi":"ipv4", + "interfaceName":"eth-rt6", + "active":true + } + ] + } + ], + "10.0.8.0\/24":[ + { + "prefix":"10.0.8.0\/24", + "protocol":"isis", + "distance":115, + "metric":30, + "nexthops":[ + { + "ip":"10.0.6.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true + } + ] + } + ] +} diff --git a/tests/topotests/isis_tilfa_topo1/rt5/step10/show_ip_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt5/step10/show_ip_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt5/step10/show_ipv6_route.ref b/tests/topotests/isis_tilfa_topo1/rt5/step10/show_ipv6_route.ref new file mode 100644 index 000000000..d193e1e86 --- /dev/null +++ b/tests/topotests/isis_tilfa_topo1/rt5/step10/show_ipv6_route.ref @@ -0,0 +1,229 @@ +{ + "2001:db8:1000::1\/128":[ + { + "prefix":"2001:db8:1000::1\/128", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":30, + "installed":true, + "nexthops":[ + { + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt3-1", + "active":true, + "backupIndex":[ + 0 + ], + "labels":[ + 16011 + ] + }, + { + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt3-2", + "active":true, + "backupIndex":[ + 0 + ], + "labels":[ + 16011 + ] + } + ], + "backupNexthops":[ + { + "afi":"ipv6", + "interfaceName":"eth-rt4", + "active":true, + "labels":[ + 16011 + ] + } + ] + } + ], + "2001:db8:1000::2\/128":[ + { + "prefix":"2001:db8:1000::2\/128", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":30, + "installed":true, + "nexthops":[ + { + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt3-1", + "active":true, + "labels":[ + 16021 + ] + }, + { + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt3-2", + "active":true, + "labels":[ + 16021 + ] + }, + { + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt4", + "active":true, + "labels":[ + 16021 + ] + } + ] + } + ], + "2001:db8:1000::3\/128":[ + { + "prefix":"2001:db8:1000::3\/128", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":20, + "installed":true, + "nexthops":[ + { + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt3-1", + "active":true, + "backupIndex":[ + 0 + ], + "labels":[ + 3 + ] + }, + { + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt3-2", + "active":true, + "backupIndex":[ + 0 + ], + "labels":[ + 3 + ] + } + ], + "backupNexthops":[ + { + "afi":"ipv6", + "interfaceName":"eth-rt4", + "active":true, + "labels":[ + 16021, + 16031 + ] + } + ] + } + ], + "2001:db8:1000::4\/128":[ + { + "prefix":"2001:db8:1000::4\/128", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":20, + "installed":true, + "nexthops":[ + { + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt4", + "active":true, + "backupIndex":[ + 0, + 1 + ], + "labels":[ + 3 + ] + } + ], + "backupNexthops":[ + { + "afi":"ipv6", + "interfaceName":"eth-rt3-1", + "active":true, + "labels":[ + 16021, + 16041 + ] + }, + { + "afi":"ipv6", + "interfaceName":"eth-rt3-2", + "active":true, + "labels":[ + 16021, + 16041 + ] + } + ] + } + ], + "2001:db8:1000::6\/128":[ + { + "prefix":"2001:db8:1000::6\/128", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":30, + "installed":true, + "nexthops":[ + { + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt4", + "active":true, + "backupIndex":[ + 0, + 1 + ], + "labels":[ + 16061 + ] + } + ], + "backupNexthops":[ + { + "afi":"ipv6", + "interfaceName":"eth-rt3-1", + "active":true, + "labels":[ + 16021, + 16061 + ] + }, + { + "afi":"ipv6", + "interfaceName":"eth-rt3-2", + "active":true, + "labels":[ + 16021, + 16061 + ] + } + ] + } + ] +} diff --git a/tests/topotests/isis_tilfa_topo1/rt5/step10/show_ipv6_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt5/step10/show_ipv6_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt5/step10/show_mpls_table.ref b/tests/topotests/isis_tilfa_topo1/rt5/step10/show_mpls_table.ref new file mode 100644 index 000000000..8a339e6e9 --- /dev/null +++ b/tests/topotests/isis_tilfa_topo1/rt5/step10/show_mpls_table.ref @@ -0,0 +1,301 @@ +{ + "30010":{ + "inLabel":30010, + "installed":true, + "nexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16010, + "installed":true, + "nexthop":"10.0.5.3", + "interface":"eth-rt3-2", + "backupIndex":[ + 0 + ] + }, + { + "type":"SR (IS-IS)", + "outLabel":16010, + "installed":true, + "nexthop":"10.0.4.3", + "interface":"eth-rt3-1", + "backupIndex":[ + 0 + ] + } + ], + "backupNexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16010, + "nexthop":"10.0.6.4", + "interface":"eth-rt4" + } + ] + }, + "30011":{ + "inLabel":30011, + "installed":true, + "nexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16011, + "installed":true, + "interface":"eth-rt3-2", + "backupIndex":[ + 0 + ] + }, + { + "type":"SR (IS-IS)", + "outLabel":16011, + "installed":true, + "interface":"eth-rt3-1", + "backupIndex":[ + 0 + ] + } + ], + "backupNexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16011, + "interface":"eth-rt4" + } + ] + }, + "30020":{ + "inLabel":30020, + "installed":true, + "nexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16020, + "installed":true, + "nexthop":"10.0.5.3", + "interface":"eth-rt3-2" + }, + { + "type":"SR (IS-IS)", + "outLabel":16020, + "installed":true, + "nexthop":"10.0.4.3", + "interface":"eth-rt3-1" + }, + { + "type":"SR (IS-IS)", + "outLabel":16020, + "installed":true, + "nexthop":"10.0.6.4", + "interface":"eth-rt4" + } + ] + }, + "30021":{ + "inLabel":30021, + "installed":true, + "nexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16021, + "installed":true, + "interface":"eth-rt3-2" + }, + { + "type":"SR (IS-IS)", + "outLabel":16021, + "installed":true, + "interface":"eth-rt3-1" + }, + { + "type":"SR (IS-IS)", + "outLabel":16021, + "installed":true, + "interface":"eth-rt4" + } + ] + }, + "30030":{ + "inLabel":30030, + "installed":true, + "nexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":3, + "installed":true, + "nexthop":"10.0.5.3", + "interface":"eth-rt3-2", + "backupIndex":[ + 0 + ] + }, + { + "type":"SR (IS-IS)", + "outLabel":3, + "installed":true, + "nexthop":"10.0.4.3", + "interface":"eth-rt3-1", + "backupIndex":[ + 0 + ] + } + ], + "backupNexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16020, + "nexthop":"10.0.6.4", + "interface":"eth-rt4" + } + ] + }, + "30031":{ + "inLabel":30031, + "installed":true, + "nexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":3, + "installed":true, + "interface":"eth-rt3-2", + "backupIndex":[ + 0 + ] + }, + { + "type":"SR (IS-IS)", + "outLabel":3, + "installed":true, + "interface":"eth-rt3-1", + "backupIndex":[ + 0 + ] + } + ], + "backupNexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16021, + "interface":"eth-rt4" + } + ] + }, + "30040":{ + "inLabel":30040, + "installed":true, + "nexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":3, + "installed":true, + "nexthop":"10.0.6.4", + "interface":"eth-rt4", + "backupIndex":[ + 0, + 1 + ] + } + ], + "backupNexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16020, + "nexthop":"10.0.4.3", + "interface":"eth-rt3-1" + }, + { + "type":"SR (IS-IS)", + "outLabel":16020, + "nexthop":"10.0.5.3", + "interface":"eth-rt3-2" + } + ] + }, + "30041":{ + "inLabel":30041, + "installed":true, + "nexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":3, + "installed":true, + "interface":"eth-rt4", + "backupIndex":[ + 0, + 1 + ] + } + ], + "backupNexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16021, + "interface":"eth-rt3-1" + }, + { + "type":"SR (IS-IS)", + "outLabel":16021, + "interface":"eth-rt3-2" + } + ] + }, + "30060":{ + "inLabel":30060, + "installed":true, + "nexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16060, + "installed":true, + "nexthop":"10.0.6.4", + "interface":"eth-rt4", + "backupIndex":[ + 0, + 1 + ] + } + ], + "backupNexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16020, + "nexthop":"10.0.4.3", + "interface":"eth-rt3-1" + }, + { + "type":"SR (IS-IS)", + "outLabel":16020, + "nexthop":"10.0.5.3", + "interface":"eth-rt3-2" + } + ] + }, + "30061":{ + "inLabel":30061, + "installed":true, + "nexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16061, + "installed":true, + "interface":"eth-rt4", + "backupIndex":[ + 0, + 1 + ] + } + ], + "backupNexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16021, + "interface":"eth-rt3-1" + }, + { + "type":"SR (IS-IS)", + "outLabel":16021, + "interface":"eth-rt3-2" + } + ] + } +} diff --git a/tests/topotests/isis_tilfa_topo1/rt5/step10/show_mpls_table.ref.diff b/tests/topotests/isis_tilfa_topo1/rt5/step10/show_mpls_table.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt5/step11/show_ip_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt5/step11/show_ip_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt5/step11/show_ipv6_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt5/step11/show_ipv6_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt5/step11/show_mpls_table.ref.diff b/tests/topotests/isis_tilfa_topo1/rt5/step11/show_mpls_table.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt5/step12/show_ip_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt5/step12/show_ip_route.ref.diff deleted file mode 100644 index 3d21c0429..000000000 --- a/tests/topotests/isis_tilfa_topo1/rt5/step12/show_ip_route.ref.diff +++ /dev/null @@ -1,151 +0,0 @@ ---- a/rt5/step11/show_ip_route.ref -+++ b/rt5/step12/show_ip_route.ref -@@ -159,24 +159,10 @@ - "afi":"ipv4", - "interfaceName":"eth-rt4", - "active":true, -- "backupIndex":[ -- 0 -- ], - "labels":[ - 3 - ] - } -- ], -- "backupNexthops":[ -- { -- "ip":"10.0.8.6", -- "afi":"ipv4", -- "interfaceName":"eth-rt6", -- "active":true, -- "labels":[ -- 16040 -- ] -- } - ] - } - ], -@@ -187,25 +173,11 @@ - "selected":true, - "destSelected":true, - "distance":115, -- "metric":20, -+ "metric":30, - "installed":true, - "nexthops":[ - { - "fib":true, -- "ip":"10.0.8.6", -- "afi":"ipv4", -- "interfaceName":"eth-rt6", -- "active":true, -- "backupIndex":[ -- 0 -- ], -- "labels":[ -- 3 -- ] -- } -- ], -- "backupNexthops":[ -- { - "ip":"10.0.6.4", - "afi":"ipv4", - "interfaceName":"eth-rt4", -@@ -276,19 +248,12 @@ - "active":true, - "backupIndex":[ - 0, -- 1, -- 2 -+ 1 - ] - } - ], - "backupNexthops":[ - { -- "ip":"10.0.8.6", -- "afi":"ipv4", -- "interfaceName":"eth-rt6", -- "active":true -- }, -- { - "ip":"10.0.4.3", - "afi":"ipv4", - "interfaceName":"eth-rt3-1", -@@ -321,19 +286,12 @@ - "active":true, - "backupIndex":[ - 0, -- 1, -- 2 -+ 1 - ] - } - ], - "backupNexthops":[ - { -- "ip":"10.0.8.6", -- "afi":"ipv4", -- "interfaceName":"eth-rt6", -- "active":true -- }, -- { - "ip":"10.0.4.3", - "afi":"ipv4", - "interfaceName":"eth-rt3-1", -@@ -439,14 +397,6 @@ - 0 - ] - } -- ], -- "backupNexthops":[ -- { -- "ip":"10.0.8.6", -- "afi":"ipv4", -- "interfaceName":"eth-rt6", -- "active":true -- } - ] - } - ], -@@ -465,39 +415,6 @@ - "ip":"10.0.6.4", - "afi":"ipv4", - "interfaceName":"eth-rt4", -- "active":true -- }, -- { -- "fib":true, -- "ip":"10.0.8.6", -- "afi":"ipv4", -- "interfaceName":"eth-rt6", -- "active":true -- } -- ] -- } -- ], -- "10.0.8.0\/24":[ -- { -- "prefix":"10.0.8.0\/24", -- "protocol":"isis", -- "distance":115, -- "metric":20, -- "nexthops":[ -- { -- "ip":"10.0.8.6", -- "afi":"ipv4", -- "interfaceName":"eth-rt6", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "ip":"10.0.6.4", -- "afi":"ipv4", -- "interfaceName":"eth-rt4", - "active":true - } - ] diff --git a/tests/topotests/isis_tilfa_topo1/rt5/step12/show_ipv6_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt5/step12/show_ipv6_route.ref.diff deleted file mode 100644 index 66a9dace8..000000000 --- a/tests/topotests/isis_tilfa_topo1/rt5/step12/show_ipv6_route.ref.diff +++ /dev/null @@ -1,53 +0,0 @@ ---- a/rt5/step11/show_ipv6_route.ref -+++ b/rt5/step12/show_ipv6_route.ref -@@ -149,23 +149,10 @@ - "afi":"ipv6", - "interfaceName":"eth-rt4", - "active":true, -- "backupIndex":[ -- 0 -- ], - "labels":[ - 3 - ] - } -- ], -- "backupNexthops":[ -- { -- "afi":"ipv6", -- "interfaceName":"eth-rt6", -- "active":true, -- "labels":[ -- 16041 -- ] -- } - ] - } - ], -@@ -176,25 +163,12 @@ - "selected":true, - "destSelected":true, - "distance":115, -- "metric":20, -+ "metric":30, - "installed":true, - "nexthops":[ - { - "fib":true, - "afi":"ipv6", -- "interfaceName":"eth-rt6", -- "active":true, -- "backupIndex":[ -- 0 -- ], -- "labels":[ -- 3 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "afi":"ipv6", - "interfaceName":"eth-rt4", - "active":true, - "labels":[ diff --git a/tests/topotests/isis_tilfa_topo1/rt5/step12/show_mpls_table.ref.diff b/tests/topotests/isis_tilfa_topo1/rt5/step12/show_mpls_table.ref.diff deleted file mode 100644 index cdfc407f9..000000000 --- a/tests/topotests/isis_tilfa_topo1/rt5/step12/show_mpls_table.ref.diff +++ /dev/null @@ -1,80 +0,0 @@ ---- a/rt5/step11/show_mpls_table.ref -+++ b/rt5/step12/show_mpls_table.ref -@@ -179,17 +179,7 @@ - "type":"SR (IS-IS)", - "outLabel":3, - "installed":true, -- "nexthop":"10.0.6.4", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "type":"SR (IS-IS)", -- "outLabel":16040, -- "nexthop":"10.0.8.6" -+ "nexthop":"10.0.6.4" - } - ] - }, -@@ -201,17 +191,7 @@ - "type":"SR (IS-IS)", - "outLabel":3, - "installed":true, -- "interface":"eth-rt4", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "type":"SR (IS-IS)", -- "outLabel":16041, -- "interface":"eth-rt6" -+ "interface":"eth-rt4" - } - ] - }, -@@ -221,18 +201,8 @@ - "nexthops":[ - { - "type":"SR (IS-IS)", -- "outLabel":3, -- "installed":true, -- "nexthop":"10.0.8.6", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "type":"SR (IS-IS)", - "outLabel":16060, -+ "installed":true, - "nexthop":"10.0.6.4" - } - ] -@@ -243,18 +213,8 @@ - "nexthops":[ - { - "type":"SR (IS-IS)", -- "outLabel":3, -- "installed":true, -- "interface":"eth-rt6", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "type":"SR (IS-IS)", - "outLabel":16061, -+ "installed":true, - "interface":"eth-rt4" - } - ] diff --git a/tests/topotests/isis_tilfa_topo1/rt6/step10/show_bfd_peer_down.ref b/tests/topotests/isis_tilfa_topo1/rt6/step10/show_bfd_peer_down.ref new file mode 100644 index 000000000..2b573d077 --- /dev/null +++ b/tests/topotests/isis_tilfa_topo1/rt6/step10/show_bfd_peer_down.ref @@ -0,0 +1,6 @@ +{ + "multihop":false, + "peer":"10.0.8.5", + "interface":"eth-rt5", + "status":"down" +} diff --git a/tests/topotests/isis_tilfa_topo1/rt6/step10/show_bfd_peer_up.ref b/tests/topotests/isis_tilfa_topo1/rt6/step10/show_bfd_peer_up.ref new file mode 100644 index 000000000..f536b36f1 --- /dev/null +++ b/tests/topotests/isis_tilfa_topo1/rt6/step10/show_bfd_peer_up.ref @@ -0,0 +1,6 @@ +{ + "multihop":false, + "peer":"10.0.8.5", + "interface":"eth-rt5", + "status":"up" +} diff --git a/tests/topotests/isis_tilfa_topo1/rt6/step10/show_ip_route.ref b/tests/topotests/isis_tilfa_topo1/rt6/step10/show_ip_route.ref new file mode 100644 index 000000000..822e24b3b --- /dev/null +++ b/tests/topotests/isis_tilfa_topo1/rt6/step10/show_ip_route.ref @@ -0,0 +1,354 @@ +{ + "1.1.1.1\/32":[ + { + "prefix":"1.1.1.1\/32", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":40, + "installed":true, + "nexthops":[ + { + "fib":true, + "ip":"10.0.7.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true, + "labels":[ + 16010 + ] + }, + { + "fib":true, + "ip":"10.0.8.5", + "afi":"ipv4", + "interfaceName":"eth-rt5", + "active":true, + "labels":[ + 30010 + ] + } + ] + } + ], + "2.2.2.2\/32":[ + { + "prefix":"2.2.2.2\/32", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":30, + "installed":true, + "nexthops":[ + { + "fib":true, + "ip":"10.0.7.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true, + "backupIndex":[ + 0 + ], + "labels":[ + 16020 + ] + } + ], + "backupNexthops":[ + { + "ip":"10.0.8.5", + "afi":"ipv4", + "interfaceName":"eth-rt5", + "active":true, + "labels":[ + 30020 + ] + } + ] + } + ], + "3.3.3.3\/32":[ + { + "prefix":"3.3.3.3\/32", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":40, + "installed":true, + "nexthops":[ + { + "fib":true, + "ip":"10.0.7.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true, + "labels":[ + 16030 + ] + } + ] + } + ], + "4.4.4.4\/32":[ + { + "prefix":"4.4.4.4\/32", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":20, + "installed":true, + "nexthops":[ + { + "fib":true, + "ip":"10.0.7.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true, + "backupIndex":[ + 0 + ], + "labels":[ + 3 + ] + } + ], + "backupNexthops":[ + { + "ip":"10.0.8.5", + "afi":"ipv4", + "interfaceName":"eth-rt5", + "active":true, + "labels":[ + 30040 + ] + } + ] + } + ], + "5.5.5.5\/32":[ + { + "prefix":"5.5.5.5\/32", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":30, + "installed":true, + "nexthops":[ + { + "fib":true, + "ip":"10.0.7.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true, + "labels":[ + 16500 + ] + } + ] + } + ], + "10.0.1.0\/24":[ + { + "prefix":"10.0.1.0\/24", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":30, + "installed":true, + "nexthops":[ + { + "fib":true, + "ip":"10.0.7.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true + }, + { + "fib":true, + "ip":"10.0.8.5", + "afi":"ipv4", + "interfaceName":"eth-rt5", + "active":true + } + ] + } + ], + "10.0.2.0\/24":[ + { + "prefix":"10.0.2.0\/24", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":20, + "installed":true, + "nexthops":[ + { + "fib":true, + "ip":"10.0.7.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true, + "backupIndex":[ + 0 + ] + } + ], + "backupNexthops":[ + { + "ip":"10.0.8.5", + "afi":"ipv4", + "interfaceName":"eth-rt5", + "active":true + } + ] + } + ], + "10.0.3.0\/24":[ + { + "prefix":"10.0.3.0\/24", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":20, + "installed":true, + "nexthops":[ + { + "fib":true, + "ip":"10.0.7.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true, + "backupIndex":[ + 0 + ] + } + ], + "backupNexthops":[ + { + "ip":"10.0.8.5", + "afi":"ipv4", + "interfaceName":"eth-rt5", + "active":true + } + ] + } + ], + "10.0.4.0\/24":[ + { + "prefix":"10.0.4.0\/24", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":30, + "installed":true, + "nexthops":[ + { + "fib":true, + "ip":"10.0.7.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true + } + ] + } + ], + "10.0.5.0\/24":[ + { + "prefix":"10.0.5.0\/24", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":30, + "installed":true, + "nexthops":[ + { + "fib":true, + "ip":"10.0.7.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true + } + ] + } + ], + "10.0.6.0\/24":[ + { + "prefix":"10.0.6.0\/24", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":20, + "installed":true, + "nexthops":[ + { + "fib":true, + "ip":"10.0.7.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true + }, + { + "fib":true, + "ip":"10.0.8.5", + "afi":"ipv4", + "interfaceName":"eth-rt5", + "active":true + } + ] + } + ], + "10.0.7.0\/24":[ + { + "prefix":"10.0.7.0\/24", + "protocol":"isis", + "distance":115, + "metric":20, + "nexthops":[ + { + "ip":"10.0.7.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "backupIndex":[ + 0 + ] + } + ], + "backupNexthops":[ + { + "ip":"10.0.8.5", + "afi":"ipv4", + "interfaceName":"eth-rt5", + "active":true + } + ] + } + ], + "10.0.8.0\/24":[ + { + "prefix":"10.0.8.0\/24", + "protocol":"isis", + "distance":115, + "metric":30, + "nexthops":[ + { + "fib":true, + "ip":"10.0.7.4", + "afi":"ipv4", + "interfaceName":"eth-rt4", + "active":true + } + ] + } + ] +} diff --git a/tests/topotests/isis_tilfa_topo1/rt6/step10/show_ip_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt6/step10/show_ip_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt6/step10/show_ipv6_route.ref b/tests/topotests/isis_tilfa_topo1/rt6/step10/show_ipv6_route.ref new file mode 100644 index 000000000..c7e79852f --- /dev/null +++ b/tests/topotests/isis_tilfa_topo1/rt6/step10/show_ipv6_route.ref @@ -0,0 +1,112 @@ +{ + "2001:db8:1000::1\/128":[ + { + "prefix":"2001:db8:1000::1\/128", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":40, + "installed":true, + "nexthops":[ + { + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt4", + "active":true, + "labels":[ + 16011 + ] + } + ] + } + ], + "2001:db8:1000::2\/128":[ + { + "prefix":"2001:db8:1000::2\/128", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":30, + "installed":true, + "nexthops":[ + { + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt4", + "active":true, + "labels":[ + 16021 + ] + } + ] + } + ], + "2001:db8:1000::3\/128":[ + { + "prefix":"2001:db8:1000::3\/128", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":40, + "installed":true, + "nexthops":[ + { + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt4", + "active":true, + "labels":[ + 16031 + ] + } + ] + } + ], + "2001:db8:1000::4\/128":[ + { + "prefix":"2001:db8:1000::4\/128", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":20, + "installed":true, + "nexthops":[ + { + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt4", + "active":true, + "labels":[ + 3 + ] + } + ] + } + ], + "2001:db8:1000::5\/128":[ + { + "prefix":"2001:db8:1000::5\/128", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":30, + "installed":true, + "nexthops":[ + { + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt4", + "active":true, + "labels":[ + 16501 + ] + } + ] + } + ] +} diff --git a/tests/topotests/isis_tilfa_topo1/rt6/step10/show_ipv6_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt6/step10/show_ipv6_route.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt6/step10/show_mpls_table.ref b/tests/topotests/isis_tilfa_topo1/rt6/step10/show_mpls_table.ref new file mode 100644 index 000000000..6e4a783a6 --- /dev/null +++ b/tests/topotests/isis_tilfa_topo1/rt6/step10/show_mpls_table.ref @@ -0,0 +1,127 @@ +{ + "16010":{ + "inLabel":16010, + "installed":true, + "nexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16010, + "installed":true, + "nexthop":"10.0.7.4", + "interface":"eth-rt4" + } + ] + }, + "16011":{ + "inLabel":16011, + "installed":true, + "nexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16011, + "installed":true, + "interface":"eth-rt4" + } + ] + }, + "16020":{ + "inLabel":16020, + "installed":true, + "nexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16020, + "installed":true, + "nexthop":"10.0.7.4", + "interface":"eth-rt4" + } + ] + }, + "16021":{ + "inLabel":16021, + "installed":true, + "nexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16021, + "installed":true, + "interface":"eth-rt4" + } + ] + }, + "16030":{ + "inLabel":16030, + "installed":true, + "nexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16030, + "installed":true, + "nexthop":"10.0.7.4", + "interface":"eth-rt4" + } + ] + }, + "16031":{ + "inLabel":16031, + "installed":true, + "nexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16031, + "installed":true, + "interface":"eth-rt4" + } + ] + }, + "16040":{ + "inLabel":16040, + "installed":true, + "nexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":3, + "installed":true, + "nexthop":"10.0.7.4", + "interface":"eth-rt4" + } + ] + }, + "16041":{ + "inLabel":16041, + "installed":true, + "nexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":3, + "installed":true, + "interface":"eth-rt4" + } + ] + }, + "16500":{ + "inLabel":16500, + "installed":true, + "nexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16500, + "installed":true, + "nexthop":"10.0.7.4", + "interface":"eth-rt4" + } + ] + }, + "16501":{ + "inLabel":16501, + "installed":true, + "nexthops":[ + { + "type":"SR (IS-IS)", + "outLabel":16501, + "installed":true, + "interface":"eth-rt4" + } + ] + } +} diff --git a/tests/topotests/isis_tilfa_topo1/rt6/step10/show_mpls_table.ref.diff b/tests/topotests/isis_tilfa_topo1/rt6/step10/show_mpls_table.ref.diff deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/topotests/isis_tilfa_topo1/rt6/step11/show_ip_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt6/step11/show_ip_route.ref.diff deleted file mode 100644 index e477e87d1..000000000 --- a/tests/topotests/isis_tilfa_topo1/rt6/step11/show_ip_route.ref.diff +++ /dev/null @@ -1,125 +0,0 @@ ---- a/rt6/step10/show_ip_route.ref -+++ b/rt6/step11/show_ip_route.ref -@@ -76,25 +76,11 @@ - "selected":true, - "destSelected":true, - "distance":115, -- "metric":30, -+ "metric":40, - "installed":true, - "nexthops":[ - { - "fib":true, -- "ip":"10.0.8.5", -- "afi":"ipv4", -- "interfaceName":"eth-rt5", -- "active":true, -- "backupIndex":[ -- 0 -- ], -- "labels":[ -- 30030 -- ] -- } -- ], -- "backupNexthops":[ -- { - "ip":"10.0.7.4", - "afi":"ipv4", - "interfaceName":"eth-rt4", -@@ -150,25 +136,11 @@ - "selected":true, - "destSelected":true, - "distance":115, -- "metric":20, -+ "metric":30, - "installed":true, - "nexthops":[ - { - "fib":true, -- "ip":"10.0.8.5", -- "afi":"ipv4", -- "interfaceName":"eth-rt5", -- "active":true, -- "backupIndex":[ -- 0 -- ], -- "labels":[ -- 3 -- ] -- } -- ], -- "backupNexthops":[ -- { - "ip":"10.0.7.4", - "afi":"ipv4", - "interfaceName":"eth-rt4", -@@ -276,22 +248,11 @@ - "selected":true, - "destSelected":true, - "distance":115, -- "metric":20, -+ "metric":30, - "installed":true, - "nexthops":[ - { - "fib":true, -- "ip":"10.0.8.5", -- "afi":"ipv4", -- "interfaceName":"eth-rt5", -- "active":true, -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { - "ip":"10.0.7.4", - "afi":"ipv4", - "interfaceName":"eth-rt4", -@@ -307,22 +268,11 @@ - "selected":true, - "destSelected":true, - "distance":115, -- "metric":20, -+ "metric":30, - "installed":true, - "nexthops":[ - { - "fib":true, -- "ip":"10.0.8.5", -- "afi":"ipv4", -- "interfaceName":"eth-rt5", -- "active":true, -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { - "ip":"10.0.7.4", - "afi":"ipv4", - "interfaceName":"eth-rt4", -@@ -389,19 +339,9 @@ - "prefix":"10.0.8.0\/24", - "protocol":"isis", - "distance":115, -- "metric":20, -+ "metric":30, - "nexthops":[ - { -- "ip":"10.0.8.5", -- "afi":"ipv4", -- "interfaceName":"eth-rt5", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { - "ip":"10.0.7.4", - "afi":"ipv4", - "interfaceName":"eth-rt4", diff --git a/tests/topotests/isis_tilfa_topo1/rt6/step11/show_ipv6_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt6/step11/show_ipv6_route.ref.diff deleted file mode 100644 index 12e0b591d..000000000 --- a/tests/topotests/isis_tilfa_topo1/rt6/step11/show_ipv6_route.ref.diff +++ /dev/null @@ -1,56 +0,0 @@ ---- a/rt6/step10/show_ipv6_route.ref -+++ b/rt6/step11/show_ipv6_route.ref -@@ -72,25 +72,12 @@ - "selected":true, - "destSelected":true, - "distance":115, -- "metric":30, -+ "metric":40, - "installed":true, - "nexthops":[ - { - "fib":true, - "afi":"ipv6", -- "interfaceName":"eth-rt5", -- "active":true, -- "backupIndex":[ -- 0 -- ], -- "labels":[ -- 30031 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "afi":"ipv6", - "interfaceName":"eth-rt4", - "active":true, - "labels":[ -@@ -142,25 +129,12 @@ - "selected":true, - "destSelected":true, - "distance":115, -- "metric":20, -+ "metric":30, - "installed":true, - "nexthops":[ - { - "fib":true, - "afi":"ipv6", -- "interfaceName":"eth-rt5", -- "active":true, -- "backupIndex":[ -- 0 -- ], -- "labels":[ -- 3 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "afi":"ipv6", - "interfaceName":"eth-rt4", - "active":true, - "labels":[ diff --git a/tests/topotests/isis_tilfa_topo1/rt6/step11/show_mpls_table.ref.diff b/tests/topotests/isis_tilfa_topo1/rt6/step11/show_mpls_table.ref.diff deleted file mode 100644 index 387dcca3f..000000000 --- a/tests/topotests/isis_tilfa_topo1/rt6/step11/show_mpls_table.ref.diff +++ /dev/null @@ -1,106 +0,0 @@ ---- a/rt6/step10/show_mpls_table.ref -+++ b/rt6/step11/show_mpls_table.ref -@@ -8,12 +8,6 @@ - "outLabel":16010, - "installed":true, - "nexthop":"10.0.7.4" -- }, -- { -- "type":"SR (IS-IS)", -- "outLabel":30010, -- "installed":true, -- "nexthop":"10.0.8.5" - } - ] - }, -@@ -26,12 +20,6 @@ - "outLabel":16011, - "installed":true, - "interface":"eth-rt4" -- }, -- { -- "type":"SR (IS-IS)", -- "outLabel":30011, -- "installed":true, -- "interface":"eth-rt5" - } - ] - }, -@@ -85,18 +73,8 @@ - "nexthops":[ - { - "type":"SR (IS-IS)", -- "outLabel":30030, -- "installed":true, -- "nexthop":"10.0.8.5", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "type":"SR (IS-IS)", - "outLabel":16030, -+ "installed":true, - "nexthop":"10.0.7.4" - } - ] -@@ -107,17 +85,6 @@ - "nexthops":[ - { - "type":"SR (IS-IS)", -- "outLabel":30031, -- "installed":true, -- "interface":"eth-rt5", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "type":"SR (IS-IS)", - "outLabel":16031, - "interface":"eth-rt4" - } -@@ -173,18 +140,8 @@ - "nexthops":[ - { - "type":"SR (IS-IS)", -- "outLabel":3, -- "installed":true, -- "nexthop":"10.0.8.5", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "type":"SR (IS-IS)", - "outLabel":16500, -+ "installed":true, - "nexthop":"10.0.7.4" - } - ] -@@ -195,18 +152,8 @@ - "nexthops":[ - { - "type":"SR (IS-IS)", -- "outLabel":3, -- "installed":true, -- "interface":"eth-rt5", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "type":"SR (IS-IS)", - "outLabel":16501, -+ "installed":true, - "interface":"eth-rt4" - } - ] diff --git a/tests/topotests/isis_tilfa_topo1/rt6/step12/show_ip_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt6/step12/show_ip_route.ref.diff deleted file mode 100644 index 1086b6e70..000000000 --- a/tests/topotests/isis_tilfa_topo1/rt6/step12/show_ip_route.ref.diff +++ /dev/null @@ -1,153 +0,0 @@ ---- a/rt6/step12/show_ip_route.ref -+++ b/rt6/step12/show_ip_route.ref -@@ -18,16 +18,6 @@ - "labels":[ - 16010 - ] -- }, -- { -- "fib":true, -- "ip":"10.0.8.5", -- "afi":"ipv4", -- "interfaceName":"eth-rt5", -- "active":true, -- "labels":[ -- 30010 -- ] - } - ] - } -@@ -48,24 +38,10 @@ - "afi":"ipv4", - "interfaceName":"eth-rt4", - "active":true, -- "backupIndex":[ -- 0 -- ], - "labels":[ - 16020 - ] - } -- ], -- "backupNexthops":[ -- { -- "ip":"10.0.8.5", -- "afi":"ipv4", -- "interfaceName":"eth-rt5", -- "active":true, -- "labels":[ -- 30020 -- ] -- } - ] - } - ], -@@ -108,24 +84,10 @@ - "afi":"ipv4", - "interfaceName":"eth-rt4", - "active":true, -- "backupIndex":[ -- 0 -- ], - "labels":[ - 3 - ] - } -- ], -- "backupNexthops":[ -- { -- "ip":"10.0.8.5", -- "afi":"ipv4", -- "interfaceName":"eth-rt5", -- "active":true, -- "labels":[ -- 30040 -- ] -- } - ] - } - ], -@@ -168,13 +130,6 @@ - "afi":"ipv4", - "interfaceName":"eth-rt4", - "active":true -- }, -- { -- "fib":true, -- "ip":"10.0.8.5", -- "afi":"ipv4", -- "interfaceName":"eth-rt5", -- "active":true - } - ] - } -@@ -194,17 +149,6 @@ - "ip":"10.0.7.4", - "afi":"ipv4", - "interfaceName":"eth-rt4", -- "active":true, -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "ip":"10.0.8.5", -- "afi":"ipv4", -- "interfaceName":"eth-rt5", - "active":true - } - ] -@@ -225,17 +169,6 @@ - "ip":"10.0.7.4", - "afi":"ipv4", - "interfaceName":"eth-rt4", -- "active":true, -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "ip":"10.0.8.5", -- "afi":"ipv4", -- "interfaceName":"eth-rt5", - "active":true - } - ] -@@ -297,13 +230,6 @@ - "afi":"ipv4", - "interfaceName":"eth-rt4", - "active":true -- }, -- { -- "fib":true, -- "ip":"10.0.8.5", -- "afi":"ipv4", -- "interfaceName":"eth-rt5", -- "active":true - } - ] - } -@@ -318,18 +244,7 @@ - { - "ip":"10.0.7.4", - "afi":"ipv4", -- "interfaceName":"eth-rt4", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "ip":"10.0.8.5", -- "afi":"ipv4", -- "interfaceName":"eth-rt5", -- "active":true -+ "interfaceName":"eth-rt4" - } - ] - } diff --git a/tests/topotests/isis_tilfa_topo1/rt6/step12/show_ipv6_route.ref.diff b/tests/topotests/isis_tilfa_topo1/rt6/step12/show_ipv6_route.ref.diff deleted file mode 100644 index 571c66fb6..000000000 --- a/tests/topotests/isis_tilfa_topo1/rt6/step12/show_ipv6_route.ref.diff +++ /dev/null @@ -1,66 +0,0 @@ ---- a/rt6/step12/show_ipv6_route.ref -+++ b/rt6/step12/show_ipv6_route.ref -@@ -17,15 +17,6 @@ - "labels":[ - 16011 - ] -- }, -- { -- "fib":true, -- "afi":"ipv6", -- "interfaceName":"eth-rt5", -- "active":true, -- "labels":[ -- 30011 -- ] - } - ] - } -@@ -45,23 +36,10 @@ - "afi":"ipv6", - "interfaceName":"eth-rt4", - "active":true, -- "backupIndex":[ -- 0 -- ], - "labels":[ - 16021 - ] - } -- ], -- "backupNexthops":[ -- { -- "afi":"ipv6", -- "interfaceName":"eth-rt5", -- "active":true, -- "labels":[ -- 30021 -- ] -- } - ] - } - ], -@@ -102,23 +80,10 @@ - "afi":"ipv6", - "interfaceName":"eth-rt4", - "active":true, -- "backupIndex":[ -- 0 -- ], - "labels":[ - 3 - ] - } -- ], -- "backupNexthops":[ -- { -- "afi":"ipv6", -- "interfaceName":"eth-rt5", -- "active":true, -- "labels":[ -- 30041 -- ] -- } - ] - } - ], diff --git a/tests/topotests/isis_tilfa_topo1/rt6/step12/show_mpls_table.ref.diff b/tests/topotests/isis_tilfa_topo1/rt6/step12/show_mpls_table.ref.diff deleted file mode 100644 index 18322f18a..000000000 --- a/tests/topotests/isis_tilfa_topo1/rt6/step12/show_mpls_table.ref.diff +++ /dev/null @@ -1,78 +0,0 @@ ---- a/rt6/step12/show_mpls_table.ref -+++ b/rt6/step12/show_mpls_table.ref -@@ -31,17 +31,7 @@ - "type":"SR (IS-IS)", - "outLabel":16020, - "installed":true, -- "nexthop":"10.0.7.4", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "type":"SR (IS-IS)", -- "outLabel":30020, -- "nexthop":"10.0.8.5" -+ "nexthop":"10.0.7.4" - } - ] - }, -@@ -53,17 +43,7 @@ - "type":"SR (IS-IS)", - "outLabel":16021, - "installed":true, -- "interface":"eth-rt4", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "type":"SR (IS-IS)", -- "outLabel":30021, -- "interface":"eth-rt5" -+ "interface":"eth-rt4" - } - ] - }, -@@ -98,17 +78,7 @@ - "type":"SR (IS-IS)", - "outLabel":3, - "installed":true, -- "nexthop":"10.0.7.4", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "type":"SR (IS-IS)", -- "outLabel":30040, -- "nexthop":"10.0.8.5" -+ "nexthop":"10.0.7.4" - } - ] - }, -@@ -120,17 +90,7 @@ - "type":"SR (IS-IS)", - "outLabel":3, - "installed":true, -- "interface":"eth-rt4", -- "backupIndex":[ -- 0 -- ] -- } -- ], -- "backupNexthops":[ -- { -- "type":"SR (IS-IS)", -- "outLabel":30041, -- "interface":"eth-rt5" -+ "interface":"eth-rt4" - } - ] - }, \ No newline at end of file diff --git a/tests/topotests/isis_tilfa_topo1/rt6/zebra.conf b/tests/topotests/isis_tilfa_topo1/rt6/zebra.conf index 94fed46cc..c76599623 100644 --- a/tests/topotests/isis_tilfa_topo1/rt6/zebra.conf +++ b/tests/topotests/isis_tilfa_topo1/rt6/zebra.conf @@ -16,6 +16,7 @@ interface eth-rt4 ! interface eth-rt5 ip address 10.0.8.6/24 + no link-detect ! ip forwarding ! diff --git a/tests/topotests/isis_tilfa_topo1/test_isis_tilfa_topo1.py b/tests/topotests/isis_tilfa_topo1/test_isis_tilfa_topo1.py index e2bbf4588..2f5a5898a 100755 --- a/tests/topotests/isis_tilfa_topo1/test_isis_tilfa_topo1.py +++ b/tests/topotests/isis_tilfa_topo1/test_isis_tilfa_topo1.py @@ -131,7 +131,7 @@ def build_topo(tgen): ] for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]: outputs[rname] = {} - for step in range(1, 12 + 1): + for step in range(1, 9 + 1): outputs[rname][step] = {} for file in files: if step == 1: @@ -158,6 +158,15 @@ def build_topo(tgen): outputs[rname][step][file] = open(f_out.name).read() f_in.close() f_out.close() + # HACK: use full snapshots for step 10 + step = 10 + for rname in ["rt5", "rt6"]: + outputs[rname][step] = {} + for file in files: + if file == "show_yang_interface_isis_adjacencies.ref": + continue + filename = "{}/{}/step{}/{}".format(CWD, rname, step, file) + outputs[rname][step][file] = open(filename).read() def setup_module(mod): @@ -176,7 +185,7 @@ def setup_module(mod): TopoRouter.RD_ISIS, os.path.join(CWD, "{}/isisd.conf".format(rname)) ) router.load_config( - TopoRouter.RD_BFD, os.path.join(CWD, "/dev/null".format(rname)) + TopoRouter.RD_BFD, os.path.join(CWD, "{}/bfdd.conf".format(rname)) ) tgen.start_router() @@ -734,11 +743,17 @@ def test_mpls_lib_step9(): # Step 10 # # Action(s): -# - Setting spf-delay-ietf init-delay of 15s +# - Enable ISIS BFD between rt5 and rt6 +# - Verify that the BFD session is up +# - Configure an SPF delay-ietf initial delay of 60 seconds on both rt5 and rt6 +# - Shut down the eth-rt5 interface on rt6 from the switch side to test fast-reroute # # Expected changes: -# - No routing table change -# - At the end of test, SPF reacts to a failure in 15s +# - Verify that the BFD session is down +# - Routes should switch over to use alternate paths +# - On rt5, the switchover should be triggered by the link down event +# - On rt6, the switchover should be triggered by the BFD down event, since it has +# link-detect disabled on the eth-rt5 interface # def test_rib_ipv4_step10(): logger.info("Test (step 10): verify IPv4 RIB") @@ -748,353 +763,74 @@ def test_rib_ipv4_step10(): if tgen.routers_have_failure(): pytest.skip(tgen.errors) - logger.info("Setting spf-delay-ietf init-delay of 15s") - tgen.net["rt6"].cmd( - 'vtysh -c "conf t" -c "router isis 1" -c "spf-delay-ietf init-delay 15000 short-delay 0 long-delay 0 holddown 0 time-to-learn 0"' - ) - - for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]: - router_compare_json_output( - rname, "show ip route isis json", outputs[rname][10]["show_ip_route.ref"] - ) - - -def test_rib_ipv6_step10(): - logger.info("Test (step 10): verify IPv6 RIB") - tgen = get_topogen() - - # Skip if previous fatal error condition is raised - if tgen.routers_have_failure(): - pytest.skip(tgen.errors) - - for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]: - router_compare_json_output( - rname, - "show ipv6 route isis json", - outputs[rname][10]["show_ipv6_route.ref"], - ) - - -def test_mpls_lib_step10(): - logger.info("Test (step 10): verify MPLS LIB") - tgen = get_topogen() - - # Skip if previous fatal error condition is raised - if tgen.routers_have_failure(): - pytest.skip(tgen.errors) - - for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]: - router_compare_json_output( - rname, "show mpls table json", outputs[rname][10]["show_mpls_table.ref"] - ) - - -# -# Step 11 -# -# Action(s): -# - shut the eth-rt5 interface on rt6 -# -# Expected changes: -# - Route switchover of routes via eth-rt5 -# -def test_rt6_step11(): - logger.info( - "Test (step 11): Check IPv4/6 RIB and MPLS table after a LFA switchover" - ) - tgen = get_topogen() - - # Skip if previous fatal error condition is raised - if tgen.routers_have_failure(): - pytest.skip(tgen.errors) - - logger.info( - "Shut a rt6 interface to rt5 from the switch side and check fast-reroute" - ) - tgen.net.cmd_raises("ip link set %s down" % tgen.net["s8"].intfs[1]) - - rname = "rt6" - router_compare_json_output( - rname, - "show ip route isis json", - outputs[rname][11]["show_ip_route.ref"], - count=20, - ) - router_compare_json_output( - rname, - "show ipv6 route isis json", - outputs[rname][11]["show_ipv6_route.ref"], - count=20, - ) - router_compare_json_output( - rname, - "show mpls table json", - outputs[rname][11]["show_mpls_table.ref"], - count=20, - ) - - -# -# Step 12 -# -# Action(s): wait for the convergence and SPF computation on rt6 -# -# Expected changes: -# - convergence of IPv4/6 RIB and MPLS table -# -def test_rib_ipv4_step12(): - logger.info("Test (step 12): verify IPv4 RIB") - tgen = get_topogen() - - # Skip if previous fatal error condition is raised - if tgen.routers_have_failure(): - pytest.skip(tgen.errors) - - logger.info("Check SPF convergence") - for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]: - router_compare_json_output( - rname, - "show ip route isis json", - outputs[rname][12]["show_ip_route.ref"], - ) - - -def test_rib_ipv6_step12(): - logger.info("Test (step 12): verify IPv6 RIB") - tgen = get_topogen() - - # Skip if previous fatal error condition is raised - if tgen.routers_have_failure(): - pytest.skip(tgen.errors) - - for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]: - router_compare_json_output( - rname, - "show ipv6 route isis json", - outputs[rname][12]["show_ipv6_route.ref"], - ) - - -def test_mpls_lib_step12(): - logger.info("Test (step 12): verify MPLS LIB") - tgen = get_topogen() - - # Skip if previous fatal error condition is raised - if tgen.routers_have_failure(): - pytest.skip(tgen.errors) - - for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]: - router_compare_json_output( - rname, - "show mpls table json", - outputs[rname][12]["show_mpls_table.ref"], - ) - - -# -# Step 13 -# -# Action(s): -# - unshut the rt6 to rt5 interface -# - Setup BFD -# -# Expected changes: -# - All route tables go back to previous state situation -# - At the end of test, next SPF is scheduled in approximatively 15s -# -def test_rib_ipv4_step13(): - logger.info("Test (step 13): verify IPv4 RIB") - tgen = get_topogen() - - # Skip if previous fatal error condition is raised - if tgen.routers_have_failure(): - pytest.skip(tgen.errors) - - logger.info("Unsetting spf-delay-ietf init-delay of 15s") - tgen.net["rt6"].cmd('vtysh -c "conf t" -c "router isis 1" -c "no spf-delay-ietf"') - - logger.info( - "Unshut the rt6 interface to rt5 from the switch side and check fast-reroute" - ) - tgen.net.cmd_raises("ip link set %s up" % tgen.net["s8"].intfs[1]) - - logger.info("Setup BFD on rt5 and rt6") - for rname in ["rt5", "rt6"]: - conf_file = os.path.join(CWD, "{}/bfdd.conf".format(rname)) - tgen.net[rname].cmd("vtysh -f {}".format(conf_file)) - - expect = ( - '[{"multihop":false,"peer":"10.0.8.5","interface":"eth-rt5","status":"up"}]' - ) - router_compare_json_output("rt6", "show bfd peers json", expect) - - # Unset link detection. We want zebra to consider linkdow as operationaly up - # in order that BFD triggers LFA instead of the interface down - - # reset spf-interval - logger.info("Set spf-interval to 15s") - tgen.net["rt6"].cmd( - 'vtysh -c "conf t" -c "router isis 1" -c "spf-delay-ietf init-delay 15000 short-delay 0 long-delay 0 holddown 0 time-to-learn 0"' - ) - - for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]: - router_compare_json_output( - rname, "show ip route isis json", outputs[rname][10]["show_ip_route.ref"] - ) - - logger.info("Set ISIS BFD") + logger.info("Enabling ISIS BFD between rt5 and rt6") tgen.net["rt5"].cmd('vtysh -c "conf t" -c "int eth-rt6" -c "isis bfd"') tgen.net["rt6"].cmd('vtysh -c "conf t" -c "int eth-rt5" -c "isis bfd"') + logger.info("Checking if the BFD session is up") expect = ( - '[{"multihop":false,"peer":"10.0.8.5","interface":"eth-rt5","status":"up"}]' + '{"multihop":false,"peer":"10.0.8.5","interface":"eth-rt5","status":"up"}' ) router_compare_json_output( - rname, - "show bfd peers json", + "rt6", + "show bfd peer 10.0.8.5 json", expect, ) - -def test_rib_ipv6_step13(): - logger.info("Test (step 13): verify IPv6 RIB") - tgen = get_topogen() - - # Skip if previous fatal error condition is raised - if tgen.routers_have_failure(): - pytest.skip(tgen.errors) - - for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]: - router_compare_json_output( - rname, - "show ipv6 route isis json", - outputs[rname][10]["show_ipv6_route.ref"], - ) - - -def test_mpls_lib_step13(): - logger.info("Test (step 13): verify MPLS LIB") - tgen = get_topogen() - - # Skip if previous fatal error condition is raised - if tgen.routers_have_failure(): - pytest.skip(tgen.errors) - - for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]: - router_compare_json_output( - rname, "show mpls table json", outputs[rname][10]["show_mpls_table.ref"] + logger.info("Setting SPF delay-ietf initial delay to 60 seconds") + for rname in ["rt5", "rt6"]: + tgen.net[rname].cmd( + 'vtysh -c "conf t" -c "router isis 1" -c "spf-delay-ietf init-delay 60000 short-delay 0 long-delay 0 holddown 0 time-to-learn 0"' ) + logger.info( + "Shutting down rt5 interface to rt6 from the switch side to test fast-reroute" + ) + tgen.net.cmd_raises("ip link set %s down" % tgen.net["s8"].intfs[0]) -# -# Step 14 -# -# Action(s): -# - drop traffic between rt5 and rt6 by shutting down the bridge between -# the routers. Interfaces on rt5 and rt6 stay up. -# -# Expected changes: -# - Route switchover of routes via eth-rt5 -# -def test_rt6_step14(): - logger.info("Test (step 14): verify IPv4/6 RIB and MPLS table") - tgen = get_topogen() - - # Skip if previous fatal error condition is raised - if tgen.routers_have_failure(): - pytest.skip(tgen.errors) - - logger.info("Drop traffic between rt5 and rt6") - tgen.net.cmd_raises("ip link set s8 down") - - rname = "rt6" - + logger.info("Verifying if the BFD session is down") expect = ( - '[{"multihop":false,"peer":"10.0.8.5","interface":"eth-rt5","status":"down"}]' + '{"multihop":false,"peer":"10.0.8.5","interface":"eth-rt5","status":"down"}' ) router_compare_json_output( - rname, - "show bfd peers json", + "rt6", + "show bfd peer 10.0.8.5 json", expect, - count=40, - wait=0.5, ) - router_compare_json_output( - rname, - "show ip route isis json", - outputs[rname][11]["show_ip_route.ref"], - count=20, - ) - router_compare_json_output( - rname, - "show ipv6 route isis json", - outputs[rname][11]["show_ipv6_route.ref"], - count=20, - wait=2, - ) - router_compare_json_output( - rname, - "show mpls table json", - outputs[rname][11]["show_mpls_table.ref"], - count=20, - ) - - -# -# Step 15 -# -# Action(s): wait for the convergence and SPF computation on rt6 -# -# Expected changes: -# - convergence of IPv4/6 RIB and MPLS table -# -def test_rib_ipv4_step15(): - logger.info("Test (step 15): verify IPv4 RIB") - tgen = get_topogen() - - # Skip if previous fatal error condition is raised - if tgen.routers_have_failure(): - pytest.skip(tgen.errors) - - logger.info("Check SPF convergence") - for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]: + for rname in ["rt5", "rt6"]: router_compare_json_output( - rname, - "show ip route isis json", - outputs[rname][12]["show_ip_route.ref"], + rname, "show ip route isis json", outputs[rname][10]["show_ip_route.ref"] ) -def test_rib_ipv6_step15(): - logger.info("Test (step 15): verify IPv6 RIB") +def test_rib_ipv6_step10(): + logger.info("Test (step 10): verify IPv6 RIB") tgen = get_topogen() # Skip if previous fatal error condition is raised if tgen.routers_have_failure(): pytest.skip(tgen.errors) - for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]: + for rname in ["rt5", "rt6"]: router_compare_json_output( rname, "show ipv6 route isis json", - outputs[rname][12]["show_ipv6_route.ref"], + outputs[rname][10]["show_ipv6_route.ref"], ) -def test_mpls_lib_step15(): - logger.info("Test (step 15): verify MPLS LIB") +def test_mpls_lib_step10(): + logger.info("Test (step 10): verify MPLS LIB") tgen = get_topogen() # Skip if previous fatal error condition is raised if tgen.routers_have_failure(): pytest.skip(tgen.errors) - for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]: + for rname in ["rt5", "rt6"]: router_compare_json_output( - rname, - "show mpls table json", - outputs[rname][12]["show_mpls_table.ref"], + rname, "show mpls table json", outputs[rname][10]["show_mpls_table.ref"] ) -- cgit v1.2.3