ETHERNET: Osztott Vezérlésű Csomagkapcsolat Lokális Számítógéphálózatokhoz (1976)

1. Előzmények.

Az osztott számítógépes rendszerek spektruma a távoli számítógépekből álló hálózatoktól a többprocesszoros rendszerekig terjed.

A távoli számítógépekből álló hálózat a korábban különálló nagy számítógépes rendszerek lazán összekepcsolt hálózata.

A többprocesszoros gépek a korábbi szériális és monolit számítógépes rendszerekből épülnek fel, amelyek egyre több és egyre kisebb méretű elemeket foglalnak magukba úgy, hogy ezek az elemek párhuzamos működésre képesek.

A spektrum közepe táján helyezkednek el a lokális hálózatok, amelyek egyesítik magukban a távoli hálózatok erőforrásmegosztási lehetőségeit és bizonyos fokú multiprocesszoros alkalmazások kifejleszhetőségét.

A spektrum felosztásának alapja a gépek közötti távolság és az átvitt bitek számának időegységre vetítése (bit rate) a kommunikációs vonalakon. 1976-os adat: az átlagos távolság és az átviteli bitsebesség szorzata 1 gigabitméter per másodperc (1 Gbmps).

1.1 Távoli hálózatok (Remote computer networking)

A számítógépek hálózatai a számítógép - terminál kommunikáció telekommunikációs szintjéből fejlődtek ki. A kiinduló probléma abban állt, hogy távoli terminálokat kellett kapcsolni a központi géphez. Ebből fejlődött ki a számítógépek összekapcsolásának igénye, amiből később olyan hálózatok épültek ki, ahol egyes számítógépek csomagkapcsolatokat hoztak létre számítógépek között az erőforrások osztott elérése érdekében. Mindezek a jellemvonások az ARPA Számítógépes Hálózatban (ARPANET) már fejlett szinten megjelentek.

Az ALOHA hálóatot a Hawaii Egyetemen eredetileg a központi számítógép és az elszórtan elhejezkedő terminálok összekapcsolására hozták létre rádió kapcsolatokra építve a Hawaii Szigetek között. A terminálok helyére később mini számítógépek léptek, amelyek az ALOHA Hálozati Menehune-on, mint csomagkapcsolón keresztül kommunikáltak. Később a Menehune-t és az ARPANET-et összekapcsolták és így az USA földi erőforrásai elérhetővé váltak. Ezzel párhuzamosan beindult a számítógéphálózatoknak olyanirányú kiépítése is, amely lehetővé teszi lokális hálózatok létrehozását kis számítógépek összakapcsolására hivatalokban és laboratóriumokban.

1.2 Többprocesszoros rendszerek

A többprocesszoros rendszerek első változatai I/O processzororkból és központi processzorból álltak. Később több processzor kapcsolódot össze közös memórián keresztül. Bizonyos speciális alkalmazásokhoz sajátos konfigurációk jöttek létre. Ilyen rendszer volt pl. az Illiac IV.

Typeset by AMS-TEX

Újabban mini számítógépeket kapcsolnak össze többprocesszoros rendszerekké a gazdaságosság, a megbízhatóság és a moduláris felépítettség igényeinek megfelőlen. A fejlődés iránya a decentralizáció felé mutat a nagyobb megbízhatóság érdekében. A lazán összkapcsolt multiprocesszoros rendszerek kevésbé függenek a közös központi memóriától, ha ilyen egyáltalán létezik. A működés sokkal inkább a kapcsolatoktól függ, amelyen keresztül a kommunikáció az egyre izoláltabb gépek között megvalósul. A processzorok közöti kommunikáció ”finomodása” a megbízhatóság érdekében, valamint az osztott alkalmazások kifejlesztése a multiprocesszoros rendszereket egyre inkább az osztott feldolgozás lokális formái felé közeliti.

1.3 Lokális számítógépes hálózatok

