0% found this document useful (0 votes)
18 views13 pages

ISIS Coneptual Part

The document provides an overview of the IS-IS (Intermediate System to Intermediate System) routing protocol, detailing its operational structure, including link-state reviews, adjacency states, and protocol data units (PDUs). It explains the hierarchical nature of IS-IS with Level 1 and Level 2 routers, their database management, and the process of forming adjacencies through Hello messages. Additionally, it covers the NSAP addressing format and the significance of the Designated Intermediate System (DIS) in reducing data flooding and facilitating database synchronization.

Uploaded by

qutbudin777
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views13 pages

ISIS Coneptual Part

The document provides an overview of the IS-IS (Intermediate System to Intermediate System) routing protocol, detailing its operational structure, including link-state reviews, adjacency states, and protocol data units (PDUs). It explains the hierarchical nature of IS-IS with Level 1 and Level 2 routers, their database management, and the process of forming adjacencies through Hello messages. Additionally, it covers the NSAP addressing format and the significance of the Designated Intermediate System (DIS) in reducing data flooding and facilitating database synchronization.

Uploaded by

qutbudin777
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 13

IS-IS Conceptual Part

Whole Story
Link-state Review
IS-IS Levels
Operation of IS-IS
Attached Bit
NSAP Addressing
IS-IS Adjacency States
Protocol Data Unit Types
DIS
TLV
Link-state Database
Database Integrity
SPF and path selection criteria

Whole Story
The International Standards Organization (ISO) calls a router an intermediate system. A host is referred
to as an end system by the ISO. Since routers connect hosts in the IP world, intermediate systems
connect end systems in an ISO network. IS-IS was originally designed to support the Connectionless
Network Protocol (CLNP) and was later adapted to support IP reachability. Both the IP and CLNP
information is carried within the payload of the IS-IS routing updates. The Juniper Networks
implementation of IS-IS supports only IP routing

Link-State Review (Router)


Once a link-state router starts operating on a network link, information associated with its logical
networks is added to its link-state database by the local router. Hello messages are then sent by the
router on all operational links to determine whether other routers are using the same protocol. If
additional routers are located, both attempt to form an adjacency with each other. The routers use this
adjacency to advertise summary database information to each other. This is not the actual database
information but is truly a summary of the data. Each router checks this summary list to verify that it has
the most up-to-date information. Should one of the routers require an information update, it sends a
request to its neighbor for a link-state update. The update includes the actual data contained in the link-
state database. This exchange process continues until both routers have identical link-state databases.
This common view of the link-state database forms the basis of the network topology. Each router uses
the Dijkstra Algorithm to process the database information into a path from the local router to each
remote destination. Every router uses the same algorithm to process its database; therefore, each
router must have consistent information to get proper results. This consistent database concept is a
central tenet of link-state protocols and allows the protocols to ensure a loop-free topology. Each router
then makes consistent forwarding decisions for user data packets. In this state—a sort of network
nirvana—no routing loops exist in the network. Ensuring the advertisement and consistency of link-state
updates as well as propagating these updates quickly remains the only barrier to preventing loops.
IS-IS Levels
ISIS has two levels. The ISO committee uses the term level to represent an arbitrary boundary or
grouping of routers. Each database within an IS-IS level must be identical. IS-IS routers exchange link-
state information with each other based on their level configuration—either Level 1 or Level 2.

1. Level – 1
2. Level – 2

Level 2
Two IS-IS routers form an adjacency and share database information when both ends of their common
link are configured for Level 2 irrespective of area value. Let’s take a look at Figure 7.2. All of the
interfaces on Riesling are within the defined Level 2 area. In addition, both Cabernet and Merlot have an
interface within that same Level 2 area. The dotted line represents the shared topology knowledge
within the Level 2 link-state databases on the routers. The area values are different on the routers
(49.0001 and 47.0005.80.8300), but the only requirement for a Level 2 adjacency is that each end of the
link reside within Level 2.

