Hálózatos programok készítése

Slides:



Advertisements
Hasonló előadás
A számítógépes hálózatok és az Internet
Advertisements

4. alkalom – Hálózat Kezelés
Hálózati és Internet ismeretek
Készítette:Darázsi LászlóXZ1J94 Muráti ÁkosJNC2FC Szeles JózsefVC4DV7.
Programozás III HÁLÓZAT.
Virtuális méréstechnika Hálózati kommunikáció 1 Mingesz Róbert V
Bevezetés a VoIP technológiába
Az internet és a web A HTML alapjai.  „Úgy gondoljuk, hogy a világpiacon talán öt darab számítógépet tudnánk eladni.” (Thomas Watson, az IBM elnöke,
I NTERNET ÉS KOMMUNIKÁCIÓ Készítette: Tratnyek Csilla
Bl á zsovics Martin Soós G á bor 9024 Győr, Bisinger sét á ny 32. De á k Ferenc Közgazdas á gi és Informatikai Szakközépiskola Az Internet Által Biztosított.
BEVEZETÉS A WEB VILÁGÁBA
Rétegzett hálózati architektúrák
A TCP/IP hivatkozási modell
Számítógép hálózatok.
Hálózatok.
Rétegelt hálózati architektúra
1. Szállítási (transzport) réteg
Hálózati alapismeretek
Sávszélesség és adatátvitel
Hálózati alkalmazások
13.a CAD-CAM informatikus
A TCP/IP cím.
Hálózatkezelés, java.net Elek Tibor
adminisztrációs feladatok
Számítógépes hálózatok világa Készítette: Orbán Judit ORJPAAI.ELTE.
HÁLÓZAT INTERNET. Weblap címek xikon/index.html xikon/index.html.
FTP File Transfer Protocol. Mi az FTP? Az FTP egy olyan protokoll, amely fájlok interneten keresztül végzett átvitelére szolgál. A felhasználók többsége.
Hálózati és Internet ismeretek
A protokollok határozzák meg a kapcsolattartás módját.
1 Többszörös címek D osztályú IP címek
UDP protokollok User datagram protocol- Felhasználói datagrammprotokoll.
Tűzfalak Kónya Kinga.
DDoS támadások veszélyei és az ellenük való védekezés lehetséges módszerei Gyányi Sándor.
Hálózati réteg.
Hálózati architektúrák
Az elektronikus levelezés a számítógép-hálózatok klasszikus szolgáltatása, az Internet alkalmazásának egyik legnépszerűbb formája. Szövegen kívül lehetőség.
Számítógép-hálózatok
Server, Client. Client-Server Client numPlayers Id ServerMessage ClientMessage Server numPlayers ClientMessages[] ServerMessage Ha a kliens ugyanazt az.
Hálózati alapismeretek
Gyakorlat 3. Számítógép hálózatok I.
Illés Zoltán ELTE Informatikai Kar
Az Internet alkalmazásai
Hálózatok Turócziné Kiscsatári Nóra. Hálózatok kialakulás Az első hatalmas méretű számítógépek csak néhány ember számára voltak elérhetőek. Felmerült.
Hálózat menedzsment Óravázlat Készítette: Toldi Miklós.
Logikai programozás 8.. KIINDULÓ PÉLDÁK
Kapcsolatok ellenőrzése
Mérés és adatgyűjtés laboratóriumi gyakorlat Hálózati kommunikáció 1 Makan Gergely, Mingesz Róbert, Nagy Tamás V
Számítógép hálózatok.
Hálózatok II. Alapfogalamak.
Bevezetés az informatikába 11. előadás Internet. Egyetlen nagy egységes elveken működő világhálózat hálózatok összekapcsolása nagy világhálóvá csomagkapcsolt.
WireShark - Forgalom elemzés
Tűzfal (firewall).
Bevezetés az informatikába 10. előadás Számítógép-hálózatok.
A szállítási réteg az OSI modell 4. rétege. Feladata megbízható adatátvitel megvalósítása két hoszt között. Ezt úgy kell megoldani, hogy az független.
A TCP/IP protokoll. Az ARPANET eredeti protokollja: Network Control Protocol. 1974: Vinton G. Cerf és Robert E. Kahn: új protokollstruktúra fejlesztése.
Hálózati protokollok és szabványok
A HTML alapjai Az internet és a web.
Logikai programozás 10..
Számítógépes hálózati alapismeretek - vázlat
Az elektronikus levelezés a számítógép-hálózatok klasszikus szolgáltatása, az Internet alkalmazásának egyik legnépszerűbb formája. Szövegen kívül lehetőség.
HTE előadás BME TMIT I. 210 Az internet szolgáltatás mérése az NMHH gyakorlatában – a szolgáltatásminőség EU-s dimenziója Előadók: Torma Zsolt (NMHH)
1 Többszörös címek D osztályú IP címek
Számítógépes Hálózatok
Hálózatkezelés Java-ban
Hálózatok.
Internet és kommunikáció
Számítógépes Hálózatok
Információtechnológiai alapismeretek
Válasz a hálózatra, biztonságra, meg mindenre: 7
1 Többszörös címek D osztályú IP címek
Előadás másolata:

Hálózatos programok készítése Készítő: Nagy Tibor István

Hálózati kommunikáció Két hálózatra kötött gép a következő rétegeken keresztül kommunikálhat egymással: Alkalmazási réteg http, ftp, telnet, smtp Szállítási réteg TCP, UDP Hálózati réteg IP Adatkapcsolati réteg eszközmeghajtók Forrásgép Alkalmazási réteg HTTP, ftp, telnet, smtp Szállítási réteg TCP, UDP Hálózati réteg IP Adatkapcsolati réteg eszközmeghajtók Célgép

Adatkapcsolati réteg Feladata az adatbitek továbbítása, Átviteli hibák kiszűrése

Hálózati réteg Feladata a hálózatra kötött gépek azonosítása és a köztük történő adatcsere biztosítása A gépeket valamilyen cím alapján azonosítja Ez a réteg nem biztosítja a hibátlan adatátvitelt IP (Internet Protocol)

Szállítási réteg Feladata a megbízható csomagtovábbítás, Illetve egy adott gépen belül a különböző programok azonosítása (port) TCP (Transmission Control Protocol) – összeköttetés-orientált kommunikáció UDP (User Datagram Protocol) – összeköttetés-mentes kommunikáció Nem garantálja a csomagok továbbítását

Alkalmazási réteg Alkalmazás-specifikus protokollok FTP (File Transfer Protocol) HTTP (HyperText Transmission Protocol) SMTP (SendMail Transmission Protocol)

Kliens-szerver architektúra Szerver fogalma: egy hálózatra kötött gépen futó program, amely más – szintén hálózatra kötött – gépek számára biztosít bizonyos szolgáltatásokat Szerver adatai: Hostname : annak a gépnek a hálózati neve, amelyen a szerverprogram fut Port : egy olyan 16 bites szám, amely a futó szervert azonosítja; ezen keresztül fogadja a szerverprogram a kéréseket

Portok A szerverprogram adja meg, hogy melyik porton keresztül hajlandó a kliensektől kéréseket fogadni Van egy szabványos lista, amelyben a már létező szolgáltatások és a hozzájuk rendelt portok találhatók A hozzárendelt portok listája: http://www.iana.org/assignments/port-numbers Pl.: HTTP port = 80 IMAP port = 143

Kliens-szerver architektúra Kliens fogalma: egy hálózatra kötött gépen futó program, amely igénybe veszi egy másik gépen futó szerverprogram szolgáltatásait A kliensnek ismernie kell a szerver hostnevét és portszámát

Kliens-szerver architektúra TCP protokollal Összeköttetés-orientált kommunikáció A kommunikáció kezdeményezésekor létrejön a kapcsolat a szerver és kliens közt A kapcsolat a kommunikáció befejezéséig él Garantált az adatok eljutása a feladótól a címzettig Garantált az adatok helyes sorrendje

Kliens-szerver architektúra TCP protokollal A kommunikáció fájl-streamek segítségével történik Mindkét oldalon van egy-egy bemeneti, ill. egy-egy kimeneti stream A szerver és a kliens oldalon is van egy-egy csatoló (socket); ezt a két csatolót kötik össze a streamek

Kliens-szerver architektúra (TCP) output input Server- Socket Socket Szerver input Kl iens output

Szerverprogram elkészítése (TCP) A következő osztályokat kell használni: ServerSocket – a szerver csatolója Socket – a kliens csatolója Bemeneti és kimeneti adatfolyamok

Szerverprogram elkészítése (TCP) Létre kell hozni a szerver csatolóját: ServerSocket ss = new ServerSocket(port); port = bármilyen portszám. Ha 0, akkor kiválasztja az első szabad portot Várakozni kell egy kliensre: Socket client = ss.accept(); Létrehozni a streameket: … in = client.getInputStream(); … out = client.getOutputStream(); Adatforgalom (readLine(), println() !)

Szerverprogram több klienssel (TCP) Több kliens kéréseinek kiszolgálása: A bejelentkező kliensekkel történő adatcsere egy-egy külön szálban történik Miután az accept() metódussal lekérdeztük a bejelentkezett klienst, kéréseit egy újonnan létrehozott szálban szolgáljuk ki Miközben az új szál foglalkozik a bejelentkezett klienssel, a szerver tovább várja egy újabb kliens jelentkezését

Kliensprogram elkészítése (TCP) Szükséges osztályok: Socket – a kliens csatolója a szerver felé Bemeneti és kimeneti adatfolyamok – a kliens és a szerver közötti adatforgalom lebonyolítására

Kliensprogram elkészítése (TCP) Kliens csatolójának létrehozása: Socket cs = new Socket(hostname, port); Filecsatornák lekérdezése: … in = cs.getInputStream(); … out = cs.getOutputStream(); Adatforgalom (readLine(), println() !)

Kliens-szerver architektúra UDP protokollal Összeköttetés-mentes kommunikáció Nincs állandó összeköttetés a feladó és címzett között Az adatok megérkezése nem garantált a feladótól a címzettig Az adatok helyes sorrendje sem garantált Egymástól független adatcsomagok elküldésére / fogadására alkalmas

Kliens-szerver architektúra (UDP) Datagram- Socket Datagram- Socket Kl iens Szerver

Szerverprogram elkészítése (UDP) A következő osztályokat kell használni: DatagramSocket – a szerver csatolója DatagramPacket – a fogadni, vagy elküldeni kívánt adatcsomag

Szerverprogram elkészítése (UDP) Csatoló létrehozása: DatagramSocket ds=new DatagramSocket(port); Várakozás egy kliens jelentkezésére: DatagramPacket dp; dp=new DatagramPacket(buf,buf.length); ds.receive(dp); Kliens azonosítása: InetAddress ia=dp.getAddress(); int port=dp.getPort(); Válasz küldése a kliensnek: dp=new DatagramPacket(buf, buf.length, ia, port); ds.send(dp);

Kliensprogram elkészítése (UDP) Szükséges osztályok: DatagramSocket – a kliens csatolója DatagramPacket – a fogadni, vagy elküldeni kívánt adatcsomag

Kliens elkészítése (UDP) Csatoló létrehozása: DatagramSocket ds=new DatagramSocket(); Szerver címének megadása: InetAddress ia=InetAddress.getByName(host); Kérés küldése a szervernek: dp=new DatagramPacket(buf, buf.length, ia, port); ds.send(dp); Válasz fogadása a szervertől: dp=new DatagramPacket(buf, buf.length); ds.receive(dp);

Multicast program készítése A multicast szerver nem várakozik egy kliens bejelentkezésére Egy meghatározott csoportcímre, meghatározott porton keresztül küldi a csomagokat A multicast kliens nem jelentkezik be a szerverhez A szerver portját figyelve várja a szervertől érkező üzeneteket

Multicast szerverprogram elkészítése (UDP) Csoportcím megadása: InetAddress ga=InetAddress.getByName(csop); Csomag elküldése a csoport minden tagjának: DatagramPacket dp; dp=new DatagramPacket(buf, buf.length, ga, port); ds.send(dp);

Multicast kliensprogram készítése (UDP) Az üzenetek fogadása MulticastSocket-en keresztül történik: MultiCastSocket ms=new MulticastSocket(port); A csoport címének meghatározása: InetAddress ga=InetAddress.getByName(csop); Csatlakozás a csoporthoz: ms.joinGroup(ga); Adatok olvasása a szervertől ciklusban: ... ds.receive(dp); ... Lecsatlakozás a csoportról: socket.leaveGroup(ga);