Az ETHERNET számos közös tulajdonságot mutat más lokális hálózatokkal, pl. a Mitre MITRIX hálózatával, a Bell Telephone Laboratory SPIDER hálózatával, illetve az U. C. Irvine DISTRIBUTED COMPUTING SYSTEM-jével (DCS). Az említett négy hálózat 1-3 Mbit másodpercenként átvitelt képes megvalósítani A MITRIX és a SPIDER központi számítógépet alkalmaz a kapcsolások és az átviteli kapacitások szétosztásának megvalósításához. Ugyanakkor az ETHERNET és a DCS osztott vezérlést valósít meg. A SPIDER és a DCS kör alakú kommunikációs utat alkalmaz, míg a MIT-RIX a CATV technologiára építi a kétirányú busz (vonal) kapcsolatot. Az ETHERNET viszont kétirányú, de elágaztatható passziv átviteli közegre épít.

Ezek a különbségek abból adódnak, hogy egyfelől az egyes hálózatokat eltérő alkalmazásokra építették ki más és más költségtényezőket figyelembe véve a döntések meghozatalánál, de természetesen különböztek az egyes projektekben résztvevő kutatók elképzelései is.

2. Az ETHERNET működésének összefoglalása

Az ETHERNET számítógépek, mint állomások közötti lokális kommunikációt támogató rendszer. A kísérleti változat koaxális kábelekből állt, amelyhez csapokon (tap) keresztül lehetett csatlakozni. Az átviteli rendszer csomagkapcsolatot létesített személyi számítógépek, nyomtató hostok, adattároló file rendszerek vagy központi számítógépek között. Az osztott kommunikációs közeg, az elágazó ETHER, az átvitel szempontjából passziv elem. Valamely állomás interfésze szériálisan kapcsolódik a transceiverhez, amely fizikailag kapcsolódik az ETHER-hez. Az ETHER-be átadott csomag valamennyi állomás számára ”hallható”, de álltalában csak a rendeltetés állomás ”fogja fel” az ET-HER-ből. A rendeltetési állomás kiválasztása címzéssel történik, amely a csomag részét képezi. Ezt a fajta kommunikációt csomagszórásnak nevezzük, eltérően a ”tárold és továbbítsd” elvétől, ahol a csomagok irányitását (routing) a közbülső processzorok végzik.

Az ETHER igény szerint fizikailag kiterjeszthető. Ehhez azonban szükség lehet az impulzusok felerősítésére és a forgalom lokalizálására. Ennek elérésére csomagismétlőket (packet repeater), illetve csomagszűrőket (packet filter vagy bridge) alkalmaznak. A címtartomány kiterjeszthető ha hálózatot részekre bontjuk és megfelelő kapukat (packet gateway) alkalmazunk a csomagok ”átemeléséhez” az egyes alhálózatok között.

A vezérlés teljesen osztott az állomások között, a csomagok újraküldését lokális statisztikai számítások vezérlik. Valamely állomás által kezdeményezett csomagküldés késlelteti a többi állomást a csomagküldésben. Ha már egy küldés elkezdődött, de felismerhetően ütközött egy másik egyidejű átvitellel, akkor a folyamat megszakad és a küldést az illető állomás valamely későbbi időpontra újraütemezi. Ha nem történik ütközés a bevezetö, meghatározott hosszúságú intervallum után, akkor az átvitel hallhatóvá válik az összes állomás számára és a küldés interferenciamentesen befejeződik.

Az ETHERNET vezérlői az ütközésben résztvevő állomásokban véletlenszerű újraküldési intervallumot generálnak annak érdekében, hogy elkerüljék az ismételt ütközéseket. Az újraküldési intervallum hosszának várható értéke a közelmúltban észlelt ütközési gyakoriságtól függ. Ezzel elérhető, hogy az ETHERNET működése állandóan az optimum körül legyen az időben változó terhelés mellett. Előfordulhat azonban még abban az esetben is, ha a küldő nem észlel ütközést, hogy a csomag nem érkezik meg a rendeltetéshez hibátlanul. Ezért csak az állítható, hogy az ETHERNET nagy valószínűséggel biztosítja az átvitelt. Azoknál az állomásoknál, amelyek alacsonyabb bithiba-arányt igényelnek az átvitelnél, mint amelyet az ETHERNET szolgáltat, közösen egyeztetett protokollt kell alkalmazzani az átviteli karakterisztikák javításához.

3. Tervezési szempontok

Alapvető cél olyan kommunikációs rendszer létrehozása, amely központi vezérlő rendszer nélkül működik. A kommunikációs rendszerhez a hozzáférés vezérlése osztott. Az osztott vezérlés következményei:

- kiküszöböli az aktív vezérlő esetén a vezérlő meghibásodásából származó problémákat,

- elkerülhető a rendszerben a szűk keresztmetszetek kialakulása, ha a rendszerben magasfokú a parallelitás,

- csökkenthetők a fix költségek, amelyek a kis rendszereket általában gazdaságtalanná teszi. Alapvető célkitűzés olyan kommunikációs rendszer létrehozása, amely könnyen kiter-

jeszthető az igényeknek megfelelően és lehetőséget ad akár több számítógépes környezet összekapcsolására is. Ezek a számítógépes környezetek állhatnak személyi számítógépekből és a kiszolgálló berendezésekből. A kommunikációs rendszer nem lehet drágább, mint az általa kiszolgált környezet számítógépei. A létrehozandó kommunikációs környezet osztott vezérlésre alapul annak érdekében, hogy elkerüljük a központi vezérlő bizonytalan működéséből eredő problémákat és csökkentsük a szűk keresztmetszetek kialakulásának lehetőségét, figyelembe véve a várható magas párhuzamossági szint kialakulását.

Az ETHERNET tervezése az ALOHA rendszer csomagütközés és újraküldés elvéből indul ki. Az ETHERNET-et olyan körülményekre is fel kell készíteni, ahol véletlenszerüen jelentkezhetnek telítettségi pillanatok. Ismeretes, hogy az ilyen helyzeteket az időosztásos multiplexelés (synchronous time-division multiplexing - STDM) nem képes megfelelően kezelni. Az ALOHA rendszer a rádiócsatorna multiplexelésére épül, ugyanakkor várható, hogy az ALOHA elképzelések alkalmazhatók olyan kommunikációs közeg esetén is, amelyekre lokális kommunikáció építhető. Az ETHERNET tervezése ezt a várakozást igazolta.

Az ETHERNET hálózatban a küldő saját maga által szinkronizált bitsorozatokat (csomag vagy packet) küld az ETHER-be azzal a reménnyel, hogy a megadott fogadó ”hallja” az üzenetet. Az ETHER logikailag passzív közeg a digitális jelek átvitele szempontjából és többféle médiumból, pl. sodort érpárból, koaxális kábelekből vagy optikai vezetékekből létrehozható.

3.1 Topológia

Az ETHERNET a megbízhatóságát nem építheti túlbiztosított kommunikációs kapcsolatokra, valamint dinamikus forgalomirányító algoritmusokra. A megbízhatóságot az egyszerűségnek kell garantálnia. Az ETHERNET passzív kommunikációs közegre épít, hogy ezáltal bármely aktív elem meghibásodása csak egyetlen állomás müködésére legyen hatással. Fő szempont a topológia kialakitásánál az egyszerűség, a kényelmes kiterjeszthetőség és rekonfigurálhatóság lehetősége a szolgáltatás minimális megszakítása mellett. Alapvetően az ETHERNET topológia egy irányítatlan fa, azaz olyan összefüggő gráf, amelyben nincsen kör. Szükségképpen csak egy út lehet bármely forrás (source) és rendeltetési állomás (destination) között a nem kívánatos ineterferencia elkerülése érdekében. Az ETHER irányítatlan, mivel minden irányban és bármely pontnál elágaztathatónak kell lennie. Bármely állomás csatlakozhat az ETHERNET-hez a leközelebbi alkalmas pontnál. Az összekapcsolás és a vezérlés alapján az ETHERNET éppen duálisa a csillag hálózatnak. A csillag hálózat elosztott kapcsolatai és központi vezérlése helyett, az ETHERNET központi összekpcsolást és elosztott vezérlést alkalmaz. Az ET-HERNET multipont kapcslatot hoz létre. Ez azt jelenti, hogy egy átviteli összeköttetés egyidejűleg több állomást is összekapcsol.

3.2 Vezérlés

