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 protocols type 1, link-state routing protocols, such as OSPF and IS-IS
- Interior gateway protocols type 2, distance-vector routing protocols, such as Routing Information Protocol, RIPv2, IGRP.
- Exterior gateway protocols are routing protocols used on the Internet for exchanging routing information between Autonomous Systems, such as Border Gateway Protocol (BGP), Path Vector Routing Protocol.
Please notice that the term "Exterior gateway protocol" has two meanings. It could mean a category of protocols used to exchange routing information between autonomous systems (see: exterior gateway protocol). It could also mean a specific RFC-described protocol (see: Exterior Gateway Protocol).
Many routing protocols are defined in documents called RFCs.
Some versions of the Open System Interconnection (OSI) networking model distinguish routing protocols in a special sublayer of the Network Layer (Layer 3).
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 gateway 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)
- Enhanced Interior Gateway Routing Protocol (EIGRP)
Exterior gateway protocols
Exterior gateway protocols exchange routing information between autonomous systems. Examples include:
- Exterior Gateway Protocol (EGP)
- Border Gateway Protocol (BGP)
Routing software
Many software implementations exist for most of the common routing protocols. Examples of open-source applications are Bird Internet routing daemon, Quagga, GNU Zebra, OpenBGPD, OpenOSPFD, and XORP.
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.
Examples of routed protocols are the Internet Protocol (IP) and Internetwork Packet Exchange (IPX).