• Nem Talált Eredményt

Hálózati kommunikáció megvalósítása-architektúrák

In document Informatikai alapok (Pldal 185-189)

ROM-BIOS

6. Számítógép hálózatok

6.2. Hálózati kommunikáció megvalósítása-architektúrák

A mai modern számítógép-hálózatok tervezését strukturálisan, hierarchikus módszerrel végzik, (6.4 ábra) azaz a hálózat egyes részeit egymás felett elhelyezkedő szintekbe, rétegekbe (layer) szervezik.

A kommunikációnál használt szabályok és megállapodások összességét protokollok-nak nevezzük. Hálózati kapcsolatnál az egyik gép k.-adik rétege a másik gép ugyanilyen szintű rétegével kommunikál. Ezt olyan módon teszi, hogy minden egyes réteg az alatta lévő elhelyezkedő rétegnek vezérlőinformációkat és adatokat ad át egészen a legalsó rétegig, ami már a kapcsolatot megvalósító fizikai közeghez kapcsolódik.

186 6.4. ábra. Hálózati architektúra

A szomszédos rétegek között egy réteginterfész húzódik, amely az alsóbb réteg által a felsőnek nyújtott elemi műveleteket és szolgálatokat határozza meg. A legfontosabb, hogy ez az interfész minden réteg között egyértelmű legyen, azaz egyes rétegek egyértelműen definiált funkcióhalmazból álljanak. Ez egyszerűvé teszi az adott réteg megvalósításának a cseréjét, ezzel segítve a nyílt rendszerek kialakítását.

Az architektúra kialakításakor meg kell tervezni az egyes rétegeket a következő alapelvek figyelembe vételével:

 Minden rétegnek rendelkeznie kell a kapcsolat felépítését illetve annak lebontását biztosító eljárással,

 Döntést kell hozni az adatátvitel szabályairól: az átvitel egyirányú (szimplex), váltakozóan két irányú (fél duplex) vagy egyszerre két irányú (duplex) legyen.

o Szimplex átvitel esetén, a csatornán áramló információ csak egy irányú lehet, mindig van adó és van vevő a rendszerben, ezek szerepe nem felcserélhező. Ilyen kommunikáció a szokásos rádió vagy TV adás (nem tudunk visszabeszélni...) o Fél duplex átvitel esetén, a csatornán az információáramlás már kétirányú,

felváltva mindig csak az egyik irányban foglalja le a csatornát. Ilyen átvitel valósul meg nagyon sok rádiós kapcsolatban (pl. CB rádió)

o Duplex átvitel esetén egyidejű, két irányban történő átvitel valósul meg, hasonlóan az emberi beszélgetéshez, és technikai példaként a telefont említhetjük meg.

6.2.1. Hálózatszabványosítás

Nyilvánvaló, hogy a hálózatok kialakításában (de ez igaz minden műszaki tudományra) alapvető szerepet játszik a szabványosítás. A szabványok központi szerepet játszanak a fejlődésben, ez teszi a rendszereket nyíltakká, egységeit cserélhetővé. Minden új dolog kialakulását megelőzi a kutatás, az ehhez kapcsolódó írásos és szóbeli információcserék (cikkek, konferenciák), majd az új dolgot gyártó rendszerek kialakítása.

Felmerül a kérdés, hogy mikor célszerű az új dolgokkal kapcsolatos információhalmazt a szabványok által meghatározott útra terelni.

 Ha ez a kutatási szakaszban következik be, akkor lehetséges, hogy az esetleg a még nem alapos ismeretek miatt a szabvány nem lesz megfelelő, mivel a későbbi, új, kapcsolódó

187 kutatási eredményeket már nem lehet beilleszteni, azaz esetleg kedvező megoldásokat kell elhagyni.

 Ha viszont túl későn következik be a szabványosítás, akkor a gyakorlatban már számos egymástól eltérő megoldás kerül megvalósításra, ami az ellenérdekek miatt nehézzé teszi az egységességet igénylő szabványosítást.