Level 1
The requirements for a Level 1 adjacency are a bit different. Two IS-IS routers form an adjacency when
each end of the common network link is configured for Level 1 and the IS-IS area value of each router is
identical. Figure 7.3 displays a Level 1 area. All interfaces on Shiraz and a single interface on Cabernet
and Merlot reside within Level 1. Cabernet, Merlot, and Shiraz all share an IS-IS area value of
47.0005.80.8300. This common area value allows adjacencies to form and updates to be exchanged. As
before, all interfaces bounded by the dotted line exchange link-state updates. When the common link
between Cabernet and Riesling is configured for Level 1, no IS-IS adjacency forms since the area values
of the two routers are different. Only a Level 2 adjacency can form between these two routers.

Tip
L1 / L2 router has separate database for each level like ABR in OSPF. Both Cabernet and Merlot have two
link-state databases. One database contains the Level 1 data while the other contains the Level 2
information. The Dijkstra Algorithm is calculated within each level database.
Operation of ISIS
1. An individual ISIS router can be one of the following.
a. Level-1 router --- L1
b. Level-2 router --- L2
c. Level-1 and Level-2 router L1/L2 Junos Default router
2. L1 routers contain IP routes for their specific level and maintain default route 0.0.0.0/0 toward
backbone network.
3. L2 routers are considered as backbone routes and have full knowledge of the network. It means
that routes in Level 1 are also present in Level 2.
4. In hierarchical network design, at least one router should be L1/L2 router.

Attached Bit (if data wants to send then use default gateway of l1/l2)
An L1/L2 router connected to another L2 router in a different area sets the attached bit in its L1 updates.
An L1 router that receives an update with the attached bit set assumes that the L1/L2 router has
reachability to the remainder of the network. The L1 router installs a 0.0.0.0 /0 default route locally that
points to the L1/L2 router as a next hop. Since all Level 1 routers have explicit knowledge of routes
within their area, the default route is used only to reach routes outside the Level 1 area.

NSAP Addressing

Network Entity Title is divided into three major parts. Remem imp
1. Area
a. AFI (Authority and Format Identifier)
b. IDI (Initial Domain Identifier)
c. DSP (Domain Specific Part)
2. System ID (network sap address)
3. N-SELECTOR

IS-IS uses the standard Network Service Access Point (NSAP) addressing as defined in ITU X.213. The
size of the NSAP address varies from 8 to 20 bytes in length. There are three major parts to the address
structure: area, system ID, and N-selector. The first part of the address indicates the IS-IS area value.
This field begins with the Authority and Format Indicator (AFI), is followed by the Initial Domain
Identifier, and finishes with the Domain-Specific Part (DSP). The AFI byte indicates the governing body
that administers the address space and assigns addresses. Networks often use 0x49 as their AFI, which
represents the private NSAP address space. The NSAP private addresses are analogous to the private IP
address space defined in RFC 1918. Your network requires a registered address only when
Connectionless Network Protocol (CLNP) routing(direction) is desired with another network. The JUNOS
software default does not route CLNP packets, so using private NSAP area addresses is perfectly fine.

IS-IS Adjacency States (remember)


Two routers must first agree to exchange information before actually exchanging that data. This
agreement to communicate is called an adjacency. The method for forming an adjacency is simple: two
connected routers exchange IS-IS Hello messages. There are six possible states for an IS-IS adjacency:

New
This state is seen when the IS-IS adjacency process is just beginning. Start events could include router
boot-up or initial configuration.

One-Way
Your IS-IS router transitions to this state after sending an IS-IS Hello PDU. In addition, any received hellos
do not contain the local router’s address as a neighbor.

Initializing
When a local router sees itself in a neighbor’s hello, it transitions to this state. This state shows that
bidirectional communications are established.

Up
This is a fully functioning state for IS-IS. An adjacency relationship is formed and the databases have
been exchanged.

Down
This represents a nonfunctioning adjacency. An IS-IS router moves to this state for one of several
reasons, including area mismatches, expiration of the hold time, and authentication failures.

Reject
Upon an authentication failure, an IS-IS router will transition between this state and the Down state.
FIGURE 7. 6
IS-IS startup sequence and Information Exchange
Router A and Router B are forming an adjacency and exchanging the information in their databases. The
specific steps of this process are:

1. IS-IS Hello messages are exchanged to form an adjacency.

2. Each router sends a Complete Sequence Number PDU (CSNP) to its peer. These contain a complete
summary listing of the link-state database, including sequence numbers and the age of each data
segment.

