Bevezetés az OSI-ba

Amikor az ARPA hálózatot még csak fejlesztették, nagyon szerettük volna a lehető legokosabbá tenni. De minél összetettebb a hálózat, annál nehezebb fejleszteni és fenntartani. Megoldásként javasolták az összes hálózati funkció logikai rétegekre való felosztását.

A hálózati működési modellre az ISO/OSI nyílt rendszerek összekapcsolási alap-referenciamodelljének hálózati modelljeként hivatkozunk. Röviden - az OSI modell (Open Systems Interconnection).

OSI modell

Összesen 7 szint van ebben a modellben. A szintek kölcsönhatása szigorúan szabványosított és minimalizált. Az alsó szintnek fogalma sincs a magasabb szintek jelenlétéről és szerkezetükről.

A legalsó réteg csak biteket tud küldeni . Még csak nem is továbbítani, nevezetesen küldeni. Fogalma sincs, megteszik-e vagy sem. Elküldve és elfelejtve.

Egy magasabb szint már bitcsoportokkal - keretekkel működik , és tud egy kicsit a hálózat fizikai eszközéről, érti a MAC címeket és hasonlókat.

A következő szint a köteg. Még okosabb, és tudja, hogyan kell hálózati IP-címekkel dolgozni. Stb.

Miért van szükség erre? A rugalmasság maximalizálása érdekében.

Képzelje el, hogy minden réteg egy Java interfész, és többféle megvalósítása lehet. Tehát itt is. Fizikai szinten lehet biteket küldeni vezetéken, levegőn (Wi-Fi), műholdon keresztül küldeni, és minden más szinten nem is fog tudni róla semmit. És minden a szándék szerint fog működni.

OSI protokoll verem

Az alábbi képen részletesebben tanulmányozhatja a protokoll veremét :

De ha Ön nem rendszergazda, akkor nincs szüksége a protokollok ilyen részletezésére. Érdekesebb lehet a TCP (Transmission Control Protocol) / IP (Internet Protocol) protokoll verem tanulmányozása.

Az OSI modell legfelső három rétegét, azaz az alkalmazási réteget, a megjelenítési réteget és a munkamenet réteget nem különböztetik meg külön a TCP/IP modellben, amelynek csak egy alkalmazási rétege van a szállítási réteg felett:

A protokollok megoszlása ​​az OSI modell rétegei szerint

TCP/IP OSI
Alkalmazott Alkalmazott HTTP, SMTP, SNMP, FTP, Telnet, SSH, SCP, SMB, NFS, RTSP, BGP
Reprezentáció XDR, AFP, TLS, SSL
ülés ISO 8327 / CCITT X.225, RPC, NetBIOS, PPTP, L2TP, ASP
Szállítás Szállítás TCP, UDP, SCTP, SPX, ATP, DCCP, GRE
hálózat hálózat IP, ICMP, IGMP, CLNP, OSPF, RIP, IPX, DDP
csatornázott csatornázott Ethernet, Token ring, HDLC, PPP, X.25, Frame relay, ISDN, ATM, SPB, MPLS, ARP/td>
Fizikai elektromos vezetékek, rádiókommunikáció, optikai vezetékek, infravörös sugárzás

TCP/IP protokoll verem

A TCP/IP protokollverem négy rétegből áll:

  • Alkalmazási réteg
  • Szállítási réteg
  • Internetes réteg (hálózati réteg) (internetes réteg)
  • Kapcsolati réteg (hálózati hozzáférési réteg)

Ezen rétegek protokolljai teljes mértékben megvalósítják az OSI modell összes funkcióját. Az IP-hálózatokban minden felhasználói interakció a TCP / IP protokollveremre épül.

A TCP/IP protokollverem független a fizikai hardvertől, amely többek között teljesen átlátható interakciót biztosít a vezetékes és vezeték nélküli hálózatok között.

Az Alkalmazási rétegben fut a legtöbb hálózati alkalmazás.

Alkalmazási réteg

