Asynchronous Transfer Mode (ATM)


Asynchronous Transfer Mode was developed by AT&T Bell Labs during the 1980s. It is a connection-oriented technology, much like the public telephone system, in which a connection is established between two endpoints before the actual data exchange can begin. ATM can be used in both LAN and WAN environments and provides for full-duplex communication. The fact that many kinds of traffic are being carried on electronic networks today influenced the design of ATM. The PSTN was originally designed to carry voice communications along with other simple services, such as telex. Today, electronic networks are used to transmit data, voice, and video, and to provide connections for other kinds of multimedia applications.

Note

The ATM Forum is a nonprofit organization that seeks to promote the use of ATM technology. You'll find technical specifications and other information about ATM at ATM Forum's Web site: www.atmforum.com/. Unlike organizations such as the IEEE (Institute of Electrical and Electronics Engineers), ATM Forum offers approved specifications for ATM free at its Web site.

In an attempt to design a one-size-fits-all network and provide for new kinds of traffic in the future, ATM uses a fixed packet size of 53 bytes (48 bytes for the payload and 5 bytes for the header) to transmit data. In referring to a packet of data in ATM networks, the term cell is normally used. The advantage to using a fixed-length cell as opposed to a variable-length packet such as that used by Frame Relay ”discussed later in this chapter ”is that hardware devices that switch network traffic usually can be designed to operate at higher speeds when switching fixed-length packets of information. The algorithm can be implemented with less complex code and hardware design because the switch that routes cells through an ATM network doesn't have to perform calculations to determine where one packet stops and another begins, which is the case in Frame Relay networks where packet size is not fixed.

The small header also means that the switch must process much less information for each packet. There are two kinds of ATM frame headers, but both are 5 bytes. During the development of ATM, some argued for a smaller cell size of 32 bytes, which would provide a better quality voice service. Others argued for a cell size of 64 bytes, which would provide more efficient data-delivery services. The 48-byte payload was finally chosen as a compromise. Add that to the 5-byte header, and you have a fixed-cell size of 53.

ATM Frames

ATM has two types of frame headers. The first is the User -Network Interface (UNI) header, which is used for ATM cells that travel between an endpoint in the connection ”such as a standard network router or perhaps a PC or high-end workstation equipped with an ATM network card ”and the ATM switch. This frame type, shown in Figure 16.2, consists of 5 bytes divided into eight fields.

Figure 16.2. Note the contents of the ATM UNI cell header.

graphics/16fig02.gif

The fields of the UNI cell header are as listed here:

  • GFC (Generic Flow Control) ” This frame headers. The first is the 4-bit field isn't generally used any more, but you might find it used with local significance for identifying individual computers on the network or for traffic-control functions. The default value for this field is four 0 bits.

  • VPI (Virtual Path Identifier) ” This 8-bit field specifies a value that identifies the virtual path for a stream of cells. The VPI, used in conjunction with the next field, identifies a connection set up through the network of switches. A value of 0 in this VPI field means that the cell is being used for network administrative purposes, such as call setup or terminations.

  • VCI (Virtual Channel Identifier) ” This 16-bit field is used with the VPI to identify a path through the switched network. As explained later, many cells that have different values in the VCI field can have the same VPI value. Although up to 65,536 values can be stored in a 16-bit field, values 0 “15 are reserved for use by the ITU, and values 16 “32 are reserved by the ATM Forum for various signaling and management operations.

  • PT (Payload Type) ” The first bit in this 3-bit field indicates whether the packet contains user data (value = 0) in the payload section of the cell or whether the payload section contains control data (value = 1). If the cell contains user data, the second bit can be used to report network congestion. The second bit is set to 0 by the source and is set to 1 by a switch that is experiencing congestion. The destination endpoint then can use flow-control mechanisms to throttle back transmissions until it receives cells with a value of 0 in this bit. The third bit is used to indicate that this is the last cell in a series of cells that make up an AAL5 user frame. For nonuser cells, this value is used for administrative purposes.

  • CLP (Cell Loss Priority) ” When congestion in the network makes it necessary to drop cells, those with a value of 1 in this single-bit field are the primary candidates to be dropped as compared to those with a value of 0 in this field.

  • HEC (Header Error Control) ” This 8-bit field is used to store a CRC value that can be used to detect whether the cell becomes corrupted during transport.

The second kind of ATM cell header is the Network-Node Interface (NNI) format. NNI is used for transmissions between the switches that make up the ATM network, which, as you can see in Figure 16.3, is similar to the UNI cell header.

