Anal´ yza komunikaˇ cn´ıho protokolu RFC 2225 – IP a ARP nad ATM ˇ Michal Spondr (xspond00) 29. dubna 2005
Obsah ´ 1 Uvod
2
2 Nastaven´ı pods´ıtˇ e IP
2
3 Form´ at IP paketu a jeho z´ akladn´ı hodnoty pro IP MTU nad ATM 3 3.1 Trval´e virtu´ aln´ı okruhy . . . . . . . . . . . . . . . . . . . . . . . . 3 3.2 Pˇrep´ınan´e virtu´ aln´ı okruhy . . . . . . . . . . . . . . . . . . . . . 3 3.3 Vyhled´ av´ an´ı cesty pro nejvˇetˇs´ı MTU . . . . . . . . . . . . . . . . 4 4 Sluˇ zby pro rozpozn´ av´ an´ı LIS adres 4.1 Trval´e virtu´ an´ı okruhy . . . . . . . . . . . . . . . . . . 4.2 Pˇrep´ınan´e virtu´ aln´ı okruhy . . . . . . . . . . . . . . . 4.3 ATMARP server . . . . . . . . . . . . . . . . . . . . . 4.4 ATMARP klient . . . . . . . . . . . . . . . . . . . . . 4.5 V´ ybˇer serveru pro pˇridˇelov´an´ı adres . . . . . . . . . . 4.6 Form´aty ATMARP paketu . . . . . . . . . . . . . . . 4.6.1 ATMARP/InATMARP Request a Reply paket 4.6.2 Typ a d´elka, ATM ˇc´ıslo, ATM podadresa . . . 4.7 Zapouzdˇrov´an´ı ATMARP/InATMARP paket˚ u . . . . 4.8 Pˇr´ıklad jednotky PDU . . . . . . . . . . . . . . . . . .
. . . . . . . . . .
4 4 5 5 6 7 7 7 8 8 9
5 Obecn´ e pouˇ zit´ı protokolu 5.1 Budoucnost ATM . . . . . . . . . . . . . . . . . . . . . . . . . . .
9 10
6 Pˇ r´ıklad komunikace
10
1
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
IP a ARP nad ATM
1
ˇ Michal Spondr, xspond00, 29. dubna 2005
´ Uvod
Tento dokument obsahuje v´ ytah z RFC1 ˇc. 2225, kter´ y popisuje pˇrenos IP datagram˚ u a ARP poˇzadavk˚ u v s´ıt´ıch ˇci pods´ıt´ıch s ATM2 . ATM nab´ız´ı n´ ahradu za lok´aln´ı s´ıtˇe (LAN), lok´aln´ı p´ ateˇrn´ı s´ıtˇe (backbones) mezi existuj´ıc´ımi LAN, vyhrazen´e okruhy nebo priv´ atn´ı virtu´ aln´ı okruhy (PVC; virtu´ aln´ı okruhy jsou pevnˇe sestaven´e administr´ atorem) zaloˇzen´e na frame relay mezi smˇerovaˇci. ATM nab´ız´ı virtu´ aln´ı okruhy, at’ jiˇz pevn´e (PVC) nebo pˇrep´ınan´e (SVC). Data na virtu´ aln´ım okruhu jsou segmentov´ana do 53 jednotek zvan´ ych buˇ nky. Mapovac´ı funkce PDU3 do informaˇcn´ıho pole buˇ nky a naopak je prov´adˇena v ATM adaptaˇcn´ı vrstvˇe (ATM Adaptation Layer – AAL). Existuje v´ıce typ˚ u AAL, my se budeme vˇenovat typu AAL5. Tento typ specifikuje velikost paketu s maxim´ aln´ı velikost´ı (64K − 1) oktet˚ u uˇzivatelsk´ ych dat. Posledn´ı buˇ nka indikuje konec PDU. Tento ˇcl´ anek se vˇenuje n´ ahradou LAN a IP linek spojuj´ıc´ıch smˇerovaˇce za ,,klasick´ y” IP nad ATM. Charakteristiky klasick´eho modelu jsou: 1. Pro vˇsechny virtu´ aln´ı okruhy v logick´e pods´ıti IP (LIS – Logical IP Subnetwork) plat´ı stejn´ a velikost maxim´ aln´ı pˇrenosov´e jednotky (MTU – maximum transmission unit) 2. IP pakety jsou obaleny v LLC/SNAP 3. IP adresy jsou pˇrevedeny na ATM adresy pˇres ATMARP v r´ amci LIS 4. Jedna IP pods´ıt’ je pouˇz´ıv´ ana nˇekolika uˇzivateli a smˇerovaˇci. Kaˇzd´ y virtu´ aln´ı okruh spojuje dva IP ˇcleny uvnitˇr stejn´e LIS. V´ yvoj ATM jeˇstˇe nen´ı u konce, oˇcek´ avaj´ı se nˇekter´e zmˇeny souvisej´ıc´ı s poˇzadavky po bezpeˇcnosti, smˇerov´an´ım apod.
2
Nastaven´ı pods´ıtˇ e IP
Plat´ı, ˇze kaˇzd´ a administr´ atorsk´ a entita v s´ıti si nastavuje sv´e hostitele a smˇerovaˇce uvnitˇr LIS; LIS pracuje nez´avisle na ostatn´ıch LIS ve stejn´e s´ıti. Poˇc´ıtaˇce mezi sebou komunikuj´ı protokolem ATMARP (zjiˇst’ov´an´ı IP adresy v r´ amci LIS). Plat´ı nˇekolik pravidel v konfiguraci LIS: Vˇsechny prvky LIS maj´ı stejn´e ˇc´ıslo IP pro s´ıt’/pods´ıt’ a adresovou masku, jsou pˇripojeny pˇr´ımo k s´ıti ATM a mus´ı umˇet z´ıskat ATM adresu z IP adresy pˇres ATMARP (a naopak) pˇri pouˇz´ıv´ an´ı SVC. A tak´e obr´ acenˇe: vˇsechny prvky mus´ı umˇet pˇrev´est virtu´ aln´ı okruh na IP adresu skrze InATMARP, kdyˇz pouˇz´ıvaj´ı PVC. Samozˇrejmˇe mus´ı vˇsechny prvky ve stejn´em umˇet komunikovat pˇr´ımo nad ATM. 1 Request
for Comments Transfer Mode – asynchronn´ı pˇrenosov´ y m´ od 3 Protocol Data Unit – logick´ e uskupen´ı dat pro komunikaci na dan´ e vrstvˇ e komunikaˇ cn´ıho modelu 2 Asynchronous
2
IP a ARP nad ATM
ˇ Michal Spondr, xspond00, 29. dubna 2005
D´ ale mus´ı v kaˇzd´e IP stanici b´ yt naimplementov´an n´ asleduj´ıc´ı seznam specifick´ ych parametr˚ u: ATM hardwarov´a adresa (atm$ha) a seznam ATM server˚ u v LIS (aspoˇ n jeden) (atm$arp-req-list), d´ıky tomu je moˇzno z´ısk´avat IP adresy pˇres ATMARP. LIS mus´ı m´ıt jeden sluˇzebn´ı ATMARP vstup pro vˇsechny jeho prvky. Pokud existuje jen jeden ATMARP server, pak mus´ı b´ yt vˇsichni klienti nastaveny tak, aby mˇeli nenulov´ y vstup v atm$arp-req-list nastaven´ y na adresu tohoto serveru. Smˇerovaˇce v LIS by mˇely podporovat komunikaci mezi r˚ uzn´ ymi LIS. Proto v sobˇe mus´ı udrˇzovat v´ıcero v´ yˇse zm´ınˇen´ ych parametr˚ u (atm$ha a atm$arp-req-list) pro kaˇzdou s´ıt’.
3
Form´ at IP paketu a jeho z´ akladn´ı hodnoty pro IP MTU nad ATM
Implementace mus´ı podporovat zapouzdˇren´ı do IEEE 802.2 LLC/SNAP. LLC/SNAP je z´ akladn´ım form´atem pro IP datagramy. Zkuˇsenosti ukazuj´ı, ˇze je v´ yhodn´e pouˇz´ıvat u TCP datagram˚ u velk´e MTU a co nejv´ıce omezit fragmentaci IP datagramu. V dneˇsn´ı dobˇe je nav´ıc n´ aroˇcnˇejˇs´ı reˇzie zpracov´av´ an´ı v´ıce paket˚ u neˇz star´an´ı se o menˇs´ı poˇcet paket˚ u, kter´e zab´ıraj´ı v´ıce pamˇeti. Proto je IP MTU velk´e, konkr´etnˇe 9180 oktet˚ u.
3.1
Trval´ e virtu´ aln´ı okruhy
PVC nepodporuj´ı ˇza´dn´ y ATM sign´alov´ y protokol. Proto by takov´e implementace mˇely pouˇz´ıvat z´ akladn´ı d´elku MTU 9180 oktet˚ u, pokud se obˇe dvˇe strany nedomluv´ı jinak.
3.2
Pˇ rep´ınan´ e virtu´ aln´ı okruhy
SVC se mus´ı pokusit z´ıskat velikost CPCS-SDU4 za pouˇzit´ı sign´alov´eho protokolu. Ten pouˇz´ıv´ a 2 rozd´ıln´e ˇca´sti informaˇcn´ıho prvku (Information Element) pojmenovan´e ,,AAL parametry” k v´ ymˇenˇe informac´ı v r´ amci pˇres sestaven´ y ATM okruh. Pole Forward Maximum CPCS-SDU obsahuje hodnotu cesty volaj´ıc´ı strany volan´e stranˇe. Backward Maximum CPCS-CDU obsahuje hodnotu cesty opaˇcn´ ym smˇerem – od volan´eho k volaj´ıc´ımu. Tyto hodnoty jsou v rozmez´ı 1–65535 a mohou b´ yt obˇe jin´e (cesta k volan´emu nemus´ı b´ yt stejn´ a jako cesta od volan´eho). V obou pˇr´ıpadech by mˇel odesilatel pˇredat maxim´ aln´ı velikost CPCS-SDU jako ˇca´st SETUP zpr´ avy sign´alov´emu protokolu ATM, pˇr´ıjemce pak tuto velikost potvrd´ı ve zpr´ avˇe CONNECT. Pokud volan´ y obdrˇz´ı SETUP zpr´ avu s maxim´ aln´ı velikost´ı CPCS-SDU, m˚ uˇze udˇelat n´ asleduj´ıc´ı akce: 4 Common
Protocol Convergence Sublayer – Service Data Unit
3
IP a ARP nad ATM
ˇ Michal Spondr, xspond00, 29. dubna 2005
1. M˚ uˇze pˇrijmout hodnoty MTU navrˇzen´e v SETUP zpr´ avˇe – vloˇz´ı tedy do odpovˇedi AAL parametry, Forward a Backward velikosti jsou nastaveny dle odpov´ıdaj´ıc´ıch hodnot v SETUP zpr´ avˇe. 2. Pˇreje si menˇs´ı velikost MTU – nastav´ı maxim´ aln´ı velikost CPCS-SDU v AAL parametrech na poˇzadovanou hodnotu a poˇsle zpˇet CONNECT zpr´ avu s touto hodnotou. 3. Volaj´ıc´ı obdrˇz´ı CONNECT zpr´ avu bez pole s AAL parametry, ale odpov´ıdaj´ıc´ı SETUP zpr´ ava je obsahuje – vyˇcist´ı spojen´ı se zpr´ avou, ˇze AAL parametry nemohou b´ yt podpoˇreny. 4. Koncov´ y bod obdrˇz´ı STATUS zpr´ avu, ˇze informace neexistuje nebo nen´ı implementov´ana, popˇr. ˇze byla odloˇzena pˇr´ıstupov´a informace, pak vyˇcist´ı spojen´ı se zpr´ avou, ˇze AAL parametry nemohou b´ yt podpoˇreny. 5. Koncov´ y bod obdrˇz´ı CPCS-SDU vˇetˇs´ı neˇz je sjednan´ a velikost, pak se pouˇzije IP fragmentace nebo se je vyˇcist´ı spojen´ı se zpr´ avou, ˇze AAL parametry nemohou b´ yt podpoˇreny. V takov´e pˇr´ıpadˇe se ale vyskytla chyba v koncov´em syst´emu nebo v s´ıti ATM. Pokud koncov´ y bod ˇspatnˇe vypln´ı Forward a Backward Maximum, volaj´ıc´ı m˚ uˇze vyˇcistit spojen´ı s t´ım, ˇze zpr´ ava m´a neplatn´ y informaˇcn´ı prvek.
3.3
Vyhled´ av´ an´ı cesty pro nejvˇ etˇ s´ı MTU
Vyhled´ av´ an´ı cesty pro nejvˇetˇs´ı MTU je standard (RFC 1191 a 1435) slouˇz´ıc´ı k redukci IP fragmentace. U ATM s´ıt´ı jde o d˚ uleˇzitou vlasnost kv˚ uli rozd´ıln´e velikosti MTU oproti Ethernetu ˇci FDDI. Proto mus´ı vˇsechny ATM smˇerovaˇce tento standard podporovat.
4
Sluˇ zby pro rozpozn´ av´ an´ı LIS adres
Rozpozn´ av´ an´ı adres na ATM pouˇz´ıv´ a ATMARP a inverzn´ı ATMARP (InATMARP). ATMARP pracuje stejnˇe jako ARP s nˇekter´ ymi rozˇs´ıˇren´ımi pro unicastov´e prostˇred´ı ATM. InATMARP je obdobn´e jako InARP. Vˇsechny stanice mus´ı tyto protokoly podporovat. Pouˇzit´ı se liˇs´ı podle toho, zda se pouˇz´ıv´ a PVC nebo SVC.
4.1
Trval´ e virtu´ an´ı okruhy
Vˇsechny prvky PVC mus´ı pouˇz´ıvat InATMARP s LLC/SNAP zapouzdˇrov´an´ım. Pˇr´ıjemce by mˇel zjistit virtu´ aln´ı okruh z okruh˚ u, z kter´ ych obdrˇzel 4
IP a ARP nad ATM
ˇ Michal Spondr, xspond00, 29. dubna 2005
InATMARP Request (poˇzadavek) nebo InATMARP Reply (odpovˇed’). Pokud je zdroj ˇci c´ıl nezn´ am´ y, d´elky adresy je nastavena na 0.
4.2
Pˇ rep´ınan´ e virtu´ aln´ı okruhy
SVC potˇrebuje ke sv´emu bˇehu ATMARP. Uvnitˇr okruhu bˇeˇz´ı autoritativn´ı server, k nˇemuˇz se pˇres LLC/SNAP pˇripojuj´ı klienti a zas´ılaj´ı mu ˇza´dosti. Server z kaˇzd´eho ATMARP Request paketu zjist´ı protokol a hardwarovou adresu zdroje a tuto informaci uloˇz´ı do cache (tabulky), toho pak vyuˇz´ıv´ a pˇri generov´an´ı odpovˇed´ı. InATMARP Request paket obsahuje ATM ˇc´ıslo zdroje, ATM ˇc´ıslo c´ıle, port zdroje.
4.3
ATMARP server
Server pˇrijme ATMARP Request, zjist´ı zdrojovou a c´ılovou adresu a poznaˇc´ı si do tabulky, z kter´eho virtu´ aln´ıho okruhu poˇzadavek doˇsel. Pot´e: 1. Jestliˇze je zdrojov´ y IP protokol shodn´ y s c´ılov´ ym IP protokolem a existuje o nˇem z´ aznam v tabulce a jestliˇze ATM hardwarov´a adresa zdroje neodpov´ıd´a z´ aznamu v tabulce a pˇritom je otevˇren okruh pro tento z´ aznam, kter´ y nen´ı stejn´ y s okruhem, po kter´em pˇriˇsel ATMARP Request, server mus´ı vloˇzit informaci o existuj´ıc´ım z´ aznamu v tabulce v ATMARP Reply a d´ at vˇedˇet ˇr´ızen´ı serveru, ˇze byla detekov´ana dvoj´ı IP adresa. S tabulkou z´ aznam˚ u se nic nic nedˇeje. 2. Jinak pokud se shoduje zdrojov´ y IP protokol s c´ılov´ ym, ale nen´ı z´ aznam v tabulce pro tuto IP adresu nebo z´ aznam existuje, ale nen´ı s n´ım asociov´an ˇza´dn´ y virtu´ aln´ı okruh, nebo pokud je okruh asociovan´ y se z´ aznamem shodn´ y s okruhem ATM Requestu, pak mus´ı server bud’ vytvoˇrit nov´ y z´ aznam nebo aktualizovat ten star´ y a vr´ atit informaci o z´ aznamu v tabulce v ATMARP Reply. 3. Jinak pokud se zdrojov´ y IP protokol s c´ılov´ ym neshoduje, ATMARP server vygeneruje odpov´ıdaj´ıc´ı ATMARP Reply, pokud m´a z´ aznam o c´ılov´em poˇc´ıtaˇci ve sv´e ATMARP tabulce. Pokud ne, tak vygeneruje negativn´ı odpovˇed’ (ATMARP NAK). 4. I pokud zdrojov´ y IP protokol neodpov´ıd´a c´ılov´emu a server obdrˇz´ı ATMARP Request, kde zdrojov´a ani c´ılov´a adresa nen´ı nalezena v tabulce, mus´ı server uloˇzit z´ aznam o zdrojov´em poˇc´ıtaˇci. 5. Pokud zdrojov´ y IP protokol neodpov´ıd´a c´ılov´emu, ale v tabulce z´ aznam˚ u jiˇz je IP a ATM adresa zdroje a ATM adresa je asociov´ana s virtu´ aln´ım okruhem, server mus´ı obnovit z´ aznam o vyprˇsen´ı ˇcasov´eho limitu pro zdrojov´ y poˇc´ıtaˇc, ten mus´ı b´ yt nejm´enˇe 10 minut od posledn´ı aktualizace. 6. Dodateˇcnˇe – pokud zdrojov´ y IP protokol neodpov´ıd´a c´ılov´emu a kde IP a ATM adresa zdroje nejsou v ATMARP tabulce, server nemus´ı aktualizovat z´ aznam v tabulce. 5
IP a ARP nad ATM
ˇ Michal Spondr, xspond00, 29. dubna 2005
Server mus´ı vˇedˇet o vˇsech otevˇren´ ych okruz´ıch a m´ıt v tabulce jej´ıch z´ aznam, d´ ale kter´ y okruh podporuje zapouzdˇren´ı do LLC/SNAP. Z´ aznamy v tabulce jsou platn´e po dobu 20 minut. Pokud z´ aznam nen´ı bˇehem t´eto doby aktualizov´an klientem, je vymaz´ an z tabulky bez ohledu na to, jestli je s n´ım asociov´an nˇejak´ y virtu´ aln´ı okruh.
4.4
ATMARP klient
Klient se pˇripojuje k serveru, vytv´aˇr´ı a udrˇzuje z´ aznam o sv´em spojen´ı. Tak´e z´ısk´ av´ a informace o ostatn´ıch ˇclenech LIS. Klient mus´ı b´ yt asociov´an s nˇejakou ATM adresou. Tu registruje u serveru strukturou ATM adresy odpov´ıdaj´ıc´ı jeho pˇripojen´ı, tzn. LIS na ATM Forum UNI 3.1 m´a strukturu 1, LIS na E.164 m´a strukturu 2, LIS zaloˇzen´ y na kombinaci veˇrejn´ ych a lok´aln´ıch ATM s´ıt´ı m´a strukturu 3. V pˇr´ıpadˇe, ˇze m´a klient v´ıce IP adres v dan´em LIS, mus´ı registrovat kaˇzdou takovou adresu. Registrace a n´ asledn´e obnovov´an´ı z´ aznam˚ u pˇres ATMARP klient mus´ı: 1. Uzavˇr´ıt LLC/SNAP spojen´ı se serverem. Pokud obnovuje informaci o sobˇe, pak m˚ uˇze vyuˇz´ıt jiˇz existuj´ıc´ıho spojen´ı. 2. Po ustanoven´ı spojen´ı mus´ı klient pˇren´est ATMARP Request paket, kde se z c´ılov´e ATM adresy snaˇz´ı zjistit IP adresu. Klient zkontroluje ATMARP Reply a pokud souhlas´ı hardwarov´a a protokolov´a adresa zdroje s c´ılovou, je klient registrov´an. Tento krok se opakuje pro kaˇzdou IP adresu. 3. Klienti mus´ı odpov´ıdat na kaˇzd´ y ATMARP Request a ATMARP Reply paket. 4. Generovat a pˇren´ aˇset pakety se ˇza´dost´ı o rozliˇsen´ı adresy. Odpov´ıdat na pakety ze serveru pro uchov´an´ı z´ aznamu v ATMARP tabulce. 5. Generovat a pˇren´ aˇset InATMARP Request pakety a pos´ılat zpˇet InATMARP Reply pakety. InATMARP pakety slouˇz´ı k udrˇzov´an´ı z´ aznam˚ uv ATMARP tabulce. Pokud m´a dan´ y poˇc´ıtaˇc v´ıce IP adres, mus´ı generovat pro kaˇzdou adresu zvl´aˇstn´ı InATMARP Reply paket. Klient mus´ı vˇedˇet o kaˇzd´em sv´em otevˇren´em virtu´ aln´ım okruhu, jejich asociaci se z´ aznamem v tabulce a kter´ y virtu´ aln´ı okruh podporuje LLC/SNAP zapouzdˇrov´an´ı. ´ Udaje v ATMARP tabulce na serveru mus´ı b´ yt obnovov´any do 15 minut. Pokud je starˇs´ı, mus´ı klient z´ aznam zneplatnit. Pokud je z´ aznam zneplatnˇen a z´ aroveˇ n je otevˇren pˇr´ısluˇsn´ y virtu´ aln´ı okruh, klient mus´ı poupravit pˇredchoz´ı z´ aznam. U aslednou aktualizac´ı PVC prob´ıh´a upravov´an´ı InATMARP Request paketem a n´ InATMARP Reply paketem. V pˇr´ıpadˇe SVC se upravov´an´ı z´ aznamu dˇel´a dotazem na rozpozn´ an´ı adresy. Pokud je obdrˇzena platn´a odpovˇed’, je z´ aznam obnoven. Pokud nen´ı moˇzno zjistit informaci o poˇc´ıtaˇci, SVC je uzavˇren a z´ aznam v tabulce vymaz´ an. Pokud nefunguje pˇridˇelov´an´ı adres a SVC je zapouzdˇren 6
IP a ARP nad ATM
ˇ Michal Spondr, xspond00, 29. dubna 2005
v LLC/SNAP, pak mus´ı klient obnovit z´ aznam pˇrenosem InATMARP Request paketu; pokud i toto selˇze, pak je z´ aznam o spojen´ı z tabulky vymaz´ an a okruh uzavˇren (to plat´ı obecnˇe: pˇri uzav´ır´ an´ı okruhu se vˇzdy vymaˇze z´ aznam o nˇem z tabulky).
4.5
V´ ybˇ er serveru pro pˇ ridˇ elov´ an´ı adres
V pˇr´ıpadˇe PVC je seznam ATM server˚ u pr´azdn´ y, klient se nemus´ı o nic starat kromˇe zas´ıl´ an´ı InATMARP dotaz˚ u, ˇze je PVC platn´ y. V pˇr´ıpadˇe SVC mus´ı m´ıt klient nepr´ azdn´ y seznam atm$arp-req-list server˚ u, kter´e poskytuj´ı sluˇzby pro LIS. Klient mus´ı b´ yt registrov´an na nˇekter´em ze server˚ u ze sv´eho atm$arp-req-list seznamu. V´ ybˇer server˚ u ze seznamu je implementaˇcn´ı z´ aleˇzitost, stejnˇe jako poˇcet pokus˚ u o opˇetovnou registraci ˇci ˇcasov´e limity. V pˇr´ıpadˇe PVC a SVC v jednom LIS m˚ uˇze m´ıt klient PVC k serveru. Pak se chov´a jakoby ˇslo o SVC.
4.6
Form´ aty ATMARP paketu
4.6.1
ATMARP/InATMARP Request a Reply paket
Je podobn´ y obyˇcejn´emu ARP/InARP paketu s nˇekolika rozˇs´ıˇren´ımi. 0 ar$hrd ar$shtl ar$spln ar$sha ar$tsa
8 = 0x13 ar$sstl ar$thtl ar$ssa ar$tpa
16 31 ar$pro = 0x0800 ar$op ar$tstl ar$tpln ar$spa ar$tha
Nepopsan´e hodnoty maj´ı vˇzdy v tabulce vyznaˇcenou hodnotu. ar$shtl – typ a d´elka (TL – type & length) ATM adresy zdroje ar$sstl – typ a d´elka (TL) ATM podadresy zdroje ar$op – operaˇcn´ı k´od: ATMARP Request = 0x1 ATMARP Reply = 0x2 InATMARP Request = 0x8 InATMARP Reply = 0x9 ATMARP NAK = 0xA ar$spln – d´elka adresy zdrojov´eho protokolu. Pro IPv4 je 4 ar$thtl – typ a d´elka (TL) ATM adresy c´ıle ar$tstl – typ a d´elka (TL) ATM podadresy c´ıle ar$tpln – d´elka adresy c´ılov´eho protokolu. Pro IPv4 je 4 ar$sha – ATM ˇc´ıslo zdroje ar$ssa – ATM podadresa zdroje ar$spa – protokolov´a adresa zdroje ar$tha – ATM ˇc´ıslo c´ıle ar$tsa – ATM podadresa c´ıle 7
IP a ARP nad ATM
ˇ Michal Spondr, xspond00, 29. dubna 2005
ar$tpa – protokolov´a adresa c´ıle V pˇr´ıpadˇe, ˇze klient obdrˇz´ı zpr´ avu s nepodporovan´ ym ar$op k´odem, mus´ı zpr´ avu zahodit a pokraˇcovat norm´ alnˇe d´ al. Nemˇel by pos´ılat zpˇet ozn´amen´ı, ˇze dostal nepodporovanou zpr´ avu. 4.6.2
Typ a d´ elka, ATM ˇ c´ıslo, ATM podadresa
TL pole 8 7 0 1/0
6 5 4 3 2 1 oktet d´elky adresy
8. bit – rezervov´an 7. bit – typ, 0 – form´at ATM Forum NSAPA, 1 – form´at E.164 6.-1.bit – d´elka, 6. bit je MSB5 ATM adresa obsahuje ˇc´ıslo volaj´ıc´ıho u ´ˇcastn´ıka a podadresu volaj´ıc´ıho u ´ˇcastn´ıka; tyto se mapuj´ı do ATM adresy/podadresy. ATM Forum definuje 3 struktury ˇc´ısel a podadres: Struktura 1 Struktura 2 Struktura 3
ATM ˇc´ıslo ATM Forum NSAPA E.164 E.164
ATM podadresa ˇza´dn´a ˇza´dn´a ATM Forum NSAPA
ATMARP poˇzadavky a odpovˇedi pro struktury 1 a 2 nastavuj´ı d´elku podadresy na nulu (ar$s(t)stl.length = 0). Tyto d´elky jsou nastavov´any na nulu i v pˇr´ıpadˇe, ˇze je obdrˇzena nulov´a nebo nezn´ am´ a ATM adresa. y jako ATMARP Request paket. Pakety mohou m´ıt ATMARP NAK paket je stejn´ r˚ uznou velikost, napˇr. kdyˇz je nezn´ am´ a nebo nulov´a protokolov´a adresa, pak v paketu nesm´ı b´ yt alokov´ano m´ısto pro odpov´ıdaj´ıc´ı adresu. Kv˚ uli zpˇetn´e kompatibilitˇe se pro pr´adnou protokolovou adresu pouˇz´ıv´ a adresa 0.0.0.0.
4.7
Zapouzdˇ rov´ an´ı ATMARP/InATMARP paket˚ u
Pakety jsou zapouzdˇrov´any pˇres LLC/SNAP. LLC 0xAA-AA-03 OUI 0x00-00-00 = hlaviˇcka LLC/SNAP EtherType 0x08-06 ATMARP/InATMARP paket LLC hodnota ˇr´ık´ a, ˇze r´ amec obsahuje SNAP hlaviˇcku. OUI hodnota ˇr´ık´ a, ˇze n´ asleduj´ıc´ı 2 byty jsou EtherType. EtherType indikuje ARP. 5 most
significant bit
8
IP a ARP nad ATM
4.8
ˇ Michal Spondr, xspond00, 29. dubna 2005
Pˇ r´ıklad jednotky PDU
0
8 16 31 0x13 0x0800 0x14 0x00 0x0001 0x04 0x14 0x14 0x04 0x654AB4BA 0xE65E4F4F 0xFF4F6EC5 0x1430CC1C 0x9800E41A 0x93E5B013
0x93E50A0E Uveden´ y paket je ATMARP Request vyslan´ y z fiktivn´ı ATM s´ıtˇe z poˇc´ıtaˇce s ATM adresou 0x654AB4BAE65E4F4FFF4F6EC51430CC1C9800E41A nad s´ıt´ı IP verze 4. D´elka adresy je 0x14 = 20 byt˚ u, pˇriˇcemˇz neexistuje podadresa. Hodnota 0x0001 ud´ av´ a, ˇze se jedn´a o request paket. Po ATM adrese je sch´ematicky mezi dvˇema ˇcarami zn´ azornˇeno voln´e m´ısto dlouh´e 4 byty – tam by pˇriˇslo ˇc´ıslo podadresy, to vˇsak neexistuje a tud´ıˇz pro nˇej ani nen´ı alokov´ano m´ısto. N´ asleduje zdrojov´a IP adresa 0x93E5B013, n´ asledovan´ a dvˇema 20-bytov´ ymi alokovan´ ymi m´ısty, kam ATMARP server vloˇz´ı adresu c´ıle a podadresu c´ıle. Na posledn´ıch 4 bytech je IPv adresa c´ıle 0x93E50A0E.
5
Obecn´ e pouˇ zit´ı protokolu
ATM je vyuˇz´ıv´ ano v mnoha telefonn´ıch spoleˇcnostech, DSL s´ıtˇe vyuˇz´ıvaj´ı t´eˇz ATM protokol; DSL a kabelov´e modemy vyuˇz´ıvaj´ı ˇcasto PPPoA (Point to Point Protocol over ATM). Jako n´ ahrada za LAN se ATM bohuˇzel neuchytil d´ıky sv´e komplexitˇe a n´ aroˇcnosti. Mnoho n´ apad˚ u z ATM bylo vyuˇzito v MLPS6 . ATM pokr´ yv´ a fyzickou vrstvu, linkovou vrstvu a s´ıt’ovou vrstvu klasick´eho sedmivrstv´eho OSI modelu, nelze ji zaˇradit jen do jedn´e z nich. Mluv´ı se i o tzv. tˇr´ırozmˇern´em vrstvov´em modelu, viz [3]. Protoˇze ATM a ARP nad IP je z´ aleˇzitost´ı s´ıt’ov´e, linkov´e a fyzick´e vrstvy, neexis6 Multiprotocol
Data Switching
9
ˇ Michal Spondr, xspond00, 29. dubna 2005
IP a ARP nad ATM
tuj´ı nˇejak´e aplikace ˇci programy, kter´e by tohoto nˇejak tohoto vyuˇz´ıvaly (kromˇe aplikac´ı na nastaven´ı s´ıtˇe), o to se star´a j´adro operaˇcn´ıho syst´emu, respektive moduly do nˇej. Pro Linux je to napˇr´ıklad projekt ATM on Linux (http://linuxatm.sourceforge.net).
5.1
Budoucnost ATM
ATM s´ıtˇe nemaj´ı implementov´anu podporu multicastu a broadcastu, d´ ale nejsou zn´ amy vˇsechny bezpeˇcnostn´ı aspekty pouˇz´ıv´ an´ı ATM s´ıt´ı. Vˇse uk´aˇze v´ yvoj a potˇreby uˇzivatel˚ u. Otevˇrenou ot´azkou je automatick´ a konfigurace klienta pˇres DHCP nebo ILMI (Interim Local Management Interface), d´ ale to, ˇze ATMARP pakety nejsou autentifikov´any. Prob´ıh´a v´ yzkum, kter´ y by mˇel v´est k pˇrenosu stream˚ u videa a hudby pˇres ATM, protoˇze ATM vrstva garantuje kvalitu sluˇzeb.
6
Pˇ r´ıklad komunikace
Na n´ asleduj´ıc´ım pˇr´ıkladu je uk´az´ano, jak zaˇc´ın´a komunikace mezi dvˇema stanicemi ve stejn´e LIS. Stanice 1 poˇza´d´ a ATM server o zjiˇstˇen´ı ATM adresy stanice 2, ten tuto adresu poˇsle zpˇet. Stanice 1 pak poˇsle paket stanici 2, kter´ a si opˇet ovˇeˇr´ı, od koho vlastnˇe zpr´ ava je, ze sv´eho ATM serveru. Pak jiˇz prob´ıh´a komunikace bez kontaktov´an´ı ATM server˚ u. time
ATM server
InATMARP_Reply: ar$op=0x9,ar$tsa=0x0, ar$thtl=0x14, ar$tstl=0x0, ar$tha=ATM_adresa_stanice2, ar$tsa=0x0
ATMARP_Request: ar$op=0x1, ar$spln=0x4 ar$shtl=0x14, ar$sstl=0x0 ar$tpln=0x4 ar$sha=ATM_adresa_stanice1 ar$ssa=0x0, ar$spa=IP_adresa_stanice1 ar$tpa=IP_adresa_stanice2
stanice 1
ATMARP_Request: ar$op=0x1, ar$spln=0x4 ar$shtl=0x14, ar$sstl=0x0 ar$tpln=0x4 ar$sha=ATM_adresa_stanice2 ar$ssa=0x0, ar$spa=IP_adresa_stanice2 ar$tpa=IP_adresa_stanice2
stanice 2
ATMARP_Request: ar$op=0x1, ar$spln=0x4 ar$shtl=0x14, ar$sstl=0x0,ar$tpln=0x4 ar$sha=ATM_adresa_stanice1, ar$ssa=0x0,ar$spa=IP_adresa_stanice1 ar$thtl=0x14,ar$tstl=0x0, ar$tha=ATM_adresa_stanice2,at$tsa=0x0 ar$tpa=IP_adresa_stanice2
InATMARP_Reply: ar$op=0x9, ar$tsa=0x0, ar$thtl=0x14, ar$tstl=0x0, ar$tha=ATM_adresa_stanice1 ar$tsa=0x0
ATMARP_Reply: ar$op=0x1, ar$spln=0x4 ar$shtl=0x14, ar$sstl=0x0,ar$tpln=0x4 ar$sha=ATM_adresa_stanice2, ar$ssa=0x0,ar$spa=IP_adresa_stanice2 ar$thtl=0x14,ar$tstl=0x0, ar$tha=ATM_adresa_stanice1,at$tsa=0x0 ar$tpa=IP_adresa_stanice1
ATMARP_Request ...
ATMARP_Reply ...
Obr´azek 1: Pˇr´ıklad zaˇca´tku komunikace
10
ATM server
ˇ Michal Spondr, xspond00, 29. dubna 2005
IP a ARP nad ATM
Reference [1] Dost´ alek L., Kabelov´a A.: Velk´y pr˚ uvodce protokoly TCP/IP a syst´emem DNS, 3, Praha 4, Computer Press, 2002 [2] Asynchronous Transfer http://en.wikipedia.org/wiki/Asynchronous Transfer Mode 2005) [3] Vrstvov´y model (25. dubna 2005)
ATM,
(20.
Mode, bˇrezna
http://www.earchiv.cz/a97/a738k150.php3
11