Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
1
1. Szállítási (transzport) réteg
Összeállította: Broczkó Péter (BMF)
2
1.1. Az ISO OSI szállítási réteg és protokoll-osztályai
Az ISO OSI szállítási réteg feladatai Az ISO OSI szállítási réteg protokoll- osztályai Tempus S_JEP Számítógép hálózatok
3
1.1.1. Az ISO OSI szállítási réteg feladatai
a magasabb rétegű alkalmazások szegmentálása a végpontok közötti összeköttetés kialakítása vezérli az adatáramlást szegmensek küldése az egyik végpontból a másikba adatátviteli hibák felismerése/javítása (opcionális) Tempus S_JEP Számítógép hálózatok
4
1.1.2. Az ISO OSI szállítási réteg protokoll-osztályai
A szolgáltatás típusa Protokoll-osztály Összeköttetés alapú TP0, TP1, TP2, TP3 Összeköttetés-mentes TP4 Tempus S_JEP Számítógép hálózatok
5
1.2. A TCP/IP architektúra szállítási rétege
Alkalmazási réteg Transmission Control Protocol (TCP) User Datagram Protocol (UDP) Szállítási Hálózati Adatkapcsolati és fizikai Tempus S_JEP Számítógép hálózatok
6
1.2.1. TCP kontra UDP TCP összeköttetés-orientált protokoll
megbízhatóbb, mivel visszajelzést ad a szegmensek megérkezéséről lassúbb az összeköttetés létrehozása, de maga az adatátvitel utána gyors az adatfolyamot szegmensekbe tördeli UDP összeköttetés nélküli protokoll nem megbízható, mivel nincs benne visszajelzés a szegmensek megérkezéséről igen gyors és hatékony az alkalmazások adatai elférnek egy szegmensben, így nem szükséges egyenlő szakaszokra tördelnie Tempus S_JEP Számítógép hálózatok Tempus S_JEP
7
A TCP szegmens formátuma Acknowledgement Number
Sours Port Dest. Port Sequence Number Acknowledgement Number H L E N Reserved Code Bits 16 32 4 6 # Bits 16 0 or 32 W I N D O W Check- sum Urgent Pointer Option Data … Tempus S_JEP Számítógép hálózatok
8
1.2.2.1. Az TCP-t alkalmazó adatátviteli protokollok
World Wide Web File Transfer Protocol (FTP) Telnet SMTP ( ) Tempus S_JEP Számítógép hálózatok
9
1.2.2.2. A háromfázisú kézfogás
A állomás B állomás SYN(seq=x) küldése SYN (seq=x) fogadása SYN (seq=y,ack=x+1) küldése SYN(seq=y,ack=x+1) fogadása ACK(ack=y+1) küldése ACK (ack=y+1) fogadása SYN – szinkronjel, ACK – Nyugtázás Az x az A, az y pedig a B állomás sorszáma Tempus S_JEP Számítógép hálózatok
10
Az UDP szegmens formátuma
16 0 or 32 Source Port Destination Port Length Check- sum Data … Tempus S_JEP Számítógép hálózatok
11
1.2.3.1. Az UDP-t alkalmazó adatátviteli protokollok
Trivial File Transfer Protocol (TFTP) Simple Network Management Protocol (SNMP) Network File System (NFS) Domain Name System (DNS) (alkalmazhatja a TCP-t is) Tempus S_JEP Számítógép hálózatok
12
1.3. A kliens/szerver kommunikáció hibátlan byte folyamat és üzenet alapú modelljei és szemléltetése példákon keresztül Tempus S_JEP Számítógép hálózatok
13
1.3.1. A kliens/szerver kommunikáció hibátlan byte folyamat alapú modellje (TCP)
Forgalomszabályozás Forrás Cél Átvitel A puffer megtelt Folytatódik a felgyülemlett szegmensek feldolgozása A puffer kiürült Az átvitel folytatása Ready Not Ready Stop Go Tempus S_JEP Számítógép hálózatok
14
1.3.1.1. TCP egyszerű nyugtázás és ablak-technika I.
Az ablak mérete = 1 FORRÁS CÉL Send1 Receive ACK 2 Send2 Receive ACK 3 Send3 Receive ACK 4 Receive 1 Send ACK 2 Receive 2 Send ACK 3 Receive 3 Send ACK 4 Tempus S_JEP Számítógép hálózatok
15
1.3.1.2. TCP egyszerű nyugtázás és ablak-technika II.
FORRÁS CÉL Send1 Send2 Send3 Receive ACK 4 Send4 Send5 Send6 Receive ACK 7 Receive 1 Receive 2 Receive 3 Send ACK 4 Receive 4 Receive 5 Receive 6 Send ACK3 Tempus S_JEP Számítógép hálózatok
16
1.3.1.3. TCP sorrend és nyugtaszámok
Source Port Destination Port Sequence Number Acknowledgment Number …… …. Source Dest. Seq. Ack. …. …. Most küldtem el a 10.-et! Kérem a 11.-et! Tempus S_JEP Számítógép hálózatok
17
A kliens/szerver kommunikáció hibátlan üzenet alapú modelljei (összeköttetés- mentes protokoll- UDP) Az UDP ellenőrző összeg-számítása és gyakorlati alkalmazása Megbízhatóság biztosítási példa az UDP alkalmazása esetén Tempus S_JEP Számítógép hálózatok
18
1.3.2.1. Megbízhatóság biztosítási példa (UDP – TFTP)
a küldő állomás ellenőrző összeget számít és azt beírja a szegmensbe elküldi a szegmenst a fogadó állomás újra kiszámítja az ellenőrző összeget amennyiben nem egyezik a szegmensben lévővel, értesíti a küldő állomást, hogy az küldje újra Az eredmény: megbízható átvitel Tempus S_JEP Számítógép hálózatok
19
1.4. A TCP/IP transzport felületének protokolljai: a socket felület és a tli (transport layer interface) felület Tempus S_JEP Számítógép hálózatok
20
1.4.1. Port-számozás 1.4.1.1. A port-számozás célja
Mind a TCP, mind pedig az UDP port-számokat alkalmaz annak érdekében, hogy információt adjon át a magasabb rétegeknek A port-számok segítségével követhetők nyomon az ugyanazon az állomáson egyidejűleg futó különféle alkalmazások üzenetei Port-szám tartományok Tempus S_JEP Számítógép hálózatok
21
1.4.1.1. Az alkalmazások közötti multiplexelés
Alkalmazás 1 Alkalmazás 2 Adat Vevő Port Adat Vevő Port Adat Vevő Port Tempus S_JEP Számítógép hálózatok
22
1.4.1.2. Port-szám tartományok
256 alatt nyilvános alkalmazások cégek kereskedelmi célú alkalmazásai (16 bites címtartomány!) dinamikusan rendelik hozzá a hoszt alkalmazásaihoz Tempus S_JEP Számítógép hálózatok
23
1.4.1.3. Port-számozási példa Port-számok Számítógép hálózatok 21 23
53 69 161 25 Port- számok TELNET FTP SMTP DNS TFTP SNMP TCP UDP Szállítási réteg Alkalmazási réteg Tempus S_JEP Számítógép hálózatok
24
1.4.1.4. TCP port-számok Számítógép hálózatok Tempus S_JEP-12435-97
Kulcsszó Értelmezés Foglalt 1-4 Nem használatos 5 RJE Remote Job Entry 7 ECHO Echo (visszhang) 9 DISCARD Discard (törlés) 11 USERS Aktív felhasználók 13 DAYTIME A dátum és az idő 15 NETSTAT 17 QUOTE A nap tippje 19 CHARGEN Karaktergenerátor 20 FTP-DATA FTP adat 21 FTP File Transfer Protocol 23 TELNET Terminal Connection 25 SMTP Simple Mail Transfer Protocol 39 RLP Erőforrás-hely protokoll 42 NAMESERVER Host Name Server 43 NICNAME Becenév 53 DOMAIN Domain Name Server Tempus S_JEP Számítógép hálózatok
25
1.4.1.5. UDP port-számok Számítógép hálózatok Tempus S_JEP-12435-97
Kulcsszó Értelmezés Foglalt 1-4 Nem használatos 5 RJE Remote Job Entry 7 ECHO Echo (visszhang) 9 DISCARD Discard (törlés) 11 USERS Aktív felhasználók 13 DAYTIME A dátum és az idő 15 NETSTAT Netstat 17 QUOTE A nap tippje 19 CHARGEN Karaktergenerátor 20 FTP-DATA FTP adatok 21 FTP File Transfer Protocol 25 SMTP Simple Mail transfer Protocol 42 NAMESERVER Host Name Server 43 NICNAME Becenév 53 DNS Domain Name Server 69 TFTP Trivial File Transfer Protocol Tempus S_JEP Számítógép hálózatok
26
1.4.2. A protokoll szoftver és az alkalmazási program közötti illesztés
különbséget kell tennünk az illesztés (interface) és a TCP/IP protokoll között, mivel a szabvány nem specifikálja exakt módon a TCP/IP és a felhasználói program közötti kapcsolatot tehát az illesztési architektúra nincs szabványosítva, mivel ez már túlnyúlik a protokoll hatáskörén az illesztés megvalósításának részlet-kérdései inkább a TCP/IP-t futtató operációs rendszertől függnek Tempus S_JEP Számítógép hálózatok
27
Illesztés a TCP/IP és az alkalmazási program között
A protokoll szoftver és az alkalmazási program közötti illesztés Illesztés a TCP/IP és az alkalmazási program között Alkalmazás (a felhasználói programozó írta) Illesztés (a konkrét operációs rendszertől függ) TCP/IP Tempus S_JEP Számítógép hálózatok
28
1.4.4. A socket felület kontra TLI
a University of Berkeley dolgozta ki a BSD Unix számára a 80-as évek elején de facto szabvánnyá vált: a Unix operációs rendszeren túl alkalmazzák Windows-ban, a Xerox és az Apple gépek operációs rendszereinél Transport Layer Interface (TLI) az AT&T dolgozta ki a Unix System V számára Mivel a socket pedig több operációs rendszer alatt fut alatt, ezért az utóbbival foglalkozunk részletesebben Tempus S_JEP Számítógép hálózatok
29
A socket felület A socket és az open-read-write-close paradigma A TCP használatának előfeltételei az alkalmazási program létrehozza a socket-et hozzárendeli a socket-hez a címeket fogadja a beérkező kapcsolatot végrehajtja a kommunikációt a read-write primitívek felhasználásával végül, amikor a programnak nincs többé szüksége a socket-re, akkor le kell zárnia azt. Tempus S_JEP Számítógép hálózatok
30
1.5. C nyelvi eszközök a kliens/szerver kommunikációs modellek kialakitásához
Tempus S_JEP Számítógép hálózatok
31
1.5.1. Socket library hívások a BSD Unix esetén
A különbség az alkalmazási program rendszer-hívásai (system calls) és a socket könyvtári rutin hívásai (socket library routines calls) között Példák a socket könyvtári rutinokra (socket library routines) Tempus S_JEP Számítógép hálózatok
32
1.5.1.1. Alkalmazási program rendszer-hívások kontra socket könyvtári rutin hívások
Tempus S_JEP Számítógép hálózatok
33
1.5.1.2. Példák a socket könyvtári rutinokra (socket library routines)
hálózati bájt-sorrend konverziós rutin IP cím manipuláló rutin Domain Name System (DNS) elérő rutin információ-szerző rutin a hosztokról információ-szerző rutin a hálózatról információ-szerző rutin a protokollokról információ-szerző rutin a hálózati szolgáltatásokról Tempus S_JEP Számítógép hálózatok
34
1.5.2. Példa egy whois kliens és szerver megvalósítására
Az RFC 954 definíciója szerint a whois szolgáltatás lehetővé teszi egy kliens számára, hogy a távoli rendszer felhasználójáról információt szerezzen. Az adott esetben a kliens egy olyan alkalmazói program, amelyet a felhasználó két paraméter megadásával hívhat meg: a távoli szerver neve a távoli szerver azon felhasználójának neve, akiről információt kívánunk szerezni Tempus S_JEP Számítógép hálózatok
35
A kliens oldal a kijelölt hoszt nevének megkeresése (gethostbyname) hoszt címének és cím-típusának a socket struktúrába helyezése a whois szolgáltatás socket számának megkeresése (getservbyname) a whois socket számának a socket struktúrába helyezése egy open socket allokálása csatlakozás a távoli szerverhez a kérés elküldése a válasz fogadása Tempus S_JEP Számítógép hálózatok
36
A szerver oldal a whois szolgáltatás bemenetének megkeresése(getservbyname) a saját host-információink elérése (gethostbyname) a whois socket szám és a saját címünk behelyezése a socket struktúrába a bejövő csatlakozások számára egy open socket kialakítása a socket hozzákapcsolása a szolgáltatási porthoz, hogy érzékeljük a bejövő csatlakozásokat a csatlakozások maximális számának kialakítása az új csatlakozások várakoztatására egy végtelen ciklus kialakítása a távoli hoszttól fogadjuk a whois kérést a kért felhasználó megkeresése és a válasz kialakítása a válasz visszaküldése az igénylő hosztnak Tempus S_JEP Számítógép hálózatok Tempus S_JEP
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.