Asynchronous Transfer Mode |
The following sections examine how a traditional LAN operates, and contrast the two networking systems in order to clarify the strengths of ATM.
Traditional local area networks, such as Ethernet and Token Ring, use a connectionless, unreliable approach when sending information across the network. Likewise, TCP/IP data transfers between networks are connectionless and unreliable. These traditional approaches are very different from that employed by ATM, which is a connection-oriented, circuit-based technology. The following section describes the differences between these two approaches to networking.
In a traditional LAN, each client is connected to the network by an adapter card, which has a driver. Above that driver is a protocol driver, such as TCP/IP. The protocol driver bundles information into frames of varying size and gives each bundle an appropriate header. As a result, when the adapter gains access to the media, the data packets are sent on the media to a destination hardware address. Traditional LAN technologies do not guarantee that data arrives on time or in the proper order. While Ethernet and Token Ring can detect errors, they provide no service guarantees and are not responsible for the recovery of missing or corrupted data packets.
Because they are joined by a common medium, each station on the traditional LAN sees the frames of data put on the wire by each of the others, regardless of whether the frame is passed sequentially from one station to the next (as in a ring topology) or broadcast to all stations simultaneously (as with Ethernet). Each station has an adapter card, which processes the frame and examines the destination address. If the address applies to that computer, the frame is checked for errors and if there are no errors, the adapter initiates a hardware interrupt and passes the frame to the network adapter driver. Figure 14.1 shows an example of a traditional LAN.
Figure 14.1 Traditional LAN: Connectionless Data Transmittal of a Packet
Because a traditional LAN is connectionless, it cannot provide guarantees or similar features. For example, it cannot determine the status of the destination adapter to ensure that it can receive a frame. It cannot ensure that bandwidth is available throughout the transmission. Unanticipated bottlenecks due to the media access control scheme of shared access technologies can hinder a traditional LAN technology's ability to support time-sensitive applications such as video or voice traffic. Traditional LANs can use upper-level protocol drivers to verify packet transmission (retransmitting, if necessary), partition big messages into smaller ones, use time stamps for synchronization, and so forth. However, these services add time to the transmission, and none of them provide end-to-end Quality of Service (QoS) guarantees.
If the destination address is remote rather than local, the differences increase. If a router on an Ethernet network detects a broadcast meant for another network, the router accepts the packet and passes it on using TCP/IP. A TCP/IP datagram is packet-switched to its destination individually. Each frame's header contains a globally significant switching address; this address allows a routing decision to be made each time the packet is forwarded — and packets to the same destination might follow completely different paths to get there, jumping over networks employing different underlying technology. No connection is required, but no delivery is guaranteed. Figure 14.2 shows an example of two packets taking different routes through a traditional LAN.
Figure 14.2 Two Packets Taking Different Routes Through a Traditional LAN
Like an Ethernet data transfer, a routed data transfer cannot offer guarantees because bandwidth is never reserved ahead of time. The packets being sent over TCP/IP are simply put on the wire and routed. While this allows flexibility in routing around obstructions, network performance can vary a great deal depending on conditions at the routers and on the degree of network traffic at any given time.
On the other hand, ATM is connection-oriented. An ATM endpoint establishes a defined path known as a virtual circuit (VC) to the destination endpoint prior to sending any data on the network. It then sends a series of same-size frames called cells along the virtual circuit towards the destination.
While establishing the connection, the ATM endpoint also negotiates a Quality of Service (QoS) contract for the virtual circuit. The QoS contract spells out the bandwidth, maximum transit delay, acceptable variance in the transit delay, and so forth, that the VC provides, and this contract extends from one endpoint to the other through all of the intermediate ATM switches.
The path of ATM traffic is established at the outset, and the switching hardware merely needs to examine a simple header to identify the proper path. Beyond specifying a path, ATM allows a location to establish a full duplex connection (that is, traffic can travel in both directions) with multiple locations at the same time. Note, however, that ATM is an unreliable transmission protocol. It does not acknowledge the receipt of cells sent. As with LANs, missing or corrupted information must be detected and corrected by upper-layer protocols.
Figure 14.3 illustrates ATM virtual circuit and packet transmission.
Figure 14.3 ATM Virtual Circuit and Packet Transmission
Unlike Ethernet networks, ATM has no inherent speed limit, and its efficiency is not affected by the distance that the data has to travel. In addition, ATM establishes the pathway for a particular series of packets at the outset and ATM switches make minimal switching decisions thereafter. To travel across the ATM network, data is segmented into same-size cells, and encapsulated with a header that contains switching, congestion, and error-checking information.
Cells are transmitted in order, and the ATM network uses Virtual Path Identifier and Virtual Channel Identifier (VPI/VCI) numbers in the ATM header to forward them efficiently. A switch reads the header, compares the VPI/VCI to its switching table to determine the correct output port and new VPI/VCI, and then forwards the cell. All of the addressing information the ATM switch needs is contained in the header and is always found in the same place. This makes the forwarding task simple to implement in hardware, reducing latency. Moreover, with ATM from end to end, there is no data translation required if a packet must travel from a LAN through a WAN to reach a destination LAN. ATM virtual paths and virtual channels and the ATM cell structure are explained in more detail later in this chapter. Figure 14.4 shows two ATM endstations sending fixed-length cells from A to B (although ATM traffic is bi-directional).
Figure 14.4 ATM Fixed-Length Cells (Bi-Directional Traffic)
Because ATM uses small (53-byte), fixed-length cells that require less logic to process, the network spends no time determining where a particular cell begins and ends. The small cell size ensures that delays in forwarding cells are minimized. Because the cell size is so predictable, buffer usage and analysis algorithms can be simplified and optimized.
Traditional LAN technologies, such as Ethernet, have inherent speed limitations; either the underlying infrastructure (the cable) or the segment length must be changed to support fast traffic. However, unlike Ethernet and Token Ring, ATM has no such imposed limitations. If you can invent a faster physical layer — if you can design a quicker method of transmitting data from one place to another over one wire or many wires — ATM can work over that physical layer and at those new speeds. In addition, ATM allows information with different requirements and from different nodes to be transmitted nearly simultaneously without contention.
ATM places fixed-length cells on the media when the data is produced according to the parameters of a negotiated connection. ATM can simultaneously handle the needs of isochronous (time-dependent) traffic, such as voice and video, and non-isochronous traffic, such as LAN data.
The next section describes the hardware components that connect an endstation to an ATM network, and the software that establishes, manages, and maintains the network connections.