Posted on

At the routing level there are three main groups of routing protocols (the division into groups is determined by the type of algorithm implemented to determine the optimal route):

Distance vector protocols;
Link state protocols;
Routing policy protocols;

Distance vector protocols are the simplest and most common. Protocols in this group include RIP IP, RIP IPX, AppleTalk, and Cisco IGRP. This type of protocol gets its name from the way information is exchanged. A router pulls the destination addresses and metrics from its routing table at regular intervals and puts this data into update messages that are sent out to neighbors. Neighboring routers check the received data against their own routing tables and make the necessary changes. They then send out their own update messages. In this way each router is informed about the routes of the whole network. While the algorithm is obviously simple, it is not completely reliable. It can only work effectively in small networks.

Link state protocols were first proposed in 1970 by Edsger Dijkstra. These protocols are much more complex than distance vector protocols. Instead of sending the contents of its routing tables to its neighbors, each router broadcasts a list of routers with which it has a direct connection and a list of the LANs directly connected to it. This information is part of the link state information. It is sent out in special messages. Furthermore, the router sends out messages only when the link state has changed or after a set time interval. Channel state protocols are difficult to implement and require a large amount of memory to store the channel state information. Examples of these protocols are OSPF, IS-IS, Nowell NLSP, and Cisco EIGRP.

According to Dijkstra, the network topology is represented as an undirected graph. A value is assigned to each edge. As the algorithm works, the sum of the scores for the edges converging at each node in the graph is calculated. This score is called the node label. When determining a path, the sum of labels on a possible path is calculated and the path with the smaller total label is chosen.

The third group of protocols includes routing policy (rules) protocols. These protocols most effectively solve the problem of delivering information to the recipient. This category of protocols is used for routing in the Internet, and allows operators to receive routing information from neighboring operators, based on special criteria. That is, a list of allowed routes (paths) is produced in the process of exchange. Routing policy algorithms are based on distance vector algorithms, but the routing information is based on a list of Internet operators. Examples of protocols in this category are BGP and EGP.