Ezért a gyakorlatban a szabványok két családja létezik: a de-jure szabványok, amelyeket szervezetek, bizottságok deklarálnak, és hivatalos dokumentumokban rögzítenek,és a de-facto szabványok, amelyek elterjedését már egy-egy konkrét megoldás széleskörű használata biztosítja. Példa ez utóbbira a nyomtatók hagyományos Centronics interfésze, vagy az IBM-PC-ben alkalmazott számos megoldás. Természetesen számos esetben a de facto szabványokat célszerű utólagosan de jure szabványokká alakítani.

A számítógép-hálózatok esetében sem történtek másképp a szabványosítások. Néhány vezető cég a termékeivel de-facto szabványokat teremtett, és a későbbi ezeket figyelembe vevő de-jure szabványosítási törekvések kompromisszumos megoldásokat eredményeztek, azaz adott műszaki problémára több megoldást tettek szabványossá. A legfontosabb szabványügyi nemzetközi szervezet az International Standard Organisation (ISO).

6.2.2. Az OSI modell

Az előzők szerint a számítógép-hálózatok rétegezett struktúrájú modell segítségével írhatók le (6.5 ábra). Az ISO kidolgozott egy olyan modell-ajánlást (nem szabványt!), amelyet ma már minden kommunikációs rendszer tervezésekor követnek.

6.5. ábra. Az OSI modell

Ez az OSI-modell. Az OSI az Open System Interconnect - nyílt rendszerek összekapcsolása kifejezés angol eredetijéből alkotott betűszó. Nyílt rendszereknek az olyan rendszereket hívjuk, amelyek nyitottak a más rendszerekkel való kommunikációra. Az OSI modell hét rétegből áll, és a kialakításuknál a következő elveket vették figyelembe:

 Minden réteg feladata jól definiált legyen, és ez a nemzetközileg elfogadott szabványok figyelembe vételével történjen,

 A rétegek közötti információcsere minimalizálásával kell a rétegek határait megállapítani,

188

 Elegendő számú réteget kell definiálni, hogy a különböző feladatok ne kerüljenek feleslegesen egy rétegbe.

A rétegek kialakításánál figyelembe kell venni azt a tényt, hogy nem csak az ugyanazon alhálózatban lévő gépek kommunikálnak egymással, hanem különböző alhálózatban lévők is.

Azaz létezik hálózatok közötti kommunikáció is. Ezt takarja az internet kifejezés.

A következőkben röviden összefoglaljuk az egy-egy réteg által ellátott feladatokat, a legalsó szinttől felfelé haladva. A modell alsó három rétege az alhálózattól függ, a következő két réteg már a hálózatok közötti kommunikációért felel, míg a felső két réteg alkalmazásfüggő, az adatok kódolásáért, értelmezésért felel.

Fizikai réteg (physical layer): Valójában ezen a rétegen zajlik a tényleges fizikai kommunikáció. Jelsorozatokat (adatokat) juttat a kommunikációs csatornára, olyan módon, hogy a küldött, adó oldali jelsorozatokat a vevő oldal is helyesen tudja értelmezni. Az információ tényleges megjelenési formája igen változó lehet: pl. elektromos vezeték esetén, a rajta lévő feszültség értéke, vagy a feszültség változásának az iránya. Az információhordozó jelsorozat megjelenítése és az átviteli közeg más és más lehet: optikai kábel, rádióhullám, stb.

Itt kell meghatározni, hogy hogyan épüljön fel egy kapcsolat és hogyan szűnjön meg, milyen legyen az alkalmazott csatlakozó fizikai, mechanikai kialakítása.

Adatkapcsolati réteg (data link layer): Feladata adatok megbízható továbbítása az adó és fogadó között. Ez általában úgy történik, hogy az átviendő adatokat (amelyek általában bitcsoportba kódolt formában - pl. bájtokban jelennek meg) adatkeretekké (data frame) tördeli, ellátja kiegészítő cím, és egyéb ellenőrző információval, ezeket sorrendhelyesen továbbítja, majd a vevő által visszaküldött nyugtakereteket (acknowledgement frame) véve ezeket feldolgozza. Az első pillanatban egyszerűnek és teljesnek tekinthető megoldást a gyakorlatban számos kialakuló esemény kezelésével is ki kell egészíteni. Hogyan jelezzük a keretek kezdetét és a végét? Mi történjék akkor, ha egy keret elveszik? Mi történjék akkor, ha a nyugtakeret vész el? Ilyenkor, ha az adó újra adja, kettőzött keretek jelenhetnek meg a rendszerben. Mi legyen akkor, ha az adó adási sebessége jelentősen nagyobb, mint a vevőké?

