The following question comes in the mind of every new candidate when they started to know various routing algorithm and protocols.
Which routing algorithm or protocol should we use for a specific network?
There is no straightforward answer to use a specific routing algorithm or protocol for a specific network. The answer of the preceding question depends upon the various factors and may also vary on the case-by-case scenarios. However, if you have a clear idea about all the different routing algorithms and protocols, you can take a decision that is best suited for your network.
On the base of TCP/ IP addressing scheme, the routing protocols can be categorized in to the following two categories.
- Classful routing protocols
- Classless routing protocols
Classful Routing Protocols
The classful routing protocols are those protocols that do not carry the subnet mask information in the routing updates. In addition, classful routing protocols require that every interface and host on the network must use the same subnet mask. These routing protocols waste more address spaces. Another problem with the classful routing protocols is that they sent out periodic routing updates to all active interfaces of each router. Sending out periodic routing updates to all active interface of each router can cause congestion on the slower WAN links. Generally, distance-vector routing protocols are considered as classful routing protocols.
Examples: RIPv1 and IGRP.
Classless Routing Protocols
Classless routing protocols are those protocols that include the subnet mask information when the routing tables or updates are exchanged. Classless routing protocols allow to use the networks with the different length of subnet masks. Hence, these routing protocols support the CIDR and VLSM. Classful routing protocols do not send periodic update (which means sending the routing updates at the regular time intervals) like classful routing protocols. Classless routing protocols exchange the entire routing table with the neighbor routers only at the very first time. Once the network is fully converged, routing updates are sent only when there is any changes occur in the network topology. It helps to reduce the bandwidth consumption. However, classless routing protocols send Hello messages at the regular time intervals to their neighbor routers (directly connected routers), regardless of the changes in the network topology. They use the Hello packets to verify whether the neighbor routers are alive or not.
Example: OSPF and IS-IS
The following table lists the differences between classful and classless routing protocols.
Apart from the preceding categories, based on the algorithm used by routing protocols to calculate the best path, a routing protocol can further be classified in the following classes.
The distance-vector routing protocols use the concept of Distance and Vector to calculate the best path. The distance is the number of hops from a source to destination for a remote network and the vector is the determination of direction to the remote network. Whenever a packet passes through a router, it is counted as a hop. The path that has the least number of hops from a source to the destination network is considered the best route. Distance routing protocols build only a single table called routing table that contains the routing information.
One of the major disadvantage of using the distance-vector protocols is that they consume network bandwidth even if there are no changes occur in the network topology. RIP and IGRP are the example of distance vector protocols.
Link State Protocols
The link-state routing protocols use the triggered-update method instead of the periodic update. With the triggered-update, only the information about the link that has changed is included. These routing protocols build three separate tables called Routing table, Topology table, and Neighbor table. OSPF and IS-IS are the example of the link-state protocol.
Hybrid Routing Protocols
A hybrid routing protocol is not a new class of the routing protocols, it actually comprises the features of both the distance-vector and link-state routing protocols. An example of hybrid protocol is EIGRP. It uses the periodic update as well as the triggered update mechanism to update the routing table. However, Cisco considered it as an advance distance-vector protocol.
Path-vector routing protocols uses the path (gateway) information through which they forward packets form on ASN (Autonomous System Number) to another ASN. BGP is an example of Path-vector routing protocol. The reason why BGP is said to be a path vector routing protocol is that it has various attributes by which path selection criteria can be modified.
The following table lists the difference between the different classes of routing algorithms.