I’ve been going over some of the basics behind the OSI protocols, it’s finally time to look at the operation of IS-IS, and compare it to OSPF
The IS-IS protocol uses four types of packets:
- Link State Packets (LSP) - distributes the link state information
- Hello PDUs - For adjacencies
- Partial Sequence Number (PSNP) - acknowledges and requests link state information
- Complete Sequence Number PDU (CSNP) - distributes the whole link state database
Like OSPF, Hello packets are exchanged by IS boxes. However, rather than defining several network types (NBMA, Point-to-Point, etc), only two types are used:
- Broadcast - for local area networks, ie “Broadcast, Multiple Access”
- Point-to-Point - everything else
That it doesn’t support something like Frame-relay Non Broadcast Multiple Access (NBMA) is interesting, meaning those networks should be treated as a series of Point-to-point links.
Hello packets come in one of three flavours - ES->IS, IS->ES, and IS->IS. The latter is all we’re interested in, and is called IIH
I mentioned earlier that level 1 and level 2 areas exist. Adjacencies are formed for each area, that is, two neighbouring routers acting as both level 1 and 2 routers will form two adjacencies, and have two sets of tables.
Specific L2 PDUs are used for the hello packets, as opposed to multicast IP packets under OSPF. Adjacencies are formed with all routers on a broadcast network, not just the designated router (more on that later). Remember OSPF makes a distinction between neighbours and adjacencies, the former being a “yes I know you’re there” type relationship, the latter being a selected neighbour that routing information is exchanged with. In broadcast networks, there are separate types of IIH PDUs for each level containing the area, in point-to-point networks the PDU is the same with both the area and level inside.
L1 Adjacencies will only be formed between two L1 routers in the same area.
L2 Adjacencies will form between any L2 routers, be them in the same area or another.
Remembering that a router configured as an L1/2 router acts as two virtual routers (an L1 router and an L2 router), two L1/2 routers in different areas will only form an L2 adjacency. Likewise, two L1/2 routers in the same area form two adjacencies.
Hellos get sent ever 10 seconds, with the dead time being 30 seconds.
The Link State Packets that carry the network information use type length values (TLV) fields to carry information rather than predefined fields in OSPF (ie it’s closer to BGP in this sense). Information carried in the LSP is:
- PDU type and length
- LSP id and sequence number
- remaining lifetime
- neighbouring IS TLV
- neighbouring ES TLV
- authentication information TLV
- attached IP subnets TLV (for integrated IS-IS)
Except for the formatting and stuff associated with OSI (ie ES information), this is similar to OSPF.
A note about the sequence numbers, a router initially starts out at 1, but once it hears a higher number, it starts using that. The lifetime starts out at 1200 seconds (20 minutes), and counts down. However, the refresh interval is 900 seconds (15 minutes).
Like OSPF, a designated router, called a Designated IS (DIS) is elected for a broadcast network. However, there is no backup IS. The router with the highest priority is chosen, with highest MAC address being used as the tie breaker (like OSPF). IS-IS refers to this as a pseudonode, from a graphing perspective, it represents all the other routers. Remember that all routers still establish adjacencies even though there is a DR.
OSPF uses cost as a metric, and this is the same in IS-IS. However, delay, expense, and error can also be used.
Link state protocols require that all nodes in an area have synchronized databases, which is where CSNP and PSNP come in, collectively refered to as SNPs.
Next time I’ll look at the SNPs in more detail, and try to capture debugs to show the startup procedure in more depth.
I found a NANOG presentation giving an interesting comparison of OSPF and IS-IS. Adapted from this paper is a more complete comparison and explanation called Reference: IS-IS vs OSPF




No user commented in " Inside IS-IS "
Follow-up comment rss or Leave a TrackbackLeave A Reply