Thursday, December 28, 2017

ATM (Asynchronous Transfer Mode)

Asynchronous Transfer Mode (ATM) is an International Telecommunication Union-Telecommunications Standards Section (ITU-T) standard for cell relay wherein information for multiple service types, such as voice, video, or data.  is transported in small, fixed-size packets/frames - cells. One cell is 53 bytes (48bytes is data and 5bytes is header). Such a small packet size allows to:
  1. send data with different latency requirements, using both channels with high and low bandwidth
  2. Integrate any type of data in one channel (data, voice, video etc.)
  3. Support point-to-point (p2p), point-to-multipoint (p2m) and multipoint-to-multipoint (m2m) connections.
ATM uses Asynchronous Time-Division Multiplexing (A-TDM).
ATM network is based on interconnected ATM switches. ATM network is hierarchy:
  • User's equipment connects to networks via User-Network Interface (UNI).
  • Connection between provided networks are made through Network-Network Interface (NNI).
To send data from sender to the receiver, ATM uses virtual circuits (VC). VC can be in 3 variations:
  1. PVC (Permanent VC) - created between two points and exists even if no data is transferred
  2. SVC (Switched VC) - created right before data transfer
  3. SPVC ( Soft PVC) - like PVC but VC is permanent only from customer equipment till the point-of-presence (POP) of the ATM provider, so that customers see connection as PVC, but provider can tear-down and reconnect VC between it's POP's as needed.
For packet routing  packet IDs are used (these are used in header):
  1. VPI (Virtual Path Identifier) - channel number.
  2. VCI (Virtual Channel Identifier) - connection number.

The Internet Protocol requires that hosts must be able to process IP data-grams of at least 576 bytes (for IPv4) or 1280 bytes (for IPv6). Because of its fixed 48-byte cell payload, ATM is not suitable as a data link layer directly underlying IP. So that ATM uses Segmentation and Reassembly (SAR) - an incoming packet from another protocol to be transmitted across the ATM network is chopped up into segments that fit into 48-byte chunks carried as ATM cell payloads. At the far end, these chunks are fitted back together to restore the original packet.

Since different types of data are encapsulated in different ways, the details of the segmentation process vary according to the type of data being handled. There are several different schemes (different types of services), referred to as ATM Adaptation Layer (AAL). Standardized AAL include:
  1. AAL1 -  used for constant bit rate (CBR) services and circuit emulation. Synchronization is also maintained at AAL1.  Can be used in E1/T1.
  2. AAL2 through AAL4 are used for variable bit rate (VBR) services. Can be used for voice, video, data sending
  3. AAL5 used for data with unspecified bit rate (UBR), it doesn't use synchronization and connection establishing (it's supposed that is such a case upper layers will control sync and connection issues). Can be used for IP.
Which AAL is in use for a given cell is not encoded in the cell. Instead, it is negotiated by or configured at the endpoints on a per-virtual-connection basis.

Because of SAR performance, ATM is not so good on high-speed links (ATM max speed can be 10Gbits/s). On slower or congested links (622 Mbit/s and below), ATM does make sense, and for this reason most ADSL systems use ATM as an intermediate layer between the physical link layer and a Layer 2 protocol(like PPP or Ethernet). (ATM is used between customer modem & provider DSLAM (DSL Access Multiplexer)).

AAL5-LLC/SNAP or AAL5-MUX

The AAL5 trailer does not include a type field. Thus, an AAL5 frame does not identify its content. This means that either the two hosts at the ends of a virtual circuit must agree a priori that the circuit will be used for one specific protocol (e.g., the circuit will only be used to send IP datagrams), or the two hosts at the ends of a virtual circuit must agree a priori that some octets of the data area will be reserved for use as a type field to distinguish packets containing one protocol's data from packets containing another protocol's data.
AAL5-LLC/SNAP encapsulation uses  LLC Encapsulation (RFC 2684 [formerly RFC1483] - Multiprotocol Encapsulation over ATM) followed by a SNAP (Subnetwork Access Protocol header if necessary (can present as "LLC" in modems):
  • LLC (IEEE 802.2 LLC) - is the upper sublayer of the data link layer (layer 2) of the OSI. The LLC sublayer provides multiplexing mechanisms (using SNAP) that make it possible for several network protocols to coexist within a multipoint network and to be transported over the same network medium. The LLC sublayer acts as an interface between the MAC sublayer and the network layer.
  • SNAP - carries protocol identifier in each packet (1byte), so that each packet can be sent to the proper driver on the receiving side. Multiple protocols can be sent over one VC.
 AAL5-MUX encapsulation uses VC-MUX (can present as "VC" in modems):
  • VC-MUX (VC Multiplexing) - each VC used only for carrying a single high-level protocol. 

PPPoA, PPPoE, RFC1483, IP over ATM

RFC1483B (Bridged) - Used to encapsulate bridged protocols inside ATM and carries Ethernet frame. Using the bridge mode allows to use another router (maybe with more features) to terminate the connection with something like Cisco's Dialer interface.
RFC1483R (Routed) - Used to encapsulate routed protocols inside ATM and doesn't carry Ethernet frame. If you are not receiving Ethernet frames from the provider, modem must be in routed mode.

With regards to LLC or VC-MUX, it will again depend on what your service provider is using to encapsulate its frames in ATM: AAL5MUX (VC-MUX) or AAL5SNAP (LLC)
  1. IP over ATM stack:
    1. IP
    2. RFC1483R
    3. AAL5
    4. ATM
  2. RFC1483 stack:
    1. IP, IPX etc.
    2. MAC
    3. RFC1483B
    4. AAL5
    5. ATM
  3. PPPoA stack:
    1. IP, IPX etc.
    2. PPP
    3. RFC2364 (PPP over AAL5)
    4. AAL5
    5. ATM
  4. PPPoE stack:
    1. IP, IPX etc.
    2. PPP
    3. PPPoE (Ethernet)
    4. MAC
    5. RFC1483B
    6. AAL5
    7. ATM

No comments:

Post a Comment