Routing Information Protocol

Routing Information Protocol

The Routing Information Protocol (RIP) is a distance-vector routing protocol, which employs the hop count as a routing metric. RIP prevents routing loops by implementing a limit on the number of hops allowed in a path from the source to a destination. The maximum number of hops allowed for RIP is 15. This hop limit, however, also limits the size of networks that RIP can support. A hop count of 16 is considered an infinite distance and used to deprecate inaccessible, inoperable, or otherwise undesirable routes in the selection process.

RIP implements the split horizon, route poisoning and holddown mechanisms to prevent incorrect routing information from being propagated. These are some of the stability features of RIP. It is also possible to use the so called RMTI[1] (Routing Information Protocol with Metric-based Topology Investigation) algorithm to cope with the count-to-infinity problem. With its help, it is possible to detect every possible loop with a very small computation effort.

Originally each RIP router transmitted full updates every 30 seconds and its Hold down time is 180 seconds. In the early deployments, routing tables were small enough that the traffic was not significant. As networks grew in size, however, it became evident there could be a massive traffic burst every 30 seconds, even if the routers had been initialized at random times. It was thought, as a result of random initialization, the routing updates would spread out in time, but this was not true in practice. Sally Floyd and Van Jacobson showed in 1994[2] that, without slight randomization of the update timer, the timers synchronized over time. In most current networking environments, RIP is not the preferred choice for routing as its time to converge and scalability are poor compared to EIGRP, OSPF, or IS-IS (the latter two being link-state routing protocols), and (without RMTI) a hop limit severely limits the size of network it can be used in. However, it is easy to configure, because RIP does not require any parameters on a router unlike other protocols (see here for an animation of basic RIP simulation visualizing RIP configuration and exchanging of Request and Response to discover new routes).

RIP is implemented on top of the User Datagram Protocol as its transport protocol. It is assigned the reserved port number 520.[3]

Contents

Versions

There are three versions of the Routing Information Protocol: RIPv1, RIPv2, and RIPng.

RIP version 1

The original specification of RIP, defined in RFC 1058,[4] uses classful routing. The periodic routing updates do not carry subnet information, lacking support for variable length subnet masks (VLSM). This limitation makes it impossible to have different-sized subnets inside of the same network class. In other words, all subnets in a network class must have the same size. There is also no support for router authentication, making RIP vulnerable to various attacks.

RIP version 2

Due to the deficiencies of the original RIP specification, RIP version 2 (RIPv2) was developed in 1993[5] and last standardized in 1998.[6] It included the ability to carry subnet information, thus supporting Classless Inter-Domain Routing (CIDR). To maintain backward compatibility, the hop count limit of 15 remained. RIPv2 has facilities to fully interoperate with the earlier specification if all Must Be Zero protocol fields in the RIPv1 messages are properly specified. In addition, a compatibility switch feature[6] allows fine-grained interoperability adjustments.

In an effort to avoid unnecessary load on hosts that do not participate in routing, RIPv2 multicasts the entire routing table to all adjacent routers at the address 224.0.0.9, as opposed to RIPv1 which uses broadcast. Unicast addressing is still allowed for special applications.

(MD5) authentication for RIP was introduced in 1997.[7][8]

RIPv2 is Internet Standard STD56 (which is RFC 2453).

Route tags were also added in RIP version 2. This functionality allows for routes to be distinguished from internal routes to external redistributed routes from EGP protocols.

RIPng

RIPng (RIP next generation), defined in RFC 2080,[9] is an extension of RIPv2 for support of IPv6, the next generation Internet Protocol. The main differences between RIPv2 and RIPng are:

  • Support of IPv6 networking.
  • While RIPv2 supports RIPv1 updates authentication, RIPng does not. IPv6 routers were, at the time, supposed to use IPsec for authentication.
  • RIPv2 allows attaching arbitrary tags to routes, RIPng does not;
  • RIPv2 encodes the next-hop into each route entries, RIPng requires specific encoding of the next hop for a set of route entries.

Limitations

  • Without using RMTI, Hop count can not exceed 15, in the case that it exceeds this limitation, it will be considered invalid.
  • Most RIP networks are flat. There is no concept of areas or boundaries in RIP networks.
  • Variable Length Subnet Masks were not supported by RIP version 1.
  • Without using RMTI, RIP has slow convergence and count to infinity problems.

