Figure 7: ATM Signaling
When an ATM-aware process needs to connect to another process somewhere else on the network, it requests the signaling software to establish a VC. To do this, the signaling software uses the signaling VC and the adapter to send a VC creation request to the ATM switch. Each ATM switch forwards the request on to another switch until the request reaches its destination. A switch determines which switch to send the request to next, based on the destination address for the connection and the switch's internal network database (routing tables). Each switch also determines whether or not the service category and quality of service needs can be met. At any point in this process, a switch can refuse the request. If all of the switches in the path are able to support the circuit as requested, the requesting end station receives a packet that contains the VC number. From that point on, the ATM-aware process can communicate with the destination process directly by sending packets to the VC number identified. For the most part, the originating process doesn't need to be concerned with whether or not the packets are getting through. (Note that this depends on the service category. In less reliable service categories, the overlying protocol layer may need to monitor packet loss and delay.)
The ATM adapter shapes data traffic for each VC to fit the contract made between the ATM switch and the signaling software. If for any reason too much data is sent, the ATM switch will ignore the data and it will be lost. This is true across the network; if bandwidth or speed exceeds the limits established by the contract, any deviceincluding the ATM adaptercan simply drop the data. And if this happens, the end stations concerned may not be notified of the packet loss.
Point to Multipoint
Since ATM is a connection-oriented medium, there are no inherent capabilities for broadcasting or multicasting packets as there are in a standard LAN environment. To provide this capability, the sending node could make a connection to all of the destinations and send a copy of the data on each connection. However, this would be highly inefficient. A more efficient way to do this would be through point-to-multipoint connections. This type of connection connects a single source end point (known as the root node) to multiple destination end points (known as leaves). The ATM switches copy cells to the multiple destinations where the connection splits into two or more branches.
Point-to-multipoint connections are unidirectional; the root can transmit to the leaves, but the leaves cannot transmit to the root or to each other on the same connection. Leaf-to-node and leaf-to-leaf transmission requires a separate, likely point-to-point, connection. One reason for this limitation is the simplicity of AAL5 and the inability to interleave cells from multiple payloads on a single connection.
Protocol Layer
The protocol layer of the ATM software is a high layer of abstraction and is concerned more with communicating with higher-level processes and applications than with ATM. The bottom of the protocol layer handles packet transmission and reception, connection requests, and other ATM services. The top of the protocol layer communicates with applications and other networking protocols such as TCP/IP.
Figure 6: ATM Hardware Interface
Basically, the adapter knows only two things: how to communicate with an ATM switch and how to send lots of packets. Because of this, the adapter is able to transmit packets on established permanent virtual circuits (PVCs) only. (A PVC is a manually configured virtual connection that establishes a path from one ATM device to another.) In other words, if you tell an ATM adapter that a certain virtual circuit exists, it can then use it. At the factory, all ATM adapters are configured to understand virtual path zero, virtual circuit 5 to be a default communication line to any ATM switch. As you'll see in the following section on signaling, this is the virtual circuit used by adapters and switches to negotiate a switched virtual circuit (SVC). A SVC is a network connection created on demand to meet the needs of a specific transmission.
Signaling
Signaling components exist at the end station and at the ATM switch. The signaling layer of ATM software is responsible for creating, managing, and terminating virtual circuits (VCs). The ATM standard wire protocol implemented by the signaling software is called User Network Interface (UNI). There is also a standard for the way one ATM switch signals another ATM switch. It is called Network Network Interface (NNI).
Figure 5: ATM Fixed-Length Cells (Bi-directional Traffic)
Because ATM uses small (53-byte) fixed-length cells that require minimal logic to process, the network spends no time determining where a particular cell begins and ends. The small cell size ensures that there are no bottlenecks at the switch, as there would be if a small packet had to wait for a large packet to be processed before proceeding. Because the cell size is so predictable, buffer usage and analysis algorithms can be simplified and optimized.
To summarize, traditional LAN technologies such as Ethernet have inherent speed limitationseither 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 layerif you can design a quicker method of transmitting data reliably from one place to another over one wire or many wiresATM 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 fear of collision. ATM places fixed length cells on the media when the data is produced according to the parameters of the previously 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.
Service Guarantees
As part of the previously negotiated connection, ATM end points establish a service contract that guarantees a specific quality of service. Note that quality of service (QoS) guarantees are not offered by traditional LAN solutions.
With a traditional LAN, any notion of service guarantee is based on priority, where one transmission receives delivery preference over others. Because the condition of the network and data recipient aren't known prior to transmission (traditional LANs are connectionless), traffic is subject to delay at routers and so forth. These unforeseen delays can make bandwidth availability and delivery times difficult to predict. While the traffic with the higher priority will generally reach its destination prior to traffic with a lower priority, the higher priority traffic may still arrive too late.
ATM offers very granular, explicit service guarantees that are not based on a relative structure (such as priority). With ATM, a data supplier can request a specific bandwidth, maximum delay, delay tolerance, and so forth. Each ATM switch then determines whether or not it can meet the request after taking prior allocations into consideration. If it can accommodate the transmission, it will guarantee the service level and allocate the necessary resources. With ATM, the service contract is enforced and the bandwidth is allocated at the hardware levelall of the switches between the sender and receiver know and agree to the service level before the contract is granted. The source station hardware, also having agreed to the contract, is responsible for shaping the traffic before it enters the network.
ATM offers the following service categories:
*
Constant Bit Rate (CBR), which specifies a fixed bit rate. Data is sent in a steady stream with low cell loss. Note that this is expensive because the granted bandwidth must be set aside, regardless of whether or not it is actually used. Only the most time-sensitive applications require CBR.
*
Variable Bit Rate (VBR), which specifies a throughput capacity over time, but data is not sent at a constant rate. This also specifies low cell loss.
*
Unspecified Bit Rate (UBR), which does not guarantee bandwidth or throughput. Cells can be dropped.
*
Available Bit Rate (ABR), which ensures a guaranteed minimum capacity but allows data to be sent at higher capacities when the network is free. ABR adjusts the rate of transmission based on feedback. This specifies low cell loss. ABR provides better throughput than VBR, but is less expensive than CBR. It is important to note that ABR has only recently been fully defined and not all hardware and software support this service category.
Guaranteed QoS allows ATM to support time-sensitive (isochronous) applications, such as video and voice, as well as more conventional network traffic. While 100-megabit Ethernet and other high speed networks can provide comparable bandwidth, only ATM can provide the QoS guarantees required for real-time telephony, VCR-quality video streaming, CD-quality sound, smooth videoconferencing, and other no-delay voice and video applications.
QoS is so vital to the industry that a number of initiatives are underway to provide QoS support for TCP/IPbased networks. One such initiative is the Resource Reservation Protocol (RSVP), a specification proposed by the Internet Engineering Task Force (IETF) that allows software developers to "reserve" bandwidth on the Internet to deliver real-time video and audio data streams. Solutions such as these are useful, but they require that all nodes on the network participatewhich can be difficult to guarantee on heterogeneous networks. And, because these solutions shape the traffic in software, latency and variations in delay may be introduced. This is not the case with ATM.
Perhaps most importantly, the acceptance of ATM as a common standard for both LANs and WANs enables enterprise deployment of QoS applications and integrated services. The deployment of ATM/Asymmetric Data Subscriber Line (ADSL) to the home enables residential access to these services. (ADSL uses existing copper twisted pair telephone lines to transmit broadband data to the home, without requiring recabling or a new telephone infrastructure.)
The ATM Adaptation Layer (AAL)
The ATM Adaptation Layer (AAL) is responsible for the creation and reception of 48-byte payloads through the lower layers of ATM on behalf of different types of applications. ATM Adaptation is necessary to link the cell-based technology at the ATM Layer to the bit-stream technology of digital devices (such as telephones and video cameras) and the packet-stream technology of modern data networks (such as Frame Relay, X.25 or LAN protocols such as TCP/IP).
There are several different AALs each providing a different class of service:
*
AAL1AAL1 provides circuit emulation over an ATM network. This requires constant bit rate, time-dependent service. To provide this, AAL1 adds timestamps, error checking and sequencing to the data payload. Additional functionality is provided in AAL1 to load the 48-byte cell payload with multiple smaller-than-48-byte samples, as might be required with voice streams. Due to its high overhead, AAL1 is used only when these features are required.
*
AAL2AAL2 is a mechanism to allow the transfer of high-speed, variable bit rate information in an isochronous, connection-oriented manner. Unlike AAL1, AAL2 is designed to use bandwidth only when data is sent. AAL2 is not fully defined by the standards committee and is not used.
*
AAL3/4AAL3/4 is a combination of two separate AAL specifications. AAL3 was intended for the framing of connection-oriented protocols, while AAL4 was intended for the framing of connectionless protocols. While pursuing these two standards, the ATM standards bodies learned that there was no difference in the framing between the two types of protocols; therefore, they combined the two separate framing methods to create AAL3/4. This AAL adds information to the payload regarding segment size, sequencing, and ordering control. This AAL is rarely used because of the high overhead required; AAL5 provides the same services with minimal overhead.
*
AAL5AAL5 provides a way for non-isochronous, variable bit rate, connectionless applications to send and receive data. AAL5 was developed as a way to provide a more efficient transfer of network traffic than AAL3/4. AAL5 merely adds a trailer to the payload to indicate size and provide error detection. AAL5 is the AAL of choice when sending connection-oriented or connectionless LAN protocol traffic over an ATM network.
Summary of Benefits
In summary, ATM provides the following benefits as compared to a traditional LAN solution:
*
SpeedATM imposes no architectural speed limitations. It uses a pre-negotiated virtual connection, fixed-length cells, message segmentation and re-assembly in hardware, and switching at the hardware level to support fast routing of data.
*
Guaranteed QoS and support for isochronous trafficTraffic management at the hardware level ensures that the level of service exists end to end (even over a WAN). Each VC is unaffected by traffic on other VCs. Small packet size and a simple header structure ensure that switching is done quickly and that bottlenecks are eliminated at the switch.
*
Support for new applicationsATM supports integration of voice, video, and data services on a single network. ATM/ADSL enables residential access to these services.
The next section describes the components that connect an end station to an ATM network.
Top Of Page
How ATM Works ATM Client Software Requirements
This short section describes the software components that a single computer (or end station) must use to connect to an ATM network. It also introduces the basic communication processes between an end station and an ATM switch.
To connect to an ATM network, an end station must have the following basic components:
*
A hardware interface (ATM adapter)
*
Software to interface with the adapter
*
Signaling (connection setup) software
*
Protocol support
Hardware Interface
The hardware interface or adapter puts data on the wire and communicates directly with an ATM switch. It has specific functions for handling ATM packet transmission. The main feature that an ATM adapter provides (and that most other adapters do not), is a high level of traffic shaping. An ATM adapter uses the service category and contract negotiated between the end station and the switch to control how fast it sends packets to the ATM switch. The adapter itself doesn't understand how to negotiate a contract, but once a contract and service category have been established by higher-level processes, the adapter is optimized to enable it to send packets efficiently, based on the level of service specified in the contract.
The ATM adapter uses a wire-based protocol to communicate directly with the ATM switch. Higher-level software does not need to be concerned with this communication. The wire protocol is separate from the ATM specifications. Examples of wire protocols include Synchronous Optical Network (SONET) and Asymmetric Digital Subscriber Line (ADSL).
Figure 3: 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 target machine. It cannot ensure that bandwidth will be available throughout the transmission. Unanticipated bottlenecks are common, which can hinder a traditional LAN's ability to support time-sensitive applications such as video-on-demand or voice traffic. Traditional LANs can use upper-level protocol drivers are to do such things as verify packet arrival (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 guarantees.
ATM, on the other hand, is connection-oriented. An ATM end point establishes a path (a virtual circuit, or VC) to the destination end point prior to sending any data out on the network. It then sends a series of same-size packets (called cells) along this path towards the destination. Note that while establishing the connection, the ATM end point also negotiates a quality of service (QoS) contract for the transmission. This contract spells out the bandwidth, maximum delay, acceptable variance, and so forth that the VC will provide, and this contract extends from one end point to the other. ATM provides guaranteed quality of service through a LAN, a WAN, and a public internetwork.
Unlike LAN traffic, ATM traffic does not need to be redirected at each router or switch. Its path is identified at the outset, and the switching hardware merely needs to examine a simple header to identify the proper output port. Note, however, that ATM is an unreliable transmission protocol. It does not expend bandwidth sending or waiting for data acknowledgement. As with LANs, missing or corrupted information must be detected and corrected by upper-level protocols.
Introduction
Asynchronous Transfer Mode (ATM) describes a number of related, standards-based technologies that provide high-speed communication over a variety of media. Before you can decide whether to use ATM in your network deployment, you should understand how it integrates with current networking environments and how it will function with new networking environments that will be available. This paper's main emphasis is on the integration of ATM with the Microsoft Windows operating system. It covers the ATM services included in Windows 95 and the Windows NT 4.0 operating system, as well as the native ATM support included in Windows 98 and Windows 2000.
Where Is ATM Used Today?
ATM is a wide array of services and concepts, and its usefulness can only be measured when you understand how all the various pieces fit together, in both their current and future states. Right now, ATM technologies exist in a scattered form. Some networks have been completely transformed into native ATM networkswith software, end-station hardware, and network fabric all made up of ATM devices and drivers. In other networks, ATM only shows up as a backbone or trunk provider. And in some instances, ATM is deployed in small pockets intermixed with standard local area network (LAN) components and other networking technologies.
ATM is still going through a difficult acceptance stage. In some cases, ATM's usefulness is being judged by how well it emulates legacy networks; that is, how it compares with traditional LANs. In other cases, ATM provides so many clear advantages in terms of speed, manageability, and accuracy that it seems to be the only viable solution and its acceptance is guaranteed.
ATM is expensive; it hasn't yet fully realized the advantages of commodity availability and pricing. However, in the near future, more integrated ATM services at the operating system level, more universal drivers that bring down the cost and complexity of using ATM, and more consistent and reliable ATM services in all networking areas will make ATM more attractive.
How This Paper Is Organized
To clarify ATM and to clearly define the terms and concepts that are key to any understanding of ATM, this paper begins with a brief overview of ATM and related technologies. It then describes how ATM is supported and integrated into today's networks. The final section includes details on Microsoft Windows ATM support, how the support is achieved, and how you should work with the new, native ATM services provided in Windows 98 and Windows 2000.
Although some of the information in this paper may not be new to you, it is recommended that you read the brief overview section as it provides a background for much of the material in later sections.
Top Of Page
ATM Technical Overview
This section provides a brief technical overview of ATM. It also introduces some important concepts that you'll need to be aware of before proceeding.
What Is ATM?
The phrase "Asynchronous Transfer Mode" doesn't say much about what ATM does or what advantages it offers. In fact, ATM alone doesn't refer to a specific device or system. It is a group of related technologies. In this paper, ATM refers to software, hardware, and connection media together. This collection of ATM technologies cannot be described in a single sentence, but some important aspects include:
*
Scalable performanceATM can data across a network quickly and accurately, regardless of the size of the network. ATM works well on very low to very high-speed media.
*
Flexible quality of service (QoS)ATM allows the accuracy and speed of data transfer to be specified by the client.
In addition, ATM is a deterministic networking systemit provides absolute, predictable, guaranteed quality of service. From end to end, every component in ATM provides a high level of control and reliability.
A top-level picture of ATM would show two basic components: an end station, (a computer connected to the ATM network) and an ATM switch (the device responsible for connecting end stations and making sure data is transferred successfully).
Figure 1: ATM Network Components
Differences between a Traditional LAN and an ATM LAN
To further clarify ATM, it is beneficial to examine how a traditional LAN operates and contrast the two networking systems.
Connectionless vs. Connection-Oriented
Traditional local area networks, such as Ethernet and Token Ring, use a connectionless, unreliable approach when sending information across the network.
Each client is connected to the network by an adapter card, which has a driver, and 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. Then, when the wire is available, the data packets are shipped off to be individually routed through the maze of hardware and software. Each packet in a series of packets could conceivably take a different route to reach the same destination. Traditional LAN technologies do not guarantee that data will arrive on time or in the proper order. Ethernet and Token Ring can detect errors, but they provide no service guarantees and are not responsible for recovery from missing or corrupted data packets.
>
Figure 2: Two Packets Taking Different Routes Through a Traditional LAN
Because they are joined by a common medium, each station on the traditional LAN sees the packets of data put on the wire by each of the others, regardless of whether the packet 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 packet and examines the destination address. If the address applies to that machine, the adapter does a hardware interrupt and accepts the packet.
Figure 3: 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 target machine. It cannot ensure that bandwidth will be available throughout the transmission. Unanticipated bottlenecks are common, which can hinder a traditional LAN's ability to support time-sensitive applications such as video-on-demand or voice traffic. Traditional LANs can use upper-level protocol drivers are to do such things as verify packet arrival (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 guarantees.
ATM, on the other hand, is connection-oriented. An ATM end point establishes a path (a virtual circuit, or VC) to the destination end point prior to sending any data out on the network. It then sends a series of same-size packets (called cells) along this path towards the destination. Note that while establishing the connection, the ATM end point also negotiates a quality of service (QoS) contract for the transmission. This contract spells out the bandwidth, maximum delay, acceptable variance, and so forth that the VC will provide, and this contract extends from one end point to the other. ATM provides guaranteed quality of service through a LAN, a WAN, and a public internetwork.
Unlike LAN traffic, ATM traffic does not need to be redirected at each router or switch. Its path is identified at the outset, and the switching hardware merely needs to examine a simple header to identify the proper output port. Note, however, that ATM is an unreliable transmission protocol. It does not expend bandwidth sending or waiting for data acknowledgement. As with LANs, missing or corrupted information must be detected and corrected by upper-level protocols.
Figure 4: ATM Virtual Circuit and Packet Transmission
Network Speed
While traditional networks are increasing in speedfor example, there is now 100 MB and Gigabit Ethernetthe underlying architecture has speed limitations. Ethernet works on a carrier sense multiple access/collision detection (CSMA/CD) mechanism. It uses a half-duplex method to exchange data (one node transmits while the other node waits for the data), and, to prevent collisions, it allows only a single node to use the shared media (in a half-duplex fashion) at any one time. The layer that does the collision detecting and carrier sensing can only manage segments up to a certain length and up to a certain transmission speed; these limitations are associated with the length and propagation speed of the wire and the speed that data is placed on the wire. For example, if your network is upgraded from 10 MB Ethernet to 100 MB Ethernet (that is, you multiplied the transmission speed by 10), you would need to divide the maximum length of a segment by 10. If you further increase your network speed from 100 MB to 1000 MB, you would need to reduce your segment length to 25 meters. Note that these numbers are based on copper wire. Your maximum segment lengths can be longer if you have a medium that propagates more rapidly. (For this reason, very fast Ethernet [Gigabit Ethernet] requires fiber cable.)
ATM, on the other hand, has no inherent speed limit, and its efficiency is not affected by the distance that the data has to travel. Unlike a routed Ethernet environment where decisions are made at every bridge and gateway, ATM establishes the pathway for a particular series of packets at the outset and makes minimal decisions thereafter. To travel across the ATM network, data is segmented into same-size cells, and encapsulated with a header that contains routing, congestion, and error checking information. 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.
Cells are transmitted in the proper order, and the network uses a simple Virtual Path Identifier/Virtual Channel Identifier (VPI/VCI) header to efficiently route them through the switching hardware. A switch reads the header to determine the correct output port, and then sends the packet on throughwithout requiring any complicated analysis, lookup tables, or hardware interrupts. 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 translation task simple to implement in hardware, reducing latency. Moreover, with ATM, 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 more fully in the section, "How ATM Works ATM Client Software Requirements," later in this document.
Figure 5: ATM Fixed-Length Cells (Bi-directional Traffic)
Because ATM uses small (53-byte) fixed-length cells that require minimal logic to process, the network spends no time determining where a particular cell begins and ends. The small cell size ensures that there are no bottlenecks at the switch, as there would be if a small packet had to wait for a large packet to be processed before proceeding. Because the cell size is so predictable, buffer usage and analysis algorithms can be simplified and optimized.
To summarize, traditional LAN technologies such as Ethernet have inherent speed limitationseither 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 layerif you can design a quicker method of transmitting data reliably from one place to another over one wire or many wiresATM 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 fear of collision. ATM places fixed length cells on the media when the data is produced according to the parameters of the previously 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.
Service Guarantees
As part of the previously negotiated connection, ATM end points establish a service contract that guarantees a specific quality of service. Note that quality of service (QoS) guarantees are not offered by traditional LAN solutions.
With a traditional LAN, any notion of service guarantee is based on priority, where one transmission receives delivery preference over others. Because the condition of the network and data recipient aren't known prior to transmission (traditional LANs are connectionless), traffic is subject to delay at routers and so forth. These unforeseen delays can make bandwidth availability and delivery times difficult to predict. While the traffic with the higher priority will generally reach its destination prior to traffic with a lower priority, the higher priority traffic may still arrive too late.
ATM offers very granular, explicit service guarantees that are not based on a relative structure (such as priority). With ATM, a data supplier can request a specific bandwidth, maximum delay, delay tolerance, and so forth. Each ATM switch then determines whether or not it can meet the request after taking prior allocations into consideration. If it can accommodate the transmission, it will guarantee the service level and allocate the necessary resources. With ATM, the service contract is enforced and the bandwidth is allocated at the hardware levelall of the switches between the sender and receiver know and agree to the service level before the contract is granted. The source station hardware, also having agreed to the contract, is responsible for shaping the traffic before it enters the network.
ATM offers the following service categories:
*
Constant Bit Rate (CBR), which specifies a fixed bit rate. Data is sent in a steady stream with low cell loss. Note that this is expensive because the granted bandwidth must be set aside, regardless of whether or not it is actually used. Only the most time-sensitive applications require CBR.
*
Variable Bit Rate (VBR), which specifies a throughput capacity over time, but data is not sent at a constant rate. This also specifies low cell loss.
*
Unspecified Bit Rate (UBR), which does not guarantee bandwidth or throughput. Cells can be dropped.
*
Available Bit Rate (ABR), which ensures a guaranteed minimum capacity but allows data to be sent at higher capacities when the network is free. ABR adjusts the rate of transmission based on feedback. This specifies low cell loss. ABR provides better throughput than VBR, but is less expensive than CBR. It is important to note that ABR has only recently been fully defined and not all hardware and software support this service category.
Guaranteed QoS allows ATM to support time-sensitive (isochronous) applications, such as video and voice, as well as more conventional network traffic. While 100-megabit Ethernet and other high speed networks can provide comparable bandwidth, only ATM can provide the QoS guarantees required for real-time telephony, VCR-quality video streaming, CD-quality sound, smooth videoconferencing, and other no-delay voice and video applications.
QoS is so vital to the industry that a number of initiatives are underway to provide QoS support for TCP/IPbased networks. One such initiative is the Resource Reservation Protocol (RSVP), a specification proposed by the Internet Engineering Task Force (IETF) that allows software developers to "reserve" bandwidth on the Internet to deliver real-time video and audio data streams. Solutions such as these are useful, but they require that all nodes on the network participatewhich can be difficult to guarantee on heterogeneous networks. And, because these solutions shape the traffic in software, latency and variations in delay may be introduced. This is not the case with ATM.
Perhaps most importantly, the acceptance of ATM as a common standard for both LANs and WANs enables enterprise deployment of QoS applications and integrated services. The deployment of ATM/Asymmetric Data Subscriber Line (ADSL) to the home enables residential access to these services. (ADSL uses existing copper twisted pair telephone lines to transmit broadband data to the home, without requiring recabling or a new telephone infrastructure.)
The ATM Adaptation Layer (AAL)
The ATM Adaptation Layer (AAL) is responsible for the creation and reception of 48-byte payloads through the lower layers of ATM on behalf of different types of applications. ATM Adaptation is necessary to link the cell-based technology at the ATM Layer to the bit-stream technology of digital devices (such as telephones and video cameras) and the packet-stream technology of modern data networks (such as Frame Relay, X.25 or LAN protocols such as TCP/IP).
There are several different AALs each providing a different class of service:
*
AAL1AAL1 provides circuit emulation over an ATM network. This requires constant bit rate, time-dependent service. To provide this, AAL1 adds timestamps, error checking and sequencing to the data payload. Additional functionality is provided in AAL1 to load the 48-byte cell payload with multiple smaller-than-48-byte samples, as might be required with voice streams. Due to its high overhead, AAL1 is used only when these features are required.
*
AAL2AAL2 is a mechanism to allow the transfer of high-speed, variable bit rate information in an isochronous, connection-oriented manner. Unlike AAL1, AAL2 is designed to use bandwidth only when data is sent. AAL2 is not fully defined by the standards committee and is not used.
*
AAL3/4AAL3/4 is a combination of two separate AAL specifications. AAL3 was intended for the framing of connection-oriented protocols, while AAL4 was intended for the framing of connectionless protocols. While pursuing these two standards, the ATM standards bodies learned that there was no difference in the framing between the two types of protocols; therefore, they combined the two separate framing methods to create AAL3/4. This AAL adds information to the payload regarding segment size, sequencing, and ordering control. This AAL is rarely used because of the high overhead required; AAL5 provides the same services with minimal overhead.
*
AAL5AAL5 provides a way for non-isochronous, variable bit rate, connectionless applications to send and receive data. AAL5 was developed as a way to provide a more efficient transfer of network traffic than AAL3/4. AAL5 merely adds a trailer to the payload to indicate size and provide error detection. AAL5 is the AAL of choice when sending connection-oriented or connectionless LAN protocol traffic over an ATM network.
Summary of Benefits
In summary, ATM provides the following benefits as compared to a traditional LAN solution:
*
SpeedATM imposes no architectural speed limitations. It uses a pre-negotiated virtual connection, fixed-length cells, message segmentation and re-assembly in hardware, and switching at the hardware level to support fast routing of data.
*
Guaranteed QoS and support for isochronous trafficTraffic management at the hardware level ensures that the level of service exists end to end (even over a WAN). Each VC is unaffected by traffic on other VCs. Small packet size and a simple header structure ensure that switching is done quickly and that bottlenecks are eliminated at the switch.
*
Support for new applicationsATM supports integration of voice, video, and data services on a single network. ATM/ADSL enables residential access to these services.
The next section describes the components that connect an end station to an ATM network.
Top Of Page
How ATM Works ATM Client Software Requirements
This short section describes the software components that a single computer (or end station) must use to connect to an ATM network. It also introduces the basic communication processes between an end station and an ATM switch.
To connect to an ATM network, an end station must have the following basic components:
*
A hardware interface (ATM adapter)
*
Software to interface with the adapter
*
Signaling (connection setup) software
*
Protocol support
Hardware Interface
The hardware interface or adapter puts data on the wire and communicates directly with an ATM switch. It has specific functions for handling ATM packet transmission. The main feature that an ATM adapter provides (and that most other adapters do not), is a high level of traffic shaping. An ATM adapter uses the service category and contract negotiated between the end station and the switch to control how fast it sends packets to the ATM switch. The adapter itself doesn't understand how to negotiate a contract, but once a contract and service category have been established by higher-level processes, the adapter is optimized to enable it to send packets efficiently, based on the level of service specified in the contract.
The ATM adapter uses a wire-based protocol to communicate directly with the ATM switch. Higher-level software does not need to be concerned with this communication. The wire protocol is separate from the ATM specifications. Examples of wire protocols include Synchronous Optical Network (SONET) and Asymmetric Digital Subscriber Line (ADSL).
Figure 6: ATM Hardware Interface
Basically, the adapter knows only two things: how to communicate with an ATM switch and how to send lots of packets. Because of this, the adapter is able to transmit packets on established permanent virtual circuits (PVCs) only. (A PVC is a manually configured virtual connection that establishes a path from one ATM device to another.) In other words, if you tell an ATM adapter that a certain virtual circuit exists, it can then use it. At the factory, all ATM adapters are configured to understand virtual path zero, virtual circuit 5 to be a default communication line to any ATM switch. As you'll see in the following section on signaling, this is the virtual circuit used by adapters and switches to negotiate a switched virtual circuit (SVC). A SVC is a network connection created on demand to meet the needs of a specific transmission.
Signaling
Signaling components exist at the end station and at the ATM switch. The signaling layer of ATM software is responsible for creating, managing, and terminating virtual circuits (VCs). The ATM standard wire protocol implemented by the signaling software is called User Network Interface (UNI). There is also a standard for the way one ATM switch signals another ATM switch. It is called Network Network Interface (NNI).
Figure 7: ATM Signaling
When an ATM-aware process needs to connect to another process somewhere else on the network, it requests the signaling software to establish a VC. To do this, the signaling software uses the signaling VC and the adapter to send a VC creation request to the ATM switch. Each ATM switch forwards the request on to another switch until the request reaches its destination. A switch determines which switch to send the request to next, based on the destination address for the connection and the switch's internal network database (routing tables). Each switch also determines whether or not the service category and quality of service needs can be met. At any point in this process, a switch can refuse the request. If all of the switches in the path are able to support the circuit as requested, the requesting end station receives a packet that contains the VC number. From that point on, the ATM-aware process can communicate with the destination process directly by sending packets to the VC number identified. For the most part, the originating process doesn't need to be concerned with whether or not the packets are getting through. (Note that this depends on the service category. In less reliable service categories, the overlying protocol layer may need to monitor packet loss and delay.)
The ATM adapter shapes data traffic for each VC to fit the contract made between the ATM switch and the signaling software. If for any reason too much data is sent, the ATM switch will ignore the data and it will be lost. This is true across the network; if bandwidth or speed exceeds the limits established by the contract, any deviceincluding the ATM adaptercan simply drop the data. And if this happens, the end stations concerned may not be notified of the packet loss.
Point to Multipoint
Since ATM is a connection-oriented medium, there are no inherent capabilities for broadcasting or multicasting packets as there are in a standard LAN environment. To provide this capability, the sending node could make a connection to all of the destinations and send a copy of the data on each connection. However, this would be highly inefficient. A more efficient way to do this would be through point-to-multipoint connections. This type of connection connects a single source end point (known as the root node) to multiple destination end points (known as leaves). The ATM switches copy cells to the multiple destinations where the connection splits into two or more branches.
Point-to-multipoint connections are unidirectional; the root can transmit to the leaves, but the leaves cannot transmit to the root or to each other on the same connection. Leaf-to-node and leaf-to-leaf transmission requires a separate, likely point-to-point, connection. One reason for this limitation is the simplicity of AAL5 and the inability to interleave cells from multiple payloads on a single connection.
Protocol Layer
The protocol layer of the ATM software is a high layer of abstraction and is concerned more with communicating with higher-level processes and applications than with ATM. The bottom of the protocol layer handles packet transmission and reception, connection requests, and other ATM services. The top of the protocol layer communicates with applications and other networking protocols such as TCP/IP.
Thursday, January 29, 2009
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment