next up previous contents index
Next: LAN Emulation (LANE) Up: ATMLANE and CLIP Previous: ATMLANE and CLIP

Asynchronous Transfer Mode (ATM)


ATM is a complex network technology, developed by both   telephone companies ( Telecom) and computer communication companies ( Datacom). The complexity is partly caused by the need for compromises and extra options to support the wishes of both Telecom and Datacom companies. The hope of both is that eventually a global public ATM network will exist like the current Internet. The Global ATM Internet would support both telephone calls and data transmissions using the same basic ATM protocol.

 ATM networks are based on virtual connections over a high-bandwidth mediumgif. Despite the complexity, ATM is attracting a lot of interest, because it offers efficient use of high bandwidth, high reliability and  Quality of Service (QoS) guarantees. ATM is the network technology chosen for Broadband Integrated Services Digital Network ( B-ISDN).

In the next sections, the most important aspects of ATM are pointed out. These aspects make ATM a fundamentally different technology as compared to Ethernet,  FDDI and similar ``Layer 2'' technologies.

Many good introductions to ATM exist. Good starting points are the articles [AA95] and [GK95]. The first reference in particular with respect to Internetworking and ATM. For a more detailed discussion of the problems of ATM Traffic Management and Congestion Control a look at Jain's article [RJ96] may be helpful.

Basic Concepts

ATM is a  connection oriented network technology. The connections are not physical end-to-end connections like with  telephone networks, but they are virtual connections. This means that, like with telephone connections, a connection must be setup before any data can be transferred between the end-points of the connection. After the connection has been used and is no longer needed, it is terminated (``hanging up the phone'').

ATM connections have properties which describe the kind of traffic carried over the connection and the way it is treated by the network. These properties (Traffic Descriptors, QoS parameters, etc.) are negotiated at connection setup time between the calling party, the ATM network and the called party.

As can be expected from a complex network technology, ATM itself consists of a number of layers. In Figure gif a simplified view of the internal  ATM protocol stack is shown on the left and an even more simplified view of this model on the right. The last model is used in figures later in this chapter to indicate the ATM services without going into too much detail.

Figure: Simplified protocol stack view of the ATM Bearer Service

The ATM protocol stack is best described from the bottom up, starting with the  Physical Layer.

Physical Layer

For the transportation of  ATM Cells across physical point to point connections (``the wires''),  Synchronous Digital Hierarchy (SDH) and  Synchronous Optical NETwork (SONET) protocols are most commonly used.  SDH and  SONET are very similar protocols, SDH is used mostly in Europe, SONET more in the USA. Physical layer standards are defined by the ATM Forum.

ATM Cells are packaged into the lower layer SONET/SDH frames. At 155 Mbit/s, 45 ATM Cells fit into one frame. Every 125  tex2html_wrap_inline3712 s, a SONET/SDH frame is sent onto the network, whether it is full or not.

The wires used by these protocols are typically optical fibers or  Unshielded Twisted Pair (UTP) copper cablesgif.

ATM Transport Layer

ATM has a fixed transmission unit, called the ``Cell''. Each  Cellgif is 53 octetsgif, of which 5 octets are used for the ATM header and the remaining 48 octets can be used for data transport (this part is call the  Payload or Service Data Unit (SDU)). The header can be this small, because instead of the destination ATM address, only the information that is needed locally for data forwarding is included in each Cell. This information consists of a  Virtual Path Identifier ( VPI) and  Virtual Channel Identifier ( VCI) and other administrative data. More on the use of these Virtual Channels and Paths in Section gif.

When an ATM connection is set up, the calling party specifies what kind of traffic the connection intends to use and what QoS it expects from the network. This information is put in the traffic descriptor and the QoS parameter respectively and then both are passed as part of the connection setup request to the network, along with other parameters like the destination address. The parameters are carried in   Information Elements in the signalling messages. The Information Elements aregif:

