Vezérjeles sín (vezérjel-busz)
[1] Mint azt már az előbbiekben leírtuk, a gyártásautomatizálás sokszor igényel valós idejű, vagy felülről korlátos válaszidejű számítógépes hálózatot. Sajnos ennek az IEEE 802.3 szabvány nem tesz eleget. Egy másik probléma az, hogy ott a kereteknek nincs prioritása, azaz a fontos keretek nem kerülhetnek előnybe a kevésbé fontosakkal szemben.
A gyűrű felépítés, ahol az állomások egymásnak küldik sorba körbe a kereteket, ilyen szempontból jó megoldás: ha k állomás alkotja a gyűrűt, és T időig tart egy keret átvitele, akkor bármelyik állomás k*T időn belül képes kommunikálni (felső korlát).
Sajnos a gyűrű mint fizikai topológia kevéssé illeszkedik a futószalagok egyenes vonalú kialakításához. Ezért egy olyan kialakítást szabványosítottak, amely fizikailag lineáris buszkialakítása miatt üzenetszórásos módot használ (azaz a gyűrűtől eltérően nem pont-pont kapcsolati módon dolgozik). Logikailag azonban gyűrű felépítésű. Elnevezése: vezérjel busz, vagy vezérjeles sín.
A logikai gyűrű szervezés azt jelenti, hogy minden állomás ismeri a bal és a jobb oldali állomásának a címét. Ez a szomszédság nem a fizikai elhelyezkedés, hanem a gyűrűben elfoglalt logikai elhelyezkedés szerinti. Amikor a gyűrűt elindítják, elsőként a legmagasabb sorszámú állomás küldhet üzenetet. A küldés után átadja a küldés jogát a közvetlen szomszédjának, amit egy speciális keret a vezérjel (token) képvisel. Ez a vezérjel a logikai gyűrű mentén jár körbe, állomásról állomásra. Küldési joga csak a tokent birtokló állomásnak van, ezért ütközés nem jöhet létre. A gyűrűhöz csatlakozó állomások minden üzenetet vesznek, de csak a neki szólót veszik figyelembe.
Fontos megjegyezni, hogy a sínhez való fizikai csatlakozás nem jelent azonnal gyűrűhöz való csatlakozást is: az állomások gyűrűbe illesztése, illetve eltávolítása a vezérjel-busz MAC-protokolljának a hatáskörébe tartozik. Maga a protokoll nagyon bonyolult, 10 különböző időzítést, és számos belső állapotváltozót használ.
A fizikai réteg a kábeltelevíziózásban használt 75 ohmos szélessávú koaxiális kábel. Mind az egykábeles mind a kétkábeles (irányonként egy kábel) rendszer használható, főállomással, illetve az nélkül.
Három különböző modulációs módszer használható: fázis-folytonos ill. fázis-koherens frekvenciamoduláció, valamint amplitudó moduláció. A lehetséges sebességek: 1.5 ill. 10 Mbit/s. A modulációs technikák a kábel 0, 1 és tétlen állapota mellett még további három állapot fennállását is lehetővé teszik, amelyeket hálózatvezérlési célokra, jelzésátvitelre használnak.
A sín MAC protokollja
A gyűrű üzembe helyezésekor az állomások a gyűrűbe cím szerint csökkenő sorrendbe kerülhetnek be. A vezérjel küldés is mindig a nagyobbtól a kisebb sorszámú állomás felé irányul. Amikor egy állomás megkapja a vezérjelet, azt adott ideig birtokolhatja, és ez alatt az idő alatt — ha a keretei rövidek —, akár több keretet is elküldhet.
Ha a vezérjelet birtokló állomásnak nincs elküldendő kerete, akkor a tokent azonnal továbbküldi. A prioritás megvalósításának fontossága miatt négy, növekvő prioritási osztály van a forgalom számára: 0 , 2, 4, 6. Ez utóbbi a legnagyobb prioritású. Működési szempontból úgy is tekinthetjük, mintha minden állomás négy különféle prioritású alállomásból állna: az érkező kereteket a prioritásuk szerinti alállomás dolgozza fel.
Amikor a vezérjel megérkezik egy állomáshoz, annak 6-os alállomása aktivizálódik. Ha van kerete, azonnal kezdi küldésüket. Amikor végzett (vagy amikor az időzítése lejárt), a vezérjelet belül átadja a 4-es alállomásnak, amely szintén az időzítésének lejártáig küldhet kereteket. Ezután az is továbbadja a vezérjelet 2-es prioritású alállomásnak, majd az a 0-ás alállomásnak, ahol keretek elküldésre kerülnek. Ezek után a vezérjelet a következő állomásnak kell továbbküldeni.
Az időzítések megfelelő beállításával elérhető például az, hogy a teljes vezérjel-birtoklási idő egy jól meghatározott része a 6-os prioritású forgalomé legyen. Ez lehetővé teszi, hogy a hálózati adatátviteli kapacitás egy adott részét a 6-os prioritású forgalom számára tartsa fenn, és pl. hang vagy más valósidejű forgalom lebonyolítására használható. Az alsóbb prioritásoknak számára a maradék idő áll rendelkezésre.
Ha például 50 állomásos, 10 Mbit/s-os sebességű hálózat paramétereit úgy állítjuk be, hogy a 6-os prioritású forgalom a teljes kapacitás 1/3-át foglalja le, akkor az alállomások 1/3*10.000/50=67 kbit/s-os garantált sebességgel rendelkeznek a 6-os prioritású adatok átviteléhez.
Ez a sebesség állomásonként pédául egy kis, a vezérlőinformációk átvitelére alkalmas maradék kapacitással együtt, egy ISDN hangcsatorna megvalósításához elegendő.
A vezérjeles sín keretformátuma a 104. ábrán látható.
Az előtag, a vevő órájának szinkronizálását segíti elő. A kezdetjelző és a végjelző mező a keret határait jelzik. Mindkét mező analóg kódolású szimbólumokat tartalmaz, amelyek a digitális 0 és 1 kódolásától jelentősen különböznek. A speciális határoló jelek alkalmazása miatt nincs szükség adathossz mezőre.
104. ábra: 802.4 keretformátum
A keretvezérlés-mező az adat- és a vezérlőkereteket különbözteti meg egymástól, és adatkeretek esetén a keretek prioritását hordozza. Tartalmazhat olyan jelzést is, amely a célállomást a keret hibátlan vagy hibás vételének nyugtázására kötelezi.
Vezérlőkeretek esetén a keretvezérlés mező a keret típusát jelöli. A megengedett típusok halmaza a vezérjel-átadási és a különböző gyűrű-karbantartási keretekből áll. Ez utóbbiak között vannak az állomásokat a gyűrűbe be- illetve kiléptető kerettípusok. Megjegyezzük, hogy a 802.3 szabványban vezérlő keretek nincsenek. A következő táblázat a vezérlőkeretek mutatja be:
Keretvezérlő mező |
Név |
Feladata |
00000000 |
Claimtoken |
Vezérjel-igénylés gyűrű-inicializáláskor |
00000001 |
Solicit successor2 |
Az állomások beléptetésének engedélyezése |
00000010 |
Solicit successor1 |
Az állomások beléptetésének engedélyezése |
00000011 |
Who follows |
Felépülés elveszett vezérlőjelből |
00000100 |
Resolve contention |
Versenyhelyzet feloldás több állomás egyidejű gyűrűbe lépése esetén |
00001000 |
Token |
Vezérjel átadás |
00001100 |
Set successor |
Állomások kilépésének kezelése |
A célcím és a forráscím mező ugyanolyan, mint a 802.3-ban. Akárcsak a 802.3-ban, egy adott hálózatban vagy csak 2 bájtos, vagy csak 6 bájtos címeket használhatnak az állomások Az egyedi és csoportcímek, valamint a lokális és globális címek kijelölésére ugyanazok vonatkoznak, mint 802.3-asnál.
Az adatmező hossza 8182 bájt 2 bájtos címzés, illetve 8174 bájt 6 bájtos címzés esetén. Ez több mint ötszöröse a legnagyobb 802.3-beli keretnek. (Persze ott azért választottak rövid kereteket, hogy egy állomás ne tarthassa fel túl hosszú ideig a többi állomást). A vezérjeles sínen az időzítésekkel lehet korlátozni a hosszú keretek küldését, egyébként viszont nagyon kényelmes hosszú kereteket küldeni akkor, ha követelmény a valós időben történő feladat-végrehajtás. Az átviteli hibák kiszűrésére az ellenőrzőösszeg-mező szolgál. Ugyanazt az algoritmust használja, és ugyanúgy több tagú, mint a 802.3-é.
A logikai gyűrű karbantartása
Az állomások be- illetve kikapcsolása gyakran előforduló esemény, így meg kell oldani a gyűrűbe való be- és kiléptetést. A MAC réteg protokollja, az esetleg fellépő versenyhelyzetek feloldásával együtt ezt pontosan definiálja. A feloldási algoritmus a 802.3-nál megismert bináris exponenciális visszatartás módszere.
Miután a gyűrű felállt, minden állomásinterfész nyilvántartja a két logikailag szomszédos állomás címét. A vezérjel birtokosa a táblabeli Solicit-successor keretek egyikének elküldésével rendszeres időközönként ajánlatot kér a gyűrűhöz még nem tartozó állomásoktól. A keret a küldő és a küldőt a sorban követő állomás címét tartalmazza. Azért, hogy a gyűrűcímek csökkenő sorrend szerinti rendezettsége megmaradjon, csak az ebben a tartományban lévő állomások kérhetik beléptetésüket. Egyszerre csak egy állomás beléptetése valósulhat meg. Ennek az a célja, hogy korlátozni lehessen a gyűrűkarbantartásra felhasználható időt.
Ha egy adott időn belül egyetlen állomás sem ajánlkozik, akkor a vezérjel birtokosa folytatja tovább tevékenységét. Ha pontosan egy állomás kér belépést, akkor a beléptetés végrehajtódik, és ez az állomás lesz a vezérjel birtokosának következő új szomszédja.
Ha egyszerre két vagy több állomás jelent be belépési igényt, akkor kereteik, akár a 802.3 esetén, ütközni fognak és összekeverednek. A vezérjel birtokosa ezután egy Resolve-contention keret elküldésével kezdeményezi a versenyfeloldási algoritmus végrehajtását.
Az új állomások beléptetési kérelmei nem befolyásolhatják a vezérjel körbefutási idejének legrosszabb esetre számolt értékét. Minden állomásban van egy időzítő. óra, amely minden vezérjel-igényléskor nullázódik. Amikor a vezérjel beérkezik, az óra újbóli nullázása előtt az állomás megvizsgálja az óra értékét (azaz az előző vezérjel-körbejárási időt). Ha ez meghalad egy bizonyos értéket, akkor arra következtet, hogy a forgalom túl nagy, ezért ebben a körben az állomás nem fog belépési ajánlatot küldeni.
A gyűrű elhagyása ennél könnyebb. Egy Q állomás, amelyet a P állomás előz meg, és a R állomás követ, (sorrend: P - Q - R) úgy lép ki a gyűrűből, hogy P-nek egy Set-successor keretet küld, amellyel közli, hogy ezentúl P követője nem Q, hanem R (sorrend: P - R). Ezután a Q egyszerűen abbahagyja a küldést.
A gyűrű üzembe helyezése az új állomás beléptetésének egy speciális esete. Amikor bekapcsolják az első állomást, egy bizonyos idő múlva észreveszi, hogy nincs forgalom. Ezután egy Claim token keretet küld el. Mivel nem észlel más, vezérjelért versengő társat, ezért létrehoz egy vezérjelet, valamint egy gyűrűt, — amelynek egy tagja lesz, ez az állomás. Rendszeres időközönként kéri új állomások belépési ajánlatát. Ahogy új állomásokat kapcsolnak be, válaszolni fognak ezekre a kérésekre, és az előzőekben leírt mechanizmus szerint beléphetnek a gyűrűbe. Végső soron minden bekerülni akaró állomás be is tud kerülni a gyűrűbe.
Az átviteli és hardverhibák következtében probléma lehet a gyűrűvel és a vezérjellel is. Például, mi történik akkor, ha egy állomás a vezérjelet egy már működésképtelenné vált állomásnak továbbítja? A megoldás magától értetődő. Miután a vezérjelet elküldi, elkezdi figyelni a szomszédos állomást, hogy kibocsát-e vezérjelet vagy keretet. Ha nem küld semmit, akkor az állomás újabb vezérjelet küld.
Ha ez szintén tönkremegy, akkor az állomás egy Who follows keretet küld el, amely a következő szomszédos állomás címét tartalmazza. Amikor a meghibásodott állomás után kővetkező állomás észrevesz egy Who follows keretet, amely éppen az előző szomszédjának címét hordozza, akkor egy Set successor keret küldésével válaszol annak az állomásnak, amelynek kővetkező szomszédja meghibásodott, és magát nevezi meg új szomszédként. A meghibásodott állomás tehát így kikerül a gyűrűből.
Most tegyük fel, hogy egy állomás nemcsak, hogy nem továbbítja a vezérjelet, hanem még kővetkezőjének következőjét sem találja meg, amely ugyancsak tönkrement. Erre egy új stratégiát alkalmaz a Solicit successor-2 keret elküldésével, annak ellenőrzésére, hogy egyáltalán van-e "valaki, aki még él". Ezt kővetően ismét a szabványos versenyprotokoll kerül végrehajtásra, amelyben minden olyan állomás részt vehet, amely be akar kerülni a gyűrűbe. Végül a gyűrű újra felépül.
Megint egy más típusú probléma az, amikor a vezérjel birtokosa megy tönkre, és nem ereszti el a vezérjelet. Ezt a problémát a gyűrű inicializálási algoritmusa oldja meg. Minden állomás rendelkezik egy időzítő órával, amely egy keret hálózatban való megjelenésekor nullázódik. Amikor ez az óra egy küszöbidőt elér, akkor az állomás egy Claimtoken keretet bocsát ki, és az új vezérjel megszerzéséért verseny indul meg.
További probléma az, ha egyszerre több vezérjel jelenik meg. Ha a vezérjelet birtokló állomás észrevesz egy másik állomástól származó vezérjelet, akkor saját vezérjelét azonnal eldobja. Ha két vezérjel volt, akkor most már csak egy van. Ha több mint két vezérjel lenne, akkor ez a folyamat addig folytatódik, amíg újból csak egy vezérjel marad. Ha az állomások véletlenül az összes vezérjelet eldobnák, akkor az aktivitás hiánya egy vagy több állomást arra késztetne, hogy vezérjel-generálási folyamatot indítson el, amelynek lefolyását már láttuk.
Vezérjeles gyűrű
Bevezetésként meg kell jegyeznünk azt a tényt, hogy a gyűrű nem igazán alkalmas üzenetszórásos átvitelre, hiszen tulajdonképpen kör alakba rendezett, két pont közötti kapcsolatok halmaza. A gyűrűtechnológia majdnem teljesen digitális, szemben pl. a 802.3-al, amely jelentős mennyiségű analóg elemet tartalmaz az ütközések érzékeléséhez. A gyűrű kiszámítható felső időkorlátos csatorna-hozzáférést is biztosít. A létező többféle gyűrű kialakítások közül a 802.5 által szabványosítottat vezérjeles gyűrűnek (token ring) nevezik. [1]
A gyűrűben zajló átvitel tervezésénél és elemzésénél alapvető kérdés egy bit "fizikai hossza". Ha egy gyűrű K Mbit/s-os adatátviteli sebességgel rendelkezik, akkor 1/K m sec-onként kerül ki egy bit az átviteli közegre. A tipikus 200 m/m s-os jelterjedési sebességgel számolva ez azt jelenti, hogy egy bit megközelítőleg 200/K métert foglal el a gyűrűn. Emiatt például 1 Mbit/s-os gyűrű, amelynek kerülete 2000 m, csak 10 bitet tartalmazhat egyszerre.
A gyűrűinterfészeknek két üzemmódjuk van: vételi és adási. Minden gyűrűinterfészhez érkező bit az állomás egy ideiglenes regiszterébe (pufferébe) kerül, — ahonnan az adott állomás ismét a gyűrűbe küldi ki. Vétel esetén a pufferben levő bitet a gyűrűbe való kiírás előtt az állomás megvizsgálja, majd továbbadja. Ha nem az eredetit küldi tovább, akkor adásról beszélünk. A bitek interfészeknél való pufferelése, másolása minden egyes állomásnál 1-bites késleltetést eredményez.
Ha az állomások tétlenek, a vezérjeles gyűrűben, egy speciális bitminta, az ún. vezérjel (token) jár körbe. Amikor egy állomás keretet akar küldeni, még a küldés előtt meg kell szereznie a vezérjelet, és el is kell távolítania a gyűrűből. Mivel csak egyetlen vezérjel van, ezért csak egyetlen állomás adhat egyszerre, így tehát a csatorna-hozzáférés ugyanúgy ütközés mentesen valósul meg, mint a vezérjeles sín esetén.
A vezérjeles gyűrű tervezésének további gondja az, hogy magának a gyűrűnek is elegendő késleltetéssel kell rendelkeznie ahhoz, hogy tétlen állomások esetén is képes legyen a teljes vezérjel befogadására és keringtetésére. A késleltetés két komponensből áll: az egyes állomások okozta 1-bites késleltetésből és a jelterjedési késleltetésből.
A tervezőknek majdnem minden gyűrűben számolniuk kell az állomásoknak különböző időkben, különösen éjszakára való kikapcsolásával, és az ebből adódó késleltetések csökkenésével. Ha az állomások gyűrűillesztői a gyűrűtől kapják áramellátásukat, akkor az állomások leállításának nincs ilyen hatása. Ha azonban az interfészek kívülről kapják az áramot, akkor a gyűrű folytonosságának fenntartása miatt úgy kell azokat megtervezni, hogy kikapcsoláskor a bemenetük a kimenetükhöz kapcsolódjon. Ez nyilvánvalóan megszünteti az 1-bites késleltetést.
Rövid gyűrű esetén ezért éjszakára mesterséges késleltetéseket illesztenek be, így teszik képessé a gyűrűt a vezérjel további fenntartására és keringtetésére.
A gyűrűben körbeterjedő biteket a küldő állomások távolítják el a gyűrűből. Az állomás megőrizheti — az eredeti bitekkel való összehasonlításhoz — vagy el is dobhatja azokat. Ez a gyűrűszerkezet nem korlátozza a keretek maximális méretét, hiszen az egész keret egyszerre úgy sem jelenik meg a gyűrűben.
Miután egy állomás az utolsó keretének utolsó bitjét is elküldte, a vezérjelet vissza kell helyeznie a gyűrűbe. Az utolsó bit visszaérkezése — és a gyűrűből való kivonása után az interfésznek azonnal vételi üzemmódba kell visszaállnia, nehogy ismét kivonja a vezérjelet, amely az utolsó bitet követően érkezik, hacsak addigra már egy másik állomás meg nem szerezte.
A keretek nyugtázása nagyon egyszerűen megoldható. A keretformátumnak egyetlen 1-bites mezőt kell tartalmaznia, amely kezdetben nulla. Amikor a célállomás megkapja a keretet, ezt a mezőt 1-be állítja. Mivel a keretet a küldő vonja ki, ezért könnyen tudja ezt a bitet, a nyugtát ellenőrizni. Ha a keret üzenetszórásos típusú, az több állomásnak szól, akkor ennél sokkal bonyolultabb nyugtázási mechanizmust használnak (ha egyáltalán használnak).
Amikor a forgalom kicsi, akkor a vezérjel a működési idő legnagyobb részében a gyűrűben körbe-körbe fut. Alkalomszerűen egy-egy állomás kivonja a gyűrűből, kereteit elküldi, majd ismét visszahelyezi a gyűrűbe. Ha azonban a forgalom olyan nagy, hogy az egyes állomásoknál sorok keletkeznek, akkor ahogy egy állomás befejezi adását és a vezérjelet visszahelyezi a gyűrűbe, a következő állomás, figyelve azt, azonnal lecsap rá, és kivonja a gyűrűből. Ily módon az adási engedély, szép egyenletesen ciklikus multiplexálás jelleggel, körbeforog a gyűrűben: Nagy terhelés esetén a hálózat hatékonysága a 100%-ot is elérheti.
A 802.5 szabvány szerinti gyűrű a fizikai rétegben a 1, 4 vagy 16 Mbit/s-os sebességre alkalmas árnyékolt sodrott érpárt használ. Az IBM verziója, akárcsak a legtöbb vezérjeles gyűrű, 16 Mbit/s-os sebességen működik. A jeleket a különbségi Manchester-kódolással kódolják. A magas és alacsony logikai értékeket 3,0-4,5 V közötti pozitív, ill. negatív jelek képviselik. Rendesen a különbségi Manchester-kódolás magas-alacsony és alacsony-magas váltásokat használ a bitek jelzésére, de a 802.5 bizonyos vezérlőbájtokban (pl. keretek elejének és végének jelzésére) alacsony-alacsony és magas-magas átmeneteket is használ. Ezek a nem adat jellegű jelek csak egymást követő párokban fordulnak elő azért, hogy ne idézzenek elő egyenfeszültségű komponenst a gyűrűn.
Sajnos a gyűrűhálózatokban a kábel megszakadása esetén az egész gyűrű működése megszűnik. A probléma megoldása: a huzalközpont (wire center), amely a 105. ábrán látható. Minden állomás egy bejövő és egy elmenő vezetékkel kapcsolódik hozzá.
A huzalközponton belül egy állomás be és kimenő vezetékét rövidre záró ún. terelő relék (az ábrán K-val jelölve) vannak, amelyeket az állomások látnak el árammal. Ha a gyűrű megszakad, vagy egy állomás meghibásodik, akkor a tápáram hibája miatt a relé elenged, így az állomás kikerül a logikai gyűrűből. A reléket szoftver is működtetheti, így lehetőség nyílik olyan diagnosztikai programok írására, amelyekkel az állomások egyenkénti kiiktatása révén hibás állomásokat, ill. gyűrűszegmenseket fel lehet fedezni. Bár a 802.5 szabvány formálisan nem követeli meg az ilyen huzalközpontot, de a gyakorlatban elvárják, hogy a 802.5 hálózatok a megbízhatóság és a karbantarthatóság növelése érdekében huzalközponttal rendelkezzenek. A kialakítására az IBM a struktúrált kábelezést használja.
Amikor a hálózat több egymástól messze fekvő állomáscsoportból áll, akkor logikusan bővítve több huzalközpontból álló topológia is létrehozható úgy, hogy az ábrán levő állomás kábelpárok egyikét egy távoli huzalközpontba tartó kábelpár váltja fel.)
A vezérjeles gyűrű MAC protokollja
A MAC alréteg alapműködése nagyon egyszerű. Amikor nincs forgalom, akkor a gyűrűn egy 3-bájtos vezérjel kering körbe-körbe addig, amíg valamelyik állomás meg nem szerzi a második bájtja egy adott, 0 értékű bitjének 1-be állításával. Ezáltal az első két bájt keretkezdet szekvenciává alakul át. Az állomás ezután a 106. ábrán látható módon egy normál adatkeret további részeit kezdi el küldeni.
106. ábra: 802.5 keretformátum
Rendes körülmények között a keret első bitje a gyűrűn körbeérve még azelőtt visszatér küldőjéhez, hogy az a teljes keretet el tudta volna küldeni. Csak egy nagyon hosszú gyűrű képes egy teljes keretet felvenni. Következésképpen az adó állomásnak már küldés közben el kell kezdeni a gyűrű "lecsapolását", azaz az útjukat befejező bitek kivonását a gyűrűből.
Egy állomás a vezérjelet legfeljebb az ún. vezérjel tartási ideig (token-holding time) birtokolhatja, amelynek alapértéke 10 ms. Ha az első keret elküldése után még elegendő idő marad, az állomás további kereteket is elküldhet.
Ha az összes keret elküldése befejeződött, vagy a vezérjel tartási idő lejárt akkor az állomásnak vissza kell állítania a 3-bájtos vezérjelet, és vissza kell helyeznie a gyűrűre.
Az ábrán látható Kezdetjelző és Végjelző mezők a keretek elejét és végét jelzik. Az adatbájtoktól való megkülönböztethetősége érdekében, érvénytelen különbségi Manchester mintákat (HH és LL) tartalmaznak. A Hozzáférési vezérlés mező tartalmazza a vezérjelet, valamint a Figyelőbitet, a Prioritásbiteket és a Lefoglalásbiteket. Az adatkereteket a vezérlőkeretektől a Keretvezérlés bájt különbözteti meg. Ezeket a Célcím és a Forráscím mezők követik, amelyek ugyanazok mint 802.3-ban és 802.4-ben. Ezután az adatmező következik, amely tetszőleges hosszúságú lehet (!), hosszát csak a vezérjel tartási idő korlátozza. Az Ellenőrzőösszeg mezője megegyezik a 802.3-aséval és 802.4-esével.
Egy érdekes, a másik két protokollban nem létező bájt a Keretstátusz-bájt. Ez tartalmazza az A és C biteket. Amikor egy keret megérkezik a célcímmel megegyező állomás interfészéhez, a keret elhaladása során az interfész bebillenti az A bitet.
Ha az interfész be is másolja a keretet az állomás memóriájába, akkor a C bitet is bebillenti. A keret bemásolása puffer-hiány vagy egyéb más okokból meghiúsulhat. Amikor egy állomás kivonja az általa elküldött keretet, megvizsgálja az A és C biteket. Három kombináció lehetséges :
1. A = 0 és C = 0 - a célállomás nem létezik, vagy nincs bekapcsolva.
2. A = 1 és C = 0 - a célállomás létezik, de nem fogadta a keretet.
3. A = 1 és C = 1 - a célállomás létezik és a keretet bemásolta.
Ez az elrendezés a keretek egyidejű nyugtázását is biztosítja. Ha egy keretet visszautasítanak, de a cél létezik, akkor a küldő opcionálisan egy kis idő múlva ismét próbálkozhat. Mivel a Keretstátusz bájt az ellenőrzőösszeg hatáskörén kívül van, ezért az A és C biteket a keret belsejében megismételték kompenzálva a megbízhatóság csökkenését.
A végjelző egy E bitet tartalmaz, amelyet akkor billent be egy interfész, ha hibát érzékel (pl. egy nem engedélyezett Manchester-mintát fedez fel). Tartalmaz még egy olyan bitet is, amelynek segítségével egy logikai sorozat utolsó keretét lehet megjelölni, azaz hasonló jellegű mint egy állományvége (EOF=end-of file) jel.
A 802.5 többszintű prioritáskezelésre alkalmas. A 3 bájtos vezérjel középső bájtjának egyik mezője a vezérjel prioritását adja meg. Amikor egy állomás egy p prioritású keretet akar küldeni, akkor addig kell várnia, amíg egy olyan vezérjelet el nem tud kapni, amelyiknek prioritása kisebb vagy egyenlő p-nél. Továbbá, egy állomás a következő vezérjel lefoglalását megkísérelheti úgy is, hogy az éppen áthaladó keret lefoglalásbitjeit olyan prioritásúvá írja át, amilyen prioritással rendelkező keretet el kíván küldeni.
Ha azonban ezekbe a bitekbe már nagyobb prioritást jegyeztek be, akkor az állomás lefoglalási kísérlete sikertelen lesz. Az aktuális keret elküldését követően a visszaállítandó vezérjel prioritásának meg kell egyeznie az eredeti lefoglalt vezérjel prioritásával.
Kis gondolkodással belátható, hogy ez a mechanizmus egyre följebb és följebb emeli a lefoglalási prioritást. A probléma megoldására a protokoll néhány összetettebb szabályt fogalmaz meg. A gondolat lényege, hogy egy prioritást emelő állomás az emelés végrehajtását követően, a prioritás csökkentés felelősévé válik.
A vezérjeles gy
űrű karbantartásaA vezérjeles sín protokolljában a gyűrűkarbantartás teljesen decentralizált megoldású. A vezérjeles gyűrű karbantartása ettől teljesen eltérő módon valósul meg. Minden gyűrűben van egy felügyelő állomás (monitor station), amely a gyűrű karbantartásáért felelős. Ha a felügyelő állomás meghibásodik, akkor a helyébe, egy versenyprotokoll alapján gyorsan megválasztott másik állomás lép. (Minden állomásnak megvan az esélye, hogy felügyelő állomássá váljon.) Amíg azonban megfelelően működik, a felügyelő állomás egyedül felelős a gyűrű helyes működéséért.
Amikor a gyűrű feláll és az első állomás — vagy bármelyik állomás — észreveszi, hogy nincs felügyelő állomás, egy Claim token vezérlőkeretet küldhet el. Ha ez a keret anélkül visszaér a küldőhöz, hogy valaki más ugyancsak Claim token keretet küldött volna, akkor maga a küldő válik felügyelővé (minden állomásba beépítik a felügyelővé válás képességét). A vezérjeles gyűrű vezérlő kereteit a következő táblázatban foglaltuk össze:
A vezérjeles gyűrű vezérlő keretei
Keretvezérlő mező |
Név |
Feladata |
00000000 |
Duplicate address test |
Ellenőrzi, hogy van-e két azonos című állomás |
00000010 |
Beacon |
A gyűrűszakadás lokalizálásához |
00000011 |
Claim token |
Próbálkozás felügyelővé válásra |
00000100 |
Purge |
A gyűrű újraindítása |
00000101 |
Active monitor present |
A felügyelő periodikusan bocsátja ki |
00000110 |
Standby monitor present |
Potenciális felügyelő jelenlétét hirdeti ki |
A felügyelő felelős többek között a vezérjel-vesztés figyeléséért, a gyűrűszakadáskor elvégzendő teendők elvégzéséért, az összekeveredett keretek eltávolításáért és az árván maradt keretek kiszűréséért. Árva keret akkor keletkezik, amikor egy állomás egy rövid keretet a maga teljességében kibocsát, de annak kivonására már nem képes, mert időközben meghibásodott vagy kikapcsolták. Ha erre a rendszer nem figyelne, akkor a keret a végtelenségig cirkulálna.
A vezérjel-vesztést a felügyelő állomás egy, a lehetséges leghosszabb vezérjel nélküli intervallum értékére beállított időzítéssel ellenőrzi. Ezt abból a feltételezésből kiindulva számítja ki, hogy minden állomás teljes vezérjel-tartási idejét kihasználva ad. Ha ez az időzítés lejár, akkor a felügyelő megtisztítja a gyűrűt, és egy új vezérjelet állít elő.
Az összekeveredett, ill. meghibásodott kereteket érvénytelen formátumuk vagy helytelen ellenőrzőösszegük révén lehet felismerni. A felügyelő ekkor magán keresztül bocsátva felnyitja, majd megtisztítása gyűrűt, és új vezérjelet bocsát ki. Az árva keretek kiszűrését úgy végzi el, hogy minden keresztülhaladó keret hozzáférési vezérlés mezőjében bebillenti a felügyelőbitet. Ha egy bejövő keretben ez a bit már beállított, akkor ez arra hívja fel a figyelmet, hogy a keret eltávolításáért felelős állomás valószínűleg hibás, hiszen csak így fordulhat elő, hogy a keret már másodszor halad át a felügyelőn. A felügyelő állomás ekkor maga távolítja el ezt a keretet.
Az egyik monitorfunkció a gyűrű hosszával kapcsolatos. A vezérjel 24 bit hosszú, ami azt jelenti, hogy a gyűrűnek elég hosszúnak kell lennie ahhoz, hogy 24 bitet egyszerre tartalmazhasson. Ha az állomások 1-bites késleltetése, plusz a kábel késleltetése kisebb mint 24 bit, akkor a felügyelő külön késleltetésekkel biztosítja a vezérjel keringtethetőségét.
A gyűrű szakadási helyének behatárolását a felügyelő állomás nem képes egyedül megoldani. Amikor egy állomás valamelyik szomszédját működésképtelennek érzékeli, akkor egy Beacon keretet bocsát ki, amelyben megadja a feltételezhetően hibás állomás címét. Ezeket az állomásokat a huzalközpontban levő terelő-relék segítségével emberi beavatkozás nélkül ki lehet iktatni a gyűrűből.
Hasonlítsuk össze a vezérjeles gyűrű és a vezérjeles sín vezérlési filozófiáját!
Az utóbbiban nincs olyan központi komponens, amelynek bármilyen véletlenszerűen bekövetkező hibája miatt az egész rendszer működésképtelenné válhat. Ezért olyan rendszert terveztek, amelyben a vezérjel aktuális birtokosa különleges jogai vannak: például új állomásokat vehet fel a gyűrűbe, egyébként azonban semmi sem különbözhet a többitől.
A vezérjeles gyűrű esetében a tervezők úgy érezték, hogy a vezérjel vesztés, árva keretek stb. kezelése egy központi felügyelő állomással sokkal egyszerűbb. Továbbá egy normál rendszerben az állomások csak nagyon ritkán mennek tönkre, ezért az új felügyelő állomás alkalomszerű versengéses megválasztása nem okoz nagy problémát. Ennek ára azonban az, hogy ha a felügyelő állomás egyszer valóban meghibásodik, de ugyanakkor Activ monitor present vezérjeleket küld periodikusan, akkor nincs olyan állomás, amely ezt megkérdőjelezhetné. A felügyelő állomást nem lehet felelősségre vonni.
1.fejezet: A hálózatok célja, alkalmazása, alapfogalmak
2.fejezet: Fizikai átviteli jellemzők és módszerek
3.fejezet: Közeg-hozzáférési módszerek
4.fejezet: Adatkapcsolati protokollok
7.fejezet: Lokális hálózatok: IEEE802-es szabványok, az IEEE802.3 szabvány és az ETHERNET, FDDI, a MAP és a TOP, lokális hálózati operációs rendszerek, Ellenőrző kérdések
8.fejezet: A TCP/IP protokoll és az Internet