Routing Information Protocol
Of Internet interior routing protocols, RIP is probably the most widely used. It is a distance-vector protocol based on a 1970s Xerox design. Ported to TCP/IP when LANs first appeared in the early 80s, RIP has changed little in the past decade and suffers from several limitations, some of which have been overcome with RIP-2, which is not discussed here. RFC 1058 documents RIP.
Parameter | RIP Default Value |
---|---|
Infinity | 16 (fixed) |
Update time | 30 sec |
Invalid time | 180 sec |
Flush time | 120 sec |
Holddown | Not used |
- Width restriction. RIP uses a 4-bit metric to count router
hops to a destination. A RIP network can be no wider than
15 hops (16 is infinity). If hop counts are elevated on
slower or less reliable links, this can quickly becomes a
problem.
- No direct subnet support. RIP was deployed prior to
subnetting and has no direct support for it. It can be used
in subnetted environments, subject to restrictions.
VLSM can not be used in RIP networks.
- Bandwidth consumptive. Every 30 seconds or so, a RIP router
will broadcast lists of networks and subnets it can reach.
Depending on the lengths of these lists, which depend on the
size of the network, bandwidth usage can become prohibitive
on slow links.
- Difficult diagnosis. Like any distance-vector protocol, RIP
can be difficult to debug, since the routing algorithm is
distributed over many different routers. Most reported RIP
problems could probably be traced to poor understanding,
incorrect configuration and inadequate diagnosis.
- Weak security. RIP itself has no security features, but some developers have produced RIP implementations that will only accept updates from configured hosts, for example. Various security attacks can be imagined.
However, RIP has several benefits. It is in widespread use, the only interior gateway protocol that can be counted on to really run everywhere. Configuring a RIP system requires little effort, beyond setting path costs. Finally, RIP uses an algorithm that does not impose serious computation or storage requirements on hosts or routers.