Az ETHER osztott elérése közben nemcsak lehetséges, de valószínű is, hogy két vagy több állomás kiván közel egyidejűleg kezdeményezni átvitelt. Azokat a csomagokat, amelyek küldése időben átfedi egymást, ütköző csomagoknak nevezzük, a jelenséget pedig ütközésnek. Az ütköző csomagok olymértékben torzulnak, hogy felismerhetetlenné válnak a rendeltetési állomás számára. Az állomások az ütközésből származó hibás helyzetet úgy kezelik, hogy egy időre felfüggesztik saját küldési tevékenységüket és egy véletlenszerűen választott intervallum után újra megkisérlik elküldeni az ütközött csomagot. A döntés statisztikus természtű és elosztott. Ha az ETHER üres, akkor az átvitel hibamentes. Ha viszont egyre több állomás kezdeményez küldést, akkor az ütközési gyakoriság nő. Az állomásokba épített egyes vezérlők a közelmúlt ütközési gyakorisága arányában határozzák meg az újraküldési intervallumot. A vizsgálatok azt mutatják, hogy ezáltal az ETHER megosztása közel az otimális sziten tartható. Az állomások közötti kooperációnak olyannak kell lennie, hogy az egyes állomások között az ETHER megosztása egyenlő mértékű legyen. ”Agresszív” alkalmazások, figyelmen kívül hagyva az egyenlőség elvét, hasznot húzhatnának bizonyos nagyobb prioritásból az ETHER elérésével kapcsolatban. Valamely állomás elvben kisajátíthatja az ETHER-t, ha nem a többi állomást is tekintetbe véve határozza meg az újraküldési intervellumot, vagy túl hosszú csomagokat ad át az ETHER felé. Mindkét szituáció alacson szinten kikiszöbölhető megfelelő software alkalmazásával.

3.3 Címzés

Minden csomag tartalmazza a forrás és a rendeltetési állomás címét. Ha a csomag az ETHER-be jut, akkor szükségképpen minden állomáshoz eljut. Bármely állomás lemásolhatja a lehallgatott csomagot a saját memóriájába, de normális esetben csak a címben megjelölt aktív rendeltetési állomás fogadja a csomagot. Megállapodás szerint a csupa zéro rendeltetési cím minden állomás címének megfelel (wildcard) és ezért az ilyen csomagot szóró csomagnak is nevezzük.

3.4 Megbízhatóság

Az ETHERNET csak bizonyos valószínűségi szinten működik megbízhatóan. Csomag elveszhet ütközés miatt, az impulzuszajok miatt, szándékos törlés eredményeként, de elveszhet amiatt is, mert a rendeltetési állomás inaktív (ezen a szinten nincs nyugtázás). Az ETHERNET szolgáltatásra épülő protokolloknak figyelembe kell venniük a szolgáltatásnak ilyenfajta minőségét. Az ETHERNET tevezés legjobb szándéka szerint törekszik arra, hogy a csomagokat sikeresen továbbítsa a forrástól a rendeltetésig, de a forrás és a rendeltetési állomás számítógépes programjai a felelősek azért, hogy az igényelt kommunikációs minőség megvalósuljon. Azzal, hogy a megbízható átvitel felelősségét levesszük a kommunikációs hálózatról, lehetővé válik az elérhető megbízhatóságot az alkalmazásoknál figyelembe venni és oda helyezni el a hibajavító mechanizmusokat, ahol az a legmegfelelőbb. Ez a fajta hozzáállás még fontosabbá válik a számítógéphálózatok olyan hierarchiája estén, ahol a csomagok sokkal távolabbra küldődnek és ezáltal nagyobb kockázatnak vannak kitéve.

3.5 Működési mechanizmsok

Valamely állomás az ETHER-hez csap (tap) és transceiveren keresztül csatlakozik. A csap a fizikai kapcsolódásra szolgál. A transceiver többek között ügyel arra, hogy bármely lokális probléma akár a transceiverben, akár az állomásban nem juthat ki az ETHER-be. Például, ha a feszültséget kikapcsoljuk a transceiverből, akkor az automatikusan leválik az ETHER-ről.

Öt olyan mechanizmus működik a ETHERNET-ben, amelyek a gazdaságosabb és biztonságosabb átvitelt hivatottak szolgálni. Ezek a mechanizmusok a következők:

(1) szállításfelismerés,

(2) interferenciafelismerés,

(3) csomaghibafelismerés,

(4) félbehagyott csomagok kiszűrése és az

(5) ütközés tényének elterjesztése.