3. Router B determines that it is missing information from its database and sends a Partial Sequence
Number PDU (PSNP) to Router A.

4. Router A responds to this request with a link-state PDU (LSP) containing the requested information.

5. Router B issues either a PSNP (on a point-to-point link) or a CSNP (on a broadcast link) to inform
Router A that the advertised link-state PDU was received. This acknowledgement is a critical step
because it guarantees the reliable flooding of database information to all routers in the network.

TIP
Router issues a CSNP on a broadcast link for acknowledgement only when it’s the Designated
Intermediate System for that link.

Protocol Data Units


PDUs are same as packets in OSPF. The method of exchange is also same like in OSPF because both are
link-state protocols.
Firstly, Hello PDU is sent to peer then NEW state is reached.
Secondly, Hello PDU is received from peer and information of receiving peer is present in that hello,
bidirectional communication is reached and Initializing state is also reached.
Thirdly, CSNP PDU is sent in which whole summary of local link-state database is sent.
Fourthly, peer check and make a list of missing PDUs and send the list in PSNP PDU.
Fifthly, all missing PDUs are sent in LSP PDU. These steps are followed by both peers and when link-state
database is identical then UP state is reached.

Detail of PDU
We will discuss each PDU in detail. Each PDU sent has common header, let discuss it first.
Each PDU shares a common header, illustrated in Figure 7.7. The header consists of the following fields:

Protocol ID (1 octet): This field is set to a constant value of 0x83 and designates that the higher-level
data belongs to IS-IS.
Header Length (1 octet): This field indicates the total length, in octets, of the IS-IS headers. It includes
both the common IS-IS header and any PDU-specific headers that follow.
Version/Protocol ID Extension (1 octet): This field is set to a constant value of 0x01. The IS-IS
specification defines this field as an extension area for the Protocol ID data. The JUNOS software does
not implement this function.
ID Length (1 octet): This field is used to inform other systems of the system ID length. For backward
compatibility, the default length of 6 bytes is represented with the constant value of 0x00. The JUNOS
software does not use a larger ID size, so this field is set to a constant value of 0x00.
PDU Type (1 octet): This field designates the PDU carried after the common header. The first 3 bits are
set to 0. The remaining bit combinations include:

Level 1 LAN Hello (15)


Level 2 LAN Hello (16)
Point-to-Point Hello (17)
Level 1 link-state PDU (18)
Level 2 link-state PDU (20)
Level 1 Complete SNP (24)
Level 2 Complete SNP (25)
Level 1 Partial SNP (26)
Level 2 Partial SNP (27)

Version (1 octet): This field is set to a constant value of 0x01, the current IS-IS version.
Maximum Area Addresses (1 octet): This field is set to a constant value of 0x00. It informs other
systems how many area addresses are supported by the local router. A value of 0 means that no more
than three area addresses are assigned to this router.
Details of each PDU type follow the common header. The information within the PDUs is encoded in a
format called a triple (Type, Length, Value). IS-IS makes extensive uses of this format (often abbreviated
as TLV) to convey information within its messages

IS-IS LAN HELLO

L1 LAN Hello PDUs are multicast to the “All L1 ISs” address of 01:80:c2:00:00:14. L2 routers share a
separate multicast address “All L2 ISs” of 01:80:c2:00:00:15. Both LAN Hello PDUs share a common
packet format, as shown in Figure 7.8. The IS-IS LAN Hello PDU consists of the following fields:

Circuit Type (1 octet): The first 6 bits are set to 0. The remaining bits designate the level at which the
interface is operating: L1 (0x01), L2 (0x02), or L1/L2 (0x03). PDUs with a value of 0x00 in this field are
ignored.

L1 bit 7 6 5 4 3 2 1 0
0x01 0 0 0 0 0 0 0 1

L2 bit 7 6 5 4 3 2 1 0
0x02 0 0 0 0 0 0 1 0

L1/L2
bit 7 6 5 4 3 2 1 0
0x03 0 0 0 0 0 0 1 1

Source ID (6 octets): This field designates the sender of the IIH. The field is set to the 6-byte system ID of
the sending router.

