sonic-buildimage/dockers
abdosi a118a5ba43
[chassis] Added support of isolating given LC in Chassis with TSA mode (#16732) (#17860)
What I did:
Added support when TSA is done on Line Card make sure it's completely
isolated from all e-BGP peer devices from this LC or remote LC

Why I did:
Currently when TSA is executed on LC routes are withdrawn from it's connected e-BGP peers only. e-BGP peers on remote LC can/will (via i-BGP) still have route pointing/attracting traffic towards this isolated LC.

How I did:

When TSA is applied on LC all the routes that are advertised via i-BGP are set with community tag of no-export so that when remote LC received these routes it does not send over to it's connected e-BGP peers.

Also once we receive the route with no-export  over iBGP match on it and and set the local preference of that route to lower value (80) so that we remove that route from the forwarding database. Below scenario explains why we do this:

- LC1 advertise R1 to LC3
- LC2 advertise R1 to LC3
- On LC3 we have multi-path/ECMP over both LC1 and LC2
- On LC3 R1 received from LC1 is consider best route over R1 over received from LC2 and is send to LC3 e-BGP peers
- Now we do TSA on LC2
- LC3 will receive R1 from LC2 with community no-export and from LC1 same as earlier (no change)
- LC3 will still get traffic for R1 since it is still advertised to e-BGP peers (since R1 from LC1 is best route)
- LC3 will forward to both LC1 and LC2 (ecmp) and this causes issue as LC2 is in TSA mode and should not receive traffic

To fix above scenario we change the preference to lower value of R1 received from LC2 so that it is removed from Multi-path/ECMP group.

How I verfiy:

UT has been added to make sure Template generation is correct
Manual Verification of the functionality
sonic-mgmt test case will be updated accordingly.
Please note this PR is on top of this :#16714 which needs to be merged first.

Signed-off-by: Abhishek Dosi <abdosi@microsoft.com>
2024-01-29 22:54:18 +08:00
..
docker-base [202305] Optimize syslog rate limit feature for fast and warm boot (#17478) 2023-12-28 20:53:49 +08:00
docker-base-bullseye [202305] Optimize syslog rate limit feature for fast and warm boot (#17478) 2023-12-28 20:53:49 +08:00
docker-base-buster [202305] Optimize syslog rate limit feature for fast and warm boot (#17478) 2023-12-28 20:53:49 +08:00
docker-base-stretch [202305] Optimize syslog rate limit feature for fast and warm boot (#17478) 2023-12-28 20:53:49 +08:00
docker-basic_router [supervisord]: use abspath as supervisord entrypoint (#5995) 2020-11-22 21:18:44 -08:00
docker-config-engine Install python-redis package to docker containers (#14632) 2023-04-19 18:14:48 -07:00
docker-config-engine-bullseye Add health check probe for k8s upgrade containers. (#15223) (#15867) 2023-07-19 16:11:13 +08:00
docker-config-engine-buster Add health check probe for k8s upgrade containers. (#15223) (#15867) 2023-07-19 16:11:13 +08:00
docker-config-engine-stretch Install python-redis package to docker containers (#14632) 2023-04-19 18:14:48 -07:00
docker-database [sonic-cfggen]: Optimize template rendering and database access. (#17650) 2024-01-10 08:56:20 +08:00
docker-dhcp-relay [202305] Fix v6relay dual tor if selection issue (#17186) 2023-11-16 21:22:15 +08:00
docker-eventd Add events to host and create rsyslog_plugin deb pkg (#12059) 2022-09-21 09:20:53 -07:00
docker-fpm-frr [chassis] Added support of isolating given LC in Chassis with TSA mode (#16732) (#17860) 2024-01-29 22:54:18 +08:00
docker-fpm-gobgp Parallel building of sonic dockers using native dockerd(dood). (#10352) 2022-04-28 08:39:37 +08:00
docker-iccpd [infra] Support syslog rate limit configuration (#12490) 2022-12-20 10:53:58 +02:00
docker-lldp [chassis][lldp] Fix the lldp error log in host instance which doesn't contain front panel ports (#14814) (#15603) 2023-06-29 21:46:32 +08:00
docker-macsec Update macsec CAK keys in profile for tests to change to type7 encoded format (#16388) (#16626) 2023-09-21 20:39:01 +08:00
docker-mux [mux] Integrate linkmgrd with swss logger (#15392) 2023-06-26 16:40:58 +08:00
docker-nat [nat] Switch to bullseye (#14495) 2023-04-02 14:02:33 -07:00
docker-orchagent [sonic-cfggen]: Optimize template rendering and database access. (#17650) 2024-01-10 08:56:20 +08:00
docker-pde [infra] Support syslog rate limit configuration (#12490) 2022-12-20 10:53:58 +02:00
docker-platform-monitor [202305] Optimize syslog rate limit feature for fast and warm boot (#17478) 2023-12-28 20:53:49 +08:00
docker-ptf Upgrade scapy in the PTF's python3 virtualenv to 2.5.0 (#15573) (#15875) 2023-07-19 20:05:40 +08:00
docker-ptf-sai [202305] Backport PRs to fix build (#16896, #16859, #16636) (#16934) 2023-10-20 15:39:54 +08:00
docker-router-advertiser Fix radv.conf traceback when VLAN_INTERFACE is not defined (#12034) 2022-09-09 12:54:05 -07:00
docker-sflow [sflow] Switch to bullseye (#14494) 2023-04-03 09:49:35 -07:00
docker-snmp [202305][SNMP][IPv6]: Revert PRs to support SNMP over IPv6 (#16649) 2023-10-09 09:47:44 +08:00
docker-sonic-mgmt Add AZP agent necessary packages to sonic-mgmt-docker (#14291) 2023-03-21 08:09:44 +08:00
docker-sonic-mgmt-framework [mgmt-framework] Fix rest-server startup script (#14979) 2023-05-22 17:42:38 -07:00
docker-sonic-p4rt Update p4rt configuration to match SONiC upstream schema. (#10725) 2022-08-04 14:56:48 -07:00
docker-sonic-restapi [infra] Support syslog rate limit configuration (#12490) 2022-12-20 10:53:58 +02:00
docker-sonic-sdk [Bullseye] Upgrade sonic-sdk image to bullseye (#12649) 2022-11-28 18:57:26 +02:00
docker-sonic-sdk-buildenv Parallel building of sonic dockers using native dockerd(dood). (#10352) 2022-04-28 08:39:37 +08:00
docker-sonic-telemetry Revert "Share docker image and use telemetry container for 202305 (#17255)" (#17356) 2023-11-30 20:41:38 +08:00
docker-swss-layer-bullseye Add ping to swss-layer docker (#11093) 2022-06-10 07:40:37 -07:00
docker-swss-layer-buster Add ping to swss-layer docker (#11093) 2022-06-10 07:40:37 -07:00
docker-teamd [infra] Support syslog rate limit configuration (#12490) 2022-12-20 10:53:58 +02:00
dockerfile-macros.j2 [sonic-config-engine] Clean up dependencies, pin versions; install Python 3 package in Buster container (#5656) 2020-10-26 13:48:50 -07:00