Skip to main content

What Is BGP Split Horizon

·325 words·2 mins
lab1918
Author
lab1918

Split horizon is a network routing principle used to prevent routing loops. It’s quite simple in concept: it states that a route learned on one interface should not be advertised back out of that same interface.

Here’s a basic example:

Imagine a router in a network learns about a route to a particular network segment from another router. According to the split horizon rule, this router should not advertise that same route back to the router from which it learned it.

By doing this, split horizon helps to reduce unnecessary network traffic and prevents the possibility of routing loops, where data packets could get stuck going back and forth between the same routers endlessly. It’s especially useful in distance-vector routing protocols like RIP.

Split horizon in the context of BGP, particularly iBGP (Internal Border Gateway Protocol), works a bit differently from traditional routing protocols like RIP. In BGP, the concept of split horizon is more about preventing routing information loops within an Autonomous System (AS).

In iBGP, the split horizon rule is modified. It states that a route learned from one iBGP peer should not be advertised to another iBGP peer. This is a bit different from the classic split horizon rule which focuses on not advertising routes back out of the interface from which they were learned.

Here’s the rationale:

BGP assumes that all iBGP peers within an AS are interconnected, forming a full mesh network. Therefore, if a route is learned on one iBGP peer, it’s assumed that this route is known to all iBGP peers. By not advertising routes back to other iBGP peers, it prevents the possibility of routing loops within the AS.

However, maintaining a full mesh iBGP network can be challenging and resource-intensive in large networks. To address this, networks often use route reflectors or confederations as alternatives to full mesh iBGP, which also help in maintaining the integrity of routing information without the need for a full mesh.