a comparison between two routing protocols: ospf and is-is

7
A Comparison Between Two Routing Protocols: 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 RIP 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. It 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 RIP [4] for rout- ing IP. OSPF and IS-IS were both proposed as replacement protocols for RIP. Replacing RIP with either OSPF or IS-IS will not affect other portions of the Internet suite’s 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 IP network layer as well as the IS0 network layer. The version of IS-IS with fields specified for IP, is documented in [7]. IS-IS, with the IP 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 IP 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 S 0 vs. IP 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 IP 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 IS0 vs. IP 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 S 0 vs. IP End System-to-Intermediate System (ES-IS) [8] vs. ARP (protocols for mapping network layer to data link layer ad- dresses in IS0 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 IP 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 node’s 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

Upload: others

Post on 02-Oct-2021

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A comparison between two routing protocols: OSPF and IS-IS

A Comparison Between Two Routing Protocols: 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 RIP 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 RIP [4] for rout- ing IP. OSPF and IS-IS were both proposed as replacement protocols for RIP. Replacing RIP with either OSPF or IS-IS will not affect other portions of the Internet suite’s 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 IP network layer as well as the IS0 network layer. The version of IS-IS with fields specified for IP, is documented in [7]. IS-IS, with the IP 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 IP 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 IS0 vs. IP 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 IP 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 IS0 vs. IP 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 IS0 vs. IP End System-to-Intermediate System (ES-IS) [8] vs. ARP (protocols for mapping network layer to data link layer ad- dresses in IS0 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 IP 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 node’s 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

Page 2: A comparison between two routing protocols: OSPF and IS-IS

DL Header IP Header

Fig. 1. OSPF and IS-IS packets.

a1 nodes 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, we will 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 router’s ID 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 ID 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

Page 3: A comparison between two routing protocols: OSPF and IS-IS

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 IS0 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

Page 4: A comparison between two routing protocols: OSPF and IS-IS

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 NIP 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

Page 5: A comparison between two routing protocols: OSPF and IS-IS

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 B’s 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, OSPF‘s 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 ID 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

Page 6: A comparison between two routing protocols: OSPF and IS-IS

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 U P S 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 D R s 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 DR’s database with the receiving router’s. 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 router’s 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 OSPF’s 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

Page 7: A comparison between two routing protocols: OSPF and IS-IS

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 RI’s 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 DR’s 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 IP 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-IS’S ability to migrate parameters in a running network (which is not possible in OSPF), and IS-IS’S 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,’ RfC 7247, July 1991. -Information Technology, Telecommunications and Information Ex- change Between Systems, Intermediate System-to-Intermediate Sys- tem Routing Information Exchange Protocol for Use in Conjunction With 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 to 48-Bit 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 with IS0 8473. IS0 9542, 1988. McQuillan, Richer, and Rosen, ‘The New Routing Algorithm for the ARPANET,’ IEEE Trans. on Commun., May 1980.

Biography Radia Perlman 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 Digital’s network layer and the spanning tree algorithm in Digital’s 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