Sunteți pe pagina 1din 29

The Big Little Book on IS-IS

By

U V Omos
Introduction
Chapter 1: What is IS-IS?
Chapter 2: IS-IS Structure
Chapter 3: IS-IS PDUs or Packet Types (ILS)
Chapter 4: IS-IS Supported Circuit Types
Chapter 5: Establishing IS-IS Routing Connectivity
Chapter 6: LSP Synchronisation
Chapter 7: IS-IS Timers and Intervals
Chapter 8: IS-IS Configuration
Chapter 9: IS-IS Convergence
Chapter 10: Route Redistribution
Chapter 11: Some Useful Troubleshooting Commands
Conclusion
Introduction
Hi there and welcome to the Big Little Book on IS-IS. This book was written
with the seasoned IT professional in mind, but with a view to aid fast recall
of information without having to lift a four hundred-page tome!

As well as condensing detailed technical facts, it is accompanied with


mnemonics as memory aids. Handy for those work or interview situations
where there’s just not enough time to filter out the pertinent information from
all that text.

A Brief Note On The Mnemonics (Memory Aids) Used In This Book

These are added as bracketed abbreviations in text headings.

For example in the following text the bracketed letters (GFDU) refer to the
first letter of the community attributes being referenced as shown below.

So remembering the letters GFDU serves as a memory aid to remember that


LSAs are Generated by routers, advertised by Flooding, calculated by the
Djijkstra algorithm and Update the algorithm’s database.

ALL CONFIGURATIONS IN THIS BOOK ARE FOR CISCO


ROUTERS

Configuration modes
Commands in this book are italicized and entered in any of the following
configuration modes.

Global: config t
Interface: interface FastEthernet0/0
Router: router isis 100

Take care and happy reading.

