In previous chapters we illustrated that large problems are best approached by a divide-and-conquer strategy, and logical internetwork design is just another large problem. You will not be surprised to learn, therefore, that in general, most modern internetwork protocols support hierarchical models for partitioning networks into increasingly smaller, manageable, units. Figure 3.1 illustrates the key aspects of the generic internetwork architecture, and we will use this as the point of reference in subsequent discussions. Even though we are primarily focusing on IP, many of these concepts apply to other routing architectures, such as OSI, DECnet, and Novell's routing architecture. Figure 3.1 attempts to integrate some of the current thoughts on network hierarchy adopted by OSI and IETF standards. Currently, the highest level of administrative control is the Autonomous System (AS). At the AS level there are often business or political reasons for the differentiation (typically an AS is a large organization, multinational company, or a government body). Below the AS level there are further refinements of the infrastructure, and this partitioning is essentially driven by the need to provide scalability by traffic or routing management and control. In the OSI world ASs can be subdivided into one or more domains, which comprise one or more areas. Areas comprise one or more subnetworks. In the IETF world there is currently no support for domains, just areas. Intermediate Systems (IS) are used to interconnect all of these partitions, including Autonomous System Border Routers (ASBR), Area Border Routers (ABR), IntraDomain Routers (iDR), and InterDomain Routers (IDR).
Figure 3.1: Routing architecture.
The network is divided into several hierarchical traffic and administrative boundaries. At the highest level we have the concept of AS, communicating over a backbone. Autonomous systems are generally used for very large organizations and typically contain a group of networks and routers administered by a single authority, running one or more Interior Gateway Protocols (IGPs). It may be useful to reflect on the definitions of autonomous systems used in the standards. RFC 1267  states: "The use of the term autonomous system here stresses the fact that, even when multiple IGPs and metrics are used, the administration of an AS appears to other ASs to have a single coherent interior routing plan and presents a consistent picture of what destinations are reachable through it. From the standpoint of exterior routing, an AS can be viewed as monolithic: reachability to destinations directly connected to the AS must be equivalent from all border gateways of the AS."
RFC 2386  puts it more succinctly: "AS: A routing domain that has a common administrative authority and consistent internal routing policy. An AS may employ multiple intradomain routing protocols internally and interfaces to other ASs via a common interdomain routing protocol."
Each AS will require a registered AS Number (ASN) if connected into the Internet. Routing information is exchanged between ASs via an Exterior Gateway Protocol (EGP) such as the Border Gateway Protocol (BGP). There are basically two classes of AS, as follows:
Stub AS is an AS (sometimes called a single-homed AS) that reaches external networks via a single exit point.
Multihomed AS is an AS with multiple exit points, which can be used to reach external networks. A multihomed AS can operate as a transit AS if it allows traffic originated and destined for other ASs to pass through it; otherwise, it is called a nontransit AS.
Next, we have the concept of routing domains. Again, it may be useful to reflect on the definition of a domain used in the IETF standards: A routing domain is a collection of routers that coordinate their routing knowledge using a single [instance of a] routing protocol.
By definition, a routing domain forms a single autonomous system, but an autonomous system can be composed of a collection of routing domains.
A routing domain can itself comprise one or more areas. Areas are logical collections of contiguous networks and nodes. As illustrated in Figure 3.1, OSI routing (i.e., IS-IS) standards use the term domain as a collection of areas, whereas in IETF parlance, OSPF supports only areas and has no concept of a domain. In much of the literature the term domain is used as a generic term. Each area runs a separate instance of a dynamic routing algorithm; therefore, each area has its own topological database. Within an area there may be several networks, divided into subnetworks. All of these entities are connected together via Intermediate Systems (IS), which are Layer 3 switches more commonly referred to as routers. Devices that do not forward packets but are attached to the network are called End Systems (ES). For example, servers and workstations with Network Interface Cards (NICs), or a network-attached storage device, can all be classified under as end systems.
The ability to design a hierarchical internetwork presupposes that the routing protocols and addressing models used are capable of enforcing hierarchy on the logical topology. In order to satisfy the architecture presented in section 3.1.1, it is possible to define four levels of routing, as follows:
Level 0 Routing—routing traffic between end systems and routers on the same subnetwork
Level 1 Routing (Interior Routing)—routing traffic between routers within the same area
Level 2 Routing (Border Routing)—routing traffic between different areas within the same AS
Level 3 Routing (Boundary Routing)—routing traffic between different ASs
In order to meet the requirements of the different levels of routing functionality, there are three generic classes of routing protocols, as follows:
End System to Intermediate System (ES-IS) routing protocols handle Layer 0 host to router communication (either via a simple static configuration such as a default route or a more dynamic approach, such as passive RIP or IDRP). For multicast routing a more specialized protocol called IGMP is employed.
Interior Gateway Protocols (IGPs) handle inter-Area (Layer 2) and/or intra-Area (Layer 1) routing. Examples of IGPs in this class include OSPF, EIGRP, ISIS, RIP, IGRP, and NLSP. Note that although RIP is an IGP, it does not support the concept of hierarchy and, therefore, performs purely Level 1 routing. For multicast routing a small number of specialized protocols are available, including DVMRP, PIM, and MOSPF.
Exterior Gateway Protocols (EGPs) handle policy routing at Layer 3 between ASs. Examples of EGPs include static routing and the protocols Exterior Gateway Protocol (EGP) and Border Gateway Protocol (BGP). For multicast routing this requirement is currently covered by a kludged combination of protocols, including MBGP, PIM, and MDSP.
Sophisticated unicast dynamic routing protocols (such as OSPF and ISIS) require the creation of an explicit hierarchical topology through the establishment of a backbone and logical areas (or domains). The topology produced takes precedence over the topology created using the addressing model. When hierarchical routing is used, the network addressing scheme should comply with the logical hierarchy that is created (i.e., addressing should be consistent with the backbone and area boundaries). The topological information about a network depends on a router's role, as follows.
Router reachability—For topology information, a Level 1 router need only know the existence of the other Level 1 routers in its area and at least one Level 2 router in its area, plus the way in which these routers are interconnected. Similarly, a Level 2 router need only know the identity of the other Level 2 routers in its routing domain and how they are interconnected. In either case, we can abstract the topology into a graph consisting of nodes connected by edges. Each node is a router, and each edge is either a point-to-point link or a subnetwork.
End-system reachability—In the case of a Level 1 router, it needs to know, for each end system in its area, the identity of the subnetwork that contains that end system. In the case of a Level 2 router, it needs to know, for each router, the area that contains that end system and a Level 2 router in that area. Although there are clear distinctions here, in reality devices may operate at several levels. Powerful workstations (generally assumed to be end systems) are quite capable of running a full routing stack, for example, and routers typically run multiple routing stacks and operate at different routing levels concurrently.
There are two recommended ways to assign addresses in a hierarchical network. The simplest way to achieve this is to give each area (including the backbone) a unique network address. An alternative is to assign address ranges to each area. Some older routing protocols (such as RIP) have no concept of a logical hierarchy and are, therefore, referred to as flat or nonhierarchical routing protocols. Typically there are no facilities within this class of protocol to create logical topologies, and the designer must rely upon the network addressing model alone to establish a logical routing topology.
The combination of routing hierarchy and techniques such as route summarization offer several major design benefits, including the following:
The amount of information exchanged and held by routers is greatly reduced, simplifying router operations at all levels, speeding up route calculations, and constraining local routing traffic. This typically leads to faster convergence.
The scope of router misconfigurations is localized (with a nonhierarchical approach a single router problem can affect all routers in the network). This, therefore, promotes better availability, since there will be fewer network outages.
Boundary interfaces between different levels of hierarchy are ideal locations for implementing traffic and security policy. Access control lists or basic firewalling are frequently configured on perimeter and border routers.
Network expansion and upgrade operations are simplified. Protocol upgrades can be deployed separately within the various hierarchical domains; routers at one level need not know the protocol or topology of another.
All of these factors contribute to improving overall scalability and management. One downside of hierarchical networks is that route selection can be suboptimal for certain paths (since traffic between areas or domains is always forwarded through border routers, the paths chosen may not always be as short as those that would be selected if all routers had complete topological knowledge). Given the significant benefits achieved with hierarchical routing, this inefficiency is normally acceptable.