Rétegzett hálózati kommunikáció

 

Rétegzett hálózati kommunikáció

A hálózatok túl bonyolultak ahhoz, hogy minden részletük egyszerre ábrázolható legyen. A cél a bonyolultság csökkentése, és a funkciók cserélhetősége, továbbá a szabványosítás lehetősége. A tervezés és felépítés egy hierarchikus struktúra mentén történik. A szervezés alapja a rétegekre bontás.

 

Az egyes rétegek egymásra épülnek. Minden réteg igénybe veszi az alatta levőt feladata végrehajtásához, és szolgáltatást nyújt a felette levőnek. Hogy hány réteg van, s mi az egyes rétegek feladata és működése,  az minden hálózatban más és más lehet.

 

Az egyes rétegek lefelé és fölfelé interfész-eken kommunikálnak (inter-face = érintkező felület). Az interfész tulajdonképpen az adott kapcsolódási felületen nyújtott szolgáltatások definíciója. Fontos, hogy ezek minél egyszerűbbek és világosabbak legyenek.

 

A réteget ténylegesen megvalósító hardver vagy szoftver elem neve entitás Az egymással párbeszédben álló két végberendezés megfelelő rétegei a processz párok (társentitások), amelyek egymással virtuális kommunikációt valósítanak meg. Virtuális, mert miközben logikai értelemben egymással beszélnek, fizikailag az alattuk levő réteggel állnak kapcsolatban. A processz párok egymás közötti nyelve a protokoll.

 

A legalsó réteg a fizikai közeg, végső soron tehát minden kommunikáció ezen zajlik.

 

 

 

 

 

 

 

 

 

 

 

A rétegek egymás közötti kapcsolatát szemlélteti az alábbi példa:

 

Az OSI modell

 

 

 

 

 

 

 

 

 

 

A Nemzetközi Szabványügyi Szervezet (ISO = International Standard Organisation) által kidolgozott ajánlás az OSI modell. (OSI = Open System Interconnection = nyílt rendszerek összekapcsolása).

Az OSI modell hét rétegből áll. A modell alsó három rétege a hálózattól függ, míg a felső négy réteg mindig alkalmazásfüggő és mindig az alkalmazást futtató gazdagépeken történik a megvalósításuk.

 

 

 

 

 

Fizikai réteg (physical layer) Ezen zajlik a tényleges fizikai kommunikáció, információ-egységeknek, azaz biteknek megfeleltethető fizikai impulzusokat továbbít.  Fénykábeltől rádióhullámig sokféle lehet.  Itt kell meghatározni az átvitel időtartamát, a kapcsolat irányát (egy-, vagy kétirányú legyen), hogyan épüljön fel és szűnjön meg a kapcsolat. 

Kapcsolati réteg (link layer) A réteg másik neve: adatkapcsolati réteg. A réteg elsődleges feladata, hogy a hálózat csomópontjai között hibamentes átvitelt biztosítson. A szállítandó adatok bájtcsoportokba szervezve jelennek meg. Ezeket adatkeretekké (data frame) tördeli, ellátja kiegészítő címmel, ellenőrző információkkal, továbbítja, majd a vevő által visszaküldött, az átvitelt igazoló elismervény-keretet (acknowledgement frame) fogadja és feldolgozza.

 

Hálózati réteg (network layer)  A kommunikációs alhálózatok működését vezérli, a csomagok forrás és célállomás közötti útvonalát határozza meg.

Az útválasztás (routing) lehetséges megoldásai:

 a) Az útvonalakat  rendszer kialakításakor hozzuk létre.

  b) A kommunikáció kezdetén döntünk arról, hogy milyen útvonalat használjanak a csomagok

  c) Csomagonként változó, a hálózat vonalainak terhelését figyelembe vevő alternatív útvonalválasztás.

 

A hálózati réteg az alhálózatokban biztosítja a torlódás elkerülését. A szállítási réteg elől eltakarja a forgalomirányítással kapcsolatos feladatokat

 

