Split horizon refers is a method to avoid the routing loops in networks. It is mostly in use by distance vector protocols. The basic rule of the split horizon is that never sends routing information back to the node in the direction from which it came. The split horizon technique transfers the data packets in all directions and propagates them to all the attached nodes except that router receives the information.
This is very helpful to prevent loopholes and, also controlling those points or areas where routing poisoning cannot prevent routing loops to occur. This technique is used by routing protocols like VPLS, EIGRP, IGRP, and RIP. This blog will discuss more what is split horizon and why it is important. So let’s dig more.
In an interconnected network, their many different path and operational factor are changing. Routers need to tend to update with up-to-date information on the available and broken paths and addresses. Most routing protocols have a method in which they notify the status updates frequently to their networks. This technique is very helpful but creates serious network restrictions in case routing logic is not calculating and will create routing loops.
In most of the distance vector protocols, the split horizon is linking with it. That prevents these loops to happen in the network by getting rid of the address of the source update router, from the list of all routers which will generate an update received from the source router. Split horizon is similar to route poisoning which avoids the network traffic to flow from an invalid path.
Table of Contents
Why is the need for a split horizon?
We need this because routing like RIP (Routing Information Protocol) allows the loops, which happens when a data packet is caught in an endless circle and continuously routed on the same router. So, to prevent these routing loops, the protocols depend on the split horizon technique. Other kinds of protocols like Open Shortest Path first use different ways to prevent packet looping.
Split horizon works in such a way if one’s router receives routing information from another router, the first one will not send that information back to the second router, thus in this way, it prevents routing loops from occurring.
Example of how it works:
The following fig. shows three routers that are link and in use to transfer packets between networks. In this simple figure, router 3 sends information to router 2 and this router receives the information to update the routing table, and broadcasts this information to router 1, when router 2 receives this information it will update the routes tables.
Router 1 uses the updated routing information to send packets to the 10.0.0.0/16 network via the router 2 and 3 networks. If the split horizon is active router1 will not be able to advertise this information back to router 2. So, if no split horizon is configured on the network the R1 propagates the route back to the R2 router, and then it will update its routing table including the network route available via an R1 router.
Under normal conditions, the addition of the R1 route in the routing table of R2 is not an issue. However, if the link from R2 to R3 fails and the R2 receives the data packets from R1 to send forward to the 10.0.0.0/16 network, router 2 sends the packets back to the R1 router. Based on the routing information router 1 return these packets to the R2 eventually, which results in the routing loops and it will continue until it will expire. With the split horizon, the R1 router will not be able to advertise the network route to the R2 router. It prevents the routing loops.
Split horizon with poison reverse:
Mostly split horizon is also linking in conjunction with poison reverse. It is equivalent to route poisoning all possible reverse paths. That informs all the routers that the path back to the node for particular packets has an infinite metric.
In the example above the R1 router will not propagate the 10.0.0.0/16 network route back to router 2 if the split horizon is active. However, with the reverse poison, the route will advertise to router 2. But with the infinite distance, that indicates the network is unreachable through this router.
For the routing information protocol, the 16 metric value is set, which is equal to infinity because the routing information protocol hop count is 15. A split horizon is more effective with poison reverse as compared to a simple split horizon in a network with multiple routing paths. It results in a greater traffic network. With only one routing path split horizon with poison reverse affords no improvements over a simple split horizon.
Why split horizon?
A split horizon is used to cease the biggest routing loops. Routing loops mostly happen whenever a loop is created between two or more routers. Communicating with the router helps to end these routing loops. It tells them not to advertise routes on the same interface from which it is propagating originally.
On a certain interface if routers learn about routes they will not broadcast that routing information outside the interface. However, split horizon is useful to stop routing loops between two routers but it will not able to hinder routing loops in more than three routers.
Split horizon is active on several interfaces by default, and it can be disabled following a command. For example, you may need to disable split horizon on a multipoint interface. It is important to note that routing loops sometimes work out routing loops on their own. Thus split horizon solves the problems more efficiently as it prevents routing loops.
The split horizon technique is very simple and efficient to use. Because of this, it is famous and used by various distance vector protocols. For example, VPLS uses a split horizon to avoid routing loops. RIP, EIGRP, and IGRP are the other users of split horizon.