A routing protocol specifies how routers communicate with each other, disseminating information that enables them to select routes between any two nodes on a computer network. Routing algorithms determine the specific choice of route. Each router has a priori knowledge only of networks attached to it directly. A routing protocol shares this information first among immediate neighbors, and then throughout the network. This way, routers gain knowledge of the topology of the network.
Although there are many types of routing protocols, three major classes are in widespread use on IP networks:
- Interior gateway routing via link state routing protocols, such as OSPF and IS-IS
- Interior gateway routing via path vector or distance vector protocols, such as IGRP and EIGRP
- Exterior gateway routing. The Border Gateway Protocol (BGP) is the routing protocol used on the Internet for exchanging traffic between Autonomous Systems.
The specific characteristics of routing protocols include the manner in which they avoid routing loops, the manner in which they select preferred routes, using information about hop costs, the time they require to reach routing convergence, their scalability, and other factors.
OSI layer designation 
Routing protocols, according to the OSI routing framework, are layer management protocols for the network layer, regardless of their transport mechanism:
- IS-IS runs on the data link layer (Layer 2)
- Open Shortest Path First (OSPF) is encapsulated in IP, but runs only on the IPv4 subnet, while the IPv6 version runs on the link using only link-local addressing.
- IGRP, and EIGRP are directly encapsulated in IP. EIGRP uses its own reliable transmission mechanism, while IGRP assumed an unreliable transport.
- RIP runs over UDP
- BGP runs over TCP
Interior routing protocols 
Interior Gateway Protocols (IGPs) exchange routing information within a single routing domain. Examples of IGPs include:
- Open Shortest Path First (OSPF)
- Routing Information Protocol (RIP)
- Intermediate System to Intermediate System (IS-IS)
- EIGRP, Cisco's proprietary Enhanced Interior Gateway Routing Protocol
Cisco no longer supports IGRP, another proprietary protocol. The EIGRP implementation accepts IGRP configuration commands, but the internals of IGRP and EIGRP are different.
Routing software 
Routed protocols 
Some network certification courses distinguish between routing protocols and routed protocols. A routed protocol is used to deliver application traffic. It provides appropriate addressing information in its Internet Layer (Network Layer) addressing to allow a packet to be forwarded from one network to another.
See also 
- INTERNET PROTOCOL, RFC 791, J Postel, September 1981.
- BROADCASTING INTERNET DATAGRAMS IN THE PRESENCE OF SUBNETS, RFC 922, Jeffrey Mogul, October 1984
- Towards Requirements for IP Routers, RFC 1716, P. Almquist, November 1994
- Requirements for IP Version 4 Routers, RFC 1812, F. Baker,June 1995
Further reading