TÖÖSTUSLIKUD SIDEVÕRGUD
Ethernet võrguspetsifikatsioon (TCP/IP protokollid;
TCP/IP protokollid
Edastusohjeprotokoll / internetiprotokoll (Transmission Control Protocol/ Internet Protocol, TCP/IP) on Etherneti võrgu baasprotokoll. TCP/IP on võrkudes kasutataval tarkvaral põhinev sideprotokoll. See on kombinatsioon kahest protokollist: TCP ja IP, ning pakub andmete edastamise meetodit ühest arvutist teise.
TCP on andmeedastusprotokoll ja funktsioneerib transpordikihil, määrates viisi, kuidas informatsioon tuleks andmepakettideks jagada ning edastada mööda kommunikatsioonikanalit. TCP juhib andmevoogu ja parandab andmeedastusvigu. See paigutab andmepaketid vajalikku järjekorda ja nende ülekande ajal kontrollib iga andmepaketti, et neis ei oleks tekkinud vigu.
TCP/IP mudel sisaldab 4 funktsionaalset tasandit (Joonis 9.5):
- Võrguaadress;
- Internet;
- Punkt-punkt;
- Protsess/rakendus.
Neil kihtidel on nõrk ühendus OSI mudeli seitsme kihiga ilma nende funktsionaalsuse ohustamiseta.
Joonis 9.5. OSI ja TCP/IP kihid [13]
Joonis 9.6. TCP protokoll [13]
TCP võimaldab ühendusest sõltuvat andmevahetust ühe või mitme seadme vahel, see on võimeline haldama andmevoogusid, võimaldab veajuhtimist ning pakettide ümberpaigutamist, kui need saabuvad juhuslikus järjestuses. TCP segmendi ülekanne käib Interneti datagrammide formaadis. Päise andmeblokk sisaldab erinevaid andmeväljasid, sealhulgas paketi saatja ja saaja aadress. TCP päise bloki formaat on toodud pildil 9.6.
TCP päise blokk sisaldab minimaalselt 20 oktetist ja sisaldab järgmisi välju:
- TCP lähteport (16) – sisaldab pordinumbrit, mis alustas kommunikatsioonijada. Allika port ja IP aadress moodustavad paketi vastusaadressi;
- TCP sihtkoha port (16) – sisaldab pordinumbrit, millele informatsioon on mõeldud. See port sisaldab vastuvõtva arvuti rakenduse liideseaadressi, millele informatsioon on mõeldud. See port sisaldab vastuvõtva arvuti rakenduse liideseaadressi, kuhu selle paketi andmed edastatakse;
- TCP järjekorranumber (32) – sisaldab vastuvõtva arvuti poolt kasutatavad järjekorranumbrit tükeldatud andmete algsesse formaati rekonstrueerimisel. Dünaamiliselt marsruuditud võrgus on täiesti võimalik, et osad paketid on läbinud pikema vahemaa, kui teised ning jõuavad kohale alles peale neid pakette, mis edastati hiljem. Seda välja kasutatakse jadamisi toimetamise kompenseerimiseks;
- TCP jaatusnumber (32) – TCP kasutab seda 32-bitist välja järgmises prognoositavas segmendis sisalduvate andmete esimese okteti jaatuseks. TCP arvutab selle numbri, suurendades eelmise okteti numbrit iga TCP segmenti oktetti numbri võrra. Iga jaatusnumbri identifitseerimiseks kasutatav number on jaatuspaketi järjekorranumber.
- Andmenihe (offset) (4 bitti) – see väli sisaldab TCP päise suurust 32-biti sõnadena mõõdetuna;
- Reserveeritud 6-bitine väli – reserveeritud tuleviku kasutuseks;
- Lipud (6 bitti) – sisaldab kuut ühebitist lippu, mis võimaldavad juhtida funktsioone: kiire väli, olulise välja jaatus, ühenduse lähtestamine, jada sünkroniseerimine, andmeedastuse lõpetamine;
- Akna suurus (16 bitti) – kasutatakse vastuvõtja poolt allikale TCP segmendist vastu võetava andmehulga näitamiseks;
- Kontrollsumma (16 bitti) – see väli sisaldab kontrollsummat veakontrolli jaoks. Allikas arvutab segmendi sisust sõltuva kontrollsumma. Vastuvõtja teeb sama arvutuse. Kui sisu on saabunud puutumatult, on mõlema arvutuse vastus identne, mis tõestab andmete kehtivust.
- Lisa – sellele väljale lisatakse nullid, et TCP päis oleks alati jagatav 32 bitiks.
Kasutajadatagrammi protokoll (User Datagram Protocol, UDP)
UDP on üks kahest transpordikihi protokollist, mida kasutatakse TCP/IP protokollide pinus. UDP võimaldab rakendusprogrammidel edastada nende sõnumeid mööda võrku minimaalsete nõudmistega seoses protokollide transformatsiooniga rakenduse tasandilt IPle. Rakendusprogramm ise tuvastab sõnumi vastuvõtmise.
Joonis 9.7. UDP protokoll [13]
UDP protokolli päisel on järgmine struktuur (Joonis 9.7):
- UDP allikaport (16 bitti) – sisaldab allikaarvuti pordi numbrit. Nii port kui ka allika IP aadress moodustavad paketi vastusaadressi;
- TCP sihtkoha port (16 bitti) - sisaldab selle pordi numbrit, kuhu info on mõeldud. See port sisaldab vastuvõtva arvuti rakenduse liideseaadressi, kuhu selle paketi andmed edastatakse;
- UDP kontrollsumma (16 bitti) – sisaldab kontrollsummat. Allikas arvutab kontrollsumma segmendi sisu põhjal. Vastuvõtja sooritab sama kalkulatsiooni. Kui sisu on saabunud puutumatult, peaksid mõlema kalkulatsioonid tulemused olema identsed ja see tõestab andmete kehtivuse.
- UDP sõnumi pikkus (16 bitti) – see väli informeerib vastuvõtjat sõnumi pikkusest, pakkudes sellega lisamehhanismi sõnumi kehtivuse kontrollimiseks.
Päise pordid määravad UDP protokolli kui multiplekseri, mis võimaldab sõnumite kogumist rakendustest ja saadab neid protokollitasandil. Võrgu kaudu vastastikku toimivad rakendused võivad kasutada erinevaid porte – see fakt ilmneb paketi päisest. TCP ja UDP kasutavad sokli numbri identifikaatoreid usaldatavaks informatsioonivahetuseks protokollidega ja „kõrgema“ tasandi teenustega – Joonis 9.8.
Joonis 9.8. TCP ja UDP kasutavad sokli numbri identifikaatorid [13]
Porte/sokleid kasutatakse võrguühenduse multipleksimiseks.
Võrgurakendused on arendatud portide jagamiseks tuntud ringluse tingimustes, mis on defineeritud RFC 1700 soovitustes. Näiteks, eemalasuva terminali ligipääs (rakenduse teenus TELNET) on realiseeritud standardiseeritud porti 23 kasutades. Andmevahetussessioonid, mille jaoks ei ole numbreid määratud, realiseeritakse pordinumbri juhusliku valimise põhjal kasutamata portide hulgast siis, kui päring saabub.
TCP ja UDP portide jagamine on toodud pildil 9.9.
Mõned pordid on reserveeritud nende kahe protokolli poolt ja rakendused ei saa neid porte kasutada. Portide jagamise põhimõte on järgmine:
- Pordid numbritega kuni 255 on üldiseks kasutamiseks;
- Pordid numbritega 256 kuni 1023 on mõeldud süsteemirakenduste jaoks;
- Pordid numbritega üle 1023 on defineerimata.
Kokkuvõtteks võib öelda, et peamine funktsionaalne erinevus TCP ja UDP vahel on usaldatavuses. TCP on kõrge usaldatavusega protokoll, samal ajal kui UDP on lihtne mehhanism, mis pakub parima võimaliku andmehalduse.
Tabel 9.6.TCP pordid [1]
Reserveeritud TCP pordid |
||||||
---|---|---|---|---|---|---|
Kümnend |
Võtmesõna |
Kirjeldus |
|
Kümnend |
Võtmesõna |
Kirjeldus |
0 |
|
Reserveeritud |
67 |
BOOTPS |
Buudiprotokolli server |
|
1-4 |
|
Määramata |
68 |
BOOTPC |
Buudiprotokolli klient |
|
5 |
RJE |
Kaugtöösisend |
69 |
TFTP |
Triviaalne failiedastusprotokoll |
|
7 |
ECHO |
Kaja |
75 |
|
Suvaline privaatne väljahelistamisteenus |
|
9 |
DISCARD |
Tühistamine |
77 |
|
Suvaline privaatne RJE teenus |
|
11 |
USERS |
Aktiivsed kasutajad |
79 |
FINGER |
Sõrm (kasutajate andmete vaatamine) |
|
13 |
DAYTIME |
Aeg |
95 |
SUPDUP |
SUPDUP protokoll |
|
15 |
NETSTAT |
Kes on võrgus või NETSTAT |
101 |
HOSTNAME |
NIC hosti nimeserver |
|
17 |
QUOTE |
Päevatsitaat (Quote Of The Day, kasutatakse testimiseks) |
102 |
ISO-TSAP |
ISO-TSAP |
|
19 |
CHARGEN |
Märgigeneraator |
113 |
AUTH |
Autentimise teenus |
|
20 |
FTP-DATA |
Failiedastusprotokoll (data) |
117 |
UUCP-PATH |
UUCP teekonna teenus |
|
21 |
FTP |
Failiedastusprotokoll |
123 |
NTP |
Võrguaja protokoll |
|
23 |
TELNET |
Terminali ühendus |
133-159 |
|
Määramata |
|
25 |
SMTP |
Lihtne meiliedastusprotokoll |
160-223 |
|
Reserveeritud |
|
37 |
TIME |
Aeg |
224-241 |
|
Määramata |
|
39 |
RLP |
Ressursi asukohaprotokoll |
242-255 |
|
Määramata |
|
42 |
NAMESERVER |
Hosti nimeserver |
|
|
|
|
43 |
NICNAME |
Kes on |
|
|
|
|
53 |
DOMAIN |
Domeeni nimeserver |
|
|
|
Tabel 9.7.UDP pordid [1]
Reserveeritud UDP pordid |
||||||
---|---|---|---|---|---|---|
Kümnend |
Võtmesõna |
Kirjeldus |
|
Kümnend |
Võtmesõna |
Kirjeldus |
0 |
|
Reserveeritud |
67 |
BOOTPS |
Buudiprotokolli server |
|
1-4 |
|
Määramata |
68 |
BOOTPC |
Buudiprotokolli klient |
|
5 |
RJE |
Kaugtöösisend |
69 |
TFTP |
Triviaalne failiedastusprotokoll |
|
7 |
ECHO |
Kaja |
75 |
|
Suvaline privaatne väljahelistamisteenus |
|
9 |
DISCARD |
Tühistamine |
77 |
|
Suvaline privaatne RJE teenus |
|
11 |
USERS |
Aktiivsed kasutajad |
79 |
FINGER |
Sõrm (aktiivsete kasutajate vaatamine) |
|
13 |
DAYTIME |
Aeg |
123 |
NTP |
Võrguaja protokoll |
|
15 |
NETSTAT |
Kes on võrgus või NETSTAT |
133-159 |
|
Määramata |
|
17 |
QUOTE |
Päevatsitaat (Quote Of The Day, kasutatakse testimiseks) |
160-223 |
|
Reserveeritud |
|
19 |
CHARGEN |
Märgigeneraator |
224-241 |
|
Määramata |
|
20 |
FTP-DATA |
Failiedastusprotokoll (data) |
242-255 |
|
Määramata |
|
21 |
FTP |
Failiedastusprotokoll |
|
|
|
|
23 |
TELNET |
Terminali ühendus |
|
|
|
|
25 |
SMTP |
Lihtne meiliedastusprotokoll |
|
|
|
|
37 |
TIME |
Aeg |
|
|
|
|
39 |
RLP |
Ressursi asukohaprotokoll |
|
|
|
|
42 |
NAMESERVER |
Hosti nimeserver |
|
|
|
|
43 |
NICNAME |
Kes on |
|
|
|
|
53 |
DOMAIN |
Domeeni nimeserver |
|
|
|
Internetiprotokoll IP
Internetiprotokoll kindlustab andmepakettide edastamise allikast vastuvõtjani vastastikku seotud võrkude grupi abil. Vastuvõtmise, andmeülekande juhtimise ja edastatud pakettide järjekorra salvestamiseks ei ole IP protokollis funktsiooni. Selles mõttes ei võimalda IP protokoll usaldatavat kohalejõudmisekinnitusega andmeülekannet. Kõik kinnitusesaamisega seotud funktsioonid on turvatud kõrgema tasandi protokollidega. Toetab hierarhilist adresseerimisloogikat ja kindlustab globaalse datagrammide vahetamise.
Joonis 9.10. IP protokoll [13]
IP protokoll töötleb igat paketti nagu eraldiseisvat objekti, mis on iseseisev teistest pakettidest. Pakettide töötlemisel vaatleb IP protokoll vastuvõtja IP aadressi ja seejärel määrab marsruutimise protokollide abil parima teekonna nende edastamiseks. Mõnikord teostab IP protokoll pakettide suuruse teisenduse; näiteks juhul, kui pakett on tulnud võrgust, mis baseerub Ethernetile (kaadri suurus on 1500 baiti) ja tuleb saata FDDI standardile vastavasse võrku (mille kaadri suurus on 44709 baiti), peab IP protokoll ühendama mitu Etherneti kaadrit kokku üheks FDDI kaadriks või jaotama FDDI kaadri mimtmeks Etherneti kaadriks vastassuunalisel andmeedastusel.
Joonis 9.11. IPv4 protokoll [13]
Joonis 9.12. IPv6 protokoll [13]
Praegusel ajal kasutatakse kahte IP protokolli: IP versioon 4 (IPv4) ja IP versioon 6 (IPv6). IPv4 standardile vastavad IP aadressid on 32-bitised numbrid. Mugavuse huvides kirjutatakse need kui neli punktiga eraldatud baiti, näiteks 194.145.63.12. Protokolli päiseblokk on näidatud pildil 9.11.
IPv6 standardile vastavad IP aadressid on kõik 128-bitised numbrid. Neid IP aadresse esitatakse kui kaheksat 16-bitist täisarvu, mis on eraldatud kooloniga. Iga numbri kõrgemas järgus on keelatud omistada nulle. IPv6 on võimalik esitada IPv4st tuntud standardsel moel. Selle protokolli päiseblokk on esitatud pildil 9.12.