3.2.20. DNS - Domain Name System Home Page Up One Level Index 3.3.3. Routing and Switching

3.3. The Network Layer in ATM Networks

The layers of the ATM model (Fig. 1-30) do not map onto the OSI layers especially well, which leads to ambiguities. The OSI data link layer deals with framing and transfer protocols between two machines on the same physical wire (or fiber). Data link protocols are single-hop protocols. They do not deal with end-to-end connections because switching and routing do not occur in the data link layer.

The lowest layer that goes from source to destination, and thus involves routing and switching (i.e., is multihop), is the network layer. The ATM layer deals with moving cells from source to destination and definitely involves routing algorithms and protocols within the ATM switches. It also deals with global addressing. Thus functionally, the ATM layer performs the work expected of the network layer.

Confusion arises because many people in the ATM community regard the ATM layer as a data link layer, or when doing LAN emulation, even physical layer. Many people in the Internet community also regard it as a data link layer because they want to put IP on top of it, and making the ATM layer a data link layer fits well with this idea.

But due to its characteristics, ATM layer is a network layer.

The ATM layer is connection oriented, both in terms of the service it offers and the way it operates internally. The basic element of the ATM layer is the virtual circuit (officially called a virtual channel). A virtual circuit is normally a connection from one source to one destination. Virtual circuits are unidirectional, but a pair of circuits can be created at the same time. Both parts of the pair are addressed by the same identifier, so effectively a virtual circuit is full duplex. However, the channel capacity and other properties may be different in the two directions and may be even zero for one of them.

The ATM layer does not provide any acknowledgments, it leaves error control to higher layers. The reason for this design is that ATM was designed for use on fiber optics networks, which are highly reliable. Furthermore, ATM networks are often used for real-time traffic, such as audio and video. For this kind of traffic, retransmitting an occasional bad cell is worse than just ignoring it.

Despite its lack of acknowledgment, the ATM layer does provide one hard guarantee: cells sent along a virtual circuit will never arrive out of order. The ATM subnet is permitted to discard cells if congestion occurs but under no conditions may it reorder the cells sent on a single virtual circuit.

The ATM layer supports a two-level connection hierarchy that is visible to the transport layer. Along any transmission path from a given source to a given destination, a group of virtual circuits can be grouped together into what is called a virtual path (Fig. 5-61). Conceptually, a virtual path is like a bundle of twisted copper pairs: when it is rerouted, all the pairs (virtual circuits) are rerouted together.


Fig. 5-61. A transmission path can hold multiple virtual paths, each of which can hold multiple virtual circuits.

3.3.1. Cell Formats

In the ATM layer, two interfaces are distinguished:

In both cases the cells consist of a 5-byte header followed by a 48-byte payload, but the two headers are slightly different. Cells are transmitted leftmost byte first and leftmost bit within a byte first.


Fig. 5-62. (a) The ATM layer header at the UNI. (b) The ATM layer header at the NNI.

The meaning of single fields in the headers (Fig. 5-62):

Following the header comes 48 bytes of payload. Not all 48 bytes are available to the user, however, since some of the AAL protocols put their headers and trailers inside the payload.

So the NNI format is the same as the UNI format, except that the GFC field is not present and those 4 bits are used to make VPI field 12 bits instead of 8.

3.3.2. Connection Setup

ATM supports both permanent virtual circuits (i.e., always present, like leased lines) and switched virtual circuits (they have to be established each time they are used, like making phone calls).

We will describe how switched virtual circuits are established.

Technically, connection setup is not part of the ATM layer but is handled by the control plane (Fig. 1-30) using a highly-complex ITU protocol called Q.2931.

Several ways are provided for setting up a connection. The normal way is to first acquire a virtual circuit for signaling and use it. To establish such a circuit, cell containing a request are sent on virtual path 0, virtual circuit 5. If successful, a new virtual circuit is opened on which connection setup requests and replies can be sent and received.

Virtual circuit establishment uses the six message types (Fig. 5-64). Each message occupies one or more cells and contains the message type, length, and parameters. The messages can be sent by a host to the network or by the network to a host. Various other status and reporting messages also exist but are not mentioned here.


Fig. 5-64. Messages used for connection establishment and release.

The normal procedure for establishing a call is for a host to send a SETUP message on a special virtual circuit. The network then responds with CALL PROCEEDING to acknowledge receipt of the request. As the SETUP message propagates toward the destination, it is acknowledged at each hop by CALL PROCEEDING.

When the SETUP message finally arrives, the destination host can respond with CONNECT to accept the call. The network then sends a CONNECT ACK message to indicate that it has received the CONNECT message. As the CONNECT message propagates back toward the originator, each switch receiving it acknowledges it with a CONNECT ACK message (Fig. 5-65).

When a host wants to terminate a virtual circuit, it just sends a RELEASE message that propagates to the other end and causes the circuit to be released. Each hop along the way, the message is acknowledged (Fig. 5-65).


Fig. 5-65. (a) Connection setup in an ATM network. (b) Connection release.

ATM networks allow multicast channels to be set up. A multicast channel has one sender and more than one receiver. These are constructed by setting up a connection to one of the destinations in the usual way. Then ADD PARTY message is sent to attach a second destination to the virtual circuit returned by the previous call. Additional ADD PARTY messages can be sent afterwards to increase the size of the multicast group.

Each SETUP message must specify an address of the destination. ATM addresses come in three forms.

The first is 20 bytes long and is based on OSI addresses. The first byte indicates which of the three formats the address is in. In the first format, bytes 2 and 3 specify a country, and byte 4 gives the format of the rest of the address, which contains a 3-byte authority, a 2-byte domain, a 2-byte area, and a 6-byte address, plus some other items. In the second format, bytes 2 and 3 designate an international organization instead of a country. The rest of the address is the same as in format 1. Alternatively, an older form of addressing (CCITT E.164) using 15-digit decimal ISDN telephone number is also permitted.

3.2.20. DNS - Domain Name System Home Page Up One Level Index 3.3.3. Routing and Switching