Hálózati réteg (network layer): Azok az adategységek, amelyek két távoli pont között cserélt információt hordozzák: a hosszabb üzenetek szétdarabolásával kialakított csomagok. Fontos része a címzések kezelése. Nagyobb hálózatok esetén a keretek vevőtől a célba juttatása elvileg több útvonalon is lehetséges, feladat a bizonyos szempontból optimális útvonalnak a kiválasztása. Ez a tevékenység az útvonalválasztás (routing), és több megoldása lehetséges:

vagy a rendszer kialakításakor alakítjuk ki az útvonalakat, vagy a kommunikáció kezdetén döntünk arról, hogy a teljes üzenet csomagjai milyen útvonalon jussanak el a rendeltetési helyükre, vagy csomagonként változó, a hálózat vonalainak terhelését figyelembe vevő alternatív útvonalválasztást használunk. Itt kell megoldani a túl sok csomag hálózatban való tartózkodása okozta torlódást, valamint különböző (heterogén) hálózatok összekapcsolását.

Szállítási réteg (transport layer): Feladata a hosztokon futó, egymással kommunikáló folyamatok közötti átvitel megvalósítása. A kapott adatokat szükség esetén kisebb darabokra vágja, átadja a hálózati rétegnek, csomagonként történő küldésre. Egy viszonyréteg által igényelt összeköttetési kérés általában egy hálózati összeköttetést hoz létre, ha azonban nagyobb hálózati sebesség szükséges, akkor több hálózati kapcsolatot is igénybe vehet.

Fordítva, ha kisebb átviteli sebesség is elegendő, akkor egy hálózati összeköttetést lehet felhasználni több viszonyréteg kapcsolat lebonyolítására. Ezt a szállítási rétegnek a felsőbb rétegek felé nem érzékelhető módon kell megvalósítania. További feladatai: Több üzenetfolyam egyetlen csatornára nyalábolása, illetve forrás-cél összeköttetések létrehozása a névadási mechanizmus felhasználásával.

189 Együttműködési réteg (session layer): Más néven: viszonyréteg. A különböző gépek felhasználói viszonyt létesítenek egymással, például bejelentkezés egy távoli operációs rendszerbe, állománytovábbítás két gép között. Feladata még az átvitt adatfolyamokba szinkronizációs ellenőrzési pontok beiktatása. Ez azt biztosítja, hogy hosszú átvitt adatfolyam átvitele alatt bekövetkező hiba esetén elegendő az utolsó ellenőrzési ponttól ismételni az elvesztett adatokat.

Megjelenítési réteg (presentation layer): A feladata az adatok egységes kezelése, kódolása, dekódolása. Az alkalmazások a bitfolyamban kódolt adatokat küldenek. Ezeket általában adatstruktúrákban ábrázolják. A kódolás sem minden esetben egységes, pl. a karakterek kódolására az ASCII mellett a UNICODE is használt. Más lehet egy több bájtos kód esetén az egyes bájtok sorrendje. Ezért egységes, absztrakt adatstruktúrákat kell kialakítani, amelyek kezelését a megjelenítési réteg végzi. További, e réteg által kezelt vonatkozások: az adattömörítés, illetve az átvitt adatok titkosítása.

Alkalmazási réteg (application layer): Mivel ez kapcsolódik legszorosabban a felhasználóhoz, itt kell a hálózati felhasználói kapcsolatok megoldásait megvalósítani. Mivel az ember-gép kapcsolatot megvalósító, billentyűzet-képernyő párost tartalmazó termináloknak számos típusát használják, ezért egy hálózati virtuális terminált definiálnak, és a programokat úgy írják meg, hogy ezt tudja kezelni. A különböző típusú terminálok kezelését ezek után egy olyan kis — a valódi és e hálózati absztrakt terminál közötti megfeleltetését végző – programrészlet (driver) végzi. Másik tipikus, e réteg által megvalósítandó feladat a fájlok átvitelekor az eltérő névkonvenciók kezelése, az elektronikus levelezés, és mindazon feladat, amit internet szolgáltatásként ismerünk.

In document Informatikai alapok (Pldal 185-189)