Sunteți pe pagina 1din 7

A Comparison Between Two

Routing Protocol s: OSPF and IS-IS


Radia Perlman
his article compares the two routing protocols Open Shortest Path First
(OSPF) [ 11 and Intermediate System-to-Intermediate System (IS-IS) [2]. AI-
though IS-IS was originally developed for routing Open Systems Interconnec-
tion (OSI) traffic, it is also capable of Routing Internet Protocol (RIP) [3] traffk. OSPF
is only capable of RI P traffic. We compare the two protocols solely in terms of their
ability to route IP.
Some of the differences are interesting, but have little practical consequence. Others
clearly favor one protocol or the other. The implications of other differences are not as
clear, and depend on the particular usage. In these areas, further analysis would be helpful.
A routing protocol is one component ofa network layer pro-
tocol. Other components include the definition of network
la!w addresses. packet headers, mapping of network layer ad-
dresses to data link addresses, and handshaking between
endnodes and routers. I t is usually possible to change one as-
pect of the network layer without affecting other compo-
nents.
For many years, Internet has been using the RI P [ 4] for rout-
ing IP. OSPF and IS-IS were both proposed as replacement
protocols for RIP. Replacing RI P with either OSPF or IS-IS
will not affect other portions of the Internet suites network
layer, such as the Address Resolution Protocol (ARP) [ 5 ] .
OSPF and IS-IS were both designed to support routing in a
network layer protocol with datagram service. OSPF was de-
signed for IP, the network layer protocol in the Transmission
Control Protocol/Internet Protocol (TCP/IP) protocol suite.
IS-IS was originally designed for Connectionless Network
Layer Protocol (CLNP) [ 6] , the datagram network layer proto-
col in the International Organization for Standardization
(ISO) suite. It can, however, support the I P network layer as
well as the I S0 network layer. The version of IS-IS with fields
specified for IP, is documented in [7]. IS-IS, with the I P specif-
ic fields defined, is sometimes referred to as Integrated Rout-
ing. In this article, we will refer to it simply as IS-IS, because we
do not want to confuse the OSPF vs. IS-IS issue by bringing in
the issue of running multiple protocols simultaneously.
There has been much publicity given to the controversy
within the I P community regarding the OSPF and IS-IS proto-
cols. There are actually two orthogonal issues. One is whether
either OSPF or IS-IS is significantly superior as a routing pro-
tocol. The other is more correctly termed integrated routing
vs. Ships in the Night. Integrated routing is the use of a single
routing protocol (in this case, IS-IS) to support multiple net-
work layer protocols. The alternative strategy is Ships in the
Night, in which each router implements and runs a separate
routing protocol for each network layer protocol that it sup-
ports.
Usually, comparisons between OSPF and IS-IS are con-
fused by combining the two issues. In this article, we will only
discuss their merits as routing algorithms. In order to make
them comparable, we discuss them solely as routing algorithms
for IP. Issues such as I S0 vs. I P are irrelevant to this article, be-
cause when IS-IS is used for routing IP, the routers are nor-
mal IP routers. They route to links rather than end systems (or
in I P terminology, they route to IP subnets). They use ARP
to find the data link address of the destination on the final link.
Examples of issues that are solely I S0 vs. I P and have nothing
to do with the merits of OSPF and IS-IS as routing algonthms
18 September 199 1 - IEEE Network Magazine
are:
Size of network layer addresses in I S0 vs. I P
End System-to-Intermediate System (ES-IS) [ 8] vs. ARP
(protocols for mapping network layer to data link layer ad-
dresses in I S0 and IP)
Routing to end systems (as in 1.50) vs. routing to links (as in
IP)
Examples of issues that are solely integrated routing vs.
Ships in the Night are:
Cost of implementing, running, and managing multiple
routing protocols
Flexibility of being able to make the configuration of pa-
rameters protocol dependent
The one case in which the integrated routing vs. Ships in
the Night argument has relevance to the IS-IS vs. OSPF de-
bate is if the advantages of integrated routing are considered
important. Then, IS-IS is the only choice, since OSPF cannot
support both I P and ISO. If the advantages of Ships in the
Night are considered important, it does not affect the choice
between OSPF and IS-IS. The Ships in the Night strategy can
be supported using IS-IS. It is accomplished by running multi-
ple instances of IS-IS in parallel.
The remainder of the article compares OSPF and IS-IS as
routing protocols when both are used solely for RIP.
Common Characteristics
OSPF and IS-IS are more similar than they are different.
There are two types of routing protocols in use in networks
today. One type is known as distance vector routing. The
other is known as link state routing. Both OSPF and IS-IS are
link-state routing protocols. The first widely deployed link-
state routing protocol was designed for the Advanced Research
Projects Agency Network (ARPANET) [9].
In a link-state routing protocol, each router is responsible
for determining the identity of its neighbors and constructing a
special packet known as a Link State Packet (LSP). The LSP
lists the nodes neighbors, broadcasts the LSP to all routers,
stores the most recently generated LSP from each router, and
computes routes to all the destinations based on the stored LSP
database.
Both OSPF and IS-IS support hierarchical routing.
Routers can only support a limited size network. If a network
grows beyond the size that can be practically supported by the
routers, the common technique is to add hierarchy to the net-
work. That means the network is partitioned into pieces known
as areas. Level 1 routing concerns itselfwith all the individu-
0890-8044/9 1 /0009-00 18 $0 1 .OO 199 1 IEEE
DL Header IP Header
Fig. 1. OSPF and IS-IS packets.
a1nodes and links within an area. Level 2 routing concerns it-
self with routing between areas, but not with the detailed Struc-
ture inside the areas.
OSPF terminology is slightly different from IS-IS terminol-
ogy. Level 2 is known as backbone in OSPF, level 1 routing
is called intra-area routing, and LSPs are called Link State
Advertisements (LSAs). In this article, wewill use IS-IS termi-
nology.
The remainder of this article discusses the differences be-
tween IS-IS and OSPF.
Packet Encoding Issues
Multiplexing Layer
OSPF runs on top of IP. That means an OSPF packet is
transmitted with an IP data packet header. In contrast, an IS-IS
packet is transmitted directly on top of the data link layer. Be-
cause the Berkeley Unix implementation performs the data
link differentiation of packet type in the kernel, the IS-IS en-
coding would force modifications of the kernel, in order to rec-
ognize another type of packet.
It is not necessarily a good idea, however, to design proto-
cols around the artifacts of a particular implementation. Dif-
ferentiation of packets at a low level can be important. Certain
routing protocol packets are high priority and must not be
dropped. If the kernel is incapable of distinguishing a routing
control packet from a data packet, it will be incapable of ensur-
ing priority service for the critical control traffic.
Avoiding Large Control Packets
Both OSPF and IS-IS were designed to avoid the need for
control packets to be so large that they require conventional
network layer fragmentation and reassembly. In both proto-
cols, the functionality of a large packet is expressed in several
smaller packets, each of which can be processed independent-
ly. With traditional network layer fragmentation and reassem-
bly, all fragments must amve in order for a packet to be pro-
cessed. The special mechanisms in both protocols give the
following advantages:
LSPs are propagated more quickly. A fragment can be for-
warded as soon as it arrives. If instead, a large LSP were
fragmented and reassembled at each hop, the entire LSP
would need to be reassembled before it could be forward-
ed.
Less bandwidth is required. With the special mechanisms in
the two protocols if a single fragment is lost, only that frag-
ment needs to be retransmitted. With traditional network
layer fragmentation and reassembly if a single fragment is
lost, all fragments must be retransmitted.
It is more robust. If there were a very large packet and a very
lossy link, the probability of all fragments succeeding would
be very low.
The mechanisms used by the two protocols for avoiding
large control packets are very different. There are two types of
packets that can become large enough for fragmentation to be
OSPF Packet
an issue. The first type of packet is an LSP. The second type is
called a Complete Sequence Numbers Packet (CSNP) in IS-IS,
and is roughly analogous to the Database Description (DD)
packet in OSPF.
LSPs
In IS-IS, LSPs lists all the neighbors of a node. In case a node
has so many neighbors the information in the LSP cannot fit
into a single packet, IS-IS fragments its LSP with a router, R.
The source address of an LSP is the routers I D concatenated
with an additional octet that indicates the fragment number.
Thus, if R has an LSP that requires fragmentation into six piec-
es, R will generate LSPs R.0, R.1, R.2, R.3, R.4, and R.5. For
the purpose of propagation of the LSP fragments, each frag-
ment is independently propagated and has an independent se-
quence number. If a few links change, R only needs to reissue
the fragments with out-of-data information.
One mechanism OSPF uses to avoid large LSPs is to have
router R report different types of information in different
LSPs. Even with this separation, certain types of LSPs are like-
ly to get very large. For the types of LSPs most likely to get
large, OSPF issues a separate LSP for each destination. As a re-
sult, a single router R might generate hundreds or even thou-
sands of LSPs. Many OSRF LSPs can be packaged together
into a single packet when being transmitted, but each still has a
separate LSP header.
The encoding chosen for OSPF is memory intensive, since
each LSP requires certain overhead information, such as se-
quence number, age, and I D of router that generated the infor-
mation. In OSPF, the types of neighbor information for which
a router might need to report many destinations are reported in
a type of LSP that can hold only a single destination. In con-
trast, in IS-IS, as many destinations as can fit are camed in a
single LSP, with its own overhead information. In IS-IS, as-
suming a packet size of 1,000 octets, an LSP can carry on the
order of 100 destinations. In OSPF, each ofthe destinations re-
quires its own overhead information, so the storage and band-
width required is several times greater.
Let us compare, for instance, the amount of storage re-
quired per IP destination reachable outside an Autonomous
System (AS). In IS-IS, it requires 12 octets per external IP desti-
nation. In OSPF, it requires 36 octets, plus 12 additional octets
for each additional type of service reported. (IS-IS always re-
ports four types of service, even if only one is supported. Sup-
port of additional types of service will not increase the storage
required in IS-IS beyond the 12 octets described above.)
The information provided in IS-IS is basically the same as
the information in OSPF. The difference between them is that
in IS-IS, the majority of the fields are listed once instead of
being repeated for each individual destination. Since hundreds
of destinations can be reported in a single IS-IS LSP, the stor-
age for the header, which is approximately 30 octets, works out
to only one or two bits per reported destination.
The bandwidth use comparison between the two protocols
is not quite as clear as the memory use. Intuitively, since OSPF
requires more bits to store, it shouId require more bits ofband-
width to transmit. When a single change occurs, however,
OSPF requires only that single change (50 octets or so, depend-
ing on type of LSP and how many types of service are used) to
be transmitted. In IS-IS, it is possible for a single change to
occur in a fairly large LSP fragment. It is true that router R only
needs to reissue an LSP fragment to replace the one that
changed, rather than its entire LSP, but in IS-IS an LSP frag-
ment can be on the order of 1,000 octets.
The bandwidth tradeoff depends on the amount of traffic
due to the necessity to periodically reissue all information, on
the order of once per hour for each LSP, versus the amount of
traffic due to incremental updates of single instances of
connectivity change. Assuming only one type of service is sup-
September 1991 - IEEE Network Magazine . 19
Length
Value
Fig. 2. Encoding of variable length fields in IS-IS,
ported, OSPF requires three times as much bandwidth to
transmit the complete LSP database as IS-IS, in the level 2 net-
work. Each single incremental change occurring within the
retransmission period of about an hour somewhat offsets the
extra bandwidth used by OSPF, assuming the change is about a
destination outside the AS. (The AS is a piece of the network
within the scope of the intradomain routing protocol. An
interdomain routing protocol, such as Exterior Gateway Proto-
col (EGP) or Border Gateway Protocol (BGP) is used to route
between ASS.) Other types of routing information, such as the
set of router neighbors, are combined into a single LSP in both
protocols. Routing information summaries listing distances to
destinations outside an area but within the AS, which are in
OSPF type 3 and 4 LSPs, are never included in IS-IS LSPs. The
largest portion of the IP routing database is likely to be about
destinations outside the AS.
The above paragraph compares bandwidth use in level 2.
The bandwidth use is much less in IS-IS level 1 because none of
the information in types 3, 4, and 5 OSPF LSPs (which report
distances to destinations outside the area) is transmitted with-
in level 1.
Database Description/CSNPs
Both OSPF and IS-IS require mechanisms to enable neigh-
bor routers to compare their LSP databases. This is done by ex-
changing the headers of the LSPs. In OSPF this is done only
when two routers initially discover that they are neighbors, ei-
ther as a result of a point-to-point link coming up, a router
coming up on the Local Area Network (LAN), or a router tak-
ing over as a Designated Router (DR) on the LAN. In IS-IS,
this is done upon link startup on point-to-point links, but is
also done periodically at all times by the DR on LANs. Because
OSPF only does this upon link startup, it is not as important
for it to be efficient. Because IS-IS does this periodically on
LANs, it is more important in IS-IS for this to be efficient.
In OSPF, the packet type for doing this is a DD packet. In
IS-IS, it is a CSNP. In OSPF, where every destination outside
an area requires its own LSP header, the information required
to summarize the LSP database can be quite large. Indeed,
since most of the LSP databases in OSPF consist of a single
destination per LSP, the database description will be close to
the same size as the LSP database itself. For instance, for each
destination outside the AS, there will be on the order of 20 oc-
tets added to the DD in OSPF. In contrast, hundreds of desti-
nations in IS-IS will be reported in a single LSP fragment, and
only the header of that LSP fragment will be reported in the
CSNP. Thus, the CSNP database in IS-IS is likely to be two or
three orders of magnitude smaller than the DD in OSPF. At
level I , the difference will be even greater, since information
external to the area is not reported here.
Even though CSNP information in IS-IS is likely to be much
smaller than the equivalent information in OSPF, it is still like-
ly that a CSNP will not fit into a single packet. OSPF deals with
the problem by fairly conventional fragmentation. Each frag-
ment has a sequence number, and the neighbor router must ac-
knowledge a fragment before the next fragment can be trans-
mitted. IS-IS deals with the problem by including in a CSNP,
the beginning and end LSP source addresses contained in the
CSNP. If the source address of an LSP is in the stated range and
does not appear in that CSNP, the router that receives the
CSNP can infer that the router that transmitted the CSNP had
no stored LSP from that source. In this way, each CSNP can be
processed independently in IS-IS. IS-IS does not require CSNP
fragments to be acknowledged in IS-IS because they are only an
optimization on point-to-point links (lack of receipt of part of
the CSNP only causes some LSPs to be needlessly transmitted),
and CSNPs are transmitted periodically on LANs.
Variable Length Fields
Another difference between OSPF and IS-IS is that all fields
in OSPF are of fixed length, and the packet formats specify
which fields are present. In contrast, most fields in IS-IS are of
variable length, and are encoded as shown in Figure 2.
Fixed format packets, as in OSPF, make it easier for the
routers to parse control packets, and makes for more efficient
encoding. It makes it more difficult, however, to extend the
protocol.
IS-IS allows new fields to be defined in a downwardly com-
patible way. IS-IS specifies that a router that does not support a
particular type merely skips that field and processes the rest of
the packet normally. Because of this encoding, it was easy to
modify IS-IS to support IP addresses as well as I S0 addresses.
Field Alignment
The OSPF packet formats are laid out so that two octet
fields are aligned on two octet boundaries, and four octet fields
are aligned on four octet boundaries. IS-IS does not do this. In
certain implementations, processing is slower if fields are not
aligned.
Area Partitions
With hierarchical routing, it is possible for an area to parti-
tion so that level 1 routing cannot connect the partitions. If
both partitions contain level 2 routers, and the level 2 network
is connected, the network as a whole is not physically parti-
tioned. There is a path between the partitions of the area (see
Figure 3). The path is a level 2 path.
The symptoms of a partitioned area can be difficult to diag-
nose and annoying for the users. Not only is communication
impossible between nodes that should be in the same area, but
are currently in different partitions of the area (as in nodes B
and C in Figure 3), but communication between members of
the area and nodes outside the area can be disrupted since the
traffic into the area might enter the wrong partition and be
undeliverable.
IS-IS has mechanisms in which level 2 routers residing in a
partitioned area automatically detect and repair the partition
by utilizing the level 2 path as a level 1 link. Routing control
messages as well as data packets are encapsulated with a net-
work layer header and transmitted over the virtual link. To the
rest of the nodes in the area, the area is no longer partitioned
and level 1 routing proceeds normally within the area.
In both OSPF and IS-IS, the level 2 routers in an area report
all the IP addresses within the area as being reachable outside
the area. In order to compact the information, level 2 routers
are manually configured with address summaries for the
area. An address summary (IP address and subnet mask) is a
pair that describes many IP subnets in the area. In IS-IS, the
rule is that a level 2 router reports an address summary for the
area provided that at least one address in the area matches the
configured address summary. In addition, a level 2 router re-
ports any additional addresses reachable within the area that
are not included in any of the configured address summaries.
In OSPF, presumably the same sort of rule applies, though it is
not explicitly stated in the specification (spec).
20 September 1991 - IEEE Network Magazine
Fig. 3. Area partitions.
OSPF does not have any explicit area repair mechanisms.
The spec claims, however, that the area merely becomes two
areas. If an area splits in such a way that a level 2 router in one
partition announces an address summary that includes an ad-
dress reachable in a different partition, then routing will not
work, since a packet may be delivered to the incorrect parti-
tion.
There are only two methods by which the claim in the OSPF
spec can be accomplished:
Someone might notice that the area has partitioned, and
manually reconfigures the level 2 routers in the area, so level
2 routers in each partition do not contain summary address-
es for addresses reachable in other partitions.
No summary addresses were used, and each level 2 router
reports each IP address individually. If summary addresses
are not used, areas do not become partitioned, they merely
break into multiple areas.
The OSPF spec is not clear about which of these alternatives
is assumed. Reliance on a person is clearly undesirable. The
network remains broken until an appropriate person can be
found. The person diagnoses the problem, calculates the ap-
propriate summary addresses, and reconfigures the routers.
The second alternative is also unappealing since without sum-
mary addresses there is very little, if any, savings gained from
hierarchical routing. The routing algorithm and the capacity of
the routers is unlikely to accommodate a network without hier-
archy.
Level 2 Partitions
IS-IS requires a connected level 2 network. This means
there must be a path from every level 2 router to every other
level 2 router that traverses only level 2 routers.
OSPF similarly requires a connected level 2 network, but al-
lows a link between a pair of level 2 routers to consist of a man-
ually configured virtual link that consists of a path through
an area.
Communication over a virtual link between level 2 routers
A and B can be done in two ways:
A can encapsulate trafic being forwarded to B in a network
layer header giving B as the destination.
A can assume all level 1 routers on the path towards B know
enough to forward traffic to the destination towards B.
OSPF has chosen the second strategy. Because of this, it is
essential that all level 1 routers within the area know about all
destinations outside the area, so they will be able to forward
level 2 traffic in case they wind up in the path of a virtual link.
Because of the possibility of manually configured virtual links
in OSPF, IS-IS has a topological restriction that OSPF does
not.
Injection of Level 2 Information
In IS-IS, level 1 routers only know information about their
own area. If a level 1 router R receives a packet with an address
not reachable within the area, R forwards the packet to the
level 2 router nearest to R. In OSPF, level 2 information is fed
into the area. The form of the level 2 information is interesting.
Suppose there is an area A in some AS such that:
n IP destination addresses are reachable within the AS, but
m IP destinations are reachable outside the AS
k level 2 routers are in area A
j AS border routers are in the AS
outside of area A
Each of the k level 2 routers reports their own distance to the
NI P destination addresses and the j AS border routers. This in-
formation is 0 (k x (j +n)). Each of the j border routers also re-
ports its distance to each of the m IP destinations reachable
outside the AS. This information is 0 G x m).
Giving level 2 information to level 1 routers enables the
routers to choose the exit level 2 router that will give the best
path to the destination. Thus, OSPF yields more optimal
interarea routes than IS-IS. The cost of providing more opti-
mal routing, though, is increased bandwidth usage by the rout-
ing algorithm (to pass around level 2 information in the area)
and increased memory and Central Processing Unit (CPU) re-
quirements on level 1 routers (to store information and com-
pute routes for out-of-area destinations).
Aside from increased bandwidth, CPU, and memory usage,
there is an additional issue raised as a result of the OSPF re-
quirement for level 1 routers to store level 2 information. In IS-
IS, where an area is independent of the rest of the network, da-
tabase sizes in level 1 routers can be calculated based on the
size of the area. If the area never changes, the level 1 routers
will continue to function. In contrast, as the entire network
grows in OSPF, demand on the level 1 routers increases. One
small area with small routers, cannot be sheltered from the
growth of the rest of the network.
There is an additional option in OSPF. It is possible to
configure the area as a stub area. In order to do so, every
router in the area must be configured to assume the area is a
stub area. Virtual links cannot be configured through an area
configured as a stub area. If an area is a stub area, the informa-
tion concerning destinations outside the AS is not flooded into
the area, saving 0 (j x m). Information about destinations
within the AS, but outside the area, are still flooded within an
area, even if the area is configured as a stub area. In other
words, an OSPF stub area is a compromise between a nonstub
OSPF and an IS-IS area. OSPF stub areas require significantly
less storage than nonstub OSPF areas. Like IS-IS, OSPF does
not attempt to optimize the route from a stub area to a destina-
tion outside the AS, but unlike IS-IS, OSPF does attempt to
optimize routes from a stub area to destinations within the AS,
but outside the area.
As stated above, the storage required in OSPF per destina-
tion external to the AS is 36 octets, plus 12 octets for each addi-
tional type of service supported, for each AS border router that
reports that external destination. If the area is not configured
as a stub area, level 1 routers must store this information.
It is difficult to know how many AS border routers will re-
port each external destination because it depends on how desti-
nations are learned, which is outside the scope of the OSPF
specification. Without a lot of manual configuration and topo-
logical restrictions, it is quite likely that the interdomain rout-
ing protocol (from which, presumably, external destinations
are discovered) will report all external destinations to all AS
border routers, and as a result they will report all the external
destinations in their type 5 LSPs. It is reasonable to expect
thousands of external destinations. An AS might have, for ex-
ample, five AS border routers and 5,000 external IP destina-
tions. The amount of information the level 1 routers would be
required to hold, assuming only a single Type of Service (TOS)
supported, is 900,000 octets. In IS-IS, none of this information
September 1991 - IEEE Network Magazine 21
is seen by the level 1 routers. The cost of not storing, propagat-
ing, and computing this information in IS-IS is that some
routes to other ASS will be less optimal than those used in
OSPF.
Authentication
Both OSPF and IS-IS have the capability of using authenti-
cation. Theoretically, authentication gives some sort of secu-
rity against hackers programming nodes to masquerade as
routers, thus confusing the network by sending bad informa-
tion. Neither protocol, however, has specified an authentica-
tion scheme that gives real security Mostly, the authentication
schemes specified offer two things:
Hooks in packet formats so that in the future if someone in-
vents a wonderful authentication scheme it can be compati-
bly slipped into the protocol
Marginal insurance against someone accidentally plugging
routers together that should not be plugged together
Both protocols have a field indicating the type of authentica-
tion, and both define only one type, which is a simple pass-
word. There are, however, differences in the two protocols. In
IS-IS, the data associated with the authentication is a variable
length. In OSPF, it is fixed at 64 b. Sixty-four bits is sufficient
for a password scheme, but would not suffice for a public key
signature scheme, which would need a field several hundreds
of bits long.
In OSPF, there is a single password per link. A router is
configured with a password for each link to which it is at-
tached. It transmits that password when it transmits OSPF
messages on that link. It expects all OSPF messages it receives
on that link to have that password. In IS-IS, a router is
configured with a transmit password on a link, which is the
password it uses when it transmits IS-IS messages, as well as a
set of acceptable receive passwords.
On a point-to-point link, a password scheme in which the
receive and transmit passwords are different offers some secu-
rity. If the passwords are the same, the intruder need only wait
for the other router to transmit first, and the intruder will find
out the password. Even with two passwords, an intruder can,
with effort, discover the passwords. Suppose the legitimate
routers are A and B. Intruder C connects to B, discovers Bs
transmit password, and then connects to A. This attack can be
foiled if only one of the routers initiates the connection, or if
the router which initiates the connection is required to give its
password first.
The reason IS-IS configures routers with a set of acceptable
receive passwords, rather than a single receive password, is so
that a link, such as a LAN, can be migrated from one password
to another without disrupting the network. If the routers use
password P1, and the network manager would like to change
the password to P2, then the network manager adds the pass-
word P2 to the configured receive password set of each of the
routers, one router at a time. After all the routers have been
configured to accept P2 as well as P1, the routers can be
configured to transmit P2 instead of P1. After all the routers
transmit P2, P1 can be deleted from the configured receive
password set, one router at a time. Since OSPF has only a single
password per link, it is not possible to change the password in
an operational network. The routers would all have to be
brought down and locally reconfigured.
Another interesting difference between the authentication
schemes in OSPF and IS-IS is the way LSPs are authenticated.
In IS-IS, the router that originally generated an LSP put the au-
thentication field into the LSP. This is very dangerous. If a sin-
gle router in the network has a different configured set of ac-
ceptable receive passwords for LSPs, that router will reject an
LSP that other routers accept. If routers disagree about the LSP
database, routing can be severely disrupted.
In contrast, OSPF does not have the original router put an
authentication field into an LSP. Instead, a router that for-
22 * September 1991 - IEEE Network Magazine
wards an LSP puts its own authentication field into the packet.
This scheme does not suffer from the global disruption possi-
bility from which IS-IS suffers.
Designated Router Election
In IS-IS, the DR on a LAN is the router with the highest
configured priority, with Identification (ID) being used as a tie
breaker when more than one router has the same highest priori-
ty. Routers listen to Hello messages from other routers and
the router with the highest priority/ID is the DR. If a new
router comes up with higher priority/ID in IS-IS, it will take
over as DR.
OSPF has a more complicated DR election procedure so
that a change in the DR only occurs as a result of the failure of
the current DR. Primarily, as a result ofthe way LSPs are prop-
agated on LANs, it is more disruptive to have a change of the
DR in OSPF than in IS-IS. Some of the OSPF disruption is al-
leviated by having a backup DR that shadows the state kept by
the DR. Thus, OSPFs DR election procedure keeps a DR
elected until it fails, even if that router does not have the high-
est priority/ID. Additionally, OSPF elects a backup DR as well
as a DR, and the backup DR also will remain elected until it
fails.
The OSPF algorithm consists of requiring a router to wait
for some time before running for the DR or backup DR. The
OSPF Hello includes a field for indicating which router is as-
sumed to be the DR, and which is assumed to be the backup
DR. If all Hello messages received during the timeout period
have those fields empty, the new router will attempt to become
the DR by putting its own I D into the field in its Hello mes-
sages. If multiple routers happen to run simultaneously, the
DR and backup DR are chosen based on priority and ID.
The OSPF DR election protocol is more complex than the
IS-IS election protocol, and is not deterministic, which means
it is impossible to predict, based on topology, which router will
become the DR. This often makes conditions harder to diag-
nose, because they are not reproducible. It also makes it impos-
sible for the network manager to impose preferences on which
routers become the DR. If an underpowered router that should
only take over as a last resort when all other routers have failed
ever happens to become a DR it will remain a DR until it dies.
The advantage of the OSPF procedure is that fewer changes
of the DR occur. Although DR changes are less disruptive in
IS-IS than in OSPF, because of the method of propagating
LSPs on LANs, they are somewhat disruptive in IS-IS, because
the new DR will give the LAN a new name. As a result, all the
routers on the LAN will have to issue new LSPs.
LSP Propagation on LANs
It is important that when a router generates a new LSP all
routers receive the LSP. Unless all routers have identica! LSP
databases, routing can be severely disrupted. Both OSPF and
IS-IS have similar flooding mechanisms for propagating LSPs
throughout the network. The main difference in the mecha-
nisms is how the LSPs are propagated on a LAN.
In both schemes, it is important for each router to make sure
each LSP is properly propagated to each of its neighbors. On
point-to-point links, this is accomplished by transmitting an
LSP to a neighbor until an acknowledgement is received from
that neighbor for that LSP. The naive extension for LANs is
that each router would transmit a copy of each LSP to each
neighbor, and collect an acknowledgment for each LSP from
each neighbor. This would result in n2 packet transmissions on
the LAN for each LSP. Luckily, neither OSPF nor IS-IS takes
this approach.
OSPF handles LAN propagation by having the DR on the
LAN transmit each LSP and collect explicit acknowledgments
from all other routers. The protocol is as follows:
Some router on the LAN receives an LSP that needs to be
forwarded onto the LAN
That router transmits the packet to the DR
The DR multicasts the packet to a data link layer address
that is listened to by all routers on the LAN
Each router that receives the LSP transmits an acknowledg-
ment to a data link layer address that is listened to by the
DR and the backup DR
If the DR fails to receive an acknowledgment within some
time from some of the routers, it retransmits an individual
copy of the LSP to each router from which it failed to re-
ceive an acknowledgment
IS-IS does not use explicit acknowledgments on the LAN,
and any router is allowed to forward an LSP on the LAN to the
other routers. It does not have to be transmitted first to the DR.
The IS-IS mechanism is simple. A router that receives a new
LSP for forwarding onto the LAN marks the LSP in memory as
needing to be forwarded onto the LAN. When the router gets a
chance, it forwards the packet onto the LAN, to a special data
link layer address listened to by all the IS-IS routers. If a router
receives an LSP on a LAN before it gets a chance to transmit
that LSP on the LAN, the router clears the flag reminding itself
to transmit the LSP on the LAN.
To ensure lost UPS get retransmitted, the IS-IS DR periodi-
cally transmits a special packet known as a CSNP, which lists
all the LSPs and sequence numbers in its LSP database. If a
router notices that the DR has missed an LSP, the router will
retransmit the lost LSP. If router R notices, based on the re-
ceived CSNP, that R has missed an LSP, R explicitly requests
the LSP from the DR. If the entire database does not fit into a
single packet, the CSNP may be a sequence of several packets,
though each fragment is individually processed and can be pro-
cessed even if some fragments are lost.
In the absence of lost packets, OSPF requires n (the number
of routers on the LAN) transmissions per LSP: one for the DR
to broadcast the LSP to the other routers, and n-1 for the other
routers to transmit back to the DR. Additionally, if it was a
router other than the DR that originally heard the LSP from
some other link, there is the packet transmission required to
transmit the LSP to the DR. To complicate the analysis, the
exact number of packet transmissions will, in practice, proba-
bly be less than this number because if a router has multiple
LSPs to transmit on the same link at any one time in OSPF, it
can combine them into a single packet transmission. In the ab-
sence of lost packets, IS-IS, on the other hand, requires only a
single packet transmission per LSP. The first router that hears
the LSP transmits it to the LAN.
OSPF does not, however, have the overhead of the periodic
transmission of CSNPs by the DR. If there is no LSP traffic,
OSPF has zero overhead, whereas IS-IS will always have the
constant periodic overhead of the CSNPs. The IS-IS mecha-
nism tends to spread out the traffic to a small constant back-
ground amount, whereas the OSPF mechanism uses band-
width in spurts.
With very large numbers of routers on a LAN (say loo), it is
fairly clear that the IS-IS scheme will be more efficient. With
very small numbers of routers on a LAN (say 5 or less), the
OSPF scheme will be more efficient. However, with small
numbers of routers the traffic is extremely small in either
scheme. A careful study to find a break even point would be in-
teresting.
OSPF propagates LSPs throughout the network slightly
slower than IS-IS, because an LSP cannot be immediately
propagated on the LAN. Instead there is an additional packet
hop required for initially transmitting the LSP to the DR.
It might seem that OSPF recovers more quickly from lost
LSPs than IS-IS, since each LSP is explicitly acknowledged.
However, the DR waits some amount of time before assuming
the LSP was lost. The periodic time in IS-IS for transmission of
CSNPs is equivalent to the DRs timeout interval. So, both
schemes recover from lost LSPs in the same amount oftime.
Transmission of CSNPs in IS-IS costs more than band-
width, because processing of a CSNP by the routers that re-
ceive it is fairly CPU intensive. It requires scanning the LSP
database to compare the DRs database with the receiving
routers. To make this efficient, both in terms of CPU and
CSNP encoding, IS-IS routers need to keep the LSPs. sorted.
Synchronized Parameter Setting
In OSPF, there are several parameters that must be
configured identically in routers, or else the routers will refuse
to communicate with each other. This creates a problem be-
cause it is virtually impossible to change the parameter setting
via network management. Once a routers parameter setting is
changed, it is cut off from the rest of the network since no other
routers will be able to communicate with it, In contrast, there is
always a way in IS-IS to migrate from one setting to another by
configuring routers one at a time while the network is running.
The parameters in OSPF that must be set identically in
neighboring routers are:
HelloTime and DeadTime-HelloTime indicates how
many seconds will elapse between generation of Hello
messages by a router. DeadTime indicates how many sec-
onds should elapse before the neighbors of the router should
consider the router down. OSPF routers report their settings
of these parameters in Hello messages. If a neighbor
router does not have the exact same values as the router that
receives the Hello, the router receiving the Hello will
refuse to form a link with the transmitting router.
IS-IS reports HoldingTimer in its Hello messages.
HoldingTimer is identical with OSPFs DeadTime. IS-IS
does not transmit the HelloTimer. (As a result, the ratio be-
tween HoldingTimer and HelloTimer is fixed in IS-IS, but
can be configured in different ways by OSPF.) IS-IS uses the
information solely to determine how long to wait between
receipt of Hellos from a particular neighbor before declar-
ing the link to that neighbor down. There is no necessity for
neighboring nodes to have the same value.
Being able to change these timers in a running network is
important. As a LAN becomes larger it might be decided
that the overhead from Hellos is too great. It also might be
important in some configurations to be able to run with dif-
ferent HelloTimers for different routers. There might be
some routers for which quick detection of failure would be
very desirable (for instance, the DR), whereas for other
routers quick detection of failure might not be as important.
To lower overhead these routers might be configured with a
longer HelloTimer. This cannot be done in OSPF since all
routers must have identical timers.
Stub area flag-OSPF requires every router in an area to be
configured with a flag indicating whether the area is a stub
area. If a level 2 router has the stub area flag set, it will not
flood type 5 LSPs into the area. The stub area flag is re-
ported in OSPF Hello messages. If a router disagrees with
a neighbor as to the setting of the stub area flag, it will
bring the link to the neighbor down. IS-IS has no such pa-
rameter.
Authentication password-Both OSPF and IS-IS have the
optional feature of providing authentication. In OSPF,
there is a single password per link. The password a router
transmits is the same as the password it will accept on the
link. As stated above, IS-IS allows configuration of multiple
receive passwords so it is possible to migrate from one pass-
word to another without disrupting the operation.
Neighbor Initialization Protocol
It is important for routers to have identical LSP databases.
This is accomplished in both protocols by ensuring that neigh-
bor routers agree on LSP databases.
September 199 1 - IEEE Network Magazine 23
In IS-IS, when router RI acquires a new router neighbor R2,
RI assumes that R2 has no LSPs, and RI starts transmitting all
its LSPs to R2. Additionally, RI transmits a CSNP to R2. Like-
wise, R2 will transmit a CSNP and all its LSPs to RI. If R2 re-
ceives RIs CSNP, R2 will know which LSPs do not actually
need to be transmitted to RI. Likewise for RI. The CSNP ex-
change is thus an optimization to prevent the necessity for
transmitting all LSPs on the link.
On a LAN, there is no special protocol for new neighbors.
The DR transmits CSNPs periodically. If a new router has
missing LSPs, it explicitly requests them from the DR. If the
DR is missing LSPs, the other routers transmit their LSPs.
OSPF has a slightly different mechanism. When a link be-
tween two routers first comes up, each transmits the equivalent
of an IS-IS CSNP. In OSPF it is known as a DD packet. The dif-
ference is that OSPF requires all fragments of a DD packet to
be received, or there might be long term database disagree-
ments. The DD packet is required for correctness, not as an
optimization.
In OSPF, the DD exchange protocol involves making a de-
cision between the two neighbor routers as to which should be
master and which slave. The master transmits each frag-
ment of its DD packet, one at a time. The slave transmits the
same numbered fragment of its DD packet in response. It is
slow because there is no possibility for pipelining. In IS-IS, if a
CSNP needs to be fragmented there is no problem. Each frag-
ment of a CSNP states the range of source LSP addresses con-
tained in the CSNP. Fragments can amve out of order, or frag-
ments can be lost, with no problems. If a fragment of a CSNP is
lost in the initial neighbor exchange, the only consequence is
that the LSPs that were listed in that fragment will be unneces-
sarily retransmitted. On a LAN, if a CSNP fragment is lost, as-
suming LSPs are really lost, the consequence is that it will take
an extra CSNP interval for the problem to be noticed and the
LSP to be retransmitted. In OSPF, it is essential that each frag-
ment of the DD be delivered. The OSPF protocol therefore re-
quires explicit acknowledgment of each fragment.
Given that the DD exchange protocol only happens when
routers first become neighbors, the performance of the OSPF
DD exchange protocol may not be an issue. Almost certainly it
is not an issue on point-to-point links. It may be an issue on a
LAN when a new router becomes DR.
Database Overload Procedures
The following are two reasons why the LSP database might
Temporary situation-if the DR changes on a LAN, the
new DR might issue the large LSP listing all the other nodes
on the LAN, before the old DRs LSP times out. Thus, for a
time other routers will be required to store twice as much in-
formation regarding that LAN.
Permanent situation-it is possible for the network to grow
larger than for what the routers have been configured. This
may be even more likely in OSPF because the level 1 routers
have to keep information about the entire routing domain
in OSPF.
The following are several strategies an implementation
become larger than a router was configured for:
might use when its database overflows:
It can crash and wait to be manually revived
It can crash and immediately reboot
It can continue operating based on the subset of informa-
tion it can hold
Crashing and waiting to be manually revived can be a real
annoyance, especially if the problem is a temporary overload
situation. A temporary condition might cause all routers in the
domain to crash and wait to be manually restarted. Crashing
and rebooting will solve the temporary situation, but it does
not allow remote management of an underconfigured router in
the case when the overload situation is permanent. Continuing
to operate on a subset of the LSP information is very danger-
ous, since routing can be severely disrupted if routers operate
based on different information.
IS-IS specifies mechanisms so that a temporary overload
situation will resolve itself without manual intervention, and a
permanently overloaded router will remain reachable for net-
work management. Basically, the overloaded router is treated
as an endnode, so that it remains reachable via network man-
agement, but the fact that its routing decisions cannot be trust-
ed will not cause global disruption. IS-IS accomplishes this as
follows: a router that must discard LSP information declares it-
self overloaded and sets a bit in its LSP warning other
routers that it cannot forward packets. It remains reachable for
network management.
It also continues to try to perform the router functions. If a
period elapses without the router needing to drop any LSPs,
the router declares itself healthy again. In this way a temporary
overload situation will resolve without any manual interven-
tion. In contrast, OSPF does not specify any mechanisms to
deal with database overload, nor does it have the special flags
in the packets necessary to implement the IS-IS scheme. Pre-
sumably, OSPF implementations choose either to crash or con-
tinue to operate on a subset of the information.
Summary
OSPF and IS-IS are both link-state routing algorithms. Ei-
ther would serve the I P community as an improvement over
RIP, the current de facto standard for routing IP. Some of the
differences between OSPF and IS-IS are based on different en-
gineering tradeoffs. OSPF has favored optimizing routing,
whereas IS-IS has favored minimizing storage and computing
in level 1 routers. Some of the differences are fairly subtle (LSP
propagation on a LAN, for instance) and are not likely to be no-
ticeable to users. Some of the differences might be more criti-
cal, such as IS-ISS ability to migrate parameters in a running
network (which is not possible in OSPF), and IS-ISS dealing
with database overload in such a way that underconfigured
routers can continue to be managed across the network.
References
J . Moy, -0SPF Version 2, Rf C 7247, July 1991.
-Information Technology, Telecommunications and Information Ex-
change Between Systems, Intermediate System-to-Intermediate Sys-
t em Routing Information Exchange Protocol for Use in Conjunction
Wi t h IS0 8473. IS0 70589, 1990.
J . Postel, Internet Protocol, RFC 797, Sept. 1981.
C. L. Hedrick, Routing Information Protoco1,RfC 7058, June 1988.
D. C. Plummer, Ethernet Address Resolution Protocol: Or Converting
Network Protocol Addresses t o 48-Bi t Ethernet Address for Trans-
mission on Ethernet Hardware, RFC 826, Nov. 1982.
Information Processing Systems, Data Communications, Protocol for
Providing the Connectionless-mode Network Service, IS0 8473,
1987.
R. Callon, Use of OS1 IS-IS for Routing in TCP/IP and Dual Environ-
ments, RFC 7 795, Dec. 1990.
%formation Processing Systems, Telecommunications and Informa-
tion Exchange Between Systems, End System-to-Intermediate Sys-
tem Routing Information Exchange Protocol for Use in Conjunction
wi th IS0 8473. IS0 9542, 1988.
McQuillan, Richer, and Rosen, The New Routing Algorithm for the
ARPANET, IEEE Trans. on Commun., May 1980.
Biography
Radi a Perl man has her Ph.D. degree in computer science from the Massa-
chusetts Institute of Technology (MIT). She is in the network architecture
group at Digital Equipment Corporation, where she has been responsible for
the protocols and algorithms in Digitals network layer and the spanning tree
algorithm in Digitals bridges. Her network layer protocols have been adopted
by IS0 for use in their connectionless network layer standards IS-IS and ES-IS,
and her spanning tree algorithm has been adopted by IEEE 802 in their bridge
standard. She is the author of a textbook on bridges and routers which is soon
to be published.
24 September 1991 - IEEE Network Magazine

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