Routing – How does IS-IS carry IP routes

is-islayer2layer3osirouting

IS-IS runs natively on layer 2 of the OSI reference model. How will the routing be done in that?

My doubt is that layer 3 has the ability to do the routing. But, ISIS does not run in layer 3 rather it natively runs in layer-2. In that, how does the IS-IS perform routing in layer 2 of the OSI model?

Best Answer

ISIS works quite differently than most of the protocols you know. In the original OSI networking, ISIS would make adjacencies with it's neighbors, and tell them about the adresses of any ES it knows. IS means intermediate system, so besically a router. ES means end system, so any host. ISIS has different logic with different levels of routing. The levels used in ISIS are*:

  • Level 1: Exchange routing information with neighbors in the same area.
  • Level 2: Exchange routing information with neighbors in other areas (often refered to as the backbone).

Basically, the logic is as follows: For level 1: flood all the connected and redistributed routes you know to all the level 1 neighbors in this area. Set default route to any routers with level 2 capability you know. For level 2: Import all routes from level 1 routers you know, flood to all level 2 neighbors in any area. (Please note that you need routers that are both level 1 and 2 to make the translations)

Every router floods any packets they receive to their neighbors according to those two rules. The information in these packets are in the format Type,Length,Value (TLV). Using TLV's means the following:

  • If you want to add a new protocol, say IPv6, you just define a new TLV.
  • If one of the routers doesn't know the Type, it can skip this value (by just looking Length ahead in the packet) and still work as expected.
  • If one router doesn't know about this Type, it can still forward on the information to other routers.

ISIS, just like OSPF, runs a Dijkstra Algorithm to find the shortest path. All information for this algorithm is contained in the TLV's. L2 Communication with neighbors is done in two ways: -When connected to a shared segment, use the Layer 2 protocol of that segment to communicate. This is done to be able to traverse switches that might not be able to speak the OSI layer 2 protocol CLNS. -When connected to a point to point network, communication on Layer 2 is CLNS.

This doesn't mean that there is no L3 communication. ISIS routers still need a layer 3 address. Since we are talking OSI, and not IP, the address is slightly different. In this case, the address is called a Network Entity Title (NET), which is one address for the entire system (so not one per interface). The NET has many forms, but for most ISIS adjacencies, works as follows: 49.<4 char area>.<12 char system identifier>.00. It doesn't really matter what you use as identifier, but say we have router 192.0.2.5 in area 52, we could make the NET 49.0052.1920.0000.2005.00 Since the addresses are in HEX you prefer 49.0052.0000.B00B.0000.00 (The addresses are hexadecimal).

*) There are other levels in OSI routing, but those aren't significant for the current operation of ISIS

A short illustration of routing

                                       <-----+192.168.1.0/24         <-----+192.168.1.0/24                                     
      Default route +------>           192.168.2.0/24+----->         192.168.2.0/24+----->      <------+  Default route        

              +-------------+          +-------------------+         +-------------------+      +---------------+              
              |             |          |                   |         |                   |      |               |              
192.168.1.0/24| L1 router   | L1       |   L1/L2 router    |   L2    |   L1/L2 router    |  L1  |   L1 router   |192.168.2.0/24
              |   Area 1    +----------+      Area 1       +---------+      Area 2       +------+     Area 2    |              
              |             |          |                   |         |                   |      |               |              
              +-------------+          +-------------------+         +-------------------+      +---------------+              
Related Topic