Szállításfelismerés (carrier detection)

Valamely csomag bitjei fázis kódoltak, ezért küldés közben mindíg van legalább egy átvitel minden ”bitidőben”. Az ETHER-ben történő átvitel (szállítás) lehallgatható, tehát felismerhető. Ha egy állomás átvitelt érzékel az ETHER-en keresztül, akkor a saját átvitelét késleltetheti minaddíg, amíg az érzékelt átvitel le nem zajlik és az ETHER üressé nem válik. A szállítás feismerése nélkül az ütközési gyakoriság lényegesen megnőne főleg hosszú csomagok esetén és lényegesen csökkenne az ETHER hatékonysága.

A szállítás felismerésével megvalósítható a késleltetés (deference), ami azt jelenti, hogy valamely állomás mindaddíg nem kezdeményez küldést, amíg az ETHER foglaltságát érzékeli. A szállítás érzékelése alapján megvalósítható a birtoklás (acquisition). Ha egy csomag szállítása már folyamatban van legalább annyi ideig, hogy minden állomás érzékelje ezt (end to end propagation time, vagy másképpen ETHER befutási idő), akkor ezután az ETHER kisajátítódik és az átvitel interferencia nélkül befejeződik. Szállításérzékelés esetén ütközés a csomagok között szükségképpen bekövetkezik, ha egynél több állomás üresnek érzékeli az ETHER-t egy ETHER befutási idő alatt és szimultán átvitelt kezdeményez. Ez majdnem mindíg bekövetkezik valamely már érzékelt átvitel befejeződésekor, ha az átvitel alatt kettő vagy több állomás késleltett állapotba lépett. Mivel ekkor az állomások nem késleltetnek a véletlen várakozás szerint, ezért ha az érzékelt átvitel befejeződik, akkor egymásra indítanak, ütköznek, majd véletlenszerüen várakoznak es újraküldenek.

Interferenciafelismerés (interference detection)

Minden transceiverben van interferenciafelismerő logika. Az interferenciát az jelzi, ha a transceiver különbséget észlel az elküldött bit értéke és az ETHER-ből lehallgatott bit értéke között. Az interferenciaérzékelés három előnnyel is jár. Ezek a következők:

(1) Ha egy állomás interferenciát észlel, akkor tudja, hogy az éppen küldés alatt levő csomagja meghibásodott. A csomag újraküldését azonnal ütemezni lehet, elkerülve mindenfajta nyugtázási idő lejártát.

(2) Az ütközés lehetősége mindössze egy ETHER-befutási időtartamra redukálódik. A sérült csomag csak rövid ideig foglalja az ETHER-t.

(3) A felismert ütközések gyakorisága az ETHER-ben zajló forgalom szintjének becslésére szolgál, ami alapján történik az újraküldés késletetésének meghatározása és a csatornahatékonyság optimalizálása.

Csomaghibafelismerés (packet error detection)

Amikor egy csomag az ETHER-be kerül, egy ellenőrző összeg képződik magában a csomagban. Ezt az összeget a rendeltetési állomás újra kiszámítja. Ha eltérés mutatkozik a szállított és az újra kiszámított összeg között, akkor a vett csomagot a rendeltetés nem veszi figyelembe. Ilymódon átviteli hibák, impulzus hibák valamint a fel nem ismert interferenciából származó hibák a rendeltetési oldalon kiszűrhetők.

Félbehagyott csomagok kiszűrése (Truncated packet filtering)

Az interferencia felismerése és a késleltetés eredménye, hogy a csomag küldése megszakad és csak néhány bitből álló csonka csomag jut az ETHER-be, mivel az ütközésben résztvevő állomások egy ETHER befutási idő alatt észleleik az ütközést. Annak érdekében, hogy az ilyen csonka csomagok visszautasítása ne terhelje a fülelő állomásokban levő software rendszert, a hardware automatikusan kiszűri a csonka csomagokat.

Az ütközés tényének eltejesztese (Collision consensus enforcement)

