Routing Information Protocol (RIP) is a distance-vector routing protocol. RIP relies on hop count to determine best routes. RIP propagates its entire routing table in the course of routing updates. RIP does not form adjacencies or identify its neighbors.
RIPv1 is classful. This version does not transmit subnet masks in its routing updates.
RIPv2 is classless. It processes variable length subnet masks (VLSM) and includes subnet information it its routing updates.
The maximum hop count for a RIP network is 15. In RIP, a hop count of 16 is considered infinite, which equivalent to saying the destination is unreachable. For this reason, RIP is most suitably deployed on smaller networks.
Because RIP gathers next hop information from nearby routers, it does not maintain stateful information about remote areas of the network. This makes RIP prone to routing loops, a condition in which incorrect routes can propagate throughout the network. To reduce the risk of routing loops, RIP as several additional features including:
Split horizon prohibits routers from re-advertising a route out the same interface from which it was learned. Poison reverse involves marking routes as unreachable (hop count = 16) when the validity of the route is uncertain. Hold-down timers prevent the reestablishment of a failed route prior to a minimum wait time. The hold-down period prevents route flapping, a condition with routes are entered and deleted rapidly in sequence, typically due to intermittent failure of some hardware component.
See: RFC 1058