Figure 16.3. Note the contents of the ATM NNI cell header.

graphics/16fig03.gif

The main difference from the UNI header is that the NNI cell doesn't have the GFC field. The other fields are there; the VPI field has grown from 8 bits to 12 bits, which can provide for up to 4,096 virtual paths through the network.

ATM Connections

Connections created between endpoints in the ATM network can be either permanent virtual connections (PVCs) or switched virtual connections (SVCs) . Each switch in the ATM network keeps track of connections using routing tables, and decisions are made based on the information in the 5-byte header. Because the switch does not have to make any decisions based on the service data contained in the cell's payload section, hardware-based switches can quickly route and transport cells to their destinations.

ATM provides two kinds of transport connections: virtual channels and virtual paths . A virtual channel is used for an individual connection through the network. The virtual channel identifier (VCI) is used to identify cells in this connection. A virtual path is made up of multiple virtual channels that all share a common path through the network; it is identified in the cell header by a virtual path identifier (VPI) . When connections are grouped using VPIs, management and controlling functions must be performed only once for a group of individual connections (using the VPI), making the network operate more efficiently .

However, the values for the VPI/VCI fields do not remain the same when the cells travel through ATM switches. When a cell is received on one port of the switch, the VPI/VCI fields are used to perform a lookup in the routing table. When a match is found, the new VPI/VCI values are inserted into the cell and it is transmitted out on a port that gets it to its eventual destination, based on the path created during call setup (or as determined by the administrator for a PVC). To put it another way, VPI/VCI values have local significance only for the particular connection.

Before any data can be exchanged, the virtual connection path must be determined. Similar to the mechanism used in the telephone network, the path through the network from one switch to another switch is predetermined before any data exchange takes place. In determining the path that the connection will use, the quality of service for the traffic is taken into consideration to ensure that a path will be created that can provide the bandwidth needed by the service. Traffic is policed to ensure that a particular connection does not abuse the network by using resources to which it is not entitled.

The ATM Architecture Model (B-ISDN/ATM Model)

The basic architecture used for ATM involves three layers : Physical layer, ATM layer, and ATM Adaptation layer (see Figure 16.4).

Figure 16.4. The ATM architecture model.

graphics/16fig04.gif

As you can see in this figure, the Physical layer is further subdivided into the Physical Medium Dependent (PMD) sublayer and the Transmission Convergence (TC) sublayer. The ATM Adaptation layer is further divided into the Segmentation and Reassembly (SAR) sublayer and the Convergence sublayer (CS).

The Physical Layer

The two components of the Physical layer are responsible for the actual transmission of cells across the network. Signal encoding and interfacing with the network transmission media (such as copper wire or fiber- optic cables) are performed by the PMD. By keeping the physical aspects of the protocol as a separate component, it is possible to define many kinds of PMDs for ATM. Thus, it's easy to create a PMD to allow ATM to operate over many types of physical networks.

The TC component of the physical layer interfaces with the ATM layer and is responsible for taking the stream of bits supplied by that layer and mapping the ATM cells onto the PMD-specific frame. For example, if the underlying network is SONET, the TC component maps the ATM fixed-length cells onto SONET frames and then passes these to the SONET PMD.

The ATM Layer

The VPI/VCI routing functions and flow control mechanisms are implemented on the ATM layer. Remember that the combination of VPI/VCI allows for multiplexing many connections across a common virtual circuit. The ATM layer is responsible for this multiplexing- demultiplexing functionality. This layer also can monitor connections and take corrective action if it finds that a connection is not performing within the boundaries that were negotiated during call setup. Routing functions use the VPI/VCI to ensure that the cells travel over the proper connection between the connection's endpoints. However, similar to the Internet Protocol (IP), the ATM layer does not provide for error control. If packets are dropped at a switch along the connection's path, it's up to higher-level protocols to recognize this and take the necessary actions to retransmit the data.

The ATM Adaptation Layer (AAL)

The AAL is responsible for packaging the data on the sending part of the connection into 48-byte payloads, and for unpacking the data and reassembling it into larger messages on the receiving end. For example, an IP datagram handed down by the IP protocol will be larger than the payload size that the ATM cell can handle. In the ATM Adaptation layer, this larger message is fragmented into smaller payloads and sent down to the Physical layer for transmission in ATM cells. At the receiving end of the connection, the individual payloads are reassembled back into the larger message and passed up to a higher-level network protocol.

