ADATKAPCSOLATI PROTOKOLLOK Hálózati alapismeretek OSI 1
Adatkapcsolati réteg működése Az adatkapcsolati protokollok feladata egy összeállított keret átvitele két csomópont között. Az adatokat a hálózati rétegtől kapja az adatkapcsolati réteg, és az általa összeállított információcsomagokat, vagy más néven kereteket átadja a fizikai rétegnek. A fizikai réteg bitenként küldi át a fizikai közegen. Közeg-hozzáférési módszerek Üzenetszórásos csatornával rendelkező alhálózatok esetében egy kommunikációs csatorna van és osztozik az összes állomás Ehhez a csatornához kell hozzáférnie minden állomásnak Adás esetén Venni nem probléma Függ a topológiától 2
Közeg elérési módja szerint: Véletlen vezérlés Bármelyik állomás használhatja a közeget (ütközések!) Osztott vezérlés Egy időpontban egy állomás használhatja a közeget Központosított vezérlés Egy kitüntetett állomás vezérli a hálózatot, engedélyezi az állomásokat, figyel az ütközésmentességre Ezen belül lehet: Véletlen Osztott Központosított Ütközésfigyeléses ütközést jelző Vezérjeltovábbításos vezérjelgyűrű Lekérdezéses Réselt gyűrű Vezérjeltovábbításos vezérjelbusz Vonalkapcsolásos Regiszter beszúrásos Ütközésfigyeléses ütközést elkerülő Időosztásos többszörös hozzáférésű 3
Véletlen átvitel-vezérlés Minden állomás véletlenszerűen kezd el adni Keret akkor nem szenved ütközést, ha a küldés kezdetétől a végéig más állomás nem próbál keretet adni Minél nagyobb az állomások száma, annál valószínűbb, hogy ütközés jön létre Továbbá függ: forgalomtól, csomagok időtartamától Csökkenthetők az ütközések, ha időrészeket használunk Ütközést jelző vivőérzékeléses többszörös hozzáférés (CSMA/CD) Carrier Sense Multiple Access with Collision Detection Küldés előtt belehallgat a csatornába, ha csendes, akkor elküldi az üzenetet Minden állomáshoz eljut, de a cím alapján eldönti, hogy Neki szól és feldolgozza (vagy) Nem neki szól és eldobja Ütközés esetén random idő után újraküldés 4
Réselt gyűrű (slotted ring) Gyűrűn felfűzött állomások rés-nek nevezett rögzített hosszúságú kereteket adnak körbe Résenként egy foglaltságot jelző marker Üzenetek a rés méretére kell darabolni Küldő állomás feladata, hogy a visszaérkezett keretet kiürítse Ha egy rés nem jut alaphelyzetbe, akkor egy kijelölt állomás egy idő után törli a tartalmát Réselt gyűrű (slotted ring) 5
Osztott átvitel-vezérlés Minden állomás a közeghez való vezérlés funkcióját is betölti, ez a szerep váltakozva továbbadódik Vezérjeles gyűrű (token ring) Vezérjelens sín (token bus) Vezérjeles gyűrű (token ring) Vezérjel (token) halad körbe állomásról állomásra Token: rövid üzenet ami a gyűrű foglaltságára utal Üzenetküldés esetén a token foglaltra állítása vagy a csatornából való ideiglenes kivonása lehet Üzenet a címzett állomás veszi, a többi eldobja Küldőhöz való visszaérkezéskor az üzenetet kivonja, a token-t szabadra állítja 6
Vezérjeles gyűrű (token ring) Állomások között prioritás is beállítható Vezérjeles sín (token bus) A vezérjel busz az átviteli közeget úgy vezérli, hogy az állomásról állomásra történő vezérjel továbbítása egy logikai gyűrűt képez. 7
Központosított átvitelvezérlés Ezeknél az eljárásoknál mindig van egy kitüntett egység, amelynek feladata az egyes állomások hálózatához való hozzáférésének a vezérlése Lekérdezéses (polling) eljárás Vonalkapcsolásos eljárás Időosztásos többszörös hozzáférésű eljárás (TDMA) Lekérdezéses (polling) eljárás Főállomás (master) és mellékállomások (slave, secondary) A master egymás után szólítja fel az állomásokat az üzenet küldésére, akinek ha van üzenete, akkor elküldi a főállomásnak, aki a címzés alapján továbbítja Periodikusan, prioritási sorrend alapján történik az állomások lekérdezése 8
Lekérdezéses (polling) eljárás Vonalkapcsolásos eljárás A mellékállomások összekapcsolása Üzenetváltás után a kapcsolat megszűnik, a kapcsoló felszabadul Egy központban több kapcsoló is lehet, így több vonalkapcsolat is működhet 9
Idősztásos többszörös hozzáférésű eljárás (TDMA) Time Divison Multiple Access Elsődlegesen busz felépítésű hálózatoknál alkalmazzák Az állomások egy adott időszeletben adhatnak Ha nincs üzenet, akkor az az időszelet kihasználatlan marad Adatátviteli protokollok Folyamatos bitfolyamban nem lehet a hibátlanságot ellenőrizni bitfolyamot bitsorozat darabokra, vagy szokásos nevén keretekre kell tördelni A kereteket ellenőrző összeggel kell kiegészíteni Vétel után újraszámolják, ha megegyezik, akkor hibátlan az átvitel, ha nem, akkor el kell dobni és a küldő újraküldi 10
Változó bonyolultságú átviteli protokollok: Adó és vevő tulajdonságai Keretek adatútját jelentő csatorna minősége Váratlan esetekre való felkészültség Átvitelnél a bitenkénti átvitel helyett célszerűbb bitcsoportokat átvinni Legtöbbször ASCII Ilyenkor egész számú karaktert viszünk át Karakterorientált átvitel 11
Keretek képzése Karakterszámláló módszer Kezdő és végkarakterek alkalmazása karakterbeszúrással Kezdő és végjelzők bitbeszúrással Hibakezelés I. Hibakezelést az alsó három rétegben kell megoldani Egyedi bithibák kezelésére a hibajavító (error correcting codes ECC) és a hibajelző kódok (error detecting codes) alkalmazása ad lehetőséget Redundancia alkalmazása m+r => n (m: kód; n: kódszó) 12
Hamming távolság Két tetszőleges kódszót megadva, mindig megállapítható, hogy hány bitben különböznek egymástól: a két szó XOR kapcsolata által adott eredményben az 1-esek száma adja a különbséget (Hamming távolság) Ha két kódszó k Hamming távolságú, akkor az egyik a másikba k darab egyedi hibával konvertálódhat át. Hibakezelés II. Átviteli hiba mindig lesz (termikus zaj, impulzus zaj, stb.) Megoldás: hibakorlátozó kódolás Alapelve: kódszavakat redundanciával egészítjük ki az ADÓ oldalon, a VEVŐ oldalon az eljárás megismétlésével, az eredmények összehasonlításával állapítjuk meg, hogy van-e hiba 13
Hibakorlátozás (és hibakezelés) fajtái Hibajelzés: a redundancia alapján a hibát a vevő jelzi Paritásvizsgálat Tömbparitás vizsgálat CRC Cyclic Redundancy Check Hibajavítás: a redundancia alapján a hibát a vevő ki is javítja, nagy redundanciát igényel CRC Csoportos bithibák esetén használjuk Egy keretnyi adatot egy előre meghatározott bitsorozattal elosztunk és a maradékot a keret részeként továbbítjuk Vevő oldalon ugyanezt elvégezzük, ha ez egyezik a keret részeként átküldött maradékkal, akkor a keret hibátlan 14
Korlátozás nélküli, egyirányú (szimplex) protokoll ADÓ VEVŐ Nem ADÓ a hálózati rétegtől kapott csomagokból keretet állít össze és átadja a fizikai rétegnek Keret jött? Igen ADÓ adókeretek VEVŐ a fizikai rétegtől kapott keretből az infórmációkat továbbadja a hálózati rétegnek Egyirányú megáll és vár protokoll ADÓ ADÓ adatkeretek VEVŐ ADÓ a hálózati rétegtől kapott csomagokból keretet állít össze és átadja a fizikai rétegnek Keret jött? Igen Nem Nyugta jött? Nem VEVŐ a fizikai rétegtől kapott keretből az infórmációkat továbbadja a hálózati rétegnek, nyugta küldése Igen Nyugta keretek 15