OSPF -- Scalable Autonomous System Routing
Using Link State Routing Algorithms, OSPF supports complex autonomous system routing
Functionally more complex than RIP, as a link-state routing protocol as opposed to the
vector-distance RIP, OSPF provides solutions to the primary deficiencies of RIP. Routing
architectures can scale well beyond the maximum 16 hops supported by RIP. Rather than
exchanging node (and network) reachability information, OSPF routers exchange link state
information. Through the link state information, each router maintains its own copy of
the network topology. From this link-state database, shortest path routing decisions can then be
made. For those of you that are familiar with the OSI routing scheme, many of the features
supported by OSPF are similar to the OSI IS-IS routing protocol. The original versions of
OSPF are actually derivations of some of the earlier versions of the IS-IS protocol.
OSPF provides additional flexibility in managing complex networks. Some of its features include:
Link State versus Vector Distance
An understanding of link-state routing algorithms is fundamental in understanding OSPF.
As opposed to the vector-distance protocols where adjacent routing nodes exchange only
information describing their "distance" to destinations, link-state routing
protocols are based on all nodes in the network maintaining a complete image of the
links between routers within the router's routing domain. This information is transferred
through initial database messages and link-state change messages. The routing algorithms
run in parallel on all machines in the region. Each router maintains its own copy of a
topological database. With a complete picture of the topology information within
its area (or areas), each router can make routing decisions on the basis of traversing
the route trees in the local tables. As datagrams are received, the shortest path through
the local data base is identified. The datagram is then sent to the adjacent router that
is the next hop in the shortest path to the packet destination.
The OSPF implementation of the link-state algorithms supports a hierarchical organization. At the highest level of the hierarchy is the AS. In the Internet routing scheme, the AS is a network or a group of networks that fall under a single administrative authority. With OSPF, the AS is divided into one or more areas. Routers can participate in one or more areas. Each router in an area maintains its own copy of the topological database for its own area. To limit the amount of information each router must maintain in an AS, the topological database contains only the routes within its designated area. Limiting the database through this abstraction helps to limit the amount of route management traffic that must be transferred throughout the AS. This form of routing abstraction leads to two types of routing, intra-area routing that handles traffic local to an area, and inter-area routing for routing information between nodes in separate routing areas.
OSPF Router Types
With the hierarchical organization, several types of routers are included in the OSPF
architecture. The types of routers include:
Maintaining the Topological Database
One of the critical services provided by OSPF is a set of messages that are used to define
and control the topological database. These messages can be broken into three primary
Types of Service Routing
One of the more attractive features of OSPF is its capability to support Types of Service (TOS)
based routing. Through TOS routing, the IP service class selections are supported in
routing decisions. In particular, the IP encodings of precedence, delay (the D bit represents
low delay requested), and throughput (IP T bit represents a request for higher throughput)
can be supported through OSPF identification of classes of service provided by the various
links in the network. Routers in the network can advertise different route cost metrics for
each TOS for each link state. Through varying the metrics used both for the links and the
associated traffic TOS, TOS based routing is supported by OSPF.
Routing between nodes in different Areas (Inter-area routing)
Routing packets outside of the originator's local area is handled in a manner similar to the
techniques applied to routing packets across the Internet. Three routes are managed in
transferring the packet. First, the shortest path to the AS backbone is identified, and
the packet is forwarded to the local area's nearest border router. Once the packet has
reached the border router, the backbone routing determines the shortest path to the
destination area. In effect, the backbone acts as an area that is the hub of a star
routing topology. Once the backbone routes the packet to one of the destination node's
area border routers, the third shortest path route is calculated, and the packet is delivered
to its intended destination.
Extensive information is available on OSPF both in the RFCs and through documentation that can be found on the World-Wide-Web. In particular, the OSPF version 2 specification (RFC 1583) offers several examples of configurations that can be supported by OSPF, the database exchanges required and the algorithms that can be used in deriving the shortest path routing decisions. With the size and complexity of the Internet growing by the day, OSPF offers a rich set of routing features.
RFC 1583. J. Moy, OSPF Version 2. March 1994
Internetworking with TCP/IP Volume 1 Principles, Protocols, and Architecture. Douglas E. Comer, Prentice Hall