The routing protocol or algorithm decides which interface to send an incoming packet to the router.
When to use routing protocol
In this case, we are talking about connectionless packet switching or also called datagram switching. Thus, it is worth mentioning that the routing protocol can make forwarding decisions that change over time.
This is because routes can change and a route that was previously considered good can become bad.
On the other hand, when we think of virtual circuit based routing we can have session based routing. This is because the routing remains the same for the duration of the virtual circuit flow session.
Routing or packet forwarding
Some authors like Tanenbaum like to separate forwarding from routing. In this case, the authors argue that forwarding is the job of receiving an incoming packet and, according to the route table, choosing which interface will be used to send (forward) the packet.
Consequently, for the routing process we would have the task of updating the routing tables of the routers and this task would be done by the routing protocols or algorithms.
What to expect from a routing protocol
A routing protocol is expected to be stable while also reflecting topological changes in the network.
This means that the routing protocol should change routes as needed to reproduce the topological view of the network, but it should not keep changing endlessly so that it never has a view of the network.
Have a routing protocol that is stable in the choice of routes and that even im ensuring an up-to-date view of the network brings an intrinsic challenge to meeting these two demands.
In some cases, routing protocol designers can use strategies to ensure that the network topology view is not exactly up-to-date, but at the same time is the most up-to-date view possible.
Static routing and dynamic routing
Routing protocols can be divided into static routing and dynamic routing.
Static routing
In static routing, we need to previously insert the routes into the router so that it can make decisions about where to forward the packets. This insertion of routes into the router’s route table is usually done by network administrators.
Dynamic routing
In dynamic or adaptive routing, we have the routing protocol make the decisions in building the routing tables. In this case, routers can exchange information with each other to decide the best routes to different destinations.
Which routing to use?
Like almost everything in networking, if you ask me which of the two is better static routing or dynamic routing. I would say the good old “it depends”. This is because static routing can be interesting for small networks or for certain routes that you want to ensure that only specific paths are used.
In contrast, dynamic routing can adapt and choose an alternative route when some routers or links in the network fail. Consequently, dynamic routing prevents the company manager from calling you at 4:00 am to tell you that the company’s e-commerce sector is down because there was a problem with internal routes on your network.
In short, it’s up to you to analyze which type of routing is interesting for your company and in some cases even mix the two types of routing.
Juliana Mascarenhas
Data Scientist and Master in Computer Modeling by LNCC.
Computer Engineer
Learn more:
https:// /www.cisco.com/c/en/us/td/docs/net_mgmt/prime/network/3-8/reference/guide/routpro.html
https://datatracker.ietf.org/doc/html/rfc1058
https://www.ciscopress.com/articles/article.asp?p=2180210
Tutorial for SSH Public Key Authentication
In this tutorial, we will teach you how to create and configure access to an…
Socket UDP Python Chat
Tutorial for creating a simple chat using UDP sockets in Python 3. The goal is…
Socket TCP Python make a chat
Tutorial for creating a simple chat using TCP sockets in Python 3. The goal is…
apt get behind proxy
Over time, I have often come across the need to configure apt get to work…
Best IDE for Python?
Finding the perfect IDE is a personal journey that depends on various factors such as…