Szállítási réteg (transport layer)  Feladata a hosztok közötti átvitel megvalósítása. A kommunikáló hosztok sokszor távol vannak egymástól, az üzenetváltásaik több csomóponton keresztül történnek. A szállítási réteg feladata annak megvalósítása, hogy erről a két hoszt semmit sem tudva úgy kommunikálhasson egymással, mintha pont-pont összeköttetésben lennének. Az adatokat (szükség esetén) kisebb darabokra vágja  és átadja a hálózati rétegnek.  Fontos része a címzések kezelése. A felette lévő rétegek által igényelt összeköttetési (viszony) kérés általában egy hálózati összeköttetést hoz létre, de ha nagyobb hálózati sebesség szükséges, akkor több hálózati kapcsolatot is igénybe vehet.

 

Megfordítva, ha kisebb átviteli sebesség is elegendő, akkor egy hálózati összeköttetést fel lehet haszná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. 

 

Viszony réteg (session layer)  A különbözői gépek felhasználói viszonyt létesítenek egymással, pl. bejelentkezés egy távoli operációs rendszerbe, vagy állománytovábbítás két gép között

 

A viszonyréteg egyik szolgáltatása a párbeszéd szervezése. A viszonyok egyidőben egy- és kétirányú adatáramlást is lehetővé tehetnek. Amennyiben a forgalom csak egyirányú lehet a viszonyréteg segítségével határozzák meg, hogy ki a soron következő adatküldő.  Egy ehhez kapcsolódó viszonyszolgálat a kölcsönhatás-irányítás (token management).  Néhány protokoll számára alapvető fontosságú, hogy a két oldal egyidőben ne próbálkozzon ugyanazzal a művelettel. E tevékenységek irányítására a viszonyréteg kicserélhető vezérlőjeleket tart fenn.

 

A viszonyréteg egy másik szolgálata az összehangolás (synchronization).  Tegyük. fel, hogy egy hálózaton két gazdagép között 1 órás állománytovábbítási művelet történik, de fél óra múlva ez valamilyen okból megszakad. Ilyenkor az egész műveletet elölről kell indítani, de egy újabb hálózati hiba ismét megszakíthatja. Ennek feloldására a viszonyréteg lehetővé teszi, hogy az adatfolyamba összehangolási pontokat lehessen beépíteni, s a hálózati hibát követően csak az utolsó összehangolási (ellenőrzési) pont után következő adatokat kell megismételni.

 

Megjelenítési réteg (presentation layer) A réteg feladata az adatok egységes kezelése. A legtöbb alkalmazói program nem csak egy bitfolyamot, hanem neveket, szövegeket küld, s ezeket valamilyen adatszerkezetben ábrázolják, időnként változó kódolásban.

 

Ezért egységes, elvonatkoztatott adatszerkezeteket alakítanak ki, amelyek kezelését a megjelenítési réteg végzi. Feladata még az adattömörítés és az szállítandó adatok titkosítása (cryptography).

 

Alkalmazási réteg (application layer) Ez kapcsolódik a felhasználóhoz, ezért a felhasználói kapcsolatokat itt kell meghatározni. Számos termináltípust használnak, amelyek különböznek egymástól, ezért a rétegben egy hálózati látszólagos terminált definiálnak, s a programoknak ezt kell tudniuk kezelni. A különböző típusú terminálok kezelését pedig egy kis programrészlet végzi, amely megfelelteti a látszólagos terminált a valódinak. A réteg másik feladata a fájlok átvitelekor az eltérő névszabványok kezelése, az elektronikus levelezés, s a többi, Internet szolgáltatásként ismert feladat.

 

Ismert hálózatok és az OSI modell kapcsolata

A Digital cég DECNET hálózata magába foglalja az összes réteget. A NFS szolgáltatás az alkalmazói és a megjelenítési réteget valósítja meg. A TCP/IP protokollrendszer az együttműködési, szállítási és hálózati rétegeket jelenti. A kapcsolati és a fizikai rétegeket az Ethernet, a Token Ring, az ARCnet és az FDDI valósítják meg

 