Implementations

  • Cisco IOS, software used in Cisco routers (supports version 1, version 2 and RIPng)
  • Cisco NX-OS software used in Cisco Nexus data center switches (supports RIPv1 and RIPv2)
  • Junos software used in Juniper routers, switches, and firewalls (supports RIPv1 and RIPv2)
  • routed[10], included in most BSD Unix systems
  • Routing and Remote Access, a Windows Server feature, contains RIP support
  • Quagga, a free open source routing software suite based on GNU Zebra
  • BIRD, a free open source routing software suite
  • OpenBSD, includes a RIP implementation

Similar protocols

See also

References

  1. ^ "RMTI project". http://userp.uni-koblenz.de/~vnuml/rmti/. 
  2. ^ The Synchronization of Periodic Routing Messages, S. Floyd & V. Jacobson,April 1994
  3. ^ "Port Numbers" (plain text). The Internet Assigned Numbers Authority (IANA). 2008-05-22. http://www.iana.org/assignments/port-numbers. Retrieved 2008-05-25. 
  4. ^ RFC 1058, Routing Information Protocol, C. Hendrik, The Internet Society (June 1988)
  5. ^ RFC 1388, RIP Version 2 - Carrying Additional Information, G. Malkin, The Internet Society (January 1993)
  6. ^ a b RFC 2453, RIP Version 2, G. Malkin, The Internet Society (November 1998)
  7. ^ RFC 2082, RIP-2 MD5 Authentication, F. Baker, R. Atkinson, The Internet Society (January 1997)
  8. ^ RFC 4822, RIPv2 Cryptographic Authentication, R. Atkinson, M. Fanto, The Internet Society (January 2007)
  9. ^ RFC 2080, RIPng for IPv6, G. Malkin, R. Minnear, The Internet Society (January 1997)
  10. ^ Man-page for "routed(8)" on FreeBSD, http://www.freebsd.org/cgi/man.cgi?query=routed&sektion=8

Further reading

  • Malkin, Gary Scott (2000). RIP: An Intra-Domain Routing Protocol. Addison-Wesley Longman. ISBN 0-201-43320-6.
  • Edward A. Taft, Gateway Information Protocol (revised) (Xerox Parc, Palo Alto, May, 1979)
  • Xerox System Integration Standard - Internet Transport Protocols (Xerox, Stamford, 1981)

External links


Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Look at other dictionaries:

  • Routing information protocol — Pour les articles homonymes, voir RIP. Pile de protocoles 7 • Application 6 • …   Wikipédia en Français

  • Routing Information Protocol —   [engl.], RIP …   Universal-Lexikon

  • Routing Information Protocol — RIP im TCP/IP‑Protokollstapel: Anwendung RIP Transport UDP Internet IP (IPv4, IPv6) Netzzugang Ethernet Token …   Deutsch Wikipedia

  • Routing Information Protocol — Pour les articles homonymes, voir Rip. Pile de protocoles 7.  Application 6.  …   Wikipédia en Français

  • Routing Information Protocol — protocol for managing routing of information in Local Area Networks (Computers), RIP …   English contemporary dictionary

  • Routing Information Protocol —    Abbreviated RIP. A routing protocol used on TCP/IP (Transmission Control Protocol/ Internet Protocol) networks that maintains a list of reachable networks and calculates the degree of difficulty involved in reaching a specific network from a… …   Dictionary of networking

  • Routing-Protokoll — Routing [ˈruːtɪŋ] (BE) / [ˈraʊtɪŋ] (AE) (engl. „Lotsen“, „Wegewahl“, „Verkehrslenkung“) bezeichnet in der Telekommunikation das Festlegen von Wegen für Nachrichtenströme bei der Nachrichtenübermittlung über vermaschte Nachrichtennetze bzw.… …   Deutsch Wikipedia

  • Routing — [ˈruːtɪŋ] (BE) / [ˈraʊtɪŋ] (AE) (engl. „Leitweglenkung“, „Streckenführung“, „Verkehrsführung“ sowie „leiten“, „senden“, „steuern“)[1] bezeichnet in der Telekommunikation das Festlegen von Wegen für Nachrichtenströme bei der… …   Deutsch Wikipedia

  • Routing Table Maintenance Protocol — (RTMP) ist ein Begriff aus der Informatik. Das Routing Table Maintenance Protocol, oder kurz RTMP, ist ein Protokoll das die Routing Tabellen in kurzen Zeitabständen von 10 s in einem AppleTalk Netz aktualisiert. Es arbeitet nach dem Distance… …   Deutsch Wikipedia

  • Routing — This article is about routing in networks. For other uses, see Routing (disambiguation). Routing is the process of selecting paths in a network along which to send network traffic. Routing is performed for many kinds of networks, including the… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”