In the Convergence sublayer (CS), a protocol data unit (PDU) from a higher-level protocol is encapsulated into a format so that it can be reassembled into that same format at the receiving end. In the Segmentation and Reassembly (SAR) sublayer, the data is divided into 48-byte payloads. These payloads then are passed to the ATM layer, which attaches the header to create the 53-byte cell.

Several ATM adaptation layers have been defined by the ITU-T:

  • AAL0 ” This adaptation layer was created to provide for a user-defined layer. Basically, the 48-byte payloads are passed up and down the protocol stack when sending or receiving data.

  • AAL1 ” This adaptation layer was created to provide for a time-dependent, constant bit-rate service for connection-oriented applications. AAL1 is usually found in voice or video applications and includes a higher amount of overhead when compared to other adaptation layers. For example, time stamps and error checking can be added to the payload section of the cell.

  • AAL2 ” This adaptation layer was created to provide a variable bit-rate service for connection-oriented applications. AAL2 is used for compressed video and voice, for example.

  • AAL3/4 ” These two adaptation layers offer a variable bit-rate service for connection-oriented (was AAL3) or nonconnection-oriented (was AAL4) applications, such as LAN traffic. Although originally defined as two separate adaptation layers, it is now a single entity. A small amount of overhead data (such as segment size and sequencing numbers ) is added to the payload section of the ATM cell.

  • AAL5 ” This adaptation layer gives a variable bit-rate service similar to AAL3/4 but has a lower overhead than AAL3/4. AAL5 is normally used for LAN traffic such as IP. AAL5 improves over AAL3/4 by adding a trailer to the data to be transferred that provides for error checking and specifies the size of the payload.

Of these layers, AAL5 was created specifically to make ATM an attractive choice for typical LAN applications. The AAL5 frame format is composed of several fields that are made up of the actual payload, followed by the AAL5 trailer fields:

  • Payload ” The payload field contains the actual application data and can range in size from 1 byte up to 65,535 bytes in length.

  • Pad ” This field, which can range from 0 to 47 bytes in length, is used for padding (adding zeros) to the frame to ensure that the total frame (or PDU) can be evenly divided into the 48-byte payloads created by the SAR sublayer.

  • User to User Indication ” This single-byte field is basically undefined and left up to the implementation.

  • Common Part Indicator ” This single-byte field is used for alignment processes to be sure that the AAL5 trailer is on a 64-bit boundary.

  • Length of Payload ” This 2-byte field specifies the length of the payload field. Length of Payload does not include any padding bytes, so it can be used by the receiving end to determine where the actual payload ends and padding begins.

  • CRC ” This 4-byte field is used to store a CRC value to ensure the integrity of the entire PDU being transmitted. It is not a calculation on the contents of any individual ATM cell, but applies to the message that is being broken into fragments for transmission in ATM's 48-byte payloads.

If you'll remember, the third bit of the Payload Type Indicator field of the ATM header is used to specify that the cell is the last cell of a message (or PDU) that was broken down into 48-byte payloads. Thus, larger messages from higher-level protocols (such as IP) can be identified and reassembled while passing through the ATM network of switches in simple, short, 48-byte payloads.

LAN Emulation (LANE)

ATM was originally designed to be a wide area networking protocol. However, local area networks have changed dramatically in the past few years. Whereas a simple 10BASE-T network might have provided sufficient bandwidth a few years back, you now see LANs composed of, or connected by, much faster links, such as Gigabit Ethernet and 10 Gigabit Ethernet.

Speed is not the only thing that's changed in the local area networking scene. The LAN that was used for simple file and print sharing now must support various applications. For example, videoconferencing is becoming a common application in the LAN. In a traditional LAN, however, you can't "reserve" or "guarantee" that the bandwidth needed to support such an application will always be available.

Using ATM in a LAN can help reduce congestion if the network consists of multiple kinds of traffic, such as one that supports workstations and file servers along with multimedia applications. If you use ATM as a backbone, you can interface it with your normal Ethernet or Token-Ring segments. The ATM Forum has published specifications for LANE to define the approach to be taken for using ATM in the LAN environment. LANE specifies how other traditional LAN protocols ”such as Ethernet (IEEE 802.3) and Token-Ring (IEEE 802.5) ”are to be carried over ATM.

