To control the various types of network traffic, ATM standards were modified to define the types of services most commonly used. The service categories are listed below.
CBR services generate traffic at a constant rate. With this class of service, the end station must specify bandwidth at the time a network connection is established. The network then commits that bandwidth along the connection route; this ensures that no network traffic will be lost due to traffic congestion, because connections are admitted only if the requested bandwidth can be guaranteed.
VBR is divided into two subclasses, Real-Time VBR (RT-VBR), and Non-Real-Time VBR (NRT-VBR). RT-VBR is intended for applications that have variable bit rates and stringent real-time requirements such as interactive compressed video—video conferencing, for example. Real-time services can deteriorate in quality or become unintelligible if the associated information is delayed; they are sensitive to the time it takes for the ATM cells to be transferred.
NRT-VBR is intended for traffic where timely delivery is not as important, that is, the quality of non-real time services is insensitive to delays in information transfer. An example of non-real-time service is data transmission.
ABR service is intended for bursty traffic whose bandwidth is known approximately. Burstiness can be defined as the ratio of peak-to-average traffic generation rate. With ABR, it is possible to specify, for example, a fixed capacity of 5 Mb/s between two points, with peaks of up to 10 Mb/s. The network guarantees to provide 5 Mb/s at all times and will do its best to provide the peak capacity when needed, but it does not guarantee peak capacity.
With ABR service, the network provides feedback to the sender, asking it to slow down when traffic congestion occurs.
UBR service allows a connection to be established without specifying the bandwidth expected from the connection. The network makes no guarantees for UBR service: it establishes the route but does not commit bandwidth. UBR can be used for applications that have no delivery constraints and do their own error and flow control. Examples of potential uses of UBR are e-mail and file transfer, as neither application has real-time characteristics.