4.
A közegelérési alréteg
Ahogy már az első' fejezetben rámutattunk, a hálózatok két kategóriába sorolhatók: vannak, amelyek kétpontos összeköttetést, és vannak, amelyek adatszóró csatornát használnak. Ez a fejezet az adatszóró hálózatokkal, és az ilyen hálózatokon használha tó protokollokkal foglalkozik. Minden adatszóró hálózat esetén a kulcskérdés az, hogy versenyhelyzetben hogyan állapítható meg, melyik állomás nyerje el a jogot a csatorna használatára. Ahhoz, hogy a problémát tisztábban lehessen látni, vegyünk egy példát: képzeljünk el egy te lefonos konferenciabeszélgetést, amelyben hat ember vesz részt, akik külön telefonké szülékeket használnak. A konferencia során minden készülék között van kapcsolat, így mindenki hallja a másikat, és bárkihez tud szólni. Ilyen szituációkban sűrűn fordul elő az, hogy amikor valaki befejezi a mondandóját, egyszerre ketten vagy többen is megszólalnak, ami teljes kavarodáshoz vezet. Ez a zűrzavar nem jelentkezne egy szemtől szembe típusú találkozón, hiszen ekkor külső jelekkel, például a megbeszélés során kézfeltartással jelezhetnék a résztvevők felszólalási szándékukat. Viszont akkor, ha csak egyetlen csatorna áll rendelkezésre, sokkal nehezebb annak eldöntése, hogy ki használhatja a csatornát következőként. A feladat megoldására rengeteg protokoll is mert, és a fejezet ezekről próbál áttekintést nyújtani. Az irodalomban az adatszóró csatornákra (broadcast channel) sokszor hivatkoznak többszörös elérésű/hozzáférésű csatorna (multiaccess channel), illetve véletlen elérésűThozzáférésű csatorna (random access channel) megnevezéssel is. Az adatkapcsolati réteg egy alrétegéhez, a MAC-alréteghez (Médium Access Control) tartoznak azok a protokollok, amelyek a közeg használatának vezérléséért felelősek. A MAC-alréteg különösen fontos szerepet tölt be a LAN-hálózatokban, amelyek közül szinte mindegyik többszörös elérésű csatornára építi kommunikációját. Ezzel szemben a műholdas rendszerek kivételével a WAN-hálózatok kétpontos össze köttetésekből állnak össze. Mivel a többszörös elérésű csatornák és a LAN-hálózatok ilyen szoros kapcsolatban állnak, ebben a fejezetben általában véve a LANhálózatokról lesz szó, néhány olyan témával együtt, melyek nem tartoznak szorosan a MAC-alréteghez. Technikailag a MAC-alréteg az adatkapcsolati réteg alsó részét képezi, így logikai lag a 3. fejezetben részletezett kétpontos protokollok előtt kellett volna ismertetni. Mindazonáltal a legtöbb ember számára egyszerűbb a több résztvevő' számára készült
284
SZÁMÍTÓGÉP-HÁLÓZATOK
protokollokat megérteni azután, ha már megismerte a két résztvevő számára készült protokollokat, ezért kis mértékben eltértünk a tényleges alulról felfelé történő bemuta tástól.
4.1.
A csatornakiosztás problémája
Ez a fejezet elsősorban azzal foglalkozik, hogyan lehet egy adatszóró csatornát a ver senyző felhasználók között kiosztani. Először általánosan fogjuk vizsgálni a statikus és dinamikus módszereket, majd megvizsgálunk néhány konkrét algoritmust.
4.1.1.
Statikus csatornakiosztás LAN-ok és MAN-ok esetén
Hagyományosan, például telefontrönkök esetében, frekvenciaosztásos nyalábolással (Frequency Division Multiplexing, FDM) oldják meg a csatornakiosztást a versengő felhasználók között. Ha N felhasználó van, a sávszélességet N darab egyenlő méretű sávra osztják (lásd 2.31. ábra), majd minden felhasználót hozzárendelnek az egyik frekvenciasávhoz. Miután minden felhasználónak saját frekvenciasávja van, nem za varhatják egymást. Az FDM egyszerű és hatékony kiosztási mechanizmus olyan ese tekben, amikor kevés, fix számú felhasználó van, azok viszont nagy (puffereit) forgal mi igénnyel rendelkeznek (pl. egy szállítmányozó cég elosztó irodája). Azokban az esetekben azonban, amikor a küldő felek száma nagy és folyamatosan változik, vagy az adatforgalom löketes jellegű, felmerül néhány probléma az FDM al kalmazásával. Ha a frekvenciaspektrumot N részre osztottuk, viszont egyszerre éppen N-né\ kevesebb felhasználó szeretne kommunikálni, az értékes spektrum jókora há nyada veszik kárba. Ha viszont N-nél több felhasználó szeretne kommunikálni, szabad sávok hiányában néhányukat a rendszernek vissza kell utasítania még akkor is, ha a frekvenciasávval rendelkező felhasználók közül néhányan nem is küldenek vagy fo gadnak adatokat. A meglevő csatorna statikus alcsatornákra bontása természetesen még akkor sem lehet hatékony megoldás, ha feltételezzük, hogy a felhasználók száma állandóan N marad. Az alapvető probléma az, hogy amíg a felhasználók nem forgalmaznak, a szá mukra kijelölt frekvenciatartomány egyszerűen elveszik, mivel ők nem használják, mások pedig nem férhetnek hozzá. Ráadásul a legtöbb számítógépes rendszerben az adatforgalom alapvetően löketes jellegű (a maximális és átlagos forgalom 1000:1 ará nya elég általános), így a csatornák többsége az idő túlnyomó részében kihasználatlan marad. A statikus FDM alacsony hatékonysága könnyen belátható egy, a sorbanállási el méleten alapuló egyszerű számítással. Számítsuk ki az igények által a rendszerben el töltött időt (7). A csatorna kapacitása legyen C b/s, átlagosan X keret/másodperc in tenzitással érkezzenek elküldendő adatok, és a keretek hosszát 1/u bit/keret várható ér tékű exponenciális eloszlás határozza meg. Ezen paraméterek mellett az érkezési intenzitás X keret/s, a kiszolgálási intenzitás
285
A KÖZEGELÉRÉSI ALRÉTEO
pedig uC keret/s. A tömegkiszolgálás eszközeinek segítségével megmutatható, hogy Poisson-eloszlású érkezési és kiszolgálási idők esetén 7=l/(uC-X) Ha például C - 100 Mb/s az átlagos kerethossz, 1/u értéke 10 000 bit, a keretek érke zési intenzitása pedig X - 5000 keret/s, akkor T = 200 us. Vegyük észre, hogy ha fi gyelmen kívül hagynánk a sorban állásból fakadó késleltetést, és csak azt néznénk, hogy mennyi ideig tart egy 10 000 bites keretet elküldeni egy 100 Mb/s-os hálózaton, akkor eredményül (helytelenül) 100 us-ot kapnánk. Ez az eredmény csak akkor lenne helyénvaló, ha nem folyna versengés a csatornáért. Most vágjuk a csatornát N darab független alcsatornára, amelyek közül mindegyik C/N b/s kapacitással rendelkezik. Ekkor az átlagos érkezési intenzitás mindegyik alcsatornán X/N lesz. Újraszámolva a T-t a következő eredményt kapjuk. 1 TFDM
N
~ n(C/iV) - (X/N) ~ ^C^X
~
NT
'
(4 1}
'
Az igények által a rendszerben eltöltött átlagos idő FDM alkalmazása esetén /V-szer nagyobb annál, mintha az összes keret valamilyen varázslatos módon egy nagy köz ponti sorba rendeződött volna. Az időosztásos nyalábolás (Time Division Multiplexing, TDM) esetében is ponto san ugyanazok az érvek érvényesek, mint az FDM-nél. Ekkor minden egyes felhasz nálót statikusan hozzárendelnek minden N. időréshez. Ha a felhasználó nem használja ki a számára fenntartott időrést, akkor az egyszerűen üres marad. Ez akkor is ugyan így fennáll, ha a hálózatot fizikailag több részre osztjuk. Az előző példánál maradva, ha egy 100 Mb/s-os hálózat helyett 10 darab 10 Mb/s-os hálózatot használnánk, és mindegyikhez statikusan egy felhasználót rendelnénk, akkor az átlagos késleltetés 200 us-ról 2 ms-ra csökkenne. Mivel a hagyományos statikus hozzárendelési módszerek közül egy sem képes jó hatásfokkal működni löketes forgalom esetén, vizsgáljunk most meg néhány dinami kus megoldást!
4.1.2.
Dinamikus csatornakiosztás LAN-ok és MAN-ok esetén
Mielőtt a fejezet által tárgyalt rengeteg csatornakiosztási módszer közül az elsővel el kezdenénk foglalkozni, megéri kis időt szakítani a csatornakiosztás problémájának pontos megfogalmazására. A munkánk során a következő öt kulcsfontosságú feltétele zéssel fogunk élni. 1. Állomás modell. A modell N független állomást (station) feltételez (számítógé pet, telefont, személyi hívót stb.), melyeken egy program vagy egy felhasználó to vábbítandó kereteket generál. Az állomásokat néha terminálnak (terminál) is ne-
286
SZÁMÍTÓGÉP-HÁLÓZATOK
vezik. Annak a valószínűsége, hogy Aí idő alatt generálódik egy keret, AAí, ahol egy konstans (az új keretek érkezési intenzitása). Ha egy állomás generált egy ke retet, akkor blokkolt állapotban marad mindaddig, amíg a keretet sikeresen nem to vábbította. 2. Egyetlen csatorna feltételezése. Mindenféle kommunikációhoz egyetlen csatorna vehető igénybe. Minden állomás képes ezen adatokat továbbítani, illetve adatokat fogadni. A hardver megvalósítás az állomásokat egyenrangúnak tekinti, bár a pro tokoll szoftver prioritást rendelhet hozzájuk. 3. Ütközés feltételezése. Ha két keretet egy időben továbbítanak, akkor azok átlapolódnak, és az eredményül kapott jel értelmezhetetlenné válik. Az ilyen eseményt ütközésnek (collision) nevezzük. Az ütközéseket minden állomás képes észlelni. Az ütközésbe került kereteket később újra kell küldeni. Az ütközéseken kívül sem milyen egyéb hiba nem léphet fel. 4. a) Folytonos idő. A keretek továbbítása bármelyik időpillanatban megkezdődhet. Nincs központi óra, amely az időt diszkrét intervallumokra osztaná. b) Diszkrét idő (slotted time). Az idő diszkrét intervallumokra (időrés) van oszt va. A keretek továbbítása mindig csak az időrések elején kezdődhet meg. Egy időrés 0, 1 vagy több keretet tartalmazhat, és ennek megfelelően nevezzük az időrést üresnek, sikeresnek vagy ütközésesnek. 5. a) Vivőjel-érzékelés (carrier sense). Az állomások meg tudják állapítani, hogy a csatorna foglalt-e, mielőtt megpróbálnák használni. Ha a csatornát foglaltnak ér zékelik, akkor egyetlen állomás sem próbálja meg használatba venni, amíg üres sé nem válik. b) Nincs vivőjel-érzékelés. Az állomások nem tudják megvizsgálni a csatornát, mielőtt megpróbálnák használatba venni, így egyszerűen elkezdenek adni. Csak ez-után tudják eldönteni, hogy az átvitel sikeres volt-e vagy sem. Néhány megjegyzés a feltételezésekhez. Az első azt mondja, hogy az állomások függetlenek egymástól, és az igények állandó intenzitással generálódnak. Implicit mó don azt is feltételezi, hogy egyetlen program vagy felhasználó vezérli a munkaállomá sokat, így amíg az állomás blokkolt állapotban van, nem keletkezik újabb igény rajta. Bonyolultabb modellek megengednek több programot futtató állomásokat, amelyek így blokkolt állapotban is képesek igényeket generálni, de az ilyen állomások analízi se sokkal komplexebb feladat. A probléma gyökerét az egyetlen csatorna feltételezése képezi, ugyanis emiatt nincs semmilyen külső kommunikációs lehetőség. Az állomások nem képesek feltenni a kezüket, hogy a tanár felszólítsa őket. Az ütközések feltételezése szintén alapvető, még akkor is, ha egyes rendszerek (nevezetesen a szórt spektrumú rendszerek) esetében ezen a feltételezésen gyengítet-
A KÖZEGELÉRÉSI ALRÉTEG
287
tek, ami meglepő eredményekhez vezetett. Néhány LAN-hálózat, mint például a ve zérjeles gyűrű típusú rendszerek esetében pedig egy speciális vezérjelet adnak körbe állomásról állomásra, és a vezérjel birtokosa mindig átvihet egy keretet. Ennek ellené re a következő szakaszokban továbbra is egyetlen csatornát, valamint versengést és ütközéseket feltételezünk. Az időt illetően két különböző feltételezés létezik: lehet folytonos, illetve diszkrét. Bizonyos rendszerek az egyiket, mások pedig a másikat használják, ezért mindkettőt tárgyalni és vizsgálni fogjuk. Természetesen egy adott rendszerre ezek közül csak az egyik állhat fenn. Hasonlóan, egy hálózat lehet vivőjel-érzékeléses vagy nem. Általában a LAN-ok vivőjel-érzékelős hálózatok, de a műholdas rendszerek nem (a nagy terjedési késlelte tés miatt). Vivójel-érzékelést támogató hálózatokon az állomások az adást azonnal be tudják fejezni, ha érzékelik, hogy az másik adással ütközik. Itt jegyezném meg, hogy a „vivőjel" (carrier) szó egy villamos jelre utal, amely a kábeleken halad, és semmi kö ze nincs a távközlési szolgáltatóhoz (pl. a telefontársasághoz).
4.2.
Többszörös hozzáférésű protokollok
Többszörös hozzáférésű csatornák kiosztására több algoritmus is ismert. A következő fejezetben megismerkedünk néhány jellegzetes protokollal az érdekesebbek közül, és példákat mutatunk be a használatukra.
4.2.1.
ALOHA
Az 1970-es években a Hawaii Egyetemen Norman Abramson munkatársaival terve zett egy új, elegáns módszert a csatornakiosztás problémájának megoldására. Munká jukat azóta sok kutató folytatta és fejlesztette tovább (Abramson, 1985). Bár Abram son ALOHA-rendszernek nevezett munkáját földi telepítésű rádiós üzenetszóráshoz készítette, az alapötlete bármely olyan rendszerre alkalmazható, amelyben koordiná latlan felhasználók egyetlen megosztott csatorna hozzáférési jogáért versengenek. Két változatát fogjuk vizsgálni: az egyszerű (pure) és a réselt (slotted) ALOHA-t. A különbség az, hogy az időt felosztjuk-e diszkrét időszeletekre, amelyekbe minden keretnek el kell férnie, vagy sem. Az egyszerű ALOHA nem igényel globális idő szinkronizálást, míg a réselt ALOHA igen.
Egyszerű ALOHA Az ALOHA-rendszer alapötlete egyszerű: engedjük a felhasználót adni, amikor csak van továbbítandó adata. Természetesen ütközések lesznek, és ezek a keretek el fognak veszni. Az üzenetszórás visszacsatolásos jellege miatt azonban a küldő - a többi állo máshoz hasonlóan - figyelheti a csatornát, így meg tudja állapítani, hogy tönkrement-e a
288
SZÁMÍTÓGÉP-HÁLÓZATOK
Felhasználó
•
• •
•
•
• • • •
• • •
• •
Idő
4.1. ábra. Az egyszerű ALOHA-rendszerben a keretek küldése tetszőleges időpillanatban kezdődhet meg keret, vagy sem. Egy LAN esetén a visszacsatolás azonnali; egy műholdnál viszont a küldő csak 270 ms késleltetés után szerezhet tudomást az átvitel sikerességéről. Ha valamilyen okból kifolyólag nem lehetséges az átvitel közben figyelni, akkor nyugták ra van szükség. Ha a keret megsérült, a küldő egyszerűen véletlenszerű ideig várako zik, majd ismét elküldi a keretet. A várakozási időnek véletlenszerűnek kell lennie, különben ugyanazok a keretek ütköznének újra és újra szabályos időközönként. Azo kat a rendszereket, amelyekben a közös csatorna használata konfliktushelyzetek kiala kulásához vezethet, versenyhelyzetes (contention) rendszereknek nevezzük. Az ALOHA-rendszerbeli keretgenerálás vázlatát a 4.1. ábra mutatja be. A kerete ket egyforma hosszúnak vettük, mivel az ALOHA-rendszerek átbocsátóképessége egyforma keretméretek esetén maximális. Amikor ugyanabban az időpillanatban két keret is megpróbálja elfoglalni a csator nát, ütközés lép fel, és mindkét csomag megsérül. A két keret akkor is használhatat lanná válik, ha az egyik első bitje éppen hogy ütközik a másik utolsó bitjével, így ké sőbb mindkét keretet újra kell majd küldeni. Az ellenőrző összeg nem képes megkü lönböztetni (és nem is feladata) a teljes ütközést a részlegestől. Ami hibás, az hibás. Nagyon érdekes kérdés a következő: milyen egy ALOHA-csatorna hatékonysága. Tehát az elküldött keretek mekkora hányada képes épségben maradni ilyen kaotikus körülmények között? Először képzeljünk el egy végtelen számú interaktív felhaszná lói csoportot, ahol mindenki a terminálja (állomása) előtt ül. Egy felhasználó mindig két állapot közül az egyikben van: vagy gépel, vagy várakozik. Kezdetben minden fel használó gépel. Amikor egy sor elkészült, a felhasználó befejezi a gépelést és várja a visszajelzést. Ekkor az állomás egy keretbe helyezve továbbítja a sort, miközben fi gyeli a csatornát, hogy sikeresen átjutott-e a csomag. Ha sikeres volt az átvitel, a fel használó visszajelzést kap erről, majd tovább gépel. Ha az átvitel nem sikerül, a fel használó tovább várakozik, a keret pedig újra meg újra átküldésre kerül addig, amíg egyszer sikeresen át nem jut a csatornán. Nevezzük „keretidőnek" azt az időtartamot, amely egy szabványos, fix hosszúságú keret átviteléhez szükséges (azaz a keret hosszát osztva a bitsebességgel)! Tegyük fel, hogy a felhasználók végtelen populációja a kereteket Poisson-eloszlás szerint állítja
289
A KÖZEGELÉRÉSI ALRÉTEO
elő, keretidőnként átlagosan N keretet. (A végtelen populáció feltételezése azért szük séges, hogy a felhasználók blokkolódása esetén se csökkenjen N értéke.) Ha 7V> 1, akkor a felhasználói közösség nagyobb intenzitással állítja elő a kereteket, mint aho gyan azt a csatorna kezelni képes, így majdnem minden keret ütközést fog elszenved ni. Elfogadható áteresztőképesség 0 < N < 1 tartományban alakulhat ki. Az új keretek elküldése mellett az állomásoknak a régi, ütközést szenvedett keretek újraindítását is el kell végezni. Tegyük még fel, hogy keretidó'nként k számú új és régi keretegyüttes elküldési kísérleteinek valószínűsége ugyancsak Poisson-eloszlású, és keretidőnkénti középértéke G. Világos, hogy G > N. Kis terhelés esetén (vagyis N ~ 0) csak kevés ütközés fordul elő, így az újraadások száma is kicsi, tehát G = N. Nagy terheléskor sok az ütközés, így G> N. Bármekkora is a terhelés, az S áteresztőképes séget mindig a G aktuális terhelés, és a sikeres átvitel valószínűségének (P0) szorzata adja meg. Tehát S = GPQ, ahol P0 annak a valószínűsége, hogy egy keret nem szenved ütközést az átvitel során.
Ütközik a sötétített keret elejével
t0 + t Kritikus szakasz •
Ütközik a sötétített keret végével
t0+2t
t0 + 3t
Idő
4.2. ábra. A sötétített keret ütközésveszélyes szakasza Egy keret akkor nem szenved ütközést, ha elküldésének első pillanatától kezdve egy keretideig nem próbálkozik más állomás keretküldéssel. Ezt szemlélteti a 4.2. áb ra. Milyen körülmények között érkezhet meg sértetlenül az ábrán besötétített keret? Legyen t az egy keret elküldéséhez szükséges idő. Ha t0 és t0 + t időpontok között va lamelyik felhasználó keretet küldött, akkor annak vége ütközni fog a sötétített keret elejével. Igazság szerint, a sötétített keret sorsa már azelőtt megpecsételődött, mielőtt az első bitjét elküldték volna, de mivel az egyszerű ALOHA-rendszerben az állomá sok nem figyelik a csatornát az adás megkezdése előtt, nem tudhatják, hogy egy keret már úton van. Hasonlóan, azok a keretek, amelyek küldését a t0 + t és t0 + 2í interval lumban kezdik meg, a sötétített keret végével fognak ütközni. Annak valószínűsége, hogy adott keretidő alatt k új keret keletkezik a feltételezett Poisson-eloszlás szerint:
290
SZÁMÍTÓGÉP-HÁLÓZATOK
így annak valószínűsége, hogy nem keletkezik keret e G. Két keret hosszúságú időin tervallumban a keletkezett keretek várható száma 2G. Annak valószínűsége tehát, hogy a teljes kritikus szakasz során nem lesz egyéb forgalom, P0 = e-2G Az S = GP,o egyenlőséget felhasználva: S = Ge-2G Az áteresztőképesség és az aktuális forgalmi igény kapcsolatát a 4.3. ábra szemlél teti. Az áteresztőképesség G - 0,5-nél éri el a maximumát, az l/(2e) értéket, amely megközelítőleg 0,184. Ez annyit jelent, hogy az elérhető legjobb csatornakihasznált ság legfeljebb 18%-os lehet. Ez az eredmény nem túl biztató, de egy olyan módszerrel szemben, amelyben mindenki akkor adhat, amikor csak akar, aligha várható el 100%-os kihasználtság.
Réselt ALOHA: S = Ge" 0
0,5
1,0 1,5 2,0 G (próbálkozások száma/keretidő)
4.3. ábra. Az ALOHA-rendszerek áteresztőképessége a forgalmi igény függvényében
Réselt ALOHA 1972-ben Roberts olyan módszert publikált, amellyel egy ALOHA-rendszer kapacitá sa megduplázható. Javaslata szerint az időt diszkrét szeletekre kell osztani, amelyek hossza a keretidőkhöz igazodik. Az eljárás megköveteli viszont, hogy a felhasználók megegyezzenek az időintervallumok határainak pontos helyében. A szinkronizálás egyik lehetséges módja, hogy egy kijelölt állomás, akárcsak egy óra, speciális jelet bocsát ki az időintervallumok kezdetén. Roberts módszerében, amely réselt ALOHA (slotted ALOHA) néven lett ismert, Abramson egyszerű ALOHA (pure ALOHA) rendszerével ellentétben, a terminálok nem kezdhetnek el adni bármikor, amikor leütik a kocsi-vissza billentyűt, hanem meg kell előbb várniuk a következő időrés kezdetét. Ezáltal a folyamatos egyszerű ALOHA diszkrétté alakul. Mivel a keretek kritikus szakasza a felére csökken, annak valószínűsége, hogy a tesztkeretünkkel azonos időrésben ne legyen egyéb forgalom e~G, ami az
A KÖZEGELÉRÉSI ALRÉTEG
S = Ge-G
291 (4.3)
egyenlőséghez vezet. Ahogy a 4.3. ábrán láthatjuk, a réselt ALOHA G = I-nél éri el áteresztőképességének maximumát S = l/e, azaz megközelítőleg 0,368 értékkel, amely kétszer akkora, minta az egyszerű ALOHA esetén. Ha a rendszer G= 1-gyel működik, akkor egy üres időrés előfordulási valószínűsége (4.2)-ből következően 0,368. A réselt ALOHA-val elérhető legjobb kihasználtság mellett az időrések 37%-a üres, 37%-a sikeres, és 26%-a ütközéses lesz. Magasabb G értékek mellett az üres idő rések száma ugyan csökken, viszont exponenciálisan megnő az ütközéses időrések száma. A növekedés ütemének szemléltetése céljából végezzünk el egy egyszerű szá mítást egy tesztkeret elküldésével kapcsolatban. Annak valószínűsége, hogy elkerüli az ütközést, megegyezik annak valószínűségével, hogy mások nem adnak az adott időrésben, vagyis e~G. Az ütközés valószínűsége tehát 1 - e~G. Pontosan k kísérletet követelő átvitel valószínűsége (vagyis a sikeres átvitelt k - 1 ütközés előzte meg): Pk=e-G(l-e-Gtx Ebből következik, hogy a kocsi-vissza billentyű leütése után az átviteli kísérletek várható száma, E: 00
00
E^kPk=^ke-G(l-eGf-'=eG k=l
k=\
C-nek G-től való exponenciális függése azt eredményezi, hogy a csatorna terhelésének kis növekedése is drasztikusan csökkentheti annak teljesítményét. Talán nem magától értetődő, hogy miért is annyira jelentős a réselt ALOHA. Ezt a megoldást már az 1970-es években kidolgozták, aztán néhány korai, kísérleti rend szerben használták is, de később szinte teljesen feledésbe merült. Amikor aztán a ká belen keresztül történő ínternetelérés megjelent, a mérnökök hirtelen azzal a problé mával találták szembe magukat, hogy egy közös csatornát több, egymással versengő felhasználó között kellett megosztaniuk. Ekkor, mintegy a szemétből előbányászva, elővették a réselt ALOHA-t, és a világ meg volt mentve. Máskor is előfordult már, hogy teljesen jó protokollokat mellőztek politikai okok miatt (pl. valamelyik nagy tár saság azt akarta, hogy mindenki az ő útját járja), aztán évekkel később egy értelmes ember mégis észrevette, hogy egy rég feledésbe merült protokoll megoldja aktuális problémáját. Éppen ezért ebben a fejezetben mi is tanulmányozni fogunk számos olyan elegáns protokollt, melyeket jelenleg nem használnak széles körben, de a jövő alkalmazásaiban még minden további nélkül népszerűek lehetnek, feltéve, hogy most elég sok hálózattervező megismeri őket. Emellett természetesen sok olyan protokollal is foglalkozunk, mely ma is használatos.
292 4.2.2.
SZÁMÍTÓGÉP-HÁLÓZATOK
Vivőjel-érzékeléses többszörös hozzáférésű protokollok
Réselt ALOHA használatával az elérhető legjobb csatornakihasználtság l/e. Ez meg lepően jó eredmény, hiszen egy olyan rendszerben, ahol az állomások tetszés szerint, a többi állomás tevékenységének figyelembevétele nélkül adhatnak, sok ütközésnek kell bekövetkeznie. Helyi hálózatokban azonban az állomások érzékelhetik más állomások tevékenységét, így viselkedésüket azokhoz igazíthatják. Ennek köszönhetően ezek a há lózatok 1/e-nél sokkal jobb csatornakihasználást érhetnek el. A következőkben néhány olyan protokollt mutatunk be, amelyek megnövelik a csatorna teljesítőképességét. Azokat a protokollokat, amelyekben az állomások figyelik a csatornán folyó for galmat, és ennek megfelelően cselekszenek, csatornafigyelő protokolloknak vagy vivőjel-érzékeléses protokollnak (carrier sense protocols) nevezik. Ezek közül töb bet a gyakorlatban is használnak. Kleinrock és Tobagi (1975) több ilyen protokollt is részletesen elemzett. Az alábbiakban a csatornafigyelő protokollok több verzióját is bemutatjuk.
Perzisztens és nemperzisztens CSMA Az első csatornafigyelő protokoll az 1-perzisztens CSMA (Carrier Sense Multiple Access - vivőjel-érzékeléses többszörös hozzáférés). Amikor egy állomás adni ké szül, először belehallgat a csatornába, hogy eldönthesse, használja-e azt éppen egy másik állomás. Ha a csatorna foglalt, akkor addig vár, amíg az ismét szabad nem lesz. Amikor az állomás szabad csatornát érzékel, elküld egy keretet. Ha ütközés követke zik be, akkor az állomás véletlen hosszúságú ideig vár, majd újból elölről kezdi az egészet. A protokollt 1 -gerasztensnek^ nevezik, jnivel a várakozó állomás 1 valósaMséggel_adni kezd, amint üresnek érzékeli a csatornát^ A protokoll teljesítményét nagymértékben befolyásolja a terjedési késleltetés. Csak kis esélye van annak, hogy miután egy állomás adni kezdett, egy másik állomás, amelyik éppen adásra kész állapotba került, érzékelje a csatorna foglaltságát. Ha az első állo más által küldött jel nem éri el a másodikat, akkor az szabadnak érzékelve a csatornát szintén adni kezd, így ütközés áll elő. Minél nagyobb a terjedési késleltetés, annál fontosabbá válik ez a jelenség, és annál rosszabb lesz a protokoll teljesítőképessége. Ütközések még akkor is előfordulnának, ha a terjedési idő nulla lenne. Ha két állo más is adásra kész állapotba kerülne, miközben egy harmadik állomás használja a csa tornát, mindketten udvariasan kivárnák, amíg a csatorna szabaddá válik, majd egy szerre kezdenének adni, ami ütközést eredményezne. Ha türelmesebbek lennének, ke vesebb ütközés keletkezne. Ez a protokoll azonban még így is sokkal jobb az egyszerű ALOHA-nál, mivel mindkét állomás elég illedelmes ahhoz, hogy elkerülje az ütközést a harmadik állomás keretével. Ebből intuitív módon következik, hogy a módszer na gyobb teljesítményt képes elérni, mint az egyszerű ALOHA. Pontosan ugyanez igaz a réselt ALOHA-ra is. A második csatornafigyelő protokoll a nemperzisztens CSMA (nonpersistent CSMA). Ebben a protokollban tudatosan arra törekedtek, hogy az állomások ne le gyenek mohók. Küldés előtt az állomás megfigyeli a csatornát. Ha senki sem forgal-
293
A KÖZEGELÉRÉSI ALRÉTEG
maz, akkor az állomás elkezdhet adni. Ha azonban foglalt a csatorna, nem folytatja fo lyamatosan a megfigyelést, hogy a forgalom megszűntével azonnal megkezdje az adást, hanem véletlen hosszúságú ideig várakozik, és ekkor elölről kezdi az algorit must. Ismét intuitívan következtetve, ennek a módszernek jobb kihasználtsághoz, de nagyobb késleltetésekhez kell vezetnie, mint az 1-perzisztens CSMA-nak. Az utolsó a p-perzisztens CSMA (p-persistent CSMA) protokoll. Réselt csator nát alkalmaz, és a következőképpen működik. Amikor egy állomás adásra kész álla potba kerül, megvizsgálja a csatornát. Ha az szabad, akkor p valószínűséggel forgal mazni kezd, vagy q = 1 - p valószínűséggel visszalép szándékától a következő idő résig. Ha a következő időrésben a csatorna még mindig szabad, akkor ismét p, illetve q valószínűséggel ad vagy visszalép. Ez a folyamat addig folytatódik, amíg a keret elkül désre nem kerül, vagy egy másik állomás forgalmazni nem kezd. Az utóbbi eset ugyan olyan hatású, mintha ütközés következett volna be (azaz véletlen hosszúságú ideig vár, majd újból elölről kezdi az algoritmust). Ha az állomás már kezdetben érzékeli a csa torna foglaltságát, akkor vár a következő időrésig, és csak ott kezdi a fent leírt algo ritmust. A 4.4. ábra nem csak e három protokoll, hanem az egyszerű és réselt ALOHAprotokollok áteresztőképességét is szemlélteti a forgalmi igények függvényében. 0,01-perzisztens CSMA
3 4 5 6 G (próbálkozások száma/keretidő)
4.4. ábra. Véletlen hozzáférésű protokollok összehasonlítása a terhelés függvényében mért csatornakihasználtság alapján
CSMA ütközésérzékeléssel A perzisztens és nemperzisztens protokollok egyértelmű előrelépést jelentenek az ALOHA-rendszerhez képest, hiszen az állomások nem kezdenek el adni, ha a csator nát foglaltnak érzékelik. További fejlődés, hogy az állomások az ütközés érzékelése után azonnal befejezik adásukat. Másképpen fogalmazva, ha két állomás tétlennek ér zékelve a csatornát egyszerre kezd adni, majd érzékelik az ütközést, akkor nem fejezik be a már visszavonhatatlanul sérült keretek csatornára küldését, hanem az ütközés ér-
294
SZÁMÍTÓGÉP-HÁLÓZATOK
tg
Keret
Versengéses időrések
nnn^nnnnnr^i D
Átviteli Versengéses periódus periódus
Idő
-
Keret
Tétlen periódus
4.5. ábra. A CSMA/CD mindig a következő állapotok közül az egyikben lehet: versengési, átviteli vagy tétlen
zékelését követően azonnal felfüggesztik tevékenységüket. A sérült keretek küldésé nek megszakítása időt és sávszélességet takarít meg. Ezt a protokollt CSMA/CD-nek (Carrier Sense Multiple Access with Collision Detection - ütközésérzékeléses CSMA) nevezik, és elterjedten használják LAN-ok MAC-protokolljaként. Érdemes tehát némi időt szánni a részletes megismerésére, annál is inkább, mert ez jelenti a népszerű Ethernet LAN-ok alapját. A CSMA/CD más LAN-protokollokhoz hasonlóan a 4.5. ábrán látható koncepcio nális modellt használja. A ?0-val jelölt ponton egy állomás befejezi keretének küldését. Ezen a ponton minden olyan állomás, amelyik kész kerettel rendelkezik, megkísérel heti azt elküldeni. Ha kettő vagy több állomás is elkezd egyszerre adni, akkor ütközés jön létre. Az ütközés könnyen észlelhető, ha az állomások megfigyelik a csatorna fe szültségszintjét, vagy a rajta megjelenő impulzushosszat, majd azt összehasonlítják a kibocsátott jel paramétereivel. Ha egy állomás ütközést érzékel, megszakítja a forgalmazást, véletlen hosszúságú ideig vár, majd feltételezve, hogy időközben egyetlen állomás sem kezdett adásba, megkezdi keretének továbbítását. Következésképpen CSMA/CD-modellünkben ver sengéses és átviteli periódusok váltják egymást, melyek között tétlen állapotok is megjelenhetnek, amikor egyik állomás sem forgalmaz (pl. nincs továbbítandó adat). Most pedig ismerkedjünk meg közelebbről a versengés algoritmusának részleteivel! Tegyük fel, hogy két állomás pontosan ugyanabban a f0 időpillanatban kezd el adni. Mennyi idő telik el, amíg észlelik az ütközést? Ennek a kérdésnek a megválaszolása döntő jelentőségű a versengési periódus hosszának meghatározásához, és ebből követ kezően a késleltetés és az áteresztőképesség kiszámításához. Az ütközés érzékeléséhez szükséges minimális idő az, ami alatt a jel az egyik állomástól a másikig eljut. Ezen az alapon gondolkozva azt hihetnénk, hogy egy állomás, amely a kábel teljes terjedési idejének megfelelő ideig nem észlel ütközést, biztos lehet abban, hogy megsze rezte a kábel használati jogát. A „megszerezte" kifejezésen azt értjük, hogy az összes többi állomás tud a folyó átvitelről, és így nem zavarják azt meg. Ez a következtetés azonban hibás! Tekintsük a következő legrosszabb eshetőséget! Jelöljük a két leg távolabb levő állomás között a jel terjedési idejét x-val! A t0 időpillanatban az egyik ál lomás elkezd adni. T - e idő múlva, tehát mielőtt a jel megérkezhetett volna a legtávo labbi állomáshoz, az is forgalmazni kezd. Természetesen szinte azonnal észreveszi az ütközést és leáll, de az ütközés által okozott kis zaj nem jut vissza az első állomáshoz 2T - e időn belül. Vagyis legrosszabb esetben egy állomás csak akkor lehet biztos abban,
A KÖZEGELÉRÉSI ALRÉTEG
295
hogy megszerezte a csatornát, ha már 2t ideje forgalmaz ütközés nélkül. Ezért a versen gési intervallumot úgy modellezzük, mintha egy 2T réshosszúságú réselt ALOHArendszer lenne. Egy 1 km hosszúságú koaxiális kábelen T ~ 5 us. Az egyszerűség ked véért feltételezzük, hogy minden rés csak egy bitet tartalmaz. Ha már egy állomás meg szerezte a csatornát, akkor tetszőleges sebességgel adhat, és nemcsak 1 bit/2x-val. Fontos észrevennünk, hogy az ütközésellenőrzés analóg folyamat. Az állomás hardverének figyelnie kell a csatornát adás közben. Ha mást olvas vissza, mint amit a csatornára kiírt, akkor tudja, hogy ütközés történt. Ezért a kódolásnak olyannak kell lennie, hogy az ütközést ilyen módon fel lehessen ismerni (pl. két 0 V-os jel ütközését elég nehéz lenne így észrevenni). Emiatt általában speciális kódolást szoktak használni. Azt is fontos megjegyezni, hogy a küldő állomásnak folyamatosan figyelnie kell a csatornát, hogy nincsenek-e rajta olyan zajlöketek, melyek ütközésre utalhatnak. Az egycsatornás CSMA/CD emiatt szükségszerűen fél-duplex rendszer, hiszen egy állo más nem adhat és vehet kereteket egyszerre, mert adás közben a vételi áramkör az üt közéseket figyeli. A félreértések elkerülése végett érdemes megjegyezni, hogy semmilyen MACprotokoll nem garantál biztonságos kézbesítést. Még ütközések nélkül is előfordulhat, hogy a vevő valamilyen oknál fogva rosszul másolja le a keretet (pl. szabad pufferterület hiánya, elvétett megszakítás).
4.2.3.
Ütközésmentes protokollok
Bár a CSMA/CD esetén nincs ütközés, ha egy állomás már egyértelműen megszerezte a csatornát; azt megelőzően, a versengési szakaszban azonban még mindig előfordul hatnak ütközések. Ezek az ütközések hátrányosan érintik a rendszer teljesítményét, különösen akkor, ha a kábel hosszú (vagyis x nagy), a keretek pedig rövidek. A CSMA/CD ráadásul nem mindenhol alkalmazható. Ebben a szakaszban olyan proto kollokat mutatunk be, melyek ütközés nélkül teszik lehetővé a csatornáért folytatott verseny lebonyolítását, még a versengési periódus folyamán is. Legtöbbjüket nem használják a jelenlegi nagyobb rendszerekben, de ilyen gyorsan változó területen mégis hasznos lehet, ha van néhány kiváló tulajdonságokkal bíró protokollunk az esetleges jövőbeli rendszerek számára. A protokollok bemutatásánál feltételezzük, hogy N állomás van, és hogy ezek az állo mások „beégetett", 0-tól N~ l-ig terjedő saját címmel rendelkeznek. Nem okoz problé mát, ha néhány állomás az idő egy részében inaktív. Az alapvető kérdés az marad, me lyik állomás használhatja a csatornát egy-egy sikeres átvitel befejeztével. Továbbra is a 4.5. ábrán bemutatott diszkrét versengési időrésekkel dolgozó modellt fogjuk használni.
Egy bittérkép (helyfoglalásos) protokoll Az első bemutatandó ütközésmentes protokollban, az alapvető bittérkép-eljárásban (basic bit-map method) az ütköztetési periódus pontosan N időrésből áll. Ha a 0-s állomás adni szeretne, akkor l-es bitet küld a 0-s (első) versengési időrésben. Ez alatt
296
SZÁMÍTÓGÉP-HÁLÓZATOK
az időrés alatt másik állomások nem használhatják a csatornát. A 0-s állomástól füg getlenül, az l-es állomásnak szintén megvan a lehetősége, hogy az l-es (második) időrés jelzőbitjét l-re állítsa, ha van kész kerete. Általánosan aj-edik állomás aj idő résben jelezheti egy l-es bittel, ha van elküldésre váró kerete. Az N darab időrés el küldése után, mindegyik állomás pontosan tudja, hogy mely állomások szeretnének forgalmazni. Ekkor számsorrendben megkezdhetik a tényleges adattovábbítást, mint ahogy azt a 4.6. ábra is szemlélteti.
8 i/ersengési időrés 0 12 3 4 5 6 7 1
1
Adatkeretek 8 versengés időrés /\ /
\
híj 1 II :5 ||
1
'01234567 7 || | l
1
d
0 12 3 4 5 6 7
1
II
5
T
1
2
4.6. ábra. Az alapvető bittérkép-protokoll Mivel az állomások megegyeztek, hogy mikor melyikük következik soron, soha sem jöhet létre ütközés. Miután az utolsó adni kívánó állomás is elküldte a keretét mely eseményt minden állomás könnyedén észlelhet -, egy újabb N időréses versen gési periódus veheti kezdetét. Ha egy állomás szerencsétlenségére pont akkor lesz adásra kész, miután már kitöltötte a számára fenntartott versengési időrést, akkor kénytelen az aktuális körben csendben maradni, és megvárni, amíg a versengési perió dus számára fenntartott időrése ismét körbeér. Azokat a protokollokat, amelyekben ehhez hasonlóan - a forgalmazási igényt a tényleges adatátvitel előtt kell adatszórással (broadcast) jelezni, helyfoglalásos protokollnak (reservation protocol) nevezik. Röviden vizsgáljuk meg e protokoll teljesítményét. Az egyszerűség kedvéért az időt versengési időrésekben mérjük, és egy-egy adatkeretet d hosszúságúnak tétele zünk fel. Ha a terhelés kicsi, akkor továbbítandó adatkeretek hiányában a versengési bit-térkép fog újra meg újra ismétlődni a csatornán. Nézzük a helyzetet egy alacsony (pl. 0 vagy 1) azonosítóval rendelkező állomás szemszögéből. Amikor küldésre kész állapotba kerül, az „aktuális" rés általában vala hol a bit-térkép közepén fog járni. Átlagosan tehát N/2 időrést kell egy ilyen állomás nak várnia az aktuális kör végéig, majd TV időrést, amíg a következő versengési perió dus befejeztével megkezdheti a forgalmazást. A magasabb sorszámú állomások helyzete már kedvezőbb. Ezeknek általában a versengési periódus felét (N/2 időrést) kell csak várniuk az adás megkezdése előtt. Ezeknek az állomásoknak csak nagyon ritkán kell kivárniuk a következő versengési periódust. Mivel az alacsony sorszámú állomásoknak átlagosan l,5N időrést, a magas sorszámúaknak pedig 0,5N időrést kell várniuk, az összes állomásra számított átlagos várakozási idő N időrés lesz. Alacsony terhelés mellett tehát egyszerűen számítható a csatorna hatékonysága. Keretenként a cl adatbitre N trjbbletbit (overhead) jut, így a ha tékonyság d/( N + d). Nagy terhelés esetén, amikor mindegyik állomásnak mindig van küldenivalója, az N hosszúságú versengési periódus N adatkeret között oszlik meg, így minden keretre
A KÖZEGELÉRÉSI ALRÉTEG
297
csak 1 többletbit adódik. Ebből a csatorna hatékonyságára d/(d + 1) adódik. Egy keret átlagos késleltetése két részből tevődik össze: az adott állomáson belüli sorbanállási késleltetésből, valamint további N(d + l)/2 időrésnyi késleltetésből, amelyet a belső sor elejére kerülve fog várni a tényleges elküldésig.
Bináris visszaszámlálás Az alapvető bit-térképes protokoll legnagyobb hátránya az, hogy a versengési perió dus hossza állomásonként 1 bittel nő. Bináris állomáscímeket használva azonban jobb eredményeket érhetünk el. Ez esetben a forgalmazni kívánó állomás elkezdi a bináris címét, a legnagyobb helyi értékű bittel kezdve, mindenkinek szétküldeni. Az összes állomás címének azonos hosszúságúnak kell lennie. Az elküldött címek azonos helyi értékű bitjei logikai VAGY kapcsolatba lépnek egymással. Ezt a protokollt bináris visszaszámlálásnak (binary countdown) nevezzük. Ezt használják a Datakit-ben is, melyet (Fraser, 1987) tárgyal bővebben. A protokoll hallgatólagosan feltételezi, hogy az átviteli késleltetések elhanyagolhatók, azaz a leadott biteket minden állomás lénye gében azonnal érzékeli. A konfliktusok elkerülése érdekében szükség van egy kiegészítő szabályra is: amint egy állomás észleli, hogy 1-gyel lett felülírva egy olyan, magasabb helyi értékű címbit pozíció, ahol a saját címében 0 van, fel kell adnia a próbálkozást. Például, ha a 0010, 0100, 1001 és 1010 címekkel rendelkező állomások szeretnék használni a csa tornát, akkor mindannyian elkezdik szétküldeni a legmagasabb címbitjüket, jelen eset ben 0-t, 0-t, 1-et, illetve 1-et. Ezek logikai VAGY kapcsolata 1-et eredményez. A 0010 és a 0100 című állomások, látván az 1-et, feladják a versenyt, mivel látják, hogy a versenyben magasabb című állomás is részt vesz. Az 1001 és 1010 állomások to vább folytatják a versengést. A következő bit 0, így mindkét állomás versenyben marad. Az ezt követő bit azon ban 1, így az 1001 című állomás feladja a versengést. A győztes tehát az 1010 állomás lesz, mivel övé a legnagyobb cím. Miután megnyerte a „licitálást", továbbíthat egy keretet, amely után újabb verseny kezdődik a forgalmazás jogáért. A protokoll műkö dését a 4.7. ábra illusztrálja. Megfigyelhetjük azt a sajátosságot, hogy a magasabb címmel rendelkező állomásoknak a prioritásuk is magasabb az alacsonyabb című ál lomásokénál, ami lehet jó is és rossz is, az adott környezettől függően. A csatornakihasználtság ilyen protokoll mellett d/(d + log2N). Abban az esetben vi szont, ha okosan választjuk meg a keretek felépítését, és az első mező pont a küldő cí mét tartalmazza, még ez a \og2N bit sem veszik kárba, így a csatorna kihasználtsága 100% is lehet! Mok és Ward (1979) kidolgozott egy olyan változatot a bináris visszaszámlálás protokollra, amely a soros felület helyett párhuzamos felületet használ. Ók javasolták a virtuális állomáscímek használatát is, amelyek lehetővé teszik, hogy minden sikeres átvitel után ciklikusan permutálva az állomások címét, azok az állomások is magasabb prioritáshoz juthassanak, amelyek már régóta hallgatni voltak kénytelenek. Például, ha a C, H, D, A, G, B, E, F állomások sorra a 7, 6, 5, 4, 3, 2, 1 és 0 prioritásokkal rendel keznek, majd a D állomásnak sikerül továbbítania egy keretet, akkor a lista végére ke-
298
SZÁMÍTÓGÉP-HÁLÓZATOK
Bit-időrés 0 12 3 |0010]
0
|0 1 0 0|
0
J1 0 0 1J
10
0 -
n o 1 oi
10
10
A 0010 és a 0100 állomások látván ezt az 1 -et, feladják a versenyt
Az 1001 állomás feladja a versenyt, látva ezt az 1-et
4.7. ábra. A bináris visszaszámlálás protokoll. A „ - " azt jelzi, hogy az állomás nem forgalmaz rülve kialakul az új C, H, A, G, B, E, F, D prioritási sorrend. A C állomásnak tehát megmarad a 7 sorszáma, de az A állomás 4-ról 5-re léphet előre, míg a D állomás 5-ről 0-ra kénytelen visszalépni. A következő ciklusban tehát a D állomás csak akkor for galmazhat, ha a többi állomás nem igényli a csatornát. A bináris visszaszámlálás jó példája az olyan egyszerű, elegáns és hatékony protokolloknak, melyek újrafelfedezésre várnak. Remélhetőleg egy nap ez is megtalálja majd új helyét.
4.2.4.
Korlátozott versenyes protokollok
Eddig két alapvető csatornamegszerzési stratégiát tárgyaltunk kábeles hálózatok ese tén: a versenyhelyzetes (mint amilyen a CSMA) és az ütközésmentes módszereket. Mindegyik stratégiát megítélhetjük két fontos teljesítménymérő szám, a kis terhelés mellett fellépő késleltetés, illetve a nagy terhelés mellett fennálló csatornakihasznált ság alapján. Kis terhelés esetén a versenyhelyzetes módszerek (azaz az egyszerű és a réselt ALOHA) a kedvezőbbek kis késleltetésük miatt. Ahogy nő a terhelés, a ver senyhelyzetes protokollok egyre kevésbé vonzók, mivel a csatorna megszerzésével eltöltött idő egyre növekszik. Az ütközésmentes protokollokra ennek éppen az ellen kezője igaz. Kis terhelés mellett nagy a késleltetésük, de ahogy a terhelés növekszik, a csatorna kihasználtsága egyre javul, ellentétben a versenyhelyzetes protokollokkal, ahol az ilyenkor egyre romlik. Nyilvánvaló, hogy szerencsés lenne ötvözni a versenyhelyzetes és ütközésmentes protokollok legjobb tulajdonságait, és olyan új protokollt tervezni, amely kis terhelés esetén versenyhelyzetes technikát használna a kis késleltetés érdekében, illetve nagy terhelés mellett ütközésmentes technikát alkalmazna a csatorna jó kihasználása érde kében. Ilyen, korlátozott versenyes protokollok (limited contention protocol) már léteznek, és ezekkel zárjuk a csatornafigyelő protokollok tanulmányozását. Az összes eddig tanulmányozott versenyhelyzetes protokoll szimmetrikus volt, va-
299
A KÖZEGELÉRÉSI ALRÉTEG
gyis az állomások p valószínűséggel próbálták megszerezni a csatornát, ahol a p min den állomásra azonos értékű volt. Érdekes, hogy a teljes rendszer teljesítményének növelése érdekében néha elég, ha olyan protokollt használunk, amely az állomásokhoz különböző valószínűségeket rendel. Mielőtt áttérnénk az aszimmetrikus protokollok vizsgálatára, röviden tekintsük át a szimmetrikus protokollok teljesítményviszonyait. Ha a csatorna megszerzéséért egy adott résben k állomás verseng, és mindegyik p valószínűséggel adhat, akkor annak valószínűsége, hogy egy állomás megszerzi a csatornát kp(\ ~p)k~x. Az optimális p megtalálása érdekében deriváljuk a kifejezést p szerint, az eredményt nullával egyen lővé tesszük, majd megoldjuk p-ve. az egyenlőséget. Ezt végrehajtva, p-re az \lk érté ket kapjuk, amelyet ha behelyettesítünk az eredeti kifejezésbe, a következő összefüg gést kapjuk: Pr[siker optimális p mellett] =...
k-\
k-\
(4.4)
A valószínűség függvény grafikonját a 4.8. ábrán láthatjuk. Kis állomásszám mel lett a csatorna megszerzésének valószínűsége jó, de már öt állomás esetén is az esé lyek az aszimptotikus l/e érték közelébe zuhannak le. A 4.8. ábra alapján nyilvánvaló, hogy egy állomás csatornamegszerzési esélyeit nö velni csak a versenyhelyzetek számának csökkentésével lehet. A korlátozott versenyes protokoll pontosan ezt teszi. Először is az állomásokat (nem feltétlenül diszjunkt) cso portokra osztják. A 0-s résért csak a 0-s csoport tagjai versenghetnek. Ha valamelyi kük megszerzi a csatornát, akkor elküldi keretét. Ha viszont ütközés fordult elő, vagy a rés kihasználatlan maradt, akkor máris az l-es rés, és abban az l-es csoport tagjai következnek és így tovább. Az állomások megfelelő csoportokra osztásával a résekre jutó versenyhelyzetek száma csökkenthető, így a rések a 4.8. ábra bal oldalához ha sonló karakterisztikával működhetnek. 1,0 (0
•§> 0,8
0,6 0,4 (0
< 0,2 0,0
J_ 10 15 A kész állomások száma
20
25
4.8. ábra. A csatorna megszerzésének valószínűsége szimmetrikus versenyhelyzetes protokoll esetén
300
SZÁMÍTÓGÉP-HÁLÓZATOK
A trükk abban van, ahogyan az állomásokat a résekhez rendeljük. Mielőtt az általá nos esetet megvizsgálnánk, nézzünk meg néhány speciális esetet! Az egyik szélső eset az, amikor mindegyik csoport csak egy állomást tartalmaz. Az ilyen eset biztosítja, hogy ne legyen ütközés, hiszen résenként legfeljebb egy állomás versenghet a csa tornáért. Ilyen protokollt már láttunk korábban (pl. bináris visszaszámlálás). A követ kező speciális esetben csoportonként két állomás van. Annak esélye, hogy ezek egy résben egyszerre akarjanak adni/?2, amely kisp-kre elhanyagolható. Az azonos réshez tartozó állomások számának növelésével nő az ütközések valószínűsége, viszont a bit térkép mérete csökken anélkül, hogy állomások elvesztenék adási lehetőségüket. A határeset az, amikor az összes állomás egy csoportba kerül, ez a réselt ALOHA. Olyan dinamikus állomás-hozzárendelésre lenne szükségünk, amely egy réshez kis terhelés esetén sok, míg nagy terhelés esetén csak néhány (esetleg csak egy) állomást rendelne.
Adaptív fabejárási protokoll A hozzárendelés egyik legegyszerűbb módja az, ahogy a II. világháború alatt az ame rikai hadseregben a katonák szifiliszes fertőzöttségét vizsgálták (Dorfman, 1943). Rö viden ezt úgy végezték, hogy a hadsereg N katonájától vért vettek, amelyek mindegyi kéből egy kis részt egyetlen kémcsőbe öntöttek, és ezt vizsgálták antitestek után kutat va. Ha nem találtak, akkor az összes abba a csoportba tartozó katona egészséges volt. Ha azonban találtak antitestet, akkor az N katonát két csoportba osztották, és a vér mintákból két újabb keveréket állítottak elő. A folyamatot addig ismételték, amíg meg nem találták a fertőzött katonát. Az algoritmus számítógépes változatához (Capetanakis, 1979) kényelmes, ha az ál lomásokat a 4.9. ábrának megfelelően egy bináris fa leveleinek képzeljük el. Egy sike res keretátvitelt követően az első versengési résben, a 0-s résben, az összes állomás szabadon versenghet a csatorna megszerzéséért. Ha az egyik állomásnak sikerül, ak kor minden rendben van. Ha ütközés következik be, akkor az l-es résben már csak a 2. csomópont alatti részfa állomásai versenyezhetnek. Ha az egyikük megszerzi a csa-
A
B
C
D
E
F
4.9. ábra. Nyolc állomásból álló fa
G
H
A!lomások
A KÖZEGELÉRÉSI ALRÉTEG
301
tornát, akkor a keretét követő rés a 3. csomópont alatti állomások számára lesz fenn tartva. Ha viszont két vagy több 2. csomópont alatti állomás is forgalmazni szeretett volna az l-es résben, akkor a bekövetkező újabb ütközés miatt a 2-es résben a 4. cso mópont alatti részfa állomásai következhetnek. Lényegében tehát, ha a 0-s időrés alatt ütközés következik be, akkor a küldésre kész állomások felkutatása érdekében megkezdődik a fa mélységi bejárása. A rések a fa egyes csomópontjaihoz vannak rendelve. Ha ütközés következik be, akkor a keresés rekurzívan az adott csomópont bal és jobb gyermekcsomópontjánál folytatódik. Ha egy bitrés kihasználatlan marad, vagy csak pontosan egy állomás küld benne, akkor annak a csomópontnak a keresése befejeződik, hiszen alatta nincs több küldésre kész állomás. (Ha ugyanis több is lett volna, akkor ütközésnek kellett volna bekövetkeznie.) Amikor a rendszer terhelése nagy, aligha éri meg a 0-s rést az 1. csomóponthoz rendelni, hiszen csak abban a valószínűtlen esetben nem következne be ekkor ütközés, ha legfeljebb csak egyetlen állomás rendelkezne küldésre kész kerettel. Hasonló meg fontolásból lehetne vitatkozni a 2. és 3. csomópont átugrásán is. A kérdést általánosan fogalmazva: melyik szinten érdemes elkezdeni a keresést? Világos, hogy minél na gyobb a terhelés, a fában annál mélyebben érdemes kezdeni a keresést. Tegyük fel, hogy az állomásoknak q értékű jó becslése van arra, hogy hány kész állomás van ép pen (pl. az addigi forgalom megfigyeléséből következtetve). A fa gyökerétől számozzuk meg az egyes szinteket! A 4.9. ábrán az 1. csomópont a 0-s szint, a 2. és 3. csomópont az l-es szint stb. Vegyük észre, hogy az «-edik szint minden csomópontjához az alatta levő állomások 2~' része tartozik! Ha a q adásra kész állomás a fában egyenletesen elosztva helyezkedik el, akkor egy í. szinten levő cso mópont alatt várhatóan 2~'q darab van. Intuitív módon arra következtethetünk, hogy a keresést azon a szinten optimális elkezdeni, ahol a résenként versengő állomások szá ma átlagosan 1, azaz 2~'q = 1. Az egyenletet megoldva az i - log2 q értéket kapjuk. Bertsekas és Gallager (1992) az alapalgoritmus számos továbbfejlesztett változatát állította elő és vizsgálta meg. Például tekintsük azt az esetet, amikor csak a G és H ál lomás akar adni. Az l-es csomópontnál ütközés következik be, így a 2-esre kerül a sor, amikor üres marad a csatorna. Teljesen felesleges lenne a 3-as csomópont vizsgá lata, hiszen biztos, hogy ütközés fog bekövetkezni, mivel tudjuk, hogy az l-es csomó pont alatt kettő vagy több kész állomás is van, viszont a 2-es alatti részfában egy sincs, így ezeknek mind a 3-as alatt kell lenniük. A 3-as csomópont vizsgálata kimarad, és he lyette a 6-os következik. Mikor kiderül, hogy ez alatt a csomópont alatt sincs adásra kész állomás, kihagyható a 7-es tesztelése, és azonnal a G állomásra kerülhet a sor.
4.2.5.
Hullámhosszosztásos többszörös hozzáférési protokollok
Egy másfajta megközelítése a csatorna-hozzárendelésnek, hogy az eredeti csatornát FDM, TDM vagy mindkettő alkalmazásával alcsatornákra bontják, és ezeket osztják ki dinamikusan az igényeknek megfelelően. Ehhez hasonló módszert közkedvelten használnak üvegszálas LAN-ok esetén, amikor a különböző, egy időben zajló párbe szédekhez különböző, egyedi hullámhosszakat (frekvenciákat) rendelnek. A követke ző részben egy ilyen protokollt fogunk megvizsgálni (Humblet és mások, 1992).
302
SZÁMÍTÓGÉP-HÁLÓZATOK
Egy teljesen üvegszálas LAN kiépítésének legegyszerűbb módja, ha egy passzív csillagkapcsolót használunk a 2.10. ábrának megfelelően. Tulajdonképpen, minden állomás felől két fényvezető szál csatlakozik egy üveghengerhez. Az egyik szál a hen ger felé kimenetként szolgál, míg a másik szál a henger felől szállítja az állomás be meneti adatait. Az állomások kimeneti fénye megvilágítja az egész üveghengert, így az összes állomás képes azt érzékelni. A passzív csillagok akár több száz állomást is képesek kezelni. Ahhoz, hogy egyszerre több átvitel is történhessen, a színspektrumot csatornákra (hullámhossztartományokra) kell osztani a 2.31. ábra szerint. Ebben, a WDMA (Wavelength Division Multiple Access - hullámhosszosztásos többszörös hozzáfé rés) néven ismert protokollban minden állomáshoz két csatornát rendelnek. Egy kes keny csatorna szolgál az állomás felé érkező vezérlőjelek átvitelére, míg egy széle sebb csatorna az állomás adatkereteinek továbbítására. Minden csatorna a 4.10. ábrán szemléltetett módon időrések csoportjaira van oszt va. Jelöljük a vezérlő csatorna időréseinek számát m-mel, az adatcsatorna időréseinek számát pedig n + 1-gyel, ahol n időrés tényleges adatforgalomra szolgál, míg az utol sót az állomás használja aktuális állapotának jelzésére (általában azt mutatja meg, hogy a fenti csatornák mely időrései szabadok). Mindkét csatornán az időrések újra meg újra ismétlődnek. A 0-s időrést speciális jelzéssel látják el, hogy a később bekap csolódók is észlelhessék. Az összes csatornát egy központi óra szinkronizálja. A protokoll három forgalomosztályt támogat: (1) állandó adatsebességű, összeköt tetés alapú forgalom - ilyet igényelnek a tömörítetlen videoadatok; (2) változó adatse bességű, összeköttetés alapú forgalom - ilyet igényel a fájlátvitel; (3) datagram forga lom - ilyet igényelnek az UDP-csomagok. A két összeköttetés alapú protokoll esetén az alapötlet a következő: ha A kommunikálni akar fi-vel, akkor először egy ÖSSZEm vezérlő-időrés Állomás
A
; —
*
;
bWMIMbWNIWIII-
— 1 1 1 1 1
ISI
I
I
I
I
ISI
, ,, n + 1 adat-időrés plusz egy állapotjelző-időrés r-
B
I
I
I
I
I
Isi
B adatcsatornája
- i — (ixtxl I NxW Wxl 11 NH 11 - • - C vezérlőcsatornája
— I D
I
- — I IxWxl I M5j W)W I Wxl 11 - • - B vezérlőcsatornája
— I C
I
A vezérlőcsatornája, -«— amelyen keresztül a többi állomás felveheti a kapcsolatot A-val
I
I
I
I
isi
C adatcsatornája
* — I M M I b W M M I b W I I •••
D vezérlőcsatornája
— I
D adatcsatornája
l
I
l
I
ISI
Idő4.10. ábra. Hullámhosszosztásos többszörös hozzáférés
B használja adatok küldésére
A KÖZEGELÉRÉSI ALRÉTEG
303
KÖTTETÉS-KÉRÉS (connection request) keretet kell beszúrnia B vezérlőcsatornájának egyik szabad időrésébe. Ha B elfogadja, akkor megkezdődik a kommunikáció A adat csatornáján keresztül. Minden állomáson az alábbi két adó- és két vevőáramkör működik: 1. Egy fix hullámhosszon működő vevő, amely az állomás saját vezérlőcsatornáját figyeli. 2. Egy hangolható hullámhosszú adó, amely a többi állomások vezérlőcsatornáira dolgozik. 3. Egy fix hullámhosszon működő adó, amely az állomás adatkereteit állítja elő. 4. Egy hangolható hullámhosszú vevő, amellyel kiválasztható adatcsatornát figyelhet az állomás. Másként fogalmazva, minden állomás a saját vezérlőcsatornáját figyeli a beérkező jelzéseket várva, de ráhangol az adó hullámhosszára az adatkeretek vételéhez. Hul lámhossz hangolására Fabry-Perot- vagy Mach-Zehnder-interferométert használnak, amely a kívánt hullámhossz kivételével minden hullámhosszt kiszűr. Nézzük azt az esetet, amikor A egy 2-es osztályú kommunikációs csatornát akar felépíteni a B állomással, mondjuk fájlátvitel céljából. Először A ráhangolja adatvevő jét B adatcsatornájára, és megvárja annak állapotjelző időrését, amelyből kiderül, hogy B vezérlőcsatornájának melyik rései foglaltak, és melyek szabadok. A 4.10. áb rán például láthatjuk, hogy B nyolc vezérlőrése közül a 0-s, a 4-es és az 5-ös szabad, a többi pedig foglalt, amit a keresztek jelölnek. A kiválasztja az egyik szabad vezérlő-időrést, mondjuk a 4-est, és ebbe írja ÖSSZEKÖTTETÉS-KÉRÉS üzenetét. Mivel B állandóan figyeli a vezérlőcsatornáját, észleli a kérést, majd jóváhagyja azt azzal, hogy a 4-es időrést A-hoz rendeli. A hozzárendelés létrejöttéről mindenki tudomást szerezhet B adatcsatornájának állapotjelző időréséből. Amikor A látja a visszaigazolást, tudhatja, hogy létrejött az egyirányú kapcsolat. Ha A kétirányú kapcsolatot kért, akkor B megismétli ugyanezt az algoritmust A felé. Elképzelhető, hogy amikor A megpróbálta felhasználni B 4-es vezérlő-időrését, C állomás pontosan ugyanezt teszi. Egyiküknek sem fog sikerülni az átvitel, és erről B állapotjelző időréséből szerezhetnek tudomást. Ekkor mindketten véletlenszerű ideig várakoznak, majd újra próbálkoznak. Végre eljutottunk addig a pontig, hogy mindkét fél számára biztosított egy konflik tushelyzetektől mentes mód, amely segítségével rövid vezérlőüzeneteket küldhetnek egymásnak. A fájlátvitel lebonyolításához A küld ő-nek egy üzenetet, amely például azt mondja: „Kérlek, figyeld az adatcsatornám 3. időrését, mert adatkeret van benne a számodra!" Amikor B megkapja a vezérlőüzenetet, áthangolja vevőjét A adatcsatorná jára, hogy kiolvashassa az adatkeretet. A felsőbb réteg protokolljának megfelelően, B ugyanezzel a mechanizmussal küldhet nyugtázást vissza, ha kíván. Figyeljünk fel arra, hogy konfliktus alakulhat ki, ha A és C egyaránt összeköttetés ben áll B-vel, és egyszerre mindketten a 3. időrésben szeretnének adatkeretet küldeni! B véletlenszerűen választja ki az egyik keretet, a másik pedig elveszik.
304
SZÁMÍTÓGÉP-HÁLÓZATOK
Az állandó sebességű forgalomhoz a protokoll egy másik változatára van szükség. Amikor A elküldi vezérlőüzenetét, egy időben elküldhet egy hasonló kérdést is: „Rendben van, ha minden 3. időrésben küldök keretet?" Ha B elfogadhatja ezt (koráb ban nem fogadott el ilyen kérést egyik állomástól sem a 3. időrésre), akkor garantált sávszélességű kapcsolat jön létre. Ha nem, akkor A egy másik ajánlattal próbálkozhat aszerint, hogy melyik kimeneti keretei szabadok. A 3-as osztályú (datagram) forgalomhoz szintén egy újabb változatra van szükség. Az A állomás a szabadon talált (4-es) vezérlőkeretbe ÖSSZEKÖTTETÉS-KÉRÉS üzenet helyett, inkább egy ADAT A 3. IDŐRÉSBEN SZÁMODRA üzenetet ír. Ha B szabad a kö vetkező 3. időrésben, az átvitel sikeres, egyébként pedig a keret elveszik. Ilyen módon soha nincs szükség az összeköttetés kiépítésére. A teljes protokoll különböző változatai lehetségesek. Például lehetséges, hogy nem rendelnek minden állomáshoz saját vezérlőcsatornát, hanem egyetlen közös vezérlő csatornát használ az összes állomás. Minden állomás számára ki van osztva néhány időrés hasonlóan, mint amikor több virtuális csatornát nyalábolnak egyetlen fizikai csatornán. Az is lehetséges, hogy minden állomásnak csak egyetlen hangolható adója, és egyetlen hangolható vevőáramköre van, az állomások csatornáját pedig m vezérlő, és n + 1 adat-időrésre osztjuk. A módszer hátránya az, hogy a küldő félnek hosszabb ideig kell várnia egy vezérlő-időrés megszerzésére, valamint az adatkeretek időben tá volabb kerülnek egymástól, mivel közöttük további vezérlőinformáció is helyet kapott. Számos egyéb WDMA-protokollt terveztek már, amelyek csupán a részleteikben térnek el. Némelyek egyetlen vezérlőcsatornát használnak, mások többet. Néhány fi gyelembe veszi a továbbítási késleltetést, mások nem; néhány nyílt módon számol a hangoláshoz szükséges idővel, mások elhanyagolják azt. A protokollok különböznek összetettségükben, átviteli képességeikben és skálázhatóságukban. Azt a rendszert, amelynél nagyon nagyszámú frekvenciát használnak, DWDM- (Dense Wavelength Division Multiplexing - nagysűrűségű hullámhosszosztásos multiplex) rendszer nek nevezik. További információkért lásd (Bogineni és mások, 1993; Chen, 1994; Goralski, 2001; Kartalopoulos, 1999; valamint Levine és Akyildiz, 1995) műveit.
4.2.6.
Vezeték nélküli LAN-protokollok
Ahogy egyre nő a hordozható számítógépek és kommunikációs eszközök száma, úgy nő az igény, hogy ezekről kapcsolatba lehessen lépni a külvilággal. Már az első hor dozható telefonok is képesek voltak kapcsolatba lépni másik telefonokkal. Az első hordozható számítógépek még nem rendelkeztek ugyan ilyen képességekkel, nem sokkal később azonban széleskörűen elterjedtek a modemek, így ha a hordozható gé pek on-line kapcsolatot akarnak létesíteni, a fali telefoncsatlakozóhoz kell csatlakoz tatni e gépeket. Mivel ez esetben vezetékes úton csatlakoztak egy fix hálózathoz, a számítógépek hordozhatók voltak ugyan, de nem mobilak. Az igazi mobilitás eléréséhez a hordozható gépeknek rádiós (vagy infravörös) jele ket kell használniuk a kommunikáció lebonyolításához. Ilyen módon az egyes felhasz nálók megírhatják és elolvashatják elektronikus leveleiket akár autóvezetés vagy csó-
305
A KÖZEGELÉRÉSI ALRÉTEG
nakázás közben is. Egy olyan rendszer, amelyben hordozható számítógépek rádión kommunikálnak, már vezeték nélküli LAN-nak nevezhető. Ezek a hálózatok bizonyos mértékben különböző tulajdonságokkal rendelkeznek a szokványos LAN-okhoz ké pest, valamint speciális MAC-alréteg protokollok használatát igénylik. Ebben a rész ben ezeket a protokollokat fogjuk megvizsgálni. Többet is olvashatunk a vezeték nél küli LAN-okról (Geier, 2002; valamint O'Hara és Petrick, 1999) munkáiban. Egy általános vezeték nélküli LAN egy irodaházból áll, amely köré bizonyos stra tégia szerint bázisállomásokat telepítenek. A bázisállomásokat rézvezetékes vagy üvegszálas hálózat köti össze. Ha a hordozható eszközök és a bázisállomások adótel jesítményét úgy állítják be, hogy 3 vagy 4 méteres hatósugaruk legyen, akkor minden szoba külön cellává, a teljes épület pedig egy celluláris rendszerré alakul éppen úgy, mint ahogyan azt a hagyományos celluláris telefonrendszerekről a 2. fejezetben tanul tuk. A mobiltelefon-hálózatokkal ellentétben itt minden cella csak egyetlen csatorná val rendelkezik, amely lefedi a teljes rendelkezésre álló sávszélességet, valamint ez szolgálja ki a cellában tartózkodó összes állomást is. Ennek a sávszélességnek az érté ke rendszerint 11 és 54 Mb/s közé szokott esni. Az alábbiakban azzal az egyszerűsítő feltételezéssel fogunk élni, hogy minden rá dióadónak van egy fix hatótávolsága. Ha egy vevő két aktív adónak is a hatósugarán belül tartózkodik, akkor az ilyenkor vett jel általában zavaros és használhatatlan lesz, más szóval a továbbiakban nem foglalkozunk a CDMA-típusú rendszerekkel. Fontos megjegyezni, hogy egyes vezeték nélküli LAN-ok esetében nincs minden állomás a többi hatósugarán belül, és ez különböző bonyodalmakhoz vezet. Az épületen belül kialakított vezeték nélküli LAN-oknál pedig az állomások közt lévő falak is nagy mértékben befolyásolhatják az adók effektív hatósugarát. Vezeték nélküli LAN kialakításának egy naiv módja lehet a CSMA használata: fü leljünk, és csak akkor kezdjünk el adni, ha nem észlelünk egyéb forgalmat. A problé ma az, hogy ez a protokoll nem igazán használható, mivel az interferencia a vevőnél lép fel, és nem az adónál. Hogy megértsük a problémát, tekintsük a 4.11. ábrát, ame lyen négy vezeték nélküli állomás látható. Számunkra most teljesen mindegy, hogy melyek a bázisállomások, és melyek a hordozható készülékek. A rádiós hatósugár ak kora, hogy A és B egymás hatósugarán belül vannak, így egymás potenciális partnerei lehetnek. C szintén kapcsolatba léphet B-vel és D-vel, de A-val már nem. Először vizsgáljuk meg, mi történik akkor, amikor A forgalmaz fi-nek, ahogyan azt a 4.11.(a) ábra szemlélteti! Ha C belehallgat a csatornába, akkor nem hallhatja A adá-
^ C '
[||
[c]
[D]
Rádiós hatósugár (a)
4.11. ábra. Egy vezeték nélküli LAN. (a) A ad. (b) B ad
0
^ B ( C '
(b)
[Ö]
\D\
306
SZÁMÍTÓGÉP-HÁLÓZATOK
sát, hiszen A kívül van a hatósugarán, így tévesen azt a következtetést vonhatja le, hogy elkezdhet sugározni. Ha C elkezd adni, akkor interferencia lép fel fí-nél, és tönk reteszi az A által küldött keretet. Sokszor a rejtett állomás problémájának (hidden station problem) nevezik azt, amikor egy állomás nem képes érzékelni egy potenciá lis versenytársát, mivel az túl messze van tőle. Vizsgáljuk most meg a fordított szituációt, amikor B ad A-nak, ahogy ez a 4.11 .(b) ábrán látszik. Amikor C megvizsgálja a csatornát, hallva a folyamatban levő átvitelt, tévesen arra a következtetésre jut, hogy nem adhat D-nek, pedig ez az adás csak a fi és C közötti tartományban tenné lehetetlenné a keretek vételét, ahol egyetlen címzett ve vő sem található. Ezt a problémát sokszor a megvilágított állomás problémája (exposed station problem) néven emlegetik. A probléma az, hogy az adás megkezdése előtt az állomás igazából arra lenne kí váncsi, hogy a vevő környezetében van-e aktivitás. A CSMA csupán azt képes meg mondani, hogy a vivőérzékelést végző állomás környezetében van-e forgalom vagy sem. Vezeték esetén minden jel eljut minden állomáshoz, így az egész rendszerben minden pillanatban csak egyetlen átvitel történhet. Azonban a kis hatósugarú rádió hullámokat használó hálózatok esetében egyszerre több átvitel is lebonyolítható, ha azok célállomásai különbözők, és kívül esnek egymás hatósugarán. A probléma egy másik megközelítése az, ha elképzelünk egy nagy irodaépületet, amelyben minden dolgozónak van egy saját, vezeték nélküli hordozható számítógépe. Tegyük fel, hogy Linda szeretne üzenetet küldeni Miltonnak! Linda számítógépe megfigyeli a lokális környezetét, majd adásba kezd, mivel nem tapasztalt semmilyen egyéb aktivitást. Milton irodájában azonban így is előfordulhat ütközés, ha egy har madik személy is üzenetet küld neki egy olyan pontról, amely Lindától túl távol van ahhoz, hogy számítógépe érzékelni tudja.
MACA és MACAW Egy vezeték nélküli LAN-ok számára tervezett korai protokoll a MACA (Multiple Access with Collision Avoidance - többszörös hozzáférés ütközések elkerülésével) (Karn, 1990). Ez szolgált az IEEE 802.11, azaz a vezeték nélküli LAN-ok szabványá nak alapjául. A protokoll mögött rejlő alapötlet az, hogy az adónak rá kell vennie a vevőt, hogy adjon ki egy rövid keretet, amely következtében a hatósugarában tartóz kodó állomások nem adnak a következő (hosszabb) adatkeret időtartama alatt. A MACA-protokollt a 4.12. ábra szemlélteti. Vizsgáljuk meg, hogyan küld A egy keretet fi-nek. A azzal kezdi, hogy a 4.12.(a) ábrának megfelelően küld egy RTS (Request To Send - adási engedély kérése) keretet fi-nek. Ez a rövid üzenet (mindössze 30 bájt) tartalmazza a soron következő adatkeret hosszát. Ekkor B a 4.12.(b) ábrán jelzett módon egy CTS (Clear To Send - adásra kész) üzenettel válaszol. A CTS keret szintén tartalmazza az adatkeret hosszát (az RTS keretből másolja ki B). Amint megkapja a CTS keretet, A azonnal adni kezd. Most nézzük meg, hogyan reagálnak azok az állomások, amelyek szintén fogják ezeknek a kereteknek valamelyikét! Azok az állomások, amelyek fogják az RTS kere tet, közel vannak A-hoz, így legalább annyi ideig csendben kell maradniuk, amíg a
A KÖZEGELÉRÉSI ALRÉTEO
307
A adójának
4.12. ábra. A MACA-protokoll (a) A RTS üzenetet küld B-nek. (b) B egy CTS üzenettel válaszol A-nak
CTS keret konfliktus nélkül visszaérkezhet az A állomáshoz. Azok az állomások, ame lyekhez eljut a CTS keret, közel vannak a fi-hez, így ezeknek csendben kell maradniuk az adatkeret átvitelének időtartama alatt, amelynek hosszát a CTS keretből deríthetik ki. A 4.12. ábrán C belül van A hatósugarán, de kívül esik B hatósugarán, így foghatja az RTS keretet A-tól, de nem hallhatja a fí-től érkező CTS keretet. Mivel nem jutott el hozzá a CTS keret, szabadon forgalmazhat az adatkeret átvitelének időtartama alatt. Ezzel ellentétben a D állomás csak B hatósugarába esik bele, így nem foghatja az RTS, csak a CTS keretet. A CTS keretet megkapva értesül arról, hogy közel van ahhoz az ál lomáshoz, amelyik nemsokára egy adatkeretet szeretne fogadni, így nem forgalmazhat addig, amíg a keret küldése várhatóan be nem fejeződik. Az E állomás mindkét vezér lőüzenetet megkapja, így D-hez hasonlóan kénytelen csendben maradni az adatkeret továbbításának befejezéséig. Az óvintézkedések ellenére is létrejöhet azonban ütközés. Például előfordulhat, hogy fi és C egyszerre küld RTS üzenetet A-nak. Ezek ütközni fognak és elvesznek. Ha ütközés történt, akkor a sikertelen állomás (vagyis amelyik nem kapott CTS keretet vá laszul a meghatározott időkorláton belül) véletlenszerű ideig várakozik, majd újból próbálkozik. A használt algoritmust kettes exponenciális visszalépésnek hívják, és bő vebben is tárgyalni fogjuk, amikor az Ethernet témaköréhez érünk. Szimulációs eredményekre alapozva Bharghavan és munkatársai (1994) a teljesítő képesség növelése érdekében újrahangolták a MACA-algoritmust, és az így létrejött új protokollt a MACAW (MACA for Wireless - vezeték nélküli MACA) névvel látták el. Először is arra figyeltek fel, hogy az adatkapcsolati rétegben implementált visszajelzések hiányában az elveszett keretek újraküldése nem történik meg addig, amíg a szállítási réteg észre nem veszi azok hiányát, ami sokkal később következik csak be. A problémát úgy oldották meg, hogy bevezettek egy ACK keretet minden si keresen továbbított adatkeret után. Észrevették azt is, hogy a CSMA rendelkezik egy hasznos képességgel - nevezetesen azzal, hogy egy állomás nem kezd RTS üzenet kül-
308
SZÁMÍTÓGÉP-HÁLÓZATOK
désébe addig, amíg észleli más állomások azonos célállomás irányába történő hasonló tevékenységét, így hát a protokollhoz adták a vivőérzékelést is. Elhatározták továbbá, hogy a visszalépéses algoritmust nem állomásonként, hanem adatfolyamonként (for rás-cél páronként) futtatják, ami a protokoll fair mivoltát növeli. Végül a rendszer teljesítményének növelése érdekében az állomásokhoz hozzáadtak egy mechanizmust, amellyel az állomások megoszthatják egymással torlódási információikat, valamint kidolgoztak egy módszert, amelynek köszönhetően a visszalépéses algoritmus kevés bé hevesen reagál az időszakos problémákra.
4.3.
Ethernet
Ezzel befejeztük a csatornakiosztási protokollok általános, elméleti tárgyalását, ideje tehát megnéznünk, hogy hogyan valósulnak meg ezek az elvek a létező rendszerek ben, konkrétan a LAN-okban. Amint azt már az 1.5.3. szakaszban említettük, az IEEE számos helyi és nagyvárosi hálózatot szabványosított az IEEE 802 név alatt. Ezek kö zül néhány fennmaradt, de a többség nem, ahogy azt az 1.38. ábrán láthattuk. Vannak, akik hisznek a reinkarnációban, és úgy vélik, hogy maga Charles Darwin tért vissza az IEEE Szabványügyi Egyesületének tagjaként, hogy elbánjon az életképtelenekkel. A túlélők közül a legfontosabbak a 802.3 (Ethernet) és a 802.11 (vezeték nélküli LAN). A 802.15 (Bluetooth) és a 802.16 (vezeték nélküli MAN) sorsáról még korai lenne jóslásokba bocsátkozni. Könyvünk 5. kiadása már bizonyára tartalmazni fogja a vá laszt. A 802.3-nak és a 802.11-nek különböző a fizikai rétege és a MAC-alrétege, de mindkettő egyazon logikai kapcsolatvezérlési alréteg felé konvergál (amit a 802.2 de finiál), tehát ugyanazt a felületet nyújtják a hálózati réteg felé. Az Ethernetet bemutattuk már az 1.5.3. szakaszban, az ott leírtakat nem ismételjük meg most. Ehelyett inkább az Ethernet műszaki részleteire, a protokollokra és a nagy sebességű (gigabites) Ethernet terén történő új fejlesztésekre fogunk összpontosítani. Mivel az Ethernet és a 802.3 két apróbb különbséget leszámítva (ezeket hamarosan tárgyaljuk) megegyezik, sokan ugyanazt értik az „Ethernet" és a „802.3" kifejezés alatt, és mi sem fogjuk őket megkülönböztetni. Az Ethernetről bővebben is olvasha tunk (Breyer és Riley, 1999; Seifert, 1998; valamint Spurgeon, 2000) műveiben.
4.3.1.
Ethernet-kábelezés
Mivel az „Ethernet" név a kábelre (az éterre) utal, kezdjük a kábelezéssel az ismerke dést. A 4.13. ábrának megfelelően négyféle kábelezést használnak elterjedten. Sor rendben a 10Base5, vagy közkedveltebb nevén a vastag Ethernet (thick Ethernet) kábelezés volt az első. Megjelenésében egy sárga kerti öntözőtömlőre emlékeztet, amelyen a csapok lehetséges csatlakoztatási pontjait 2,5 méterenként megjelölték. (A 802.3 szabvány nem írja elő, hogy a kábelnek sárgának kell lennie, de javasolja.) A csatlakozás ún. vámpír csatlakozókon keresztül lehetséges, amelyekben egy apró tüskét nyomnak óvatosan a koaxiális kábel középső vezetékébe. A 10Base5 megneve-
309
A KÖZEGELÉRÉSI ALRÉTEG
Megnevezés
Kábel
Max. szegmens
Csomópont/ szegmens
Előnyök
10Base5
Vastag koaxiális
500 m
100
10Base2
Vékony koaxiális
185 m
30
10Base-T
Sodrott érpár
100 m
1024
A legolcsóbb rendszer
10Base-F
Optikai
2000 m
1024
Epületek között a legjobb
Ez az eredeti kábel, de mára idejétmúlttá vált Nincs szükség elosztóra
4.13. ábra. Az Ethernet-kábelek leggyakoribb típusai
zés azt jelenti, hogy 10 Mb/s sebességgel üzemel alapsávú (baseband) jelekkel, és leg feljebb 500 méter hosszú szegmensek kialakítását teszi lehetővé. Az első' szám tehát a sebességet jelenti Mb/s-ban mérve. Ezt követi a „Base" (vagy néha a „BASE") szó, mely az alapsávú átvitelre utal. Régebben létezett egy szélessávú változat, a 10Broad36 is, de sosem talált magának piacot, és el is tűnt idővel. Végül, ha a közeg koaxiális, akkor a „Base" szó után annak hosszát adják meg, 100 méteres egységekre kerekítve. Sorrendben a második kábelezési típus a 10Base2, más néven a vékony Ethernet (thin Ethernet) volt, amely már sokkal könnyebben hajlítható, ellentétben az öntöző csőhöz hasonlító vastag Ethernettel. Vámpír csatlakozók helyett a már gyári szab ványként létező BNC-csatlakozókat és T elosztókat használták csatlakozásra. A vé kony Ethernet sokkal olcsóbb és egyszerűbben is telepíthető, de csak 185 méter a megengedett legnagyobb szegmens hossza, és mindössze 30 állomás csatlakozhat egy szegmensre. Mindkét közegnél nagy problémát okoz a kábelhiba, a túl hosszú kábel, a rossz megcsapolás vagy a laza csatlakozó bemérése, megkeresése. Emiatt különböző mód szereket dolgoztak ki ezek felkutatására. Alapvetően egy ismert alakú impulzust ad nak a kábel egyik végére. Ha a jel akadályba vagy a kábel végébe ütközik, akkor visszhang keletkezik, ami visszajut a kábel vizsgált végéhez. Pontos időméréssel a ki adott impulzus és a visszhang megérkezése között eltelt idő alapján bemérhető a visszhang kiindulási helye. Ezt a módszert időbeli reflektometriának (time domain reflectometry) nevezik. A kábelezés hibáinak bemérésével kapcsolatos problémák olyan kábelezési elren dezés kialakításához vezettek, amelyben minden állomástól egy kábel megy egy köz ponti elosztóhoz (hub), ahol a kábelek között villamos csatlakozást hoznak létre (mintha össze lennének forrasztva). Az ilyen hálózatokhoz általában sodrott érpáros telefonvezetéket szoktak használni, mivel az irodaházak többsége amúgy is ilyenekkel van felszerelve, és többnyire rengeteg szabad érpár áll még rendelkezésre. Ezt a sémát lOBase-T-nek nevezik. Az elosztók nem pufferelik a bejövő forgalmat. A fejezet egy későbbi részében megtárgyaljuk ennek az ötletnek egy továbbfejlesztett változatát (a kapcsolókat), ahol a bejövő forgalmat már pufferelik is. Ezt a három kábelezési sémát mutatja be a 4.14. ábra. 10Base5 esetén a kábelre egy
310
SZÁMÍTÓGÉP-HÁLÓZATOK
Elosztó (hub) (a)
(b)
(c)
4.14. ábra. Három különböző802.3-as kábelezés, (a) 10Base5. (b) 10Base2. (c) WBase-T adó-vevő (transceiver) csatlakozik, amelynek tüskéje valósítja meg az összeköttetést a kábel belső magjával. Az adó-vevőbe szerelik azt az elektronikát, amely a vivőjel érzékelést, illetve az ütközések érzékelését hivatott elvégezni. Ütközés érzékelése ese tén az adó-vevők egy speciális jelet kezdenek el adni a kábelen, hogy az összes többi adó-vevő biztosan érzékelhesse az ütközés bekövetkeztét. 10Base5 esetén az adó-vevőt a számítógép csatolókártyájával egy adó-vevő kábel köti össze. Ez a kábel öt, egymástól függetlenül árnyékolt sodrott érpárt tartalmaz. Hossza legfeljebb 50 méter lehet. Két érpár adatbemenetként, illetve adatkimenetként szolgál, két további érpárt vezérlőjelek ki- és bevitelére használnak, az ötödik érpár segítségével pedig (ezt nem mindig használják ki) az adó-vevő elektronikáját láthatja el a számítógép tápfeszültséggel. Vannak olyan adó-vevők is, amelyek akár nyolc kö zeli számítógépet is képesek kiszolgálni, így csökkentik a hálózat kialakításához szük séges adó-vevők számát. Az adó-vevő kábel egy számítógépben elhelyezett illesztőkártyához csatlakozik. Ezen a kártyán egy olyan vezérlőáramkör található, amely kereteket küld az adóvevő nek, illetve kereteket fogad attól. A vezérlő feladata, hogy az adatokat megfelelő kere tekbe szervezze, kiszámítsa hozzájuk az ellenőrző összegeket, illetve ellenőrizze a be érkezett keretek integritását. Néhány vezérlő egyéb funkciókat is képes ellátni. Példá ul a beérkező és a továbbítandó keretek számára puffereket, illetve sorokat kezelhet, DMA átvitelt bonyolíthat le a gazda számítógéppel, vagy egyéb, a hálózat felügyeleté vel kapcsolatos funkciókat is támogathat. A 10Base2 esetében a kábelhez való csatlakozást egy egyszerű, passzív BNC T csatlakozó oldja meg. Az adó-vevő elektronika az illesztőkártyán található, és minden állomásnak mindig saját adó-vevője van. A lOBase-T esetében egyáltalán nincs közös kábel, csak egy elosztó (egy elektro nikával teli doboz), melyhez minden állomás egy dedikált (azaz nem közös) kábel út ján csatlakozik. Az ilyen felépítésű' rendszerekben az állomások beiktatása és kivétele sokkal egyszerűbb, akárcsak a hibás kábelszakaszok felderítése. A lOBase-T hátránya
311
A KÖZEGELÉRÉSI ALRÉTEG
A
B
-i-K-c x
(
) Becsatlakozás
( Gerincvezeték —"
(a)
(b)
AB
C
D
i-i-n-Ln-i Ismétlő (repeater)
(c)
(d)
4.15. ábra. Kábelezési topológiák, (a) Lineáris, (b) Gerincvezetékes, (c) Fa. (d) Szegmentált viszont az, hogy a gépek és az elosztó között futó kábelek hossza általában csak 100 méter, de még nagyon jó minőségű 5-ös kategóriájú sodrott érpár esetén is csupán 200 méter lehet. Ennek ellenére a lOBase-T hamar meghatározóvá vált, mert a már megle vő kábelezést hasznosítja, és könnyen karbantartható. A lOBase-T egy gyorsabb vál tozatával, a lOOBase-T-vel is megismerkedünk nemsokára ebben a fejezetben. Az Ethernet negyedik kábelezési lehetősége a lOBase-F, mely fényvezető szálat használ. Ez a megoldás meglehetősen drága a csatlakozók és a lezáró elemek magas ára miatt, viszont kiváló a zajtűrése, és általában ezt a módszert használják az épületek vagy az egymástól nagy távolságban lévő elosztók összekötésére. Itt akár az egy ki lométer hosszú kábelek is megengedettek. A lOBase-F biztonsági szempontból is elő nyös, mert a fényvezető szálat sokkal nehezebb lehallgatni, mint a rézvezetéket. A 4.15. ábra egy épület különböző bekábelezési lehetőségeit szemlélteti. A 4.15.(a) ábra egy olyan megoldást jelképez, amelyben egyetlen kábel kígyózik végig az épüle ten szobáról szobára, miközben minden állomás a hozzá legközelebbi ponton csatla kozik rá. A 4.15.(b) ábrán egy függőleges gerincvezeték fut az alagsortól a tetőig, amelyhez speciális erősítőkön (repeater - ismétlő) keresztül vízszintes kábelek csatla koznak minden emeleten. Néhány épületben a függőleges gerinckábel vastag, míg a vízszintes kábelek vékonyak. A legkedveltebb topológia a fa elrendezés, amelyet a 4.15.(c) ábra szemléltet. Ez a topológia azért előnyös, mert olyan hálózatokban, ahol bizonyos állomáspárok között két útvonal is létezik, a különböző útvonalakon haladó jelek között interferencia léphet fel.
312
SZÁMÍTÓGÉP-HÁLÓZATOK
Minden Ethernet-hálózat esetén rögzített a kábelek szegmensenkénti maximális hossza. Nagyobb hálózatok kialakítása érdekében a 4.15.(d) ábrán látható módon több kábelszegmenst ismétlőkkel (repeaters) lehet összekötni. Az ismétlő egy olyan esz köz, amely a protokoll architektúrának kizárólag a fizikai rétegében működik. Veszi a jeleket, regenerálja, majd mindkét irányban továbbküldi azokat. Szoftveres szemszög ből nézve, az ismétlőkkel összekötött kábelszegmensek ugyanúgy viselkednek, mintha egyetlen kábel lenne a rendszerben (leszámítva az ismétlők működése során keletke zett kisebb késleltetéseket). Egy rendszer tartalmazhat több kábelszegmenst és több ismétlőt is, de két adó-vevő pár között nem lehet 2,5 km-nél nagyobb távolság, és kö zöttük négy ismétlőnél több nem lehet. 4.3.2.
Manchester-kódolás
Egyik Ethernet-változat sem használ olyan közvetlen bináris kódolást, ahol a 0 volt a logikai 0 szintnek, az 5 volt pedig a logikai l-es szintnek felel meg, mivel ez félreérté sekhez vezethet. Ha ugyanis egy állomás elküldi a 0001000 bitsorozatot, akkor a töb biek esetleg helytelenül azt hihetik, hogy ez eredetileg 10000000 vagy 01000000 volt, mivel nem tudják megkülönböztetni az üres csatornán mérhető 0 voltot a logikai 0nak megfelelő 0 volttól. Megoldhatjuk a problémát úgy is, hogy +1 voltot használunk a logikai 1, és -1 voltot a logikai 0 esetén, de ekkor még mindig gondot okozhat az, ha a vevő a jelet kissé eltérő frekvenciával mintavételezi, mint amilyennel az adó előál lította azt. Az órák eltérő sebessége miatt az adó és a vevő a bithatárok vonatkozásá ban kieshet a szinkronból, különösen akkor, ha sok egymást követő 0 vagy sok egy mást követő l-es érkezik. Amire szükség van az az, hogy külső óra segítsége nélkül, minden állomás félreért hetetlenül el tudja dönteni, mikor kezdődik, mikor ér véget, és mikor tart éppen a fe lénél egy bit a csatornán. Két ilyen megoldás is létezik: a Manchester-kódolás és a differenciális Manchester-kódolás. A Manchester-kódolás esetén minden bit-időt két egyenlő méretű részre (intervallumra) vágnak. Bináris 1 küldése esetén az első Bitsorozat
1
0
0
0
0
1
0
1
1
1
1
Bináris kódolás
Manchester-kódolás
1
J
Differenciális Manchester-kódolás
~L"L
L
1_
rJ
\ Az átmenet 0-ás bitet jelez
Az átmenet hiánya 1 -es bitet jelez
4.16. ábra. (a) Bináris kódolás, (b) Manchester-kódolás, (c) Differenciális Manchester-kódolás
313
A KÖZEGELÉRÉSI ALRÉTEG
intervallum alatt magas feszültségszint, míg a második alatt alacsony jelenik meg a csatornán. Bináris 0 elküldése esetén mindez megfordul: az első intervallum alatt ala csony, a második alatt pedig magas feszültségszintet kényszerítenek a csatornára. Ez a módszer biztosítja, hogy minden bit-idő közepén legyen egy átmenet, így a vevő könynyedén összeszinkronizálódhat az adóval. A Manchester-kódolás hátránya azonban, hogy a bináris kódoláshoz szükséges sávszélesség kétszeresét igényli, mivel az impul zusok hossza a felére csökkent. A Manchester-kódolást a 4.16.(b) ábra mutatja be. A 4.16.(c) ábrán bemutatott differenciális Manchester-kódolás az alap eljárásnak egy változata. Ennek során az l-es bitet a bit-idő elején hiányzó átmenet jelzi, míg en nek az átmenetnek a megléte 0-s bitre utal. Mindkét esetben megtörténik a szokvá nyos átmenet a bit-idő felénél. A differenciális megoldás bonyolultabb berendezést igényel, ám cserébe jobb zaj védettséget biztosít. Az összes alapsávú 802.3 rendszer, egyszerűsége miatt, Manchester-kódolást használ. A magas szintnek +0,85 volt, míg az alacsonynak -0,85 volt felel meg, amelynek köszönhetően az egyenáramú (DC) komponens 0 volt lesz. Az Ethernet ugyan nem használ differenciális Manchester kódolást, de más LAN-ok (pl. a 802.5 vezérjeles gyűrű) használják azt.
Az Ethernet MAC-protokollja
4.3.3.
Az eredeti DIX (DEC, Intel, Xerox) keretszerkezetet a 4.17.(a) ábra mutatja be. Min den keret egy 8 bájtos Előtaggal (Preamble) kezdődik, mely az 10101010 mintát tar talmazza. Ennek a mintának a Manchester-kódolása egy 10 MHz-es, 6,4 trs időtartamú négyszögjelet állít elő, ami lehetővé teszi, hogy a vevő az adóhoz igazítsa az óráját. A feleknek a keret hátralévő részében szinkronban kell maradniuk, amit úgy érnek el, hogy a Manchester-kódolás segítségével nyomon követik a bithatárokat. A keret két címet tartalmaz: egy cél- és egy forráscímet. A szabvány 2 és 6 bájtos címeket is megenged, de a 10 Mb/s-os alapsávú szabvány számára kijelölt paramé terek csak 6 bájtos címek használatát engedélyezik. A célcím legfelső helyi értékű bitje közönséges címek esetén 0, csoportcímek esetén viszont 1 értékű. A csoportcí mek több állomás egyetlen címmel való megcímzését teszik lehetővé. Amikor egy ke retet csoportcímmel küldünk el, akkor azt a csoport minden tagja veszi. Az állomások egy meghatározott csoportjának való keretküldést többes küldésnek (multicast) ne-
Bájtok
8
(a)
(b)
Előtag
S Előtag O F
0-46
0-1500
l Cél cím
Forrás cím
Típus
Forrás cím
Hossz
1
Adatmező I
Cél cím
ss
SS SS Adatmező
4.17. ábra. Keretformátumok, (a) DIX Ethernet, (b) IEEE 802.3
Kitöltés
Ellenőrző összeg
Kitöltés
Ellenőrző összeg
1
314
SZÁMÍTÓGÉP-HÁLÓZATOK
vezík. A csupa l-esekből álló cím az adatszórás (broadcast) esetén használatos. A célcímben csupa l-est tartalmazó kereteket az összes állomás veszi. A többesküldés és az adatszórás közti különbség elég fontos ahhoz, hogy még egyszer átismételjük. A többesküldéses kereteket az Ethernet-állomások egy meghatározott csoportjának, az adatszórásos kereteket pedig az Ethernet összes állomásának elküldik. A többesküldés szelektív, de ehhez az kell, hogy csoportokat is lehessen kezelni. Az adatszórás nem ilyen kifinomult, de nem igényel semmiféle csoportkezelést. A címzés további érdekessége a 46. bit (a legmagasabb helyi értékű bit szomszéd ja) használata, amely megkülönbözteti a helyi és a globális címeket. A helyi címeket a hálózat adminisztrátorai jelölik ki, és nincs jelentőségük a helyi hálózaton kívül. Ezzel szemben, a globális címeket az IEEE jelöli ki azért, hogy a világon ne fordulhasson elő két azonos globális cím. Mivel 48 - 2 = 46 bit áll rendelkezésre, ezért megközelí tőleg 7 x 1013 globális cím létezik. Az alapgondolat az, hogy 48 bitet használva már a világ bármely két állomása megcímezheti egymást. A célállomások megtalálásának módja már a hálózati rétegre tartozik. A következő a Típus (Type) mező, mely azt határozza meg, hogy a vevőnek mit kell tennie a kerettel. Több hálózatiréteg-protokoll is működhet egy gépen egyszerre, a kernelnek pedig tudnia kell, hogy melyiknek kell átadni a keretet. A Típus mező te hát azt adja meg, hogy melyik folyamatnak kell átadni a keretet. Ezután jön a legfeljebb 1500 bájt hosszúságú adatmező. Ezt a határt többé-kevésbé önkényesen állapították meg a DIX szabvány kőbe vésésekor, leginkább arra alapoz va, hogy az adó-vevőnek elegendő memóriával kell rendelkeznie egy teljes keret tá rolásához, márpedig a memória drága volt 1978-ban. Egy magasabb felső határ több memóriát, így drágább adó-vevőt igényelt volna. Nemcsak a maximális, hanem a minimális kerethossz is rögzítve van. Egy 0 hoszszúságú adatmezőnek is lehet ugyan értelme, mégis problémákat okozhat. Amikor egy adó-vevő ütközést érzékel, csonkolja az aktuális keretet, ami azt jelenti, hogy kóbor bitek és keretdarabkák bármikor jelen lehetnek a kábelen. Annak érdekében, hogy az érvényes kereteket könnyebben meg lehessen különbözteti a szeméttől, az érvényes Ethernet-kereteknek a célcímtől az ellenőrző összegig (beleértve e két mezőt is) leg alább 64 bájt hosszúnak kell lenniük. Ha tehát egy keret adatrésze 46 bájtnál rövidebb, akkor a Kitöltés (Pad) mezőt kell használni a keret minimális méretének eléréséhez. A minimális kerethosszúság előírását más (sokkal fontosabb) indok is szükségessé teszi. Rövid keretek engedélyezése esetén előfordulhatna, hogy egy állomás még az előtt befejezné a keretének küldését, mielőtt annak első bitje elérné a kábel legtávo labbi végét, ahol az még egy másik kerettel ütközhet. A problémát a 4.18. ábra illuszt rálja. A 0 időpillanatban a hálózat egyik végén elhelyezkedőd állomás elküld egy ke retet. Jelöljük azt az időtartamot, amíg ez a csomag elér a hálózat másik végéig, x-val! Éppen azelőtt, hogy a keret elérte volna a vezeték másik végét (azaz x - e pillanat ban), a legtávolabbi állomás, B szintén adni kezd. Amikor B észleli, hogy az általa vett jel erőssége nagyobb, mint amit maga sugárzott, rájön, hogy ütközés történt. Abba hagyja az adását és egy 48 bit hosszú zajlöketet (nőise burst) állít elő, hogy a többi állomást is figyelmeztesse az ütközésre. Az adás megkezdése után csak körülbelül 2x idő elteltével érzékeli a zajlöketet az eredeti küldő fél, amely hatására szintén leáll a forgalmazással. Ezután véletlenszerű ideig vár, majd újból próbálkozik.
315
A KŐZEGELÉRÉSI ALRÉTEG
A csomag t-s-kor már majnem B-nél van
A csomag 0 időpontban
[A]
'"dúl
\B\
\ LZD— (a)
f/O
(b) 2T időpontban A-hoz zaj jut vissza
Ütközés * időpontban
0
/
[Bl
CZU CZ2 (c)
(d)
4.18. ábra. Az ütközésérzékelés 2% időt is igénybe vehet Ha egy állomás egy nagyon rövid keretet próbál elküldeni, akkor elképzelhető, hogy bekövetkezik egy ütközés, de az átvitel befejeződik, mielőtt a zajlöket a 2x kés leltetés után megérkezik. Az adó ekkor azt a téves következtetést vonja le, hogy a ke retet sikeresen küldte el. Az ilyen helyzetek elkerülése érdekében minden keretnek olyan hosszúnak kell lennie, hogy elküldése legalább 2x időt igényeljen. Ily módon az átvitel még biztosan tartani fog, amikor a zajlöket visszaérkezik az adóhoz. Egy (a 802.3 specifikációja alapján) maximális, azaz 2500 méter hosszú, négy ismétlőt tar talmazó, 10 Mb/s-os LAN-on a körülfordulási idő értékét (beleértve a négy ismétlőn való áthaladás minden bizonnyal nem elhanyagolható idejét is) a legrosszabb esetet feltételezve mintegy 50 us-ban rögzítették. Következésképpen a legrövidebb keret át vitelének is legalább ennyi ideig kell tartania. 10 Mb/s átviteli kapacitás esetén egy bit 100 ns hosszú, vagyis 500 bites az a legrövidebb keret, mely garantáltan működni fog. A biztonság kedvéért ezt a számot felkerekítették 512 bitre, azaz 64 bájtra. A 64 bájt nál rövidebb kereteket a Kitöltés (Pad) mező segítségével feltöltik 64 bájtosra. A hálózatok sebességének növekedésével arányosan kell a minimális keretméret nek is növekednie, vagy a megengedett maximális kábelhossznak csökkennie. Egy 2500 méteres, 1 Gb/s-os sebességen működő LAN mellett a minimális keretméretnek 6400 bájtnak kell lennie. Alternatív módon az is lehetséges, hogy a minimális keret méret csak 640 bájt, de ekkor a maximális távolság egyetlen állomáspár között sem lehet több 250 méternél. Ezek a megkötések egyre inkább kényelmetlenek lesznek, amint a gigabites hálózatok irányába haladunk. Az utolsó Ethernetes keretmező az Ellenőrző összeg (Checksum). Ez tulajdonképpen az adatok 32 bites hash-kódja. Ha néhány adatbit (a vezetéken megjelenő zaj miatt) hi básan érkezik meg, akkor az ellenőrző összeg szinte biztosan rossz lesz, így a hiba felfe dezhető. Az ellenőrző összeg algoritmusa a harmadik fejezetben ismertetett ciklikus re dundancia-ellenőrzésen (CRC) alapul. Ez csak hibajelzést végez, hibajavítást nem. Amikor az IEEE szabványosította az Ethernetet, a bizottság két helyen módosította a DIX formátumot, amint azt a 4.17.(b) ábra mutatja. Az első változtatás az volt, hogy az előhang hosszát 7 bájtra csökkentették, a 8. bájtot pedig a Keret kezdete (Start of Frame) nevű határolójelként használták, a 802.4-gyel és a 802.5-tel való kompatibili-
316
SZÁMÍTÓGÉP-HÁLÓZATOK
tás miatt. Második módosításként a Típus mezőt Hossz mezőre változtatták. Ezzel per sze megszűnt annak a lehetősége, hogy a vevő kitalálja, mit kell tenni egy beérkező kerettel, de ezt a problémát egy, magában az adatrészben elhelyezett kis fejrész hoz záadásával orvosolták, mely ugyanezt az információt adta meg. Az adatrész formátu mát a fejezet későbbi részében tárgyaljuk majd, amikor elérkezünk a logikai kapcso latvezérlés témaköréhez. Mire a 802.3-at kiadták, sajnos már olyan sok DIX Ethernet-hardver és -szoftver volt használatban, hogy a gyártók és felhasználók nemigen lelkesedtek a Típus-ró\ a Hossz mezőre való átállásért. 1997-ben aztán az IEEE is bedobta a törölközőt, és mindkét megoldásra áldását adta. Szerencsére minden 1997 előtt használt Típus érték nagyobb volt 1500-nál. Következésképp, az 1500-nál kisebb vagy egyenlő számokat Hossz-ként, az 1500-nál nagyobbakat pedig Típus-ként lehet értelmezni. így az IEEE is elmondhatja magáról, hogy mindenki az ő szabványát használja, a többiek pedig folytathatják azt, amit eddig csináltak, anélkül hogy bűntudatot kellene érezniük.
4.3.4.
A kettes exponenciális visszalépéses algoritmus
Most nézzük meg, hogyan jelenik meg a véletlenszerűség, amikor ütközés történik. A modell a 4.5. ábrán látható. Egy ütközés után az időt diszkrét résekre osztva képzel hetjük el, ahol az időrések hossza akkora, mint amennyi idő legrosszabb esetben ah hoz kell, hogy egy jel visszaérhessen az éteren keresztül (vagyis 2x). Az Ethernet szabvány által megengedett maximális méretekhez (2500 méter és 4 ismétlő) igazodva ezeknek az időréseknek a hosszát 512 bit-időre, azaz 51,2 us-ra választották meg. Az első ütközés után minden állomás véletlenszerűen vagy 0, vagy 1 időrésnyit vá rakozik, mielőtt újra próbálkozna. Ha két állomás ugyanúgy sorsolt volna, akkor ismét ütköznek. A második ütközés után véletlenszerűen 0-t, 1-et, 2-t vagy 3-at sorsolnak, és ennyi időrésnyit várakoznak. Ha harmadszor is ütköznek (ennek valószínűsége 0,25), akkor a 0 és a 23 - 1 közé eső intervallumból választják ki, hogy mennyi időrés nyit várakoznak. Általánosan igaz, hogy az z'-edik ütközés után a véletlen szám a 0 és 2' - 1 közötti in tervallumból kerül kiválasztásra, és az állomások ennek megfelelő számú időrést hagy nak ki. Mindazonáltal a tizedik ütközés után már nem nő tovább a tartomány, hanem az 1023 marad a felső korlátja. A 16. ütközés után a vezérlő bedobja a törülközőt, és hiba jelzést küld a számítógépnek. A további hibajavítás már a felsőbb rétegek feladata. Ezt az algoritmust kettes exponenciális visszalépésnek (binary exponential backoff) nevezik. Azért erre az algoritmusra esett a választás, mert dinamikusan ké pes az adni kívánó állomások számához igazodni. Ha a véletlenszám-generálás felső határa minden ütközés esetén 1023 lenne, akkor két állomás újbóli ütközésének való színűsége valóban elhanyagolható volna, de a várakozási idő várható értéke több száz rés körül alakulna, amely megengedhetetlenül nagy késleltetéseket okozna. Másfelől viszont, ha az állomások örökösen csak a 0 és az 1 közül választanának csak, akkor 100 egyszerre adni kívánó állomás keretei addig ütköznének, amíg végre 99 állomás 0-t, míg a maradék egy az l-est (vagy fordítva) választaná. Ez akár évekig is eltart hatna. Azáltal, hogy a véletlenszám-generálás intervalluma az egymást követő ütkö-
317
A KÖZEGELÉRÉSI ALRÉTEG
zések hatására exponenciálisan nő, az algoritmus biztosítja azt, hogy kevés ütköző ál lomás esetén viszonylag kis késleltetés következzen be, ugyanakkor nagyszámú ál lomás esetén az ütközés még belátható időn belül feloldódjon. Ahogy az eddigiekből kiderült, a CSMA/CD nem biztosít nyugtázást. Mivel az üt közés puszta hiánya nem garantálja, hogy a bitek a kábelen levő zajtüskék miatt nem sérülnek meg, ezért a megbízható átvitel érdekében a célállomásnak ellenőriznie kell az ellenőrző összeget, és ha az hibátlan, akkor erről a tényről nyugtakeret küldésével értesítenie kell a forrást. Rendes körülmények között egy protokollban ez a nyugtázás egy másik keretet igényelne, amelynek elküldése érdekében, akárcsak egy adatkeret esetén, meg kellene szereznie a csatorna hozzáférési jogát. A versenyalgoritmus egy szerű módosításával azonban ez elkerülhető, és a keret sikeres vételéről a küldőnek gyorsan nyugta küldhető (Tokoro és Tamaru, 1977). Ehhez mindössze az kell, hogy a sikeres adásokat követő versengési rések közül az elsőt a célállomás számára kell fenntartani. A szabvány azonban, sajnos, nem biztosítja ezt a lehetőséget.
4.3.5.
Az Ethernet teljesítménye
Vizsgáljuk most meg az Ethernet teljesítményét nagy és állandó terhelés mellett! Te gyük fel, hogy k állomás folyamatosan adásra kész állapotban van! A bináris expo nenciális visszalépés algoritmusának teljes vizsgálata nagyon bonyolult, ezért Metcalfe és Boggs (1976) példáját követve, minden résben állandó újraküldési való színűséget feltételezünk. Ha minden egyes állomás p valószínűséggel ad egy versen gés során, akkor annak valószínűsége (,4), hogy valamelyik állomás meg is tudja sze rezni a csatornát: A=kp{\-p)k~x
(4.5)
A akkor maximális, ha/5 = lik és ha k -* °o, akkora -* 1/e-hez. Annak valószínű sége, hogy a versengési intervallum pontosan j időrést tartalmaz A{\ -AÍ~~l, így tehát a versengésenkénti rések számának középértéke:
j=o
Mivel minden rés időtartama 2x, ezért a versengési intervallum átlagos hossza w = 2x1 A. Optimális p-t feltételezve a versengési rések számának középértéke soha nem nagyobb mint e, így w legfeljebb 2xe ~ 5,4x lehet, Ha egy átlagos keret elküldéséhez P másodpercre van szükség, akkor sok küldeni kívánó állomás esetén: Csatornahatékonyság =
p P + 2x/A
(4.6)
318
SZÁMÍTÓGÉP-HÁLÓZATOK
Itt látható, hogy a két állomás közti maximális kábelhosszúság hol játszik szerepet a teljesítmény alakulásában, így adva esélyt a 4.15.(a) ábrán látható topológiáktól elté rő elrendezések számára. Minél hosszabb a kábel, annál hosszabb a versengési inter vallum hosszúsága is. 2,5 km-nél nem hosszabb kábelt és két adó-vevő között nem több mint 4 ismétlőt engedélyezve a körbejárási idő 51,2 us-ra korlátozható, amely 10 MHz-nél 512 bitnek, vagyis 64 bájtnak felel meg, amely éppen a minimális keretmé ret. Tanulságos a (4.6) egyenlőséget az F kerethossz, a B hálózati sávszélesség, az L kábelhosszúság és a c jelterjedési sebesség segítségével az optimális e keretenkénti versengési rés esetére átalakítani. P = FIB teljesülése esetén a (4.6) egyenlet így alakul: Csatornahatékonyság =
•— \ + 2BLe/cF
(4.7)
Amikor a nevező második tényezője nagy, a hálózat hatékonysága kicsi. Konkré tan, ha a hálózati sávszélesség és a távolság nő (BL szorzat), akkor ez csökkenti az egy adott keretméretre számított hatékonyságot. Sajnos azonban a legtöbb hálózatihard ver-kutatás éppen ennek a szorzatnak a növelésére irányul. Nagy távolságokon nagy sávszélességet akarnak elérni (pl. üvegszálas MAN-ok), ami azt sugallja, hogy az Ethernet nem a legalkalmasabb az ilyen alkalmazások számára. A 4.19. ábrán a (4.7) egyenlőség alapján 2x = 51,2 us és 10 Mb/s-os adatátviteli se besség mellett az adni kész állomások függvényében rajzoltuk fel a csatornahatékony ság görbéjét. 64 bájtos résidő mellett nem meglepő, hogy a 64 bájtos keretek nem ha tékonyak. Másfelől, 1024 bájtos kereteket és versengési intervallumonként e darab (amely csak aszimptotikusan közelíthető) 64 bájtos rést feltételezve, a hatékonyság 0,85, míg a versengési periódus 174 bájt hosszú lesz. Az adásra kész állomások számának középértékét nagy terhelés esetén a következő (durva) megfontolások alapján határozhatjuk meg. Minden keret a csatornát egy ver sengési periódus és egy keretátviteli idő erejéig tartja fel, azaz összesen P + w másod percig. A keretek száma ezért másodpercenként \I(P + w). Ha minden állomás X ke ret/s átlagsebességgel állítja elő a kereteket, és a rendszer k állapotban van (ennyi adásra kész állomás van éppen), akkor a nem blokkolt állomások egyesített bemeneti sebessége k - X keret/s. Mivel állandósult állapotban a bemeneti és kimeneti sebesség nek meg kell egyezniük, ezért ezeket a kifejezéseket egyenlővé tehetjük, és az egyen letet megoldhatjuk ft-ra. (Vegyük észre, hogy w a k függvényében változik!) Ennél sokkal részletesebb vizsgálatok is léteznek (Bertsekas és Gallager, 1992). Valószínűleg megéri megemlíteni, hogy az Ethernettel (és más hálózatokkal) kap csolatban rengeteg elméleti teljesítményelemzés létezik. Mindegyik munka azt felté telezi, hogy a forgalom Poisson-folyamat szerint változik. Ahogy a kutatók azonban elkezdték a valódi forgalmi adatokat vizsgálni, kiderült, hogy a hálózatok forgalma aligha Poisson, hanem inkább egészen sajátságos (Paxson és Floyd, 1994; Willinger és mások, 1995). Ez azt jelenti, hogy a hosszú időintervallumokra számított átlagérté kek nem egyenlítik ki a forgalmat. Egy óra minden percére számított csomagszám át-
319
A KÖZEGELÉRÉSI ALRÉTEG
1,0 0,9
1024 bájtos keretméret
0,8 S> 0,7 -(0
§0,6 JÍ -
-a>
1 0,5 íO
| 0,4 re 01
< 0,2 0,1 0
J_ 2
_L _L _L 4 8 16 32 64 Adni próbáló állomások száma
_L 128
256
4.19. ábra. Az Ethernet hatékonysága 10 Mb/s-os sebesség, és 512 bites résidő esetén
lagának ugyanolyan szórása van, mint egy perc másodpercei alatt számított átlagérté keknek. Ennek a felfedezésnek az a következménye, hogy a hálózati forgalomról al kotott legtöbb modell nem alkalmazható a valóságban, és (jókora) fenntartással keze lendő.
4.3.6.
Kapcsolt Ethernet
Minél több állomást csatlakoztatunk egy Ethernet LAN-hoz, annál nagyobb lesz a forgalom. Idővel a hálózat telítődni fog. Az egyik megoldás az, ha magasabb sebes ségre állunk át, mondjuk 10 Mb/s-ról 100 Mb/s-ra. A multimédia forgalom növekedé se miatt azonban még egy 100 Mb/s-os vagy egy 1 Gb/s-os Ethernet is telítődhet. Szerencsére van egy másik megoldás is a megnövekedett forgalom kezelésére: a 4.20. ábrán látható kapcsolt Ethernet. A rendszer lelke a kapcsoló (switch), ami egy nagysebességű hátlapot (backplane), valamint általában 4-32 vonali illesztőkártya helyét tartalmazza. A vonali kártyák 1-8 csatlakozóval rendelkeznek. A csatlakozók tól többnyire egy lOBase-T típusú sodrott érpár vezet a hoszt számítógépekhez. Amikor egy állomás egy Ethernet-keretet szeretne továbbítani, akkor egy teljesen szokványos keretet küld a kapcsoló felé. A keretet vevő vonali kártya megvizsgálja, hogy a célállomás ugyanahhoz a kártyához csatlakozik-e. Ha igen, akkor a keretet odamásolja. Ha nem, akkor a keretet a nagysebességű hátlapon keresztül elküldi an-
320
SZÁMÍTÓGÉP-HÁLÓZATOK
Kapcsoló Csatlakozó
Hosztok
HU Ethernet
o Elosztó
"N
o
(° A
Hosztok
A
10Base-T kapcsolatok
A kapcsolódó számítógépekhez 4.20. ábra. Egyszerű példa kapcsolt Ethernetre nak a kártyának, amelyikhez a címzett csatlakozik. A hátlap általában több Gb/s se bességgel dolgozik, és saját belső protokollt használ. Mi történik akkor, ha két olyan állomás forgalmaz egyszerre, amelyek ugyanahhoz a vonalhoz csatlakoznak? Ez attól függ, hogy a kártyát hogyan alakították ki. Az egyik lehetőség az, hogy a kártya portjai össze vannak kötve, így egy kis kártyára in tegrált LAN-t alkotnak. Ilyen esetben a kártyán bekövetkezett ütközések pontosan úgy érzékelhetők és kezelhetők le, mint a normál CSMA/CD-hálózatok esetén - a bináris visszalépéses algoritmus használatával újra kell küldeni a keretet. Az ilyen kártyáknál minden pillanatban kártyánként csak egyetlen átvitel valósulhat meg, viszont a kár tyák párhuzamosan, egymás zavarása nélkül működhetnek. Ezzel a tervezéssel min den kártya saját ütköztetési tartományt (collision domain) képez, amely független az összes többitől. Ha minden ütköztetési tartományhoz csak egy állomás tartozik, ak kor nem történhetnek ütközések, és a teljesítmény javul. A másik fajta vonali kártya használata esetén mindegyik bemeneti port puffereit, így a beérkező keretek a kártya RAM-jában tárolódhatnak el megérkezésük pillanatá ban. Az ilyen tervezés lehetővé teszi, hogy a portok egy időben fogadjanak (és továb bítsanak) kereteket a párhuzamos, duplex működés érdekében. Miután egy keret teljes egészében megérkezett, a kártya eldöntheti, hogy a címzett ugyanahhoz a kártyához csatlakoztatott gép, vagy egy távolabbi port felé irányítsa a keretet. Az első esetben a keret egyenesen a célállomás felé továbbítható, míg a második esetben a hátlapon ke resztül kell a megfelelő kártyának elküldeni. Ennél a tervezésnél minden port külön képez egy-egy ütközési tartományt, így a kapcsolóban egyáltalán nem fordulnak elő ütközések. A teljes rendszer átbocsátóképességét akár egy nagyságrenddel is növel hetjük a 10Base-5 hálózathoz képest, amely az egész hálózatot egyetlen ütköztetési tartományként kezeli. Mivel a kapcsoló csak annyit vár el, hogy szabványos Ethernet-keretek érkezzenek a bemeneti portjaira, néhány portját koncentrátorként lehet használni. A 4.20. ábrán a
A KÖZEGELÉRÉSI ALRÉTEG
321
jobb felső portra nem egy különálló számítógép, hanem egy 12 portos elosztó (hub) csatlakozik. Az elosztóra érkező keretek a szokott módon versengenek a közegért, beleértve az ütközéseket és a kettes visszalépéses algoritmus használatát is. A sikere sen továbbított keretek folytatják útjukat a kapcsoló felé, ahol ugyanolyan elbánásban részesülnek, mint bármilyen más beérkező keret: továbbításra kerülnek a nagysebes ségű hátlapon keresztül a megfelelő kimeneti vonal felé. Az elosztók olcsóbbak ugyan a kapcsolóknál, de a kapcsolók árának csökkenése miatt hamar idejétmúlttá válnak, jóllehet a régebbi rendszerekben még mindig megtalálhatjuk őket.
4.3.7.
Gyors Ethernet
A 10 Mb/s kezdetben valóságos mennyországnak tűnt a felhasználók számára, épp úgy, ahogy az 1200 b/s-os modemek is csodának számítottak a korai 300 b/s-os akusztikus modemek felhasználóinak szemében. Az újdonság varázsa azonban hamar elmúlt. Úgy tűnik, mintha Parkinson törvényének („A munka mindig kitölti az elvég zéséhez rendelkezésre álló időt") egyfajta következményeként igaz lenne az is, hogy adat mindig kitölti az átviteléhez rendelkezésre álló sávszélességet. A sebesség növe lésének érdekében a különböző ipari csoportosulások két új, gyűrű alapú optikai LAN-ra tettek javaslatot. Az egyiket FDDI-nak (Fiber Distributed Data Interface fényvezető szálas osztott adatinterfész), a másikat pedig Fibre Channel'-nek (fényvezető szálas csatorna) nevezték. Nem megyünk bele a részletekbe, a lényeg az, hogy a gerinchálózatokban használták is mindkettőt, de egyiknek sem sikerült az áttö rés az asztali számítógépek piacán. Az állomások felügyelete mindkét esetben túl komplikált volt, ami bonyolult áramköröket és magas árakat eredményezett. A gyár tóknak ismerniük kellett volna a KISS leckét (Keep It Simple, Stupid - Tartsd meg egyszerűnek, butának). Az optikai LAN-ok sikertelensége mindenesetre nagy teret hagyott a 10 Mb/s-nál gyorsabban működő közönséges Ethernetek számára. Ha több sávszélességre volt szükség, sokszor számos 10 Mb/s-os LAN-t kötöttek össze ismétlők, hidak, routerek és átjárók egész seregével, bár a rendszergazdák sokszor már úgy érezték, hogy az egész rendszert csak a rágógumi és a számítástechnika őrangyalai tartják egyben. így történt, hogy az IEEE 1992-ben újból összehívta a 802.3 bizottságot, hogy ké szítsen szabványt egy gyorsabb LAN-ra. Az egyik javaslat az volt, hogy tartsák meg a 802.3 szabványt olyannak amilyen, csak tegyék gyorsabbá. A másik indítvány szerint viszont az egészet teljesen át kellett volna alakítani, hogy olyan újabb szolgáltatások kal ruházhassák fel, mint például a valós idejű forgalom és a digitális hangátvitel, és csak a régi nevet kellett volna megtartani (üzleti okokból). Némi huzavona után a bi zottság az első javaslat mellett döntött. A vesztes indítvány mögött álló emberek erre azt tették, amit a számítógépipar bármely más résztvevője tett volna a helyükben: fél revonultak, megalapították saját bizottságukat, és elkészítették saját LAN-szabványukat, a 802.12-t. Szánalmas bukás volt. 1 A szerző megjegyzése: azért lett „fibre channel" és nem „fiber channel", mert a dokumentum szer kesztője angol volt.
322
SZÁMÍTÓGÉP-HÁLÓZATOK
A 802.3 bizottság elsősorban három ok miatt döntött a felgyorsított Ethernet mellett: 1. Szükség volt a már meglevő Ethernet LAN-okkal való hátrafelé kompatibilitásra. 2. Féltek, hogy egy új protokoll előre nem látható problémákat hoz magával. 3. Szerettek volna a feladattal azelőtt végezni, hogy a technológia megváltozna. A munkával hamar végeztek is (legalábbis egy szabványosítási bizottsághoz ké pest), és az eredményt, a 802.3u szabványt 1995 júniusában hivatalosan is elfogadta az IEEE. A 802.3u műszakilag nem új szabvány, hanem a meglevő 802.3 kiegészítése (a hátrafelé kompatibilitás hangsúlyozása érdekében). Gyakorlatilag mindenki - így mi is - gyors Ethernet (fást Ethernet) néven hivatkozik rá a 802.3u helyett. A gyors Ethernet alapötlete egyszerű: tartsunk meg minden régi keretformátumot, interfészt és eljárási szabályt, de csökkentsük le a bitidőt 100 ns-ról 10 ns-ra. Műszaki szempontból lehetséges lett volna a 10Base-5 vagy a 10Base-2 megőrzése, és még ek kor is időben lehetett volna észlelni az ütközéseket, ha a maximális kábelhosszt tize dére csökkentették volna. A lOBase-T kábelezés előnyei azonban annyira meggyőzők voltak, hogy a gyors Ethernetet teljes egészében erre a megoldásra alapozták. Emiatt minden gyors Ethernet-rendszer elosztókat és kapcsolókat használ; a vámpírcsatlakozós csatoló kábelek vagy a BNC-csatlakozók nem megengedettek. Néhány döntést azonban még így is meg kellett hozni. A legfontosabb ezek közül az volt, hogy milyen kábelfajtákat támogassanak. A verseny egyik résztvevője a 3-as kategóriájú sodrott érpár volt. A mellette szóló érv az volt, hogy a nyugati világban gyakorlatilag minden irodát legalább négy, 3-as kategóriájú (vagy jobb) sodrott érpár köt össze a 100 méteren belül lévő telefonos kábelrendezővel. Esetenként két ilyen kábel is létezik. Ily módon a 3-as kategóriájú sodrott érpárok segítségével az asztali számítógépeket anélkül lehetne gyors Ethernet-hálózatba csatlakoztatni, hogy az egész épületet újra kellene kábelezni, ami sok szervezet számára óriási előnyt jelentene. A 3-as kategóriájú sodrott érpár fő hátránya az, hogy képtelen a 200 megabaud-os jelek (100 Mb/s Manchester-kódolással) 100 méterre történő elszállítására, márpedig a lOBase-T szabvány szerint ez a maximális távolság a gépek és az elosztó között (lásd 4.13. ábra). Ezzel szemben az 5-ös kategóriájú sodrott érpár számára a 100 méter nem jelent akadályt, a fényvezető szál pedig még ennél is távolabb mehet. Végül azt a kompromisszumot választották, hogy megengedik mindhárom lehetőséget, ahogy ezt a 4.21. ábra is szemlélteti, de a 3-as kategóriájú megoldást fel kellett javítani úgy, hogy elérje a szükséges szállítási kapacitást. A 3-as kategóriájú UTP-séma, melyet 100Base-T4-nek neveznek, 25 MHz-es2 jel zési sebességet használ, ami csak 25%-kal több az Ethernet-szabvány 20 MHz-énél3 (ne felejtsük el, hogy a Manchester-kódolás, a 4.16. ábrának megfelelően, két órajel periódust igényel a másodpercenkénti 10 millió bithez). A szükséges sávszélesség el éréséhez a 100Base-T4 négy sodrott érpárt igényel. Miután már évtizedek óta négy
3
A lektor megjegyzése: Helyesebb lenne 25 Mbaud-ot mondani. Uő: Helyesebb lenne 20 Mbaud-ot mondani.
323
A KÖZEGELÉRÉSI ALRÉTEG
Név
Kábel
Max. szegmens
Előnyök
100Base-T4
Sodrott érpár
100 m
3-as kategóriájú UTP-t használ
10OBase-TX
Sodrott érpár
100 m
Duplex 100 Mb/s (5. kat. UTP)
100Base-FX
Fényvezető szál
2000 m
Duplex 100 Mb/s, nagy távolság
4.21. ábra. A gyors Ethernet eredeti kábelezése
sodrott érpár fut a telefonkábelekben, a legtöbb irodának ez nem jelent különösebb problémát. Természetesen ez az irodai telefon feladását vonja maga után, de ez bizo nyára nem nagy ár a gyorsabb elektronikus levelekért cserébe. A négy érpár közül egy mindig az elosztó felé, egy mindig az elosztó felől, a mara dék kettő pedig átkapcsolható módon, az aktuális átvitel irányába szállítja az adatokat. A szükséges sávszélesség elérésének érdekében nem használnak Manchester-kódolást, de ez a modern órák és a kis távolságok mellett már nem is igazán szükséges. Ráadá sul három jelszintű (ternális) jeleket küldenek, így egyetlen órajel alatt a vezetéken 0, 1 vagy 2 is megjelenhet. Ha három sodrott érpár megy a forgalom irányába, és mind egyiken három jelszintű jelzéseket használnak, akkor összesen 27-féle jelet lehet át vinni, így lehetőség nyílik arra, hogy némi redundanciával 4 bitet is továbbítsanak. Ha pedig a másodpercenkénti 25 millió órajelciklusban mindig 4 bitet továbbítanak, ak kor máris előáll a kívánt 100 Mb/s-os átvitel. Ráadásul mindig rendelkezésre áll egy 33,3 Mb/s-os szembejövő csatorna, mely a megmaradt sodrott érpárt használja. Ez a séma a 8B/6T (8 bit map to 6 trits - 8 bit leképezve 6 tercre) nevet viseli, és valószínűleg nem fog az eleganciájáért díjat kapni, de legalább működik a meglevő kábelezéssel. Az 5-ös kategóriájú kábelezés, azaz a lOOBase-TX esetén egyszerűbben néznek ki a dolgok, mivel a kábel képes a 125 MHz-es órajeleket kezelni. Állomásonként elég mindössze két sodrott érpár, egy az elosztó felé, egy pedig az elosztó felől. A közvet len bináris kódolás helyett itt a 4B/5B sémát használják. Ezt az FDDI-ból vették át, és azzal kompatibilis is. Az öt órajelből álló csoportokban kétféle szimbólum használ ható, így összesen 32 kombinációhoz jutunk. Ezek közül 16-ot használnak a 0000, 0001, 0010, ..., 1111 négyes bitcsoportok átvitelére. A fennmaradó 16 kombináció közül néhányat vezérlési célokra használnak, például a kerethatárok jelölésére. A fel használt kombinációk kiválasztásánál nagy gondot fordítottak arra, hogy kellően sok szintváltás legyen az órák szinkronjának megőrzéséhez. A lOOBase-TX rendszer duplex: az állomások egy időben adhatnak és vehetnek is 100 Mb/s sebességgel. A lOOBase-TX-re és a 100Base-T4-re a lOOBase-T összefoglaló néven hivatkoznak. Az utolsó lehetőség, a lOOBase-FX két többmódusú fényvezető szálat használ, mindkét irányban egyet-egyet, így ez is 100 Mb/s-os duplex átvitelt biztosít mindkét irányban. Az elosztó és az állomások közötti távolság pedig akár 2 km is lehet. A 802-es bizottság a nagy keresletre válaszul 1997-ben bevezetett egy új kábelezé si típust, a 100Base-T2-t, mely lehetővé tette, hogy a gyors Ethernet a már meglevő két pár 3-as kategóriájú kábelen működjön. Az ehhez szükséges kódolási séma azon ban kifinomult digitális jelfeldolgozó processzort igényelt, amitől ez a változat vi-
324
SZÁMÍTÓGÉP-HÁLÓZATOK
szonylag drága lett. Egyelőre kevés helyen használják, mert bonyolult, drága, és sok irodaépületet már amúgy is átkábeleztek az 5-ös kategóriájú UTP-vel. A lOOBase-T hálózatokban kétfajta eszközzel lehet megoldani az összekapcsoláso kat: elosztókkal és kapcsolókkal, amint azt a 4.20. ábra is mutatja. Egy elosztó esetén minden befutó vonal (vagy legalábbis az egy vonali kártyára befutó összes vonal) öszsze van kapcsolva logikailag, így ezek egy ütköztetési tartományt képeznek. Az összes alapszabály, beleértve a kettes exponenciális visszalépés algoritmust is, itt is ugyan úgy érvényes, azaz a rendszer pont úgy működik, mint a régimódi Ethernet. Lényegé ben tehát egyszerre mindig csak egy állomás adhat, vagyis az elosztók fél-duplex kommunikációt követelnek meg. A kapcsolóban viszont minden beérkező keretet puffereinek egy vonali kártyán, és - ha szükséges - a nagysebességű hátlapon keresztül továbbítják a forrás-kártyáról a cél-kártyára. A hátlapot nem szabványosították, és erre nincs is szükség, hiszen az teljes egészében rejtve marad, mélyen a kapcsoló belsejében. Ha adnak a múltbéli ta pasztalatokra, akkor a kapcsológyártók ádáz küzdelembe kezdenek, hogy még gyor sabb hátlapokat hozzanak ki, ezzel is javítva a rendszer átbocsátóképességét. Mivel a lOOBase-FX kábelek túl hosszúak a hagyományos Ethernet ütközési algoritmus szá mára, azokat kapcsolókhoz kell csatlakoztatni, így mindegyik saját ütköztetési tarto mányt fog képezni. A lOOBase-FX-nél nem szabad elosztókat használni. Végezetül érdemes megjegyezni, hogy gyakorlatilag minden kapcsoló képes ve gyesen 10 Mb/s-os és 100 Mb/s-os állomásokat is kezelni, megkönnyítve ezzel a háló zatfejlesztést. Ha egy hálózatban újabb 100 Mb/s-os munkaállomásokat szereznek be, akkor nincs más teendő, mint megvenni a megfelelő számú új vonali kártyát, és be dugni azokat a kapcsolóba. A szabvány valójában még azt is lehetővé teszi, hogy két állomás automatikusan megegyezzen az optimális sebességről (10 vagy 100 Mb/s) és a duplexitásról (duplex vagy fél-duplex). A gyors Ethernet-termékek többsége ki is használja ezt a képességet, és automatikusan konfigurálják a hálózatot.
4.3.8.
Gigabites Ethernet
Még alig száradt meg a tinta a gyors Ethernet-szabványon, amikor a 802-es bizottság már elkezdett dolgozni egy még gyorsabb Ethernet tervén (1995-ben). Gyorsan rá is ragasztották a gigabites Ethernet (gigabit Ethernet) nevet, az IEEE pedig 1998-ban a 802.3z név alatt hagyta jóvá. Az elnevezés azt sugallja, hogy a gigabites Ethernet lesz a fejlődés csúcsa, hacsak valaki nem talál ki gyorsan még egy betűt a „z" után az abc-ben. Az alábbiakban a gigabites Ethernet legfőbb tulajdonságait vesszük szem ügyre. További információkkal (Seifert, 1998) munkája szolgál. A 802.3z bizottság céljai lényegében megegyeztek a 802.3u bizottság céljaival: az Ethernet legyen 10-szer gyorsabb, de maradjon kompatibilis a meglevő Ethernet szabványokkal. A gigabites Ethernetnek lényegében nyugtázatlan datagram szolgála tot kellett nyújtania, mind egyes-, mind többesküldéssel; használnia kellett a már meglevő 48 bites címzési sémát, és meg kellett őriznie a régi keretformátumot, a mi nimális és maximális keretméretekkel együtt. A végső szabvány eleget is tett mind ezen feltételeknek.
325
A KÖZEGELÉRÉSI ALRÉTEG
(a)
(b)
4.22. ábra. (a) Ethernet két állomással, (b) Ethernet több állomással
A gigabites Ethernet minden elrendezésben pont-pont felépítésű, szemben az ere deti, többpontos kialakítású 10 Mb/s-os szabvánnyal, melyet immár klasszikus Ethernet (classic Ethernet) néven tisztelnek. A legegyszerűbb gigabites Ethernet ki építést a 4.22.(a) ábra szemlélteti, ahol két számítógép van közvetlenül összekötve egymással. Gyakoribb azonban az az eset, hogy egy kapcsoló vagy elosztó köt össze több számítógépet, esetleg további kapcsolókat vagy elosztókat, ahogy azt a 4.22.(b) ábra mutatja. Bármelyik kiépítést is nézzük azonban, minden egyes Ethernet-kábel végén pontosan két eszköz található, nem több és nem kevesebb. A gigabites Ethernet két különböző' működési módot támogat: a duplex és a fél duplex működést. A duplex mód a „normális" eset, mely lehetó'vé teszi, hogy mindkét irányban menjen forgalom egyazon időben. Ezt akkor használják, amikor egy köz ponti kapcsolót kötnek össze a periférián lévő számítógépekkel (vagy más kapcsolók kal). Ebben az elrendezésben minden vonalat puff ereinek, így bármely számítógép és kapcsoló tetszése szerinti időben küldheti el a kereteit. Az adónak nem kell figyelnie a csatornát, hogy használja-e azt éppen más is, mert a versengés kizárt. Egy olyan vo nalon, mely egy számítógépet és egy kapcsolót köt össze, csak az adott számítógép küldhet adatokat a kapcsoló felé, és az átvitel még akkor is sikeres lesz, ha a kapcsoló éppen keretet küldött a számítógépnek, hiszen a vonal duplex. Mivel nincs versengés, ezért CSMA/CD-protokollt sem használnak, így a maximális kábelhosszt a jel erőssé ge határozza meg, nem pedig az, hogy legrosszabb esetben mennyi ideig tart egy zaj löketnek visszajutnia az adóig. A kapcsolóknak módjukban áll keverni és egyeztetni a sebességeket, és automatikus hálózatkonfigurációra is van lehetőség, akárcsak a gyors Ethernetnél. A fél-duplex működési módot akkor használják, ha a számítógépek nem kapcsoló hoz, hanem egy elosztóhoz csatlakoznak. Az elosztó nem puffereli a beérkező kerete ket, hanem belül az összes vonalat villamosan összeköti, a klasszikus Ethernet több pontú kábeleit utánozva. Ebben a módban ütközések is történhetnek, ezért egy szab ványos CSMA/CD-protokollra is szükség van. Mivel a legrövidebb (azaz 64 bájtos) keretet a klasszikus Ethernetnél 100-szorta gyorsabban lehet elküldeni, a maximális távolság is 100-szor kisebb, azaz 25 méteres lesz, hogy megmaradjon az az alapvető sajátosság, hogy az adás még a legrosszabb esetben is tart addig, amíg a zajlöket visz-
326
SZÁMÍTÓGÉP-HÁLÓZATOK
szaér az adóhoz. Egy 2500 méter hosszú kábel esetén az 1 Gb/s sebességgel működő adó már rég végezne egy 64 bájtos keret adásával, amikor a keret még a kábel tizedén se haladt végig, nem beszélve a visszaútról. A 802.3z bizottság elfogadhatatlannak tartotta a 25 méteres távolságot, és két funk cióval bővítette ki a szabványt a távolság növelésére. Az elsőt vivőkiterjesztésnek (carrier extension) nevezik: ez lényegében arra utasítja a hardvert, hogy illessze a saját kitöltő bitsorozatát a rendes keret után, hogy a keret hossza elérje az 512 bájtot. Mivel ezt a kitöltést az adó hardvere illeszti be, és a vevő hardvere eltávolítja, a szoft ver nem is fog tudni róla, vagyis a meglevő szoftverrendszert nem kell megváltoztatni. Ugyanakkor, ha 512 bájt átviteléhez szükséges kapacitást használunk fel 46 bájtnyi felhasználó adat (ennyi a 64 bájtos keret adatrésze) átviteléhez, akkor a vonal hatásfo ka mindössze 9%-os lesz. A második funkciót keretfűzésnek (frame bursting) nevezik. Ez lehetővé teszi, hogy az adó egyetlen adás során több, egymás után fűzött keretet vigyen át. Amenynyiben a teljes löket hossza kisebb, mint 512 bájt, akkor itt is a hardver végzi a kitöl tést. Ha kellően sok keret vár továbbításra, akkor kiemelkedő hatékonysága miatt ezt a sémát szokták előnyben részesíteni a vivőkiterjesztéssel szemben. Az új funkciók ré vén a hálózat sugara 200 méterre nőtt, ami valószínűleg már elég lesz a legtöbb iroda számára. Őszintén szólva nehéz elképzelni egy olyan szervezetet, mely a nagyobb teljesít mény érdekében vállalja a gigabites Ethernet beszerzésének és telepítésének minden terhét, majd elosztókkal köti össze a gépeket, hogy a klasszikus Ethernetet szimulálja, annak ütközéseivel együtt. Az elosztók valamivel olcsóbbak ugyan, mint a kapcsolók, de a gigabites Ethernet-illesztőkártyák még mindig elég drágák. Badarság lenne ezt olcsó elosztókkal ellensúlyozni, ha ez az új rendszer teljesítményének drasztikus csökkenésével jár. Csakhogy a számítógépiparban a hátrafelé kompatibilitás fogalma szent, ezért a 802.3z bizottságnak sem volt más választása. A gigabites Ethernet támogatja a rézből és a fényvezető szálból készült vezetékeket is, amint azt a 4.23. ábra felsorolása is mutatja. Az 1 Gb/s-os vagy azt megközelítő jelzési sebesség fényvezető szál esetében azt jelenti, hogy a fényforrást 1 ns alatt kell be- és kikapcsolni. A LED-ek egyszerűen képtelenek ilyen gyorsan működni, ezért itt lézerekre van szükség. Két hullámhossz használható: a 0,85 mikronos (rövid) és az 1,3 mikronos (hosszú). A 0,85 mikronos lézerek olcsóbbak, de nem működnek egymódusú fényvezető szállal. A fényvezető szál átmérője három értéket vehet fel: 10, 50 vagy 62,5 mikront. Az első az egymódusú, a másik kettő a többmódusú működéshez tartozik. Ugyanakkor nem mind a hat kombináció engedélyezett, és a maximális távolság is függ az alkal mazott kombinációtól. A 4.23. ábrán megadott értékek a legjobb esetet jelentik. Az 5000 méter például csak 10 mikronos, egymódusú fényvezető szálon működő 1,3 mikronos lézer segítségével érhető el, mégis ez a legjobb választás az egyetemi ge rinchálózatok számára, és várhatóan annak ellenére is népszerű lesz, hogy ez a legdrá gább megoldás. A lOOBase-CX opció rövid, árnyékolt rézvezetékeket használ. A gondja az, hogy fe lülről a nagy teljesítményű fényvezető szállal, alulról pedig az olcsó UTP-vel van verseny ben. Feltehetőleg nem fogják sok helyen használni, ha egyáltalán használják majd.
327
A KÖZEGELÉRÉSI ALRÉTEG
Max. szegmens
Név
Vezeték
Előnyök
1000Base-SX
Fényvezető szál
550 m
Többmódusú fényvezető szál (50 vagy 62,5 mikron)
1000Base-LX
Fényvezető szál
5000 m
Egy- (10 u) vagy többmódusú (50 vagy 62,5 u) fényvezető szál
1000Base-CX
2 pár STP
25 m
1000Base-T
4 pár UTP
100 m
Árnyékolt sodrott érpár Szabványos 5-ös kategóriájú UTP
4.23. ábra. A gigabites Ethernet kábelezése Az utolsó lehetőség négy pár, 5-ös kategóriájú UTP-kábelből álló köteget jelent. Ebből a kábelfajtából olyan sokat fektettek le már mindenfelé, hogy valószínűleg ez lesz a szegény ember gigabites Ethernetje. A gigabites Ethernet új kódolási szabályokat használ a fényvezető szálon. Az 1 Gb/s-os Manchester-kódoláshoz 2 Gbaud-os jelre lenne szükség, de úgy találták, hogy ez túl bonyolult lenne, és a sávszélességet is túlságosan pazarolná. Ehelyett a 8B/10B nevű új sémát választották, mely fényvezető szálas csatornán alapszik. A 8 bites báj tokat a fényvezető szálon 10 biten kódolják, innen származik a 8B/10B név. Mivel minden egyes bemeneti bájthoz 1024 lehetséges kimeneti kódszó létezik, maradt némi mozgástér a kódszavak megválasztásánál. Végül a következő két szabályt alkalmazták: 1. Egyetlen kódszóban sem lehet négynél több egymást követő azonos bit. 2. Egyetlen kódszóban sem lehet több, mint hat darab 0 vagy l-es. Azért választották ezt a megoldást, hogy elég jelváltás legyen a folyamban ahhoz, hogy a vevő szinkronban maradhasson az adóval, valamint hogy a fényvezető szálon a 0-k és az l-esek száma közel egyenlő maradjon. Ezenfelül így több olyan bemeneti bájt is adódik, melyhez két lehetséges kódszó tartozik. Amikor a kódolónak lehetősé ge van a választásra, akkor mindig olyan kódszót választ, ami közelebb viszi az addig leadott 0-k és l-esek számának kiegyenlítéséhez. Ez a kiegyenlítés azért ilyen fontos, hogy a jel egyenáramú komponense a lehető legkisebb legyen, mert ekkor az változás nélkül tud áthaladni az átalakítókon. A számítástechnikusok ugyan nem örülnek an nak, hogy az átalakítók tulajdonságai határozzák meg a kódolási sémákat, de hiába, néha ilyen az élet. Az lOOOBase-T-t használó gigabites Ethernetek más kódolási sémát használnak, hiszen túl bonyolult lenne 1 ns alatt kikapuzni a jelet a rézvezetékre. Az itt alkalma zott megoldásban négy pár 5-ös kategóriájú sodrott érpárt használnak, hogy párhuza mosan négy szimbólumot lehessen átvinni. A szimbólumok kódolásánál öt lehetséges feszültségszint közül választanak. Ezzel a sémával egyetlen szimbólum segítségével lehet kódolni a 00, 01, 10 és 11 értékeket, vagy egy vezérlési célokra használt speciá lis értéket. így minden sodrott érpárra 2 adatbit, vagyis minden óraciklusra 8 adatbit jut. Az órajel frekvenciája 125 MHz, ami lehetővé teszi az 1 Gb/s-os működést. Azért
328
SZÁMÍTÓGÉP-HÁLÓZATOK
használnak öt feszültségszintet négy helyett, hogy maradjanak kombinációk a kerete zésre és vezérlési célokra. Az 1 Gb/s-os sebesség meglehetősen gyorsnak számít. Például, ha egy vevő akár csak 1 ms ideig is valami mással van elfoglalva, és nem üríti a bemeneti puffert vala melyik vonalon, akkor akár 1953 keret is összegyűlhet ott az 1 ms-os szünet alatt. Ugyanígy, ha egy gigabites Etherneten levő számítógép egy klasszikus Etherneten le vő másik gépnek küldi át az adatokat, akkor nagy valószínűséggel puffer-túlcsordulás fog föllépni. E két megfigyelésnek köszönhetően támogatja a gigabites Ethernet a for galomszabályozást (akárcsak a gyors Ethernet, bár a két megoldás nem ugyanaz). A forgalomszabályozás abból áll, hogy az egyik végpont egy speciális vezérlő ke retet küld a másiknak, melyben arra utasítja, hogy bizonyos ideig tartson szünetet. A vezérlő keretek 0x8808 típust tartalmazó, szokványos Ethernet-keretek. Az adatmező első két bájtja adja meg a parancsot, a következő bájtok pedig az esetleges paraméte reket. A forgalomszabályozás céljára PAUSE (Szünet) kereteket használnak, ahol a paraméter azt adja meg, hogy mennyi ideig kell a szünetnek tartania. Az idő mérték egysége a minimális keretidő, azaz a gigabites Ethernet esetében 512 ns, ennek meg felelően a szünetek legfeljebb 33,6 ms hosszúak lehetnek. Mire befejeződött a gigabites Ethernet-szabványosítása, a 802-es bizottság már el is unta magát, és új munkát akart. Az IEEE utasítására aztán nekiláttak a 10 gigabites Ethernet kidolgozásának. Komoly erőfeszítéseket tettek egy z-t követő betű kitalálásá ra, de végül felhagytak a próbálkozással, és áttértek a kétbetűs utótagokra. A munka eredményét az IEEE 2002-ben, 802.3ae néven hagyta jóvá. Lehet, hogy már a 100 gi gabites Ethernet sincs messze?
4.3.9.
Az IEEE 802.2 szabvány: logikai kapcsolatvezérlés
Talán most elérkezett az ideje, hogy egy lépést visszalépve összehasonlítsuk az ebben a fejezetben eddig tanultakat az előző fejezettel. A 3. fejezetben megvizsgáltuk, hogy két állomás hogyan tud egymással megbízható módon kommunikálni egy megbízha tatlan vonalon keresztül különböző adatkapcsolati protokollok használatával. Ezek a protokollok hibajavítást (nyugtázások használatával) és forgalomszabályozást (csúszóablak használatával) biztosítottak. Ezzel szemben ebben a fejezetben még egy szót sem szóltunk a megbízható kom munikációról. Az Ethernet és a többi 802-es protokoll mindössze annyit ígér, hogy mindent elkövet a datagram szolgálat biztosításáért. Sokszor ennyi elég is. Az IPcsomagok továbbításánál például nincs szükség semmilyen garanciára, és nem is várja ezt el senki. Elegendő, ha az IP-csomagot beletesszük egy 802-es keret adatmezejébe, és útjára bocsátjuk. Ha elvész, hát elvész. Léteznek azonban olyan rendszerek, melyek olyan adatkapcsolati protokollt igé nyelnek, amely képes hibajavításra és forgalomszabályozásra. Az IEEE definiált is egy ilyet, ami az Ethernetre és más 802-es protokollokra épülve is működik. A proto koll neve LLC (Logical Link Control - logikai kapcsolatvezérlés), és még arra is képes, hogy teljesen eltakarja a különböző 802-es hálózatokat azzal, hogy egységes formátumot és felületet biztosít a hálózati rétegek számára. A formátum, a felület, il-
329
A KÖZEGELÉRÉSI ALRÉTEG
Csomag
Hálózati réteg
1 Adatkapcsolati J
réteg
1 1
LLC MAC
MAC
LLC
Csomag
LLC
Csomag
t Fizikai réteg (a) 4.24. ábra. (a) Az LLC elhelyezkedést. (í>) Keret/ormafumofc
MAC
! Hálózat (b)
letve a protokoll erőteljesen alapoz a 3. fejezetben bemutatott HDLC-re. Ahogy a 4.24. ábra is mutatja, az LLC képezi az adatkapcsolati réteg felső részét, alatta pedig a MAC-alréteg helyezkedik el. Az LLC-t tipikusan a következő módon használják. A küldő számítógép hálózati rétege az LLC szolgálati primitívjeinek felhasználásával átad egy csomagot az LLCrétegnek. Az LLC-réteg kiegészíti ezt egy LLC-fejrésszel, amely sorszámot és nyugta számot tartalmaz. Az így nyert adatstruktúra ezután bekerül egy 802.x keret adatme zejébe, és továbbításra kerül. A vevőnél a folyamat megfordított)a zajlik le. Az LLC három szolgálati lehetőséget biztosít: megbízhatatlan datagram szolgála tot, nyugtázott datagram szolgálatot és megbízható, összeköttetés alapú szolgálatot. Az LLC-fejrész három mezőt tartalmaz: a cél csomópont elérési pontját, a forrás cso mópont elérési pontját, és egy vezérlési mezőt. Az elérési pontok a DIX Típus mező helyén szerepelnek, és azt adják meg, hogy melyik folyamattól jött a keret, és melyik folyamat felé tart. A vezérlési mező keret sorszámokat és nyugta sorszámokat tartal maz, majdnem ugyanolyan formában, mint a HDLC-nél (lásd 3.24. ábra). Ezeket a mezőket elsősorban akkor használják, amikor megbízható összeköttetésre van szükség az adatkapcsolati réteg szintjén. Ebben az esetben a 3. fejezetben tárgyaltakhoz ha sonló protokollokat használnak. Az interneten az IP-csomagok átvitelére azonban megfelel a garanciák nélküli (best-efforts) típusú átvitel is, ezért itt nincs szükség nyugtázásra az LLC szintjén. 4.3.10.
Visszatekintés az Ethernetre
Az Ethernet már majdnem három évtizede létezik, és még mindig nem akadt komoly vetélytársa, úgyhogy valószínűleg még sokáig fennmarad. Kevés processzor-architek túra, operációs rendszer vagy programozási nyelv mondhatja el magáról, hogy lassan három évtizede uralja a maga területét. Az Ethernet tehát valamit nagyon eltalált. De vajon mit? Hosszú életének legfőbb oka valószínűleg az, hogy egyszerű és rugalmas. Az „egy szerű" a gyakorlatban azt jelenti, hogy megbízható, olcsó, és könnyű karbantartani. Amióta a vámpírcsatlakozókat felváltották a BNC-csatlakozók, a hibák rendkívül ritkává váltak. Az emberek pedig kétszer is meggondolják, hogy lecseréljenek-e valamit, ami
330
SZÁMÍTÓGÉP-HÁLÓZATOK
mindig is tökéletesen működött, különösen annak a tudatában, hogy a számítógépipar ban hihetetlenül sok dolog működik nagyon gyatrán, és sok úgynevezett „továbbfejlesz tés" (upgrade) szembetűnően rosszabb annál a rendszernél, amit felváltani hivatott. Az „egyszerű" tehát olcsót is jelent. A vékony Ethernet és a sodrott érpáros kábele zés ára viszonylag kedvező és az illesztőkártyák sem kerülnek sokba. Csak az elosztók és a kapcsolók megjelenésével lett szükség jelentősebb befektetésekre, de addigra ma ga az Ethernet már jól kiépült. Az Ethernetet könnyű karbantartani. A meghajtókon (drivers) kívül nem kell más szoftvert telepíteni, és nem kell kezelni semmilyen konfigurációs táblázatot sem, amit el lehetne rontani. Az új hosztokat pedig egyszerűen csak csatlakoztatni kell, és már működnek is. Fontos érv az is, hogy az Ethernet jól együttműködik a mára egyeduralkodóvá vált TCP/IP-vel. Az IP tökéletesen illeszkedik a szintén összeköttetés nélküli Ethernethez, viszont sokkal kevésbé illik az összeköttetés alapú ATM-hez. Ez a különbözőség hatá rozottan rontotta az ATM esélyeit. Végül, az Ethernet a kritikus területeken is képes volt a fejlődésre. A sebessége több nagyságrenddel nőtt, megjelentek az elosztók és a kapcsolók, de mindezen újítá sok nem igényelték a szoftver megváltoztatását. Ha egy hálózatokkal kereskedő ügy nök megjelenik egy nagy telephelyen, és azt mondja: „Ajánlom Önnek ezt a fantaszti kus új hálózatot! Nem is kell mást tennie, mint hogy kidobja az összes hardverét, és átírja az összes szoftverét!" - nos, akkor máris bajban van, Az FDDI, a fényvezető szálas csatorna és az ATM megjelenésük idején ugyan mind gyorsabbak voltak az Ethernetnél, de nem voltak azzal kompatibilisek, ráadásul sokkal bonyolultabbak voltak, és a kezelésük is nehezebb volt. Az Ethernet pedig idővel a sebesség terén is utolérte őket, így nem is maradt több előnyük, és csendesen ki is múltak - leszámítva az ATM-et, melyet még mindig használnak mélyen a távbeszélőrendszerek belsejében.
4.4.
Vezeték nélküli LAN-ok
Az Ethernetet ugyan széles körben használják, most mégis úgy tűnik, hogy számíthat némi versenyre. A vezeték nélküli LAN-ok egyre népszerűbbek lesznek, és egyre több irodaépületben, repülőtéren és más közterületen jelennek meg. Amint azt az 1.35. áb rán láthattuk, a vezeték nélküli LAN-ok kétféle elrendezésben működhetnek: bázisál lomással vagy anélkül. Ezt a 802.1 l-es LAN-szabvány is figyelembe veszi, és mind két elrendezés ügyéről gondoskodik, ahogy azt hamarosan látni fogjuk. Az 1.5.4. szakaszban adtunk már némi háttér-információt a 802.11-ről. Most itt az ideje, hogy közelebbről is szemügyre vegyük ezt a megoldást. A következő szaka szokban megvizsgáljuk a protokollkészletet, a fizikai réteg rádiós átviteli módszereit, a MAC-alréteg protokollját, a keretszerkezetet és a szolgálatokat. A 802.11-ről bő vebb információval szolgálnak (Crow és mások, 1997; Geier, 2002; Heegard és má sok, 2001; Kapp, 2002; O'Hara és Petrick, 1999; valamint Severance, 1999) munkái. Aki pedig a legközvetlenebb forrásra kíváncsi, az tanulmányozza magát a 802.1 l-es szabványt.
331
A KÖZEGELÉRÉSI ALRÉTEG
4.4.1.
A 802.11 protokollkészlete
A 802-es szabványok összes változatának szerkezetében - beleértve az Ethernetet is van valami közös. A 4.25. ábrán a 802.11 protokollkészletének egy részletét láthatjuk. A fizikai réteg nagyjából az OSI fizikai rétegének felel meg, az adatkapcsolati réteg viszont minden 802-es protokollban két vagy több alrétegre bomlik. A 802.11 eseté ben a MAC (Médium Access Control - közegelérési alréteg) dönt a csatornakiosztás ról, vagyis arról, hogy ki lesz a soron következő adó. Fölötte található az LLC (Logical Link Control - logikai kapcsolatvezérlés) alréteg, melynek az a feladata, hogy elrejtse a különböző 802-es változatok eltéréseit, és a hálózati réteg szempontjá ból megkülönböztethetetlenné tegye őket. Az LLC-t megvizsgáltuk már ebben a feje zetben az Ethernet tárgyalásakor, az ott leírtakat itt most nem ismételjük meg. Az 1997-es 802.11 szabvány a fizikai rétegben három lehetséges átviteli módszert rögzít. Az infravörös változat nagyjából megegyezik a televíziók távirányítójában használt megoldással. A másik két változat rövid hatósugarú rádiót használ, az FHSS és a DSSS eljárások segítségével. Mindkettő olyan frekvenciatartományban működik, melyhez nincs szükség engedélyre (ez a 2,4 GHz-es ISM-sáv). A rádióvezérlésű ga rázsajtó-nyitók is ezt a tartományt használják, úgyhogy elképzelhető, hogy a hordoz ható számítógépünk egyszer csak a garázsajtónkkal találja majd magát szemben. A zsinór nélküli telefonok és a mikrohullámú sütők szintén ezt a sávot használják. Az összes ilyen berendezés 1 vagy 2 Mb/s-on működik, és elég alacsony a teljesítményük ahhoz, hogy ne zavarják egymást túlságosan. 1999-ben két új eljárást is bemutattak a nagyobb sávszélesség elérésének érdekében. Ezeket OFDM-nek és HR-DSSS-nek ne vezik, maximális átviteli sebességük pedig 54, illetve 11 Mb/s. 2001-ben megjelent egy második OFDM modulációs változat is, az elsőtől eltérő frekvenciasávban. Most
Fels
n V . Q 01 SO
Logikai kapcsolatvezérlés
m
3 1_
cö
o o a>
^ CO9-*i>
^L (TI TI
MACalréteg
i _
< 802.11 Infravörös
802.11 FHSS
802.11 DSSS
4.25, ábra. A 802.11 protokollkészlet egy részlete
802.11a OFDM
802.11b 802.11g HR-DSSS OFDM
'Öj m
fk-* LL
fli •a>
332
SZÁMÍTÓGÉP-HÁLÓZATOK
mindegyik eljárást megvizsgáljuk röviden. Műszaki szempontból ezek ugyan a fizikai réteghez tartoznak, így a 2. fejezetben kellett volna szót ejteni róluk, de olyan szoro san kötődnek általában a LAN-okhoz, és konkrétan a 802.11 MAC-alrétegéhez, hogy inkább itt tárgyaljuk ezeket.
4.4.2.
A 802.11 fizikai rétege
Mind az öt megengedett átviteli eljárás lehetővé teszi egy MAC-keretnek az egyik ál lomásról a másikra való elküldését. A különbség az ehhez felhasznált műszaki megol dásban és az elérhető sebességben van. A megoldások részletes tárgyalása messze túlmutat könyvünk keretein, de az érdeklődő olvasó számára talán a kulcsszavak em lítése és egy rövid leírás is elegendő támpontot ad például az interneten való további tájékozódáshoz. Az infravörös változat diffúz (vagyis közvetlen rálátást nem igénylő) átvitelt al kalmaz 0,85 vagy 0,95 mikronos hullámhosszal. Két sebesség lehetséges: 1 Mb/s vagy 2 Mb/s. 1 Mb/s esetén olyan kódolási sémát használnak, melyben 4 bites csoportokat kódolnak 16 bites kódszavakba, melyekben tizenöt 0 és egyetlen l-es van - ez az úgynevezett Gray kód (Gray code). Erre a kódra az jellemző, hogy egy kisebb szinkronizációs hiba csak egy bithibát okoz a kimeneten. 2 Mb/s esetén a kódolás 2 bitből állít elő 4 bites kódszavakat, melyekben szintén csak egy darab l-es van, vagyis a lehetséges kódszavak a 0001, 0010, 0100 és az 1000- Az infravörös jelek nem képe sek áthatolni a falakon, ezért a különböző helyiségekben lévő cellák jól elkülönülnek egymástól. A kis sávszélesség miatt (és amiatt, hogy a napfény elnyomja az infravörös sugarakat) mégsem népszerű ez a változat. Az FHSS (Frequency Hopping Spread Spectrtim - frekvenciaugrásos szórt spektrum) a 2,4 GHz-es ISM-sáv aljától kezdődően 79 darab 1 MHz széles csatornát használ. Az ugrások alapját képező frekvenciasorozatokat álvéletlenszám-generátor segítségével állítják elő. Ha az állomások ugyanazt a kezdőértéket (seed) használják az álvéletlenszámok előállítására, és időben szinkronban maradnak, akkor ugyanazo kat a frekvenciákat fogják egyszerre végigjárni. Az egyes frekvenciákon eltöltött, úgynevezett tartózkodási idő (dwell time) állítható paraméter, de értéke nem lehet több 400 ms-nál. Az FHSS a véletlenszerűség révén ésszerű spektrumfelhasználást biztosít a szabályozatlan ISM-sávban. Az eljárás némi biztonságot is ad, hiszen az a betolakodó, aki nem ismeri az ugrási sorozatot vagy a tartózkodási időt, nem tudja le hallgatni az átvitelt. Nagyobb távolságok áthidalásakor gondot okozhat még a többutas csillapítás (multipath fading), de az FHSS ez ellen is jó védelmet biztosít. Az eljárás viszonylag kevéssé érzékeny a rádiós interferenciára, emiatt közkedvelt az épületek közötti kapcsolatok kiépítésénél. Legfőbb hátránya a kis sávszélessége. A harmadik modulációs eljárás a DSSS (Direct Sequence Spread Spectrum közvetlen sorozatú szórt spektrum), melynek átviteli kapacitása szintén 1 vagy 2 Mb/s-ra korlátozódik. Az itt alkalmazott séma némileg hasonlít a 2.6.2. szakaszban tanulmányozott CDMA-rendszerre, de a kettő között akadnak különbségek is. Minden bitet 11 chip formájában visznek át - ezt a módszert Barker-sorozatnak (Barker sequence) nevezik. A módszer 1 Mbaud-os fázismodulációt használ: baud-onként 1
A KÖZEGELÉRÉSI ALRÉTEG
333
bitet visz át 1 Mb/s-os működésnél, és 2 bitet a 2 Mb/s-os működésnél. Az FCC éve ken át megkövetelte, hogy az Egyesült Államokban az ISM-sávban működő összes vezeték nélküli kommunikációs eszköz szórt spektrumot használjon, de 2002 májusá ban eltörölték ezt a megszorítást az új megoldások megjelenése miatt. Az első nagysebességű vezeték nélküli LAN, a 802.11a az OFDM (Orthogonal Frequency Division Multiplexing - ortogonális frekvenciaosztásos nyalábolás) eljárás segítségével akár 54 Mb/s-os átvitelre is képes a szélesebb, 5 GHz-es ISMsávban. Ahogy az FDM rövidítés is jelzi, itt különböző frekvenciákat használnak, mégpedig 52-t, ebből 48-at az adatok számára, 4-et pedig a szinkronizációhoz - ez az ADSL-re emlékeztet. Mivel egyidejűleg több frekvencián is történik átvitel, az eljárás eltér a CDMA-tól és az FHSS-től is, bár szintén a szőrt spektrum egy változatának te kinthető. A jel több, keskeny sávra való osztásának fontos előnyei vannak az egyetlen, széles sáv használatával szemben: ilyen például a jobb keskenysávú interferenciatűrés és a nem-folytonos sávok használatának lehetősége. A bonyolult kódolási rendszer 18 Mb/s-ig fázisbillentyűzésen, onnantól kezdve pedig a QAM-en alapszik. 54 Mb/s-on 216 adatbitet kódolnak 288 bites szimbólumokba. Az OFDM kifejlesztését részben az európai HiperLAN/2 rendszerrel való kompatibilitás motiválta (lásd Doufexi és má sok, 2002). Ezt az eljárást bit/Hz-ben kifejezve jó spektrumhatékonyság jellemzi, va lamint jól ellenáll a többutas csillapításnak is. Következő eljárásunk a HR-DSSS (High Rate Direct Sequence Spread Spectrum - nagysebességű közvetlen sorozatú szórt spektrum). Ez egy újabb szórt spektrum eljárás, mely 11 millió chip/s segítségével éri el a 11 Mb/s-ot a 2,4 GHz-es sávban. 802.11b-nek is nevezik, de ez nem jelenti azt, hogy a 802.11a utódja lenne valójában ezt a szabványt fogadták el elsőként, és piacra is előbb került. Négy átviteli sebességet támogat: 1, 2, 5,5 és 11 Mb/s-ot. A két kisebb sebesség 1 Mbaud-on mű ködik, baudonként 1 illetve 2 bittel, és fázisbillentyűzést használ (a DSSS-sel való kompatibilitás miatt). A két nagyobb sebesség 1,375 Mbaud-on működik, 4 illetve 8 bittel baud-onként, Walsh/Hadamard kódolás felhasználásával. Az adatátviteli se besség működés közben dinamikusan változtatható, hogy az aktuális terhelés és zajvi szonyok mellett is optimális sebességet lehessen elérni. A 802.11b működési sebessé ge a gyakorlatban szinte mindig 11 Mb/s. A 802.11b lassabb ugyan a 802.11a-nál, de 7-szer nagyobb működési tartománnyal rendelkezik, ami sok esetben fontos lehet. Az IEEE-nek sok fejtörést okozott, hogy melyik szabadalmaztatott megoldást használja, míg végül 2001 novemberében elfogadta a 802.11b továbbfejlesztett válto zatát, a 802.11g-t. Ez a 802.1 la OFDM modulációs eljárását használja, de a 802.11bhez hasonlóan ez is a szűkebb 2,4 GHz-es ISM-sávban működik. Az adatátviteli se besség elméletileg akár az 54 Mb/s-ot is elérheti, de azt még nem tudni, hogy vajon a gyakorlatban is kivitelezhető lesz-e ez a sebesség. Az viszont már biztos, hogy a 802.1 l-es bizottság három különböző nagysebességű vezeték nélküli LAN tervezetét dolgozta ki: a 802.1 la-t, a 802.1 lb-t és a 802.1 lg-t (nem is beszélve a három, kis se bességű vezeték nélküli LAN-ról). Jogos a kérdés, hogy egy szabványosítási bizott ságnak vajon bölcs dolog-e ilyet tennie. Lehet, hogy a három volt a szerencseszámuk.
334
4.4.3.
SZÁMÍTÓGÉP-HÁLÓZATOK
A 802.11 MAC alrétegének protokollja
Térjünk most vissza a villamosmérnököktől az informatika földjére! A 802.11 MAC alrétegének protokollja meglehetősen eltér az Ethernet megfelelő protokolljától, kö szönhetően a vezeték nélküli környezet sajátos bonyolultságának. Egy Ethernet állomás egyszerűen csak addig vár, amíg a közegen csend nem lesz, aztán elkezd adni. Ha nem jut vissza hozzá zajlöket az első 64 bájt ideje alatt, akkor szinte biztos lehet benne, hogy a keret hibátlanul célba ért. A vezeték nélküli esetben ez a megközelítés már nem állja meg a helyét. Először is ott van a korábban említett rejtett állomás problémája, melyet a 4.26.(a) ábra szemléltet újból. Mivel nem minden állomás tartózkodik az összes többi vétel körzetében, ezért egy cella egyik felében folyó adásokat nem biztos, hogy a cella má sik részében is venni tudják. Példánkban a C állomás ad a fi állomásnak. Ha A bele hallgat a csatornába, nem fog hallani semmit, amiből azt a téves következtetést vonja le, hogy elkezdhet a B-nek adni. Ehhez még hozzájön a fordított eset, a látható állomás problémája, melyet a 4.26.(b) ábra szemléltet. Itt a B akar küldeni a C-nek, ezért belehallgat a csatornába. Azt hallja, hogy éppen átvitel folyik, ezért tévesen arra következtet, hogy nem küldhet a C-nek, pedig lehet, hogy az A éppen a (képen nem látható) D-nek ad. A legtöbb rá dió ráadásul fél-duplex, vagyis nem képes egyidejűleg ugyanazon a frekvencián adni és a zajlöketeket is venni. Mindezen problémák miatt a 802.11 az Ethernettel ellentét ben nem használ CSMA/CD-t. A kérdés kezelésének érdekében a 802.11 két működési módot támogat. Az elsőt DCF-nek (Distributed Coordination Function - elosztott koordinációs funkció) nevezik. Ez nem használ semmilyen központi vezérlést (e tekintetben hasonlít az Ethernetre). A másik, a PCF (Point Coordination Function - pont koordinációs funkció) viszont a bázisállomás segítségével minden tevékenységet vezérel a cellá ban. A DCF-et minden megvalósításnak támogatnia kell, míg a PCF opcionális. Mi most sorban mindkettőt megtárgyaljuk. A állomás B-nek szeretne adni, de nem hallja, hogy B foglalt
B állomás C-nek szeretne adni, de tévesen azt hiszi, hogy az átvitel sikertelen lesz
(a) 4.26. ábra. (a) A rejtett állomás problémája,
(b) (b) A látható állomás
problémája
335
A KÖZEGELÉRÉSI ALRÉTEG
DCF alkalmazása esetén a 802.11 egy CSMA/CA (CSMA with Collision Avoidance - CSMA ütközéselkerüléssel) nevű protokollt használ. Ebben fizikai és virtuális csatornaérzékelést is használnak. A CSMA/CA kétféle működési módot tá mogat. Az elsőben, ha egy állomás adni akar, akkor belehallgat a csatornába. Ha az szabad, akkor egyszerűen elkezd adni. Az adó nem figyeli a csatornát adás közben, hanem csak leadja a teljes keretet, ami lehet, hogy a vevőnél megsemmisül az ottani interferencia miatt. Ha viszont foglalt a csatorna, akkor az adó megvárja, míg szabad lesz, és csak akkor kezd adni. Ha ütközés történik, akkor az ütközésben érintett állo mások az Ethernet kettes exponenciális algoritmusa által meghatározott véletlenszerű ideig várnak, majd újból próbálkoznak. A CSMA/CA másik működési módja a MACAW-n alapszik, és virtuális csatorna érzékelést használ, amint azt a 4.27. ábra mutatja. Ebben a példában A szeretne külde ni 5-nek. A C állomás az A vételkörzetében van (és esetleg a B vételkörzetében is, de ez most nem számít). A D állomás a B vételkörzetén belül, de az A vételkörzetén kívül helyezkedik el. A protokoll működése azzal kezdődik, hogy A úgy dönt, adatokat szeretne küldeni B-nek. Először egy RTS-keretet küld B-nek, hogy engedélyét kérje egy keret elküldé séhez. Amikor B vette ezt a kérést, akkor úgy dönthet, hogy megadja az engedélyt ekkor egy CTS-keretet küld vissza. A CTS vétele után A elküldi a keretét, és elindít egy ACK-idó'zító't. Az adatkeret helyes vételét követően B egy ACK-kerettel válaszol, ezzel véget vet az üzenetváltásnak. Ha az A ACK-időzítője lejár, mielőtt az ACK megérkezne hozzá, akkor az egész eljárást megismétlik. Vizsgáljuk most meg ezt az üzenetváltást a C és a D szemszögéből! A C az A vé telkörzetén belül tartózkodik, tehát megkaphatja az RTS-keretet. Ha ez történik, akkor rájön, hogy valaki nemsokára adatokat fog küldeni, így mindannyiuk érdekében eláll adási szándékától, amíg az üzenetváltás véget nem ér. Az RTS-kérésben megadott in formációból kikövetkeztetheti, hogy meddig fog tartani az üzenetsor, beleértve a vég ső ACK-ot is, így foglaltra állíthat magának egyfajta virtuális csatornát, melyet a NAV (Network Allocation Vector - hálózatkiosztási vektor) mutat a 4.27. ábrán. A D nem hallja az RTS-t, de a CTS-t igen, tehát az is beállíthatja magának a /VAV-jelet. Ne felejtsük el, hogy a TVAV-jeleket nem adják le: azok csupán belső emlékeztetőként szolgálnak, hogy az állomás bizonyos ideig csendben maradjon.
A B
| RTS
Adat
ACK
CTS •
NAV
C
n
r
NAV Idő
4.27. ábra. A virtuális csatornaérzékelés használata CSMA/CA-val
336
SZÁMÍTÓGÉP-HÁLÓZATOK
A vezetékes hálózatokkal szemben a vezeték nélküliek zajosak és megbízhatatla nok, ami nem kis részben a mikrohullámú sütőknek köszönhető, melyek szintén a nem engedélyköteles ISM-sávban működnek. Ennek következtében egy keret sikeres át haladásának annál kisebb az esélye, minél hosszabb. Ha bármelyik bit meghibásodá sának valószínűsége p, akkor egy n bites keret helyes vételének valószínűsége (1 -pf. Ha például p = 10"4, akkor egy teljes Ethernet-keret (12 144 bit) helyes vételének va lószínűsége kisebb, mint 30%. Ha/? - 10"5, akkor 9 keretből körülbelül egy lesz sérült. A keretek több mint 1%-a még akkor is megsérül, hap = 10~6, ami másodpercenként majdnem tucatnyi hibás keretet eredményez, sőt többet, ha a maximálisnál rövidebb kereteket használunk. Összességében: hogy ha egy keret túl hosszú, akkor nagyon kevés esélye van arra, hogy sértetlenül eljut a céljához, és valószínűleg újra kell majd adni. A zajos csatornák kezelésének érdekében a 802.11 lehetővé teszi, hogy a kereteket kisebb részekre darabolják, és minden résznek saját ellenőrző összege legyen. A ré szeket egyenként számozzák és nyugtázzák a megáll-és-vár protokoll segítségével (vagyis az adó addig nem adja le a (k + 1). részt, amíg meg nem kapja a k. rész nyug táját). Ha az adó az RTS és CTS használatával megszerezte a csatornát, akkor egymás után több részt is elküldhet, amint azt a 4.28. ábra mutatja. A részek sorozatát rész löketnek (fragment burst) nevezik. A részekre tördelés azáltal növeli az átbocsátóképességet, hogy az újraadásokat a teljes keret helyett a hibás részekre korlátozza. A szabvány nem rögzíti a részek mé retét, hanem ez minden cellában paraméterként szerepel, melyet a bázisállomás állít be. A NAV-eljárás csak azt biztosítja, hogy a többi állomás a következő nyugtáig csendben maradjon, de más eljárások (lásd később) segítségével egy teljes rész-löket elküldhető ütközések nélkül. Minden, amit eddig említettünk, a 802.11 DCF üzemmódjára vonatkozik. Ebben a módban nincs központi vezérlés, és az állomások versengenek az adásidőért, akárcsak az Ethernetnél. A másik lehetséges üzemmód a PCF, melyben a bázisállomás körbe kérdezi a többi állomást, hogy van-e elküldésre váró keretük. Mivel az átvitelt itt tel jes egészében a bázisállomás vezérli, sohasem történik ütközés. A szabvány leírja a körbekérdezés menetét, de nem szabja meg annak gyakoriságát, sorrendjét, sőt azt sem, hogy minden állomásnak egyenlő kiszolgálásban kell-e részesülnie. Részlöket RTS
1. rész CTS
2 rész ACK
••
NAV
NAV Idő
4.28. ábra. Részlöket
3. rész ACK
ACK
337
A KÖZEGELÉRÉSI ALRÉTEG
A bázisállomás alapvetően azt az eljárást követi, hogy periodikusan (másodpercen ként 10-100 alkalommal) lead egy jelzőfény-keretet (beacon frame). A jelzőfénykeret olyan rendszerparamétereket tartalmaz, mint például az ugrási sorozatok és a tartózkodási idő (az FHSS számára), az óraszinkronizáció stb. Ez a keret hívja meg az új állomásokat is, hogy csatlakozzanak a körbekérdezési szolgáltatáshoz. Ha egy ál lomás feliratkozik a körbekérdezésre egy adott sebességgel, akkor gyakorlatilag ga rantáltan megkapja a sávszélesség egy adott hányadát, és ezáltal szolgálatminőségi ga ranciákat is kaphat. Az akkumulátorok élettartama mindig is gondot jelentett a vezeték nélküli eszközök nél, ezért a 802.11 a teljesítménygazdálkodásra is gondot fordít. A bázisállomás törté netesen arra is utasíthatja a mozgó állomást, hogy menjen készenléti állapotba, amíg a bázisállomás vagy a felhasználó explicite fel nem ébreszti. Ez ugyanakkor azzal jár együtt, hogy a bázisállomás felelős a készenléti állapotban lévő állomásnak szánt keretek puffereléséért. Ezek a keretek egy későbbi időpontban kerülnek leszállításra. A PCF és a DCF egy cellán belül is működhet egyszerre. Első hallásra képtelen ségnek tűnhet ugyan, hogy egyszerre működjön a központi és az elosztott vezérlés, de a 802.11 erre is ad megoldást. Az ötlet az, hogy gondosan definiálni kell a keretek közti időintervallumot. Az egyes keretek elküldése után tehát egy bizonyos holtidő szükséges, mielőtt bármelyik állomás újra adásba kezdhet. Négy ilyen intervallumot rögzítettek, mindegyiket egy adott célra. Az intervallumokat a 4.29. ábra mutatja be. A legrövidebb intervallum a SIFS (Short InterFrame Spacing - rövid keretek közti időköz). Ez lehetővé teszi, hogy a rövid párbeszédet folytató felek lehessenek az elsők. Ez magában foglalja azt is, hogy a vevő elküldhet egy CTS-keretet az RTS-re válaszul, elküldhet egy ACK-ot a rész-keretre vagy a teljes keretre vonatkozóan, a rész-löket adója pedig leadhatja a következő részt anélkül, hogy újból RTS-t kellene küldenie. Egy SIFS-intervallum után mindig pontosan egy állomás jogosult a válaszadásra. Ha ez nem tudja kihasználni ezt a lehetőséget, és eltelik a PIFS (PCF InterFrame Spacing - PCF-keretek közti időköz) által meghatározott idő, akkor a bázisállomás elküldhet egy jelzőfény vagy egy lekérdező keretet. Ez a módszer lehetővé teszi, hogy az adatkeretet vagy részsorozatot küldő állomás a keret végére érjen anélkül, hogy Itt lehet elküldeni a vezérlőkeretet vagy a következő részkeretet / ^SIFS-*/ •PIFS—H -DIFS-
Itt lehet elküldeni a PCF-kereteket Itt lehet elküldeni a DCF-kereteket / Itt kezdődhet a hibás / keretek javítása -EIFS-
ACK Idő 4.29. ábra. A keretek közti időfelosztása a 802.1 l-ben
SZÁMÍTÓGÉP-HÁLÓZATOK
338
bárki is az útjába állna. Ugyanakkor a bázisállomásnak is lehetősége nyílik magához ragadni a csatornát, ha az előző adó készen van, mégpedig anélkül, hogy a mohó fel használókkal versengenie kellene. Ha a bázisállomásnak sincs mondanivalója, és eltelik a DIFS (DCF InterFrame Spacing - DCF-keretek közti időköz) ideje, akkor bármely állomás megpróbálhatja megszerezni a csatornát egy új keret elküldésére. Itt a szokásos versengési szabályok érvényesek, és a kettes exponenciális visszalépés használható, ha ütközés történik. Az utolsó időközt, az EIFS-t (Extended InterFrame Spacing - kiterjesztett ke retek közti időköz) csak olyan állomások használják, melyek épp egy hibás vagy is meretlen keretet vettek, és ezt kívánják jelenteni. Azért kapta ez az esemény a legala csonyabb prioritást, mert elképzelhető, hogy a vevőnek fogalma sincs arról, hogy mi történik, ebben az esetben pedig egy jó ideig célszerű várakoznia, hogy ne zavarjon meg egy másik két állomás között folyó párbeszédet.
4.4.4.
A 802.11 keretszerkezete
A 802.11 szabvány három különböző keretosztályt definiál: adat-, vezérlő- és me nedzsmentkereteket. Mindegyiknek saját fejrésze van, különböző mezőkkel, melyeket a MAC-alrétegben használnak. Ezenfelül vannak olyan fejrészek is, melyeket a fizikai réteg használ, de ezek többnyire az alkalmazott modulációs eljárással foglalkoznak, így ezeket most nem tárgyaljuk itt. Az adatkeret felépítését a 4.30. ábra mutatja. Az első mező a Keretvezérlés (Frame Control). Csak ennek 11 almezője van. Ezek közül az első a Protokollverzió (Protocol Version), mely lehetővé teszi, hogy ugyanannak a protokollnak két különböző válto zata is működhessen egyszerre ugyanabban a cellában. Ezt követik a Típus (Type) (adat, vezérlés vagy menedzsment) és az Altípus (Subtype) mezők (pl. RTS vagy CTS). A DS-hez (To DS) és a DS-től (From DS) bitek azt jelzik, hogy a keret egy cel lák közti elosztó rendszer (intercell distribution system, ilyen pl. az Ethernet) felé tart, vagy onnan érkezett. Az MF (more fragments) bit azt jelenti, hogy további részek kö vetkeznek még. Az Újraküldés (Retry) bit egy előzőleg már elküldött keret újraküldését jelzi. A Teljesítménygazdálkodás (Power management) bitet a bázisállomás hasz nálja, hogy annak segítségével készenléti állapotba vigye a vevőt, vagy hogy éppen kihozza abból. A Több (More) bit arra utal, hogy az adónak további keretei vannak a Bájtok I
4. Keret 1. 2. Idő 3. Sor vezérlés tartam cím cím cím szám cím I
Bitek
0-2312 ss Adat <s
• 1
Ellenőrző összeg
2 2 4 1 1 1 1 "~r- - 1 ~ . . . 1 1 Telj. Protokoll Típus Al DS- DS- Újra típus hez től küldés MF gazd. Több W 0 Keretvezérlés verzió
4.30. ábra. A 802.11 keretszerkezete
A KÖZEGELÉRÉSI ALRÉTEO
339
vevő számára. A W bit azt adja meg, hogy keret törzsét a WEP- (Wired Equivalent Privacy - vezetékessel egyenértékű biztonság) algoritmussal titkosították-e. Végül az O (in order) bit azt közli a vevővel, hogy az ilyen bitet hordozó keretek sorozatát szigorúan sorrendben kell feldolgozni. Az adatkeret második mezője az Időtartam (Duration) mező, mely azt adja meg, hogy a keret és a hozzá tartozó nyugta mennyi ideig fogja lefoglalni a csatornát. Ezt a mezőt a vezérlőkeretek is tartalmazzák, ennek segítségével kezeli a többi állomás a NAV-eljárást. A keret fejrészében négy cím is található, mind a szabványos IEEE 802 formátumnak megfelelően. A forrás- és célcímre nyilván szükség van, de mire szolgál a másik kettő? Ne feledjük, hogy a keretek beléphetnek egy cellába, vagy el is hagy hatják azt egy bázisállomás révén. A másik két cím tehát a cellák között haladó for galom számára adja meg a forrás és cél bázisállomás címét. A Sorszám (Sequence) mező a részek sorszámozását teszi lehetővé. A 16 rendelke zésre álló bitből 12 a keretet, 4 pedig a keretdarabot azonosítja. Az Adat (Data) mező tartalmazza a legfeljebb 2312 bájtnyi felhasználói adatot, melyet a szokásos Ellenőrző összeg (Checksum) követ. A menedzsmentkeretek felépítése hasonlít az adatkeretekére, azzal a különbséggel, hogy itt hiányzik az egyik bázisállomás-cím, mert a menedzsment keretek csak cellán belül használhatók. A vezérlőkeretek még ennél is rövidebbek: csak egy vagy két címet tartalmaznak, és nincs bennük sem Adat, sem Sorszám mező. A legfontosabb informáci ót itt az Altípus (Subtpye) mező hordozza: tartalma általában RTS, CTS vagy ACK lehet.
4.4.5.
Szolgálatok
A 802.11 szabvány kimondja, hogy minden szabványos vezeték nélküli LAN-nak ki lenc szolgálatot kell nyújtania. Ezeket két kategóriába sorolják: az egyikben öt elosz tási, a másikban négy állomás-szolgálat található. Az elosztási szolgálatok a cellatag ság kezelésével, valamint a cellán kívüli állomásokkal való kommunikációval kap csolatosak. Az állomás-szolgálatok ezzel szemben az egy cellán belül zajló tevékeny séggel foglalkoznak. Az öt elosztási szolgálatot a bázisállomások nyújtják. Ezek a szolgálatok a cellákat elhagyó és az oda belépő állomások mozgásával, illetve a bázisállomásokhoz való kapcsolódásukkal kapcsolatosak. Az öt szolgálat a következő: 1. Kapcsolódás. A mozgó állomások ennek a szolgálatnak a segítségével kapcsolód hatnak a bázisállomásokhoz. Erre rendszerint azt követően kerül sor, hogy egy ál lomás belépett a bázisállomás adáskörzetébe. A megérkezés után az állomás közli kilétét és képességeit. A képességek többek közt a támogatott adatsebességeket, a PCF-szolgálatok (azaz a lekérdezés) iránti igényt és a teljesítménygazdálkodási igényeket takarják. A bázisállomás befogadhatja, de vissza is utasíthatja a mozgó állomást. Befogadás esetén az állomásnak azonosítania kell magát. 2. Szétkapcsolás. A szétkapcsolást, azaz a kapcsolat bontását mind a mozgó, mind pedig a bázisállomás kezdeményezheti. A mozgó állomás a kikapcsolás vagy a tá-
340
SZÁMÍTÓGÉP-HÁLÓZATOK
vozás előtt használja ezt a szolgálatot, de a bázisállomás is használhatja karbantar tás miatti lekapcsolást megelőzően. 3. Újrakapcsolódás. Ezzel a szolgálattal az állomások kiválaszthatják az általuk előnyben részesített bázisállomást. Ez a lehetőség az egyik cellából a másikba lépő állomások számára hasznos. Ha helyesen használják, akkor a cellaváltás során nem vesznek el adatok. (Persze az Ethernethez hasonlóan a 802.11 sem képes garanciá kat nyújtani.) 4. Szétosztás. Ez a szolgálat azt határozza meg, hogy hogyan kell a bázisállomáshoz beérkező keretek forgalomirányítását elvégezni. Ha a célállomás a bázisállomás körzetében van, akkor a kereteket közvetlenül a rádiós összeköttetésen keresztül lehet továbbítani; egyébként a vezetékes hálózaton kell. 5. Integráció. Ha egy keretet egy nem 802.1 l-es hálózaton kell keresztülvinni, mely nek eltérő a címzési sémája vagy a keretformátuma, akkor ennek a szolgálatnak a segítségével lehet megoldani a 802.11 formátumról a célhálózat által megkövetelt formátumra való átalakítást. A maradék négy szolgálat az egy cellán belüli tevékenységekkel kapcsolatos. Ezeket azt követően használják, hogy a kapcsolódás megtörtént. A szolgálatok a következők: 1. Hitelesítés. A vezeték nélküli kommunikációba mind adóként, mind vevőként könnyedén beavatkozhatnak az arra nem jogosult állomások, ezért minden állo másnak hitelesítenie kell magát, mielőtt adatokat küldhetné. Miután a mozgó állo más kapcsolódott egy bázisállomáshoz (azaz befogadták a cellába), a bázisállomás elküld neki egy speciális kihívás keretet (challenge frame), hogy meggyőződjön ar ról, hogy a mozgó állomás ismeri a neki kiosztott titkos kulcsot (jelszót). A mozgó állomás ezt azzal igazolja, hogy kulcsával titkosítja a kihívás keretet, és visszaküldi azt a bázisállomásnak. Ha az eredmény helyes, akkor a mozgó állomás teljes körű jogosultságokhoz jut az adott cellában. Az eredeti szabvány szerint a bázisállomás nak nem kell igazolnia kilétét a mozgó állomások előtt, de már ennek a hiányos ságnak a kijavítása is folyamatban van. 2. Hitelesítés megszüntetése. Ha egy előzőleg hitelesített állomás el akarja hagyni a háló zatot, akkor a hitelesítését megszüntetik. Ezután már nem használhatja a hálózatot. 3. Bizalmasság (Privacy). A vezeték nélküli LAN-okon átküldött információk bi zalmas jellege miatt titkosítani kell azokat. Ez a szolgálat kezeli a titkosítást és a visszafejtést. A titkosítási algoritmust az RC4 írja le, melyet Ronald Rivest fej lesztett ki az M.I.T.-n. 4. Adatok kézbesítése. A végső cél mindenképpen az adatok átvitele, ezért termé szetesen a 802.11 is módot ad az adatok elküldésére és vételére. A 802.11 azonban az Ethernet mintájára készült, az átvitel pedig az Ethernet esetében sem 100%-ig megbízható, ezért erre a 802.11 sem vállal garanciát. A hibák észlelésének és javí tásának terhe tehát a magasabb rétegekre hárul.
A KÖZEGELÉRÉSI ALRÉTEG
341
A 802.1 l-es cellák rendelkeznek bizonyos paraméterekkel, melyeket egyes esetek ben szabályozni is lehet. Ezek a titkosítással, az időzítési intervallumokkal, az adatát viteli sebességekkel, a jelzőfények gyakoriságával stb. kapcsolatosak. A 802.11-en alapuló vezeték nélküli LAN-ok telepítése szerte a világon megkez dődött az irodaépületekben, repülőtereken, hotelekben, éttermekben és egyetemeken. Ez a terület várhatóan gyors fejlődésen fog átmenni. A CMU-n történt átfogó 802.11 telepítések tapasztalatairól (Hills, 2001) munkája számol be.
4.5.
Szélessávú vezeték nélküli hálózatok
Eleget voltunk már a négy fal között. Itt az ideje, hogy kimenjünk a szabadba, és megnézzük, hogy történik-e valami érdekes hálózati fejlesztés odakint. Mint kiderül, nem kis dolgok történnek ott is, és ezek közül némelyik az úgynevezett utolsó kilo méterrel kapcsolatos. A távbeszélőrendszer liberalizációja után sok országban a ko rábban monopolhelyzetben lévő szolgáltató versenytársai is engedélyt kaptak helyi beszédcélú szolgáltatások és nagysebességű internetszolgáltatások nyújtására. A ke reslet kétségkívül jelentős. A gond csak az, hogy egy fényvezető szálat vagy koaxiális kábelt, de még egy 5-ös kategóriájú sodrott érpárt is megfizethetetlenül drága lenne elvezetni több millió háztartáshoz. Mit tehet ilyenkor egy új piaci szereplő? A megoldást a szélessávú vezeték nélküli hálózatok jelentik. Sokkal egyszerűbb és olcsóbb felállítani egy nagy antennát egy városszéli dombon, és erre néző antennákat szerelni az előfizetők tetőire, mint árkokat ásni és kábeleket fektetni. Az újonnan be lépő távközlési társaságoknak tehát komoly érdekük fűződik a több megabites vezeték nélküli beszéd-, internet-, hálózati videó stb. szolgáltatásokhoz. Amint azt a 2.30. áb rán már láthattuk, az LMDS-t pont erre a célra találták ki. Egészen a közelmúltig azonban minden hordozóhoz saját rendszert fejlesztettek ki. A szabványok hiánya vi szont azt eredményezte, hogy a hardvereket és szoftvereket nem lehetett tömegterme léssel előállítani, ezáltal az árak magasak, az elfogadottság pedig alacsony maradt. Az iparban sokan jutottak el addig a felismerésig, hogy egy szélessávú vezeték nélküli szabvány jelenti a hiányzó kulcsfontosságú elemet, ezért az IEEE felkérést ka pott, hogy alakítson bizottságot az ágazat vezető vállalatainak és kutatóinak közremű ködésével a szabvány kidolgozására. A 802-es számtérben a következő szabad szám a 802.16 volt, ezt a számot kapta tehát a szabvány. A munka 1999 júliusában kezdődött, és 2002 áprilisában fogadták el a végső szabványt, melynek hivatalos neve „Rádiós interfész a telepített vezeték nélküli szélessávú hozzáférési rendszerek számára". Egyesek azonban inkább vezeték nélküli MAN-nak (wireless metropolitan area network) vagy vezeték nélküli helyi huroknak (wireless local loop) nevezik. Mi ezeket az elnevezéseket egyenértékűnek tekintjük. Néhány másik 802-es szabványhoz hasonlóan a 802.16-ra is nagy hatással volt az OSI modell, annak (al)rétegeivel, terminológiájával, szolgálati primitívjeivel és egyéb elemeivel együtt. Sajnos az OSI-hoz hasonlóan ez a szabvány is elég bonyolultra sike rült. A következő szakaszokban rövid leírást adunk a 802.16 legfontosabb tulajdon-
342
SZÁMÍTÓGÉP-HÁLÓZATOK
ságairól, de leírásunk közel sem lesz teljes és sok részletre nem tér ki. A szélessávú vezeték nélküli kommunikáció általános kérdéseiről (Bolcskei és mások, 2001; vala mint Webb, 2001) műveiből tájékozódhatunk, magáról a 802.16-ról pedig (Eklund és mások, 2002) írása ad bővebb felvilágosítást.
4.5.1.
A 802.11 és a 802.16 összehasonlítása
Ezen a ponton az olvasó azt kérdezheti magától: minek kidolgozni egy újabb szab ványt. Miért nem elég a 802.11? Nos, van néhány elég nyomós érv a 802.11 haszná lata ellen, elsősorban az, hogy a 802.11-et és a 802.16-ot más problémák megoldására szánták. Mielőtt belemerülnénk a 802.16 technikai részleteibe, célszerű pár szót ejte nünk arról, hogy egyáltalán miért is van szükség új szabványra. A 802.11 és a 802.16 bizonyos mértékig hasonló környezetben működnek, főleg a tekintetben, hogy mindkettőt nagy sávszélességű vezeték nélküli kommunikációra tervezték. Vannak azonban köztük fontos különbségek is. Először is, a 802.16 épüle tek számára nyújt szolgáltatásokat, márpedig az épületek nem mozognak, legalábbis nem mondhatjuk el azt, hogy túl gyakran vándorolnának egyik cellából a másikba. A 802.11 nagy része a mozgással foglalkozik, annak pedig itt nincs jelentősége. Másod szor, az épületekben egynél több számítógép is lehet, ilyen bonyodalmak viszont nem lépnek fel ott, ahol a célállomást egyetlen hordozható számítógép jelenti. Az épületek tulajdonosai ugyanakkor sokkal több pénzt tudnak áldozni a kommunikációs eszkö zökre, mint a hordozható számítógépek tulajdonosai, ezért itt jobb rádiókat is lehet al kalmazni. Ez azt jelenti, hogy a 802.16-nál duplex kommunikáció használható - erről a 802.1 l-nek le kellett mondania, hogy alacsonyan tarthassa a rádiók költségét. A 802.16 egész városrészeket, vagyis több kilométeres távolságokat ível át, ezért a bázisállomáson vett jel teljesítménye a különböző adók esetében erős szórást mutathat. Ez a szórás a jel/zaj viszonyra is hatással van, ami azt jelenti, hogy többféle moduláci ós eljárásra van szükség. A biztonság és a bizalmasság pedig a város feletti nyílt kom munikáció miatt alapvetően fontos és elengedhetetlen követelménynek számítanak. Ehhez még az is hozzájön, hogy itt az egyes cellákban sokkal több felhasználóra lehet számítani, mint a 802.1 l-es celláknál, ráadásul ezek a felhasználók valószínűleg több sávszélességet fognak igénybe venni, mint a tipikus 802.11 felhasználók. Ha be legondolunk, nemigen láttunk még olyat, hogy egy vállalatnál behívnak 50 dolgozót egy terembe, hogy megnézzék, telítésbe tudják-e vinni a 802.1 l-es hálózatot azzal, ha 50 különböző filmet néznek a laptopjaikon egyszerre. Több sávszélességre van tehát szükség, mint amennyit az ISM-sáv nyújtani tudna, ezért a 802.16 a sokkal magasabb 10-66 GHz-es tartományban kényszerül működni, mert ez az egyetlen hely, ahol van még kihasználatlan spektrum. Csakhogy ezeknek a milliméteres hullámhosszú hullámoknak a fizikai sajátosságai is eltérnek a nagyobb hullámhosszú ISM-sávok hullámaitól, emiatt pedig egy teljesen más fizikai rétegre van szükség. A milliméteres hullámok egyik jellemzője, hogy nagyon jól elnyeli őket a víz (főként az eső, de bizonyos mértékig a hó és a jégeső, sőt, ha az embernek nincs szerencséje, még egy nagyobb köd is). A hibakezelésnek következés képp sokkal nagyobb szerep jut, mint egy épületen belüli környezetben. A milliméte-
A KÖZEGELÉRÉSI ALRÉTEG
343
res hullámokat irányított sugarakba lehet fókuszálni (a 802.11 mindenirányú), így a 802.11 által a többutas terjedés miatt megtett lépések itt mindenképpen vitathatók. Kérdést jelent a szolgálatminőség is. A 802.11 nyújt ugyan némi támogatást a va lós idejű forgalom számára (a PCF-mód használatával), de igazából nem a telefónia és a nagymértékű multimédiás igénybevétel céljára tervezték. A 802.16-nál viszont ko moly elvárást jelent az ilyen alkalmazások támogatása, hiszen azt mind lakossági, mind üzleti felhasználásra szánták. Röviden szólva, a 802.11-et mozgó Ethernetnek, a 802.16-ot pedig vezeték nélküli, de mégis helyhez kötött kábeltelevíziónak tervezték. Mivel ilyen számottevő különb ségekről van szó, az így kapott szabványok is jelentősen eltérnek egymástól, hiszen különböző dolgokat próbálnak optimalizálni. Érdemes még egy nagyon rövid összehasonlítást végezni a mobiltelefon-rendsze rekkel is. Mobiltelefon alatt keskenysávú, beszédorientált, alacsony teljesítményű, mozgó állomást értünk, mely közepes hullámhosszú mikrohullámok segítségével kom munikál. Senki nem néz nagyfelbontású, két órás filmeket GSM telefonokon (leg alábbis egyelőre). Még az UMTS révén sincs sok remény arra, hogy ez a helyzet meg változzon. Egyszóval: a vezeték nélküli MAN világa sokkal több követelményt tá maszt, mint a mobiltelefonok világa, ezért itt egy teljesen más rendszerre van szükség. Az jó kérdés, hogy vajon a 802.16-ot mozgó eszközökkel is lehet-e majd használni ajövőben. A szabványt ugyan nem ezekre optimalizálták, de a lehetőség még adott. Egyelő re azonban maradjunk a helyhez kötött vezeték nélküli kommunikációnál.
4.5.2.
A 802.16 protokollkészlete
A 802.16 protokollkészletét a 4.31. ábra szemlélteti. Az általános felépítés hasonlít a többi 802-es hálózat felépítésére, de itt több alréteg van. A legalsó alréteg az átvitelért felelős: itt hagyományos keskenysávú rádiót használnak a szokásos modulációs eljárá sokkal. A fizikai átviteli réteg felett a konvergencia alréteg következik, mely elrejti a különböző technológiákat az adatkapcsolati réteg elől. Tulajdonképpen a 802.11-ben is van valami ilyesmi, de ott a bizottság úgy döntött, hogy nem formalizálja azt egy OSI-típusú névvel. Már folyamatban van két új fizikai rétegbeli protokoll kifejlesztése is, bár a 4.31. ábrára ezek még nem kerültek rá. A 802.16a szabvány a 2-től 11 GHz-ig terjedő sáv ban fogja támogatni az OFDM-et, a 802.16b pedig az 5 GHz-es ISM-sávban fog mű ködni. Mindkét elgondolás a 802.1 l-hez való közeledésre tesz kísérletet. Az adatkapcsolati réteg három alrétegből áll. A legalsó a bizalmassággal (privacy) és a biztonsággal foglalkozik, ami a nyilvános szabadtéri hálózatokban még inkább kritikus tényező, mint a beltéri magánhálózatokban. Ez az alréteg felelős a titkosítá sért és a visszafejtésért, valamint a kulcsok kezeléséért. A következő a MAC-alréteg közös része. Itt helyezkednek el a legfontosabb proto kollok, mint például a csatornakezelés. A modell szerint a bázisállomás irányítja a rendszert. Ez nagyon hatékonyan képes ütemezni a lefelé irányuló (azaz a bázisállo mástól az előfizető felé haladó v. downstream) csatornákat, és központi szerepet ját szik a felfelé irányuló (az előfizetőtől a bázisállomás felé haladó v. upstream) csator-
344
SZÁMÍTÓGÉP-HÁLÓZATOK
Felsőbb rétegek Szolgálattól függő konvergencia alréteg Adatkapcsolati réteg
MAC-alréteg közös része Biztonsági alréteg Átviteli konvergencia alréteg Fizikai közegtől í függő alréteg 1
QPSK
QAM-16
QAM-64
Fizikai réteg
4.31. ábra. A 802.16 protokollkészlete nák kezelésében is. A MAC-alrétegnek a többi 802-es hálózattal ellentétben itt meg van az a szokatlan tulajdonsága is, hogy teljesen összeköttetés alapú, mégpedig azért, hogy megfelelő szolgálatminőségi garanciákat tudjon nyújtani a telefónia és a multi média-alkalmazások részére. A szolgálattól függő konvergencia alréteg a többi 802-es protokoll logikai kapcso latokért felelős alrétegét hivatott helyettesíteni. A feladat itt az, hogy csatlakozási fe lületet kell nyújtani a hálózati réteg számára. Ennek a nehézségei abból fakadnak, hogy a 802.16-ot arra tervezték, hogy minden további nélkül képes legyen mind a datagram protokollokkal (pl. PPP, IP és Ethernet), mind az ATM-mel együttműködni - csakhogy a datagram protokollok összeköttetés nélküliek, míg az ATM összekötte tés alapú. Ez azt jelenti, hogy minden ATM-összeköttetést egy 802.16 összeköttetésre kell leképezni, ami elvileg kézenfekvő dolog. De melyik 802.16 összeköttetésre kell vajon leképezni egy beérkező IP-csomagot? Ezzel a kérdéssel foglalkozik ez az alréteg.
4.5.3.
A 802.16 fizikai rétege
Mint már említettük, a szélessávú vezeték nélküli átvitelhez széles spektrum szüksé ges, azt pedig csak a 10-től 66 GHz-ig terjedő sávban lehet találni. Ezeknek a milli méteres hullámoknak van egy olyan különös tulajdonságuk, mellyel a hosszabb mik rohullámok már nem rendelkeznek: a fényhez hasonlóan, de a hangtól eltérően egye nes vonalban terjednek. A bázisállomásnak következésképp több antennája van, és mindegyik környezete egy-egy szektora felé mutat, amint azt a 4.32. ábra mutatja. Minden szektornak megvannak a saját felhasználói, és az egyes szektorok lényegében szomszédjaiktól függetlenül működnek. A cellás rádióra mindez nem igaz, mert ott a terjedés mindenirányú (omnidirectional). Mivel a milliméteres sávban a bázisállomástól távolodva a jelek intenzitása erősen csökken, ezért a távolsággal a jel/zaj viszony is romlani fog. A 802.16 emiatt három különböző modulációs eljárást alkalmaz, attól függően, hogy milyen messze van az előfizetői állomás a bázisállomástól. A közeli előfizetőknél QAM-64-et használnak, baudonként 6 bittel. A közepesen távoli előfizetők esetén QAM-16-ot használnak, 4
345
A KÖZEGELÉRÉSI ALRÉTEO
QAM-64 (0 bit'baud) QAM-16 (4 bit/baud) QPSK (2 bit/baud)
4.32. ábra. A 802.16 átviteli környezete bit/bauddal, a távoliaknái pedig QPSK-t, 2 bit/bauddal. Ha például veszünk egy tipi kus, 25 MHz sávszélességű tartományt, akkor abban QAM-64-gyel 150 Mb/s-ot, QAM-16-tal 100 Mb/s-ot, QPSK-val pedig 50 Mb/s-ot érhetünk el. Másképp megfo galmazva: minél távolabb van az előfizető a bázisállomástól, annál kisebb lesz az át viteli kapacitás (hasonlóan a 2.27. ábrán látott ADSL példájához). E három moduláci ós eljárás csillagkép diagramját a 2.25. ábrán láthattuk. Adott volt a cél: létre kellett hozni egy szélessávú rendszert, és adottak voltak a fenti fizikai megszorítások is. Mindezek ismeretében a 802.16 tervezői keményen dolgoztak a rendelkezésre álló spektrum hatékony kihasználásán. Azt nem akarták, hogy a rendszerük úgy működjön, mint a GSM vagy a DAMPS, mert ezek különálló, de azonos méretű frekvenciasávot használnak a fel- és lefelé irányuló forgalom szá mára. A beszédátvitelnél a forgalom az esetek többségében még valószínűleg szim metrikus is, de az internetelérés esetében a lefelé irányuló forgalom jelentősen na gyobb a felfelé irányulónál. Ebből kifolyólag a 802.16 rugalmasabb lehetőséget kínál a sávszélesség kiosztására. Két megoldást is használnak: az FDD-t (Frequency Division Duplexing - frekvenciaosztásos kettőzés) és a TDD-t (Time Division Duplexing - időosztásos kettőzés). Ez utóbbit a 4.33. ábra szemlélteti. Itt a bázisál lomás periodikusan küldi el a kereteit. Minden keret időréseket (time slots) tartalmaz. Először a lefelé irányuló forgalom számára fenntartott időrések jönnek, aztán egy vé dőidő (guard time) következik, ami alatt az állomások irányt válthatnak. Végül a fel felé irányuló forgalom számára kirendelt időrések jönnek. Az egyes irányoknak szánt időrések számát dinamikusan változtatni lehet, hogy megfeleljenek az adott irányban igénybe vett sávszélességnek. A lefelé irányuló forgalmat a bázisállomás rendeli hozzá az időrésekhez. Ezt az irányt teljes egészében a bázisállomás vezérli. A felfelé irányuló forgalom esete bo nyolultabb, és függ az igényelt szolgálatminőségtől is. Az időrések kiosztására még visszatérünk a későbbiekben a MAC-alréteg tárgyalásánál. A fizikai réteg további érdekes sajátsága, hogy képes több MAC-keretet szorosan
346
SZAMITOGEP-HALOZATOK
- 1 . keret-
Lefelé Felfelé irányuló forgalom
-2. keret
Védőidő
es, keret-
x"
T
Időrés
4.33. ábra. Keretek és időrések időosztásos kettőzés esetén
egymás után pakolva egyetlen fizikai átvitel során elküldeni. Ez a képesség azáltal növeli a spektrális hatékonyságot, hogy csökkenti a szükséges előhangok és fizikai rétegbeli fejrészek számát. Említésre méltó még az is, hogy a fizikai rétegben Hamming-kódot alkalmaznak a hibajavítás érdekében. Szinte minden más hálózat csak az ellenőrző összegekre szorít kozik, hogy észlelje a hibákat, és újraadást kérjen a hibásan vett keretekre. A nagy te rületet átfogó, szélessávú hálózatokban azonban olyan sok átviteli hibával lehet szá molni, hogy már a fizikai rétegben is alkalmaznak hibajavítást, amellett, hogy a fel sőbb rétegekben továbbra is szerepelnek ellenőrző összegek. A hibajavítás eredmé nyeként a csatorna végül jobb képet mutat, mint amilyen valójában (ugyanúgy, ahogy a CD-ROM-ok is nagyon megbízhatónak tűnnek, de ez is csak azért van, mert az öszszes bitnek több mint a fele a hibajavítást szolgálja a fizikai rétegben).
4.5.4.
A 802.16 MAC alrétegének protokollja
Amint azt a 4.31. ábrán láthattuk, az adatkapcsolati réteg három alrétegre bontható. Mivel a titkosítást csak a 8. fejezetben tárgyaljuk, nehéz lenne most elmagyarázni, hogyan működik a biztonsági alréteg. Legyen elég annyit mondanunk, hogy titkosítást alkalmaznak annak érdekében, hogy minden átvitt adatot biztonságban tudjanak. Csak a keretek adatmezejét titkosítják, a fejrészeket nem. Ez azt jelenti, hogy a lehallgatók tudhatják, hogy ki beszél kihez, de azt már nem, hogy mit mondanak egymásnak. Ha az olvasó tud már egyet s mást a titkosításról, akkor ajánljuk figyelmébe a biz tonsági alréteg itt következő egy bekezdésnyi magyarázatát. Ha azonban még semmit sem tud a titkosításról, akkor a következő bekezdés valószínűleg nem fog túl sokat mondani Önnek (de talán érdemes lesz újra elolvasnia, miután befejezte a 8. fejezetet is). Amikor az előfizető és a bázisállomás kapcsolatba lépnek egymással, akkor köl csönösen hitelesítik egymást az RSA nyilvános kulcsú titkosítási eljárásával, X.509-es tanúsítványok segítségével. Magát az adatmezőt egy szimmetrikus kulcsú eljárás, konkrétan vagy titkosított blokkok láncolását használó DES, vagy kétkulcsú, három szoros DES alkalmazásával titkosítják. Valószínűleg nemsokára az AES (Rijndael) is alkalmazható lesz. A sértetlenség ellenőrzését SHA-1-gyel oldják meg. Nem is volt olyan vészes, ugye? Vessünk most egy pillantást a MAC-alréteg közös részére! A MAC-keretek egész számú időrést foglalnak el a fizikai rétegben. Az egyes keretek alkeretekből tevődnek össze, melyek közül az első kettő a lefelé és felfelé irányuló forgalom térképét adja
A KÖZEGELÉRÉSI ALRÉTEG
347
meg. Ezek a térképek azt mondják meg, hogy melyik idó'résben mi található, és hogy melyek a szabad időrések. A lefelé irányuló forgalomhoz tartozó térkép különféle rendszerparamétereket is tartalmaz, hogy felvilágosítással szolgáljon a vételbe éppen bekapcsolódó új állomásoknak. A lefelé irányuló csatorna működése eléggé magától értetődő. A bázisállomás mindössze azt dönti el, hogy mit melyik alkeretbe tegyen. A felfelé irányuló csatorna már bonyolultabb, hiszen annak eléréséért egymással össze nem hangolt előfizetők versengenek. A csatornakiosztás szorosan összefügg a szolgálatminőség kérdésével. A szabvány az alábbi négy szolgálatosztályt rögzíti: 1. Állandó adatsebességű szolgálat. 2. Valós idejű, változó adatsebességű szolgálat. 3. Nem valós idejű, változó adatsebességű szolgálat. 4. Garanciák nélküli (best-efforts) szolgálat. A 802.16-ban minden szolgálat összeköttetés alapú, és mindegyik bekerül a fenti szolgálatosztályok közül az egyikbe, amikor az összeköttetést kiépítik. Ez a megoldás erősen eltér a 802.11-ben vagy az Ethernetben használt megoldástól, ahol nincsenek összeköttetések a MAC-alrétegben. Az állandó adatsebességű szolgálatot az olyan tömörítetlen beszéd átvitelére szán ták, mint amilyen például egy TI csatornán halad. Ennek a szolgálatnak előre megha tározott mennyiségű adatot kell előre meghatározott időközönként elküldenie. Ezt úgy teszik lehetővé, hogy minden ilyen típusú összeköttetés számára fenntartanak bizo nyos időréseket. A sávszélesség kiosztása után az időrések automatikusan rendelke zésre állnak anélkül, hogy egyenként kérni kellene azokat. A valós idejű, változó adatsebességű szolgálat a tömörített multimédia és más, ke vésbé intenzív valós idejű alkalmazások számára készült. Ezeknél az igényelt sávszé lesség mennyisége minden pillanatban változhat. Ezt a szolgálatot úgy valósítják meg, hogy a bázisállomás rögzített időközönként körbekérdezi az előfizetőket, hogy ezúttal mennyi sávszélességre van szükségük. A nem valós idejű, változó adatsebességű szolgálat az olyan alkalmazások számára hasznos, melyek jelentős mennyiségű adatot visznek át - például nagyméretű állomá nyokat -, de nincs szükségük valós idejű átvitelre. Itt a bázisállomás gyakran, de nem szigorúan előírt időközönként kérdezi körbe az előfizetőket. Az állandó adatsebessé get használó előfizetők a keret egy megfelelő bitjének beállításával kérhetik, hogy őket is vegyék sorra a körbekérdezésnél, ha további (változó adatsebességű) forgal muk is van. Amennyiben egy állomás k egymást követő alkalommal nem válaszol a körbekér dezésre, akkor a bázisállomás megvonja attól a személyes lekérdezést, és egy többesküldéses csoportba helyezi. Amikor a többesküldéses csoport kerül sorra a lekérde zésnél, akkor a csoportban levő bármely állomás válaszolhat, azaz versenghet a ki szolgálásért. Ily módon az alacsony forgalommal rendelkező állomások nem pazarol ják az értékes lekérdezéseket.
348
SZÁMÍTÓGÉP-HÁLÓZATOK
Utoljára maradtak a garanciák nélküli szolgálatok - ezeket szánták az összes fenn maradó célra. Itt nincs körbekérdezés, hanem az előfizetőnek kell versengenie a szol gálat többi előfizetőjével a sávszélességért. A sávszélességre vonatkozó igényeket azokban az időrésekben lehet bejelenteni, melyek a felfelé irányhoz tartozó térkép szerint a verseny céljára rendelkezésre állnak. Az elfogadott kérésekről a következő, lefelé irányuló térképben küldenek értesítést. A visszautasított előfizetőknek később kell újra próbálkozniuk. Az ütközések elkerülésére az Ethernet kettes visszalépéses algoritmusát használják. A szabvány szerint a sávszélesség kiosztása kétféleképpen történhet: állomáson ként és összeköttetésenként. Előbbinél az előfizetői állomás az épületben lévő összes felhasználó igényeit összegyűjti, és egy csoportos igényt jelent be a nevükben. Ha a sávszélességet megkapta, akkor az állomás saját belátása szerint oszthatja azt szét a felhasználói között. Az utóbbi esetben a bázisállomás közvetlenül kezel minden öszszeköttetést.
4.5.5.
A 802.16 keretszerkezete
Minden MAC-keret egy fejrésszel kezdődik. Ezt egy opcionális adatmező és egy op cionális ellenőrző összeg (CRC) követi, amint azt a 4.34. ábra mutatja. A vezérlőke retekben, mint amilyen például a csatornában időréseket kérő keret is, nincs szükség adatmezőre. Meglepő módon az ellenőrző összeg is opcionális. Ez azért van, mert a fizikai rétegben van már hibajavítás, illetve azért, mert a valós idejű kereteket meg sem próbálják újraküldeni. Ha pedig úgysem lesz újraküldés, akkor mi szükség ellen őrző összegre? Az alábbiakban röviden áttekintjük a 4.34.(a) ábrán látható fejrészmezőket. Az EC bit megadja, hogy az adatmező titkosítva van-e. A Típus (Type) mező a keret típusát azonosítja, és többnyire azt adja meg, hogy alkalmaztak-e csomagolást és darabolást. A Cl mező a végső ellenőrző összeg meglétét vagy hiányát jelzi. Az EK mező azt adja meg, hogy melyik titkosítási kulcsot használták (ha volt ilyen). A Hossz (Length) me ző a keret teljes hosszát mutatja, a fejrészt is beleértve. Az Összeköttetés-azonosító (Connection identifier) megadja, hogy melyik összeköttetéshez tartozik ez a keret. Az utolsó mező, a Fejrész CRC (Header CRC) pedig egy csak a fejrészre vonatkozó ellen őrző összeget tartalmaz, melyet az xs + x2 + x + 1 polinom felhasználásával képeztek.
0 E Típus C
Bitek 1 1 6 10
Típus
C EK 1
Összeköttetés azonosító
Fejrész CRC
16
16
8
Igényelt bájtok száma
Összeköttetésazonosító
Fejrész CRC
Hossz
4.34. ábra. (a) Egy általános keret, (b) Egy sávszélesség-igénylő keret
>>
Adat CRC mező 1—«_J
A KÖZEGELÉRÉSI ALRÉTEG
349
A 4.34.(b) ábra egy másik fejrésztípust ábrázol, mely a sávszélességet kérő kerete ket szolgálja. Ez 0 helyett egy l-es bittel kezdődik, és hasonlít az előző fejrészhez, az zal a különbséggel, hogy a második és harmadik bájt egy 16 bites számot tartalmaz, ami megadja, hogy mekkora sávszélességre van szükség az adott számú bájt elszállí tásához. A sávszélesség-igénylő keretek nem hordoznak sem adatmezőt, sem a teljes keretre vonatkozó ellenőrző összeget. Jóval többet is mondhatnánk még a 802.16-ról, de erre nem ez a legmegfelelőbb hely. További információkat magában a szabványban érdemes keresnünk.
4.6.
BLUETOOTH
Az L. M. Ericsson társaság 1994-ben kezdett érdeklődést mutatni az iránt, hogy mo biltelefonjait hogyan lehetne más eszközökkel (pl. PDA-kkal) vezetékek nélkül kap csolatba hozni. Négy másik vállalattal (IBM, Intel, Nokia és Toshiba) együtt rövide sen megalapította a SIG-et (Special Interest Group - Különleges érdekcsoport, ma gyarul konzorcium). A csoport célja egy olyan vezeték nélküli szabvány kidolgozása volt, mely lehetővé teszi a számítástechnikai eszközök, kommunikációs eszközök és egyéb kiegészítők összekapcsolását rövid hatósugarú, kis teljesítményű, olcsó rádiós adó-vevők segítségével. A projekt a Bluetooth nevet kapta II. Harald Blaatand (a „Kékfogú", i. sz. 940-981) viking király után, akinek sikerült egyesítenie (azaz el foglalnia) Dániát és Norvégiát - szintén vezetékek nélkül. Az eredeti ötlet mindössze azt célozta meg, hogy megszabaduljanak az eszközöket összekötő kábelektől, de hamarosan nagyobb teret szerzett magának, és betört a vezeték nélküli LAN-ok területére is. Ettől a szabvány csak hasznosabb lett, de bizonyos mérté kig a 802.11 vetélytársává is vált. A helyzetet tovább rontja, hogy a két rendszer elektro nikusan is zavarja egymást. Azt is érdemes megjegyezni, hogy a Hewlett-Packard már évekkel ezelőtt bemutatott egy infravörös hálózatot, mely a számítógépes perifériák ve zeték nélküli összekapcsolására volt hivatott, de ez sosem aratott különösebb sikert. Mindez azonban nem zavarta a Bluetooth SIG-et, és 1999 júliusában kiadták a spe cifikáció első, 1500 oldalas verzióját. Nem sokkal később az IEEE vezeték nélküli személyi hálózatokkal foglalkozó szabványosítási csoportja, a 802.15 is adoptálta a Bluetooth-dokumentumot, és maga is elkezdett rajta ügyködni. Furcsának tűnhet olyasvalamit szabványosítani, aminek van már egy nagyon részletes specifikációja, és nincsenek inkompatíbilis megvalósításai sem, melyeket összhangba kellene hozni egymással. A történelem mégis azt mutatja, hogy az IEEE-hez hasonló független tes tületek által kezelt, nyílt szabványok sokszor elősegítik egy technológia elterjedését. Hogy egy kicsit pontosítsuk magunkat, megjegyezzük, hogy a Bluetooth-specifikáció egy teljes rendszert ír le, a fizikaitól az alkalmazási rétegig. Az IEEE 802.15 bizottsá ga viszont csak a fizikai és az adatkapcsolati rétegeket szabványosítja; a protokoll készlet többi része kívül esik a hatáskörükön. Annak ellenére, hogy az IEEE 2002-ben már elfogadta az első PAN4 szabványt, a 4
PAN: Personal Area Network.
350
SZÁMÍTÓGÉP-HÁLÓZATOK
802.15.1-et, a Bluetooth SIG még mindig aktívan foglalkozik a fejlesztésekkel. A Bluetooth SIG és az IEEE változatai nem azonosak ugyan, de remélhetőleg hamaro san egyetlen közös szabvány irányába fognak konvergálni.
4.6.1.
A Bluetooth felépítése
Tekintsük át először röviden a Bluetooth-rendszer elemeit és célját! A rendszer alap egysége a pikohálózat (piconet), mely egy mester (master) csomópontból és legfel jebb hét darab, 10 méteres távolságon belül levő aktív szolga (slave) csomópontból áll. Ugyanabban a (nagyméretű) helységben több pikohálózat is lehet egyszerre, sőt egy híd-csomópont révén össze is lehet kötni azokat, amint az a 4.35. ábrán is látható. Az egymással összekötött pikohálózatok gyűjteményét szórt hálózatnak (scatternet) is nevezzük. 1. pikohálózat
2. pikohálózat
/ szolga
Várakozó szolga
4.35. ábra. Két pikohálózat összekapcsolásával egy szórt hálózatot kapunk A pikohálózat hét aktív szolga csomópontja mellett legfeljebb 255 várakozó (parked) csomópont lehet a hálózatban. Ezek olyan eszközök, melyeket a mester ala csony teljesítményű állapotba vitt, hogy csökkentse az akkumulátoraik igénybevételét. Várakozó állapotban egy eszköz semmit sem tehet, leszámítva a mester aktivációs vagy jelzőfény jelére való válaszadást. Létezik még két köztes teljesítményállapot, a tartás (hold) és a szimatolás (sniff) is, de ezekkel most nem foglalkozunk. A mester/szolga felépítést az indokolja, hogy a tervezők 5 dollár alatti áron szeret ték volna megvalósítani egy komplett Bluetooth-chip kivitelezését. Ennek a döntésnek az a következménye, hogy a szolgák meglehetősen buták, és lényegében mindig csak azt teszik, amire a mester utasítja őket. A pikohálózat voltaképpen egy központosított TDM rendszer, melyben a mester vezérli az órát, és eldönti, hogy melyik eszköz me lyik időrésben kommunikálhat. A kommunikáció mindig csak a mester és egy szolga között folyhat; a szolgák közvetlenül nem érintkezhetnek egymással.
351
A KÖZEGELÉRÉSI ALRÉTEG
4.6.2.
Bluetooth-alkalmazások
A hálózati protokollok többnyire csak csatornákat adnak a kommunikáló entitások számára, és az alkalmazások tervezőire bízzák, hogy mire használják azokat. A 802.11 például nem határozza meg, hogy mit kell csinálniuk a felhasználóknak a hordozható számítógépeiken: e-leveleket olvasni, a web^n szörfözni vagy éppen valami mást. A Bluetooth Vl.l specifikáció ellenben 13 konkrét támogatandó alkalmazást nevez meg, és mindegyik számára külön protokollkészletet biztosít. Sajnos ez a megközelítés na gyon nagyfokú bonyolultsághoz vezet, aminek részletezésétől mi most eltekintünk. A 13 alkalmazást, más néven profilt (profilé) a 4.36. ábra sorolja fel. Ha vetünk egy pillantást ezekre a profilokra, talán jobban megértjük, hogy mit akar véghez vinni a Bluetooth SIG. Az alap hozzáférési profil nem igazán tekinthető alkalmazásnak, ez inkább egy bá zis, melyre az igazi alkalmazások épülnek. Fő feladata az, hogy biztonságos kapcso latokat (csatornákat) építsen ki és tartson fenn a mester és a szolgák között. A szolgálatfelfedezési profil is viszonylag alapnak számít: ezt az eszközök arra használják, hogy kiderítsék, milyen szolgáltatásokat kínál a többi eszköz. Ezt a két profilt minden Bluetooth-eszköznek implementálnia kell, a többi viszont opcionális. A soros port profil egy szállítási protokoll, melyet a hátralevő protokollok többsége is használ. Ez egy soros vonalat hivatott helyettesíteni, és különösen hasznos az olyan régebbi alkalmazások számára, melyek még soros vonalat igényelnek. Név
Leírás
Alap hozzáférés
Eljárások a kapcsolatok kezelésére
Szolgálatfelfedezés
Protokoll a felkínált szolgálatok felfedezésére
Soros port
A soros port kábelét helyettesíti
Alap objektumcsere
Ügyfél-kiszolgáló kapcsolatot definiál az objektumok mozgatásához
LAN-hozzáférés
Protokoll a mozgó számítógép és a rögzített LAN között
Betárcsázós hálózat
Lehetővé teszi a hordozható számítógépről mobiltelefonon keresztül indított hívásokat
Fax
Lehetővé teszi, hogy a mozgó faxgép faxot küldjön/fogadjon egy mobiltelefonon keresztül
Zsinór nélküli telefónia
Összeköti a kézibeszélőt a helyi bázisállomással
Interkom
Digitális kézi adó-v^vő (walkie-talkie)
Fejhallgató
Lehetővé teszi a kéz használata nélküli beszélgetéseket
Objektumpumpa
Egyszerű objektumok cseréjét biztosítja
Állományátvitel
Általánosabb állományátviteli szolgáltatást biztosít
Szinkronizáció
Lehetővé teszi, hogy egy PDA szinkronizálja magát egy másik számítógéppel
4.36. ábra. A Bluetooth-profilok
352
SZÁMÍTÓGÉP-HÁLÓZATOK
Az alap objektumcsere profil egy ügyfél-kiszolgáló kapcsolatot definiál az adatát vitel céljára. A műveleteket az ügyfelek kezdeményezik, de a szolgák itt ügyfelek és kiszolgálók is lehetnek. A soros port profilhoz hasonlóan ez a profil is egy építőelem ként szolgál a többi profil számára. A következő hármas csoport a hálózati működést szolgálja. A LAN-hozzáférés profil lehetővé teszi, hogy egy Bluetooth-eszköz csatlakozhasson a vezetékes hálózat hoz. Ez a profil egyben a 802.11 közvetlen vetélytársa is. A betárcsázós hálózati profil képezte az egész projekt eredeti motivációját. Ennek segítségével egy hordozható számítógép vezeték nélkül kapcsolódhat egy beépített modemet tartalmazó mobiltele fonhoz. A fax profil is ehhez hasonló, azzal a különbséggel, hogy általa egy vezeték nélküli faxgéppel lehetséges mobiltelefonon keresztül faxokat küldeni és fogadni anélkül, hogy a két eszköz vezetékes kapcsolatban lenne. A következő három profil a telefóniát szolgálja. A zsinór nélküli telefónia a kézibeszélő és a zsinór nélküli telefon bázisállomása közötti kapcsolatot biztosítja. A zsinór nélküli telefonokat jelenleg nemigen lehet mobiltelefonként használni, de el képzelhető, hogy a jövőben a két technológia összeolvad. Az interkom profil két tele fon rádiós adó-vevőként való összekötését teszi lehetővé. Végül a fejhallgató (headset) profil kéz használata nélküli beszédkommunikációt biztosít a fejhallgató és a bá zisállomása között, például az autóvezetés közbeni telefonálásra. A maradék három profil tulajdonképpen a két, vezeték nélküli eszköz közötti ob jektumcserét biztosítja. Az objektumok lehetnek például névjegykártyák, képek vagy adatállományok. A szinkronizációs profil lényegében arra szolgál, hogy egy PDA-ba vagy egy hordozható számítógépbe át lehessen vinni az asztali gép adatait induláskor, majd visszatölteni az új adatokat érkezéskor. Vajon tényleg szükség volt arra, hogy ezeket az alkalmazásokat részletezzék, és külön protokollkészletet készítsenek mindegyikhez? Valószínűleg nem, de a szabvány különböző részeit több különböző munkacsoport dolgozta ki, mindegyik csak a saját konkrét problémájával foglalkozott, és egy saját profilt hozott létre. Vehetjük úgy is, hogy Conway törvénye lépett működésbe. (A Datamation magazin 1968. áprilisi szá mában írta le Melvin Conway azt a megfigyelését, hogy ha n embert bízunk meg egy fordítóprogram megírásával, akkor egy n-menetes fordítót kapunk; vagy még álta1 nosabban fogalmazva: egy szoftver felépítése tükrözi annak a csoportnak a felépítő i amely létrehozta azt.) Minden bizonnyal két protokoll is elég lett volna a 13 helyett: ÍJ/ az állományátvitel és egy a közvetítéses (streaming) valós idejű kommunikáció számára.
4.6.3.
A Bluetooth protokollkészlete
A Bluetooth-szabványnak számos protokollja van, melyek laza rétegeket alkotnak. A rétegszerkezet nem követi sem az OSI, sem a TCP/IP, sem a 802-es, sem bármilyen más ismert modellt, bár az IEEE már dolgozik azon, hogy olyan irányba módosítsa a Bluetooth-t, hogy jobban igazodjon a 802-es modellhez. A 802-es bizottság által mó dosított alapvető Bluetooth-protokollarchitektúrát a 4.37. ábra mutatja. Legalul van a fizikai réteg, ami nagyjából megfelel az OSI és a 802-es modellek fi zikai rétegének. Ez a rádiós átvitellel és a modulációval foglalkozik. Itt az elgondolá-
353
A KÖZEGELÉRÉSI ALRÉTEG
sok jó része azzal a céllal kapcsolatos, hogy a rendszert minél olcsóbbá tegyék, vagyis hogy tömegtermelésben lehessen előállítani. Az alapsávi réteg valamelyest a MAC-alréteghez hasonlatos, de a fizikai rétegből is tartalmaz elemeket. Azzal foglalkozik, hogy a mester hogyan vezérli az időréseket, és hogy ezeket az időréseket hogyan csoportosítják keretekbe. Alkalmazások/Profilok Hang
1 Alkalmazási J réteg \ Közbülső / réteg
Szolgálat felfedezés Vezérlés Logikai kapcsolatvezérlés adaptációs protokollja I Adatkapcsolati | Kapcsolatmenedzser | j réteg
n5&
RFcomm
Telefónia
Alapsáv Fizikai rádió
I Fizikai J réteg
4.37. ábra. A Bluetooth-protokollarchitektúra 802.15-szabvány szerinti változata Ezután egy sor, egymással bizonyos mértékig összefüggő protokollt tartalmazó ré teg következik. A kapcsolatmenedzser az eszközök közötti logikai csatornák kiépíté sét kezeli, beleértve a teljesítmény gazdálkodást, a hitelesítést és a szolgálatminőséget is. A logikai kapcsolatvezérlés adaptációs protokollja (logical link control adaptation protocol vagy L2CAP) elrejti az átvitel részleteit a felsőbb rétegek elől. Ez a szabvá nyos 802 LLC-alréteggel analóg, bár műszakilag eltér attól. A hang és a vezérlési protokoll a hanggal, illetve a vezérléssel foglalkozik, ahogy azt a nevük is sugallja. Az alkalmazások ezeket közvetlenül érhetik el anélkül, hogy keresztül kellene menniük az L2CAP protokollon. Eggyel feljebb a közbülső (middleware) réteg található, mely különböző vegyes protokollokat tartalmaz. Az IEEE ide rakta a 802 LLC-t is, hogy biztosítsa a többi 802-es hálózattal való kompatibilitást. Az RFcomm, a telefónia és a szolgálatfelfedező protokollok a Bluetooth sajátjai. Az RFcomm (Radio Frequency communication - rá diófrekvenciás kommunikáció) azt a szabványos soros portot helyettesíti, mely a PCket köti össze a billentyűzettel, egérrel, modemmel és más eszközökkel. Úgy tervez ték, hogy a hagyományos eszközök is gond nélkül használhassák. A telefónia egy va lós idejű protokoll, melyet a három beszédorientált profil használ. Ez kezeli a hívás felépítést és -bontást is. Végül a szolgálatfelfedezés protokoll pedig arra szolgál, hogy felkutassa a hálózaton található szolgálatokat. A legfelső rétegben vannak az alkalmazások és a profilok. Ezek az alsóbb rétegek protokolljait használják fel munkájuk elvégzéséhez. Minden egyes alkalmazáshoz egy saját, külön neki fenntartott protokoll-részhalmaz tartozik. Az egyes eszközök, mint például a fejhallgató, rendszerint csak az adott alkalmazás számára szükséges proto kollokat tartalmazzák, semmi mást. A következő szakaszokban a Bluetooth-protokollkészlet három alsó rétegét veszszük szemügyre, mivel ezek nagyjából megfelelnek a fizikai és a MAC-alrétegnek.
354 4.6.4.
SZÁMÍTÓGÉP-HÁLÓZATOK
A Bluetooth rádiós rétege
A rádiós réteg a biteket szállítja a mestertől a szolgáig vagy fordítva. Ez egy alacsony teljesítményű rendszer, 10 méteres hatósugárral, a 2,4 GHz-es ISM-sávban. A sáv 79 darab, egyenként 1 MHz-es csatornára van osztva. Modulációs eljárásként frekvenciabillentyűzést használnak. A Hz-enkénti 1 bit kiadja a bruttó 1 Mb/s-os adatsebességet, de ezen átviteli kapacitás jó részét a járulékos információk viszik el. A csatornák igaz ságos szétosztásához frekvenciaugrásos szórt spektrumot alkalmaznak másodpercen ként 1600 ugrással és 625 |ÍS tartózkodási idővel. A pikohálózat összes csomópontja egyszerre végzi az ugrásokat, az ugrási sorozatot pedig a mester diktálja. Mind a 802.11, mind a Bluetooth a 2,4 GHz-es ISM-sávban működik ugyanazon a 79 csatornán, ezért zavarják egymást. Mivel a Bluetooth-ugrások sokkal gyorsabbak a 802.11 ugrásainál, sokkal nagyobb a valószínűsége annak, hogy egy Bluetooth-eszköz fogja tönkretenni a 802.11 átvitelt, mint fordítva. A 802.11 és a 802.15 is IEEEszabvány, ezért az IEEE már keresi a megoldást, de nincs könnyű dolga, hiszen mind két rendszer ugyanazon okból kifolyólag használja az ISM-sávot, mégpedig azért, mert az nem engedélyköteles. A 802.11a szabvány a másik (5 GHz-es) ISM-sávot használja, de annak sokkal kisebb a hatósugara, mint a 802.11b-nek (a rádióhullámok fizikai sajátosságai miatt), ezért a 802.11a használata nem minden esetben jelent tö kéletes megoldást. Egyes vállalatok úgy oldották meg a problémát, hogy betiltották a teljes Bluetooth-t, úgy ahogy van. A piaci alapú megoldás az lenne, hogy a (politikai és gazdasági értelemben, nem pedig a villamos teljesítmény értelmében) nagyobb erővel bíró hálózat követeli meg a gyengébb féltől, hogy módosítsa a szabványát a za varok kiküszöbölésének érdekében. További gondolatokat olvashatunk erről a kérdés ről (Lansford és mások, 2001) művében.
4.6.5.
A Bluetooth alapsávi rétege
Az alapsávi réteg az, ami a Bluetooth-ban leginkább hasonlít a MAC-alrétegre. Ez a nyers bitfolyamot keretekbe rendezi, és definiálja a legfontosabb formátumokat. Leg egyszerűbb formájában az egyes pikohálózatokban lévő mesterek 625 us-os időrésa : sorozatát határozzák meg, ahol a mesterek adásai a páros, a szolgák adásai pedig a pj / ratlan időrésekben kezdődnek. Ez hagyományos időosztásos nyalábolas: a mesterek kapják meg az időrések egyik felét, a szolgák pedig a másikat. A keretetek hossza 1, 3 vagy 5 időrés lehet. A frekvenciaugrásos időzítés ugrásonként 250-260 us nyugalmi időt ad arra, hogy a rádiós áramkörök stabilizálódjanak. Ennél rövidebb nyugalmi idők is lehetségesek, de ennek magasabb ára van. Egy, egyetlen időrésből álló keret esetén a nyugalmi idő után a 625-ből 366 bit marad meg. Ezek közül 126 a hozzáférési kód és a fejrész szá mára van fenntartva, így az adatoknak 240 bit marad. Ha öt időrést fognak össze, ak kor csak egy nyugalmi időre van szükség, ráadásul itt valamivel rövidebb nyugalmi időt is használnak, így az öt időrésben lévő 5 x 625 = 3125 bitből 2781 marad meg az alapsávi réteg számára. A hosszabb keretek tehát sokkal hatékonyabbak, mint azok, melyek csak egyetlen időrésből állnak.
A KÖZEGELÉRÉSI ALRÉTEG
355
Minden keretet egy kapcsolatnak (link) nevezett logikai csatornán visznek át a mester és a szolga között. Kétfajta kapcsolat létezik. Az első az ACL- (Asynchronous Connection-Less - aszinkron összeköttetés nélküli) kapcsolat, melyet a sza bálytalan időközönként érkező csomagkapcsolt adatokhoz használnak. Az ilyen ada tok a küldő oldal L2CAP rétegéből jönnek, és a vételi oldal L2CAP rétegéhez kerül nek. Az ACL-forgalom „best-efforts" alapon bonyolódik, garanciák tehát nincsenek: a keretek: elveszhetnek, ilyenkor esetíeg újra kell adni azokat. Egy szolgának legfeljebb egy ACL-kapcsolata lehet a mesterével. A másik lehetőség az SCO- (Synchronous Connection Oriented - szinkron össze köttetés alapú) kapcsolat, melyet valós idejű adatok esetén, például telefonos kapcso latoknál használnak. Ehhez a csatornatípushoz mindkét irányban egy rögzített időrést rendelnek. Az SCO-kapcsolatok időérzékeny természetéből adódóan a rajtuk átküldött kereteket sosem küldik újra. Ehelyett a jobb megbízhatóság érdekében hibajavítás al kalmazható. Egy szolgának legfeljebb három SCO-kapcsolata lehet a mesterével. Minden egyes SCO-kapcsolat egy 64 kb/s-os PCM-hangcsatornát képes átvinni.
4.6.6.
A Bluetooth L2CAP rétege
Az L2CAP rétegnek három fő funkciója van. Először is ez fogadja a maximum 64 KB-os csomagokat a felsőbb rétegektől, és azokat az átvitel céljából keretekre tördeli. A másik oldalon a keretekből újra csomagokat állít elő. Másodszor, több csomagforrás esetén ez a réteg kezeli a nyalábolást (multiplexing) és a nyalábbontást (demultiplexing). A csomagok újbóli összerakása után az L2CAP réteg dönti el, hogy melyik felsőbb rétegbeli protokollnak - pl. az RFcomm-nak vagy a telefóniának - kell átadni azokat. Harmadszor, az L2CAP réteg kezeli a szolgálatminőségi igényeket is, mind a kap csolat kiépítésekor, mind a rendes működés ideje alatt. A kiépítés során kerül sor az adatmező maximális méretéről való megállapodásra is, annak megelőzésére, hogy egy nagy csomagokat használó eszköz elárasszon egy kiscsomagos eszközt. Erre a funkci óra azért van szükség, mert nem minden eszköz képes a maximális, 64 KB-os cso magméretet kezelni.
4.6.7.
A Bluetooth keretszerkezete
Többféle keretformátum is létezik, melyek közül a legfontosabbat a 4.38. ábra mutatja be. Ez egy hozzáférési kóddal kezdődik, ami általában a mestert azonosítja, így az egyszerre két mester adáskörzetében tartózkodó szolgák tudni fogják, hogy melyik forgalom honnan származik. Ezt egy 54 bites fejrész követi, ami tipikus MAC-alrétegbeli mezőket tartalmaz. Ezután jön az adatmező, maximum 2744 bit hosszúságban (öt időréses átvitel esetén). Ugyanez a formátum érvényes akkor is, ha csak egy idő rést használunk, de ekkor az adatmező csak 240 bites. Vessünk egy pillantást a fejrészre! A Cím (Address) mező a nyolc aktív eszköz kö zül azonosítja azt, amelyiknek a keretet szánták. A Típus (Type) mező azonosítja a ke-
356
SZÁMÍTÓGÉP-HÁLÓZATOK
ret típusát (ACL, SCP, lekérdezés vagy nulla) és az adatmezőben használt hibajaví tást, valamint megadja, hogy hány időrésre terjed ki a keret. A Folyam (Flow) bitet a szolga állítja be, ha a puffere megtelt és már nem tud több adatot fogadni. Ez tulaj donképpen a forgalomszabályozás egy primitív formája. A Nyugta (Acknowledgement) bit segítségével egy ACK-t ültetnek rá a keretre. A Sorszám (Sequence) bittel számozzák meg a kereteket az újraadások felismerése céljából. Azért elég ide mind össze 1 bit, mert a megáll-és-vár protokollt használják. Ezután következik a fejrész 8 bites ellenőrző összege. Az egész 18 bites fejrészt háromszor ismétlik meg, így jön ki a 4.38. ábrán látható 54 bites fejrész. A vételi oldalon egy egyszerű áramkör megvizs gálja az egyes bitek mindhárom másolatát. Ha ezek mind megegyeznek, a bitet elfo gadják. Ha nem, a többség dönt. Ily módon 54 bites átviteli kapacitást használnak fel a 10 bites fejrész elküldésére. Ezt az indokolja, hogy csak jókora redundancia segítsé gével lehet olcsó, kis teljesítményű (2,5 mW-os), csekély számítási kapacitással ren delkező eszközökkel megbízható adatátvitelt megvalósítani zajos környezetben. Az ACL-keretek adatmezejénél számos formátum használatos. Az SCO-keretek már egyszerűbbek: az adatmező itt mindig 240 bites. Itt három különböző változatot definiáltak, ezek 80, 160 vagy 240 bites tényleges adatot tesznek lehetővé; a maradék a hibajavítást szolgálja. A legmegbízhatóbb változatnál (ahol 80 bites a tényleges adat), a tartalmat egyszerűen háromszor megismétlik, akárcsak a fejrésznél. Mivel a szolga csak a páratlan időréseket használhatja, 800 időrést kaphat másod percenként, éppúgy, mint a mester. 80 bites tényleges adat esetén a csatorna kapacitá sa mind a szolga, mind a mester részéről 64 kb/s, ez pedig pont elég egy duplex PCMbeszédcsatorna számára (ezért döntöttek a másodpercenkénti 1600 ugrás mellett). Ezek a számok azt jelentik, hogy egy 64 kb/s-os duplex beszédcsatorna, ami mindkét irányban a legmegbízhatóbb formátumot használja, teljesen telíti a pikohálózatot, hiá ba áll rendelkezésre elvileg 1 Mb/s átviteli kapacitás. A legkevésbé megbízható válto zat (időrésenként 240 bit, ezen a szinten redundancia nélkül) esetén három duplex be szédcsatorna működhet egyszerre, ezért is engedélyeztek maximum három SCOkapcsolatot szolgánként. Sokkal többet is lehetne még mondani a Bluetoothról, de erre itt nincs helyünk További információkat (Bhagwat, 2001; Bisdikian, 2001; Bray és Sturman, 200 j Haartsen, 2000; Johansson és mások, 2001; Miller és Bisdikian, 2001; valamiij Sairam és mások, 2002) műveiben találhatunk.
I Hozzáférési kód
Fejrész
ss Adatmező t<,
Bitek „3-'"""4
111
ÍCÍm Típus FAS
8 Ellenőrző A 18 bites fejrészt háromszor megismétlik, összeg így jön ki a teljes 54 bit
4.38. ábra. Egy jellegzetes Bluetooth-adatkeret
A KÖZEGELÉRÉSI ALRÉTEG
4.7
357
Kapcsolás az adatkapcsolati rétegben
Sok szervezet több LAN-nal is rendelkezik, és szeretnék ezeket összekötni. A LANokat úgynevezett hidakkal (bridges) lehet összekapcsolni, melyek az adatkapcsolati rétegben működő eszközök. A hidak az adatkapcsolati rétegbeli címeket vizsgálják meg, hogy elvégezhessék a forgalomirányítást. Mivel az általuk irányított keretek adatmezejét nem kell megvizsgálniuk, képesek IPv4 (ezt használja az internet jelen leg), IPv6 (ezt fogja használni az internet a jövőben), AppleTalk, ATM, OSI és bár milyen más csomagok átvitelére is. A routerek ezzel szemben a csomagokban talál ható címeket vizsgálják meg, és azok alapján végzik a forgalomirányítást. Ez alapján úgy tűnhet, hogy a hidak és a routerek egyértelműen elkülöníthetők egymástól, de né hány újabb fejlesztésnek, például a kapcsolt Ethernet megjelenésének köszönhetően már zavarosabb a kép, amint azt nemsokára látni fogjuk. A következő szakaszokban a hidakat és a kapcsolókat tekintjük át, azok közül is elsősorban azokat, melyek a kü lönböző 802-es LAN-okat kötik össze. A hidak, kapcsolók és más, ezekhez kötődő te rületek átfogó tárgyalásával (Perlman, 2000) munkája szolgál. Mielőtt megismerkednénk a hidak kialakításával, érdemes megnéznünk néhány olyan gyakori helyzetet, melyben hidakat használnak. Hat okot fogunk felsorolni arra, hogy miért lehet szüksége egyetlen szervezetnek több LAN-ra is. Először is, sok egyetemen és vállalatnál a szervezeti egységeknek saját LAN-ja van, elsősorban azért, hogy saját számítógépeiket, munkaállomásaikat és kiszolgálói kat összekössék. Mivel a különböző szervezeti egységek céljai is eltérők, elképzelhe tő, hogy különböző típusú LAN-okat választanak maguknak, függetlenül attól, hogy más egységek hogyan döntenek. Előbb vagy utóbb azonban szükség lesz az együtt működésre, azaz hidakat kell alkalmazni. Ebben a példában tehát a hálózatok tulajdo nosainak autonómiája eredményezte a többféle LAN létrejöttét. A második esetben a szervezet szétszórtan, egymástól akár nagy távolságokra elhe lyezkedő épületekben helyezkedhet el. Olcsóbb lehet, ha az épületekben különálló LAN-okat telepítenek, és ezeket hidak és infravörös átvitel segítségével kötik össze ahelyett, hogy koaxiális kábelt vezetnének végig a teljes területen. Harmadik eset az, amikor a terhelés megosztása indokolja az egyetlen LAN több szegmensre bontását. Több egyetemen például több ezer munkaállomás áll rendelke zésre hallgatói és oktatói célokra. A fájlokat általában fájlszervereken tárolják, ahon nan igény szerint tölthetők le. A rendszer hatalmas mérete egyszerűen lehetetlenné te szi egyetlen LAN használatát, mivel a szükséges sávszélesség óriási lenne. Ehelyett a 4.39. ábrán bemutatott struktúra szerint, kisebb méretű helyi hálózatokat alakítanak ki, amelyeket hidak segítségével kapcsolnak össze. Mindegyik különálló LAN a munka állomások egy csoportjából áll, és saját fájlszerverrel rendelkezik, így a forgalom nagy része a különálló szegmensekre korlátozódik anélkül, hogy a forgalom megje lenne a gerinchálózaton. Érdemes megjegyezni, hogy a LAN-okat rendszerint többpontos elrendezésben raj zoljuk (ahogy a 4.39. ábrán is látható), azonban manapság az implementálás elosztók vagy kapcsolók segítségével történik. A többpontos csatlakozást lehetővé tevő hosszú kábel és az elosztó azonos funkciókat lát el. Mindkét esetben az összes állomás
358
SZÁMÍTÓGÉP-HÁLÓZATOK
Híd
Gerinchálózati LAN
Iló
Fájl szerver m rCD
F
-co m
!_
:U
01 N
cn X. 7 ••-1
Munka állomás LAN 4.39. ábra. Több, gerinchálózattal összekapcsolt LAN, amelyen a teljes terhelés nagyobb lehet, mint egy különálló LAN kapacitása
ugyanahhoz az ütközési tartományhoz tartozik, és mindegyik CSMA/CD-protokollt használ a keretek küldésére. A kapcsolt LAN azonban ettől több vonatkozásban kü lönbözik, ahogy azt már korábban is láttuk, s nemsokára ismét látni fogjuk. Negyedszer, elképzelhető, hogy a különálló LAN megfelelő megoldást jelentene a terhelés szempontjából, ám a két, egymástól legmesszebb eső állomás között túl nagy lehet a távolság (pl. 802.3 esetén nagyobb, mint 2,5 km). A kábel lefektetése egyszerű feladat is lehet, de a hálózat működésképtelen lesz a túl nagy körbefutási idő miatt. Az egyetlen megoldás, ha feldaraboljuk a LAN-t, és a szegmenseket hidakkal kötjük öszsze. Hidak használatával a teljes hálózat által lefedett távolság megnövelhető. Ötödiknek vegyük a megbízhatóság problémáját. Egy különálló LAN esetén egy meghibásodott állomás, amely folyamatosan szemetet küldözget, megbéníthatja a teljes rendszert. Ha a kritikus pontokon hidakat iktatunk be úgy, mint egy épületben a tűzzáró ajtókat, megelőzhető, hogy a hálózat egy hibás állomás miatt omoljon össze. Szem ben az ismétlőkkel, amelyek mindent bután átmásolnak, a hidak felprogramozható' hogy bizonyos kritériumokat megvizsgálva döntsék el, mit továbbítanak, és mit nem7 A hatodik, és egyben utolsó példánk szerint a hidak részét képezhetik egyes sz& ve zetek védelmi rendszerének. A legtöbb LAN-illesztő rendelkezik azzal a képességgel, hogy ún. válogatás nélküli üzemmódban (promiscuous mode) üzemeljen, amikor is minden keretet továbbít a számítógépnek, és nem csak azokat, amelyeket annak az ál lomásnak címeztek. A kémek és a minden lében kanál emberek nagyon szeretik ezt a funkciót. Ha hidakat iktatunk be a hálózat különböző pontjaira, és azokat úgy állítjuk be, hogy az érzékeny forgalmat ne továbbítsák, akkor megoldható a hálózat egyes ré szeinek az izolálása, amelynek bizalmas forgalma nem tud kiszökni, így nem juthat rossz kezekbe. A hidaknak elvileg teljesen átlátszónak kellene lenniük, azaz lehetségesnek kellene lennie annak, hogy egy gépet áttegyünk egyik kábelszegmensről a másikra anélkül, hogy meg kellene változtatnunk bármilyen hardvert, szoftvert vagy konfigurációs táb lázatot. Lehetségesnek kellene lennie ezenfelül annak is, hogy bármely szegmensen
359
A KÖZEGELÉRÉSI ALRÉTEG
levő gépek kommunikálhassanak bármely más szegmensen levő gépekkel, függetlenül attól, hogy milyen típusú LAN-okat használnak az adott szegmenseken vagy az azok közötti szegmenseken. Ezt a célt néha sikerül elérni, de nem mindig.
4.7.1.
Hidak 802.x és 802.y hálózatok között
Most, hogy már láttuk, miért van szükség hidakra, vizsgáljuk meg, hogyan működ nek! A 4.40. ábra egy egyszerű, kétportos híd működését szemlélteti. A vezeték nél küli (802.11) LAN-on levő A hoszt egy csomagot akar elküldeni a B telepített hosztnak, mely a vezeték nélküli LAN-nal összekapcsolt 802.3-as Ethernethez kap csolódik. A csomagot átveszi az LLC-aíréteg, ahol kap egy LLC-fejrészt (ezt az ábrán feketével jelöltük). Ezután átkerül a MAC-alrétegbe, ahol egy 802.1 l-es fejrésszel látják el (és egy Iábrésszel is, de ezt az ábrán nem jelöltük). Az így kapott adategysé get adja le a hoszt rádiója, ezt pedig a bázisállomás veszi, és látja, hogy a cél a vezeté kes Ethernet. Amikor az adategység megérkezik a 802.1 l-es és a 802.3-as hálózatot öszszekötő hídhoz, akkor a fizikai rétegtó'l kezdve megindul felfelé. A híd MAC-alrétegében eltávolítják róla a 802.1 l-es fejrészt. Ezután a lecsupaszított csomag (az LLC-fejrésszel együtt) átkerül a híd LLC-alrétegébe. Példánkban a csomagot egy 802.3-as LANra küldték, így a híd 802.3-as oldalán folytatja útját lefelé, majd kikerül az Ethernetre. Vegyük észre, hogy egy k különböző LAN-t összekötő hídnak k különböző MACalréteggel és k különböző fizikai réteggel kell rendelkeznie, minden típus felé eggyel. Eddig úgy tűnhet, hogy könnyű dolog átvinni egy keretet az egyik LAN-ról a má sikra, pedig erről szó sincs. Ebben a szakaszban néhány olyan nehézségre mutatunk rá, ami akkor jelentkezik, ha különféle 802-es LAN-ok (és MAN-ok) közé próbálunk
A hoszt
B hoszt
Hálózat
^802.3|Csomagp
Vezeték nélküli LAN
Ethernet
4.40. ábra. Egy 802,11 és egy 802.3 hálózatot összekötő híd működése
360
SZÁMÍTÓGÉP-HÁLÓZATOK
hidat építeni. Elsősorban a 802.3-ra, 802.1 l-re és 802.16-ra fogunk összpontosítani, de más esetek is lehetségesek, és mindnek megvan a maga sajátos problémája. Kezdjük azzal, hogy mindegyik LAN különböző keretformátumot használ (lásd 4.41. ábra). Míg az Ethernet, a vezérjeles sín és a vezérjeles gyűrű közötti különbsé geket pusztán a történelem és a túlzott vállalati öntudat szülte, addig itt a különbségek bizonyos mértékig indokoltak. Az Időtartam mező a 802.11-ben például a MACAWprotokoll miatt szerepel, az Ethernetben viszont nem lenne értelme. Mindez azt ered ményezi, hogy a különböző LAN-ok közötti bármilyen másolásnál újraformázásra van szükség, amihez processzoridő kell, az ellenőrző összeget is újra kell számolni, és ész revétlen hibák is keletkezhetnek, ha hibás bitek vannak a híd memóriájában.
Célcím
802.3
802.11
Forrás Hossz cím
Keret Idő 1. vezérlés tartam cím ILUOI
802.16 0
Típus
C EK I
2. cím
Hossz
l
"»
1
Adat mező 3. cím
Kitöltés
Sor szám
Összeköttetés azonosító
Ellenőrző összeg
4. cím
áaT mező
Fejrész CRC I
Ellenőrző összeg
Ellenőrző Adat összeg mező 'Us-^—i
4.41. ábra. Az IEEE 802 keretformátumok. A rajz nem méretarányos
A második probléma az, hogy az összekapcsolt LAN-ok nem feltétlenül ugyanaz zal az adatsebességgel működnek. Ha egymást szorosan követő keretek hosszú soro zatát kell egy gyorsabb LAN-ról egy lassabbra továbbítani, akkor a híd nem lesz ké pes olyan gyorsan megszabadulni a keretektől, mint ahogy azok beérkeznek. Ha pél dául egy teljes sebességgel működő gigabites Ethernet egy 11 Mb/s-os 802.11b háló zatot áraszt el bitjeivel, akkor a híd kénytelen pufferelni azokat, remélve, hogy nem fogy ki a memóriából. A három vagy több LAN-t összekötő hidak még akkor is szénbetalálhatják magukat ezzel a problémával, ha a LAN-ok amúgy ugyanazzal a sev seggel működnek, de egyszerre több hálózat próbálja meg ugyanazt a kimeneti LAN-t elárasztani. A harmadik és egyben talán a legkomolyabb probléma az, hogy az egyes 802-es LAN-okban eltérő a maximális kerethossz. Ez nyilvánvalóan problémát okoz, ha egy hosszú keretet egy olyan LAN-ra kell továbbítani, ami nem képes azt fogadni. A keret feldarabolása ebben a rétegben nem jöhet szóba. Minden protokoll azt feltételezi, hogy a keretek vagy célba érkeznek vagy nem. Arra nincs lehetőség, hogy a kereteket kisebb méretű részekből rakjuk össze. Ez persze nem jelenti azt, hogy nem lehetne ilyen protokollokat létrehozni. Lehetne, és eddig is lehetett volna, mégis úgy alakult, hogy egyetlen adatkapcsolati protokoll sem rendelkezik ezzel a képességgel, így a hi dak nem nyúlhatnak a keret adatrészéhez. Alapvetően tehát nincs megoldás: azokat a kereteket, melyek túl nagyok ahhoz, hogy továbbítani lehessen őket, el kell dobni. Ennyit az átlátszóságról. Problémát jelent a biztonság kérdése is. A 802.11 és a 802.16 is támogatja a titko-
A KÖZEGELÉRÉSÍ ALRÉTEG
361
sítást az adatkapcsolati rétegében, az Ethernet viszont nem. Ez azt jelenti, hogy a ve zeték nélküli hálózatokban használható különféle titkosítási szolgáltatások elvesznek, ha a forgalom egy Ethernet-hálózaton halad keresztül. Vagy ami még rosszabb: ha egy vezeték nélküli állomás titkosítást alkalmaz az adatkapcsolati rétegben, akkor az onnan egy Ethernetre érkező adatokat sehogyan sem lehet majd visszafejteni. Ha vi szont a vezeték nélküli állomás nem alkalmaz titkosítást, akkor a rádiós kapcsolaton átmenő forgalma mindenki előtt látható lesz. így is, úgy is problémával találjuk szem be magunkat. A biztonság problémájára megoldást jelenthet, ha a titkosítást egy magasabb réteg ben végezzük el, de akkor a 802.1 l-es állomásnak tudnia kell, hogy vajon egy másik 802.1 l-es hálózaton lévő állomással beszél (vagyis kell adatkapcsolati titkosítást al kalmaznia) vagy sem (azaz nem kell titkosítást alkalmaznia). Ennek a döntésnek a ki kényszerítése viszont az átlátszóság feláldozásával jár. Utoljára maradt a szolgálatminőség kérdése. Ezt mind a 802.11, mind a 802.16 tá mogatja különböző formákban, az előbbi a PCF-mód segítségével, az utóbbi pedig az állandó adatsebességű kapcsolatok révén. Az Ethernetből viszont hiányzik a szolgá latminőség fogalma, így a másfajta hálózatokból érkező forgalom elveszíti a szolgá latminőségi jellemzőit az Etherneten való áthaladáskor.
4.7.2
Helyi hálózatok összekapcsolása
Az előző szakasz azokkal a problémákkal foglalkozott, melyek két különböző IEEE 802-es LAN egyetlen híddal való összekötésekor merülnek fel. Csakhogy a sok LANnal rendelkező nagy szervezeteknél az összekapcsolás még akkor is számos kérdést vet fel, ha történetesen az összes hálózat Ethernet típusú. Elméletileg az lenne a cél, hogy ha az ember megveszi az IEEE-szabvány szerint tervezett hidakat, akkor csak be kelljen dugni a csatlakozókat, és minden azonnal, tökéletesen működjön. Ne legyen szükség semmilyen hardveres vagy szoftveres módosításra, címzési kapcsolók beállí tására, forgalomirányítási táblázatok vagy paraméterek letöltésére, semmire. Egysze rűen csak a kábeleket kelljen csatlakoztatni, és már menjen is a rendszer. A hidaknak ráadásul a már meglevő hálózatok működését sem szabad semmilyen formában befo lyásolniuk. Más szóval: a hidak legyenek teljesen átlátszók, azaz láthatatlanok mind a hardverek, mind a szoftverek szemszögéből. Meglepő, de mindez tényleg lehetséges! Nézzük hát meg, hogyan megy végbe ez a varázslat. Egy átlátszó vagy transzparens híd (transparent bridge) legegyszerűbb formájá ban az ún. válogatás nélküli üzemmódban működik, azaz minden keretet elfogad, amely a hozzá csatlakoztatott hálózatokon megjelenik. Példaként vegyük a 4.42. ábrán látható elrendezést! A Bl híd az 1. és 2. LAN-nal, a B2 híd pedig a 2., 3. és 4. LAN-nal áll kapcsolatban. Ha az 1. LAN felől egy A-nák címzett keret érkezik a B1 hídhoz, akkor azt rögtön el is lehet dobni, hiszen máris a megfelelő LAN-on van. Ha viszont az 1. LAN felől a C-nek vagy F-nek érkezik keret, akkor azt továbbítani kell. Amikor egy keret beérkezik egy hídhoz, annak el kell döntenie, hogy eldobhatja-e azt, vagy továbbítania kell, valamint ez utóbbi esetben azt, hogy melyik LAN irányá ba küldje tovább a keretet. A döntést a híd úgy hozhatja meg, hogy a memóriájában
362
SZÁMÍTÓGÉP-HÁLÓZATOK
? f ? Híd
I
4. LAN
y 1. LAN
2. LAN
3. LAN
4.42. ábra. Egy konfiguráció, amely négy LAN-t és két hidat foglal magában
levő nagy (hash struktúrájú) listából kikeresi a célállomást. A tábla felsorolja a lehet séges célállomásokat, és mindegyikhez megadja a megfelelő kimenetet (LAN-t). Pél dául B2 táblája szerint A a 2. LAN-hoz tartozik, hiszen B2-nek csak annyit kell tud nia, hogy merre továbbítsa az A-nak küldött kereteket. Az nem érdekli, hogy a keretet útja során kell-e még többször is továbbadni, vagy sem. Amikor a hidakat először kapcsolják be, a tábláik üresek. Egyik híd sem tudja, hogy a célállomások merre helyezkednek el, így az elárasztásos algoritmust használják: minden bejövő keretet, amelynek címzettje ismeretlen, továbbadják az összes hozzá kapcsolódó LAN-hoz, kivéve azt, amelyiktől érkezett. Ahogy telik az idő, az alább leírtak alapján a hidak lassan megtanulják, hogy a célállomások merre találhatók. Mi után egy célállomás ismertté vált, a felé irányuló keretek már nem képezik elárasztás tárgyát, hanem csakis a megfelelő LAN felé kerülnek továbbításra. Az az algoritmus, amit a transzparens hidak használnak, a hátrafelé tanulás (backward learning). Mint már említettük, a hidak válogatás nélküli üzemmódban működnek, így minden keretet látnak, amely a LAN-jaikon megjelenik. Megvizsgálva a forráscímet megállapíthatják, hogy mely LAN-okon mely állomások érhetők el. Pél dául, ha a 4.42. ábrán a Bl híd lát egy keretet a 2. LAN-on, amelyik a C állomástól származik, rájön, hogy C a 2. LAN-on keresztül érhető el, így készít a táblájában egy bejegyzést, amely szerint a C-nek küldött kereteket a 2. LAN felé kell irányítani. Minden olyan rákövetkező keretet, amely az 1. LAN felől C-nek érkezik, továbbítani fog, míg a 2. LAN-on C-nek érkezőket eldobja. A hálózat topológiája változhat, ahogy állomásokat és hidakat üzembe vagy üze men kívül helyeznek, az üzemelésük helyét megváltoztatják. A dinamikusan változó topológia kezelése érdekében minden alkalommal, amikor létrejön egy táblabejegy zés, eltárolják a keret beérkezésének időpontját is. Amikor egy olyan keret érkezik, amely feladójáról helyes bejegyzés szerepel a táblában, az időinformációt az aktuális időponttal írják felül. Ilyen módon a tábla bejegyzéseihez rendelt időpontok megad ják, hogy a híd mikor vett utoljára keretet az adott állomástól. Egy folyamat a hídban időről időre végignézi a táblát, és törli onnan a néhány perc nél régebbi bejegyzéseket. Ily módon elérhető, hogy kézi beavatkozás nélkül, néhány percen belül ismét visszaálljon egy olyan állomás normális működése, amelyet levet tek a hálózatról, majd annak egy eltérő pontjára csatlakoztattak vissza. Az algoritmus azonban azt is maga után vonja, hogy ha egy állomás néhány percig csendben marad, a felé irányuló forgalom elárasztja a teljes rendszert addig, amíg az állomás maga nem küld végre egy keretet.
363
A KÖZEGELÉRÉSI ALRÉTEG
Egy beérkező keret forgalomirányítása tehát az alábbiak szerint függ attól, hogy melyik LAN felől érkezett (forrás LAN), valamint melyik LAN irányában (cél LAN) van a célja: 1. Ha a forrás és cél LAN azonos, akkor a keretet el kell dobni. 2. Ha a forrás és a cél LAN különböző, akkor a keretet továbbítani kell. 3. Ha a cél LAN ismeretlen, akkor elárasztást kell alkalmazni. A keretek beérkezésekor mindig ezt az algoritmust kell használni. A táblában való keresésre, valamint a bejegyzések frissítésére speciális VLSI áramkörök léteznek, amelyek néhány us alatt oldják meg ezeket a feladatokat.
4.7.3.
Feszítőfás hidak
Néhány hálózatban kettő vagy több, egymással párhuzamosan bekötött hidat is hasz nálnak a megbízhatóság növelése érdekében, ahogyan ezt a 4.43. ábra is szemlélteti. Ez az elrendezés azonban újabb problémákat vet fel, mivel hurkokat képez a hálózat topológiájában. A 4.43. ábrán bemutatunk egy egyszerű példát a problémára. Nézzük meg, mi tör ténik azzal az F kerettel, melynek címzettje ismeretlen! Az ismeretlen címzett esetére érvényes normál szabályoknak megfelelően mindkét híd elárasztást kezdeményez, ami jelen esetben mindössze azt jelenti, hogy a keretet átmásolják a 2. LAN-ra. Rö viddel ezután az 1. híd felfedezi az F2 keretet, melynek címzettje szintén ismeretlen, átmásolja tehát azt az 1. LAN-ra, előállítva ezzel az ábrán már nem jelölt F 3 keretet. Hasonlóan, a 2. híd az F, keretet másolja át az 1. LAN-ra, így előáll az F 4 keret is, amelyet szintén nem ábrázoltunk már. Ezután Bl az F 4 keretet, B2 pedig az F 3 keretet fogja továbbítani, és ez a körforgás a végtelenségig fog folytatódni. A fenti nehézség úgy küszöbölhető ki, hogy a hidak kommunikálnak egymással, és lefedik a hálózat aktuális topológiáját egy olyan feszítőfával (spanning tree), amely eléri az összes LAN-t. Tulajdonképpen annyi a teendő, hogy bizonyos kapcsolódási pontokat figyelmen kívül kell hagyni, hogy egy képzeletbeli, hurokmentes topológia B1 által másolt keret
B2 által másolt keret
2. LAN
1.LAN
• Eredeti keret 4.43. ábra. Párhuzamosan elhelyezett transzparens hidak
364
SZÁMÍTÓGÉP-HÁLÓZATOK
,
, A
B 2
C 3 -
4
LAN
Híd, amely része a • feszítőfának ,.' Híd, amely nem része a feszítőfának
<E\ XÍN M (a)
(b)
4.44. ábra. (a) Összekötött LAN-ok.(b) Egy feszítőfa, amely lefedi a LAN-okat. A pontozott vonalak nem részei a feszítőfának jöjjön létre. Vegyük például a 4.44.(a) ábrát, amelyen kilenc LAN látható, tíz híddal összekötve. A hálózat átalakítható egy olyan gráffá, amelyben a LAN-ok képezik a csomópontokat. Egy-egy él köti össze azokat a csomópontokat, amelyek között híd helyezkedik el. A gráf átalakítható feszítőfává, ha eldobjuk a 4.44.(b) ábrán pontozott vonalakkal jelölt éleket. Ezt a feszítőfát használva minden LAN-tól csak egyetlen út vonal vezet az összes többihez. Miután a hidak megállapodtak a feszítőfában, minden LAN-ok közötti továbbítás ezt a fát követi. Mivel így minden forrás és cél között csak egyetlen útvonal létezik, nem jöhetnek létre hurkok. A feszítőfa felépítéséhez a hidaknak először maguk közül egyet ki kell választani uk, hogy az legyen a fa gyökere. A választást úgy végzik el, hogy mindannyian szét küldik gyári sorozatszámukat, amely a gyártók által garantáltan az egész világon egyedi. Az a híd alkotja a fa gyökerét, amelyiknek a legkisebb a sorozatszáma. A kö vetkező lépésben a gyökértől minden egyes hídhoz és LAN-hoz menő legrövidebb út vonalat kijelölő fa meghatározása történik. Ez a fa lesz a feszítőfa. Ha valamelyik LAN vagy híd meghibásodik, újabb fa készül. Az algoritmus eredménye az, hogy minden LAN számára egyetlen útvonal lett meg határozva a gyökér felé, és így a többi LAN felé is. Igaz, hogy a fa lefedi az összes LAN-t, de nem biztos, hogy az összes híd szerepel benne (a hurkok elkerülése miatt). Miután a feszítőfa elkészült, az algoritmus tovább fut, hogy a hálózat topológiai változá sait automatikusan észlelhesse, és a fát bármikor frissíthesse. A feszítőfa kialakítására alkalmazott elosztott algoritmust Radia Perlman fejlesztette ki, és munkájában részlete sen tárgyalja (Perlman, 2000). Az algoritmust az IEEE 802.1D szabvány írja le.
365
A KÖZEGELÉRÉSI ALRÉTEO
4.7.4.
Távoli hidak
A hidakat sokszor arra használják, hogy kettő vagy több, egymástól távoli LAN-t kösse nek velük össze. Lehetséges például, hogy egy vállalatnak különböző' városokban van nak a telephelyei, és mindegyiknek van saját LAN-ja. Ideális esetben célszerű az összes LAN-t összekötni, hogy az egész rendszer úgy működjön, mint egyetlen nagy LAN. Ez a cél úgy érhető' el, ha mindegyik LAN-ra csatlakoztatunk egy hidat, és a hida kat páronként átviteli vonalakon keresztül összekötjük (pl. a telefontársaságtól bérelt vonalakkal). A 4.45. ábrán egy egyszerű rendszer látható, mely három LAN-t foglal magába. A megszokott forgalomirányítási algoritmusok itt is érvényesek. A legegy szerűbb módon úgy láthatjuk ezt be, ha a három átviteli vonalat olyan LAN-oknak te kintjük, amelyeken egyetlen hoszt sincs. Ekkor egy olyan hagyományos rendszert ka punk, melyben hat LAN-t köt össze négy híd. Elvégre az eddig tanultak során sehol nem állítottuk azt, hogy egy LAN-on állomásoknak is kell lenniük. A kétpontos kapcsolatokon számos különböző protokoll is használható. Az egyik lehetőség az, hogy valamelyik szabványos kétpontos adatkapcsolati protokollt vá lasztjuk (pl. a PPP-t), és a teljes MAC-kereteket berakjuk az adatmezőbe. Ez a straté gia akkor működik a legjobban, ha a LAN-ok egyformák, és az egyetlen problémát az jelenti, hogy a kereteket a megfelelő LAN-ra továbbítsuk. Egy másik lehetőség az, hogy a forráshídnál eltávolítják a MAC-fej- és -lábrészt, és a maradékot helyezik a kétpontos protokoll adatmezejébe. Ekkor a célhíd új MAC-fej- és -lábrészt állít elő az adatok számára. Ennek a megközelítésnek az a hátránya, hogy a célállomáshoz meg érkező ellenőrző összeg nem azonos azzal, amit a küldő állomás számított ki, így a hidak memóriájában előforduló hibás bitek által okozott hibák felderítetlenül maradhatnak. ^Híd J
h-1
1.LAN
SA. L \
^ ^ Két pontot / T S^ összekötő ^ ^ ^ ^ / _| \ ~ átviteli vonal Js
\ j
\ 2. LAN
3. LAN 4.45. ábra. Az egymástól távol eső LAN-ok távoli hidakkal köthetők össze
4.7.5.
Ismétlők, elosztók, hidak, kapcsolók, routerek és átjárók
A könyvben ez idáig számos módját láthattuk annak, hogyan lehet kereteket és cso magokat egyik kábelszegmensről a másikra átvinni. Megemlítettük az ismétlőket, hi dakat, kapcsolókat, routereket és az átjárókat is. Mindegyik eszközt széles körben használják, de többé-kevésbé eltérnek egymástól. Mivel ilyen sokan vannak, talán ér demes egyszer együtt is megvizsgálni őket, hogy lássuk, miben hasonlítanak, és mi ben különböznek.
366
SZÁMÍTÓGÉP-HÁLÓZATOK
Kezdjük azzal, hogy ezek az eszközök különböző rétegekben működnek, ahogy azt a 4.46.(a) ábra is szemlélteti. Azért fontos, hogy melyik rétegről van szó, mert a kü lönböző eszközök más-más információt használnak fel annak eldöntésére, hogy ho gyan kapcsoljanak. A tipikus felállás az, hogy a felhasználó előállít valamilyen adatot, melyet egy távoli gépnek kíván küldeni. Ez az adat átkerül a szállítási rétegbe, ami hozzárak egy (pl. TCP) fejrészt, és az így kapott adategységet továbbadja a hálózati rétegnek. A hálózati réteg is hozzáadja a saját fejrészét, így egy hálózati rétegbeli (pl. IP) csomagot kap. A 4.46.(b) ábrán az IP-csomagot szürke árnyékolással jelöltük. A csomag ezt követően az adatkapcsolati réteghez kerül, mely hozzárakja saját fejrészét és ellenőrző összegét, majd az így kapott keretet átadja a fizikai rétegnek (pl. egy LAN-on keresztüli) átvitelre. Tekintsük most a kapcsolóeszközöket, és nézzük meg, hogyan viszonyulnak a csomagokhoz és a keretekhez! Legalul, a fizikai rétegben találjuk az ismétlőket. Ezek analóg eszközök, melyek két kábelszegmenshez csatlakoznak. Az egyik szegmensen megjelenő jelet az ismétlő regenerálja, és átrakja a másikra. Az ismétlők nem ismerik a kereteket, a csomagokat vagy a fejrészeket - csak a voltokat értik. A klasszikus Ethernetet például úgy tervezték, hogy négy ismétlőt lehessen használni, így a maxi mális kábelhossz 500-ról 2500 méterre nőtt. Következő eszközünk az elo^ztó_(|\ubJ. Az elosztónak számos bemeneti vonala van, melyeket egyszerűen villamosan csatlakoztat. A bármelyik vonalon beérkező ke retek az összes többi vonalon kivitelre kerülnek. Ha két keret egyszerre érkezik, akkor ütközni fognak, pontosan úgy, mint egy koaxiális kábelen. Más szóval az egész el-
Alkalmazási átjáró
Alkalmazási réteg Szállítási réteg
Szállítási átjáró
Hálózati réteg
Router
Adatkapcsolati réteg
Híd, kapcsoló
Fizikai réteg
Ismétlő, elosztó
(a) Csomag (a hálózati réteg állítja elő) Keretfejrész
Csomag fejrész
TCPfejrész
Felhasználói adat
CRC
Keret (az adatkapcsolati réteg állítja össze) (b)
4.46. ábra. (a) Az egyes eszközök és a rétegek, ahol megtalálhatók, (b) Keretek, csomagok és fejrészek
367
A KÖZEGELÉRÉSI ALRÉTEG
osztó egyetlen ütköztetési tartományt képez. Az elosztóba érkező vonalaknak ugyan azzal a sebességgel kell működniük. Az elosztók annyiban különböznek az ismétlők től, hogy (általában) nem regenerálják a beérkező jeleket, és olyan a kialakításuk, hogy több vonali kártya is csatlakoztatható hozzájuk, a kártyákon pedig több bemenet is lehet. Ezek a különbségek azonban nem olyan jelentősek. Az ismétlőkhöz hasonló an az elosztók sem nézik meg vagy használják bármi más módon a 802-es címeket. A 4.47.(a) ábrán egy elosztót láthatunk. Lépjünk most feljebb azjd^ajjcjolatirétegbe, ahol a hidakat és a kapcsolókat ta láljuk! A hidakat nemrég tanulmányoztuk. Egy hídjcettő vagy több LAN-t köt össze, ahogy azt a 4.47.(b) ábra mutatja. Amikor megérkezik egy keret, a híd szoftvere kiol vassa a célcímet a keret fejrészéből, és egy táblázatból meghatározza, hogy hová kell küldeni az adott keretet. Az Ethernet esetében ez a cím a 4.17. ábrán látható 48 bites célcím. Az elosztókhoz hasonlóan a modern hidaknak is vonali illesztőkártyáik van nak, rendszerint négy vagy nyolc darab, adott típusú bemeneti vonalhoz. Egy Ethernetes vonali kártya nem képes kezelni például a vezérjeles gyűrű kereteit, mert nem tudja, hol találja fejrészükben a célcímet. Egy hídban ugyanakkor többféle vonali kártya is \eh&t_a^^r^2ŐJ)4lózMtípmQMlSZL^S^^ödéú_ sebességekhez. A hídnál, az elosztóval ellentétben, minden vonal külön ütköztetési tartományt képez. A kapcsolók annyiban hasonlítanak a hidakhoz, hogy mindkettő a keretek címei alapján végzi a forgalomirányítást. A híd és a kapcsoló fogalmát tulajdonképpen so kan egyenértékűnek tekintik. A legnagyobb különbség a két eszköz között az, hogy a kapcsolót többjTyJr^]^lön^k2_számítógépek_összekötésére használják, amint azt a 4.47.(c) ábra is mutatja. Ebből következik, hogy ha a 4.47.(b) ábrán látható A hoszt egy keretet akar küldeni a B-nek, akkor a híd is megkapja a keretet, de el is dobja azt. Ezzel szemben a 4.47.(c) ábrában a kapcsolónak kell aktívan továbbítania a keretet Atól fi-ig, hiszen más út nem létezik a két hoszt között. Mivel általában a kapcsoló minden portja egy különálló számítógéphez megy, a kapcsolóknak sokkal több vonali kártyát kell befogadniuk, mint a csak LAN-okat összekötő hidaknak. A kártyák portjain beérkező keretek számára pufferterületet is fenntartanak. Mivel minden port saját ütköztetési tartományt képez, a kapcsolók sosem veszítenek el kereteket ütközé sek miatt. Ha viszont a keretek gyorsabban érkeznek be, mint ahogy a kapcsoló újra ki tudná adni azokat, akkor elfogyhat a pufferterület, és el kell dobni a kereteket. /\
E3
(
[D
Hoszt Kapcsoló
Elosztó -LAN [
(a)
F
C3
(b)
4.47. ábra. (a) Elosztó, (b) Híd. (c) Kapcsoló
1H
368
SZÁMÍTÓGÉP-HÁLÓZATOK
Ezt a gondot a modern kapcsolók némiképp enyhíteni képesek azzal, hogy már ak kor elkezdik a keret továbbítását, amikor még csak a célcím fejrészmező érkezett meg, a keret többi része nem (feltéve persze, hogy a kimeneti vonal szabad). Az ilyen, nem tárol-és-továbbít elvű kapcsolást alkalmazó eszközöket átvágó (cut-through) kap csolóknak nevezzük. Az átvágást rendszerint teljes egészében a hardver kezeli, ellen tétben a hagyományos hidakkal, ahol a tárol-és-továbbít kapcsolást egy tényleges pro cesszor végezte szoftveresen. A modern hidak és kapcsolók azonban speciális integ rált áramkörök útján oldják meg a kapcsolást, ezért a kapcsoló és a híd közötti kü lönbség ma nem annyira a műszaki megoldások, hanem sokkal inkább a marketing kérdése. Láthattuk eddig az ismétlőket és az elosztókat, melyek eléggé hasonlók, valamint a hidakat és a kapcsolókat, melyek szintén nagyon hasonlítanak egymáshoz. Most to vábblépünk a routgrekhez, melyek az összes eddigi eszköztől különböznek. Amikor egy csomag megérkezik egy routerhez, akkor a keret fej- és lábrészét eltávolítják^ és a keret adatmezejében található csomagot (amit a 4.46. ábrán sötéttel jelöltünk) átadják a forgalomirányító szoftvernek. Ez a szoftver a csomag fejrészének segítségével vá lasztja ki a megfelelő kimeneti vonalat. IP-csomag esetén a csomag fejrésze nem a 48 bites 802-es címet, hanem a 32 bites (IPv4) vagy 128 bites (IPv6) címet tartalmazza. A forgalomirányító szoftver nem látja a keretben levő címeket, és azt sem tudja, hogy a csomag egy LAN-on vagy kétpontos vonalon érkezett-e be. A routereket és a for galomirányítást az 5. fejezetben tárgyaljuk. Egy réteggel feljebb találjuk a szállítási átjárókat. Ezek két olyan számítógépet kötnek össze, melyek eltérő összeköttetés alapú szállítási protokollt használnak. Te gyük fel például, hogy egy összeköttetés alapú TCP/IP-protokollt használó gép egy összeköttetés alapú ATM-protokollt használó géppel szeretne kommunikálni. Ekkor a szállítási átjáró átmásolhatja a csomagokat az egyik összeköttetésről a másikra, mi közben a szükséges módon átalakítja azok formátumát. Végül, az alkalmazási átjárók az adatok formátumát és tartalmát is megértik, és ké pesek lefordítani az üzeneteket az egyik formátumról a másikra. Egy e-levél átjáró például az internetes üzeneteket SMS-üzenetekre fordíthatja a mobiltelefonok számára^
4.7.6
Virtuális LAN-ok
A helyi hálózatok korai időszakában vastag sárga kábelek kígyóztak végig az iroda épületek kábelcsatornáin. Minden számítógép, amely mellett elhaladtak, ezekre csat lakozott. Gyakran több kábel is volt, mely egy központi gerinchálózathoz (lásd a 4.39. ábrát) vagy egy központi elosztóhoz kapcsolódott. Senki nem foglalkozott azzal, hogy melyik gép melyik LAN-hoz tartozik. Az egymás melletti irodák összes felhasználója ugyanazt a LAN-t használta, akár összetartoztak, akár nem. Az elhelyezkedés fontosabbnak bizonyult az ésszerűségnél. Az 1990-es években a lOBase-T és az elosztók megjelenésével mindez megválto zott. Az épületeket (jelentős kiadások árán) újrakábelezték, hogy megszabaduljanak az összes sárga kerti locsolótömlőtől, és minden irodából sodrott érpárokat vezettek a folyosók végén vagy a központi gépteremben lévő kábelrendezőkhöz, ahogy azt a
A KÖZEGELÉRÉSI ALRÉTEG
369
az elosztó felé 4.48. ábra. Központi kábelezést használó épület elosztókkal és egy kapcsolóval 4.48. ábra is szemlélteti. Ha a kábelezésért felelős alelnök történetesen látnók volt, akkor 5-ös kategóriájú sodrott érpárokat telepítettek; de ha szűkmarkú volt, akkor a meglevő (3-as kategóriájú) telefonvezetékeket használták (aztán pár év múlva azokat is le lehetett cserélni, amikor a gyors Ethernet megjelent). Az elosztókat (és később kapcsolókat) alkalmazó Ethernet révén sok esetben lehetó'vé vált, hogy a LAN-okat ne fizikai, hanem logikai úton alakítsák ki. Ha egy vállalat k darab LAN-t akar, akkor megvásárol k darab elosztót. Ha kellő gondot fordítanak annak eldöntésére, hogy melyik csatlakozót melyik elosztóba dugják, akkor a LAN-ok tagjait az elhelyezkedéstől viszonylag függetlenül, a szervezeti felépítésnek megfele lően lehet megválasztani. Persze, ha két ember ugyanannál a részlegnél, de más-más épületben dolgozik, akkor valószínűleg más elosztókhoz, és így más LAN-okhoz fog nak kapcsolódni. A helyzet azonban még így is sokkal jobb annál, mint ha a LANtagságot kizárólag az elhelyezkedésre kellene alapozni. Egyáltalán számít az, hogy ki melyik LAN-on van? Végül is gyakorlatilag minden szervezetnél össze van kötve az összes LAN. A rövid válasz mégis az: igen, gyakran számít. A rendszergazdák több okból kifolyólag is szeretik, ha a LAN-okon lévő fel használói csoportok nem az épület fizikai elrendezését, hanem az intézmény szerve zeti rendjét tükrözik. Az első ok a biztonság. Bármelyik hálózati illesztőt át lehet ál lítani válogatás nélküli üzemmódba, hogy átmásolja a csövön bejövő összes forgal mat. Sok részlegnél, például a kutatási, szabadalmi vagy könyvelési osztályokon olyan információk vannak, melyeket nem szeretnének a részlegen kívül látni. Ilyen helyzet ben ésszerű dolog a részleg összes dolgozóját egy LAN-ra tenni, és semmilyen for galmukat nem engedni ki a LAN-ról. Egy vállalati vezetés pedig nem szívesen hallja azt, hogy egy ilyen elrendezést csak akkor lehetséges kialakítani, ha az egyes részle gek dolgozói mind közvetlenül szomszédos irodákban ülnek, közbeékelődések nélkül. A második gondot a terhelés jelenti. Egyes LAN-okat sokkal intenzívebben hasz-
370
SZÁMÍTÓGÉP-HÁLÓZATOK
nálnak, mint másokat, és olykor kívánatos lehet elkülöníteni az ilyeneket. Ha például a kutatási osztályon dolgozók mindenféle remek kísérletet folytatnak, amik felett néha elvesztik az uralmukat és a LAN-juk telítődik, akkor a könyvelésen lehet, hogy nem fognak lelkesedni azért, hogy némi hálózati kapacitással segítsék ki a kollégákat. A harmadik az adatszórás kérdése. A legtöbb LAN támogatja az adatszórást, és sok felsőbb rétegbeli protokoll alaposan ki is használja ezt a lehetőséget. Például, ha egy felhasználó egy csomagot szeretne küldeni az x IP-címre, akkor honnan fogja tudni, hogy milyen MAC-címet rakjon a keretbe? Ezzel a kérdéssel az 5. fejezetben fogunk foglalkozni, de a válasz röviden az, hogy szétküld egy keretet, mely azt a kérdést tar talmazza: „Kié az x cím?", majd várja a választ. Sok példát említhetnénk még az adat szórás használatára. Lényeg az, hogy amint egyre több LAN-t kötnek össze, az egyes gépeken átmenő adatszórások száma várhatóan a gépek számával egyenes arányban fog nőni. Az adatszórással függ össze az a probléma is, hogy néha az is előfordulhat, hogy egy hálózati illesztő meghibásodik, és adatszórással elküldött keretek végtelen folya mát állítja elő. Az ilyen adatszórási vihar (broadcast storm) eredménye az, hogy (1) ezek a keretek lekötik a teljes LAN kapacitását, és (2) az összes összekapcsolt LAN-on lévő gépet megbénítja a szétszórt keretek feldolgozása és eldobása. Első látásra úgy tűnhet, hogy az adatszórási viharok kiterjedését korlátozni lehetne a LAN-ok hidakkal vagy kapcsolókkal történő szétválasztásával, de ha az átlátszóság elérése a cél (azaz, hogy egy gépet át lehessen vinni a hídon egy másik LAN-ra anél kül, hogy azt bárki is észrevenné), akkor a hidaknak az adatszórással elküldött kerete ket is továbbítaniuk kell. Most, hogy láttuk, miért akarhatnak a vállalatok több, korlátozott kiterjedésű LAN-t kiépíteni, térjünk vissza a logikai és a fizikai topológia szétválasztásának problémájá ra. Tegyük föl, hogy a vállalat egyik felhasználója átkerül egyik részlegről a másikra anélkül, hogy kiköltözne az irodájából; vagy éppen átköltözik egy másik irodába anélkül, hogy átkerülne egy másik részlegbe. Ha a kábelezésnél elosztókat használ nak, akkor a megfelelő LAN-ra való áthelyezés úgy oldható meg, hogy a rendszergaz da lemegy a kábelrendezőhöz, és a felhasználó gépének csatlakozóját átdugja egy má sik elosztóba. Sok vállalatnál állandóan szervezeti változások történnek, ami azt jelenti, hogy a rendszergazdák rengeteg időt töltenek azzal, hogy csatlakozókat húznak ki az egyik helyről, és máshová dugják azokat vissza. Ráadásul bizonyos esetekben az áthelyezés egyáltalán nem megoldható, mert a felhasználó gépéből kijövő sodrott érpár túl meszsze van a megfelelő elosztótól (pl. másik épületben van). A hálózati gyártók a nagyobb rugalmasságot megcélzó felhasználói igények kielé gítésére egy olyan megoldás kidolgozásába kezdtek, melynek segítségével az épülete ket teljes egészében szoftveres úton át lehet kábelezni. A munka eredménye a VLAN (Virtual LAN - virtuális LAN) nevű elgondolás lett, melyet még a 802-es bizottság is szabványosított. Vessünk hát egy pillantást erre a rendszerre, melyet mostanában telepítenek több szervezetnél! A VLAN-okról további információkkal szolgál (Breyer és Riley, 1999; valamint Seifert, 2000) munkája. A VLAN-ok a külön erre a célra tervezett VLAN-képes kapcsolókon alapulnak, bár helyenként előfordulhat még néhány elosztó is, mint a 4.48. ábra esetében. Egy
371
A KÖZEGELÉRÉSI ALRÉTEG
(a)
(b)
4.49. ábra. (a) Négy fizikai LAN, melyet két híd segítségével két VLAN-ba rendeztünk (szürke é fehér), (b) Ugyanaz a 15 gép, ezúttal kapcsolók révén két VLAN-ba rendezve VLAN alapú hálózat kiépítésekor a rendszergazda eldönti, hogy hány VLAN-t fog használni, melyik gép melyik VLAN-on lesz, és hogy mi lesz az egyes VLAN-ok ne ve. A VLAN-okat sokszor (nem hivatalosan) színekről nevezik el, mivel így színes diagramokat lehet nyomtatni, melyek a gépek fizikai elrendezését mutatják, és a piros LAN tagjait pirossal, a zöld tagjait zölddel jelölik, és így tovább. Ily módon egyetlen ábrán látható mind a logikai, mind a fizikai elrendezés. Példaként tekintsük a 4.49.(a) ábrán látható négy LAN-t, ahol az SZ (szürke) VLAN-hoz nyolc, az F (fehér) VLAN-hoz pedig hét gép tartozik. A négy fizikai LAN-t a Bl és a B2 híd köti össze. Központi sodrott érpáros kábelezés esetén akár négy elosztó is használható még (ezeket nem jelöltük), de a többpontos kábel és az el osztó logikai szempontból ugyanazt a dolgot jelentik. Az ábrát tehát így rajzoltuk meg, hogy ne legyen annyira zavaros. A „híd" kifejezést mostanában leginkább abban az esetben használják, amikor több gép van minden egyes porton, mint a mi esetünk ben is, de a „híd" és a „kapcsoló" fogalma egyébként lényegében felcserélhető. A 4.49.(b) ábra ugyanezt a VLAN-t mutatja ugyanezekkel a gépekkel, de itt kapcsolókat használtunk, melyeknek minden egyes portjára csak egy gép csatlakozik. Ahhoz, hogy a VLAN-ok helyesen működjenek, konfigurációs táblázatokat kell felállítani a hidakban vagy a kapcsolókban. Ezek a táblázatok azt mondják meg, hogy az egyes VLAN-okat melyik port (ill. kimeneti vonal) segítségével lehet elérni. Ha beérkezik egy keret mondjuk a szürke VLAN-ról, akkor azt minden SZ jelű portra to vábbítani kell. Ez egyaránt vonatkozik a hagyományos (azaz egyesküldéses), valamint a többesküldéses és adatszórásos forgalomra is. Figyeljük meg, hogy egy portot több VLAN-színnel is fel lehet címkézni. Ez a 4.49. (a) ábrán látszik a legjobban. Tegyük fel, hogy az A gép adatszórással szétküld egy keretet. A Bl híd megkapja ezt a keretet, és látja, hogy szürke VLAN-on lévő géptől érkezett, ezért továbbítja azt minden SZ-szel címkézett portján (kivéve a bejö-
372
SZÁMÍTÓGÉP-HÁLÓZATOK
vő portot). Mivel itt a 57-nek csak két másik portja van és mindkettő SZ-szel címké zett, a keretet mindegyikre elküldi. A 52-nél másképp fest a helyzet. Itt a híd tudja, hogy nincsenek szürke gépek a 4. LAN-on, ezért oda nem továbbítja a keretet, csak a 2. LAN-ra. Ha a 4. LAN-on az egyik felhasználó részleget vált és a szürke VLAN-on lesz a helye, akkor a 52-ben a táblázatokat úgy kell módosítani, hogy az adott port címkéje F helyett SZF legyen. Ha az F gép a szürkékhez kerül, akkor a 2. LAN felé vezető portot kell SZF helyett SZ-re változtatni. Most képzeljük el azt, hogy a 2. és a 4. LAN-on minden gép szürke lesz! Ekkor nem csak a B2 2. és 4. LAN felé vezető portjait kell SZ-szel megjelölni, hanem ö/-nek a B2 felé vezető portját is át kell változtatni SZF-ről SZ-re, mivel az 1. és 3. LAN-ról a Bl-re érkező fehér kereteket már nem kell a 52-höz továbbítani. A 4.49.(b) ábra esetére ez ugyanúgy érvényes, de ott az egyes gépekhez menő portok mindig csak egy színnel van nak megjelölve, hiszen csak egyféle VLAN kapcsolódik hozzájuk. Eddig azt feltételeztük, hogy a hidak és a kapcsolók valamiből tudják, hogy milyen szí nű a beérkező keret. De miből? A kérdésre a következő három módszer adhat választ: 1. Minden porthoz hozzárendelnek egy VLAN-színt. 2. Minden MAC-címhez hozzárendelnek egy VLAN-színt. 3. Minden 3. rétegbeli protokollhoz vagy IP-címhez rendelnek egy VLAN-színt. Az első módszer esetén tehát az egyes portokat címkézik fel VLAN-színekkel. Ez azonban csak akkor működik, ha az egyes portokon lévő összes gép ugyanahhoz a VLAN-hoz tartozik. A 4.49.(a) ábrán igaz ez a Bl híd 3. LAN felé vezető portjára, de nem érvényes az 1. LAN felé vezetőre. A második módszernél a híd vagy a kapcsoló egy olyan táblázattal rendelkezik, amely felsorolja az eszközhöz kapcsolódó gépek 48 bites MAC-címeit, és azt, hogy a gépek melyik VLAN-hoz tartoznak. Ilyen feltételek mellett egy fizikai LAN-on belül is lehetnek vegyes kialakítású VLAN-ok, mint a 4.49.(a) ábrán az 1. LAN esetében. Amikor beérkezik egy keret, akkor a hídnak vagy kapcsolónak csak annyi a dolga, hogy kiolvassa a MAC-címet és kikeresse azt a táblázatában, hogy megtudja, melyik VLAN-ról érkezett a keret. A harmadik módszer szerint a híd vagy a kapcsoló a keret adatmezejét vizsgálja meg, és például az összes IP-s gépet az egyik VLAN-hoz, az összes AppleTalk-os gé pet pedig egy másik VLAN-hoz tartozónak tekinti. Az előbbi gépek esetében az IPcím a gépek azonosítására is szolgálhat. Ez a stratégia akkor a leginkább célravezető, ha sok hordozható számítógépünk van, melyeket több fogadóállomáshoz (docking station) is csatlakoztatni lehet. Mivel minden fogadóállomásnak saját MAC-címe van, a fogadóállomás ismerete még semmit nem mond arról, hogy melyik VLAN-hoz tar tozik a hordozható számítógép. Ezzel a megközelítéssel csak az a probléma, hogy a hálózatok legalapvetőbb sza bályát sérti meg: a rétegek függetlenségét. Az adatkapcsolati rétegnek semmi köze nincs ahhoz, hogy mi van az adatmezőben. A rétegnek nem szabad megvizsgálnia az
A KÖZEGELÉRÉSI ALRÉTEG
373
adatmezó't, és semmiképpen sem szabad annak tartalma alapján döntéseket hoznia. Ez a megközelítés így azt eredményezi, hogy ha megváltozik valami a 3. réteg protokolljában (például átallnak IPv4-ről IPv6-ra), akkor a kapcsolók egyszerre csak nem fognak működni. Sajnos mégis vannak a piacon olyan kapcsolók, melyek így működnek. Természetesen semmi gond nincs azzal, hogy az IP-cím alapján végezzük a forga lomirányítást - az 5. fejezet csaknem teljesen az IP-s forgalomirányításnak van szentelve - de ha keverjük a rétegeket, abból csak bajunk származhat. Lehet, hogy egy kapcsoló gyártó semmibe veszi ezt az érvet, és azt mondja, hogy a kapcsolói értik az IPv4-et és az IPv6-ot is, tehát minden a legnagyobb rendben van. De mi van akkor, ha bejön az IPv7? A gyártó majd biztosan azt mondja: „Új kapcsolót kell venni, mi abban a rossz?"
Az IEEE 802.1Q szabvány Ha kicsit jobban belegondolunk a kérdésbe, észrevehetjük, hogy valójában magának a keretnek, és nem a küldő gépnek a VLAN-ja fontos. Ha lenne arra mód, hogy a keret fejrészében azonosítsuk a VLAN-t, akkor nem lenne szükség az adatmező megvizs gálására. Az új LAN-ok, például a 802.11 vagy a 802.16 esetében elég könnyű lett volna hozzáadni egy VLAN-mezőt a fejrészhez. A 802.16 Összeköttetés-azonosító mezője valójában hasonlít is szellemében egy VLAN-azonosítóhoz. De mit lehet tenni a leggyakoribb LAN-nal, az Ethernettel, melynek nincs semmilyen tartalék mezője egy VLAN-azonosító számára? Az IEEE 802-es bizottsága 1995-ben szembesült ezzel a problémával. Hosszas vi ták után megtették az elképzelhetetlent: megváltoztatták az Ethernet-fejrészt. Az új formátumot a 802.1Q IEEE-szabványban adták ki 1998-ban. Ez már tartalmaz egy VLAN-címkét, melyet most röviden bemutatunk. Nem meglepő, hogy nem teljesen triviális dolog valami olyasmit megváltoztatni, ami mindenhol olyan jól meghonoso dott, mint az Ethernet-fejrész. íme néhány a felmerülő kérdések közül: 1. Ki kell majd dobni a több százmillió meglevő Ethernet-kártyát? 2. Ha nem, akkor ki fogja előállítani az új mezőket? 2. Mi lesz azokkal a keretekkel, amelyek már e nélkül is elérték a maximális méretet? Persze a 802-es bizottság (nagyon is) tudatában volt ezeknek a problémáknak, és tudta, hogy mindegyikre megoldást kell találnia - amit meg is tett. A megoldás kulcsa az a felismerés, hogy a VLAN-mezőket ténylegesen csak a hi dak és a kapcsolók használják, a felhasználók gépei nem. így a 4.49. ábra esetében nem feltétlenül szükséges, hogy a végállomások felé vezető vonalakon is megjelenje nek az ilyen mezők; elég, ha a hidak vagy a kapcsolók között menő vonalakon szere pelnek. A VLAN-ok használatához tehát a hidaknak és a kapcsolóknak kell VLANképesnek lenniük, de ez eredetileg is követelmény volt. Most csak azt az új követel ményt vezettük be, hogy 802.1Q-képesek is legyenek, és az újabb eszközök ennek eleget is tesznek.
374
SZÁMÍTÓGÉP-HÁLÓZATOK
Ami a meglévő Ethernet-kártyák kidobását illeti: a válasz „nem". Emlékezzünk csak vissza rá, hogy a 802.3 bizottság még arra sem tudta rábírni az embereket, hogy a Típus mezőt Hossz mezőre változtassák. Ezek után elképzelhetjük, milyen reakció kí sérte volna azt a bejelentést, hogy minden meglevő Ethernet-kártyát ki kell dobni. Mindenesetre a piacon megjelenő új Ethernet-kártyák remélhetőleg már meg fognak felelni a 802.1Q előírásoknak, és helyesen töltik ki a VLAN-mezőket. De ha nem a kezdeményező állítja elő a VLAN-mezőket, akkor kicsoda? A válasz az, hogy a kerettel találkozó első VLAN-képes híd vagy kapcsoló helyezi el a mezőt, az útvonalon utolsóként szereplő pedig eltávolítja azt. De honnan tudja az eszköz, hogy melyik keret melyik VLAN-hoz tartozik? Nos, az első híd vagy kapcsoló hozzá rendelheti a VLAN-számot egy porthoz, megnézheti a MAC-címet, vagy (uram bocsa'!) megvizsgálhatja az adatmezőt. Amíg az Ethernet-kártyák nem fognak mind megfelelni a 802.1Q-nak, addig bizonyos értelemben ott fogunk tartani, ahol elkezd tük. Az igazi remény az, hogy minden gigabites Ethernet-kártya meg fog felelni a 802.1Q-nak, és ahogyan az emberek átallnak a gigabites Ethernetre, úgy kerül auto matikusan bevezetésre a 802.1Q is. Ami pedig az 1518 bájtnál hosszabb keretek kér dését illeti, a 802.1 Q egyszerűen felemelte a határt 1522 bájtra. Az átállási folyamat során sok elrendezésben lesznek egyszerre hagyományos (jel lemzően klasszikus vagy gyors Ethernet) gépek, amelyek nem VLAN-képesek, és má sok (jellemzően gigabites Ethernet-gépek), melyek igen. A helyzetet a 4.50. ábra szem lélteti, ahol a sötéttel jelzett szimbólumok a VLAN-képes, az üres szimbólumok pedig a nem VLAN-képes gépeket jelképezik. Az egyszerűség kedvéért azt feltételezzük, hogy az összes kapcsoló VLAN-képes. Ha nem ez lenne a helyzet, akkor az első VLAN-képes kapcsoló elhelyezhetné a megfelelő címkéket a MAC- vagy IP-címek alapján. A képen a VLAN-képes Ethernet-kártyák eleve címkézett (azaz a 802.1 Q-nak megfelelő) kereteket állítanak elő; a későbbi kapcsolásoknál ezeket a címkéket hasz nálják fel. Akárcsak az előzőkben, a kapcsolóknak itt is tudniuk kell, hogy az egyes VLAN-képes távoli körzet
VLAN-képes PC
VLAN-képes központi körzet
Felcímkézett \ keret VLAN-képes kapcsoló
Hagyományos távoli körzet
Hagyományos PC
Felcímkézett *-•.....-•• keret Hagyományos A kapcsolás keret címkék felhasználásával történik
4.50. ábra. Átállás hagyományos Ethernetről VLAN-képes Ethernetre. A sötéttel jelzett szimbólumok VLAN-képesek, az üresek nem
375
A KÖZEGELÉRÉSI ALRÉTEG
portjaikon mely VLAN-ok érhetők el. Az ugyanis, hogy egy keret a szürke VLANhoz tartozik, még nem sokat mond a kapcsolónak, amíg nem tudja, hogy mely portok útján érheti el a szürke VLAN gépeit. A kapcsolónak tehát szüksége van egy VLANok szerint indexelt táblázatra, mely megmondja, hogy mikor melyik portot kell hasz nálni, valamint azt, hogy az egyes portok VLAN-képesek vagy hagyományosak-e. Amikor egy hagyományos PC küld el egy keretet egy VLAN-képes kapcsolónak, akkor abból a kapcsoló egy új, címkézett keretet épít fel a küldő VLAN-jának isme retében (a port, a MAC-cím vagy az IP-cím felhasználásával). Ettől a ponttól kezdve nincs jelentősége annak, hogy a küldő egy hagyományos gép volt. Hasonlóképp, an nak a kapcsolónak, amelyik egy címkézett keretet szállít le egy hagyományos gépnek, a kézbesítés előtt át kell alakítania a keretet a hagyományos formátumra. Vegyük most szemügyre a 4.51. ábrán látható 802.1Q formátumot! A keretben az egyetlen változást két darab 2 bájtos mező hozzáadása jelenti. Az első a VLAN proto koll-azonosító (VLAN protocol ID), melynek értéke mindig 0x8100. Ez a szám na gyobb 1500-nál, ezért az Ethernet-kártyák nem hosszként, hanem típusként értelme zik. Az nem egyértelmű, hogy mit tesz egy hagyományos kártya egy ilyen kerettel, hi szen ilyen kereteket elvileg nem küldenek hagyományos kártyáknak. A második 2 bájtos mező három almezó't tartalmaz. Ezek közül a legfontosabb a VLAN-azonosító (VLAN identifier), ami az alsó 12 bitet foglalja el. Erről szól az egész történet: ez adja meg, hogy melyik VLAN-hoz tartozik a keret. A 3 bites Prioritás (Priority) mezőnek semmi köze a VLAN-okhoz, de mivel egy évtizedben úgyis csak egyszer módosítják az Ethernet-fejrészt, és ahhoz is három év és száz ember kell, ak kor, ha már egyszer nekiálltak, miért ne raknának bele még valami jó dolgot? Ez a mező lehetővé teszi a szigorú és kevésbe szigorú követelményeket támasztó valós idejű, valamint a nem időérzékeny forgalmak megkülönböztetését, hogy jobb szolgá latminőséget lehessen elérni az Etherneten. Erre az Etherneten keresztül történő be szédátvitelnél van szükség (bár az igazat megvallva, az IP-nek is van egy hasonló me zője immár negyed százada, és azt sem használta soha senki). Az utolsó bitet igazából nem is Cf7-nek (Canonical Formát Indicator - kanonikus formátumjelző), hanem VÖJ-nek (Vállalati OntudatJelző) kellene nevezni. A bitet eredetileg arra szánták, hogy megkülönböztessék vele az alsóvég kódolású MACcímeket a felsővég kódolású MAC-címektől, de ez a használat valahogy elsikkadt a
802.3
802.1Q
Cél Forrás Hossz cím cím Cél cím
Forrás cím
VLAN-protokollazonosító (0x8100)
Adatmező SS
Címke Hossz
Prioritás
Kitöltés
C
SS Adatmező SS
VLANazonosító
4.51. ábra. A (hagyományos) 802.3 és a 802.1Q keretformátumok
Ellenőrző összeg 1 Kitöltés
Ellenőrző összeg
376
SZÁMÍTÓGÉP-HÁLÓZATOK
viták során. Jelenléte ma már csak arra utal, hogy az adatmező egy nem módosítható 802.5-ös keretet tartalmaz, ami reményei szerint egy másik 802.5-ös LAN-t talál a céljánál, miközben a két hálózat között egy Etherneten halad át. Természetesen ennek az egész elrendezésnek semmi köze nincs a VLAN-okhoz. De hát a szabványosítási bizottságokban is csak úgy működik a politika, mint máshol: ha te megszavazod az én bitemet, én is megszavazom a tiédet. Mint már említettük, ha egy címkézett keret érkezik egy VLAN-képes kapcsoló hoz, akkor a kapcsoló a VLAN-azonosító alapján keresi ki a táblázatból, hogy melyik porton kell a keretet kiküldeni. De honnan jön a táblázat? Ha kézzel kell összeállítani, mint annakidején a kézi konfigurációs hidakat, akkor ott vagyunk, ahol a part szakad. Az átlátszó hidak szépsége pont abban van, hogy csatlakoztatás után rögtön működ nek, és nem igényelnek semmilyen kézi beállítást. Nagy szégyen lenne elveszíteni ezt a tulajdonságot. Szerencsére a VLAN-képes hidak is képesek automatikusan konfigu rálni magukat az elhaladó címkék megfigyelése alapján. Ha például egy 4-es VLANcímkét hordozó keret a 3-as porton érkezik be, akkor a 3-as porton lévő egyik gép nyilvánvalóan a 4-es VLAN tagja. A 802.IQ szabvány (mely többnyire a 802.1D-ben szabványosított Perlman-algoritmus megfelelő részeire hivatkozik) elmagyarázza, ho gyan kell dinamikusan felépíteni a táblázatokat. Mielőtt elhagynánk a VLAN-ok forgalomirányításának témáját, érdemes egy utol só megfigyelést tennünk. Az internet és az Ethernet világában sokan fanatikus hívei az összeköttetés nélküli hálózatoknak, és hevesen elleneznek mindent, ami egy kicsit is emlékeztet az összeköttetésekre az adatkapcsolati vagy a hálózati rétegekben. A VLAN mégis valami olyasmit vezetett be, ami meglepően hasonlít az összekötteté sekhez. Egy helyesen működő VLAN-ban ugyanis minden keret egy új, speciális azo nosítót hordoz, amit a kapcsoló táblázatában arra használnak, hogy kikeressék, hová kell küldeni a keretet. Pontosan ez az, ami az összeköttetés alapú hálózatokban is tör ténik. Az összeköttetés nélküli hálózatokban a célcím alapján végzik a forgalomirá nyítást, nem pedig valamiféle összeköttetés-azonosító alapján. Az effajta, mélyben meglapuló összeköttetés-elvűségről az 5. fejezetben még többet is olvashatunk.
4.8.
Összefoglalás
Egyes hálózatok csak egyetlen csatornával rendelkeznek, és minden kommunikáció ezt használja. Az ilyen hálózatokban a tervezés kulcskérdése az, hogy a csatornát ho gyan osszuk ki a használatáért versengő állomások között. Számos csatornakiosztási algoritmust dolgoztak már ki, ezek közül a fontosabb módszerek összefoglalója a 4.52. ábrán található. A legegyszerűbb kiosztási séma az FDM és a TDM. Ezek akkor hatékonyak, ha az állomások száma kicsi, rögzített, és a forgalom állandó. Mindkét sémát széles körben használják azokon a helyeken, ahol ezek a feltételek teljesülnek, például a sávszéles ség felosztásánál a telefontrönkökön. Amikor az állomások száma nagy és változó, vagy amikor a forgalom lökésszerűen változik, akkor az FDM és a TDM használata nem szerencsés. Alternatív megoldás-
377
A KÖZEGELÉRÉSI ALRÉTEG
Módszer
Leírás
FDM WDM
Minden állomáshoz saját frekvenciasáv tartozik
TDM Egyszerű ALOHA
Minden állomáshoz saját időrés tartozik
Résért ALOHA
Véletlenszerű forgalmazás a jól meghatározott időrésekben
1-perzisztens CSMA
Szabványos csatornafigyeléses többszörös hozzáférés
Nemperzisztens CSMA
Véletlenszerű várakozás, ha a csatorna foglalt
p-perzisztens CSMA
CSMA, mely p valószínűséggel perzisztens
Dinamikus FDM-séma a fényvezető szálakhoz Nem szinkronizált forgalmazás bármely pillanatban
CSMA/CD
CSMA, amely leáll, ha ütközést érzékel
Bittérkép
Ciklikus ütemezés bit-térkép használatával
Bináris visszaszámlálás
A legmagasabb sorszámú kész állomás adhat
Fabejárás
Csökkentett versenyhelyzet kialakítása szelektív engedélyezéssel
MACA, MACAW
Vezeték nélküli LAN-protokollok
Ethernet
CSMA/CD kettes exponenciális visszalépéssel
FHSS
Frekvenciaugrásos szórt spektrum
DSSS
Közvetlen sorozatú szórt spektrum
CSMA/CA
Vivőérzékeléses többszörös hozzáférés ütközéselkerüléssel
4.52. ábra. Csatornakiosztási módszerek és rendszerek közös csatornákhoz ként az ALOHA-t javasolták ezekre az esetekre, akár réseléssel, akár a nélkül. Az ALOHA-t, valamint annak számos változatát és leszármazottját is sok helyen tár gyalták, elemezték és hasznosították valós rendszerekben. Ha a csatorna állapota érzékelhető, akkor az állomások elkerülhetik, hogy más ál lomások adása közben kezdjenek el adni. Ez a csatornafigyelésnek nevezett módszer egy egész sor LAN-ban és MAN-ban használatos protokoll kialakulását segítette elő. Ismeretes a protokolloknak egy olyan osztálya is, amely kiküszöböli, vagy leg alábbis jelentősen csökkenti a versenyhelyzetet. A bináris visszaszámlálás teljesen megszünteti a versengést. A fabejáró protokoll azzal csökkenti a versengés mértékét, hogy az állomásokat dinamikusan két különálló csoportra osztja, ahol az egyik csoport adhat, a másik nem. Ezt a felosztást pedig úgy igyekszik megtenni, hogy engedélyt csak egyetlen küldésre kész állomás kapjon. A vezeték nélküli LAN-ok sajátos problémákkal és megoldásokkal rendelkeznek. A legnagyobb gondot a rejtett állomások jelentik, így a CSMA itt nem működik. A megoldások egyik osztályát a MACA és a MACAW fémjelzik, melyek megpróbálják a célállomás körül előmozdítani az átviteleket, hogy a CSMA jobban működhessen. A frekvenciaugrásos szórt spektrum és a közvetlen sorozatú szórt spektrum módszere szintén használatos. Az IEEE 802.11 a CSMA és a MACAW kombinációjával hozza létre a CSMA/CA-t.
378
SZÁMÍTÓGÉP-HÁLÓZATOK
A helyi hálózatok meghatározó típusa az Ethernet. Ez CSMA/CD-t használ a csa tornakiosztásra. A régebbi változatok egy gépről gépre kígyózó kábelt használtak, de ma már az elosztókba és kapcsolókba vezető sodrott érpárok használata az általános. A sebesség eközben 10 Mb/s-ról 1 Gb/s-ra nőtt, és még mindig emelkedőben van. Lassan a vezeték nélküli LAN-ok is mindennapossá válnak. Ezen a téren a 802.11 a meghatározó szabvány. Ennek fizikai rétege öt különböző átviteli módot tesz lehe tővé, ezek között van egy infravörös, többféle szórt spektrumú, és egy többcsatornás FDM-rendszer is. A hálózat működhet úgy, hogy minden cellában van egy bázisállo más, de működhet a nélkül is. A protokoll a MACAW változata, virtuális vivőérzé keléssel. Kezdenek megjelenni a vezeték nélküli MAN-ok. Ezek olyan szélessávú rendsze rek, melyek azért használnak rádiós átvitelt, hogy helyettesítsék vele a telefonos öszszeköttetések utolsó mérföldjét. Itt hagyományos, keskenysávú modulációs eljáráso kat használnak. A szolgálatminőség fontos kérdés, ezért a 802.16 szabvány négy osz tályt is definiál (van egy állandó adatsebességű, két változó adatsebességű, és egy ga ranciák nélküli). A Bluetooth szintén vezeték nélküli rendszer, de inkább az asztali környezethez ké szült, hogy fejhallgatókat és más kiegészítőket lehessen segítségével a számítógéphez kapcsolni vezetékek nélkül. A rendszer lehetővé teszi azt is, hogy a számítógépen kí vül egyéb eszközöket, például faxgépeket mobiltelefonokhoz lehessen kapcsolni. A 802.1 l-hez hasonlóan ez is frekvenciaugrásos szórt spektrumot használ az ISMsávban. A környezetek nagy részében várható magas zajszint és a valós idejű haszná lat igénye miatt a rendszer számos protokolljába kifinomult hibajavítási eljárások is kerültek. Ilyen sok különböző LAN mellett a LAN-ok összekapcsolására is kell valamilyen megoldás. Erre a célra hidakat és kapcsolókat alkalmaznak. A feszítőfás algoritmus a csatlakoztatás után azonnal működőképes (plug-and-play) hidak esetében használatos. A LAN-ok összekapcsolásának világában új fejlesztésként jelent meg a VLAN, mely szétválasztja a LAN-ok logikai és fizikai topológiáját. Újfajta (802.1Q típusú) Ethernet-kereteket is kidolgoztak, hogy sok szervezet számára megkönnyítsék a VLAN-ok bevezetését.
Feladatok 1. Ennél a feladatnál e fejezet egyik képletét kell használnia. A megoldás előtt adja meg a használt képletet is! Az átvitelre szánt keretek véletlenszerű időközönként jelennek meg egy 100 Mb/s-os csatornán. Ha egy keret megérkezésekor a csator na foglalt, akkor a keret egy várakozási sorba kerül. A keretek hosszának eloszlá sa exponenciális, 10 000 bites várható értékkel. Adja meg a keretek által elszen vedett átlagos késleltetést (beleértve a sorban állás és az átvitel idejét is) a követ kező érkezési sebességek esetére!
A KÖZEGELÉRÉSI ALRÉTEG
379
(a) 90 keret/s. (b) 900 keret/s. (c) 9000 keret/s. 2. Egy N állomásból álló csoport egyetlen, 56 kb/s-os, egyszerű ALOHA-csatornán osztozik. Az állomások 1000 bites kereteiket 100 ms-onként küldik el még akkor is, ha az eló'ző kereteiket sem tudták elküldeni (pl. az állomások puffereinek). Mekkora lehet N maximális értéke? 3. Vegyük a késleltetést egyszerű és réselt ALOHA esetén, ha a terhelés kicsi! Me lyik a kisebb? Adjunk magyarázatot! 4. Tízezer repülőjegy-foglaló állomás egyetlen réselt ALOHA-csatorna használatá ért verseng. Egy átlagos állomás 18 kérést ad ki óránként. Egy rés hossza 125 us. Megközelítőleg mekkora a Celjes csatomaterhelés? 5. Egy nagyszámú ALOHA-felhasználókból
380
SZÁMÍTÓGÉP-HÁLÓZATOK
(b) a Mok- és Ward-féle protokollt használja permutált virtuális állomáscímekkel? 9. Egy LAN Mok- és Ward-féle bináris visszaszámlálást használ. Egy adott pillanat ban a tíz állomás a következő virtuális állomásszámot viseli: 8, 2, 4, 5, 1, 7, 3, 6, 9 és 0. A következő három állomás, amelyik küld, sorban 4, 3 és 9. Mik lesznek az új virtuális állomásszámok, miután mindhárom állomás befejezte az átvitelt? 10. Az adaptív fabejáró protokoll alkalmazásával tizenhat állomás verseng egy csator na használatáért. Ha az összes olyan állomás, amelynek prímszáma van, egyszerre kerül adásra kész állapotba, akkor mennyi bit-résre van szükség a versengés felol dásához? 11. Egy megosztott kábel használati jogáért 2" állomás egy csoportja verseng adaptív fabejárás protokoll használata mellett. Egy adott pillanatban kettő közülük adásra kész lesz. Minimálisan, maximálisan, illetve átlagosan hány időrés szükséges a fa bejárásához, ha 2" » 1? 12. A tanult vezeték nélküli LAN-ok CSMA/CD helyett inkább olyan protokollokat használtak, mint az MACA. Milyen körülmények mellett lehetne CSMA/CD-t használni? 13. Milyen tulajdonságok közösek a WDMA és GSM csatornakiosztási protokollokban? 14. Hat állomás kommunikál A-tól F-ig a MACA-protokoll segítségével. Lehetséges-e az, hogy két átvitel történik egyszerre? Indokolja válaszát! 15. Egy hétemeletes irodaház minden szintjén 15 szomszédos iroda van. Minden iro da elülső oldalán van egy terminálaljzat, így azok a függőleges síkon rácsozatot alkotnak. Az aljzatok mind függőlegesen, mind vízszintesen 4 m távolságban van nak egymástól. Ha feltesszük, hogy bármelyik két aljzat között kihúzható egyenes vonalban kábel, akkor hány méter kábelre van szükség az összes aljzat bekötésé hez, ha a használt hálózat: (a) Egy csillag összeállítás, egyetlen routerrel a közepén? (b) Egy 802.3 LAN? (c) Gyűrűhálózat, amely nem használ vonalközpontot? 16. Mekkora a baud-sebessége egy szabványos 10 Mb/s-os 802.3 LAN-nak? 17. Vázoljuk fel a 0001110101 bitsorozat Manchester-kódját! 18. Vázoljuk fel az előző feladat differenciális Manchester-kódját! Feltételezzük, hogy a vonal kezdetben alacsony állapotban van!
A KÖZEGELÉRÉSI ALRÉTEG
381
19. Egy 1 km hosszú, 10 Mb/s-os CSMA/CD LAN-on (nem 802.3) a terjedési sebes ség 200 m/|js. Az adatkeretek 256 bit hosszúak, amely magában foglalja a a fej rész, az ellenó'rző összege és az egyéb, nem adatjellegű információk 32 bitjét is. Egy sikeres átvitelt követó'en az első rés a vevó'nek van fenntartva azért, hogy egy 32 bites nyugtakeretet küldhessen a feladónak. Feltételezve, hogy nincsenek ütkö zések, mekkora a hasznos (fejléc nélküli) adatátviteli sebesség? 20. Két CSMA/CD-állomás hosszú (többkeretes) állományok elküldésével próbálko zik. Miután egy keretet valamelyikük elküldött, a bináris exponenciális visszalépéses algoritmus használatával ismét versenyezni kezdenek a csatorna használa táért. Mi a valószínűsége annak, hogy a versenyhelyzet k kör után feloldódik, és mi a versengési periódusonként szükséges körök várható száma? 21. Képzeljünk el egy 1 km hosszú CSMA/CD-hálózatot, amely 1 Gb/s sebességen működik, és nem tartalmaz ismétlőket! A jel sebessége a kábelben 200 000 km/s. Mekkora a minimális kerethossz? 22. Egy olyan IP-csomagot szeretnénk Etherneten átvinni, melynek hossza az összes fejrésszel együtt 60 bájt. Van-e szükség kitöltésre az Ethernet-keretben, ha nem használunk LLC-t, és ha igen, hány bájtnyi kitöltés szükséges? 23. Ethernet-hálózatok esetén a kereteknek legalább 64 bájt hosszúnak kell lennie, hogy az adó-vevó' biztosan adjon akkor is, ha a vezeték távoli részein következik be ütközés. A gyors Ethernet minimális kerethossza szintén 64 bájt, pedig a bite ket tízszer gyorsabban adja. Hogyan lehetséges, hogy ugyanazt a minimális kerethosszt használják? 24. Egyes könyvek nem 1500, hanem 1518 bájtnak említik az Ethernet-keretek ma ximális méretét. Tévednek vajon? Indokolja válaszát! 25. Az lOOOBase-SX specifikáció szerint az óráknak 1250 MHz-en kell működniük, pedig a gigabites Ethernetet csak 1 Gb/s szállítására szánták. Vajon azért válasz tották ezt a magasabb sebességet, hogy valamilyen biztonsági tartalékot képezze nek? Ha nem, akkor miről van itt szó? 26. Hány keretet képes kezelni a gigabites Ethernet másodpercenként? Jól gondolja meg válaszát, és vegye figyelembe az összes fontosabb esetet! Tipp: a protokoll nem véletlenül kapta a gigabites Ethernet nevet. 27. Mondjon két olyan hálózatot, melyekben szorosan egymást követhetik a keretek! Miért érdemes ezt a sajátságot biztosítani? 28. A 4.27. ábrán négy állomás: A, B, C és D látható. Az utolsó két állomás közül melyik van közelebb A-hoz, és miért?
382
SZÁMÍTÓGÉP-HÁLÓZATOK
29. Tegyük fel, hogy egy 11 Mb/s-os 802.11b LAN szorosan egymás után pakolt 64 bájtos kereteket visz át egy olyan rádiós csatornán, melynek bithibaaránya 10~7. Átlagosan hány keret fog megsérülni másodpercenként? 30. Egy 802.16-os hálózat 20 MHz-es sávszélességgel rendelkezik. Hány bitet lehet elküldeni másodpercenként egy előfizetői állomásnak? 31. Az IEEE 802.16 négy szolgáltatási osztályt támogat. Melyik osztály a leginkább megfelelő a tömörítetlen mozgóképek elküldésére? 32. Soroljon fel két okot, ami miatt a hálózatok hibajavító kódolást használhatnak a hibajelzés és újraadás helyett! 33. A 4.35. ábrán azt láthatjuk, hogy egy Bluetooth-eszköz két pikohálózatban is le het egyszerre. Indokolja-e valami azt, hogy egy eszköz ne lehessen mester egy időben mindkét hálózatban? 34. A 4.25. ábra több fizikai rétegbeli protokollt ábrázol. Ezek közül melyik áll leg közelebb a Bluetooth fizikai rétegének protokolljához? Mi a legnagyobb különb ség a két protokoll között? 35. A Bluetooth kétfajta kapcsolatot támogat egy mester egy szolga között. Melyek ezek, és mire használják ezeket? 36. A 802.11 frekvenciaugrásos szórt spektrumú változatában a jelzőfény (beacon) keretek tartalmazzák a tartózkodási időt. Mit gondol, vajon a Bluetooth hasonló jelzőfény keretei szintén tartalmazzák a tartózkodási időt? Fejtse ki válaszát! 37. Tekintsük a 4.44. ábra összekapcsolt LAN-jait! Tegyük fel, hogy az a és b hosztok az l-es, a c hoszt a 2-es, a d pedig a 8-as LAN-on helyezkedik el. Kez detben az összes híd hash-táblázata üres, és a 4.44.(b) ábrán látható feszítőfát használjuk. Mutassa meg, hogyan változnak meg az egyes hidak hash-táblázatai, miután rendre a következő események - először (a), aztán (b), és így tovább - kö vetkeznek be! (a) a küld d-nek. (b) c küld ö-nak. (c) d küld c-nek. (d) d átmegy a 6-os LAN-ra. (e) d küld a-nak.
A KÖZEGELÉRÉSI ALRÉTEG
383
38. Ha egy kiterjedt LAN-ban feszítőfát alkalmazunk a keretek elküldésénél, az töb bek között azzal jár, hogy egyes hidak esetleg egyáltalán nem vesznek részt a ke retek továbbításában. Mutasson három ilyen hidat a 4.44. ábrán! Indokolja valami az ilyen hidak megtartását, amikor nem is használjuk azokat a továbbítás során? 39. Képzeljük el, hogy egy kapcsolónak négy bemeneti vonal számára vannak vonali kártyái! Gyakran megesik az, hogy az egyik vonalon beérkező' keretnek ugyan azon kártya egy másik vonalán kell kimennie. Milyen döntések elé kerül a kap csoló tervezője ennek a helyzetnek köszönhetően? 40. Egy gyors Ethernethez tervezett kapcsolónak olyan hátlapja van, mely adatok 10 Gb/s sebességű mozgatására képes. Hány keretet képes kezelni ez az eszköz má sodpercenként a legrosszabb esetben? 41. Vegyük a 4.49.(a) ábra hálózatát! Ha a / gép hirtelen fehérré válna, meg kellene-e változtatni emiatt a címkézést? Ha igen, hogyan? 42. írja le röviden a tárol-és-továbbít és az átvágó elvű kapcsolók közti különbséget! 43. A tárol-és-továbbít elvű kapcsolóknak van egy előnyük az átvágó elvű kapcso lókkal szemben a sérült keretek vonatkozásában. Fejtse ki ezt az előnyt! 44. A VLAN-ok működéséhez a kapcsolókban és a hidakban konfigurációs tábláza tokra van szükség. Mi van akkor, ha a 4.49.(a) ábra VLAN-jai elosztókat használ nak többpontos kábelek helyett? Akkor az elosztókban is konfigurációs tábláza tokra lesz szükség? Miért igen vagy miért nem? 45. A 4.50. ábrán a jobb oldali hagyományos távoli körzetben lévő kapcsoló VLANképes. Hagyományos kapcsolót is lehetne itt használni? Ha igen, hogyan működ ne ez a megoldás? Ha nem, miért nem? 46. írjon programot, mely a CSMA/CD-protokoll Ethernet feletti működését szimu lálja abban az esetben, ha TV állomás áll adásra készen, miközben egy keret átvi tele folyamatban van! A programja adjon jelentést azokról az időpontokról, ami kor az egyes állomások sikeresen megkezdik a keretük elküldését! Felteheti, hogy minden időrésben (51,2 us-onként) történik egy óraütés, és az ütközések érzékelé se valamint az ütközési sorozat elküldése egy időrésnyi időbe telik. Az összes ke ret hossza a megengedett maximális kerethossz.