RIP is a distance vector routing protocol and the simplest routing protocol to start with. We’ll start by paying attention to the distance vector class. What does the name distance vector mean?
- Distance: How far away, in routing world we use metrics which we just discussed.
- Vector: Which direction, in routing world we care about which interface and the IP-address of the next router to send it to.
I don’t know if you ever go cycling but here in The Netherlands we have some nice so called mushroom signposts telling you which way to go and how far (in kilometers) the destination is. The same principle applies to distance vector routing protocols.
If you don’t like cycling you’ll like the highway signs better:
Enough about cycling and highways let’s see how distance vector routing protocols operate.
In this picture we have three routers and we are running a distance vector routing protocol (RIP). As we start our routers they build a routing table by default but the only thing they know are their directly connected interfaces. You can see that this information is in their routing table. In red you can see which interface and in green you can see the metric. RIP uses hop count as its metric which is nothing more than counting the number of routers (hops) you have to pass to get to your destination.
Now I’m going to enable distance vector routing, what will happen is that our routers will copy their routing table to their directly connected neighbor. R1 will copy its routing table to R2. R2 will copy its routing table to R3 and the other way around.
If a router receives information about a network it doesn’t know about yet, it will add this information to its routing table:
Take a look at R1 and you will see that it has learned about the 192.168.23.0 /24 and 3.3.3.0 /24 network from R2. You see that it has added the interface (Fa1/0) how to reach these networks (that’s the vector part) and you see that it has added the metric (hop count) for these networks (that’s the distance part).
192.168.23.0 /24 is one hop away, 3.3.3.0 /24 is two hops away.
Awesome! You also see that R2 and R3 have filled their routing tables.
Every 30 seconds our routers will send a full copy of their routing table to their neighbors who can update their own routing table.
So far so good, our routers are working and we know the destination to all of our networks…distance vector routing protocols are vulnerable to some problems however. Let me show you what can go wrong:
Rene,
... Continue reading in our forumI’m using the Boson Netsim 9.0 simulator and I configured a lab to match what you laid out in this lesson, what has me baffled is how and where do you see the hop count message of 16, when I shutdown the interface on my R3 router (LAN) 3.3.3.0/24. I turned on debug IP Rip on my R2 router to view the updates being sent from R3. I did see the metric count reach 4 and after that the route was deleted for network 3.3.3.0/24, I never saw the hop count reach 16…just curious about this.
Otherwise a very good explanation and write up RIP protocol
It could be the
Hi Hussein,
I did some labbing / debugging to verify how it exactly works, the RIP timers sound simple but there’s some stuff going on. Let’s say we have two routers:
R1-R2
R1 is advertising 1.1.1.0 /24 to R2.
Suddenly, R1 stops advertising RIP updates to R2.
At this moment, the invalid timer (180 seconds) and flush timer (240 seconds) start counting.
After 180 seconds, the route is considered invalid and the holddown timer will start (180 seconds). The route will remain in the routing table but is “possibly down”.
60 seconds later, the flush timer will expire
... Continue reading in our forumHello Sameer
This is a very good question. What is happening here is that R2 has obtained its original hop count of 1 to network 3.3.3.3 from R3. So since R3 has told R2 that the distance to 3.3.3.3 is 1, it puts it in its routing table.
After the procedure that is described, R3 sends a new hop count to R2 of 2. Now you say since this hop count is higher than that which is already in the routing table of R2, why does R2 replace it? Well, it will replace it because it is an updated piece of information.
So, the previous entry of metric 1 that was learned fr
... Continue reading in our forumHello Sameer
RIP requests are only sent under special circumstances, when a router requires that it be provided with immediate routing information. The most common example of this is when a router is first powered on. After initializing, the router will typically send an RIP Request on its attached networks to ask for the latest information about routes from any neighboring routers. The only other situation in which RIP requests are sent is when they are to be used for diagnostic purposes.
So yes, it is rare to find requests.
Responses on the other hand are sen
... Continue reading in our forumSuper, Nice explanation Liz, now i understand the behaviour of RIPV1.