After the connection with a certain Service Category has been setup, the ATM client and the ATM network have a  traffic contract associated with the connection. If the users of the connection attempt to use too much resources of the network, i.e. exceed the traffic contract parameters, the network may drop cells or use other means within the capabilities of the network to keep the contract. Traffic parameters can be re-negotiated while the connection is still in use. For more information about the information elements used in the signalling messages, please see the UNI specifications [UNI31] and [UNI40].

When for example a nrt-VBR connection with a certain PCR, MBS and SCR has been setup, the connection users do not constantly supply ATM Cells at the PCR. The network may allocate more bandwidth on a link than the sum of all Peak Cell Rates of the VCC that go through that link. This is called  statistical multiplexing. Statistical, because it uses statistics to calculate the chance that all connections need to use their connection at PCR at the the same time. The assumption is that with enough simultaneous connections open and as long as the traffic is not related to each other, the link's bandwidth usage can be described by statistical methods. For more information on statistical multiplexing, please see the article by Bae and Suda [BS91] or a more recent PhD thesis by Murphy [JM96].

ATM Adaptation Layers

While at the  ATM level, traffic in all service categories can be transported, higher layers may want more specific services, better suited to the kind of traffic produced by those layers. E.g. not all B-ISDN users need a  timing relation between the sending and receiving entities. For this purpose, the  ATM Adaptation Layers have been defined. When new kinds of traffic are recognized, a new AAL can be defined for it, while the ATM layer remains unchanged.

For the purpose of transporting  connectionless traffic as produced by the IP layer,  AAL5 is best suited. Although AAL5 is not generally considered to be a Class Dgif service category, it is chosen for the low amount of overhead in the AAL5 PDU and the simplicity of its implementation [AA95, note *10*,]. Usually IP is carried over a connection with service class ABR or UBR, but nrt-VBR would be suitable as well.

The AAL takes care of the  Segmentation into, and  Re-assemblygif of the ATM Cells. Additionally, an AAL may check for cell-loss, timing or data errors and perform multiplexing of higher layer data streams into a single ATM  Virtual Channel Connection.

Adaptation Layer 5 is the most commonly used AAL, it provides an unguaranteed connection oriented transport of variable-length frames with error detection. The user data frames can be up to 65,535 bytes, which gets segmented into 48 byte chunks, after adding AAL 5 control information and padding. These chunks are sent as payload in the ATM Cells. Both CLIP and LANE use AAL 5 to transport their protocol frames across the ATM network.

ATM Signalling Entities

For the setup, modification and release of the connections and other signalling between the ATM network (the ATM switches) and the ATM end nodes, signalling entities are defined. These entities use the special  Signalling ATM Adaptation Layer ( SAAL), to encapsulate their signalling data in ATM Cells. Since signalling is used to set up   Switched Virtual Connections(SVCs, see Section gif), a  Permanent Virtual Connection, identified by VPI=0 and VCI=5, is used for exchanging signalling information.

ATM Bearer Service

Later on, we will see the ATM control and user plane used as a single service provider. The combination of the signalling and transmission services will be called the `` ATM Bearer Service'' (see the simplified stack on the right in Figure gif). It will provide the service of setting up a connection (the VCC), transmitting data in AAL packets over the ATM VCCs and closing down the connection.

Network Structure

ATM networks consist of  ATM switches connected by point-to-point ATM links (see Figure gif).  ATM hosts are connected to the local switches. There are two types of ATM Networks; the  Private Network and the  Public Network.

The ATM nodes (hosts or switches) use the Public User-Network Interface (Public UNI) protocol. When hosts are connected to a local switch the Private UNI is used. Switches within a private network use the  P-NNI (Private Network-Network Interface or Private Network-Node Interface). Switches within the public network do not use the P-NNI, but eventually a derivation of it will probably be used there as well. For the implementation of an IP multicast capability, the   Private UNI at the ATM host side is most important.

Figure: ATM network structure

Virtual Connections


