What Is Routing?

Routing is the process of selecting and defining paths for IP-packet traffic within or between networks as well as the process of managing network traffic overall.

Why is routing so important?

A large autonomous network or the internet may present thousands of possible routes between destinations. As networks grow in scale to support mission-critical uses, routing is becoming more important and more complex.

Visibility into network transmission paths for internal and external traffic can help admins identify sources of latency and provide ways to resolve it.

What are switches and routers?

Switches are devices that connect and can help to secure computers, printers, servers, and other devices to networks in homes or organizations.

Routers connect networks to other networks and act as dispatchers. They analyze data to be sent across networks, identify where it needs to go, choose the best routes for it, and send it on its way. Routers connect organizations to the outside world and can help to protect information from outside security threats.

While switches and routers differ in several other ways, a key difference is how they identify end devices. A Layer 2 switch uniquely identifies a device by its MAC address. A Layer 3 router uniquely identifies a device by a network-assigned IP address.

What is Ethernet?

Ethernet technology provides the routing rules that enable network-connected devices to talk to, and not over, one another.

If two or more connected devices on a network try to transmit data packets at the same time, a packet collision occurs. Ethernet was designed to solve the problem of packet collision.

It provides network devices with a set of rules that essentially says, "Make sure no one else is talking before you talk. If you hear someone talking while you're talking, stop, listen, and wait for the talking to end before you talk again."

Steps in the routing process

  • The routing process starts when software on a host device uses a packet's contents, destination, or purpose to select a possible route from a routing table. A routing table is a repository of all the routes to all the destinations in use by a network.
  • Routing tables can be created manually and "learned" by software as it observes network traffic, or they can be built according to routing protocols.
  • A simple print job may be transmitted using static routing, where the host plugs in a previously used route. Dynamic routing allows a packet to be routed contextually, according to network conditions or factors such as reliability, performance, and security requirements.
  • Every pathway segment in the network has a metric assigned to it that's based on such factors. These metrics are shared with hosts and other nodes to be stored in routing tables and used for path selection.
  • A node is any device, such as a switch or router, that is connected to a network. A host is a type of node, such as a computer, that has a network address, the ability to permit access to a network, and the ability to participate in application-level functions.

Routing methods by network size

Small intra-domain networks

Transmissions within small, self-contained networks can use static routing, which relies on tables built manually or remembered over time by host devices.


Large intra-domain networks

Static routing is not feasible for larger networks. Such networks may have complex topologies and multiple subnetworks and undergo continual changes, such as addition and removal of endpoints and applications. Dynamic routing, which is based on protocols that incorporate updated network information and pathway metrics, keeps itself up-to-date automatically.

Dynamic routing within a large network can use either:

  • A distance-vector protocol, where pathways are informed by distance metrics that are provided by nodes in real time
  • A link-state protocol, where each node creates a tree graph-style map that defines pathways from itself to any other node

Both protocols have limitations. Distance-vector routing may not perform as well in a large network as in a smaller one, because of the many segments between nodes. As for link-state algorithms, they can require significant compute resources to compile. For these instances, path-vector routing, described below, is an alternative solution.


Inter-domain networks

Transmissions between domains employ the path-vector routing protocol, which is a modified version of distance-vector routing. The difference is that path-vector routing designates one node to stand in for numerous other nodes for the purposes of routing. This path-vector information allows distance-vector routing to perform more rapidly and flexibly.

Routing methods by network type

Local-area network (LAN)

LANs are commonly used as small business networks or as subnetworks within a larger network. Purely local transmission routes are stored in static routing tables, whereas transmissions that exit the local network to move through the internet or to another subnetwork use dynamic protocols.


Wide-area network (WAN)

WANs are usually deployed by large enterprises, which means WANs are likely to involve multiple subnetworks and advanced services such as private- or hybrid-cloud deployments and private 5G networks.

Segment routing is a technique that's widely used by enterprises that need their IP networks to be efficient, scalable, and reliable. The technique is also able to address the requirements of 5G, the Internet of Things (IoT), and service virtualization. Segment routing routes according to the instructions and path information that are stored within a packet's header.


Software-defined network (SDN)

Software-defined networking offers numerous benefits, such as centralized provisioning, easy scalability, and the ability to repurpose existing hardware. It also provides visibility into network traffic and the ability to control that traffic through definition and adjustment of routing pathways.

For example, an SDN can use software-defined routing to quickly reconfigure routing tables or packet headers for anticipated spikes and dips in traffic, or new traffic patterns based on new applications or deployments.