file
TRANSCRIPT
![Page 1: File](https://reader035.vdocuments.net/reader035/viewer/2022081804/5448f5e4b1af9f10098b4724/html5/thumbnails/1.jpg)
Tinklo architektūra
OSI MODELIS
80 – ųjų metų pradţioje, ISO išleido modelį, skirtą gamintojams, padedant suvienyti skirtingus
tinklus. Gavęs platų pripaţinimą, ISO modelis turi septynis diskretinius lygius, kurie atlieka
nustatytos tinklo vietos funkcijas, kai kompiuteriai tarpusavyje keičiasi duomenimis.
Šiandiena dauguma kompiuterinių tinklų, įskaitant ir Internet, pagristi taip vadinamu OSI tinklo
sudarymo modeliu. OSI - (Open System Interaction) - atvirų sistemų sąveika. Atviroje sistemoje jos
struktūra ir savybės nėra vienos kokios tai kompanijos nuosavybė. OSI modelio kūrėjai sukūrė jį
remdamiesi Tarptautinės Standartizavimo Organizacijos ISO pasiūlymu. Todėl literatūroje OSI
modelis dar vadinamas ISO/OSI. OSI modelyje skirtingi funkciniai lygiai atlieka konkrečias tinklo
operacijas. OSI modelis - tai projektavimo vadovas, o ne tiksli specifikacija. Ţemiau pavaizduoti šio
tinklo modelio įvairus lygiai.
7 Taikomasis lygmuo (pranešimai) Application layer
6 Duomenų pateikimo lygmuo (pranešimai) Presentation layer
5 Seansų lygmuo (pranešimai) Session layer
4 Transportinis lygmuo (pranešimai) Transport layer
3 Tinklinis lygmuo (paketai) Network layer
2 Kanalinis lygmuo (kadrai) Data Link layer
1 Fizinis lygmuo (bitai) Physical layer
4 pav. Tinklinės architektūros modelis ISO/OSI.
Reikia pastebėti, kad kiekvienas ISO/OSI modelio lygis naudoja tam tikrus informacijos
vienetus. Pavyzdţiui, taikomasis lygmuo, duomenų atvaizdavimo lygmuo, seansinis ir transportinis
lygmuo informacijos vienetu laiko pranešimus. Tinklinis lygmuo informacijos duomenų vienetu
laiko paketus. Kanalinis lygmuo duomenų vienetu laiko kadrus, o fizinis lygmuo mato duomenys
kaip bitus. Pagal tai, kaip informacija pereina iš vieno lygmens į kitą, tinklinė-programinė įranga
keičia ją į reikalingą formatą. Tokio "daugiasluoksnio kompiuterinio tinklo privalumas tas, kad
projektuotojai gali naudoti įvairią aparatinė ir programinę įrangą kurdami tinklą. Nors aparatūra ir
programinė įranga gali būti skirtingų tiekėjų, standartiniai protokolai, valdantys duomenų srautus
tarp atskirų tinklo lygių, garantuoja, kad ir aparatūra, ir programos bendraus teisingai.
Fizinis lygmuo
Fizinis lygis (Physic Layer).
Elektrinės, mechaninės, procedūrinės ir funkcinės specifikacijos, valdo fizinį tinklo mazgų
sujungimą. Šis lygis nustato perdavimo terpės tipą, kodavimo tipą, perdavimo metodus, jungčių
tipus ir formas. Šiame lygije dirba kartotuvai.
![Page 2: File](https://reader035.vdocuments.net/reader035/viewer/2022081804/5448f5e4b1af9f10098b4724/html5/thumbnails/2.jpg)
Informacijos srautai modelyje organizuoti taip, kad kiekvienas lygis ima prielaidą, kad jis tiesiogiai
bendradarbiauja su tokio pat lygio mazgu. Kaip pavaizduota piešinėlyje, kompiuteryje tinklo lygis 1
ima prielaidą, kad jis bendradarbiauja su 2 kompiuterio tinklo lygiu. Bet iš tikrūjų kiekvienas lygis
gali bendradarbiauti tik su kaimyniniu lygiu ir savu kompiuteriu. Dėl tokį pat pavadinimą turinčių
lygių bendradarbiavimo, yra organizuojama sesija:
Kompiuteryje 1:
1. tinklo lygis gauna duomenis iš transportinio lygio;
2. tinklo lygis formuoja informaciją į paketus ir perduoda juos duomenų kanalo lygį;
3. duomenų kanalo lygis patalpina paketus į rėmus (frame) ir perduoda galutinius į fizinį lygį;
4. fizinis lygis perduoda informaciją į siuntimo kanalą.
Kompiuteryje 2:
5. fizinis lygis priima signalus iš kabelio;
6. fizinis lygis perduoda duomenis į duomenų kanalo lygį;
7. duomenų kanalo lygis atrenka gautus rėmus (kadrus) ir perduoda atrinktus iš jų paketus į tinklo
lygį;
8. tinklo lygis gautus paketus apdoroja ir perduoda informaciją į transportinį lygį dėl tolimesnio
apdorojimo.
Fizinis lygis susijęs su bitų srauto perdavimu per ryšio kanalą. Kai viena pusė siunčia
1, tai kita turi gauti taip pat 1, o ne 0. Tipiški klausimai fiziniame lygyje. Kiek voltų reiškia 1, kiek
voltų reiškia 0? Kokia bito trukmė? Ar perdavimas gali vykti į abi puses vienu metu? Kaip
vykdomas pradinis susijungimas ir kaip jis uţbaigiamas, kai abi pusės baigia siųsti? Kiek išvadų
turi tinklinė jungtis, kam yra naudojamas kiekvienas išvadas? Projektavimas čia susijęs daugiausia
su mechaninėmis, elektrinėmis ir procedūrinėmis sąsajomis, o taip pat su fizine perdavimo aplinka,
kuri yra ţemiau fizinio lygio.
Fizinis lygmuo perduoda duomenis tinklo ryšio kanalais. Jis apjungia fizinius elementus
(aparatinę dalį), tokius kaip kabelius ir jungtis, atitinkančius tinklo technologijai (Ethernet ir IBM
Token ring), kuri, savo ruoţtu, uţduoda duomenų perdavimo parametrus. Fiziniame lygmenyje
nustatoma ar duomenų perdavimui naudojamas simpleksinis, pusiau dupleksinis ar dupleksinis
ryšio reţimas. Taip pat jis apima visa smulkmenas surištas su tinklo technologija. Ţinodami visas
fizinio lygmens realizavimo detales, projektuotojai gali kurti aukštesnius lygmenis jau nekreipdami
dėmesio į tinklo technoloiją.
Tinklo interfeiso plokštė (tinklo korta) leidţia sujungti kompiuterius, panaudojant suktos poros
kabelį arba koaksialinį kabelį. Fizinis tinklo lygmuo apibūdina elektrinius ir mechaninius tinklo
ryšio kanalų aspektus.
Kanalinis lygmuo
Kanalinis lygis (Data-Link Layer).
Atlieka patikimą duomenų perdavimą per ryšio kanalą (fizinį sujungimą, kabelį). Šis lygis atlieka
fizinę adresaciją, perspėjimus apie klaidas, tvarkingus pristatymus ir duomenų srauto valdymus.
Paprastai šio lygio funkcijos yra pateiktos tinkliniame adapteryje (Network Interface Card – NIC).
Šiame lygije dirba tiltai.
Pagrindinė kanalinio lygio uţduotis paimti neapdorotą perduodamą duomenų srautą ir
transformuoti jį į eilutę, kuri patenka į tinklinį lygį be klaidų. Tai yra padaroma siunčiančioje dalyje
suskaldant duomenis į duomenų kadrus, perduodant kadrus nuosekliai ir apdorojant patvirtinimo
kadrus, atsiųstus atgal iš imtuvo. Kadangi fizinis lygis priima ir perduoda bitų srautą be jokio
prasmės ar struktūros aiškinimosi, tai kanalinio lygio uţduotis - sukurti ir atpaţinti kadrų ribas. Tai
![Page 3: File](https://reader035.vdocuments.net/reader035/viewer/2022081804/5448f5e4b1af9f10098b4724/html5/thumbnails/3.jpg)
gali būti padaryta, pridedant kadro pradţioje ir gale specialų bitų rinkinį. Jei tas rinkinys netyčia
pasitaiko duomenyse, specialiomis priemonėmis jis atpaţįstamas ir netraktuojamas kaip kadro riba.
Kanalinio lygio programinė įranga gali perduoti kadrą iš naujo, jei įvyko klaida ir nebuvo atsiųstas
gavimo patvirtinimo kadras. Jeigu dingsta patvirtinimo kadras, gali būti išsiųstas duomenų kadro
dublikatas. Taigi, kanalinis lygis turi išspręsti problemas, susijusias su kadrų paţeidimu, praradimu,
dubliavimu. Kanalinis lygis gali teikti keleto klasių paslaugas tinkliniam lygiui, skirtingos kokybės
ir uţ skirtingą kainą.
Srauto valdymas (flow control), kai siųstuvas greitesnis uţ imtuvą. Paprastai srauto reguliavimas ir
klaidų taisymas yra integruoti.
Transliaciniuose tinkluose įvedamas papildomas polygis MAC (Media Access Control - kreipties į
aplinką valdymas) priėjimui prie bendro kanalo kontroliuoti.
Protokolas - tai tinklo duomenų priėmimo ir perdavimo taisyklių rinkinys. Kiekvienas tinklo
kompiuteris turi vieną ar kelias tinklo kortas, realizuotas atitinkamai konkrečiai technologijai,
jungiančiai kompiuterius į tinklą. Kai kompiuteris perduoda informacija tinklu, duomenų srautai
juda iš vienos tinklo kortos į kitą. Kiekviena korta turi unikalų tinklinį adresą.
Daugiasluoksniame tinklo modelyje korta atitinka sujungimo lygmeny, daţniausiai vadinamu
kanaliniu lygmeniu. Kitaip sakant, tinklo interfeiso plokštės atitinka sujungimą tarp fizinio lygmens
(kabelio) ir tinklo programomis. Ethernet pateikia rinkinį kanalinio lygmens protokolų, slepiančių
fizinį tinklo realizavimą nuo tinklinio lygmens. Kanalinio lygmens dėka tinklinio lygmens
protokolams nesvarbu, ar naudojama Ethernet technologija, ar kita tinklo technologija (pvz. IBM
Token Ring tipo). Reikia atsiminti, kad tinklo interfeiso korta pririšta prie konkrečios technologijos.
Reikia naudoti Ethernet korta, jeigu jūs norite prijungti kompiuterį prie >Ethernet tinklo, ir
interfeisinę kortą Token Ring, jeigu jūs naudojate IBM Token Ring tinklą.
Kai kanalinis lygmuo pertvarko duomenų bitų seką į tam tikrą formatą, tai rezultate gaunamus
informacijos vienetus paprastai vadina kadru. Kadro duomenų sudėtis priklauso nuo ţemiau
esančios tinklo technologijos (fizinio lygmens). Tokiu būdu, tinkliniam lygiui nesvarbu, kaip
kanalinis lygmuo formuoja kadrus. Dėl savo struktūros duomenų kadrai duoda galimybę tikrinti
klaidas. Reikia suprasti, kad pagrindinis kanalinio lygmens tikslas arba funkcija yra neleisti
sugadinti duomenis (dauguma mano, kad kadrų sudarymas ir yra pagrindinis kanalinio lygmens
tikslas). Ţemiau patektas Ethernet tinklo duomenų kadro sudėtis.
64 bitai 48 bitai 48 bitai 16 bitų 368-12000 bitų 32 bitai
Antraštė Gavėjo adresas Siuntėjo adresas Kadro tipas Kadro duomenys CRC
Čia: CRC - Cyclic Redundancy Check - ciklinis perteklinis patikrinimas, naudojamas klaidų
aptikimui ir taisymui.
Tinklinis lygmuo
Tinklinis lygis Network Layer).
Atlieka dviejų galutinių sistemų sujungimą, kurios yra skirtinguose potinkliuose. Šiame lygije dirba
maršrutizatoriai.
Tinklinis lygis susijęs su potinklio (subnet) darbo valdymu. Svarbiausias dalykas yra apibrėţti, kaip
paketai maršrutizuojami nuo šaltinio iki tikslo. Maršrutai gali būti paremti statinėmis lentelėmis,
kurios retai keičiamos. Taip pat maršrutai gali būti nustatyti ryšio pradţioje. Galų gale jie gali būti
dinaminiai, nustatomi kiekvienam paketui, atspindint realų tinklo apkrovimą tuo momentu.
![Page 4: File](https://reader035.vdocuments.net/reader035/viewer/2022081804/5448f5e4b1af9f10098b4724/html5/thumbnails/4.jpg)
Jei paketų labai daug potinklyje, jie gali sudaryti kamščius. Tokių perkrovimų reguliavimas
priklauso tinkliniam lygiui.
Paketui pereinant iš vieno tinklo į kitą gali kilti daug problemų. Adresavimas, naudojamas
antrajame tinkle, gali būti kitoks. Antroji pusė gali iš viso nepriimti paketo, kadangi jis per didelis.
Protokolai gali skirtis ir t.t. Visas šias problemas turi išspręsti tinklinis lygis.
Kaip ţinia, kiekvienas duomenų paketas tinkle su paketų komutavimu turi gavėjo adresą ir
siuntėjo adresą, nurodomus ten maršrutizacijos tikslais. Tinklinis lygmuo nustato maršrutą, arba
kelią, kuriuo duomenys perduodami nurodytu adresu. Šis lygmuo valdo tinklo traffik'ą, apkrovimą
ir perdavimo greičius (greitaveikiškumą) tinklo terpėje. Tam, kad valdyti duomenų srautus, tinklinis
lygmuo naudoja tiltus (Bridge) ir maršrutizatorius (Routers). Kaip tarptinklinis protokolas (IP), taip
ir tarp tinklinis paketų apsikeitimas (IPX) Netware dirba tinkliniame lygmenyje.
Transportinis lygmuo
Transportinis lygis (Transport Layer).
Suteikia galimybę bendradarbiauti tarpusavyje priedams ir komunikaciniams lygiams. Šis lygis
atsakingas uz duomenų supakavimą į paketus ir pristatymą adresatui.
Pagrindinė transportinio lygio funkcija - priimti iš sesijinio lygio duomenis, jei reikia padalyti į
maţesnes dalis, perduoti į tinklinį lygį, uţtikrinti, kad visos dalys teisingai pasiektų kitą pusę. Visa
tai turi būti padaryta efektyviai, tokiu būdu, kad aukštesni lygiai būtų apsaugoti nuo neišvengiamų
aparatūros pasikeitimų.
Paprastai transportinis lygis sukuria atskirą tinklinį sujungimą kiekvienam transportiniam
sujungimui, kurio reikalauja sesijinis lygis. Jei reikia, transportinis lygis gali sukurti keletą tinklinių
sujungimų vienam transportiniam. Ir atvirkščiai.
Populiariausias transportinio lygio sujungimas yra be klaidų kanalas taškas-taškas, kuris pristato
pranešimus arba baitus tokia tvarka, kaip jie buvo išsiųsti. Tačiau viena iš transporto paslaugos
rūšių gali būti izoliuotų pranešimų perdavimas be garantijos apie pristatymo eilę, o taip pat
pranešimų tiraţavimas į daugelį vietų.
Transportinis lygis yra tikras “end-to-end” lygis nuo šaltinio iki tikslo. Programa šaltinio
kompiuteryje bendrauja su kita analogiška programa kitame sujungimo gale, naudodama pranešimo
antraštes ir valdymo pranešimus. Ţemesniuose lygiuose protokolai yra tarp kompiuterio ir jo
artimiausių kaimynų, o ne tarp šaltinio ir tikslo, kurie gali būti atskirti daugeliu maršrutizatorių.
Daugelis kompiuterių yra daugiaprogramiai. Tai reiškia, kad vienu metu gali egzistuoti daug
sujungimų. Reikia nurodyti, koks pranešimas kokiam sujungimui priklauso. Transporto antraštė yra
ta vieta, kur ši informacija patalpinama.
Reikalingas tam tikras vardų mechanizmas, nusakantis, koks procesas viename kompiuteryje nori
bendrauti su kitu kitame kompiuteryje. Turi būti srauto valdymo mechanizmas, kad būtų suderintas
apsikeitimas duomenimis tarp greito ir lėto kompiuterio (flow control).
Transportinio lygmens paskirtis - uţtikrinti patikimą duomenų pristatymą tarp tinklo
kompiuterių. Jis atskiria taikomąjį lygmenį (kuriame dirba tinklinės programos) nuo lygmenų, kurie
dirba pagrinde su duomenų perdavimu. TCP protokolas (iš TCP/IP) - tai transportinio lygmens
protokolas. Dauguma (bet ne visos) taikomųjų programų duomenų perdavimui į tinklinį lygmenį
naudoja TCP. Netware transportinio lygmens protokolu yra SPX. Kaip ir TCP, SPX uţtikrina
patikimą duomenų perdavimą Netware tinkluose.
Tuo tikslu transportinis lygmuo skaldo arba fragmentuoja duomenis, gaunamus iš seansinio
lygmens, į maţesnes dalis, reikalingas tinkliniam lygmeniui. Gavęs informaciją, transportinis
lygmuo turi vėl surinkti fragmentuotus duomenis, todėl nuo jo struktūros smarkiai priklauso paketų,
perduodamų tinklu, kiekis. Kitaip tariant, transportinis lygmuo kuria paketų trafiką, kurį valdyti turi
tinklinis lygmuo.
![Page 5: File](https://reader035.vdocuments.net/reader035/viewer/2022081804/5448f5e4b1af9f10098b4724/html5/thumbnails/5.jpg)
Seansinis lygmuo
Sesijinis lygis (Session Layer).
Organizuoja tarp procesų ir skirtingų kompiuterių dialogą, valdo šį dialogą ir nutraukia jį kai
baigiasi. Pavyzdys šio lygio yra protokolas NetBIOS.
Šis lygis leidţia vartotojams tarp skirtingų kompiuterių organizuoti sesijas. Sesijos leidţia paprastą
duomenų padavimą kaip ir transportinis lygis. Be to jos uţtikrina pagerintas papildomas paslaugas,
reikalingas kai kuriems taikymams. Sesija gali būti panaudota vartotojui įeiti į nutolusią sistemą
(log into) arba perduoti failą tarp dviejų kompiuterių.
Viena iš paslaugų yra valdyti dialogą. Sesijos gali leisti duomenims eiti abiem kryptim tuo pačiu
metu arba tik viena kryptimi.
Dar viena paslauga - ţymės valdymas. Kai reikia uţtikrinti, kad sesijos metu nebus bandoma atlikti
tą pačią operaciją iš abiejų pusių. Šiam procesui valdyti padaroma ţymė (token). Tik ta pusė, kuri
turi ţymę, gali atlikti kritinę operaciją.
Kita paslauga - sinchronizacija. Pvz.: perduodant ilgą failą nepatikimu kanalu. Nutrūkus ryšiui, kitą
kartą galima pratęsti siuntimą nuo tos vietos, kur jis buvo nutrauktas, jei į duomenų srautą yra
įterpiami specialūs patikrinimo taškai.
Daugumoje kompiuterinių tinklų jūs kiekvieną kartą turite registruotis (įvesti vartotojo vardą ir
slaptaţodį), kai norite pasinaudoti tinklo paslaugomis. Registraciją daţnai vadina tinkliniu seansu.
Seansinis lygmuo kiekvieno registracijos seanso metu veda derybas ir apjungia įvairių mazgų
procesus arba programas. Seanso sudarymo procesas taip pat vadinamas sujungimu. Be to, seansinis
lygmuo atpaţįsta abu sujungimo galus, reikalaudamas kiekvieno iš jų identifikuoti save.
Abu sujungimo galai turi patvirtinti savo teisę naudoti konkretų susijungimą ar seansą.
Internet'as (Intranet'as) pašalina seansinio lygmens poreikį. Nors daugeliu atvejų, kad naudotis
Internet'u, reikia uţsiregistruoti. Programinė įranga, leidţianti vartotojui tai padaryti, nėra tinklinės
programinės įrangos dalis. Internet'e transportinio lygmens protokolai apima daug funkcijų, kurios
paprastai vykdomos seansinio lygmens. Trumpai tariant, seansinis lygmuo sudaro ir valdo
sujungimus tarp vartotojiškų ir tinklinių programų.
Duomenų atvaizdavimo (pristatomasis) lygmuo
Vaizdavimo lygis (Presentation Layer).
Suteikia galimybę suprasti vieno kompiuterio pristatomojo lygio informacijai, pasiūstai iš kito
kopiuterio. Šio lygio uţduotis yra siuntimas vieno duomenų formato į kitus, duomenų suspaudimas
ir jų kodavimas (esant būtinumui). Šis lygis įterpia DOS ir tinklo OS funkcijas.
Skirtingai nuo ţemesniųjų lygių, kurie domisi tik patikimu bitų perdavimu iš vienos vietos į kitą,
vaizdavimo lygis susijęs su perduodamos informacijos sintakse ir semantika.
Tipiška paslauga - duomenų kodavimas. Dauguma vartotojų programų nesikeičia atsitiktinėmis bitų
eilutėmis. Jos keičiasi ţmonių vardais, datomis, pinigų kiekiais ir t.t. Šie dalykai pateikiami kaip
ţenklų eilutės, sveiki skaičiai, skaičiai su slankiu kableliu ir t.t. Skirtingi kompiuteriai turi skirtingus
kodus vaizduoti simbolių eilutes (pvz.: ASCII, UNICODE) ir t.t. Kad skirtingi kompiuteriai galėtų
keistis duomenimis, duomenų struktūros turi būti pateiktos tam tikru abstrakčiu būdu. Vaizdavimo
lygis valdo šias abstrakčias duomenų struktūras ir verčia kompiuteryje naudojamą pateikimo būdą į
standartinį, naudojamą tinkle, ir atvirkščiai.
Duomenų atvaizdavimo lygmuo apima bendras funkcijas, daug kartu tinklo išnaudojamas ryšio
tinkle metu. Šias funkcijas sudaro tinklo prijungimo prie spausdintuvų, displėjų interfeisas ir failų
formatai. Duomenų atvaizdavimo lygmuo apima daug duomenų pertvarkymo paprogramių. Internet
tinklai neturi standartinio duomenų atvaizdavimo lygmens, todėl dauguma jo funkcijų vykdomos
taikomosiomis programomis.
![Page 6: File](https://reader035.vdocuments.net/reader035/viewer/2022081804/5448f5e4b1af9f10098b4724/html5/thumbnails/6.jpg)
Daţnai lygmenys, esantys ţemiau duomenų atvaizdavimo lygmens, atlieka funkcijas,
garantuojančias teisingą tinklo darbą. Duomenų atvaizdavimo lygmuo atlieka naudingas, bet
neesmines tinklo paslaugas. Jis galėtų taip pat atlikti tam tikras komunikacines paslaugas, kaip
šifravimas ir duomenų suglaudinimas. Duomenų šifravimo tikslas - uţtikrinti saugumą. Tinkle prieš
perdavimą šifravimas pakeičia suprantamus duomenis į kaţką tai nesuprantamo. Priimančiame
sujungimo gale duomenų atvaizdavimo lygmuo turi dekoduoti šią informaciją ir vėl transformuoti
duomenis į tinkamus priėmimui.
Panašiai kaip ir šifravimas, suglaudinimas naudoja duomenų pakeitimą. Suglaudinus duomenis
viršutiniame tinklo lygmenyje, duomenų atvaizdavimo lygmuo sumaţina informacijos kiekį, kurią
reikės perduoti tinklu. Vadinasi, efektyvus duomenų suglaudinimas šiame lygmenyje gali padidinti
bendrą tinklo efektyvumą.
Taikomasis lygmuo
Taikomasis lygis (Application Layer).
Šiame lygije dirba priedai, su kuriais tiesiogiai susijęs vartotojas. Unikalus jis tuo, kad jis nepateikia
jokiu paslaugų kitiems modelio lygiams. Pavyzdţiu šiam lygiui gali būti programos tokio kaip:
Lotus 1-2-3 arba Edit.
Vienas iš plačiai naudojamų taikymų - terminalo emuliavimas. Egzistuoja daugybė realių ir labai
skirtingų terminalų. Terminalo emuliavimo programa leidţia sumodeliuoti tam tikrą abstraktų
terminalą realiai egzistuojančiame. Visa virtualaus terminalo programinė įranga yra taikomajame
lygyje.
Kita taikomojo lygio funkcija - failų perdavimas. Skirtinguose kompiuteriuose skirtingos failų
sistemos. Taikomasis lygis turi išspręsti visas nesuderinamumo problemas. Šiam lygiui taip pat
priklauso elektroninis paštas, uţduočių įvedimas į nutolusius kompiuterius, katalogų perţiūra ir
daug kitų taikomųjų dalykų.
Taikomasis lygmuo apima visas smulkmenas, surištas su kompiuterinėmis programomis,
parašytomis tinklo vartotojams. Didelė dalis programinio aprūpinimo, iš bazinio TCP/IP rinkinio,
aprūpina vartotojus standartinėmis tinklo programomis kaip FTP ir Telnet. Kaip ţinia, FTP leidţia
jums susijungti su kitu tinklo kompiuteriu ir keistis failais. Analogiškai programa Telnet leidţia įeiti
į nutolusį kompiuterį. Taikomojo lygmens programomis galima laikyti ir elektroninio pašto
programas ir WWW naršykles (Web browser).
TCP/IP protokolų paketas
Protokolai - tai taisyklės, aprašančios, kaip tarpusavy bendrauja programos. Tinklo protokolai
valdo informacijos srautus tarp dviejų programų, dirbančių viename arba skirtinguose
kompiuteriuose (kaip, pavyzdţiui, ryšys tarp Web-browser'io ir serverio). TCP/IP protokolo
taisyklių rinkinys valdo visą informaciją, kuri juda jūsų vidiniame tinkle, o taip pat, duomenis,
keliaujančius po Internet'ą.
Protokolo TCP/IP taisyklių rinkinys - tai grupė įvairių protokolų, kurių kiekvienas perduoda
duomenis tinkle, naudodamas skirtingus formatus ir įvairias klaidų tikrinimo operacijas.
Priklausomai nuo to, kokias jūs savo tinkle naudojate programas, vienas iš kelių TCP/IP viduje
esančių protokolų atliks informacijos perdavimą tinkle.
TCP - tai ţodţių Transport Control Protocol (perdavimo valdymo protokolas) santrumpa. IP
reiškia Internet Protocol (tarptinklinis protokolas). Tačiau TCP/IP yra daugiau nei šie du protokolai.
Be perdavimo valdymo (TCP) ir tarptinklinio (IP) protokolų TCP/IP protokolų rinkinys turi ir kitus
protokolus, kurie kartu dirba, kad perduoti informaciją Internet'e.
![Page 7: File](https://reader035.vdocuments.net/reader035/viewer/2022081804/5448f5e4b1af9f10098b4724/html5/thumbnails/7.jpg)
1 lentelė. TCP/IP protokolai.
IP - Tarptinklinis protokolas - tinklinio lygmens protokolas, kuris perduoda
duomenis tarp pagrindinių kompiuterių.
TCP - Duomenų perdavimo valdymo protokolas - transportinio lygmens protokolas,
kuris perduoda duomenis tarp programų.
UDP
- User Datagram Protocol - vartotojų datagramų protokolas. Taip pat
transportinio lygmens protokolas. UDP taip pat perduoda duomenis tarp
programų, bet yra paprastesnis ir maţiau patikimesnis nei TCP.
ICMP
- Internet Control Message Protocol - Internet pranešimų valdymo protokolas
perduoda tinklinius pranešimus apie klaidas ir kitas būsenas, reikalaujančias
tinklinių programų dėmesio.
5 pav. ISO/OSI modelis ir protokolų paketas.
Kaip anksčiau išsiaiškinome, ISO/OSI tinklinis modelis skaldo tinklą į lygius, kurių kiekvienas
atlieka konkrečią funkciją. Kiekvienam lygmeniui priskiriami protokolai, apibrėţiantys funkcines
lygmens galimybes. Terminas "protokolų paketas" kilęs iš tokios tinklo koncepcijos ir
įsivaizduojamas kaip vertikalus protokolų išdėstymas. Taigi, perduodant duomenis tinkle, galima
įsivaizduoti kad jie slenka iš vieno lygmens į kitą ir nuo vieno protokolo prie kito. Aukščiau pateikti
ISO/OSI modelis ir šalia protokolų paketas.
Pagal tai, kaip duomenis praeina per protokolų paketą, jie pereina nuo taikomojo lygmens iki
fizinio ir toliau keliauja tinklu. Pasiekę fizinį adresatą, jie kyla per protokolų paketą iki adresato
taikomosios programos.
Standartinis ISO/OSI modelis nustato septynis funkcinius tinklo struktūros lygius. Tačiau
ISO/OSI modelis - tai viso labo tik rekomendacinis tinklų architektūros projektavimo vadovas, o ne
privalomas struktūrinis aprašymas. Kaip duomenys slenka per protokolų paketą aiškinsimės
pradėdami nuo fizinio lygmens.
![Page 8: File](https://reader035.vdocuments.net/reader035/viewer/2022081804/5448f5e4b1af9f10098b4724/html5/thumbnails/8.jpg)
Fizinis lygmuo
TCP/IP tinkle fizinis lygmuo identiškas ISO/OSI modeliui ir apjungia savyje informacijos
perdavimo priemones. Tos priemonės - paprastai vienas iš vytos poros ar koaksialinio kabelio tipų.
Kanalinis lygmuo
Kanalinis lygmuo apjungia aparatinį interfeisą ir du protokolų modulius: adreso nustatymo
protokolą (ARP - Address Resolution Protocol) ir atgalinio adreso nustatymo protokolą (RARP -
Reverse Address Resolution Protocol). Kanalinis lygmuo naudoja šiuos du protokolus adresų
nustatymui. Kanalinis lygmuo sujungia fizinį lygmenį su tinkliniu.
6 pav. Tinklinis TCP/IP modelis su surištais protokolais.
TCP/IP protokolų rinkinyje kanalinis lygmuo duomenis siunčia ir gauna iš tinklinio lygmens IP
modulio. Be konkrečios funkcijos vykdymo, kiekvienas daugiasluoksnės struktūros lygmuo slepia
konkretaus mechanizmo vykdymo smulkmenas nuo aukščiau esančių lygmenų. Tokiu būdu, dar
viena kanalinio lygmens funkcija, paslėpti fizinę tinklo realizacija nuo kitų lygių. Kai kanalinis
lygmuo atlieka savo darbą, tinkliniam lygmeniui nesvarbu - ar naudojama Ethernet technologija ar
IBM Token Ring technologija.
ARP ir RARP protokolai skirti IP adresą pakeisti į DLC (Data Link Control) adresą ir
atvirkščiai. Internet'inis adresas - tai IP adresas. Jis yra 32 bitų (4 baitų) ilgio ir gali būti uţrašomas,
pavyzdţiui
dvejetainiu kodu - 10000110 00011000 00001000 01000010
dešimtainiu skaičiumi - 2,249,721,922
šešioliktainiu skaičiumi - 0x86180842
taškiniu-dešimtainiu kodu - 134.24.8.66.
Adreso skyros protokolas
TCP/IP gali naudoti bet kurį iš trijų adresų skyros metodų. Metodas, parinktas individualiam
tinklui priklauso nuo adresavimo schemos, naudojamos aparatinės įrangos. Paieška lentelėje
![Page 9: File](https://reader035.vdocuments.net/reader035/viewer/2022081804/5448f5e4b1af9f10098b4724/html5/thumbnails/9.jpg)
daţniausiai naudojama išskirti TP adresą TKT tinkle, analizinis skaičiavimas yra naudojamas
keičiamos konfigūracijos tinkluose ir pasikeitimas pranešimais – VKT (LAN) tinkluose, kurių
aparatinė dalis naudoja statinį adresavimą. Garantavimui, kad visi kompiuteriai atitinka lygiai tą
patį formatą ir reikšmę pranešimų, naudojamų adresų skyrai, TCP/IP protokolų rinkinys turi adreso
skyros protokolą (Address Resolution Protocol ARP). ARP standartas nustato du pagrindinius
pranešimų tipus: reikalavimą (request) ir atsakymą (response). Reikalavimo pranešimas turi TP
adresą ir atitinkamo aparatinės dalies adreso reikalavimą. Atsakymas turi TP adresą, pasiųstą su
reikalavimu, ir aparatinės dalies adresą.
ARP standartas tiksliai nustato, kaip ARP pranešimai turi būti pasiųsti per tinklą. Ypatingai
protokolas nustato, kad ARP reikalavimo pranešimas turi būti patalpintas į aparatinės dalies freimą
ir perduotas visiems tinklo kompiuteriams. Kiekvienas kompiuteris priima reikalavimą ir tikrina TP
adresą. Kompiuteris, paminėtas reikalavime, siunčia atsakymą, o visi kiti kompiuteriai apdoroja ir
ištrina reikalavimą be atsakymo siuntimo. Kuomet kompiuteris siunčia ARP atsakymą, pastarasis
yra netransliuojamas, o padedamas į freimą ir siunčiamas tiesiai atgal kompiuteriui, kuris išdavė
reikalavimą.
TCP/IP protokolai dirba tik su IP adresu, o Ethernet kadrai dirba tik su Ethernet adresu, kuris
fiziniame lygmenyje yra 6 baitų ilgio. Ethernet tinklo korta skenuoja Ethernet kadrus, ieškodama
savo Ethernet adreso. Tinklo interfeiso plokštės nepripaţįsta IP adreso.
Tolesniam aiškinimuisi reikia aptarti kai kuriuos terminus. Šie terminai apibūdina skirtumus tarp
dviejų TCP/IP protokolų: vartotojiškų datagramų protokolo UDP ir perdavimo valdymo protokolo
TCP.
Adreso nustatymo protokolas (Address Resolution Protocol). Kanalinis lygis nesupranta IP
adresų. Ethernet atveju šis lygis supranta 6 baitų tinklo kortos numerį, kuris yra unikalus.
IP adresai turi būti susieti su kanalinio lygio adresais (pvz.: Ethernet). Galima sudaryti
lentelę. Tačiau jos palaikymas yra gana sudėtingas, kai tinkle tūkstančiai kompiuterių.
Geriau yra pasiųsti pranešimą visiems kompiuteriams vietiniame tinkle su klausimu, kam
priklauso šis IP adresas. Šio klausimo išsiuntimas ir atsakymo gavimas yra vykdomas, naudojant
ARP. Jį naudoja beveik kiekvienas kompiuteris Internete. Apibrėţtas RFC 826.
Galimi įvairūs ARP patobulinimai. Gautą ARP protokolu adresą kompiuteris gali laikinai
saugoti savo atmintyje ir juo vėl pasinaudoti po kurio laiko. Jeigu į ARP paketą įdedamas
klausiančiojo IP, tai kitas kompiuteris taip pat gali laikinai saugoti tą informaciją ir ja pasinaudoti
po kurio laiko. Kadangi ARP paketas patenka į visus kompiuterius, tai visi jie gali išsaugoti
siunčiančiojo IP ir kanalinio lygio adresus savo atmintyje.
Kiekviena mašina krovimosi metu išsiunčia visiems uţklausą apie savo IP adresą. Jei
atsakymo negauna, tai reiškia, kad joks kitas kompiuteris tinkle šio IP adreso nenaudoja. Priešingu
atveju turi būti informuotas sistemos administratorius ir naujas kompiuteris nepakraunamas. Kaip
šalutinis šio proceso efektas yra tai, kad pranešimą gauna visi kompiuteriai ir gali pakoreguoti savo
laikinas lenteles. Paprastai įrašai tose lentelėse saugomi ne daugiau kaip keletą minučių, kadangi
vienas kompiuteris gali būti pakeistas kitu, kuris turi kitą tinklo kortos numerį.
Atgalinis adreso nustatymo protokolas (Reverse Adress Resolution Protocol). Kartais
pagal tinklo kortos adresą reikia suţinoti IP adresą. To gali prireikti bediskio kompiuterio
pasikrovimo metu iš nutolusio serverio. Naudojamas RARP (RFC 903). Pasikrovimo metu
kompiuteris išsiunčia visiems pranešimą su savo tinklo kortos numeriu ir klausimu: “Koks yra šią
kortą atitinkantis IP adresas?” RARP serveris gauna šį pranešimą, perţiūri konfigūracinius failus ir
išsiunčia reikalingą IP adresą.
![Page 10: File](https://reader035.vdocuments.net/reader035/viewer/2022081804/5448f5e4b1af9f10098b4724/html5/thumbnails/10.jpg)
Tinklo sujungimai
Tinklo sujungimai gali būti su loginiu sujungimu arba be loginio sujungimo. Protokolas su
loginiu sujungimu turi susirišti su kita programa prieš tai, kada galės keistis informacija. Perdavimo
valdymo protokolas (TCP) - tai protokolas su loginiu sujungimu. Jis negali perduoti duomenų, kol
nesudarys ryšio.
Protokolas be loginio sujungimo nesudaro ryšio prieš perduodamas duomenis. Todėl, kiekvienas
pranešimas, naudojantis protokolą be loginio sujungimo, turi turėti visą, reikalingą pranešimo
pristatymui, informaciją, t.y. pilną ir tikslų pristatymo adresą. Vartotojiškų datagramų (UDP)
protokolas ir tarptinklinis (IP) protokolas - tai protokolai be loginio sujungimo.
Protokolų patikimumas
Protokolai gali būti patikimi ir nepatikimi. Patikimi protokolai garantuoja pranešimo perdavimą:
protokolai keičiasi ţinutėmis, patvirtinančiomis pristatymą, tarp programų. Patikimas protokolas
prideda prie pranešimo vieną ar dvi kontrolines sumas, kad patikrinti ar teisingai perduotas
pranešimas. TCP protokolas - tai patikimas protokolas, naudojantis kontrolines sumas ir kitus
metodus, garantuojančius patikimą duomenų perdavimą.
Skirtingai negu TCP, nepatikimas protokolas negarantuoja duomenų perdavimo, be to nepraneša
siuntusiai programai, jei duomenys nepasiekė adresato.
UDP ir IP protokolai yra nepatikimi. Bet tai nereiškia, kad jie nesistengia perduoti duomenų.
Kyla klausymas: tai kam juos naudoti? Atsakymas paprastas - kaina. Kaina, suprantant kaip
sudėtingumą ir tinklo pralaidumo juostą, ţymiai maţesnė nepatikimo protokolo atveju. Svarbu
suvokti, kad nepatikimas protokolas gali atlikti patikimą duomenų perdavimą. Geros tinklinės
programos sukurtos su įvairiomis papildomomis charakteristikomis, uţtikrinančiomis patikimą
duomenų perdavimą.
Protokolo siunčiami duomenys
TCP/IP protokolų rinkinyje atliekami du baziniai duomenų perdavimo tipai: baitinis duomenų
perdavimas ir datagramų (duomenų masyvų) perdavimas. Protokolas, naudojantis baitinį duomenų
perdavimą, siunčia informaciją nuoseklių baitų pavidalu, nepriklausomai nuo duomenų kiekio ir
reikiamų perdavimų skaičiaus. Be to toks protokolas garantuoja, kad kitame sujungimo gale
duomenys bus gauti ta pačia tvarka, kaip ir buvo išsiųsti. TCP protokolas - tai baitinio perdavimo
protokolas.
Protokolas, naudojantis duomenų masyvų perdavimą, perduoda informaciją savarankiškų blokų
pavidalo. Tai yra, kiekvienas masyvas nepriklauso nuo kito. Perduodant kelis masyvus, jie gali
pasiekti adresatą ne tokia tvarka, kaip buvo išsiųsti.UDP protokolas ir IP protokolas duomenų
perdavimui naudoja masyvus.
Virtualus sujungimas
Virtualus sujungimas - tai sujungimas, kuris, kaip jums atrodo, sujungia du taškus tiesiogiai,
nors, iš tikrųjų, toks sujungimas gali eiti per daug tarpinių taškų (pvz. Tarptautinis ar tarpmiestinis
telefoninis pokalbis). Iš TCP/IP protokolų rinkinio tik duomenų perdavimo valdymo (TCP)
protokolas uţtikrina virtualų sujungimą perduodant duomenis tinkle; UDP ir IP to nedaro.
IP-datagrama
![Page 11: File](https://reader035.vdocuments.net/reader035/viewer/2022081804/5448f5e4b1af9f10098b4724/html5/thumbnails/11.jpg)
Tarptinklinis protokolas (IP) naudoja nepatikimą duomenų masyvų perdavimą be loginio
susijungimo perduodant informaciją TCP/IP tinkle. Kiekviena IP-datagrama sudaryta iš IP-antraštės
ir pačių duomenų.
IP-antraštė
IP-antraštėje yra visa informacija, reikalinga duomenų, esančių datagramoje, pristatymui norimu
adresu. Tinklinės programos visada sukuria IP-antraštę kartotine 32 skilčių ţodţiams, net tada jeigu
reikia papildyti (įterpti papildomus nulius) IP-antraštę. IP-antraštė uţima tik 20 baitų jeigu
neįvedamos papildomos opcijos. Ţemiau pateikiama IP-antraštės struktūra. Nors ji parodyta kaip
sluoksniuota, bet reikia suprasti, kad tai yra nuoseklus bent 20 baitų srautas.
7 pav. IP-datagramos struktūra.
2 lentelė. IP-antraštės laukų sąrašas.
Duomenų laukas Tikslas
Versija Tarptinklinio protokolo, sudariusio datagramą, versija.
Antraštės ilgis IP-antraštės ilgis 32 skilčių ţodţiais.
Serviso tipas
Naudojamas nurodyti perdavimo efektyvumą ir prioritetus.Atskiri
šio laukelio bitai naudojami nurodyti viršenybę, uţlaikymą,
naudingumą, patikimumą ir kainą. Didţioji dalis Internet programų
nepalaiko šio laukelio.
Paketo ilgis Šis 16 skilčių laukelis aprašo viso IP-paketo ilgį, įskaitant ir IP-
antraštę, baitais.
Identifikacija Naudojama pakartotinam datagramos fragmentų surinkimui, kurie
buvo suskaldyti į maţesnes dalis.
Vėliavėlės Naudojami laukelyje "Identifikacija" pakartotinai surenkant
![Page 12: File](https://reader035.vdocuments.net/reader035/viewer/2022081804/5448f5e4b1af9f10098b4724/html5/thumbnails/12.jpg)
fragmentus.
Fragmentų
perstūmimas
Naudojami laukelyje "Identifikacija" pakartotinai surenkant
fragmentus.
Galiojimo laikas
Naudojamas siekiant nutraukti amţiną paketo klaidţiojimą po
Internet'ą. Šio laukelio reikšmė sumaţėja vienetu kiekvieną kartą,
kai paketas apdorojamas maršrutizatoriumi. Kai ji pasiekia nulį,
paketas sunaikinamas.
Protokolas Nurodo koks protokolas sukūrė duomenys, esančius paketo viduje.
Reikšmė 6 reiškia TCP. Reikšmė 17 reiškia UDP.
Antraštės
kontrolinė suma
Tik IP-antraštės kontrolinė suma, bet ne duomenų. Šis laukelis
skirtas aptikti perdavimo klaidas, ir, jei tokios yra, priimantis
kompiuteris atmeta IP-datagramą.
Siuntėjo IP
adresas Siunčiančio pagrindinio kompiuterio IP adresas.
Priimančio
kompiuterio IP
adresas
Jei šis laukelis uţpildytas tik vienetais, tai pranešimas bus perduotas
visiems pagrindiniams kompiuteriams.
Opcijos Šis 8 skilčių laukelis leidţia tinklo aptarnavimo profesionalams
derinti tinklo priemones.
ICMP protokolas
Problemos, kurios yra maţiau sunkios, nei perdavimo klaidos, atsiranda sąlygomis, kurios gali
būti praneštos. Pavyzdţiui, tarkime dalis fizinio interneto kelio sugedo ir padalino internetą į dvi
tinklų grupes, kurios neturi kelio tarp grupių. Paketas, pasiųstas iš vieno kompiuterio vienoje
grupėje kitam kompiuteriui kitoje grupėje negalės nueiti. TCP/IP rinkinys turi protokolą, kurį TP
naudoja klaidos pranešimui nusiųsti, kai atsiranda prieš tai minėtos sąlygos. Šis protokolas vadinasi
interneto valdymo pranešimų protokolas (Internet Control Message Protocol – ICMP). Šie du
protokolai yra abipusiai priklausomi. TP naudoja ICMP, kai siunčia klaidos pranešimą, ir ICMP
naudoja TP pranešimų perdavimui.
ICMP nustato penkis klaidų ir keturis informacinius pranešimus. ICMP klaidų pranešimai yra
tokie:
1. Šaltinio slopinimas. Maršruto parinkimo įrenginys siunčia šį pranešimą, kai tik gauna tiek
daug paketų, kad nebeturi buferinės atminties jiems saugoti. Kai maršruto parinkimo
įrenginys laikinai nebeturi laisvos atminties, jis turi trinti ateinančius paketus. Ištrynęs jis
siunčia šaltinio slopinimo pranešimą pagrindiniam kompiuteriui, kuris sukūrė šį paketą.
Gavęs tokį pranešimą, kompiuteris turi sumaţinti perdavimo greitį.
2. Laiko viršijimas. Šis pranešimas yra siunčiamas dviem atvejais. Kai tik maršruto parinkimo
įrenginys sumaţina paketo lauko TIME TO LIVE reikšmę iki nulio, jis sunaikina paketą ir
siunčia laiko viršijimo pranešimą. Be to, šis pranešimą siunčia pagrindinis kompiuteris, jei
pakartotinio komponavimo laikmatis baigiasi iki visų duoto paketo fragmentų atėjimo.
3. Paskirties punktas nepasiekiamas. Kai tik maršruto parinkimo įrenginys nustato, kad paketas
negali būti pristatyta į jo galutinį paskirties punktą, jis siunčia šį pranešimą pagrindiniam
![Page 13: File](https://reader035.vdocuments.net/reader035/viewer/2022081804/5448f5e4b1af9f10098b4724/html5/thumbnails/13.jpg)
kompiuteriui, sukūrusiam paketą. Pranešimas nurodo, ar kuris nors pagrindinis kompiuteris
yra nepasiekiamas, ar tinklas, prie kurio jis prijungtas, yra nepasiekiamas.
4. Peradresavimas. Kai pagrindinis kompiuteris kuria paketą nutolusiam tinklui, jis siunčia
paketą maršruto parinkimo įrenginiui, kuris nukreipia ją į jos paskirties punktą. Jei maršruto
parinkimo įrenginys nustato, kad pagrindinis kompiuteris neteisingai pasiuntė paketą, jis
turėjo būti pasiųstas į kitą maršruto parinkimo įrenginį, pastarasis naudoja peradresavimo
pranešimą ir nurodo pagrindiniam kompiuteriui pakeisti maršrutą.
5. Reikalingas fragmentavimas. Pagrindinis kompiuteris, kuriantis paketą, gali nustatyti bitą
antraštėje su nurodymu, kad fragmentavimas negalimas. Jei maršruto parinkimo įrenginys
nustato, kad toks paketas yra didesnis, nei tinklo, kuriuo ji turės būti persiųsta MTU, jis
siunčia fragmentavimo reikalingumo pranešimą atgal siuntėjui ir ištrina paketą.
Prie klaidų pranešimų ICMP nustato keturis informacinius pranešimus:
1. Aido reikalavimas / atsakymas. Aido reikalavimo pranešimas gali būti pasiųstas ICMP
programinei įrangai bet kuriame kompiuteryje. Pagal ateinantį aido reikalavimo pranešimą
ICMP programa turi išsiųsti ICMP aido atsakymo pranešimą. Atsakymas neša tuos pačius
duomenis, kaip ir reikalavimas.
2. Adreso šablono reikalavimas / atsakymas. Pagrindinis kompiuteris transliuoja adreso
šablono reikalavimą, kai vykdomas jo įkrovimas ir maršruto parinkimo įrenginys, gavęs šį
pranešimą, siunčia adreso šablono atsakymą, kuriame yra teisingas 32 bitų potinklio
šablonas, naudojamas tinkle.
ICMP pranešimų perdavimas
ICMP naudoja TP kiekvienam klaidos pranešimui perduoti. Kai maršruto parinkimo įrenginys
turi pasiųsti ICMP pranešimą, jis kuria TP paketą ir įdeda ICMP pranešimą į paketą. ICMP
pranešimas talpinamas TP paketo duomenų lauke. Po to paketas yra perduodama kaip įprasta.
Paveikslėlyje iliustruojamas dviejų pakopų paketavimas.
Pav. 1. Du paketavimo lygiai, kurie įvyksta, kai ICMP pranešimas yra pasiųstas. ICMP
pranešimas yra dedamas į paketą, kuris savo ruoţtu yra dedamas freimą perdavimui per fizinį tinklą.
ICMP pranešimas yra visada sukuriamas atsakant į paketą. Arba paketas sukėlė problemą (pvz.,
maršruto parinkimo įrenginys nustatė, kad paskirties punktas, nurodytas pakete, yra nepasiekiamas),
arba paketas neša ICMP reikalavimo pranešimą, į kurį maršruto parinkimo įrenginys sukuria
atsakymą. Pranešimo atgal į šaltinį siuntimas yra vykdomas tuojau pat, nes kiekvienas paketas turi
savo šaltinio adresą antraštėje. Maršruto parinkimo įrenginys išskiria šaltinio adresą iš ateinančio
paketo antraštės ir talpina adresą į paketo, nešančio ICMP pranešimą, antraštės lauką
DESTINATION.
![Page 14: File](https://reader035.vdocuments.net/reader035/viewer/2022081804/5448f5e4b1af9f10098b4724/html5/thumbnails/14.jpg)
Paketai, nešantys ICMP pranešimą, neturi specialaus prioriteto – jie nukreipiami kaip ir bet kuris
kitas paketas, su viena maţa išimtimi. Jei paketas, nešantis ICMP klaidos pranešimą pats yra
klaidos prieţastimi, klaidos pranešimas yra nesiunčiamas. Prieţastis turėtų būti aiški: projektuotojai
norėjo išvengti, kad internetas persipildys perduodamas klaidų pranešimus apie klaidų pranešimus.
Daug priemonių gauna informaciją apie internetą, pasiusdami zondus ir laukdami ICMP
atsakymo. Viena iš geriausių ţinomų diagnostinių priemonių, naudojamų su TCP/IP, yra programa
ping. Ši programa tikrina, ar duotas paskirties punktas gali būti pasiektas, siųsdama paketą į
nurodytą punktą ir laukdama atsakymo. Ping tada praneša apie zondavimo rezultatus, parašydama
kada paskirties punktas atsakė. Programa naudoja ICMP aido pranešimus. Vartotojas iškviečia
programą ir naudoja nutolusio kompiuterio TP adresą arba vardą. Ping siunčia paketą, kuris turi
ICMP aido reikalavimo pranešimą, į paskirties punktą, o pastarasis siunčia ICMP aido atsakymo
pranešimą. Po reikalavimo pasiuntimo, programa ping laukia atsakymo trumpą laiko tarpą. Jei
atsakymo nėra, programa pakartoja reikalavimą du kartus. Jei ir po pakartotinių reikalavimų nėra
atsakymo (arba ateina ICMP pranešimas, kad paskirties punktas nepasiekiamas), ping praneša, kad
nutolęs kompiuteris yra nepasiekiamas.
Fragmentacija
Tinklo technologijos (Ethernet ir kt.) nustato maksimalų perdavimo vienetą (MTU). MTU
nustato maksimalų paketo dydi, kuris gali būti perduotas tinkle. Kai programa perduoda paketą,
kuris viršija pagrindinio tinklo MTU, programa automatiškai skaldo paketą į maţesnes dalis ir
perduoda duomenis keliais paketais. IP-antraštės laukeliai "Identifikacija", "Vėliavėlės", ir
"Fragmentų perstūmimas" modifikuojami, nurodant, kad paketas yra fragmentas, ir nustatoma jo
surinkimo tvarka.
Kai priimantis kompiuteris gauna fragmentuotą IP-paketą, įsijungia antrinio surinkimo taimeris.
Visi fragmentai turi ateiti iki baigsis taimerio laikas, kitaip priimantis kompiuteris atmeta visus
fragmentus kaip negaliojančius.
Transportinis lygmuo
Transportinio protokolo paskirtis panaši į IP modulio paskirtį. Kaip jau išsiaiškinome TCP/IP
turi du transportinius protokolus: TCP ir UDP.
TCP - tai patikimas protokolas su loginiu sujungimu, naudojantis baitų srautą duomenų
perdavimui ir priėmimui. Ryšiui tinkle jis uţtikrina virtualų sujungimą. UDP - tai nepatikimas
protokolas be loginio sujungimo, duomenų perdavimui ir priėmimui naudojantis datagramas.
TCP/IP terminologijoje terminas "portas" palyginamas su terminu "IP-adresas", išskyrus tai, kad
TCP/IP asocijuoja portą greičiau su protokolu, negu su pagrindiniu kompiuteriu. Taip pat kaip, IP-
datagramos saugo siuntėjo ir gavėjo IP-adresą, transportiniai protokolai saugo siuntėjo ir gavėjo
portų numerius. Trumpiau sakant, tinklinės programos asocijuoja Internet protokolo portą su
konkrečia programa ar funkcija.
Kaip nepatikimas protokolas be loginio sujungimo UDP paprastai palieka duomenys portui.
UDP nepalaiko susijungimo tarp siuntėjo ir gavėjo. Priešingai, TCP - protokolas su loginiu
![Page 15: File](https://reader035.vdocuments.net/reader035/viewer/2022081804/5448f5e4b1af9f10098b4724/html5/thumbnails/15.jpg)
susijungimu. Jis palaiko susijungimą ryšio metu. Be to, TCP gali atidaryti kelis sujungimus su vienu
ir tuo pačiu portu.
Vartotojiškų datagramų protokolas (UDP)
UDP labai panašus į IP, nes abu yra nepatikimi protokolai, be loginio susijungimo, duomenų
perdavimui naudojantys datagramas. IP perduoda duomenis pagrindiniam kompiuteriui, tačiau tik
UDP gali maršrutizuoti duomenis keliems adresatams (tinklinėms programoms) viename
pagrindiniame kompiuteryje. UDP-antraštės struktūra daug paprastesnė nei IP-antraštės struktūra.
8 pav. UDP antraštės struktūra.
Duomenų perdavimo valdymo protokolas (TCP)
Tai daţniausiai naudojamas protokolas iš TCP/IP protokolų rinkinio. Kaip ir UDP, TCP
perdavinėja duomenys tarp tinklinio ir taikomojo lygmenų. Tačiau TCP daug sudėtingesnis nei
UDP, nes uţtikrina patikimą duomenų perdavimą baitų srauto pavidalu ir naudoja loginį
susijungimą. Kitaip sakant, TCP garantuoja, kad perdavimas vyksta, ir kad programa-adresatas
gauna duomenis teisingu eiliškumu.
Dėl to TCP naudoja patvirtinimus. Po to kai TCP susijungimo adresatas gauna perdavimą, jis
perduoda patvirtinimo pranešimą siuntėjui. Kas kart kai siuntėjas išsiunčia pranešimą, TCP įjungia
taimerį. Jei taimeris baigia skaičiuoti, kol TCP modulis gauna patvirtinimą, tai TCP automatiškai
pakartotinai siunčia duomenis.
Kadangi TCP duomenys perduoda nenutrūkstamu baitų srautu, bet vis tiek naudojasi IP-
datagramomis, tai TCP pranešimą geriau vadinti TCP-segmentu. TCP segmentas susideda iš TCP-
antraštės, TCP opcijų ir duomenų, perduodamų segmentu.
9 pav. TCP-segmento (arba pranešimo) struktūra.
3 lentelė. IP-antraštės laukų sąrašas.
Laukas Tikslas
Šaltinio portas Identifikuoja perduodančios programos protokolo portą.
Adresato portas Identifikuoja priimančios programos protokolo portą.
Eiliškumo
numeris Identifikuoja pirmą TCP segmento duomenų srities baitą.
![Page 16: File](https://reader035.vdocuments.net/reader035/viewer/2022081804/5448f5e4b1af9f10098b4724/html5/thumbnails/16.jpg)
Patvirtinimo
numeris Identifikuoja sekantį siuntėjo laukiamą baitą duomenų sraute.
Antraštės ilgis TCP-antraštės ilgis 32 skilčių ţodţiais.
Vėliavėlė URG Praneša priimančiam TCP-moduliui, kad lauke "Skubos rodiklis"
nurodyta, kad duomenys skubūs.
Vėliavėlė ACK Praneša priimančiam TCP-moduliui, kad lauke "Patvirtinimo numeris"
yra leistinas patvirtinimo numeris.
Vėliavėlė PSH Praneša priimančiam TCP-moduliui nedelsiant nusiųsti duomenis
programai-adresatui.
Vėliavėlė RST Prašo priimančio TCP-modulio nutraukti TCP susijungimą
Vėliavėlė SYN Nurodo priimančiam TCP-moduliui būtinybę sinchronizuoti eiliškumo
numerius.
Vėliavėlė FIN Praneša priimančiam TCP-moduliui, kad siuntėjas uţbaigė duomenų
perdavimą.
Lango dydis Praneša priimančiam TCP-moduliui baitų skaičių, kuriuos siuntėjas
nori priimti.
TCP kontrolinė
suma
Padeda priimančiam TCP-moduliui aptikti duomenų vientisumo
paţeidimus.
Spartumo
rodiklis Nurodo paskutinį skubių duomenų (TCP-duomenų srityje) baitą.
Opcijos
Paprastai naudojamas su opcija Maximum Segment Size (maksimalus
segmento dydis), nurodančia didţiausią segmentą, kurį laukia priimti
TCP-modulis.
Taikomasis lygmuo
Taikomasis lygmuo labiau paţystamas tiems, kurie kuria programinę įrangą, skirtą darbui tinkle.
Taikomasis lygmuo orientuotas į programas ir turi visas detales, liečiančias konkrečią programą.
Kitaip sakant, šis lygmuo sudaromas taip pat, kaip bet kokia programa. Kaip ţinia, programuotojas
gali padaryti taip, kad darbui tinkle programa siųstu duomenis ţemyn protokolu paketu.
Būtinumas kaip nors nurodyti, su kuriuo iš abonentų norima susisiekti, iškilo vos tik atsiradus
pirmiesiems ryšių tinklams. Jam tenkinti ir buvo kuriami ryšių protokolai.
Telegrafijoje šiuos protokolus daugiausia sudarė tam tikras skaičius telegramos antraštės formatą
apibūdinančių taisyklių. Vienareikšmis telegramos paskirties adreso ar adresų apibūdinimas –
pagrindinė sąlyga. Antraštėje taip pat buvo nurodomi telegramos gavėjui svarbūs siuntėjo
registracijos duomenys.
Atsiradus telefonijai ir jos komutuojamųjų grandinių tinklui prireikė kiek kitokios procedūros.
Pradţioje tą procedūrą tesudarė telefonistės pasisveikinimas ir jai pasakyta abonento, kuriam buvo
![Page 17: File](https://reader035.vdocuments.net/reader035/viewer/2022081804/5448f5e4b1af9f10098b4724/html5/thumbnails/17.jpg)
norima paskambinti, pavardė. Procedūros artimumas klientui vėlesniais automatizacijos metais
buvo beveik visiškai prarastas. Grieţtų taisyklių tebuvo vos keletas: galėjai nurodyti telefono
numerį, pavardę ar netgi profesiją. Pakako pasakyti: „Noriu paskambinti daktarui“, ir to pakako,
kad būtumei su juo sujungtas. Po šios procedūros, kurios esmė buvo bendravimas su tinklo
inteligencija, sekdavo trumpas dialogas, kurio metu skambinantysis ir jo pašnekovas patikrindavo
vienas kito identitetą. Tik tuomet prasidėdavo tikrasis pokalbis.
Šiuolaikiniuose automatiškai komutuojamų grandinių tinkluose panašios procedūros iš
bestruktūrių dialogų virto grieţtai apibrėţtais protokolais, kurie kartais dėl jiems priskirtų funkcijų
gausos tapdavo be galo sudėtingais. Ankstyvųjų telefono pokalbių modelį iki šiol galima atpaţinti
paprasčiausiame modernių komutuojamų grandinių modelyje. Bet terminai dabar yra visiškai
kitokie (ţr. 1 pav.).
Terminalo ir tinklo ryšį uţtikrinantys protokolai, skirti pageidaujamos jungties sudarymui, yra
vadinami žemesniojo sluoksnio protokolais. Tinklo viduje ryšiui tarp vienos telefono stoties ir
kitos taip pat reikalingas savas protokolas. Jis yra vadinamas tinklo protokolu. Abu šie protokolai
telefonijoje yra vadinami signalizacija.
Du terminalus (ţr. 1 pav.) rišantys protokolai yra vadinami aukštesniojo sluoksnio protokolais.
Juose esanti informacija perduodama tinklu iš vieno terminalo kitam skaidriai; telefono stotys jos
nė kiek nepaveikia.
Galiausiai dar yra komunikacija tarp vartotojų – svarbiausias viso tinklo darbo tikslas. Ją
sudarančiai informacijai nedaro įtakos nei tinklas, nei jo terminalai. Telefoninis vartotojų pokalbis
gali būti viso to geras pavyzdys.
Modeliu yra stengiamasi padaryti įvairias tinklo funkcijas lengvai atpaţįstamomis,
nepriklausomai apibūdinamomis ir, priskyrus kiekvienai po vardą, paprastai paaiškinamomis. Taigi
modelis turi padėti kurti protokolus. Deja, kartais iškyla pavojus, jog modelis gali tapti savitiksliu, o
kuriamojo protokolo logika ir efektyvumas maţiau svarbiu dalyku. Ne maţiau abejonių dėl modelio
tikslingumo atsiranda ir tuomet, kai jis yra kuriamas vienintelei ryšio rūšiai: duomenų paketų
perdavimui tarp kompiuterių, vietiniam tinklui ar ISDN. Bet tarptautiniai standartai nuėjo šiuo keliu
ir dabar jau sunku įsivaizduoti, kad ši tendencija kada nors galėtų pasikeisti. Mes čia kalbame apie
ISO (Tarptautinė standartizavimo organizacija) OSI (Open System Interconnection – atvirųjų
sistemų jungtis) modelį. OSI modelis ir atskiri ryšių protokolai ir bus aprašomi šiame straipsnyje.