Ha valamely állomás interferenciát észlel, akkor időlegesen összezavarja (jam) az ET-HER-t annak érdekében, hogy az ütközésben résztvevő többi állomás is biztosan észlelje az ütközést, ezáltal késletessen és késztetve legyen a tevékenysége félbehagyására. Az ütközés tényének elterjesztése nélkül előfordulhat, hogy az küldő állomás, amely utolsóként észleli az ütközést, nem veszi azt észre, mivel a többi résztvevő közben felhagy a küldéssel és az ütközés ezáltal megszűnik. Habár a csomag jónak néz ki ezen utolsó küldő számára, az útkülönbség miatt, ami az ütköző küldők és ezen utlsó által megjelölt fogadó állomás között van, előfordulhat, hogy hibás csomag fogadására kerül sor.

4. A megvalósítás eszközei

Az első kísérleti ETHERNET 1 km hosszú 3 Mbps sebességű koaxális kábelredszer volt, amelyhez 256 állomás csatlakozhatott teljes kiépítettségben. A tervezők úgy értékelték, hogy az ETHERNET hálózat várható hossza 1 km nagyságrendű lesz. Ez a méret meghatározza a figyelembe veendő jel-zaj viszonyt és az alkalmazandó trasceiver tervezését.

A csomagkezelés gyorsítása érdekében a csomag első 8 bitje a rendeltetési állomás címét tartalmazza. A második byte viszont a küldő állomás címét hordozza. A 256 állomás, mint felső határ alkalmazása megfelel annak, hogy az egyes állomások elfogadható átviteli sávszélességhez jussanak, és közelítíazt a határt, amilyen mértékű ETHER-meg-csapolás még lehetséges.

A 256-os felső határ csak az alacsonyabb szintű protokollok esetén előnyös; a magasabb szintű protokollok kiterjedtebb címzést is alkalmazhatnak a csomagon belül, amit megfelelő software-rel lehet kezelni.

Az első kísérleti ETHERNET alapelemei a következők voltak: az ETHER, a transceiver, az interfész és a vezérlő.

4.1 Az ETHER

A kísérleti ETHER megvalósításához alacsony veszteségi szintű koaxális kábelt és a bolti kereskedelemben beszerezhető CATV csapokat (tap) és vezérlőket alkalmaztak. Lehetségesnek mutatkozott az ETHER ”keverése” az ETHERNET-en belül. Így például kis átmérőjű koaxális kábelt használtak a egyes számítógépes klaszterek kialakításánál, míg az egyes klaszterek összekapcsolására nagy átmérőjű koaxális kábelt használtak. A koaxális kábelből kialakított ETHER költsége jelentéktelen az általa összekapcsolt számítógépes rendszer költégéhez képest.

4.2 Transceiverek

Az alkalmazott kísérleti transceiverek 1 km koaxális kábelt képesek ”meghajtani” 3 Mbps átviteli sebessébnél. A transceiverek képesek túlélni és működésüket folytatni, ha az ETHER nem megfelelően van lezárva és műkdőképesek még akkor is, ha földelési differenciák vannak, ha elektronikus zaj keletkezik feltéve, hogy az ETHER hossza nem több, mint 1 km.

Az ETHERNET transceiverei közvetlenül az ETHER-hez kapcsolódnak. A tápfeszültséget és a vezérést az interfész kábel 5 sodort érpárján keresztül kapják, amely kábel szállítja a küldendő csomagot, a fogadott csomagot, az interferencifelismerést és a tápfeszültséget. Ha a transceiver tápfeszültségét kikapcsolják, akkor automatikusan leválik a ETHER-ről. Ez az a pont ahol az ETHERNET tervezés előnyei határozottan megmutatkoznak. Valamely üzemképtelen transceiver elvben lehet, hogy lehetetlenné teheti az egész hálózat működését, de ennek nem szabad bekövetkeznie. Egy felügyelő áramkör a transceiverben állandóan figyeli az illető transceiver működését és azonnal leválasztja a kimenő oldalt, ha rendellenességeket tapasztal. Az egyszerűség érdekében az átvitelre az ETHER egész frekvenciasávja felhasználásra kerül (baseband átvitel), de az ETHERNET kialakítható úgy is, ha csak egy alkalmas frekvenciasáv áll rendelkezésre (broadband átvitel) és az ETHER frekvenciaosztásos alapon működik.

