Routing Information Protocol Version 1 (RIPv1): This is a simple distance vector protocol. It has been enhanced with various techniques, including Split Horizon and Poison Reverse in order to enable it to perform better in somewhat complicated networks.
Features of RIPv1
RIPv1 is a Distance-Vector Routing protocol.
RIPv1 is a Classful routing protocol. Classful routing protocols support only the networks which are not subnetted. Classful routing protocols do not send subnet mask information with their routing updates. In other words, if you have a subnetted network in your RIPv1 routing domain, RIPv1 will announce that network to other as unsubnetted network.
RIPv1 does not support VLSM (Variable Length Subnet Masking).
RIPv1 support maximum metric (hop count) value of 15. Any router farther than 15 hops away is considered as unreachable.
RIPv1 send routing updates periodically every 30 seconds as broadcasts using destination IP address as limited broadcast IP adddress 255.255.255.255. Since the updates are sent using the destination IP address of limited broadcast IP adddress 255.255.255.255, every router need to process the routing update messages (whether they are running RIPv1 or not).
RIPv1 does not support authentication of update messages (plain-text or MD5).
Routing Information Protocol Version 2 (RIPv2)
RIPv2 is a Hybrid Routing Protocol. A Hybrid Routing Protocol is basically a Distance-Vector protocol which some characteristics of Link State routing protocols.
RIPv2 is classless routing, which allows us to use subnetted networks also. RIPv2 has the option for sending network mask in the update to allow classless routing. RIP Header format is as show in the below fig
RIP Header Format
Features of RIPv2:
RIPv2 support VLSM (Variable Length Subnet Masking).
RIPv2 support maximum metric (hop count) value of 15. Any router farther than 15 hops away is considered as unreachable.
RIPv2 supports triggered updates.
RIPv2 routing updates are sent as Multicast traffic at destination multicast address of 224.0.0.9. Multicast updates reduce the network traffic. The Multicast routing updates also helps in reducing routing update message processing overhead in routers which are not running RIPv2. Only the routers running RIPv2 join to the multicast group 224.0.0.9. Other routers which are not running RIPv2 can simply filter the routing update packet at Layer 2.
RIPv2 support authentication of RIPv2 update messages (plain-text or MD5). Authentication helps in confirming that the updates are coming from authorized sources
The router rip command selects RIP as the routing protocol. The network command assigns a major network number that the router is directly connected to. The RIP routing process associates interface addresses with the advertised network number and begins RIP packet processing on the specified interfaces.
Runts: This is the number of packets that have been discarded because they are smaller than the medium's minimum packet size. For Ethernet, a packet size of less than 64 bytes is considered a runt.
Giants: This is the number of packets that have been discarded because they exceeded the maximum allowable size of the medium. For Ethernet, a packet size of more than 1518 bytes is considered a giant.
Poison Reverse: When a router advertises a poisoned route to its neighbors,its neighbors break the rule of split horizon and send back to the originator the same poisoned route, with an infinite metric.
LSA's: The packets flooded when a topology change occurs, causing network routers to update their topological databases and recalculate routes
Defining a maximum count: Used for preventing updates from looping the network indefinitely.
Route Poisoning: Advertises an infinite metric for a failed route to all its neighbors
Triggered update: Allows a RIP router to announce route changes almost immediately rather than waiting for the next periodic announcement.
Various timers in RIP are given below:
Update-30 sec, Interval between route update advertisements
Hold-Down-90 sec, Period a route is withdrawn from the table to prevent a routing loop.
Timeout-180 sec, Interval a route should stay 'live' in the routing table. This counter is reset every time the router hears an update for this route.
Flush-120 sec, How long to wait to delete a route after it has timed out.
Split horizon: is a method of preventing a routing loop in a network. The basic principle is simple: Information about the routing for a particular packet is never sent back in the direction from which it was received. If a neighboring router sends a route to a router, the receiving router will not propagate this route back to the advertising router on the same interface. Blocks the information about routes from being advertised by any router to the interface from which the information originated.
Hold-down Timers: The purpose is to provide the routers enough time to propogate the routes and to ensure that no routing loops occur while propagation occurs
Normally, routers that are connected to broadcast-type IP networks and that use distance-vector routing protocols employ the split horizon mechanism to reduce the possibility of routing loops. Split horizon blocks information about routes from being advertised by a router out of any interface from which that information originated. This behavior usually optimizes communications among multiple routers, particularly when links are broken. If an interface is configured with secondary IP addresses and split horizon is enabled, updates might not be sourced by every secondary address. One routing update is sourced per network number unless split horizon is disabled.