ATM, being a connection oriented network technology, provides its service users with the possibility of setting up a Virtual Channel Connection ( VCC) with a certain traffic contract. The VCC is a direct connection between the end-points (to the protocol layer above the ATM Transport Layer) across the ATM network. Once this connection is set up, a VCC is identified at the end-points by a Virtual Path Identifier (VPI) and Virtual Channel Identifier (VCI).

Figure: Connection terminology for the ATM Transport service provider

The ATM transport layer itself is built up of two layers; Virtual Channel and Virtual Path. At the service interface of the Virtual Path Service Provider a Virtual Path Connection (VPC) can be setup (with traffic and QoS parameters), identified by a VPI. A VPC can carry multiple VCCs, which have the same VPI but different VCIs.

In general, ATM hosts are connected to each other via ATM switches, as can be seen in Figure gif. A VCC between two ATM hosts goes through one or more switches in the network. The VPI/VCI combination that identifies the VCC at the end-points has only local significance. The switches translate either only the VPI (a VP-switch) or both the VPI and the VCI (a VC switch). The section of a VPC between two VP Switching Entitiesgif is called a  Virtual Path Link (VPL). The section of a VCC between two VC Switching Entities is called a   Virtual Channel Link (VCL). The VCI retains its significance through a VP switch, so VCLs are carried through VP switches. A decomposition of a VCC in VPLs and VCLs is shown in Figure gifgif, the point where a VPI or VCI gets translated is shown with an arrow. Note that the Virtual Channel Connections terminate at the service interface of the ATM Transport service provider.

ATM switches have ``  cross-connect tables'' to translate the VPI/VCI connection (or rather, link) identifiers in the incoming   ATM Cells to VPI/VCI combinations in outgoing ATM Cells. This translation can be done in hardware once a connection has been setup and should be much quicker than the   IP routing mechanism.

The cross-connect tables can be filled by the network management or by signalling protocols. A connection set up by management is called a permanent connection. This can be either a Permanent Virtual Path Connection ( PVPC) if only VP switching entity's cross-connect table is configured, or a Permanent Virtual Channel Connection if the VC switching entity's cross-connect table is configured. When  signalling is used to setup a VPC or a VCC, the connection is called Switched VPC (SVPC) or Switched VCC (SVCC) to signify that it was a connection established through signalling commands, rather than by management interference. The connections themselves, permanent or switched, are exactly the same, regardless of how they have been established.

This concept of using (virtual) connections for communications is very different from the way IP packets are sent and routed. When implementing IP on top of ATM, the IP entity does not care if the VCC transporting its packets is released when it is not used, the when and how of opening and closing of connections for communications is a matter of optimization. For a more detailed discussion of  , please see Heijenk's PhD thesis [GH95].

Native ATM addresses


ATM users communicate using virtual connections, identified by a VPI/VCI pair, during the data transport phase. In order to setup a connection, the switches need some way to identify the called party, so the routing protocols can find a route to it during the connection setup phase. ATM addresses have been defined, so the signalling entities can address an ATM end-point to their peer signalling entities in the ATM network. These addresses are modeled after the  OSI   Network Service Access Point (NSAP), as defined in ISO 8348 and ITU-T X.213 (See also IETF RFC 1629 [NSAP94]). In Figure gif the three types of ATM addresses are shown. The  Data Country Codes (DCC) are specified in ISO 3166. The  International Code Designator (ICD) is maintained by the British Standards Institute. The  E.164 format is the  ISDN number format. All three formats are 20 octets long (as specified in [NSAP94]).

The address consists of 3 parts, the   Authority and Format Identifier (AFI), the  Initial Domain Identifier (IDI) and the   Domain Specific Part (DSP). The AFI part determines the rest of the address interpretation. The DSP consists of a  High Order DSP (HO-DSP), an  End-System Identifier (ESI) and the   selector byte ( SEL). The SEL-part is never used by the routing algorithms, which means that each ATM end-point can use 256 different ATM addresses.

Figure: ATM address formats