U V Omos
Chapter 1: What is IS-IS?
IS-IS stands for Intermediate System to Intermediate System. It is defined in
ISO/IEC 10589:2002 within the OSI (Open Systems Interconnection
reference design.

It was originally designed in the 1980 by Digital Equipment Corporation


(DEC) for usage with Connectionless Network Protocol (CLNP) but has
since been extended to IP. This book focuses on the Cisco implementation,
which supports CLNP, IPv4 and IPv6.

It is considerably used in service provider backbone networks as an IGP and


like OSPF is a link-state routing protocol. Another similarity is that it uses
the Dijkstra algorithm for best patch computation.

A key difference is that unlike OSPF, which is a layer 3 protocol IS-IS is a


layer 2 protocol.

Relevant Standards

ISO 10589
RFC 1195
RFC 3719
RFC 3787
RFC5308

Characteristics (AVIS)

It is an IGP (Interior Gateway Protocol) with the following main


characteristics.

Authentication of routing updates


Variable length subnet masks (VLSM)
Identical database in each area
Summarization
Link State PDU (LSP)

LSPs are used to communicate routing information. Each router uses these to
build an identical database that shows the autonomous system’s topology.

Shortest Path Tree

This is calculated from the identical link state database present in each area
and on each router. The router in question is placed at the root of the tree and
the shortest path to every other router and network is calculated from it.

Only the next hop is used in the forwarding process. It uses link state
advertisements (LSAs) almost immediately after receiving a route update
without waiting for the route to be in the routing table (unlike distance vector
protocols).

Multi-level Hierarchy

IS-IS uses a two-level hierarchy for its area routing. This ensures certain
routing information can be kept local and private to relevant areas.

Cost

The default IS-IS cost or metric is 10 but this can be changed using the ‘isis
metric’ command.

Benefits

Fast convergence
Floods updates without processing at each hop
Less traffic generated compared to distance vector protocols
Scales to very large networks due to the large hop count

Features

Load balancing
Neighbor State Machine
Chapter 2: IS-IS Structure
Link State Definition

Link state is the state of an interface e.g. it’s IP address, mask, types of
connected networks, routers on these networks, etc. in relation to its
neighboring routers.

Device Hierarchy

L1 inTRA area
L2 inTER area
L1-L2 BOTH

Device Communication

It uses the following communication paths between routers.

L1s communicate with each other ONLY


L2s communicate with each other ONLY
L1-L2s communicate with ALL routers

Shortest Path First Algorithm (GFDU)

The algorithm’s steps are as follows.

LSAs generated by router


LSAs advertised by flooding i.e. router receives LSUs
Short path calculated by the Dijkstra algorithm and database compiled
If any changes LS packets sent and Dijkstra algorithm updates
database

Interfaces and Router Demarcations

IS-IS routers do NOT have interfaces in more than one area. Therefore an
IS-IS router cannot be a member of more than one area.
Area Types and Numbering

There is no compulsory area number e.g. there is no requirement for an area


0.

IS-IS Addressing

An IS (intermediate system) is assigned an 8-20 octet NET or Network Entity


Title. This is synonymous with an OSPF area.

The NET is the NSAP (Network Service Access Point) address and is what
identifies the IS-IS instance running on an intermediate system. It has the
following parts.

Area address (variable length)


System ID 6 bytes
NSEL 1 byte

Note that an IS-IS instance can have multiple area addresses.


Chapter 3: IS-IS PDUs or Packet Types (ILS)
IS-IS uses L2 Ethernet 802.3/802.2 encapsulation (it doesn’t use Ethernet II
which is for IP).

It uses the following packet types to discover neighbours and build


adjacencies as well as communicate routing information and generate link
state databases.

IIHdiscover neighbours and maintain adjacencies


LSP distribute routing between nodes
SNP control LSP distribution and router LSDB synchronization

These PDUs have 256 byte Type, Length, Value (TLV) fields making it
very flexible in terms of field usage and requirements for new developments.

This is a key advantage of IS-IS over other link state dynamic routing
protocols such as OSPF.

These are described below.

IIH

IS-to-IS Hello PDUs are exchanged between IS neighbours on IS-IS enabled


circuits. These include the system ID, area addresses and neighbour identity
but further information can also be included. It has the following types.

Point-to-point
Level 1 LAN
Level 2 LAN

These are used during DIS election and have the following types.

ESH: ES > IS
ISH: IS > ES
IIH: IS > IS
LSP

These advertise an IS's neighbours and the destinations directly connected to


the IS. These are of the following types.

Level 1
Level 2

Level 1 LSPs generated by level 1 supporting ISs. Flooded throught the L1


area and all of these form the LSPDB (LSP database).

Level 2 LSPs generated by level 2 supporting ISs and are flooded throughout
the L2 subdomain. They form the L2 LSPDB.

LSPs within an area or subdomain have identical databases and will therefore
have identical connectivity maps.

They are identified using the following and are unique.

System ID of the IS that generated it


Pseudonode ID usually 0 except for psuedonode LSP
LSP number 0 – 255
sequence number increased on each LSP generation

SNP

Sequence number PDUs summarise one or more LSPs. The types are as
follows for L1 and L2.

These are of the following types.

Level 1 Complete
Level 2 Complete
Level 1 Partial
Level 2 Partial
Complete SNP or CSNP send LSPDB summary for given level
Partial SNP or PSNP send subset of LSPs for given level that IS has in
its LSPDB or needs to get

IS-IS Packet Headers (IPVSPVRM)

Each of these PDUs has an 8-byte header containing the following fields

Intra Domain Routing Protocol Discriminator


PDU Header Length
Version
System ID Length
PDU Type
Version2
Reserved
Max Areas
Chapter 4: IS-IS Supported Circuit Types
There are two types of IS-IS circuits as follows.

Point-to-point
Multiaccess

These are described further below.

Point-to-point Circuit

These form a direct adjacency between two IS devices. The adjacency can be
L1 – L1, L2 – L2 or L1 – L2.

The IS will send point-to-point IIHs on these circuits to discover the


neighbours ID, configured areas addresses and the supported levels.

Process can be summarized as follows.

IIHs sent
Adjacency formed
Per-level CSNP sent with complete LSPDB description
PSNP sent to acknowledged updated LSP receipt

Multiaccess Circuit

Supports two or more ISes on the same circuit. The adjacency can be L1 – L1
using Level 1 LAN IIHs, L2 – L2 using Level 1 LAN IIHs or L1 – L2.

ISs supporting L1 can be on the same circuit.

ISs on the same circuit supporting L1 must have the same area address.

ISs supporting L2 can be on the same circuit.


Chapter 5: Establishing IS-IS Routing Connectivity
ISs need to establish adjacencies in order to send and receive LSPs that can
then be added to their local LSPDBs. This is simple on point-to-point
networks as a single adjacency is required between the two devices on the
circuit.

Multiaccess networks present scaling issues due to the number of ISs that can
be present on a single circuit. IS-IS deals with this using a Designated
Intermediate System (DIS).

Why Have A DIS?

On multi-access circuits the total number of advertisements if all ISs


advertise would be N to the second power, causing scalability issues.

To counter these issues IS-IS elects a DIS which issues pseudonode LSPs to
ISs on the multicaccess circuit. All ISs including the DIS inform the
pseudonode of themselves using a neighbour advertisement in their LSPs and
do not advertise any of their neighbours on the circuit. This keeps the number
of total advertisements required down to a function of N – the number of ISs
on the circuit.

Only the DIS forwards LSPs to all of the other neighbours.

This ensures the efficient transmission of link state advertisements (LSAs)


across the network. It avoids the need to have n(n-1)/2 adjacencies.

The election uses the router’s priority as a means of determining who is the
DIS. The higher the number the more preferred.

Election Criteria

The election uses the following criteria in the following priority order.

Priority (0 – 127)
MAC address

Adjacencies

These occur after DIS election. Hellos have been exchanged and the routers
now start exchanging database description packets.
Default Metric

The default on each interface is 10 for active interfaces and 0 for passive
interfaces.

Pseudonode LSP Classification (SPLS)

System ID of DIS
Pseudonode ID (NON-ZERO to differentiate from a non-pseudonode)
LSP Number (0 – 255)
32-bit sequence number

The DIS also sends CSNPs on the circuit. Other ISs then carry out the
following activities for circuit efficiency and reliability.

Flood LSPs not present or newer than the CSNP’s LSP descriptions
Send PSNP to get updated LSPs in the CSNP (this for LSPs not in its
LSPDB or older than the CSNP’s LSP description)
Chapter 6: LSP Synchronisation

The Update Process

This is the synchronization of LSPDBs on each IS to be exactly the same so


that the IS can built a routing table from its own perspective.

This process operates at each level independently.

How are LSPs obtained?

LSPs can be generated locally or received from a neighbour on a circuit. In


the latter instance the LSP could have been generated by that neighbour or by
another IS.

IS-IS floods the relevant circuit with LSPs to communicate and determine the
current status of the network.

These LSPs can be either newer or older than the corresponding LSPDB LSP
in the recipient IS. Locally generated LSPs are always new. LSPs generated
by other ISs might be old or new.

The handling of these packets in either scenario is described below.

Newer LSP Flooding

These are handled differently depending on the circuit type.

Point-to-point

ISs keep flooding LSPs until the neighbour acknowledges receipt by sending
either a PSNP or the same/newer LSP.

Multiaccess
ISs only flood the newer LSP once on multi-access networks.

Older LSP Flooding

These are handled in the same manner regardless of the circuit type.

If the local LSPDB receives an LSP older than it has or a (partial or


complete) SNP describing an older LSP copy, this LSP is marked in the DB
and flooding on the LSP/SNPs circuit.

IS Handling of Received LSPs

Recipient ISs handle the received LSPs depending on their age in comparison
to the corresponding LSP in its LSPDB.

LSPDB Newer

If the receiving IS’s local LSPDB contains newer LSPs than those in the
CSNPs or if they are not in the CSNPs, these are reflooded to ensure all ISs
have them.

LSPDB Older

If the receiving IS’s LSP is older a PSNP is sent describing the LSP that
needs updating. The DIS then sends the requested LSPs.

Same Age

Regardless of circuit type, the IS ignores the LSP. The DIS CSNP is
effectively an implicit acknowledgement of the LSP’s receipt.
Chapter 7: IS-IS Timers and Intervals
IS-Generated Timers

These timers are configured on ISs and influence LSP dissemination. They
are as follows.

LSP Refresh Interval


Maximum LSP Lifetime

These are described further below.

LSP Refresh Interval

Number of seconds before LSPs are recreated and reflooded i.e. refreshed. It
can range from 0 – 65535 seconds.

Maximum LSP Lifetime

This is the lifetime of the LSP used by ISs to determine when an LSP can be
aged out.

Exponential Backoff Timers

These control SPF and Partial Route Calculations (PRC) and LSP generation.
They ensure that ISs respond dynamically to network and resource events i.e.
they slow down when the router CPU is being heavily tasked.

They are as follows.

PRC Interval
LSP Generation Interval
SPF Interval

These are described further below.


PRC Interval

This is the number of seconds between consecutive PRCs.

LSP Generation Interval

This is the number of seconds between new LSP creations on a router.

SPF Interval

This is the number of seconds between consecutive SPF calculations.

The backoff algorithm carries out the following step.

SPF/PRC/LSP generation triggered by event


An initial wait time determines when the SPF/PRC/LSP generation
should start
An incremental wait time then determines the interval between the
SPF/PRC/LSP generations
After two configured maximum wait-intervals the network returns to a
stable and steady state resuming its fast behavior and the wait-time
interval is resumed

IS-IS Hello Timers

Hello Interval
Hello Interval Minimum
Hello Multiplier
IS-IS Retransmit Interval
Chapter 8: IS-IS Configuration
Starting the Routing Protocol

Issue the following commands to make the router an IS.

router isis 100 ! 100 is the arbitrarily assigned number of the area-tag
net NETWORK-ENTITY-TITLE # (e.g. 49.0001.0000.0000.000b.001)
end

Note that an IS-IS instance can be created without a process-tag as shown


below

router isis
net 49.0001.0000.0000.000b.001

Confirm the status of this null routing instance with the following command.

show clns null protocol

IS-IS must also be applied to the relevant circuit interface as shown below for
the same area-tag of 100 configured under the routing instance.

interface FastEthernet0
ip address 192.168.1.1 255.255.255.0
ip router IS-IS 100
isis metric 5 level-1 | level-2
end

Check the current interface status using the following command.

show isis 100 database level-1 | level-2 | l1 | l2 | detail | lspid

DIS Prioritisation

A DIS can be configured using the following commands on the circuit’s


interface.

interface FastEthernet0
isis priority 5 level-1 | level-2
end

Its status can then be confirmed with the following command.

show clns interface FastEthernet0

Restricting L1 and L2

It might be necessary to ensure that a device is only acting as an L1 or L2


device. This can be done as follows.

interface FastEthernet0
is-type priority 5 level-1 | level-1-2 | level-2-only
end

Its status can then be confirmed with the following commands.

show isis topology


show isis * topology level-1 | level-2

Summarising Addresses

This is used to conserve backbone resources by limiting the number of LSAs


flooded into it.

router isis 100


net 49.0001.0000.0000.000b.001
summary-address X.X.X.X/XX level-1 | level-1-2 | level-2 tag X metric X
end

Confirm status with the following.

show isis database verbose


Default Route

router IS-IS 100


default-information originate
end

Confirm status with the following.

show ip route

Configuring SNMP MIBs for IS-IS

snmp-server host x.x.x.x

VRF Awareness

Add the VRF-specific configuration.

config t
ip cef
ip vrf
rd X

Put the relevant interface in the VRF.

interface FastEthernet0
ip vrf forwarding newvrf

Add this VRF to the IS-IS routing instance.

router isis 100


vrf newvrf
net 49.0001.0000.0000.000b.001
end
Chapter 9: IS-IS Convergence
Further steps can be taken to enhance the convergence speed on IS-IS
networks by reducing adjacencies and algorithm calculations.

Some of these steps are as follows.

Fixing the level of all level 1 routers using the is-type command
Enable new style TLVs using the metric-style wide command
The set-overload-bit command globally
Apply the no hello padding command globally

These are explained in a bit more detail below.

Fixing IS-Type

Fixing the level of an IS globally ensures that the device operates at a singe
level, reducing adjacencies, LDSBs as well as SPF & PRC calculations.

The is-type global command is as follows.

is-type level-1

This can also be done in the interface using the following command.

isis circuit-type

Wide Metric Style

The wide metric style allows for prefix tagging and is applied globally with
the following command.

metric-style wide

The fault narrow metric style uses old TLVs.


Set-Overload-Bit

The set-overload-bit command ensures the router informs other ISs not to
stop using it as an intermediate hop in their SPF calculations. It also gives the
router enough time to build its BGP and CEF tables before it is used as a
transit node.

No Hello Padding

The no hello padding global command reduces the IIH packet size. It is
applied as follows.

no hello padding
Chapter 10: Route Redistribution
Routes can be redistributed to an IS-IS instance from other IS-IS instances
and other routing protocols as shown below.

In the example below routes from the IS-IS instance null are redistributed
into IS-IS instance tagnew.

OSPF routes from VRF newvrf are redistributed into the IS-IS instance
tagnew.

The null route redistribution requires the set up of a route map.

router IS-IS tagnew


redistribute IS-IS null ip metric 10 route-map IS-ISmap
redistribute ospf 1 newvrf metric 1 metric-type external level-1-2

The route map configuration is show below.

route-map IS-IS map permit 10


match route-type level-2 level-1
set level level-2

This route map automatically changes level 1 and level 2 routes to level-2
routes.
Chapter 11: Some Useful Troubleshooting
Commands
A Note On MTU Mismatch

Before discussing the commands it is worth commenting on this item as this


is a classic item in terms of ISIS troubleshooting. The IIH PDUs have a
Padding TLV. IS-IS needed TLVs, as it wasn’t initially designed to carry IP
information. It has been extended to carry this information leading to more
TLVs being added to PDUs and therefore leading to big messages. This
necessitated the requirement for MTU discovery checks to ensure both sides
of a connection could handle a large packet sent as an ISIS PDU. So IIH
packets are padded using the Padding TLV to test the other side of the
connection can receive packets of a considerable size.

Troubleshooting From The Command Line

A few troubleshooting commands are listed below in which to tackle any IS-
IS routing issues.

These are listed in a in a somewhat sequential order but feel free to


implement in an order you consider suitable for your purposes.

Are the ISIS interfaces up?

show ip interface brief


show isis interface

Are the routers in the ISIS topology?

show isis 100 topology

Has an adjacency been formed?

show isis adjacency


show log | i ADJ

Are the correct routes in the global and ISIS routing tables?

show ip route isis


show isis route NET-ADDRESS

Is the LSP in the ISIS Database?

show isis database


show isis adj-log is SYSTEM-ID-OF-ROUTER
Conclusion
That’s it for now folks. Hopefully this has been a useful ‘reminder’ of some
key OSPF concepts and will continue to be useful to you as a serious
networking professional. We are constantly striving to enhance the Big Little
Book series so let us know if there are any topics you would like to see in
future editions of this book. That’s it for now, let us know if there’s anything
you would like added to the next edition of this book by sending an email to
info@gridlockaz.com.

Thanks for reading and wishing you all the best in your career pursuits.

Take care.

U V Omos

S-ar putea să vă placă și