2013. április 23., kedd
SZSZK11 - Hálózatok
Adatkapcsolati protokollok
--------------------------
- A protokollok feladata egy összeállított keret átvitele két csomópont között.
- Az adatokat a hálózati rétegbő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, ami bitenként küldi át a fizikai közegen.
- A csomag küldés folyamata bonyolult folyamat, mert az adó és a vevő között olyan hatások érhetik, amelyekre fel kell készülnie a protokollnak. (váratlan események, pl. ütközés, a csatorna minősége)
A probléma az, hogy nincs olyan eljárás, amely folyamatos tetszőleges bitfolyamban a hibát képes jelezni. Az átküldés hibátlanságát ellenőrizni kell, ezért a bitfolyamot keretekké kell tördelni, és mindegyik keretet egy ellenőrző összeggel kell kiegészíteni. A keret megérkezése után ez az ellenőrző öszeg a vételi oldalon a vett adatokból is kiszámításra kerül, és ha nem egyezik meg a küldő által számítottal, akkor a keretet a vevő eldobja, és a küldőnek ismételten el kell küldenie.
- Bitcsoportos átvitelt alkalmazunk, hogy ne foglaljuk bitenként a csatornát. A bitcsoportok tetszőlegesek lehetnek, de általában ASCII karakterkódolásúak. Ilyen setben mindig egész számú karaktert viszünk át, így az átvitt információ adategysége a karakter. -> Ez a karakterorientált átvitel.
(Megjegyzés: Ha a bitfolyam adatait bitenként visszük át, akkor azt bitorientált átvitelnek nevezzük)
Keretek képzése
---------------
1., Karakterszámláló módszer
- A keret fejlécében megadjuk a keretben lévő karakterek számát. Ez a vevő oldalán meghatározhatóvá teszi a keret végét.
2., Kezdő és végkarakterek alkalmazása karakterbeszúrással
- az előző módszernél a keret karaktereinek vételénél egy számlálót is folyamatosan kell egyesével csökkenteni (dekrementálni), amely kezdeti értékét is a keretből töltjük fel. Amikor a számláló értéke nulla, akkor értük el a keret végét. Ennél jobb megoldás, ha egy speciális karaktersorozattal jelöljük a keret kezdetét és végét. Erre bevállt módszer a következő:
- keret kezdete: DLE STX
- keret vége: DLE ETX
Ezek speciális ASCII kódtáblában megtalálható karakterek, és az adatrészben soha nem fordulhatnak elő.
3., Kezdő és végjelzők bitbeszúrással:
Ezt a módszert a rugalmasabb bitorientált átvitelnél használják. Minden keret egy speciális bitmintával kezdődik és végződik. Ha az adó 5 egymást követő 1-est tartalmazó mintát talál az adatmezőben, akkor egy 0 bitet szúr be utána. A vevő a másik oldalon pedig ezt a beszúrt bitet, az 5 egymás utáni 1-es bit érzékelése után kiveszi a bitfolyamból.
Hibakezelés
-----------
Az adatátviltel és a kommunikáció fontos kérdése az átvitel során fellépő hibák kezelése. A rétegfelosztást figyelembe véve ezt az alsó 3 rétegben kell megoldani.
Az első hibakezelést a fizikai rétegben kezeljük a bitek és a karakterek átvitelekor. A vonalakon fellépő hibákat különböző fizikai jelenségek okozzák. (pl.: termikus zaj, vonalakat kapcsoló berendezések impulzus zaja, légköri jelenségek, villámlás okozta zajok.)
A zajok időtartamából következően lehetnek egyedi és csoportos bithibák. Gyakrolatban a hibák fennállási ideje általában egy bit átviteli idejének a többszöröse -> a hibák csoportosan, hibacsomók formájában jelentkeznek.
Mivel az adatátvitel keretekben történik, az eredmény egy-egy keret meghibásodása.
Egyedi bithibák kezelésére a hibajavító és hibajelző kódok alkalmazása ad lehetőséget. (Hibajavító: ECC - Error Correcting Code, Hibajező kód: Error Detecting Code)
Hamming távolság
----------------
- Két tetszőleges kódszót megadva, mindig megállípítható, hogy hány bitben különböznek egymástól. A két szó kizáró vagy (XOR) kapcsolata által adott eredményben az 1-esek száma adja a különbséget. Ezt nevezzük két kódszó Hamming távolságának.
CRC - Cyclic Redundancy Check
-----------------------------
Csoportos bithibák esetén alkalmazzuk. Ez a hibavédelmi eljárás úgy működik, hogy egy keretnyi adatot egy előre meghatározott bitsorozattal elosztunk, és a maradékot a keret részeként továbbítjuk. A vevő oldalon ugyanezt az osztást végezzük el, és ha ez a keret részeként átküldött maradékkal egyezik, akkor hibátlannak fogadjuk el a keretet.
Három szabványos bitsorozat terjedt el:
1., CRC-12 6 bites karakterek átvitelekor használt.
2., CRC-16 8 bites karakterek átvitelekor használt.
3., CRC-CCITT 8 bites karakterek átvitelekor használt.
Adatkapcsolati protokoll
------------------------
- Az adatkapcsolati réteg tördeli keretekké a bitfolyamot és látja el fejrésszel, amelyet a vevő oldali adatkapcsolati réteg távolít el, és állítja vissza a bitfolyamot. A hálózati és adatkapcsolati réteg teljes elkülkönítése érdekében a kálózati rétegnek a keretekre tördelésről, annak fejléccel történő ellátásáról nincs információja.
Hálózati réteg
--------------
A hálózati réteg feladata a csomagok eljuttatása a forrástól a célig. A célig egy csomag valószínüleg több csomóponton keresztül jut el. Ehhez ismerni kell a hálózat felépítését, azaz topológiáját, és ki kell választani az optimális útvonalat. Ha a forrás és a cél eltérő típusú hálózatokban vannak, a réteg feladata, hogy a hálózatok közötti különbségekből adódó problémákat megoldja.
A megoldásnál figyelembe kell venni, hogy alapvetően két eltérő hálózatszervezési módszer létezik:
- az összeköttetés alapú (az összeköttetést virtuális áramköröknek nevezzük -> A forrás és a cél között felépült állandó utvonalon haladnak át a csomagok, de egy fizikai közeget egyszerre több virtuális kapcsolat használhat)
- összeköttetés mentes
- Összeköttetés mentes hálózatoknál az áramló csomagokat datagramoknak nevezzük.
- Virtuális áramkörök használatakor nem kell minden egyes csomagra forgalomszabályozási döntést hozni. A forgalom szabályozás az összeköttetés létesítésének része.
Feliratkozás:
Megjegyzések küldése (Atom)
Nincsenek megjegyzések:
Megjegyzés küldése