The LANE protocol was developed to allow a LAN to be emulated using ATM. That is, LANE makes an ATM switched network look to the client computer just like a typical LAN. LANE consists of the following:

  • LAN Emulation Client ” This software interfaces between the traditional client's LAN software and ATM. To the client's LAN software, the LAN Emulation Client appears to operate just like the local LAN. To the ATM network to which the client is connected, the LAN Emulation Client performs the necessary ATM functions.

  • LANE Services ” This component of LANE provides for translating between traditional LAN addresses and ATM addresses.

LANE can be used with Ethernet and Token-Ring networks to provide a faster connection for your LAN because all traffic is sent through ATM switches. You can find many ATM switches that include support for LANE, or, as is the case with Windows 2000 or Windows Server 2003, the LAN Services component can reside on a Windows 2000/2003 Server.

IP over ATM

For most implementations , you'll find that AAL5 is used to send IP datagrams over ATM. The relevant RFC documents are RFC 1577, "Classical IP and ARP over ATM," and RFC 1626, "Default IP MTU for use over ATM AAL5." RFC 1577 doesn't define how ATM networks function, but provides instead a method for IP and address resolution mechanisms over an ATM network. RFC 1626 defines the value of 9,180 bytes as the default Maximum Transmission Unit (MTU) size for IP datagrams on an ATM network. It also discusses how, during call setup for a switched virtual circuit, the actual MTU size used for the connection can be negotiated.

When IP datagrams are sent over an ATM connection, the AAL5 trailer information is added to the end of the datagram and then passed to the SAR sublayer for division into the 48-byte payloads required for ATM. As explained in the preceding section, when the cell containing the last part of the IP datagram is created, the third bit of the PT (Payload Type) is set to 1 so that the endpoint recognizes that it now has all the information necessary to reassemble the smaller payloads into the original IP datagram.

IP over ATM has several advantages that make it a better choice for IP networks than LANE. First, LANE doesn't support the QoS capabilities of ATM, which you'll learn about in the next section. Second, IP over ATM has a lower overhead, so more bandwidth is available for transmitting actual data. Windows 2000 and Windows Server 2003 also support IP over ATM. Because of this, IP over ATM usually is faster than LANE.

Similar to LANE, the IP over ATM software interfaces between the TCP/IP protocol stack and the ATM network.

ATM Service Categories

Although early implementations of ATM use the technique of reserving a specified, fixed amount of bandwidth for a connection in advance, service categories now allow for several levels of service that can be matched to the needs of different types of traffic. Each level of service defines the network behavior for a different kind of network traffic that can be used to specify the QoS required for certain kinds of applications. For example, some network applications require precise timing and cannot tolerate excessive delays or reductions in bandwidth (such as video transmissions). Other applications tend to make bursty requests when bandwidth requirements vary widely in just a short time (such as file transfers).

The following service categories are presently defined by the ATM Forum:

  • Constant Bit Rate (CBR)

  • Real-Time Variable Bit Rate (rt-VBR)

  • Non “Real-Time Variable Bit Rate (nrt-VBR)

  • Available Bit Rate (ABR)

  • Unspecified Bit Rate (UBR)

The CBR category is based on providing a constant maximum bandwidth allocation for the connection for time-sensitive applications. The application does not always have to use the maximum bandwidth, but the maximum is available if needed for this level of service. This service category is suitable for use by real-time applications, voice and video applications, videoconferencing, and other similar applications.

The rt-VBR service category also is meant to provide a high level of service for time-sensitive applications that do not always maintain a constant bit rate but are still time-sensitive applications.

The nrt-VBR service category is similar to the rt-VBR category in that the expected traffic will be bursty in nature, but the nature of the communications does not require that data be delivered without significant delays. Both VBR categories can be useful for applications such as voice, when compression techniques are used, and possibly transaction-based applications, such as reservation systems or for carrying Frame Relay traffic.

The ABR category is intended for applications that might increase or decrease their traffic level depending on network conditions. In other words, they can be satisfied by using whatever bandwidth is available. Connections of this type can specify a minimum required bandwidth level but then can use more bandwidth as the network makes it available. Typical uses for this kind of service are LAN connections, such as distributed file services.

The UBR service category represents a "best effort" connection and is intended for applications that really don't care about bandwidth or QoS. This bottom-of-the-barrel kind of service is useful for applications with traffic that needs to get from one place to another but is in no hurry; for example, file transfers that can be done in a batch mode and do not have users sitting at the keyboard waiting for completion. Messaging services, such as email, also might find this service level sufficient.



Upgrading and Repairing Networks
Upgrading and Repairing Networks (5th Edition)
ISBN: 078973530X
EAN: 2147483647
Year: 2003
Pages: 434

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net