Annak ellenére, hogy a kialakított transceiver egyszerű felépítésű és csak korlátozott jel-zaj viszonyt enged meg, a gyakorlatban megfelőnek és megbízhatónak mutatkozott. Bonyolultabb transceiver megengedné az ETHER passzív elágaztatását és az állomások távolabbi elkülönítését is.

4.3 Interfész

Az ETHERNET interfész párhuzamosítja és szérializálja az állomások felé, illetve az állomsoktól érkező adatokat. Az interfész kialakítása függ a kapcsolódó állomstól.

Minden interfész tartalmaz egy speciális hardware-t a ciklikus redundancia kontroll összeg (CRC) kiszámítására a szériális adatokon amikor azok fogadására, illetve küldésére sor kerül. Ezen az összeg kiszámítása csak az ETHER-ben keletkezett hibák ellen nyújt védelmet, a parallel részben keletkező hibák ellen nem. Magasabb software szinten kezelt kontroll összeg alkalmazása szükséges, ha nagyobb megbízhatósági szintet kívánunk elérni.

Az interfész küldő oldala a csomag címét és a csomag szavakban mért változó számú hosszát használja a szérializáláshoz és a kódoláshoz. Ezeket az infomációkat a számítógép memóriájából veszi és adja át a transceivernek. Az egész tranzakciót egy kezdő (start bit - SYNC) bit vezeti be, az egész küldeményt pedig a CRC zája le.. A fogadó oldalon az interfész a szállítás beidulásának érzékelésével kezdi meg valamely csomag fogadását és SYNC bitet használja fel arra a dekódolás beindításához. Amíg a vétel folyamatban van, az interfész párhuzamosítja a szériális jeleket és lerakja az összeállított 16 bites szavakat egy csomagot fogadó bufferba a számítógép memóriájában. Ha a vétel befejeződött, az interfész ellenőrzi, hogy egész számú 16 bites szó érkezett-e és ellenőrzi, hogy vajon a CRC korrekt-e. Az utolsó szóról feltételezi, hogy az a CRC és ezt nem másolja át a bufferbe.

Az interfészek általában tartalmaznak egy olyan hardware-t, amely csak akkor fogad el egy csomagot, ha a fejrészében a cím megfelelő. A címek hardware szinten történő kiszűrése csökkenti a software rendszer leterheltségét, ha ETHER döntően más állomásoknak szánt csomagok szállításával van elfoglalva. A szűrés ugyanis már a software szintre történő belépés előtt megtörténik.

4.4 Vezérlő

Az ETHERNET vezérlő állomástól függő alacsony szitű firmware vagy software a csomagok kivételére az ETHER-ből, illetve a csomagok továbbítására az ETHER-be. Maga a küldő állomás által felismert ütközés esetén a vezérlő feladata, hogy egy új késletetési intervallumot generáljon az újraküldéshez. Az újraküldési arány optimális kezléséhez a legalkalmasabbak azok az algoritmusok, amelyek a legújabb történések statisztikáira épülnek.

A késleltetési intervallum mindig többszöröse egy slot-nak (hézagnak). A slot az a maximális idő, amely az átvitel kezdete és az ütközés felismerése között eltelik. Ez a idő megegyezik az ETHER egyik végéből a másikba való eljutásnak az idejével. A vezérlő kezdetben átlagban egy slot-nyi időt várakozik a küldés előtt. Valahányszor a küldés ütközéssel végződik, a véletlen késleltetési idő várható értéke megduplázódik. A késleltetési idő alatt a vezérlő minden csomagküldést visszatart. A fenti algoritmus közelíti a Binary Exponential Backoff algoritmust.

Ha a halózat gyengén leterhelt, akkor az ütközések gyakorisága alacsony, és a késleltetés átlagos értéke ritkán tér el az 1 slot-tól. Ekkor a küldés gakorlatilag késleltetés nélkül elkezdődik. Ahogy a terhelés nő, egyre több ütközés történik, erről feljegyzések keletkeznek az állomásoknál, a késleltetési intervallum hossza nő, ennek megfelelően az újraküldésből származó terhelés mértéke csökken. Ezáltal az ETHER átviteli képessége mindíg egy küszöbszint felett marad.

5. A kiterjesztés lehetőségei

5.1 A jelek vételi körzetének kiterjesztése

