If you’ve been around the networking block, you’ve probably heard a lot more about OSPF (Open Shortest Path First) or even EIGRP (Enhanced Interior Gateway Routing Protocol). But IS-IS? That one tends to fly under the radar, especially in enterprise environments. However, when it comes to large-scale service provider networks or extremely scalable, stable systems, IS-IS is often the secret sauce behind the scenes.
At its core, IS-IS is a link-state routing protocol, just like OSPF. That means it builds a complete picture of the network topology using information shared by its peers, and then it uses Dijkstra’s algorithm to compute the shortest path to each destination.
But here’s where things get interesting: IS-IS wasn’t originally designed for IP.
IS-IS was created in the 1980s by the ISO (International Organization for Standardization) for use with a protocol suite called CLNS (Connectionless Network Service). Think of CLNS like a sibling to IP, only one that never really took off.
But the networking world saw value in IS-IS, especially its scalability & efficiency. So, instead of throwing it away, we extended it to support IP routing. That’s why you’ll often hear it referred to as “integrated IS-IS” because it integrates support for both CLNS and IP.
At first glance, IS-IS and OSPF seem pretty similar. Both are interior gateway protocols (IGPs). Both use Dijkstra’s shortest path first (SPF) algorithm. And both rely on link-state advertisements to build a network map. But dig a little deeper, and the differences start to shine.
Encapsulation
This makes IS-IS more flexible in environments where IP may not be configured yet. It also means that IS-IS is less susceptible to IP-layer attacks, since it doesn’t rely on IP to operate.
Network Hierarchy
Routers can be:
Protocol Design
OSPF needed an entirely new version (OSPFv3) for IPv6. IS-IS? It just got a simple extension.
Alright, let’s walk through how IS-IS functions, step by step.
Step 1: Discover Neighbors
Routers send out Hello packets, called IS-IS Hello PDUs (Protocol Data Units), to discover neighbors on each link. These PDUs are sent directly over the data link laye, so no IP required.
Step 2: Build Adjacencies
Once two routers see each other’s Hello PDUs and agree on parameters (like system ID and area), they form an adjacency. There are different types of adjacencies based on level (like Level 1 or Level 2). Routers will only form adjacencies if they operate at compatible levels.
Step 3: Exchange Link-State Information
Each router builds a link-state database by exchanging LSPs (Link State PDUs) with its neighbors. These LSPs contain info about:
This info floods throughout the network, allowing each router to see the full topology.
Step 4: Calculate Best Paths
Once each router has a complete view of the network, it runs the SPF algorithm to compute the shortest path to each destination. The result? A routing table that tells the router exactly where to send packets.
Let’s break down some of the major building blocks of IS-IS:
System ID
Every router in IS-IS has a unique System ID and it is usually based on a loopback address or MAC address. It’s 6 bytes long and identifies the router within an area.
NET (Network Entity Title)
Think of this like a combination of area & router ID. A NET looks like this:
IS Types
PDUs
There are several types of PDUs in IS-IS:
Most enterprises don’t run IS-IS, they go with OSPF. But IS-IS is extremely popular in large-scale service provider networks. Why?
IS-IS uses a 6-bit metric field by default, which supports values from 0 to 63. But in most modern deployments, we use wide metrics, which support much larger values (up to 16 million+). This allows for more granular path selection based on bandwidth, delay, or other factors.
There are no default metric values based on bandwidth like in OSPF. Instead, you must manually configure interface metrics. The SPF algorithm then uses these metrics to select the best path.
One of the coolest things about IS-IS is how it handles multiple protocol families. You don’t need a new version of IS-IS to support IPv6. Instead, you just need new TLVs (Type-Length-Values) to carry IPv6 info alongside IPv4.
This means you can carry both IPv4 and IPv6 routes in the same protocol instance which makes it super convenient for dual-stack environments.
You bet. Even in the age of EVPN, VXLAN, and SDN controllers, IS-IS continues to provide a rock-solid foundation for underlay routing.
Many data centers are embracing IS-IS for leaf-spine architectures because:
Plus, its TLV structure makes it easy to integrate with modern technologies & services.
No protocol is perfect, and IS-IS has its quirks.
Here’s a quick example to get your feet wet:
It’s that simple. You define the NET, assign the interfaces, and you’re off to the races.
Absolutely. Even if you’re not working for a service provider, understanding IS-IS gives you a deeper perspective on how routing works beyond just IP. It sharpens your knowledge of Layer 2-to-Layer 3 transitions and forces you to think about network architecture in a new way.
Plus, if you’re aiming for roles in large networks, data centers, or cloud-scale operations, IS-IS might be the routing protocol that defines your future. So don’t let the name scare you off. Intermediate System-to-Intermediate System might sound like a mouthful, but once you get past the acronym soup, what you’ll find is a clean, powerful, and elegant protocol that’s more relevant today than ever.