Rétegek közötti kommunikáció

A rétegek közötti kommunikáció ún. szolgálatok segítségével valósul meg.

Összeköttetés alapú szolgálat

Ilyen pl. a telefonos-modemen keresztüli kapcsolat. Az információ átvitel sorrendjét szigorúan az adó határozza meg. tehát az adatok sorrendje nem változik addig, amíg eljut a címzetthez. Az összeköttetés kialakítása persze feltételekkel jár, így ez költséges, vagy a közvetlen összeköttetés esetleg lehetetlen. Az összeköttetés alapú szolgálat lehet megbízható és nem megbízható.

 

Összeköttetés-mentes szolgálat

Az információ ilyenkor az adó és a vevő között a vevő címét is tartalmazó információrészek (csomagok) segítségével kerül átvitelre, a levélkézbesítő rendszer működéséhez hasonló módon. Ilyenkor elképzelhető, hogy a részekre bontott információt a vevő nem az adó által küldött sorrendben kapja meg. Tehát a csomagokat később össze kell rakni helyes sorrendben.

 

Szolgálat-primitívek (alapműveletek)

Egy adott szolgálatot alapműveletekkel (primitívek) írunk le. Az OSI modellben a következő típusú alapműveletek vannak:

 

Alapművelet                         Feladata

Kérés                                     Valamilyen tevékenység végrehajtásának kérése

Bejelentés                               Információadás eseményről

Válasz                                    Egy eseményre való válaszadás

Megerősítés                            A kérést kérő informálása

 

Szolgálat és protokoll

A szolgálatok és a protokollok egymástól megkülönböztetendő fogalmak. A szolgálat olyan primitív műveletek halmaza, amelyet egy réteg a felette levő rétegnek biztosít. A szolgálat azt határozza meg, hogy a réteg milyen műveletek végrehajtására van felkészülve, de semmit sem mond arról, hogy azt hogyan kell megvalósítani. Egy szolgálat két réteg közötti határfelülethez hasonló, ahol az alsó réteg a szolgáltató, a felső réteg pedig a szolgálathasználó.

 

A protokoll olyan szabályok halmaza, amely szabályok már funkcionálisan társelemek között cserélt keretek, csomagok, vagy üzenetek alakját és jelentését előírják. Tehát egy adott kapcsolatnál használt szabályok és megállapodások összessége. A protokoll az adatátviteli hálózatokban a kommunikáció kezdeményezéséhez és fenntartásához szükséges, szigorúan kötött szabályok rendszere.

 

A funkcionális elemek protokollokat használnak szolgálat-meghatározásaik megvalósítása érdekében. Protokolljaikat bármikor, tetszés szerint kicserélhetik, csak azt kell biztosítaniuk, hogy a felhasználó által látott szolgálat ne változzék.

 

Analógia: a szolgálat olyan, mint egy elvonatkoztatott adattípus. Meghatározott tárgyakon végrehajtandó műveleteket határoz meg, de azt nem írja elő, hogy e műveleteket hogyan kell megvalósítani. A protokoll a szolgálat megvalósítása, s mint ilyen, láthatatlan a szolgálat használója számára.

 

Gyakorlati példa hálózati rétegekre

 

 

 

 

 

 

 

 

 

 

 

A gyakorlatban az OSI szabványnak nem pontosan megfelelő, de körülbelül megfeleltethető hálózati rétegek terjedtek el. Ezek megnevezése rendszerint a rétegben beszélt protokoll alapján történik.

 

 

 

 

Protokoll

Eszköz

 

 

 

 

 

ftp

smtp

pop

http

gateway

 

 

 

 

 

tcp

 

 

router

ip

 

 

Ethernet

bridge, switch

 

repeater, hub

 

Ethernet
IP
TCP
FTP
SMTP
POP
HTTP

Fizikai és MAC (Media Access Control) protocol

Internet Protocol
Transmission Control Protocol
File Transfer Protocol
Simple Mail Transfer Protocol
Post Office Protocol
Hypertext Transfer Protocol

 

 

Példa: egy levél elküldése