Mindeddíg úgy tűnhetett, hogy az ETHERNET szabadon bővíthető további transceiverek és ETHER hozzáadásával. Egy bizonyos határon felül azonban az ETHER és a transceiverek már nem képesek biztosítani a kivánt átviteli jelszintet. Az átviteli jelek vételi körzetének kiterjesztéséhez egyszerű buffer nélküli csomagismétlőket alkalmazhatunk. A kísérleti ETHERNET esetében, ahol a transceiverek egyszerű felépítése miatt az ETHER nem ágaztatható el passzívan, egy egyszerű csomagismétlő tetszőleges számú ETHER szegmenst kapcsolhat össze, bővitve ezzel a topológiát és egyúttal bővítve a jelek vételi körzetét is. Az ETHER elágaztatásánál és a jelek vételi körzetének kiterjesztésénél dönteni kell, hogy bonylultabb és költségesebb transceivereket, vagy ehelyett csomagismétlőket alkalmazzunk. A csomagismétlők alkalmzásával az ETHER aktív elemmé válik. Valamely transceiver meghibásodása csak annak okoz problémat a kommunikációban, akinek a berendezéséhez tartozik a kérdéses transceiver. Azonban ha egy csomagismétlő meghibásodik, akkor az ETHER darabokra esik szét, ami már több állomás kommunikációját is érinti.

5.2 A kommunikációs forgalom térbeli kiterjesztésének lehetősége

Az eddigiek alapján az ETHERNET további ETHER, valamint transceiverek és csomagismétlők hozzáadásával szabadon bővíthetőnek tűnik. Az arányokra azonban ügyelni kell, ugyanis egy bizonyos pontnál az ETHER olymértében leterheltté válhat, hogy nem képes az állomások közötti kommunikációs igények megfelelő szinvonalú kielégítésére. A kommunikációs képesség bővíthető, ha bufferelés nélküli, a kommunikációt szűrő ismétlőket, vagy más néven csomagszűrőket alkalmazunk. Ezek a csomagszűrők csak azon ETHERNET szegmens felé továbbítják az egyes csomagokat, amelyben a kivánt rendeltetési cím található. Jól érzékelhető, hogy ezáltal a forgalom lokalizálódik. A csomagszűrők alkalmazása egyúttal a jelek vételi körzetének kiterjesztését is eredményezi.

5.2 A címzési tartomány kibővíthetőségének lehetősége

Az eddiekben láttuk, hogy miként terjeszthető ki az ETHERNET további ETHER hozzáadásával, valamint csomagismétlők és csomagszűrők alkalmazásával. A kiterjesztésnél azonban figyelembe kell venni, hogy az állomások címzésére a rendelkezésre álló bitek száma korlátozott. A kísérleti ETHERNET hálózatnál 8 bit állt rendelkezésre, ami 256 állomás megkülönböztetését teszi lehetővé. A címzési tartomány kibővítése hálózatközi csomagkapuk (packet gateway) és a kapcsolatos software címzési konvenciók alkalmazásával érhető el. A címtaromány két irányban terjeszthető ki: az állomás felé ”lefelé” abban az értelemben, hogy további mezőket veszünk fel az egyes portok és a folyamatok azonosításához, és a hálózatközi együttműködés felé ”felfelé” úgy, hogy további mezőket veszünk fel a külső hálózatokban levő állomások azonosítására. A csomagkapuk egyúttal alkalmasak a kommunikációs forgalom térbeli kiterjesztésére és jelek vételi körzetének kibővítésére is. A csomagkapu ugyanis az ismétlő szerepét játsza, ha a beérkező csomagot nem kell más hálózat felé továbbítani.

Fontos megjegyezni, hogy két ETHERNET szegmens között csak egy csomagismétlő vagy csomagszűrő lehet, ugyanis, ha egy csomag több ismétlő felől is érkezhet valamely szegmens felé, akkor önmagával is ütközésbe kerülhet. A csomagkapukra azonban ilyen korlátozás nem érvényes. Két szegmenst tetszés szerinti számú csomagkapu köthet össze. Ezért, ha egy ismétlő meghibásodik akkor a hálózat részekre esik szét, ha viszont egy csomagkapu hibásodik meg, akkor annak funkcióját helyettesítheti egy rendelkezésre álló másik csomagkapu is.