The Components of Network QoS
Regardless of the size and scope of an IP network, the observed end-to-end quality of service (QoS) is built from the concatenation of edge-to-edge QoS provided by each domain through which the traffic passes. Ultimately, the end-to-end QoS depends on the QoS characteristics of the individual hops along any given route. For example, in Figure 2.1 the QoS experienced by the intra-LAN phone application depends solely on the LAN, whereas the wide area phone application experiences QoS that depends on the LANs at either end, the Internet service providers (ISPs) at either end, and the IP backbone in the middle. A nonspecific PC-to-PC application depends on two LANs and the local ISP providing the LAN-to-LAN interconnect.
Figure 2.1 End-to-end QoS from a concatenation of segments.
Not surprisingly, much of the unpredictable and undifferentiated packet loss and jitter in today's IP services is due to the manner in which traditional Best Effort routers cope with transient internal congestion. If a particular output port becomes the focal point for two or more inbound aggregate traffic streams, a Best Effort router simply uses first in, first out (FIFO) queuing of packets destined for transmission on the associated outbound link. Queuing introduces latency (delay) and the potential for packet loss if a queue overflows. When traffic patterns are bursty, the queuing-induced latency varies unpredictably from packet to packet—manifesting itself as jitter in the affected traffic streams.
IP networks (enterprise, access, and backbone) are being called upon to carry traffic belonging to a growing variety of customers with diverse requirements—for example, IP Telephony, IP virtual private networks (VPNs), bulk data transfer, and mission-critical e-commerce. Each customer makes unique demands for some level of service predictability, even in the presence of transient congestion due to other traffic traversing the network.
The demand for relative or absolute protection from other traffic on any particular network segment applies equally well to a high-speed LAN, a network based on T1 or E1 private links, a dial-up or ISDN access network, or a high-capacity backbone running at OC-48/STM-16 rates or higher.
This demand leads directly to three technical requirements:
Per-hop QoS—The smallest controllable element in the network is the node (router or switch) joining two or more links. These nodes must be based on an architecture that allows sufficient differentiated queuing and scheduling to be applied at each hop and be able to appropriately utilize the QoS characteristics of inter-node links.
Routing and traffic engineering—Where multiple parallel paths exist through a network, distributing traffic across these paths can reduce the average load and burstiness along any given path. This practice improves the network's apparent service quality because each router is less likely to drop or jitter packets. Mechanisms for discovering and imposing non-shortest-path forwarding are required.
Signaling and provisioning—Controllable per-hop QoS and non-shortest-path forwarding is of little use if its not easily manageable. A practical solution requires some degree of automated distribution of QoS parameters and/or traffic engineering constraints to all the nodes (routers or switches) in the network. New information is distributed whenever a customer imposes or changes specific end-to-end (or edge-to-edge) QoS requirements.
These requirements are explored in more depth in the rest of this chapter.
2.1 A Hierarchy of Networks
Any network you might care to name is built from a hierarchy of components. Any path from one point to another is usually formed from the concatenation of shorter paths (hops) at the same level. A path at some level N becomes one hop in a path at level N + 1. Take the IP layer as the point of reference: It is made up of routers acting as switching points for IP packets and links that carry IP packets between routers. Each link is a single IP hop, yet the link itself might be made up of a number of its own hops and nodes.
The link can be a single Ethernet, a segment of a bridged Ethernet network, an IP tunnel, or an asynchronous transfer mode (ATM) virtual connection. In the case of a bridged Ethernet, one or more Ethernet switches may exist between the two routers. IP tunnels use one IP network to act as a link for another IP network (or sometimes the same IP network when certain types of traffic need to be hidden from sections of the network). An ATM virtual connection (VC) provides an end-to-end service between the ends of the VC, but in reality the VC may pass through many ATM switches along the way.
The IP-level QoS between two points depends on both the routers along the path and the QoS characteristics of each link's technology. Clearly the inter-router packet transport builds on the QoS capabilities of each link. If the link technology has no controllable QoS, the routers can do little to compensate because they rely on each link to provide predictable inter-router connectivity. However, in the presence of QoS-enabled link technologies, the router's behavior makes or breaks the availability of IP-level QoS.
Layering is recursive. For example, the QoS characteristics of an ATM VC depend on the predictability of the inter-switch links as much as on the ATM switches themselves. An ATM VC may span multiple ATM switches using Synchronous Optical Network (SONET) or Synchronous Digital Hierarchy (SDH) circuits for inter-switch cell transport. The SONET or SDH circuit itself is made up of one or more hops through various rings and multiplexors. Finally, the SONET or SDH circuits may have been multiplexed onto a single fiber along with totally unrelated circuits using different optical wavelengths—using wavelength-division multiplexing (WDM), an optical fiber multiplication technology that allows lots of virtual fibers to be provisioned within a single physical segment of fiber.
The Internet adds an extra wrinkle on the preceding model because many of the end-to-end paths used are not contained entirely within a single IP network—they are quite likely to span a number of independently administered IP networks (for example, LANs, service providers, and backbone operators as shown in Figure 2.2), each with its own routing policies and QoS characteristics.
Figure 2.2 One level's edge-to-edge network is another level's link.
When only Best Effort is required or expected, you don't really need to care about the intermediate networks along the path, as long as their routing policy allows them to forward traffic. However, to support end-to-end QoS, you need to know more about the network's dynamic behavior. You do not need to know how each network achieves its QoS goals. It is enough to simply characterize each network in terms of the latency, jitter, and packet loss probabilities that may be imposed on the traffic.
Because one person's network is another person's link, the notion of end-to-end QoS must be generalized into one of edge-to-edge QoS. The QoS achieved from one end of a network to another is built from the concatenation of networks with their own edge-to-edge QoS capabilities, and each of these network's internal paths is built from links that may be networks in their own rights, again characterized by specific edge-to-edge QoS capabilities. The ability to characterize a network's edge-to-edge QoS behavior depends on the ability to characterize and control both the link and node behaviors at the network level.