A router is a computer whose software and hardware are designed to move data between computer networks. Routers make sure traffic between computers goes where it needs to go. They do this by choosing the shortest path between the computers using a complicated system of rules called routing protocols. Routers generally contain a specialized operating system, RAM, NVRAM, flash memory, and one or more processors, as well as two or more network interfaces. They come in a variety of sizes from something you could hold in your hand to something too large for one person to lift.