Split Horizon Explained with Examples
Routers utilize routing protocols to acquire new routes from neighboring devices and to disseminate learned routes. Split horizon is a technique that prevents a router from advertising a route learned on the same interface. Routing protocols employ it, in conjunction with other mechanisms, to prevent routing loops.
How split-horizon works
The following image shows a network. This network has two LAN networks: 10.0.0.0/8 and 30.0.0.0/8. To connect these networks, it uses two routers: Router A and Router B. Router A’s F0/0 interface is the default gateway for the 10.0.0.0/8 network. For the 30.0.0.0/8 network, the default gateway is Router B’s F0/0 interface. The network 20.0.0.0/8 connects both routers via a serial connection. Upon initialization, both routers identify their directly connected networks and add these entries to their respective routing tables.

Suppose you configure RIP on both routers. RIP periodically broadcasts the entire routing table from all active interfaces as routing updates. When neighboring routers running the RIP protocol listen to this broadcast, they learn the advertised routes. If any advertised route is not available in their routing tables or has a worse metric, they add it to their routing tables. By default, RIP broadcasts the entire routing table from all active interfaces. However, if split-horizon is enabled on an interface, RIP omits any routes learned on that interface from its updates.
Let's assume the split-horizon feature is disabled on both routers' serial interfaces. With it, both routers broadcast their routing tables via their serial interfaces. Router A advertises networks 10.0.0.0/8 and 20.0.0.0/8, while router B advertises networks 20.0.0.0/8 and 30.0.0.0/8. Both routers receive broadcast messages from their peer and learns the advertised routes.
Router A learns about networks 20.0.0.0/8 (Metric1) and 30.0.0.0/8 (Metric1), while router B learns about networks 10.0.0.0/8 (Metric1) and 20.0.0.0/8 (Metric1). Both ignore information about 20.0.0.0/8 (Metric1) as they already have a better route to it. However, they add the remaining route because it is not available in their routing tables.

On the next routing update, both routers broadcast their routing tables again.
Router A receives updates regarding networks 30.0.0.0/8 (Metric1), 20.0.0.0/8 (Metric1), and 10.0.0.0/8 (Metric2). It disregards updates for networks 20.0.0.0/8 (Metric1) and 10.0.0.0/8 (Metric2), as it already has better routes for these networks. However, it updates the timer for network 30.0.0.0/8 (Metric1) because it has an equal metric.
Router B receives updates for networks 10.0.0.0/8 (Metric1), 20.0.0.0/8 (Metric1), and 30.0.0.0/8 (Metric2). It disregards updates for networks 20.0.0.0/8 (Metric1) and 30.0.0.0/8 (Metric2), as it already has better routes. It updates the timer for network 10.0.0.0/8 (Metric1) because it has an equal metric.
Routers continue this process during subsequent routing updates.

As long as the network's physical topology remains unchanged, it works fine even with split-horizon disabled. Physical changes are very common on networks. They can occur at any time. If the split-horizon feature is disabled, a physical change in the network may result in a routing loop.
Suppose the connection between network 10.0.0.0/8 and router A fails. Router A detects the change and removes the route to network 10.0.0.0/8 from its routing table.
For the purposes of this example, it is assumed that the router immediately removes the unreachable route. In practice, the router typically sets the metric for the unreachable route to an infinite value rather than removing it instantly. The next part of this tutorial explains this feature in detail.
During the next routing update, router A does not advertise network 10.0.0.0/8, as this route has been removed from its routing table. However, router B continues to advertise a route to network 10.0.0.0/8 because it retains the outdated route information. Router A receives a routing update from router B and assumes that router B has an alternative route to network 10.0.0.0/8. Router A adds the advertised route to its routing table and subsequently advertises it to router B in the next update. Router B, however, ignores this update because it already maintains a better path to network 10.0.0.0/8.

At this moment, even though the network 10.0.0.0/8 is down, router A thinks that router B has a path for the network 10.0.0.0/8, while router B thinks that router A has a path for the network 10.0.0.0/8. This scenario is called a routing loop. In such a case, if either router receives a packet destined for network 10.0.0.0/8, it forwards the packet to the other router, which then forwards it back to the first router. The packet continues to circulate between the two routers indefinitely.

This routing loop occurs because split-horizon is disabled. If the split-horizon feature is enabled, it excludes routes available on the same interface from routing updates. For example, if the network 192.168.1.0/24 is available on the F0/0 interface of a router, the router will exclude this network (192.168.1.0/24) from all routing updates sent out on the F0/0 interface.
In this example, when routers advertise their initial routing update from the S0/0/0 interface, they omit network 20.0.0.0/8, as it is available on this interface.

After the first routing update, both routers learn about remote networks. Router A learns about the network 30.0.0.0/8, and router B learns about the network 10.0.0.0/8. Both routers add the learned network to their routing tables. Although the routers add these routes to their routing tables, they do not advertise them in subsequent routing updates sent from the S0/0/0 interface.

Suppose the connection between the network 10.0.0.0/8 and the router A fails. Router A detects this change and removes the entry for this network from its routing table. Since the route to this entry has been removed from the routing table, the routing protocol that broadcasts routes from it cannot advertise it.
Router B retains outdated route information for network 10.0.0.0/8. However, due to the split-horizon feature, it can not advertise this information back to router A.

This way, the split-horizon feature not only reduces the size of routing updates but also prevents routing loops in the network.
This tutorial is part of the tutorial series "RIP (Routing Information Protocol) Features, Functions, and Configurations Explained". Other parts of this series are the following.
Chapter 1 How RIP Routing works
Chapter 2 RIP – Routing Information Protocol Explained
Chapter 3 RIP Routing features and functions
Chapter 4 Routing Loops Explained with Examples
Chapter 5 Split Horizon Explained with Examples
Chapter 6 Infinity Metric and Route Poisoning Explained
Chapter 7 RIP Protocol Configuration Guide with Examples
Conclusion
The split-horizon feature is an essential tool for preventing routing loops and ensuring the stability of dynamic routing protocols. By blocking the advertisement of routes back through the same interface from which they were learned, split horizon maintains efficient and reliable network operations. Understanding and correctly implementing this feature is crucial for building loop-free routing environments.
Author Laxmi Goswami Updated on 2026-01-01