From b25a06fbb5acfc2a6b8c27d10d24d2aba6745495 Mon Sep 17 00:00:00 2001 From: Sudharsan Dhamal Gopalarathnam Date: Thu, 5 Dec 2024 06:55:40 -0800 Subject: [PATCH] [BGP]Increasing maximum-paths to 514 (#20745) - Why I did it This PR follows #20744 Increasing the maximum-paths to 514. Currently value of 64 restricts the maximum paths that can created by BGP. - How I did it Updated constants file. - How to verify it Modified UT to verify. --- .../bgpd.spine_chassis_frontend_router.conf.j2 | 2 +- files/image_config/constants/constants.yml | 4 ++-- .../vs/tests/bgp/files/gr_livelock/bgpd.conf | 4 ++-- .../vs/tests/bgp/files/no_export/bgpd.conf | 4 ++-- .../base.conf | 4 ++-- .../tests/sample_output/py2/bgpd_frr.conf | 4 ++-- .../py2/bgpd_frr_backend_asic.conf | 4 ++-- .../tests/sample_output/py2/bgpd_frr_bmp.conf | 4 ++-- .../sample_output/py2/bgpd_frr_dualtor.conf | 4 ++-- .../py2/bgpd_frr_frontend_asic.conf | 4 ++-- .../tests/sample_output/py2/bgpd_quagga.conf | 18 +++++++++--------- .../tests/sample_output/py2/frr.conf | 4 ++-- .../sample_output/py2/t2-chassis-fe-bgpd.conf | 6 +++--- .../tests/sample_output/py3/bgpd_frr.conf | 4 ++-- .../py3/bgpd_frr_backend_asic.conf | 4 ++-- .../tests/sample_output/py3/bgpd_frr_bmp.conf | 4 ++-- .../sample_output/py3/bgpd_frr_dualtor.conf | 4 ++-- .../py3/bgpd_frr_frontend_asic.conf | 4 ++-- .../tests/sample_output/py3/bgpd_quagga.conf | 18 +++++++++--------- .../tests/sample_output/py3/frr.conf | 4 ++-- .../sample_output/py3/t2-chassis-fe-bgpd.conf | 6 +++--- 21 files changed, 57 insertions(+), 57 deletions(-) diff --git a/dockers/docker-fpm-frr/frr/bgpd/bgpd.spine_chassis_frontend_router.conf.j2 b/dockers/docker-fpm-frr/frr/bgpd/bgpd.spine_chassis_frontend_router.conf.j2 index 94dacbc3af78..2df0cd4a4270 100644 --- a/dockers/docker-fpm-frr/frr/bgpd/bgpd.spine_chassis_frontend_router.conf.j2 +++ b/dockers/docker-fpm-frr/frr/bgpd/bgpd.spine_chassis_frontend_router.conf.j2 @@ -49,7 +49,7 @@ router bgp {{ DEVICE_METADATA['localhost']['bgp_asn'] }} vrf {{ vnet_name }} address-family ipv4 unicast neighbor {{ neighbor_addr }} activate neighbor {{ neighbor_addr }} soft-reconfiguration inbound - maximum-paths 64 + maximum-paths 514 exit-address-family {% endif %} address-family l2vpn evpn diff --git a/files/image_config/constants/constants.yml b/files/image_config/constants/constants.yml index 01fb02deadf4..781055ba49b2 100644 --- a/files/image_config/constants/constants.yml +++ b/files/image_config/constants/constants.yml @@ -22,8 +22,8 @@ constants: enabled: true maximum_paths: enabled: true - ipv4: 64 - ipv6: 64 + ipv4: 514 + ipv6: 514 allow_list: enabled: true default_action: "permit" # or "deny" diff --git a/platform/vs/tests/bgp/files/gr_livelock/bgpd.conf b/platform/vs/tests/bgp/files/gr_livelock/bgpd.conf index dc861ed46934..e52c771a1dae 100644 --- a/platform/vs/tests/bgp/files/gr_livelock/bgpd.conf +++ b/platform/vs/tests/bgp/files/gr_livelock/bgpd.conf @@ -6,10 +6,10 @@ router bgp 65501 neighbor 10.0.0.1 remote-as 65502 address-family ipv4 neighbor 10.0.0.1 activate - maximum-paths 64 + maximum-paths 514 exit-address-family neighbor 10.0.0.3 remote-as 65503 address-family ipv4 neighbor 10.0.0.3 activate - maximum-paths 64 + maximum-paths 514 exit-address-family diff --git a/platform/vs/tests/bgp/files/no_export/bgpd.conf b/platform/vs/tests/bgp/files/no_export/bgpd.conf index cd87c330c299..be97c1c37abc 100644 --- a/platform/vs/tests/bgp/files/no_export/bgpd.conf +++ b/platform/vs/tests/bgp/files/no_export/bgpd.conf @@ -5,10 +5,10 @@ router bgp 65501 neighbor 10.0.0.1 remote-as 65502 address-family ipv4 neighbor 10.0.0.1 activate - maximum-paths 64 + maximum-paths 514 exit-address-family neighbor 10.0.0.3 remote-as 65503 address-family ipv4 neighbor 10.0.0.3 activate - maximum-paths 64 + maximum-paths 514 exit-address-family diff --git a/src/sonic-bgpcfgd/tests/data/sonic-cfggen/bgpd.spine_chassis_frontend_router.conf.j2/base.conf b/src/sonic-bgpcfgd/tests/data/sonic-cfggen/bgpd.spine_chassis_frontend_router.conf.j2/base.conf index 581eb107ec23..b7e9e7101605 100644 --- a/src/sonic-bgpcfgd/tests/data/sonic-cfggen/bgpd.spine_chassis_frontend_router.conf.j2/base.conf +++ b/src/sonic-bgpcfgd/tests/data/sonic-cfggen/bgpd.spine_chassis_frontend_router.conf.j2/base.conf @@ -13,7 +13,7 @@ router bgp 555 vrf First address-family ipv4 unicast neighbor 10.10.10.1 activate neighbor 10.10.10.1 soft-reconfiguration inbound - maximum-paths 64 + maximum-paths 514 exit-address-family address-family l2vpn evpn advertise ipv4 unicast @@ -31,7 +31,7 @@ router bgp 555 vrf Second address-family ipv4 unicast neighbor 20.20.20.1 activate neighbor 20.20.20.1 soft-reconfiguration inbound - maximum-paths 64 + maximum-paths 514 exit-address-family address-family l2vpn evpn advertise ipv4 unicast diff --git a/src/sonic-config-engine/tests/sample_output/py2/bgpd_frr.conf b/src/sonic-config-engine/tests/sample_output/py2/bgpd_frr.conf index 3828af13fd71..11272757855b 100644 --- a/src/sonic-config-engine/tests/sample_output/py2/bgpd_frr.conf +++ b/src/sonic-config-engine/tests/sample_output/py2/bgpd_frr.conf @@ -67,10 +67,10 @@ router bgp 65100 ! ! address-family ipv4 - maximum-paths 64 + maximum-paths 514 exit-address-family address-family ipv6 - maximum-paths 64 + maximum-paths 514 exit-address-family ! ! end of template: bgpd/bgpd.main.conf.j2 diff --git a/src/sonic-config-engine/tests/sample_output/py2/bgpd_frr_backend_asic.conf b/src/sonic-config-engine/tests/sample_output/py2/bgpd_frr_backend_asic.conf index 45cd03a540a8..ab7f99d43cdf 100644 --- a/src/sonic-config-engine/tests/sample_output/py2/bgpd_frr_backend_asic.conf +++ b/src/sonic-config-engine/tests/sample_output/py2/bgpd_frr_backend_asic.conf @@ -76,10 +76,10 @@ router bgp 65100 ! ! address-family ipv4 - maximum-paths 64 + maximum-paths 514 exit-address-family address-family ipv6 - maximum-paths 64 + maximum-paths 514 exit-address-family ! ! end of template: bgpd/bgpd.main.conf.j2 diff --git a/src/sonic-config-engine/tests/sample_output/py2/bgpd_frr_bmp.conf b/src/sonic-config-engine/tests/sample_output/py2/bgpd_frr_bmp.conf index 8a6ceb39e6ba..827b287e57f1 100644 --- a/src/sonic-config-engine/tests/sample_output/py2/bgpd_frr_bmp.conf +++ b/src/sonic-config-engine/tests/sample_output/py2/bgpd_frr_bmp.conf @@ -77,10 +77,10 @@ router bgp 65100 ! ! address-family ipv4 - maximum-paths 64 + maximum-paths 514 exit-address-family address-family ipv6 - maximum-paths 64 + maximum-paths 514 exit-address-family ! ! end of template: bgpd/bgpd.main.conf.j2 diff --git a/src/sonic-config-engine/tests/sample_output/py2/bgpd_frr_dualtor.conf b/src/sonic-config-engine/tests/sample_output/py2/bgpd_frr_dualtor.conf index eda11ab9f285..fb1af604c40e 100644 --- a/src/sonic-config-engine/tests/sample_output/py2/bgpd_frr_dualtor.conf +++ b/src/sonic-config-engine/tests/sample_output/py2/bgpd_frr_dualtor.conf @@ -68,10 +68,10 @@ router bgp 65100 ! ! address-family ipv4 - maximum-paths 64 + maximum-paths 514 exit-address-family address-family ipv6 - maximum-paths 64 + maximum-paths 514 exit-address-family ! ! end of template: bgpd/bgpd.main.conf.j2 diff --git a/src/sonic-config-engine/tests/sample_output/py2/bgpd_frr_frontend_asic.conf b/src/sonic-config-engine/tests/sample_output/py2/bgpd_frr_frontend_asic.conf index 8daeff2a61e9..b84ff10f590d 100644 --- a/src/sonic-config-engine/tests/sample_output/py2/bgpd_frr_frontend_asic.conf +++ b/src/sonic-config-engine/tests/sample_output/py2/bgpd_frr_frontend_asic.conf @@ -82,10 +82,10 @@ router bgp 65100 exit-address-family ! address-family ipv4 - maximum-paths 64 + maximum-paths 514 exit-address-family address-family ipv6 - maximum-paths 64 + maximum-paths 514 exit-address-family ! ! end of template: bgpd/bgpd.main.conf.j2 diff --git a/src/sonic-config-engine/tests/sample_output/py2/bgpd_quagga.conf b/src/sonic-config-engine/tests/sample_output/py2/bgpd_quagga.conf index 43e8ade6a302..fb8bd1d9d9d9 100644 --- a/src/sonic-config-engine/tests/sample_output/py2/bgpd_quagga.conf +++ b/src/sonic-config-engine/tests/sample_output/py2/bgpd_quagga.conf @@ -35,7 +35,7 @@ router bgp 65100 neighbor 10.0.0.59 allowas-in 1 neighbor 10.0.0.59 activate neighbor 10.0.0.59 soft-reconfiguration inbound - maximum-paths 64 + maximum-paths 514 exit-address-family neighbor 10.0.0.61 remote-as 64600 neighbor 10.0.0.61 description ARISTA03T1 @@ -43,7 +43,7 @@ router bgp 65100 neighbor 10.0.0.61 allowas-in 1 neighbor 10.0.0.61 activate neighbor 10.0.0.61 soft-reconfiguration inbound - maximum-paths 64 + maximum-paths 514 exit-address-family neighbor 10.0.0.63 remote-as 64600 neighbor 10.0.0.63 description ARISTA04T1 @@ -51,7 +51,7 @@ router bgp 65100 neighbor 10.0.0.63 allowas-in 1 neighbor 10.0.0.63 activate neighbor 10.0.0.63 soft-reconfiguration inbound - maximum-paths 64 + maximum-paths 514 exit-address-family neighbor fc00::7e remote-as 64600 neighbor fc00::7e description ARISTA04T1 @@ -59,7 +59,7 @@ router bgp 65100 neighbor fc00::7e allowas-in 1 neighbor fc00::7e activate neighbor fc00::7e soft-reconfiguration inbound - maximum-paths 64 + maximum-paths 514 exit-address-family neighbor fc00::7a remote-as 64600 neighbor fc00::7a description ARISTA03T1 @@ -67,7 +67,7 @@ router bgp 65100 neighbor fc00::7a allowas-in 1 neighbor fc00::7a activate neighbor fc00::7a soft-reconfiguration inbound - maximum-paths 64 + maximum-paths 514 exit-address-family neighbor 10.0.0.57 remote-as 64600 neighbor 10.0.0.57 description ARISTA01T1 @@ -75,7 +75,7 @@ router bgp 65100 neighbor 10.0.0.57 allowas-in 1 neighbor 10.0.0.57 activate neighbor 10.0.0.57 soft-reconfiguration inbound - maximum-paths 64 + maximum-paths 514 exit-address-family neighbor fc00::76 remote-as 64600 neighbor fc00::76 description ARISTA02T1 @@ -83,7 +83,7 @@ router bgp 65100 neighbor fc00::76 allowas-in 1 neighbor fc00::76 activate neighbor fc00::76 soft-reconfiguration inbound - maximum-paths 64 + maximum-paths 514 exit-address-family neighbor fc00::72 remote-as 64600 neighbor fc00::72 description ARISTA01T1 @@ -91,10 +91,10 @@ router bgp 65100 neighbor fc00::72 allowas-in 1 neighbor fc00::72 activate neighbor fc00::72 soft-reconfiguration inbound - maximum-paths 64 + maximum-paths 514 exit-address-family ! -maximum-paths 64 +maximum-paths 514 ! route-map ISOLATE permit 10 set as-path prepend 65100 diff --git a/src/sonic-config-engine/tests/sample_output/py2/frr.conf b/src/sonic-config-engine/tests/sample_output/py2/frr.conf index 032adb8c5106..679871f68a2a 100644 --- a/src/sonic-config-engine/tests/sample_output/py2/frr.conf +++ b/src/sonic-config-engine/tests/sample_output/py2/frr.conf @@ -87,10 +87,10 @@ router bgp 65100 ! ! address-family ipv4 - maximum-paths 64 + maximum-paths 514 exit-address-family address-family ipv6 - maximum-paths 64 + maximum-paths 514 exit-address-family ! ! end of template: bgpd/bgpd.main.conf.j2 diff --git a/src/sonic-config-engine/tests/sample_output/py2/t2-chassis-fe-bgpd.conf b/src/sonic-config-engine/tests/sample_output/py2/t2-chassis-fe-bgpd.conf index 32a9abf88bac..0b0446aad9e2 100644 --- a/src/sonic-config-engine/tests/sample_output/py2/t2-chassis-fe-bgpd.conf +++ b/src/sonic-config-engine/tests/sample_output/py2/t2-chassis-fe-bgpd.conf @@ -35,7 +35,7 @@ router bgp 4000 vrf VnetFE address-family ipv4 unicast neighbor 192.168.0.1 activate neighbor 192.168.0.1 soft-reconfiguration inbound - maximum-paths 64 + maximum-paths 514 exit-address-family address-family l2vpn evpn advertise ipv4 unicast @@ -74,10 +74,10 @@ router bgp 4000 ! ! address-family ipv4 - maximum-paths 64 + maximum-paths 514 exit-address-family address-family ipv6 - maximum-paths 64 + maximum-paths 514 exit-address-family ! ! end of template: bgpd/bgpd.main.conf.j2 diff --git a/src/sonic-config-engine/tests/sample_output/py3/bgpd_frr.conf b/src/sonic-config-engine/tests/sample_output/py3/bgpd_frr.conf index e5ad8964454a..5db248ab8521 100644 --- a/src/sonic-config-engine/tests/sample_output/py3/bgpd_frr.conf +++ b/src/sonic-config-engine/tests/sample_output/py3/bgpd_frr.conf @@ -67,10 +67,10 @@ router bgp 65100 ! ! address-family ipv4 - maximum-paths 64 + maximum-paths 514 exit-address-family address-family ipv6 - maximum-paths 64 + maximum-paths 514 exit-address-family ! ! end of template: bgpd/bgpd.main.conf.j2 diff --git a/src/sonic-config-engine/tests/sample_output/py3/bgpd_frr_backend_asic.conf b/src/sonic-config-engine/tests/sample_output/py3/bgpd_frr_backend_asic.conf index 45cd03a540a8..ab7f99d43cdf 100644 --- a/src/sonic-config-engine/tests/sample_output/py3/bgpd_frr_backend_asic.conf +++ b/src/sonic-config-engine/tests/sample_output/py3/bgpd_frr_backend_asic.conf @@ -76,10 +76,10 @@ router bgp 65100 ! ! address-family ipv4 - maximum-paths 64 + maximum-paths 514 exit-address-family address-family ipv6 - maximum-paths 64 + maximum-paths 514 exit-address-family ! ! end of template: bgpd/bgpd.main.conf.j2 diff --git a/src/sonic-config-engine/tests/sample_output/py3/bgpd_frr_bmp.conf b/src/sonic-config-engine/tests/sample_output/py3/bgpd_frr_bmp.conf index 8a6ceb39e6ba..827b287e57f1 100644 --- a/src/sonic-config-engine/tests/sample_output/py3/bgpd_frr_bmp.conf +++ b/src/sonic-config-engine/tests/sample_output/py3/bgpd_frr_bmp.conf @@ -77,10 +77,10 @@ router bgp 65100 ! ! address-family ipv4 - maximum-paths 64 + maximum-paths 514 exit-address-family address-family ipv6 - maximum-paths 64 + maximum-paths 514 exit-address-family ! ! end of template: bgpd/bgpd.main.conf.j2 diff --git a/src/sonic-config-engine/tests/sample_output/py3/bgpd_frr_dualtor.conf b/src/sonic-config-engine/tests/sample_output/py3/bgpd_frr_dualtor.conf index 0ada9a4f8d60..2d769fc05dd1 100644 --- a/src/sonic-config-engine/tests/sample_output/py3/bgpd_frr_dualtor.conf +++ b/src/sonic-config-engine/tests/sample_output/py3/bgpd_frr_dualtor.conf @@ -68,10 +68,10 @@ router bgp 65100 ! ! address-family ipv4 - maximum-paths 64 + maximum-paths 514 exit-address-family address-family ipv6 - maximum-paths 64 + maximum-paths 514 exit-address-family ! ! end of template: bgpd/bgpd.main.conf.j2 diff --git a/src/sonic-config-engine/tests/sample_output/py3/bgpd_frr_frontend_asic.conf b/src/sonic-config-engine/tests/sample_output/py3/bgpd_frr_frontend_asic.conf index 8daeff2a61e9..b84ff10f590d 100644 --- a/src/sonic-config-engine/tests/sample_output/py3/bgpd_frr_frontend_asic.conf +++ b/src/sonic-config-engine/tests/sample_output/py3/bgpd_frr_frontend_asic.conf @@ -82,10 +82,10 @@ router bgp 65100 exit-address-family ! address-family ipv4 - maximum-paths 64 + maximum-paths 514 exit-address-family address-family ipv6 - maximum-paths 64 + maximum-paths 514 exit-address-family ! ! end of template: bgpd/bgpd.main.conf.j2 diff --git a/src/sonic-config-engine/tests/sample_output/py3/bgpd_quagga.conf b/src/sonic-config-engine/tests/sample_output/py3/bgpd_quagga.conf index 72988e555261..6c2734473939 100644 --- a/src/sonic-config-engine/tests/sample_output/py3/bgpd_quagga.conf +++ b/src/sonic-config-engine/tests/sample_output/py3/bgpd_quagga.conf @@ -35,7 +35,7 @@ router bgp 65100 neighbor 10.0.0.57 allowas-in 1 neighbor 10.0.0.57 activate neighbor 10.0.0.57 soft-reconfiguration inbound - maximum-paths 64 + maximum-paths 514 exit-address-family neighbor fc00::72 remote-as 64600 neighbor fc00::72 description ARISTA01T1 @@ -43,7 +43,7 @@ router bgp 65100 neighbor fc00::72 allowas-in 1 neighbor fc00::72 activate neighbor fc00::72 soft-reconfiguration inbound - maximum-paths 64 + maximum-paths 514 exit-address-family neighbor 10.0.0.59 remote-as 64600 neighbor 10.0.0.59 description ARISTA02T1 @@ -51,7 +51,7 @@ router bgp 65100 neighbor 10.0.0.59 allowas-in 1 neighbor 10.0.0.59 activate neighbor 10.0.0.59 soft-reconfiguration inbound - maximum-paths 64 + maximum-paths 514 exit-address-family neighbor fc00::76 remote-as 64600 neighbor fc00::76 description ARISTA02T1 @@ -59,7 +59,7 @@ router bgp 65100 neighbor fc00::76 allowas-in 1 neighbor fc00::76 activate neighbor fc00::76 soft-reconfiguration inbound - maximum-paths 64 + maximum-paths 514 exit-address-family neighbor 10.0.0.61 remote-as 64600 neighbor 10.0.0.61 description ARISTA03T1 @@ -67,7 +67,7 @@ router bgp 65100 neighbor 10.0.0.61 allowas-in 1 neighbor 10.0.0.61 activate neighbor 10.0.0.61 soft-reconfiguration inbound - maximum-paths 64 + maximum-paths 514 exit-address-family neighbor fc00::7a remote-as 64600 neighbor fc00::7a description ARISTA03T1 @@ -75,7 +75,7 @@ router bgp 65100 neighbor fc00::7a allowas-in 1 neighbor fc00::7a activate neighbor fc00::7a soft-reconfiguration inbound - maximum-paths 64 + maximum-paths 514 exit-address-family neighbor 10.0.0.63 remote-as 64600 neighbor 10.0.0.63 description ARISTA04T1 @@ -83,7 +83,7 @@ router bgp 65100 neighbor 10.0.0.63 allowas-in 1 neighbor 10.0.0.63 activate neighbor 10.0.0.63 soft-reconfiguration inbound - maximum-paths 64 + maximum-paths 514 exit-address-family neighbor fc00::7e remote-as 64600 neighbor fc00::7e description ARISTA04T1 @@ -91,10 +91,10 @@ router bgp 65100 neighbor fc00::7e allowas-in 1 neighbor fc00::7e activate neighbor fc00::7e soft-reconfiguration inbound - maximum-paths 64 + maximum-paths 514 exit-address-family ! -maximum-paths 64 +maximum-paths 514 ! route-map ISOLATE permit 10 set as-path prepend 65100 diff --git a/src/sonic-config-engine/tests/sample_output/py3/frr.conf b/src/sonic-config-engine/tests/sample_output/py3/frr.conf index d0821f1b11ca..17d7f561db03 100644 --- a/src/sonic-config-engine/tests/sample_output/py3/frr.conf +++ b/src/sonic-config-engine/tests/sample_output/py3/frr.conf @@ -87,10 +87,10 @@ router bgp 65100 ! ! address-family ipv4 - maximum-paths 64 + maximum-paths 514 exit-address-family address-family ipv6 - maximum-paths 64 + maximum-paths 514 exit-address-family ! ! end of template: bgpd/bgpd.main.conf.j2 diff --git a/src/sonic-config-engine/tests/sample_output/py3/t2-chassis-fe-bgpd.conf b/src/sonic-config-engine/tests/sample_output/py3/t2-chassis-fe-bgpd.conf index 32a9abf88bac..0b0446aad9e2 100644 --- a/src/sonic-config-engine/tests/sample_output/py3/t2-chassis-fe-bgpd.conf +++ b/src/sonic-config-engine/tests/sample_output/py3/t2-chassis-fe-bgpd.conf @@ -35,7 +35,7 @@ router bgp 4000 vrf VnetFE address-family ipv4 unicast neighbor 192.168.0.1 activate neighbor 192.168.0.1 soft-reconfiguration inbound - maximum-paths 64 + maximum-paths 514 exit-address-family address-family l2vpn evpn advertise ipv4 unicast @@ -74,10 +74,10 @@ router bgp 4000 ! ! address-family ipv4 - maximum-paths 64 + maximum-paths 514 exit-address-family address-family ipv6 - maximum-paths 64 + maximum-paths 514 exit-address-family ! ! end of template: bgpd/bgpd.main.conf.j2