A router provides several important functions in order to ensure proper packet forwarding, and to do so in an efficient manner.
A router is a specialized computer that handles three primary functions:
 |
Packet Forwarding: On receiving an incoming packet, a router checks whether the packet is error free. After inspecting the header of a packet for destination address, it performs a table lookup function to determine how to find the appropriate outgoing link. |
 |
Routing Protocol Message Processing: A router also needs to handle routing protocol packets and determine if any changes are needed in the routing table by invoking a routing algorithm, when and if needed. |
 |
Specialized Services: In addition, a router is required to handle specialized services that can aid in monitoring and managing a network. |