Írta: tom1964h

A számítógépek közötti kommunikáció


Hiperhivatkozások a Wikipedia körül

Nálatok van net? :-) Kell, hogy legyen, ha ezt az oldalt olvassátok ... Ez fontos kérdés, mert az interneten keresztül számos programot érek el, adatokat szerezhetek be, zenét hallgathatok vagy filmet nézhetek. Akár Java-programokat is használhatok, amelyek távoli számítógépen (kiszolgálón, azaz szerveren) futnak. De hogyan érem el az internetet? A lakásban és a munkahelyen a fali csatlakozónál (WiFi-ben) egy Internet-szolgaltato (ISP) teszi lehetővé a hozzáférést. Mobiltelefonomon pedig a telefon-társaság nyújtja ugyanezt.

Hogyan kommunikálnak egymással a számítógépek? Többféle lehetőség van, pl.:

  • közvetlenül Java socket-en keresztül: ez gépek közti kommunikáció (1:1 azaz peer-to-peer kapcsolatot enged)
  • böngészőn keresztül: ez a program egy kaput nyit a külvilág felé (a háttérben ugyancsak egy server fut)
  • lehet vegyesen is: pl. egy Android program és a laptop böngészője is ugyanazzal a szerverrel kommunikál
  • a háttérben az adatok ugyanazok, csak a nézet réteg különbözik … Html lesz JAVA-FX helyett

Kommunikáció a serverrel

  • a szerver megtalálásához szükséges a domain name, amit egy router “felold” és megadja a server ip-címét (pl. a sanfranciscoboljottem.com oldalhoz megadja a 185.199.108.153 számsort)
  • később a böngésző kliens letárolja az IP-cim/URL feloldást (párosítást)
  • a domain name-et meg lehet vásárolni, hogy más ne készítsen ugyanilyen eléréssel weblapot
  • a saját oldalhoz szükséges file-okat egy olyan szerveren kell tárolni, amit minden gép elér
  • saját szerver üzemeltetéshez fix, állandóra IP-cim kell, ami a szerver-szolgáltatással együtt vásárol meg az oldal tulajdonosa

A ping program

Teszteljük a kommunikációt! Erre egy nagyon egyszerű parancssori (CLI) programot használhatunk, a ping-et. Feladat:

1. Windowsban nyissunk egy parancssori ablakot vagy Linuxon egy új terminált
2. írjuk be a ping sanfranciscoboljottem.com parancsot
3. a ping megpingeli a hivatkozott szervert, miután feloldotta az IP-címét: requesteket küld neki
4. a válaszidőket pedig sorra kiírja, mennyi idő alatt ért vissza a szerver response
C:\>ping sanfranciscoboljottem.com

		Pinging sanfranciscoboljottem.com [185.199.108.153] with 32 bytes of data:
		Reply from 185.199.108.153: bytes=32 time=18ms TTL=56
		Reply from 185.199.108.153: bytes=32 time=25ms TTL=56
		Reply from 185.199.108.153: bytes=32 time=19ms TTL=56
		Reply from 185.199.108.153: bytes=32 time=20ms TTL=56

		Ping statistics for 185.199.108.153:
			Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
		Approximate round trip times in milli-seconds:
			Minimum = 18ms, Maximum = 25ms, Average = 20ms

A ping csomagokat (packet) küld és válasz-csomagokat kap vissza.

Kommunikációs protokoll

A számítógépes kommunikációra többféle szabványt dolgoztak ki és alkalmaznak. Az internet szempontjából lényeges TCP/IP protokoll-család két fontos szabványa az UDP és a TCP:

  • UDP (user datagram protocol): pl. Skype, sportközvetítés, VOIP - ez gyorsabb, de csak áramlik az adat, mint a folyó (stream); ez megenged hibákat, ki-kihagy a Skype-beszélgetés ….
  • TCP (transmission control protocol): pontosabb, de lassabb, mert van visszajelzés, ha nem érkezett meg egy csomag, akkor újraküldi; így történik a honlapok böngészése, mobilvásárlás


a kép forrása draw.io