17. transportni sloj tcp/ip referentnog modela t · pdf file308 transportni sloj je kqu~na...
TRANSCRIPT
308
Transportni sloj je kqu~na karika u celokupnom konceptu arhitekture protokola.Protokoli ni`ih slojeva su lak{i za razumevawe i mawe slo`eni od transpo-rtnog protokola. Transportni protokol obezbe|uje uslugu prenosa podataka izme-|u krajwih korisnika (s kraja na kraj). Svaka aplikacija se mo`e projektovati takoda koristi direktno uslugu transportnog sloja bez posredstva sloja sesije i preze-ntacije. U ovom poglavqu analizira}emo detaqno transportni sloj TCP/IP refe-rentnog modela.
Najva`niji ciq transportnog sloja je da obezbedi efikasnu, pouzdanu i ekono-mi~nu uslugu svojim korisnicima, obi~no procesima na aplikacionom sloju 1. Da bidostigao ovaj ciq trasnportni sloj koristi usluge koje mu obezbe|uje mre`ni sloj.Hardver i/ili softver u okviru transportnog sloja koji obavqa te zadatke naziva setransportna celina. Transportna celina mo`e biti realizovana kao deo jezgra ope-rativnog sistema, kao poseban korisni~ki proces u biblioteci povezanoj sa mre`nomaplikacijom ili na mre`noj interfejsnoj kartici. Povezanost (logi~ka) mre`nog,transportnog i aplikacionog sloja prikazana je na slici 17.1.
Usluga koju pru`a transportni sloj veoma je sli~na usluzi koju pru`a mre`nisloj. Postavqa se pitawe ako je to tako za{to postoje i koriste se dva razli~itasloja? Za{to nije dovoqan samo jedan sloj 2. Razlog je jednostavan. Softver kojirealizuje usluge transportnog sloja nalazi se na ra~unaru samog korisnika, dok sesoftver koji realizuje usluge mre`nog sloja naj~e{}e nalazi na ruterima koji su kodra~unarskih mre`a {irih geografskih podru~ja deo opreme operatera. Time je iz-
17. Transportni slojTCP/IP referentnog modela
Slika 17.1 Veza mre`nog, transportnog i vi{ih slojeva (sesija ili sloj aplikacije)1 Ili sloju sesije ako je re~ o OSI referentnom modelu.2 WAN - Wide Area Network
309
Ra~unarske mre`e
nad mre`nog sloja postavqen jo{ jedan sloj - transportni koji, mo`e da poboq{akvalitet mre`nog servisa na mestu i prema zahtevu krajweg korisnika (aplikacije).
Kao {to je u 3. poglavqu istaknuto TCP i UDP su dominantni protokoli transpo-rtnog sloja. Oba koriste IP protokol na mre`nom sloju. TCP je protokol sa uspostavomveze i na taj na~in obezbe|uje pouzdan prenos bez obzira {to servis koji koristi IP ni-je pouzdan. Protokol UDP je bez uspostave veze i, za razliku od TCP protokola, nema ni-kakvih garancija da su podaci stigli na odredi{te. Aplikacije kao {to su sistem ime-na domena (DNS 1), ili protokol za nadzor i upravqawe (SNMP 2) koriste UDP protokol.
17.1 Usluge koje pru`a transportni sloj
Usluge koje obezbe|uje transportni protokol je prenos podataka s kraja na kraj natakav na~in da se {tite korisnici od detaqa vezanih za komunikacioni sistem kojikoriste (slika 17.2). Kategorije usluga koje se koriste u opisivawu usluga transportnogsloja su:
Y tip usluge,Y stepen usluge,Y prenos podataka,Y korisni~ki interfejsi,Y nadzor veze,Y ubrzana isporuka podataka,Y izve{taj o statusu,Y bezbednost.
Tip usluge Mogu}a su dva osnovna tipa usluge: sa uspostavom veze 3 i bez uspostave veze 4. Uslu-
ga sa uspostavom veze obezbe|uje uspostavqawe, odr`avawe i raskidawe logi~ke veze
Slika 17.2 Transportna celina i weno mesto u odnosu na susedne slojeve 1 Domain Name System2 Simple Network Management Protocol 3 Connection oriented4 Connectionless
310
17. Transportni sloj TCP/IP referentnog modela
izme|u transportnih korisnika. Ovakva usluga generalno je pouzdana i sadr`i mehani-zme kao {to su: kontrola toka, kontrola gre{ke i isporuka u pravilnom redosledu.
Stepen usluge Protokol transportne celine dozvoqava korisniku da specificira stepen uslu-
ge ili kvalitet usluge koji o~ekuje. Transportna celina }e poku{ati da optimiziraupotrebu mre`e i veze. Primeri usluga koje se mogu zahtevati su:
Y prihvatqiv nivo pogre{nih i izgubqenih podataka,Y po`eqno i maksimalno prihvatqivo ka{wewe,Y po`eqna i minimalna propusnost1,Y nivoi prioriteta.Jasno je da su mogu}nosti transportne celine da obezbedi zahtevane usluge ogra-
ni~ene mogu}nostima usluga koje nude ni`i slojevi. Nave{}emo neke od aplikacija ko-je zahtevaju specifi~ni stepen usluge:
Y protokol za prenos datoteka (FTP 2) mo`e da zahteva veliku propusnu mo} si-stema i visoku pouzdanost da bi spre~io ponovno slawe,
Y transakcioni protokoli (upiti baza podataka) mogu da zahtevaju mala ka{wewa,Y elektronska po{ta mo`e da zahteva vi{e nivoa prioriteta.Postoje ~etiri kategorije transportnog protokola:Y pouzdan protokol sa uspostavom veze,Y mawe pouzdan protokol bez uspostave veze,Y protokol za prenos govora koji zahteva blagovremeni prenos i prenos ispra-
vnog redosleda,Y protokol za prenos u realnom vremenu koji zahteva visoku pouzdanost i mi-
nimalna ka{wewa.
Prenos podataka Namena transportnog protokola je da obezbedi prenos podataka izme|u transpo-
rtnih celina. Podaci i upravq~ke informacije mogu se prenositi istim ili razli-~itim kanalom. Mogu}i je: potpuni dupleks, poludupleks i simpleks na~in rada.
Korisni~ki interfejs Precizno definisan korisni~ki interfejs nema potrebe da bude standardizo-
van. Boqe je da se u realizaciji prilagodi specifi~nostima okru`ewa u kome se rea-
1 Throughput2 File Transfer Protocol
Primitive Zna~ewe
Request - Zahtev Zahteva za odre|enom uslugom
Indication - Indikacija Indikacija o pokretawu aktivnosti za realizaciju usluge
Response - Odgovor Odgovor na primitivu indikacije
Confirm - Potvrda Potvrda inicijatoru o realizaciji za odre|ene usluge
Tabela 17.1 ^etiri klase primitiva servisa
311
Ra~unarske mre`e
lizuje. Veza izme|u transportne celine i korisnika posmatra se preko primitiva(operacija) i parametara koji se razmewuju. Ove primitive nala`u celini da izvr{ineku aktivnost, ili da izvesti o nekoj aktivnosti koju su parwak celine obavile. Je-dan od na~ina da se klasifikuju primitive je da ih grupi{emo u ~etiri klase (tabela17.1). Primitive koje se koriste su:
Y zahtev koji inicira transportni korisnik da bi pokrenuo odre|enu uslugu,Y indikacija koju obezbe|uje transportna celina da bi obavestila o pokretawu
aktivnosti za ostvarivawe odre|ene usluge,Y odgovor koji obezbe|uje transportni korisnik kao odziv na primitivu indi-
kacija,Y potvrda koja se vra}a transportnom korisniku po realizaciji tra`ene usluge.Na slici 17.3 prikazan je vremenski redosled ovih doga|aja.
Nadzor veze Kada je obezbe|ena usluga sa uspostavom veze transportna celina je odgovorna
za uspostavqawe i raskidawe (okon~awe) veze. Kada je simetri~na procedura obezbe-|ena korisnici sa oba kraja veze mogu da iniciraju komunikaciju. Asimetri~ne proce-dure omogu}avaju realizaciju simpleks veza.
Raskid veze mo`e da bude trenutan ili odlo`en. Kada je trenutan raskid veze ondapodaci koji su poslati, a jo{ nisu stigli na odredi{te, mogu biti izgubqeni. Odlo`enraskid spre~ava bilo koju stranu da prekine vezu dok svi poslati podaci ne stignu nasvoje odredi{te.
Ubrzana isporuka Predstavqa uslugu koja odgovara mehanizmu prekida i koristi se za prenos povre-
meno hitnih podataka (npr. alarm). Razlikuje se od usluge sa prioritetom koja do-dequje vi{i prioritet odre|enim resursima. Podaci sa tih resursa se prosle|ujubr`e od ostalih podataka.
Slika 17.3 Vremenski redosled primitiva
312
17. Transportni sloj TCP/IP referentnog modela
Izve{taj o stawu Izve{taj o stawu i parametrima je usluga koja daje mogu}nost transportnom kori-
sniku da obezbedi ili da sam dobije informacije koje se odnose na uslove transpo-rtne celine ili veze. Primeri statusnih informacija su:
Y karakteristike veze (npr. propusna mo}, sredwe ka{wewe...),Y adrese (mre`na, transportna),Y klasa protokola koja je u upotrebi,Y teku}e stawe ~asovnika,Y stawe protokola (u kontekstu dijagrama stawa),Y degradacija u odnosu na zahtevani stepen usluge.
SigurnostTransportna celina mo`e da obezbedi razli~ite usluge vezane za sigurnost
kao {to su:Y upravqawe pristupom koje se realizuje na lokalnom i udaqenom kraju,Y {ifrovawe/ de{ifrovawe podataka,Y rutirawe preko pouzdanih veza i ~vorova ukoliko su na raspolagawu.
17.2 Elementi transportnog protokola
Usluga transportnog sloja (transportna usluga) ime|u dve transportne celinerealizuje se pomo}u transportnog protokola.Transportni protokol sli~an je protoko-lu sloja veze opisanom u 11. poglavqu. Kod oba protokola, pored ostalog, impleme-ntirani su mehanizmi za kontrolu gre{ke, sekvencionirawe i kontrolu toka. Postojei zna~ajne razlike koje }emo objasniti u ovom odeqku (slika 17.4).
Razlike koje su na prvi pogled vidqive su slede}e:Y dva sloja veze komuniciraju preko fizi~kog kanala dok transportni slojevi
komuniciraju preko podmre`a,Y uspostavqawe veze preko fizi~kog kanala je jednostavno, dok je usposta-
vqawe veze preko podmre`a znatno slo`enije,Y podmre`a mo`e da zadr`ava podatke i da ih isporu~i sa zna~ajnim ka-
{wewem,Y kontrola toka i dodeqivawe memorijskog prostora za ~uvawe paketa (ba-
ferovawe) prisutni su i kod transportnog i kod sloja veze. Na sloju vezeobi~no se rezervi{e memorijski prostor odre|ene veli~ine za svaku odveza. Kada ram stigne, memorijski prostor za wegovo sme{tawe je raspo-lo`iv. Po{to na transportnom sloju postoji veliki broj veza koje treba op-slu`iti princip sa namenskim memorijskim prostorom je prakti~no nepri-hvatqiv.
Slo`enost transportnog protokola zavisi u zna~ajnoj meri od usluga mre`nogsloja. Organizacija ISO je definisala tri tipa usluga:
Y tip A za mre`ne veze sa prihvatqivim stepenom pogre{nih paketa i prihva-tqivim stepenom signaliziranih gre{aka,
313
Ra~unarske mre`e
Y tip B za mre`ne veze sa prihvatqivim stepenom pogre{nih paketa i nepri-hvatqivim stepenom signaliziranih gre{aka,
Y tip C za mre`ne veze sa