A Router is a networking device that forwards data packets between computer network. This device is usually connected to two or more different networks. When a data packet comes to a router port, the router reads address information in packet to determine out which port the packet will be sent. For example, a router provides you with the internet access by connecting your LAN with the Internet.
When a packet arrives at a Router, it examines destination IP address of a received packet and make routing decisions accordingly. Routers use Routing Tables to determine out which interface the packet will be sent. A routing table lists all networks for which routes are known. Each router’s routing table is unique and stored in the RAM of the device.
A routing table is a set of rules, often viewed in table format, that is used to determine where data packets traveling over an Internet Protocol (IP) network will be directed. All IP-enabled devices, including routers and switches, use routing tables. See below a Routing Table:
Destination Subnet mask Interface 126.96.36.199 255.255.255.0 Eth0 188.8.131.52 255.255.255.128 Eth1 184.108.40.206 255.255.255.255 Eth3 default Eth2
The entry corresponding to the default gateway configuration is a network destination of 0.0.0.0 with a network mask (netmask) of 0.0.0.0. The Subnet Mask of default route is always 255.255.255.255 .
Entries of an IP Routing Table:
A routing table contains the information necessary to forward a packet along the best path toward its destination. Each packet contains information about its origin and destination. Routing Table provides the device with instructions for sending the packet to the next hop on its route across the network.
Each entry in the routing table consists of the following entries:
- Network ID:
The network ID or destination corresponding to the route.
- Subnet Mask:
The mask that is used to match a destination IP address to the network ID.
- Next Hop:
The IP address to which the packet is forwarded
- Outgoing Interface:
Outgoing interface the packet should go out to reach the destination network.
A common use of the metric is to indicate the minimum number of hops (routers crossed) to the network ID.
Routing table entries can be used to store the following types of routes:
- Directly Attached Network IDs
- Remote Network IDs
- Host Routes
- Default Route
When a router receives a packet, it examines the destination IP address, and looks up into its Routing Table to figure out which interface packet will be sent out.
How are Routing Tables populated?
There are ways to maintain Routing Table:
These Routing tables can be maintained manually or dynamically. In dynamic routing, devices build and maintain their routing tables automatically by using routing protocols to exchange information about the surrounding network topology. Dynamic routing tables allow devices to “listen” to the network and respond to occurrences like device failures and network congestion. Tables for static network devices do not change unless a network administrator manually changes them.
Route Determination Process (finding Subnet ID using Routing Table):
Consider a network is subnetted into 4 subnets as shown in the above picture. The IP Address of the 4 subnets are:
220.127.116.11 (Subnet a) 18.104.22.168 (Subnet b) 22.214.171.124 (Subnet c) 126.96.36.199 (Subnet d)
Then, Routing table maintained by the internal router looks like:
To find its right subnet (subnet ID), router performs the bitwise ANDing of destination IP Address mentioned on the data packet and all the subnet masks one by one.
- If there occurs only one match, router forwards the data packet on the corresponding interface.
- If there occurs more than one match, router forwards the data packet on the interface corresponding to the longest subnet mask.
- If there occurs no match, router forwards the data packet on the interface corresponding to the default entry.
Example-1: GATE-CS-2004 | Question 55
Example-2: GATE IT 2006 | Question 63
Note that the routing tables are not specific for Cisco devices. Even your Windows operating system has a routing table that can be displayed using the route print command
Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.
- Difference between Classful Routing and Classless Routing
- Difference between Distance vector routing and Link State routing
- Unicast Routing - Link State Routing
- Routing v/s Routed Protocols in Computer Network
- Network Layer Services- Packetizing, Routing and Forwarding
- Basic Network Attacks in Computer Network
- Caching Page Tables
- Difference between Storage Area Network (SAN) and Network Attached Storage (NAS)
- Differences between Wireless Adhoc Network and Wireless Sensor Network
- Difference between Next Generation Network and Traditional Network
- Difference between Software Defined Network and Traditional Network
- Onion Routing
- Difference between Adaptive and Non-Adaptive Routing algorithms
- Distance Vector Routing (DVR) Protocol
- Route Poisoning and Count to infinity problem in Routing
- Fixed and Flooding Routing algorithms
- Probabilistic shortest path routing algorithm for optical networks
- Inter VLAN Routing by Layer 3 Switch
- Features of Enhanced Interior Gateway Routing Protocol (EIGRP)
- Classes of Routing Protocols
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.