Routing takes place on the Network layer (Layer 3) of the OSI model, and on the Network layer of the Network model. While switches are store-and-forward devices that use MAC addresses to identify nodes, routers are also store-and-forward devices, but they use IP addresses to identify nodes. Routers (and Layer 3 switches, for that matter) allow us to move data between networks. A router is also responsible for maintaining information about other routers on the network, which it stores in tables. There are also several different protocols that enable a router to learn the topology of a network.
A router can do everything a switch or hub can, and has more functionality. The obvious difference is that it is capable of handling ...