Holding Time (2 octets): The value in this field represents the amount of time each neighboring router
should wait before terminating the adjacency after the last received IS-IS Hello PDU from this neighbor.
PDU Length (2 octets): The value in this field represents the total length of the IS-IS Hello PDU. The field
is set to a constant value of 1492 bytes (0x05D4).

Priority (1 octet): The first bit is set to 0. The remainder of the byte designates the value used for the
election of the DIS. The default value for the JUNOS software is 64.

LAN ID (7 octets): This field designates the ID of the current DIS on the broadcast circuit. The field is set
to the 6-byte system ID and 1-byte circuit ID of the DIS.

TLVs (Variable): This field contains information about the sending router, including the area address,
neighbor ID, authentication, and interface addressing.

Relevant portions of the output have been highlighted. You see the Circuit Type, Circuit ID, Hold Time,
and Priority fields. Shiraz is advertising a hold time of 27 seconds. This is the default value for the JUNOS
software on LAN interfaces unless the local router is the DIS. Hello PDUs are advertised every (hold
time / 3) seconds, so the default Hello timer is 9 seconds. Shiraz is also advertising a local DIS priority of
64, the JUNOS software default. This is the first tiebreaker for the election of the DIS.

DIS (Designated Intermediate System) like OSPF DR for broadcast use only
DIS helps to reduce the amount of data in the link-state database and aid in the processing of the
shortest path first (SPF) calculation.
DIS is elected only on a broadcast-capable link.
Reduce LSP Flooding, Facilitate Database Synchronization
DIS election steps are as follows.

DIS Selection Algorithm: -


1. Higher Priority (default is 64)
2. If tie on highest Priority, then Higher MAC is preferred and Higher DLCI on Frame Relay
3. Higher System ID is preferred.
4. The DIS election is preemptive (unlike OSPF). If a new router boots on the LAN with a higher
interface priority, the new router becomes the DIS. It purges the old pseudo-node LSP and
floods a new set of LSPs.

IS-IS Point-to-Point Hello PDU


IS-IS adjacencies on point-to-point links are also formed through the advertisement of Hello PDUs. On
broadcast links, separate PDUs have been defined for Level 1 and Level 2. Only a single Hello PDU is
defined for point-to-point links. The desire to be adjacent with a neighbor at L1, L2, or L1/L2 is encoded
in the Circuit Type field within the PDU itself.

The IS-IS point-to-point Hello PDU consists of the following fields:


Circuit Type (1 octet) The first 6 bits are set to 0. The remaining bits designate the level at which the
interface is operating: L1 (0x01), L2 (0x02), or L1/L2 (0x03). PDUs with a value of 0x00 in this field are
ignored.
Source ID (6 octets) This field designates the sender of the IIH. It is set to the 6-byte system ID of the
sending router.
Holding Time (2 octets) The value in this field represents the amount of time each neighboring router
should wait before terminating the adjacency after the last received IS-IS Hello PDU.
PDU Length (2 octets) The total length of the IS-IS Hello PDU is encoded in this field. The field is set to a
constant value of 1492 bytes (0x05D4).
Circuit ID (1 octet) This field designates the specific ID of the local router’s interface. All point-to-point
interfaces share a value of 0x01 within the JUNOS software.
TLVs (Variable) This field contains information about the sending router, including the area address,
authentication, and interface addressing.

Complete Sequence Number PDU


The Complete Sequence Number PDU (CSNP) contains a complete listing of the link-state PDUs in the
link-state database of the local router. The CSNP provides an identifier, a lifetime, a sequence number,
and a checksum for each piece of information in the database. A CSNP is sent periodically on both
broadcast and point-to-point links to maintain database correctness.
In addition, CSNPs are advertised between two neighbors during the formation of an adjacency. As with
the IS-IS LAN Hello PDUs, there are separate CSNPs for Level 1 and Level 2 used on all media types. Level
1 PDUs are multicast to the “All L1 ISs” address of 01:80:c2:00:00:14. Level 2 PDUs are multicast to the
“All L2 ISs” address of 01:80:c2:00:00:15.

