Routing Information Protocol uses hop count as the distance metric. We have already seen on our blog on fundamental routing concepts that countdown to infinity problem was a major problem in the interior gateway protocols. RIP (Routing Information Protocol) addresses that issue by setting up the maximum hop count as 15. A hop count of 16 is counted as infinity in case of RIP. However, setting up a limitation on the hop count also comes at a cost. It limits the number of networks that can be supported in RIP as 15.
If you wish to read further, it is recommended that you read routing protocols overview for a better understanding.
RIP uses some of the fundamental concepts which are utilized in its routing protocols.
Routing Information Protocol fundamentals
Let us have a look at the fundamental concepts so that we can understand the rudimentary of this protocol.
As already discussed in the interior gateway protocol, all routers broadcast their routing tables to the directly connected routers on their interfaces. In the case of RIP, it sends periodic updates every 30 seconds to all other routers which are directly connected to it. Even if there are no network changes, these updates are still sent every 30 seconds.
The updates are sent only to the configured interfaces on a router. Also, the update is sent periodically as a broadcast (255.255.255.255) to all the hosts.
Routers use administrative distance as a metric when sending the packets from one to another router. It is a special number that is associated with every routing protocol which enables a router to know which routing protocol another router is running.
Different routing protocols have been assigned different administrative distance. For RIP, it is 120. So when another router receives the update and reads the administrative distance, it comes to know the other router is running what protocol.
Routing Information Protocol Limitations
RIP uses classful routing and it does not support classless routing. For example, if a network that is connected to a router running RIP is using VLSM, all the nodes/hosts on that network should use the same network mask.
There was no support for the authentication on RIP version 1 which made the routers vulnerable to attacks. With RIP version 2, MD5 authentication came into the place and instead of plain text password, encrypted passwords were used for the authentication.
Router authentication is used when a router receives a route update from its neighbor router. However, other mechanisms were implemented to prevent wrong information from being populated to other routers in RIP v2.
Split horizon route advertisement
To prevent the routing loops, routers do not broadcast the update on the interfaces it receives an update from.
Route Poisoning with Hold down timer
The concepts of route poisoning and hold down timer are utilized to prevent packet looping and making sure that no routers send a packet to an invalid router.
When a Router, Let’s say Router A, detects that one of the networks connected directly to its interface is down, it sets its distance as 16 (hop count of 16 is counted as infinity in RIP) and broadcasts the update to other connected routers.
It might take some time in the network for route poisoned message to reach every other router. In the meantime, the router that advertised the message, in this case, Router A, would not accept any update from any other router until the hold-down timer expires.
Once the hold-down timer expires, the router starts accepting updates from other routers. In the case of RIP, the hold-down timer is 180 seconds, six times the update timer.
RIP Routing Table
A router running the RIP protocol keeps the following set of information about every node
IP address: The destination IP address
Gateway: The first gateway along the path to the destination
Interface: The router interface to which the router is connected
Metric: At a distance of the number of hops on which another router is situated.
Timer: The time when the entry was last updated
As discussed before, this routing protocol uses different timers to keep track of other nodes and updates. Here is a list of the timers that are used by RIP
The update timer is the frequency at which every active router makes its routing table broadcast to every other directly connected router to its interfaces. As already discussed earlier in this article, RIP has the update timer set as of 30 seconds by default.
The invalid timer comes into the play when one of the routers in the network has been marked as unreachable. The router is marked unreachable and invalid by setting up its hops distance as 16. Though the route is still retained in the routing table the connected router still waits for a period of 180 seconds or six updates periods (30 seconds x 6 = 180 seconds) before marking the router as poisoned as unreachable.
The flush timer, as evident from its name, is used to flush out an entry from the routing table after a particular router has been marked as invalid using the invalid timer. By default, the flush timer is 240 seconds, which is 60 seconds longer than the invalid timer.
Hold down Timer
Hold down timer along with the route poisoning properties of the RIP is used in making sure that there is no looping in the network. Once a router goes down, a router waits another 180 seconds for the unreachable router to respond/ send some updates before making in unreachable.
If you more interested in the networking topics, here is our complete coverage of Computer Networks.