Hvis et talesignal reduceres til pakker, og det er tvunget til at dele et link med bursty datatrafik (trafik med nogle store datapakker), vil talepakkerne altid støde på datapakker i fuld størrelse, uanset hvor små de kan gøres, uanset hvor små de er. Under normale køforhold kan cellerne opleve maksimale køforsinkelser. For at undgå dette problem er alle ATM-pakker, eller “celler”, af samme lille størrelse. Desuden betyder den faste cellestruktur, at ATM let kan omstilles af hardware uden de iboende forsinkelser, der indføres ved softwareswitchede og routed frames.
Designerne af ATM benyttede således små dataceller for at reducere jitter (forsinkelsesvarians i dette tilfælde) i multiplexing af datastrømme. Reduktion af jitter (og også end-to-end round-trip-delays) er særlig vigtig, når der transporteres taletrafik, fordi konverteringen af digitaliseret tale til et analogt lydsignal i sagens natur er en realtidsproces, og for at gøre et godt stykke arbejde har den dekoder (codec), der gør dette, brug for en jævnt fordelt (i tid) strøm af dataelementer. Hvis det næste dataelement ikke er tilgængeligt, når der er brug for det, har codec’en intet andet valg end at producere stilhed eller gætte – og hvis dataene er forsinkede, er de ubrugelige, fordi den tidsperiode, hvor de skulle have været konverteret til et signal, allerede er gået.
På tidspunktet for udformningen af ATM blev 155 Mbit/s synkront digitalt hierarki (SDH) med 135 Mbit/s nyttelast betragtet som en hurtig optisk netværksforbindelse, og mange plesiochrone digitale hierarkiforbindelser (PDH) i det digitale net var betydeligt langsommere, fra 1.544 til 45 Mbit/s i USA og 2 til 34 Mbit/s i Europa.
Med 155 Mbit/s ville en typisk 1.500 byte (12.000 bit) datapakke i fuld længde, der er tilstrækkelig til at indeholde en IP-pakke af maksimal størrelse til Ethernet, tage 77,42 µs at transmittere. På en forbindelse med lavere hastighed, f.eks. en T1-linje med 1,544 Mbit/s, vil den samme pakke tage op til 7,8 millisekunder.
En køforsinkelse, der fremkaldes af flere sådanne datapakker, kan overskride tallet 7,8 ms flere gange, ud over en eventuel forsinkelse ved pakkegenerering i den kortere talepakke. Dette blev anset for uacceptabelt for taletrafik, som har brug for lav jitter i den datastrøm, der føres ind i codec’en, hvis den skal give lyd af god kvalitet. Et talepakkesystem kan frembringe denne lave jitter på flere måder:
- Der anvendes en afspilningsbuffer mellem netværket og codec’en, som er stor nok til, at codec’en kan overhale næsten al jitter i dataene. Dette gør det muligt at udjævne jitteren, men den forsinkelse, der opstår ved passage gennem bufferen, kræver ekkokompensatorer, selv i lokale net; dette blev anset for at være for dyrt på det tidspunkt. Desuden øgede det forsinkelsen på tværs af kanalen og gjorde det vanskeligt at føre samtale over kanaler med stor forsinkelse.
- Anvendelse af et system, der i sagens natur giver lav jitter (og minimal samlet forsinkelse) til den trafik, der har brug for det.
- Drift på 1:1 brugerbasis (dvs. et dedikeret rør).
Designet af ATM sigtede mod en netværksgrænseflade med lav jitter. Der blev imidlertid indført “celler” i designet for at give korte køforsinkelser, samtidig med at datagramtrafikken fortsat kunne understøttes. ATM opdelte alle pakker, data og talestrømme i 48-byte stykker og tilføjede en 5-byte routing header til hver enkelt, så de kunne samles igen senere. Valget af 48 bytes var snarere politisk end teknisk begrundet. Da CCITT (nu ITU-T) standardiserede ATM, ønskede parterne i USA en 64-byte payload, fordi man mente, at dette var et godt kompromis mellem større payloads optimeret til datatransmission og kortere payloads optimeret til realtidsapplikationer som tale; parterne i Europa ønskede 32-byte payloads, fordi den lille størrelse (og dermed de korte transmissionstider) forenkler taleapplikationer med hensyn til ekko-afbrydelse. De fleste af de europæiske parter sluttede sig til sidst til amerikanernes argumenter, men Frankrig og nogle få andre holdt fast ved en kortere cellelængde. Med 32 bytes ville Frankrig have været i stand til at etablere et ATM-baseret stemmetelefoninet, hvor opkald fra den ene ende af Frankrig til den anden ikke kræver nogen ekko-afbrydelse. 48 bytes (plus 5 header-bytes = 53) blev valgt som et kompromis mellem de to parter. Man valgte 5 bytes headers, fordi man mente, at 10% af nyttelasten var den maksimale pris, der kunne betales for routinginformation. ATM multiplexede disse 53-byte celler i stedet for pakker, hvilket reducerede den værst tænkelige cell contention jitter med en faktor på næsten 30, hvilket reducerede behovet for ekkoannullatorer.
CellestrukturRediger
En ATM-celle består af en 5-byte header og en 48-byte payload. Payload-størrelsen på 48 bytes blev valgt som beskrevet ovenfor.
ATM definerer to forskellige celleformater: bruger-netværksgrænseflade (UNI) og netværks-netværksgrænseflade (NNI). De fleste ATM-forbindelser anvender UNI-celleformatet.
Diagram af en UNI ATM-celle
|
Diagram af en NNI ATM-celle
|
GFC = Det generiske flowkontrolfelt (GFC) er et 4-bit-felt, der oprindeligt blev tilføjet for at understøtte tilslutning af ATM-netværk til delte adgangsnetværk som f.eks. en DQDB-ring (distributed queue dual bus). GFC-feltet blev designet til at give User-Network Interface (UNI) 4 bit til at forhandle multiplexing og flowkontrol mellem cellerne i forskellige ATM-forbindelser. Anvendelsen og de nøjagtige værdier af GFC-feltet er imidlertid ikke blevet standardiseret, og feltet er altid sat til 0000. VPI = Virtual path identifier (8 bit UNI, eller 12 bit NNI) VCI = Virtual channel identifier (16 bit) PT = Payload type (3 bit) PT bit 3 (msbit): Netværksstyringscelle. Hvis 0, brugerdatacelle, og følgende gælder: PT bit 2: Explicit forward congestion indication (EFCI); 1 = oplevet netværksoverbelastning PT bit 1 (lsbit): ATM-bruger-til-bruger (AAU) bit. Bruges af AAL5 til at angive pakkegrænser. CLP = Cell loss priority (1-bit) HEC = Header error control (8-bit CRC, polynomium = X8 + X2 + X + X + 1)
ATM bruger PT-feltet til at angive forskellige særlige celletyper til drift, administration og forvaltning (OAM) og til at afgrænse pakker i nogle ATM-adaptionslag (AAL). Hvis den mest betydningsfulde bit (MSB) i PT-feltet er 0, er der tale om en brugerdatacelle, og de to andre bits bruges til at angive netværksoverbelastning og som en headerbit til generelle formål, der er tilgængelig for ATM-adaptionslag. Hvis MSB er 1, er der tale om en forvaltningscelle, og de to andre bits angiver typen. (Netværksforvaltningssegment, netværksforvaltning end-to-end, ressourceforvaltning og reserveret til fremtidig brug.)
Flere ATM-forbindelsesprotokoller bruger HEC-feltet til at drive en CRC-baseret framing-algoritme, som gør det muligt at lokalisere ATM-cellerne uden overhead ud over det, der ellers er nødvendigt for header-beskyttelse. Den 8-bit CRC bruges til at korrigere enkeltbits headerfejl og opdage multibits headerfejl. Når der opdages multi-bit headerfejl, droppes den aktuelle og efterfølgende celler, indtil der findes en celle uden headerfejl.
En UNI-celle reserverer GFC-feltet til et lokalt flowkontrol/submultiplexing-system mellem brugere. Formålet hermed var at gøre det muligt for flere terminaler at dele en enkelt netværksforbindelse på samme måde som to ISDN-telefoner (Integrated Services Digital Network) kan dele en enkelt ISDN-forbindelse med basisrate. Alle fire GFC-bits skal som standard være nul.
NNI-celleformatet kopierer UNI-formatet næsten nøjagtigt, bortset fra at 4-bit GFC-feltet omallokeres til VPI-feltet, hvorved VPI’en udvides til 12 bits. Således kan en enkelt NNI ATM-sammenkobling adressere næsten 212 VP’er med op til næsten 216 VC’er hver (i praksis er nogle af VP- og VC-numrene reserveret).
TjenestetyperRediger
ATM understøtter forskellige typer af tjenester via AAL’er. De standardiserede AAL’er omfatter AAL1, AAL2 og AAL5 samt de sjældent anvendte AAL3 og AAL4. AAL1 anvendes til tjenester med konstant bithastighed (CBR) og kredsløbsemulering. Synkronisering opretholdes også ved AAL1. AAL2 til AAL4 anvendes til tjenester med variabel bitrate (VBR), og AAL5 til data. Hvilken AAL der er i brug for en given celle, er ikke kodet i cellen. I stedet forhandles det af eller konfigureres ved slutpunkterne på basis af hver enkelt virtuel forbindelse.
Efter det oprindelige design af ATM er nettene blevet meget hurtigere. En 1500 byte (12000-bit) Ethernet-ramme i fuld størrelse tager kun 1,2 µs at sende på et 10 Gbit/s netværk, hvilket reducerer behovet for små celler for at reducere jitter som følge af konkurrence. Nogle mener, at dette taler for at erstatte ATM med Ethernet i netværkets backbone. De øgede forbindelseshastigheder i sig selv afhjælper ikke jitter som følge af køer. Desuden er hardwaren til gennemførelse af tjenestetilpasningen for IP-pakker dyr ved meget høje hastigheder. Ved hastigheder på OC-3 og derover gør omkostningerne til segmenterings- og reassembleringshardware (SAR) ATM mindre konkurrencedygtig for IP end Packet Over SONET (POS); på grund af den faste 48-byte celle-nytelast er ATM ikke egnet som et datalinklag, der ligger direkte under IP (uden behov for SAR på datalinkniveau), da det OSI-lag, som IP opererer på, skal have en maksimal transmissionsenhed (MTU) på mindst 576 bytes. SAR-præstationsgrænser betyder, at de hurtigste IP-router ATM-grænseflader er STM16 – STM64, hvilket faktisk er sammenligneligt, mens POS fra 2004 kan operere med OC-192 (STM64) med højere hastigheder, der forventes i fremtiden, grænser baseret på segmentering og reassemblering (SAR).
På langsommere eller overbelastede forbindelser (622 Mbit/s og derunder) giver ATM mening, og derfor anvender de fleste ADSL-systemer (asymmetric digital subscriber line) ATM som et mellemliggende lag mellem det fysiske forbindelseslag og en Layer 2-protokol som PPP eller Ethernet.
Med disse lavere hastigheder giver ATM en nyttig mulighed for at transportere flere logiske kredsløb på et enkelt fysisk eller virtuelt medium, selv om der findes andre teknikker, såsom Multi-link PPP og Ethernet VLAN’er, som er valgfrie i VDSL-implementeringer. DSL kan anvendes som adgangsmetode til et ATM-netværk, således at et DSL-termineringspunkt i en telefoncentral kan oprette forbindelse til mange internetudbydere på tværs af et ATM-netværk i et stort område. I det mindste i USA har dette gjort det muligt for DSL-udbydere at give DSL-adgang til kunder hos mange internetudbydere. Da et enkelt DSL-termineringspunkt kan understøtte flere internetudbydere, er den økonomiske gennemførlighed af DSL blevet væsentligt forbedret.