Multilayer Switching Solutions

Motivation

The ISPs' networks face requirements that were just dreams when IP was first defined in the 1970's.

Today networks need to support Higher volumes of best effort data in the traditional Internet way (using file transfers, electronic mail, and WWW access), Differentiation among various classes of traffic that may include data, voice, and video, and Quality of Service.

The capabilities of the underlying network elements - the routers and switches that implement the protocols, have become critical components.

Traditional hop-by-hop processing is beginning to reach its technological limit, and a paradigm shift is needed in the forwarding process. The goal is to evolve the IP network architecture in a way that simultaneously prepares for next generation networks, allows a smooth transition from the current environment, and controls costs.

It has often been assumed that there was just one factor to consider - production of bigger, faster, cheaper routers. The explosive growth of the Internet and its projected expansion has put raw performance in focus.

Multilayer switching technology development, however, is being driven by much more than just the need for speed. Other driving forces include:

Back to top

Traditional Routing and Packet Switching

Let's review the concept of routing and switching.

Routing is what is performed by the network to move packets from station X to station Y. There may be many routers in a network connected in some arbitrary fashion. Packets progress through the network by being sent from one machine to another toward their destination. Routing protocols (e.g., RIP, OSPF) enable each machine to understand which other machine is the next hop that a packet should take towards its destination. Routers use the routing protocols to construct routing tables. When they receive a packet and have to make a forwarding decision, the routers find the next hop router by looking up the destination IP address, found in the packet header, on the routing table.

Switching is generally used to describe the transfer of data from an input to an output port of a machine where the selection of the output port is based on Layer 2 (e.g., ATM VPI/VCI or a Frame Relay DLCI) information.

In the initial deployment of the Internet, the network was used for simple applications such as file transfer and remote login. To carry out these requirements, a simple software based router platform, with network interfaces to support the existing T1/E1 or T3/E3 based backbones, was sufficient.

As the demand for higher speed and the ability to support higher bandwidth transmission rates emerged, devices with capabilities to switch at the Layer-2 (data link) and the Layer-3 (network layer) in hardware had to be deployed. Layer-2 switching devices addressed the switching bottlenecks within the subnets of a LAN environment. Layer-3 switching devices helped alleviate the bottleneck in Layer-3 routing by moving the route lookup for Layer-3 forwarding to high speed switching hardware.

These early solutions addressed the need for wire speed transfer of packets as they traversed the network, but they did not address the service requirements of the information contained in the packets. Also, most of the routing protocols deployed today are based on algorithms designed to obtain the shortest path in the network for packet traversal (e.g., RIP, OSPF and BGP) and do not take into account additional metrics (such as delay, jitter, and traffic congestion), which can further diminish network performance.

Back to top

Label Switching

A short, fixed-length, easily processable label provides a shorthand representation of an IP packet's header in much the same way, as a ZIP code is shorthand for the house, street, city and state in a postal address.

Label switching solutions can be characterized by their use of label swapping packet forwarding combined with IP control protocols and a label distribution mechanism. It is the differences in the details that distinguish among the techniques that have been proposed.

This subject will be covered in detail in the following sections.

Back to top

IP over ATM Model

In the mid-1990s, ISPs were facing the need for rapidly growing networks. There was no specifically designed equipment for Internet backbone applications so ISPs were forced to adapt whatever equipment was commercially available. Since only the ATM switching infrastructure equipment provided the required bandwidth, deterministic forwarding performance, forwarding capacity, and traffic engineering to support their immediate requirements, the solution became the IP over ATM overlay model, mostly known as IP over ATM.

In the IP over ATM overlay model, a logical IP routed topology runs over and is independent of an underlying ATM (Layer 2 switched) topology. The IP over ATM model (see Figure 1) is centered around ATM functionality, requiring ATM software controls (signaling and routing) and hardware forwarding (label swapping) on every system in the core of the network. The IP over ATM model met application requirements by using Layer 3 functionality at the edges of the network and maximized network throughput by relying on high speed, label swapping ATM switches and PVCs (Permanent Virtual Circuits) in the core. The role of IP routing was limited to the edges of the network because this model viewed software based routers as the key source of poor network performance.

Figure 1: IP over ATM Model

However, transporting IP over an ATM network creates scalability and network administration problems. The scalability problem arises because in order to create a fully meshed network, each router has to be joined to each other router via an ATM VC, as shown in Figure 2. This creates the need for N(N-1)/2 virtual circuits (where N equals the number of nodes). This network topology does not scale well, creating explosive growth in the number of virtual circuits, as the network gets larger. This problem also called the “n-squared” PVC problem.

Figure 2: Problem of IP over ATM Model

Because IP and ATM are two different technologies that were independently designed and developed for entirely different tasks and have vastly different characteristics (connectionless vs. connection-oriented, different routing protocols, different addressing schemes, etc.) the IP over ATM network requires double administration and configuration effort. This complexity is difficult for service providers to justify.

Back to top

Multilayer Switching

Multilayer switching is the integration of Layer 2 switching and Layer 3 routing. Layer 2 switches provide high-speed connectivity, while the IP routers at the edge interconnected by a mesh of Layer 2 virtual circuits provide the intelligence to forward IP datagrams.

The difficulty with this approach lies in the complexity of mapping between two distinct architectures that require the definition and maintenance of separate topologies, address spaces, routing protocols, signaling protocols, and resource allocation schemes.

The emergence of multilayer switching solutions and MPLS is part of the evolution of the Internet to decrease complexity by combining Layer 2 switching and Layer 3 routing into a fully integrated solution.

