ATM-hálózatok/1 Ez a rész H. Perros „Connection Oriented Networks” (Wiley) könyvéhez adott slide-gyűjtemény alapján készült Tartalom
Az ATM fő jellemzői Az ATM header Az ATM protokoll-stack A fizikai réteg ATM kapcsológép-architektúrák ATM adaptációs rétegek IP over ATM
A következő rész (ATM/2): torlódásvezérlés ATM hálózatokban
1
Classification of communication networks Communication networks
Switched communication networks
Broadcast communication networks •Ethernet •Packet radio network •Satellite network
Circuit-switched networks
Packet-switched networks
•Telephone network •Wavelength-routing network
Connection-oriented networks •X25 •ATM •Frame relay •MPLS
Connectionless networks •IP network
2
Asynchronous Transfer Mode (ATM) - aszinkron átviteli mód (1.) „Asynchronous” a SONET/SDH-n alapuló Synchronous Transfer Mode (STM) ellentéte „Transfer Mode” – átviteli mód, általános megjelölés
3
Asynchronous Transfer Mode (ATM) - aszinkron átviteli mód (2.) Az ATM-et az ITU-T (a CCITT utódja) szabványosította 1988-ban, a B-ISDN átviteli módjaként Fő célkitűzések:
különböző típusú forgalmak átvitelére tervezték: Beszéd Video Adat
Tág átvitelisebesség-tartomány: néhányszor 64 kbit/s-tól 2.4 Gbit/s-ig
Az ATM ma: a távközlő hálózatokban széleskörűen használt, de a felhasználó általában nem „látja” (pl. gerinchálózatokban) 4
Asynchronous Transfer Mode (ATM) - aszinkron átviteli mód (3.) Különböző forgalom-típusok különböző szolgáltatás-minőséget (Quality-of-Service – QoS) igényelnek. Ilyen QoS elvárások pl.: Csomagvesztés End-to-end késleltetés
Az ATM az IP hálózatoktól eltérően minden összeköttetéshez specifikus QoS-t képes biztosítani 5
Az ATM fő jellemzői Összeköttetés-orientált, csomagkapcsolt hálózati architektúra Konstans csomagméret (cella), 48+5 byte Header
Payload
5 bytes
48 bytes
Nincs link-enkénti hibavédelem Nincs forgalomszabályozás (flow control) linkenként Sorrendhelyes cellatovábbítás 6
Az ATM cella struktúrája
kétféle van: kicsit különbözik a felhasználó-hálózat közötti (UNI) ill. A hálózaton belüli (NNI) interfészen NNI cellaformátum
UNI cellaformátum 1
2
3
4
5
6
7
1 2
4 5
. . .
53
1
2
3
4
5
6
7
8
1
GFC
VPI
VPI
VCI
3 B y t e
8
VPI 2 3
VCI VCI
PTI HEC
Information payload
CLP
B 4 y t e 5
. . .
VCI
VPI VCI VCI
PTI
CLP
HEC
Information payload
53
7
Mezők az ATM cella fejrészében GFC – Generic Frame Control Az UNI-ra kapcsolódó több végberendezést vezérli
Összeköttetés-azonosító: VPI/VCI Együttesen: címke
Payload type indicator (PTI) Cell loss priority (CLP) Head error control (HEC)
8
ATM összeköttetések Az ATM-összeköttetéseket a
virtual path identification (VPI, virtuális útazonosító) és a virtual channel identification (VCI- virtuális csatorna-azonosító) pár definiálja VPI mező: 256 virtuális út a UNI interface-en és 4096 virtuális út az NNI interface-en VCI mező: maximum 65.536 VCI
9
ATM összeköttetések (folyt.) A VPI/VCI értékek lokális érvényűek, azaz két szomszédos csomópont közötti viszonylatra vonatkoznak Több pont-pont kapcsolatból álló összeköttetésen ugrásonként különböző VPI/VCI értékeket használunk Az ATM kapcsológépek switching táblázatokat tartanak fenn. Ezek minden összeköttetésre vonatkozóan összerendelik a bejövő és kimenő VCI/VCI értékeket és az input/output portokat
10
„Label swapping” C
VPI=30 VCI=41 1
VPI=40 VCI=62 A 2
ATM switch 1
4
3
30 41 1 30 53 4 40 62 2 10 89 3
VPI=30 VCI=53
4
ATM switch 2
VPI=10 VCI=89
VPI=100 VCI=53 5
D
30 53 4 100 53 5
1
ATM switch 3 6
10 89 1 50 77 6
VPI=50 VCI=77 B
11
PVC-k és SVC-k Az összeköttetés lehet Permanent Virtual Circuit (PVC – állandó virtuális áramkör), vagy Switched Virtual Circuit (SVC – kapcsolt virtuális áramkör)
A PVC-ket a rendszermenedzsment állítja be, hosszú ideig fennmaradnak Az SVC-ket az ATM-jelzésrendszer segítségével építi fel a hálózat, valódi időben, tetszőleges időtartamra
12
Payload Type Indicator
A PTI értelmezése (1. bit, 2. bit, 3. bit)
000 magasabb 001 010 011 100 101 110 111
Felh. adat, nincs torlódás, SDU type=0 (SDUrétegbeli adategység) Felh. adat, nincs torlódás, SDU type=1 Felh. adat, van torlódás, SDU type=0 Felh. adat, van torlódás, SDU type=1 Szegmensenkénti OAM flow-related cella End-to-end OAM flow-related cella RM cella Reserved
13
Head Error Control (HEC) Multiple bit error detected (cell discarded
No error detected (No action)
Correction mode
No error detected
Detection mode
(cell discard) Error detected
Single bit error detected (correction)
14
Az ATM protokoll-stack voice
Video
Data
ATM adaptation layer ATM layer Physical layer
Az ATM adaptációs rétegen és a fizikai rétegen belül további alrétegek vannak 15
A fizikai réteg A fizikai réteg az ATM cellákat továbbítja két szomszédos ATM réteg között Két alrétegből áll transmission convergence (TC) sublayer – konvergencia-alréteg physical medium-dependent (PMD) sublayer – fizikaiközeg-függő alréteg
16
A konvergencia-alréteg (TC sublayer) Fejrész-ellenőrző kód (HEC) előállítása és ellenőrzése Megvalósítja a HEC álllapotgépet Decoupling of cell rate Üres cellák beiktatásával biztosítja a folyamatos bitfolyamot Keret-generálás és visszaállítás Pl. SDH esetén Cell delineation A cellák előállítása a PMD-től kapott bitfolyamból (cellahatárok megkeresése)
17
Cell delineation: a cellák előállítása a PMD alrétegtől kapott bitfolyamból
hunt
Incorrect HEC for α cells Sync Incorrect HEC
Correct HEC
Correct HEC for δ cells
Presync
18
Physical medium dependent (PMD) – fizikaiközeg-függő alréteg Időzítési funkció Az adó és a vevő PMD alrétegek közötti szinkronizáció biztosítása
Kódolás/dekódolás A PMD végezhet bitenkénit továbítást vagy alkalmazhat blokkonkénti kódolást, amilyen pl. a 4B/5B és 8B/10B kódolás
19
ATM fizikairéteg-interfészek
SONET/SDH Plesiochronous digital hierarchy (PDH) Nx64 kbps ATM inverz multiplexelés (IMA) Asymmetric digital subscriber line (ADSL) ATM Passive Optical Network (APON)
20
Az ATM réteg Az ATM layer az információ végponttól-végpontig való továbbításával foglalkozik A továbbiakban megvizsgáljuk a fő funkcióit
21
Összeköttetés-orientált csomagkapcsolás Az ATM-réteg összeköttetés-alapú pont-to-pont csomagkapcsolt hálózat, fix hosszúságú csomagokkal Az összeköttetést a VPI/VCI címkék sorozata azonosítja, lehet pont-point vagy pont-multipont A cellákat sorrendhelyesen továbbítja 22
ATM réteg: cellakapcsolás
Application
End-device
Application
ATM switch
ATM switch
End-device
23
Nincs linkenkénti hibavédelem és flow control A cellavesztés vagy a téves célbajuttatás valószínűsége alacsony Az adatok visszaállítása elveszett vagy hibás cellák esetén a magasabb rétegbeli protokollok (pl. TCP) feladata Ha TCP/IP van ATM felett, az egyedi cellák elveszése vagy meghibásodása a teljes TCP PDU ismétlését vonja maga után 24
Címzés Minden ATM végkészüléknek és ATM kapcsolónak egyedi ATM címe van A magán és nyilvános hálózatokban eltérő ATM címzést alkalmaznak Nyilvános hálózatokban: E.164 szerinti címzés Magánhálózatokban: OSI NSAP formátum
Az ATM címek különböznek az IP címektől
25
Szolgáltatásminőség - Quality of service Minden ATM összeköttetéshez QoS kategória kapcsolódik Minden QoS kategóriához forgalmi paraméterek és QoS paraméterek társulnak Az ATM hálózat garantálja a megállapodás szerinti QoS-t minden összeköttetés számára
26
Szolgáltatási kategóriák az ATM-ben Constant bit rate (CBR), Real time variable bit rate (RT-VBR), Non-real time variable bit rate (NRTVBR), Available bit rate (ABR), Unspecified bit rate (UBR), and Guaranteed frame rate (GFR) 27
Torlódásszabályozás - Congestion control A torlódásszabályozás az ATM hálózatokban lehetővé teszi a szolgáltatók számára hogy annyi forgalmat vigyenek át, amennyit csak lehet, a felhasználók által kért szolgáltatásminőség betartása mellett A congestion control call admission controlt és policing-mechanizmusokat alkalmaz
28
ATM kapcsológép-architektúra
CPU
Input queues
Output queues 1
...
...
Incoming links
1
N
Outgoin links
N
Switch fabric
29
Osztott memóriás ATM kapcsolóarchitektúra (1.) A leggyakoribb ATM-kapcsoló-típus Shared memory
1
1
...
...
N
N
30
Osztott memóriás ATM kapcsolóarchitektúra (2.) Az osztott memória sorokba van szervezve, minden kimeneti portra van egy sor („linked list”) Ha minden bejövő és kimenő link sebessége V, a kapcsológép akkor tudja kezelni a maximálisan beérkező forgalmat, ha a memória átbocsátóképessége 2NV A teljes memóriakapacitás B cella (B igen nagy lehet a modern kapcsolókban) Az i-edik porton max Bi cella állhat sorban, Bi
B lehet
31
Cellavesztés az osztott memóriás kapcsológépben Cellavesztés következik be, ha a cella abban az időpillanatban érkezik, amikor az osztott memória tele van, azaz B cellát tartalmaz Cellavesztés akkor is bekövetkezhet, ha akkor érkezik a továbbításnak megfelelő iedik kimeneti portra, amikor az erre a portra sorbanálló cellák száma Bi (akkor is, ha a teljes cellamenyiség az osztott memóriában kisebb, mint B) 32
Nem-blokkoló kimeneti tárolós kapcsológép A nem blokkoló (non-blocking) kapcsológépben a kapcsolómátrix nem okoz belső vagy külső blokkolást A kimeneti tárolós kapcsológép csak a kimeneti portjain pufferelt ...
...
output ports
Az osztott memóriás kapcsológép nemblokkoló kimeneti pufferelés esetén 33
Scheduling-algoritmusok Nem-blokkoló kapcsológép, kimeneti puffereléssel, minden puffer különböző összeköttetésekhez tartozó cellákat tartalmaz Minden egyes összeköttetéshez saját szolgáltatásminőség- (QoS) kategória tartozik Összeköttetésenként (szolgáltatásminőségkategóriánként) külön sorokba csoportosítjuk a cellákat, és a sorokat megfelelő scheduling algoritmus szerint szolgáljuk ki
34
Statikus prioritások CBR
Prioritások a sorok között
Mindig a legnagyobb prioritású sort szolgáljuk ki először, majd az utána következőt s.í.t.
Életkor: ha a sor már régen nem volt kiszolgálva, megnöveljük a prioritását
RT-VBR
From switch fabric
NRT-VBR ABR
UBR
Output port
35
„Early Deadline First” (EDF) algoritmus Minden cellához határidőt rendelünk a pufferbe való érkezéskor A scheduler a cellákat határidejük szerint szolgálja ki, azaz a legkorábbi határidejűeket legelőször A késleltetés-érzékeny alkalmazásokhoz (beszéd, video) tartozó cellák elsőbbségi kiszolgálását azzal lehet biztosítani, hogy a beérkezési idejükhöz közel eső határidőket rendelünk
36
A „round-robin” scheduler Minden kimeneti puffert valahány db logikai sorként szervezünk meg A scheduler körbejárásos módszerrel kiszolgál minden sorból egy-egy cellát Az üres sorokat átugorjuk Súlyozott körbejárásos scheduling-ot valósíthatunk meg azáltal, hogy soronként változó számú cellának biztosítunk kiszolgálást 37
Az ATM adaptációs réteg Az AAL célja, hogy izoláljuk a magasabb rétegeket az ATM réteg specifikus jellemzőitől Az AAL két alrétege a convergence (konvergencia) alréteg és a segmentation-and-reassembly (SAR – szegmentáló és újra-összegyűjtő) alréteg
38
Az AAL alrétegei SAP
Convergence Sublayer
Service Specific Convergence Sublayer (SSCS) Common Part Sublayer (CPS)
Segmentation and Reassembly SAP
39
ATM Adaptation Layer 1 (AAL 1) Ez az AAL pl. az alábbi alkalmazásokhoz használható jól: circuit emulation services (áramköremulációs szolgáltatás) Pont-pont, TDM jellegű áramkör ATM felett
Állandó bitsebességű hangátvitel Két alközpont (PBX) közötti kapcsolatot lehet biztosítani ezáltal magán- vagy nyilvános ATM hálózaton 40
SAR az AAL 1 számára
payload
SAR Header SN
CSI Sequence. count 1 bit
3 bits
SNP
47 bytes
CRC-3 3 bits
Parity 1 bit
41
A konvergencia-alréteg (CS) funkciói az AAL 1 esetén (1.) 1. Cellakésleltetés-ingadozás kezelése
A sorbanállási késleltetések következtében a cellaérkezési-időközök ingadoznak (jitter) Sender cell i
cell i-1
t
t i-1 i Inter-departure gaps
Receiver cell i+1
ATM cloud
cell i-1
cell i
cell i+1
si-1
si Inter-arrival gaps
A CS a vett adatot pufferbe írja, majd az információt állandó bitsebességgel továbbítja az alkalmazásnak
42
A konvergencia-alréteg (CS) funkciói az AAL 1 esetén (2.) 2. A sequence count kezelése Elveszett vagy hibásan beiktatódott cellák A hibásan bekerült cellák törlődnek Az AAL felhasználói bitfolyam integritásának fenntartásához az elveszett cellák helyén „mű” SAR-PDU payload-okat iktatunk be
3. Hibajavítás (FEC- forward error correction) Szükséges lehet video és jóminőségű audio esetén Kombinálható bit-interleaving-gel a nagyobb hibavédelem érdekében 43
A konvergencia-alréteg (CS) funkciói az AAL 1 esetén (3.) 4. Időzítési információ átvitele a. Synchronous residual time stamp (SRTS): a CS a CSI mezőben (egymás követő cellák sorozatának felhasználásával) megadja a vevőnek a hálózati közös óra és az adó órájának a különbségét b. Adaptív órajel módszere: ha nem áll rendelkezésre hálózati óra 44
A konvergencia-alréteg (CS) funkciói az AAL 1 esetén (4.) 5. Strukturált és strukturálatlan adatátvitel Két CS-PDU formátumot definiáltak: a. CS-PDU non-P format: 47 byte hasznos információ b. CS-PDU P format: 1-byte header és 46 byte hasznos információ s Header: 7-bites pointer (SDT pointer) és 1 paritásbit 45
Áramkör-emulációs szolgáltatások (1.) UNI IWF A CBR User A
UNI ATM network
IWF B CBR User B
Strukturált és strukturálatlan adatátvitel egyaránt használt az áramkör-emulációs szolgáltatásban (Circuit Emulation Services - CES), amely T1/E1 összeköttetést emulál ATM felett A CES-t az interworking function (IWF) valósítja meg 46
Áramkör-emulációs szolgáltatások (2.) Strukturálatlan szolgáltatás A teljes DS1/E1 jelet bitenként behelyezzük a CS-PDU non-P formátum 47-byte-os hasznos részébe, amelyet aztán egy ATM cella visz át 47 byte -> 376 bit -> kevesebb, mint 2 DS-1 frame (193 bit/frame)
47
Áramkör-emulációs szolgáltatások (3.) Strukturált átvitel Nx64 kbit/s („fractional T1/E1”) átvitelére szolgál A „fractional T1/E1” N byte-os blokkokat generál 125 μsec-onként. Az ilyen blokkot strukturált blokknak nevezzük Az N byte-os blokkokat egymásutáni cellák továbbítják a CS-PDU non-P és P formátumaiban 48
Áramkör-emulációs szolgáltatások (4.) Az SDT pointer Az SDT pointer a CS-PDU P formatjában ezeknek a blokkoknak a határainak azonosítására szolgál
49
Példa: 20 byte-os blokkok Seq, count 0 20
Seq, count 1 20
6
Seq, count 4 13
20
13
7
Seq, count 5 20
14
Seq, count 0 6
14
Seq, count 2
6
20
20
20
20
20
1
19
7
13
20
7
20
14
Seq, count 7 20
20
13
7
Seq, count 2 20
20
20
Seq, count 6
Seq, count 1 20
Seq, count 3
Seq, count 3 14
6
20
20
50
1
ATM Adaptation Layer 2 (AAL 2) Késleltetés-érzékeny, kis bitsebességű alkalmazások számára, mint amilyen a beszéd és a beszédsávban továbbított adat (fax, modem) Az AAL 2-t arra szánták, hogy két távoli nyilvános, vagy magántelefonhálózatot ATM-en keresztül kapcsoljanak össze 51
Az adóoldalon az AAL 2 több stream-et multiplexál össze ugyanarra az ATM összeköttetésre A vevőoldalon demultiplexálás egyedi folyamokká 52
Az SSCS és CPS alrétegek Az AAL 2 szolgáltatásokat a konvergencia-alréteg nyújtja, amely további két alrétegre oszlik: Service Specific Convergence Sublayer (SSCS) Common part sublayer (CPS).
53
Az AAL 2 funkcionális modellje (adóoldal) Minden stream-et külön SSCS szolgálja ki, amelyhez adott CID van rendelve AAL-SAP
SSCS SSCS CID=Z SSCS CID=Y CID=X
CPS
ATM-SAP 54
SSCS AAL 2 trönköléshez Speciális SSCS-t fejlesztettek ki: “ATM trunking using AAL 2 for narrowband services” Ref.: Perros: Chapter 12
55
CPS-csomagok és CPS-PDU-k A küldő SSCS timert alkalmaz annak eldöntésére mikor adja át az adatot a CPSnek Az SSCS-től származó adat CPS-packet-be kerül A különböző SSCS-ból származó CPScsomagok CPS-PDU-ba kerül, amely pontosan 48 byte hosszú és az ATM cella viszi 56
CPS-packet-ek becsomagolása CPS-PDU-kba CPS-packets
CPS-PDUs
1
2
1
3
2
3
4
3
5
4
5
ATM cells
57
A CPS-packet és a CPS-PDU struktúrája 1
2
3 4
3
6
7
CID
1 2
5
PPT
8
1 1
2
P S N
3 4
5
6 7 8
OSF
LI HEC
UUI
CPS-PDU payload CPS-packet payload 48 CPS-packet
PAD CPS-PDU
58
Mezők a CPS-packet-ben Channel identifier (CID) - 8 bit:
Csatorna-azonosító. Ugyanaz az értéke mindkét irányban A CID-ek hozzárendelése az „AAL negotiation procedures” (ANP) alkalmazásával történik
Packet payload type (PPT) - 2 bit: Jelzi, hogy beszédet vagy hálózat-menedzsmenttel kapcsolatos adatot tartalmaz Length indicator (LI) - 6 bit: Default max. érték a CPS-packet payload-ra 45 byte Header error control (HEC) - 5 bit User-to-user-indication (UUI) - 3 bit: Peer-to-peer információ transzparens átvitelére szolgál 59
CPS-PDU mezők Offset field (OSF) (6 bit) A CPS-packet kezdetének azonosítására szolgál. Az első új CPS-packet-re mutat a CPS-PDU payload-ban Új CPS-packet hiányában a pad kezdetére mutat A 47-es érték az jelenti, hogy nem kezdődik CPS-packet a CPS-PDUban 60
Példa
20
48
20 #1
27
35
21 #2
9 20 #3 #4 padding
#2 OSF =0
26 #3
20
OSF=21
OSF=9
61
ATM adaptation layer 5 (AAL 5) Igen népszerű AAL az egyszerűsége miatt A felhasználói PDU beágyazásra kerül, majd fragmentálásra, mindegyik fragment-et egy ATM cella hordozza Az AAL 5 esetében is: Convergence sublayer (CS) SSCS CPS
Segmentation and reassembly (SAR).
62
CPS Nem biztosított („non-assured”) átviteli működést nyújt A felhasználói PDU-k max. hossza 65,535 byte lehet A CPS-PDU-k hibái detektálhatók a vevőoldalon. Nincs hibajavítás, a hibás CS-PDU-król jelzés megy a felsőbb rétegeknek 63
CPS encapsulation User-PDU
Pad: 0...47 byte, ezáltal a teljes CPS-PDU 48 byte egésszámú többszöröse lesz. A felhasználói PDU max. hossza 65,535 byte CPS User-to-user indication (CPS-UU): 1 byte-os mező Common part indicator (CPI): 1 byte-os mező későbbi felhasználásra Length: 2 byte-os mező, amely megadja a CPS-PDU payload hosszát CRC pattern: 4 byte, amely a számított FCS-t tartalmazza 64
SAR alréteg - adó Az SAR a CPS-PDU-t 48 byte-os szegmensek sorozatává szegmentálja Nincs további beágyazás Minden szegmens egy-egy ATM cella payload-jaként kerül továbbításra Az utolsó cella PTI-je SDU=1.
65
SAR sublayer - vevő SAR tárolja az ATM cellák tartalmát mindaddig, amíg 1. fel nem tűnik egy cella SDU=1-gyel a PTI mezőben Ellenőrzi a CRC-t és továbbítja a PDU-t az alkalmazásnak, jelezve, hogy helyes-e, vagy nem
2. tele lesz a puffer Továbbítja a PDU-t az alkalmazásnak azzal a jelzésse, hogy a puffer tele lett 66
Classical IP and ARP over ATM Az IETF által javasolt technika IP ATM feletti átvitelére egyetlen logikai IP subnetben (LIS). A LIS IP hostok csoportja, amelyeknek közös az IP hálózati címük és subnet maszkjuk, és amelyek közvetlenül kommunikálnak egymással ATM öszeköttetéseken keresztül
67
Logikai IP alhálózat (LIS) Host-ok csoportja ugyanazzal a hálózati címel és subnet mask-kal IP cím: 193.14.0.0
A transzport hálózatot ATM switch-ekkel helyettesítjük
68
Classical IP
Computer
Computer
TCP IP CIP AAL ATM PHY
TCP IP CIP AAL ATM PHY ATM switch
IP packet
IP packet
CS-PDU
CS-PDU
SAR
SAR
ATM
ATM
69