A programok interakciójához magas szintű protokollok állnak rendelkezésre az információcserére. Például a böngészők a HTTP-protokoll használatával működnek, a levelek küldése SMTP-protokoll használatával történik, a Telegram pedig a saját titkosított protokolljával működik.

De minket nem nagyon érdekelnek a privát protokollok. Leggyakrabban tömeges protokollokkal találkozhat, mint például az ftp kliens az FTP-hez (fájlátvitel), az SSH (biztonságos kapcsolat egy távoli géphez), a DNS (karakter-IP-cím fordítás) és sok más.

Ezen protokollok szinte mindegyike TCP-n fut, bár néhány UDP-n (User Datagram Protocol) fut, hogy felgyorsítsa a folyamatot. De ami fontos, ezeknek a protokolloknak vannak alapértelmezett portjai. Példa:

  • 20 FTP-TCP port 20 (adatátvitelhez) és 21 (vezérlőparancsokhoz)
  • 22-SSH
  • 23 - Telnet
  • 53 - DNS-lekérdezések
  • 80-HTTP
  • 443 – HTTPS

Ezeket a portokat a Naming Assignment and Unique Parameters Agency (IANA) határozza meg.

Számos más népszerű alkalmazási réteg protokoll létezik: Echo, Finger, Gopher, HTTP, HTTPS, IMAP, IMAPS, IRC, NNTP, NTP, POP3, POPS, QOTD, RTSP, SNMP, SSH, Telnet, XDMCP.

szállítóréteg

A szállítási réteg protokolljait a garantált üzenetkézbesítés problémájának megoldására tervezték.

Üzenet (adatcsomag) elküldhető és elveszhet valahol a hálózaton. Ebben az esetben a szállítási réteg feladata figyelni ezeket a helyzeteket, és szükség esetén újra elküldeni az üzenetet.

A szállítási réteg protokoll másik fontos feladata az üzenetek érkezési sorrendjének szabályozása. Gyakran előfordul, hogy az üzeneteket az egyik sorrendben küldték el, és egy másik sorrendben érkeztek meg. És ha ilyen darabokból összeraksz egy nagy üzenetet, akkor hülyeségeket kapsz.

Ennek elkerülése érdekében a szállítási réteg vagy felsorolja az üzeneteket, vagy nem küld újat, amíg meg nem kapta az előző üzenet fogadásának megerősítését. Az automatikus útválasztási protokollok, amelyek logikailag jelen vannak ezen a rétegen (mivel az IP-n futnak), valójában a hálózati réteg protokolljainak részét képezik.

A TCP-protokoll egy „garantált” kapcsolattal előre kialakított átviteli mechanizmus, amely megbízható adatáramlást biztosít az alkalmazás számára, biztosítja a fogadott adatok hibamentességét, elvesztés esetén újrakéri az adatokat, és kiküszöböli az adatok megkettőzését.

A TCP lehetővé teszi a hálózat terhelésének szabályozását, valamint csökkenti az adatok várakozási idejét nagy távolságra történő átvitel esetén. Ezenkívül a TCP garantálja, hogy a fogadott adatokat pontosan ugyanabban a sorrendben küldték el. Ez a fő különbség az UDP-től.

Az UDP egy kapcsolat nélküli datagram protokoll. „Megbízhatatlan” átviteli protokollnak is nevezik, abban az értelemben, hogy nem tudják ellenőrizni az üzenet címzetthez való eljutását, valamint a csomagok esetleges keveredését. A garantált adatátvitelt igénylő alkalmazások a TCP protokollt használják.

Az UDP-t általában olyan alkalmazásokban használják, mint például a videó streaming és a játékok, ahol a csomagvesztés tolerálható, és az újrapróbálkozás nehéz vagy indokolatlan, vagy kihívás-válasz alkalmazásokban (például DNS-lekérdezések), ahol a kapcsolat létrehozása több erőforrást igényel, mint az újraküldés.

Mind a TCP, mind az UDP egy portnak nevezett számot használ a felső réteg protokolljának meghatározásához.