Length (2 octets) The total length of the CSNP, in octets, is encoded in this field.
Source ID (7 octets) This field designates the sender of the CSNP. It is set to the 6-byte system ID and 1-
byte circuit ID (0x00) of the sending router.
Start LSP ID (8 octets) This field is set to a constant value of 0x0000.0000.0000.00-00. It designates the
smallest possible LSP ID value.
End LSP ID (8 octets) This field is set to a constant value of 0xFFFF.FFFF.FFFF.FF-FF. It designates the
largest possible LSP ID value.
TLVs (Variable) This field contains the summary database information from the local router.

Each segment of Riesling’s database contains the LSP ID, a sequence number, a lifetime value, and a
checksum. The combination of these data segments uniquely identifies each LSP in the network. As
Cabernet receives the CSNP, it checks the database entries against its own local link state database. If
some advertised information is missing, Cabernet requests the specific LSP details using a Partial
Sequence Number PDU. At this point, Cabernet’s local database matches the advertised LSP
information. The JUNOS software designates a match with the Matched database, matching sequence
numbers message.

Partial Sequence Number PDU


An IS-IS router uses the Partial Sequence Number PDU (PSNP) to request LSP information from a
neighbor. The PSNP is also used to explicitly acknowledge the receipt of a received LSP on a point-to-
point link. On a broadcast link, CSNPs are used as implicit acknowledgments. The PSNP has both a Level
1 and Level 2 variety, like the CSNP and IIH PDUs. On broadcast networks, Level 1 PSNPs are multicast to
the “All L1 ISs” address of 01:80:c2:00:00:14 and Level 2 PSNPs are multicast to the “All L2 ISs” address
of 01:80:c2:00:00:15.

A Partial Sequence Number PDU includes the following fields:


Length (2 octets) The total length of the PSNP, in octets, is encoded in this field.
Source ID (7 octets) This field designates the sender of the PSNP. It is set to the 6-byte system ID and 1-
byte circuit ID (0x00) of the sending router.
TLVs (Variable) This field contains the requested database information or the LSP being acknowledged.
As Cabernet compares the CSNP to its local database, it determines that the Riesling.00-00 LSP is
missing. Cabernet issues a PSNP for the missing LSP, which Riesling returns in a link-state PDU (which we
describe in the next section). The received LSP of Riesling.00-00 is installed in Cabernet’s database and
an acknowledgement PSNP is returned to Riesling.

Link-State PDU
Thus far, we’ve been talking about the link-state database from numerous perspectives. IS-IS routers
have formed adjacencies and compared their databases. Complete and Partial Sequence Number PDUs
have been sent between routers to synchronize the databases. We’ve failed to discuss the actual
database information to this point. Let’s now tackle this subject. A link-state PDU (LSP) contains
information about each router in the network and its connected interfaces. Metric and IS-IS neighbor
information is also included.

A link-state PDU includes the following fields:


Length (2 octets) The total length of the LSP is encoded in this field.
Remaining Lifetime (2 octets) This field lists the amount of time, in seconds, each router should
consider the LSP active. The JUNOS software default lifetime value is 1200 seconds.
LSP ID (8 octets) This field uniquely identifies the LSP throughout the network. The value is a
combination of the system ID (6 bytes), circuit ID (1 byte), and LSP Number value.
Sequence Number (4 octets) This field is set to the current version number of the LSP. The initial
number is 0x01 and is incremented each time the originating router updates the LSP.
Checksum (2 octets) This field contains the checksum value of the PDU fields after the Remaining
Lifetime.
Attributes (1 octet) This field contains multiple settings related to the state of the local router. The
specific bit positions are:
Bit 7 Partition bit. Set to 0 and not supported by the JUNOS software.
Bit 6 Attached bit for error metric. Set to 0 and not supported by the JUNOS software.
Bit 5 Attached bit for expense metric. Set to 0 and not supported by the JUNOS software.
Bit 4 Attached bit for delay metric. Set to 0 and not supported by the JUNOS software.
Bit 3 Attached bit for default metric. Used by an L2 router to advertise connectivity to the IS-IS backbone
into an L1 area.
Bit 2 Overload bit. Used to alert other IS-IS routers to not use the information advertised in this LSP.
Bits 0 and 1 Designates the capabilities of the router. An L1 router sets these to 0x01. An L1/L2 router or
L2 router sets these to 0x03.
TLVs (Variable) This field contains the summary database information from the local router. In the
“Partial Sequence Number PDU” section earlier in this chapter, we showed an IS-IS exchange between
Riesling and Cabernet. Cabernet requested an LSP from Riesling using a PSNP and Riesling responded.
The actual LSP information was removed from the earlier capture and is included here:
Link-state Database