ATM end-points are not configured with a complete ATM address, the address is built up at initialisation time across the UNI. For this purpose the  Interim Local Management Interface (ILMI) is used to perform address registration proceduresgif. The ATM end-point supplies the ESI and the SEL part of the address as ``user part'', the ATM network supplies the rest of the fields as ``network prefix''.

More on ATM addresses can be found in the ATM Forum UNI 3.1 specification [UNI31, p.159,] and the UNI 4.0 signalling specification [UNI40, p.31,].

As an example, the Dutch ATM community has chosen to use the DCC ATM address format. The AFI value associated with DCC is "39" (encoded in Binary Coded Decimal). The DCC for the  Netherlands is 528, which is padded to give 528F(h) as IDI. The DSP part in the Netherlands is split up into the following elements:

CFI Country Format Identifier 1 nibble
CDI Country Domain Identifier 3 nibbles
SFI SURFnet Format Identifier 1 nibble
SDI SURFnet Domain Identifier 3 octets
ASDI Additional SURFnet Domain Identifier 1 nibble
SDA Site Defined Area 4 octets
ESI End Station Identifier 6 octets
SEL Selector 1 octet

(A nibble is 4 bits, half an octet)

For all systems at the University of Twente, the DSP starts with the following:

CDI 100

The rest of the address is maintained within the organisation (CIV and Departments). At the  University of Twente, the SDA field is split into three parts, two octets for the Department and/or Network Identifier, one octet for the  Network Identifier and one octet for an ATM switch Identifier. For the ESI part, a unique identifier must be used. The  Ethernet MAC address is often used for this purpose. The SEL byte is 00 by default and can be used for addressing within the ATM end node. As an example, Figure gif shows the ATM end-point address my computer would get when it is connected to the ATM network of the Department.

Figure: An ATM end-point address for my machine

User Network Interface


The User Network Interface is used by ATM hosts to communicate with ATM networks and by private ATM networks to communicate with public ATM networks. All aspects of the User-Network Interface, from the lowest physical details to the signalling messages exchanged above ATM level, are specified in the ATM standards documentation of UNI 3.1 [UNI31]. The signalling part of the UNI has been updated in version 4.0 [UNI40].

Signalling UNI

 UNI 3.1 specifies a number of capabilities that are supported by ``Phase 1''gif signalling. These capabilities include support for point-to-point connections and  point-to-multipoint connections. It also provides protocol support for the basic signalling functions to establish, maintain and release these connections.

Point-to-multipoint VCC support is limited to   unidirectional VCCs (the return path is defined to have zero bandwidth, PCR=0) from the root to the leaves of the multicast tree. Only the  root may add and remove leaves, which causes the use of ATM multicast to be difficult to scale up in number of leaves. This is because the root node must handle more requests to be joined and exchange connection messages with the network to add and remove leaves. The root node is the bottleneck in the add/leave procedure.

In  UNI 4.0 the point-to-multipoint connection signalling is extended to support  Leaf Initiated Join, either with or without root-node intervention. Especially the latter would make ATM point-to-multipoint connections significantly more scalable. Also new in UNI 4.0 is an `` Any-cast'' service to setup a point-to-point connection to any one of a group of ATM end-points. This last feature would allow load sharing and redundant services without bothering ATM clients with connection failures.

In the UNI 3.1 and UNI 4.0 signalling specifications, no support for  multipoint-to-multipoint connections is defined. In the signalling specification of UNI 3.1, two possible solutions to this problem are given. To support multipoint-to-multipoint connections, a   Multicast Server (MCS) can be defined. The MCS connects to all recipients using a point-to-multipoint connection. The senders connect to the MCS using a point-to-point connection when they want to transmit to the members of the multicast group. Alternatively, all sending ATM end-points can set up point-to-multipoint connections to all receiving end-points.

next up previous contents index
Next: LAN Emulation (LANE) Up: ATMLANE and CLIP Previous: ATMLANE and CLIP

Simon Oosthoek
Wed Jul 9 20:08:23 CEST 1997