Hi zaheernew,
a. Within the AS: With IBGP split-horizon, BGP routers do not advertise routes learned from IBGP peers to other IBGP peers.
b. Between ASs: Route update with the AS number is not accepted through the AS-PATH path attribute.
c. In special cases, split horizon causes some routers to fail to learn some routing information. To solve this problem, BGP has two mechanisms: Route reflector and federation. The anti-loop mechanism of the router reflector is configured with two attributes: ORIGINATOR-ID and CLUSTER-LIST.
ORIGINATOR-ID: When a route is reflected by the RR for the first time, the RR adds the Originator-ID attribute to the route to identify the router that initiates the route. If the Originator-ID attribute exists in a route, the RR does not create a new Originator-ID. When another BGP Speaker receives the route, it compares the received Originator-ID with the local Router ID. If the two IDs are the same, the BGP Speaker ignores the route and does not process the route.
CLUSTER-LIST: In an AS, each RR uses a unique CLUSTER-ID as the identifier. To prevent routing loops, the RR uses CLUSTER_LIST to record all CLUSTER_IDs that the reflected route passes through. When the RR receives an updated route, the RR checks the Cluster-List. If the local Cluster-ID exists in the Cluster-List, the route is discarded. If there is no local Cluster-ID, add the local Cluster-ID to the Cluster-List and reflect the updated route.
For more information, you can refer to
https://forum.huawei.com/enterprise/en/understanding-of-loop-protection-for-the-bgp-protocol/thread/623792-861I hope it helps!