Database Integrity
Each router in the IS-IS network maintains a complete link-state database for each of its configured
levels. We can view all database entries in the network by using the show isis database command.

The advertised LSPs in each level must be identical on each router. Each LSP in the database is uniquely
identified by its 8-byte LSP ID, which contains the system ID, circuit ID, and LSP number fields. New
versions of each LSP begin with a sequence number of 0x00000001 and count up to a maximum value of
0xffffffff. If an IS-IS router receives an LSP with a known LSP ID and an updated sequence number, it
assumes that the received LSP is more up-to-date than the current LSP and installs it in the database.
To maintain an accurate link-state database, LSPs have a defined lifetime, during which they are
considered active and usable. The LSP header contains a configurable remaining lifetime field, which
counts down to a value of 0. By default, the JUNOS software sets the beginning lifetime of all LSPs to
1200 seconds (20 minutes). The originating router is responsible for re-flooding its own LSP before the
remaining lifetime reaches 0 seconds. The JUNOS software accomplishes this task when the lifetime
reaches approximately 317 seconds.

Shortest Path First Algorithm


Each IS-IS router translates the information in the database into usable routes by implementing the
Shortest Path First (SPF) algorithm. This computation is performed separately within each IS-IS level, and
the results are compiled together and presented to the routing table on the router. The algorithm
locates the metrically shortest path to each unique destination in the network. On occasion, the result of
the calculation encounters multiple paths to the same destination learned through different means. To
decide which path to use, the protocol has some tie-breaking rules to follow. The order of precedence
for using a route is: preferences are

1. Level 1 intra-area routes with an internal metric


2. Level 1 external routes with an internal metric
3. Level 2 intra-area routes with an internal metric
4. Level 2 external routes with an internal metric
5. Inter-area routes (Level 1 to Level 2) with an internal metric
6. Inter-area external routes (Level 1 to Level 2) with an internal metric
7. Inter-area routes (Level 2 to Level 1) with an internal metric
8. Inter-area external routes (Level 2 to Level 1) with an internal metric
9. Level 1 external routes with an external metric
10. Level 2 external routes with an external metric
11. Inter-area external routes (Level 1 to Level 2) with an external metric
12. Inter-area external routes (Level 2 to Level 1) with an external metric

Check three-way handshake on ISIS point to point link

Technical difference between ISIS and OSPF L2= BACKBONE AREA L1= none back area L1, info in tlv
in isis and info in lsa in ospf, packet in ospf, pdu in isis
The issue arises with SPF scalability. In OSPF, node reachability information and NLRI are advertise in
same LSA. When there is a change in NLRI (change of routes) happen in OSPF, SPF is run on whole node
which takes time. But in ISIS, node reachability is advertised in different TLV and NLRI is advertised in
different TLV. So when there is a change in NLRI, SPF is run only on that specific TLV not on the whole
node. It takes less time. Main purpose is looping avoidance that is why structure.

UP/DOWN Bit (bit 7 in Link state PDU)


If two L1/L2 routers exist in a scenario connecting same L1 area. L1 routers in that area will select one
L1/L2 router as a next hop for default route with less metric. But it is possible that for a particular route
behind the L1/L2 router, the other L1/L2 router provide best path. But due to less metric for default
route, All L1 router selected the first one L1/L2 router.
We resolve this issue by leaking that particular route from that L1/L2 router which has best path even it
has higher metric for default route. Now the issue comes here. When route is leaked in L1 area, all L1
routers will advertise this route to first L1/L2 router from where we have not leaked this route. If this
L1/L2 router receives this route, it will advertise this route in Level 2 which will be sent back to Level 1
through second L1/L2 router who has already leaked this route. So now two flavors are present on
second L1/L2 router. This router will select the route sent by first L1/L2 router as due to less metric.
Here loop will form. To avoid loop, Second router sets UP/DOWN bit in link state PDU of leaked route so
that it informs all L1 routers in Level 1 that don’t re-advertise this route to first L1/L2 router.

You might also like