Back to top

Multilayer Switching Basic Concepts

Two main concepts need to be reviewed prior to describing multilayer switching solutions, including MPLS: (1) The control and the forwarding components and (2) the label switching forwarding algorithm.

Control and Forwarding Components - All multilayer switching systems, including MPLS, contain two distinct functional components- a control component and a forwarding component (see Figure 3).

Figure 3: Control and Forwarding Components

Before we define these two components, let us define a forwarding table. A forwarding table is the set of entries in a table that provides information to help the forwarding component perform its switching function. The forwarding table must associate each packet with an entry (traditionally the destination address) that provides instructions on where the packet is to go next.

The control component builds and maintains a forwarding table for the node to use. It works with the control components of other nodes to distribute routing information consistently and accurately, and also ensures that consistent local protocols are used to create the forwarding tables. Standard routing protocols (e.g., OSPF, BGP, and RIP) are used to exchange routing information among the control components. The control component must react when network changes occur (such as a link failure) but is not involved in the processing of individual packets.

The forwarding component performs the actual packet forwarding. It uses information from the forwarding table (as maintained by the control component) and information contained in the packet's header and a set of local protocols in order to make forwarding decisions. In a conventional router, a longest match algorithm compares the destination address in the packet with entries in the forwarding table until it obtains the best available match. More importantly, the full decision making process has to be repeated at each node along the path from source to destination. One example of a forwarding algorithm is label swapping that is used in ATM. The label swapping algorithm matches exactly the label in the packet with an entry in a label-based forwarding table to obtain a new label and output interface for the packet.

The benefit of separating the control component from the forwarding component is that each element can be developed independently and modified independently. Obviously, the two elements need to have a common language in order to manage and use the forwarding table.

Back to top

Label Swapping Forwarding Algorithm - The forwarding component of almost all multilayer switching solutions and MPLS is based on a label swapping forwarding algorithm. This is the same algorithm used to forward data in ATM and Frame Relay switches. Before we go into details about the forwarding component, we need to explain two important terms:

An FEC (Forwarding Equivalence Class) is a group of packets that can be treated in an equivalent manner for purposes of forwarding even if their ultimate destinations are different. An example of an FEC is the set of unicast packets whose destination addresses match a particular IP address prefix. Another FEC is the set of packets whose source and destination addresses are the same. FECs can be defined at different levels of granularity, for example, all packets matching a given address prefix is a coarser granularity than all packets from a given source going to a specific destination application port.

A label is a relatively short, fixed-length, unstructured identifier that can be used to assist in the forwarding process. Labels are associated with an FEC through a binding process. Labels are analogous to the DLCIs used in a Frame Relay network or the VPI/VCIs used in an ATM network. Labels are normally local to a single data link and have no global significance (as would an IP address); they become meaningful as a result of binding to a FEC.

Label switching is an advanced form of packet forwarding that replaces conventional longest address match forwarding with a more efficient label-swapping algorithm. The label swapping forwarding algorithm requires packet classification at the ingress edge of the network to assign an initial label to each packet. In Figure 4, the ingress label switch receives an unlabeled packet with a destination address of 192.4.2.1. The label switch performs a longest-match routing table lookup and maps the packet to an FEC - 192.4/16. The ingress label switch then assigns a label (with a value of 5) to the packet and forwards it to the next hop in the Label-Switched Path (LSP).

Figure 4: Packet Path Through a LSP

An LSP is functionally equivalent to a virtual circuit because it defines ingress to egress path through a network that is followed by all packets assigned to a specific FEC. The first label switch in an LSP is called the ingress, or head end, label switch. The last label switch in an LSP is called the egress, or tail end, label switch.

In the core of the network, label switches ignore the packet's network layer header and simply forward the packet using the label-swapping algorithm. When a labeled packet arrives at a switch, the forwarding component uses the input port number and label to perform an exact match search of its forwarding table. When a match is found, the forwarding component retrieves the outgoing label, the outgoing interface, and the next-hop address from the forwarding table. The forwarding component then replaces the incoming label with the outgoing label and directs the packet to the outbound interface for transmission to the next hop in the LSP.

When the labeled packet arrives at the egress label switch, the forwarding component searches its forwarding table. If the next hop is not a label switch, the egress switch discards the label and forwards the packet using conventional longest match IP forwarding.

LSPs can be designed to minimize the number of hops, meet certain bandwidth requirements, support precise performance requirements, bypass potential points of congestion, direct traffic away from the default path, or simply force traffic across certain links or nodes in the network. Label swapping offers a lot of flexibility in the way that it assigns packets to FECs. This is because the label swapping forwarding algorithm is able to take any type of user traffic, associate it with an FEC, and map the FEC to an LSP that has been specifically designed to satisfy the FEC's requirements, thereby allowing a high level of control in the network.

The following table summarizes the important distinction between label switching and hop by hop network layer routing.

Back to top

Multilayer Switching Solutions

As mentioned previously, ISPs were looking for a solution that provided the price and performance of an ATM switch and the control of an IP router, while eliminating the complex mapping required by the IP over ATM model. Various proposals were made by vendors and service providers for multilayer switching solutions. However, these proposals were proprietary and not interoperable. Therefore, it was understood that standards were needed for a vendor independent multilayer switching solution that could run over any Layer-2 (link layer) technology.

In April 1997, the IETF established the MPLS working group to produce a unified and interoperable multilayer switching standard.

MPLS will be covered in detail in the next chapter.

Back to top


www.rad.com