TCP/IP protokoll puust ja punaseks

Allikas: Kuutõrvaja
Redaktsioon seisuga 30. september 2010, kell 17:47 kasutajalt Jj (arutelu | kaastöö)

Taustinfo

Arvutite võrku ühendamiseks on mitmeid võimalusi: otsekaabliga, raadiolingiga või millega iganes. Samamoodi on tohutult palju erinevaid võimalusi juba kokku ühendatud arvutite vaheliseks suhtluseks. Tehniliselt lihtsaim sellistest meetoditest on muidugi ühendada kaks arvutit omavahel kaabliga ja kirjutada spetsiaalsed programmid just selle ühenduse tarbeks. Ilmselgelt aga selline ülesehitus ei suuda rahuldada inimeste arengust tekkivaid vajadusi. Praeguseks on internetiga ühendatud juba umbes 150 miljonit arvutit ja seega oleks vaja iga paari vahele neist juhe tõmmata – ilmvõimatu üritus.

OSI

Seetõttu asutigi välja töötama erinevaid võimalusi võrkude loomiseks (nendest võib lähemalt lugeda Interneti loengumaterjalidest). Kui aga füüsiline ühendus on olemas, siis tuleb ka tarkvaralise poole pealt universaalseid lahendusi pakkuda. Selliseks ideeks ongi OSI (Open System Interconnection) standard, kus on kogu ühenduse pidamine jaotatud kihtideks (kokku 7), millest igaüks tegeleb oma ülesandega, teadmata, et eksisteerivad ka teised kihid.

Osimudel.jpeg

Selline lahendus pakub rakenduse (tarkvaraprogrammi) kirjutajale teegid (standardsed käsud) ühenduse pidamiseks välismaailmaga – rakenduskiht (Application layer). Nende teekide kasutamisel siirdutakse järjest läbi kõikide kihtide füüsilise kihini (Physical layer). Sellest kihist edastatakse andmed füüsilisse meediumi (andmesidekanalisse), mille erinevustest tuleneb ka vajadus eraldi kihi jaoks. Kahjuks aga formeeriti OSI mudel liiga üldsõnaliselt, mistõttu tänapäeval on OSI vaid põhiideeks protokollide komplekti väljatöötamisel, mitte standard ise.

Protokollid

TCP/IP (Transmission Control Protocol / Internet Protocol) on kihiline protokollide komplekt, mis töötati välja ARPANeti jaoks ning levis sealt edasi ka teistesse võrgutüüpidesse, kaasaarvatud Ethernet, mis on tänapäeval üks levinuimaid. TCP/IP protokolli nimes on küll ainult kaks protokolli, kuid tegelikult koosneb ta neljast protokollist: TCP, IP, UDP ja ICMP. UDP

  • TCP - Transmission Control Protocol – transpordiprotokoll, mis tegeleb

rakenduse tasemel andmete vahetusega (Application layer). Sellise protokolli ülesandeks on korrastada IP kihi poolt vastu võetud paketid õigesse järjekorda (loe: IP protokoll) ja edastada need rakendusele, millele need mõeldud olid. Kui esineb mingeid vigu, siis TCP ülesandeks on ka nende lahendamine ja korrigeerimine (kui mitte muud, siis rakendusele veast teatamine). TCP üritab ka võrguühendust optimeerida, aeglustades oma tööd, kui ühendus hakkab umbe minema.

  • UCP - User Datagram Protocol – ehk siis protokoll, mille töö sarnaneb

paljuski TCP-ga, ehkki ei paku nii keerukat vigade vältimist ja parandust, kuid selle eest võimaldab võimsamat andmevahetust kahe masina vahel.

  • ICMP - Internet Control Message Protocol – IP protokolli laiendus, mille abil

on võimalik mitmet interneti teenused seal hulgas ping (teenus, mille abil testitakse ühenduse olemasolu kahe masina vahel). ICMP võimaldab saata pakette, mis sisaldavad vea-, kontrolli- ja infoteateid.

  • IP – Internet Protocol – selle protokolli ülesandeks on andmevahetus arvutite

vahel. Seda protokolli nimetatakse ühenduseta protokolliks, sest IP protokoll ei loo ühendust arvutite vahel, vaid lihtsalt tükeldab edastatava (suure) andmehulga pakettideks, mis peavad ise oma tee ühest arvutist teise leidma. Selline süsteem sarnaneb paljuski meie postisüsteemile, kus kiri pannakse teele ja igas postijaamas sorteerija otsustab, millise autoga see edasi saadetakse. Kui näiteks Tartu-Tallinn marsruudil on auto täis, siis võidakse kiri saata hoopis Viljandisse (seal tehakse sarnane otsustus jne.), lootuses, et küll ta ükskord ikka kohale jõuab. Tavaolukordades sellist erinevate teede kasutamist arvutisides ei märka (sest elektri kiirus on ikkagi päris suur), küll aga sellisel juhul, kus mõni server on rivist väljas ja edastatav info koormab teisi servereid liiga (nad lihtsalt ootavad järjekorras, et neid edasi saadetaks).

Aadressid

Selline “postisüsteem” nõuab ilmselgelt ka aadresse, mille järgi pakette teele saadetakse. Neid aadresse nimetataksegi IP aadressideks. IP aadressitest on kasutusel olnud mitmeid versioone, praegu on levinuimaks versioon 4 ehk IPv4, mille väljanägemine on järgmine: neli üksteisest punktiga eraldatud arvu 0..255, näiteks: 30.25.126.8. Sellised aadressid on klassifitseeritud neile sisemise struktuuri andmiseks 5-e klassi, millest ainult 3 on kasutusel: