Professional Documents
Culture Documents
Omogucava udaljenim aplikacijama da razmjenjuju enkapsulirane IP poruku preko UDPa, prosljeđuje poruku UDPu zajedno sa parom adresa
datagrame, bez potrebe da usppostavljaju konekciju.Pruza samo osnovnu soketa i informacijom o duzini podataka. UDP softver dodaje podacima
funkcionalnost potrebnu za razmjenu podataka na transportnom nivou. UDP zaglavlje i tako kreiran korisnicki datagram prosljeđuje IPu zajedno
Jedina bitna razlika između UDP datagrama i IP datagrama je sto UDP sa adresama soketa. IP dodaje svoje zaglavlje, postavljajuci vrijednost 17 u
sadrzi brojeve portova, sto omogucava predajnoj aplikaciji da se obrati polje za protocol, sto treba odredisnoj adresi da ukaze da podaci poticu od
tacno određenoj aplikaciji na odredisnoj masini.Ne bavi se kontrolom toka, UDP protokola. Tako formirani IP datagram se prosljeđuje sloju veze gdje
kontrolom gresaka i retransmisijom nakon prijema loseg datagrama. se pokuje u okvir a zatim isporucuje fizickom sloju koji kodira bitove
Paketi koji se razmjenjuu UDP protokolom nazivaju se korisnickim ili okvira u elektricne ili opticke signale i salje ih udaljenoj masini. Kada
UDP datagramima.Korisnicki datagram se sastoji od 8 bajtnog zaglavlja i poruka stigne do odredisnog hosta, fizicki sloj dekodira singal u niz bitova
podataka.Zaglavlje se sastoji od: koje prosljeđuje sloju veze. Sloj veze provjerava ispravnost primljenog
- SOURCE PORT – broj portova aplikacionog procesa koji je kreirao okvira i ako je ispravan odstranjuje svoje zaglavlje a enkapsulirani IP
poruku. Potreban kad udaljena aplikacija treba da vrati odgovor. Proces datagram predaje IPu. IP obavlja svoju provjeru datagrama i ako nema
koji vraca odgovor kopira broj iz polja Source Port u Destination Port gresaka, odstranjuje IP zaglavlje, a korisnicki datagram prosljeđuje UDPu
poruke koju vraca i tako obezbjeđuje da ce poruka biti isporucena pravoj zajedno sa IP adresama posiljaoca i primaoca. Ako je kontrolna suma
aplikaciji. ispravna UDP odstranjuje svoje zaglavlje i podatke sadrzane u korisnickom
- DESTINATION PORT – broj porta udaljenog aplikacionog procesa datagramu i zajedno sa adresom soketa posiljaoca isporucuje prijemnom
kojem je poruka namijenjena. procesu.
- TOTAL LENGTH – velicina UDP datagrama u bajtima, ukljucujuci i
zagljavlje i podatke. Minimalna duzina UDP datagrama je 8 bajta a
maksimalna je 216=65636 bajta. Međutim, zbog enkapsulacije u IP
datagramu, maksimalna duzina UDP datagrama je manja.
- CHECKSUM – 16 bitno polje koje se koristi za provjeru ispravnosti
poruke.
-Izbjegavanje zagusenja i linearno povecanje - da bi se izbjeglo zagusenje, KONTROLA ZAGUŠENJA U ZATVORENOJ PETLJI
prije nego sto nastupi , neophodno je usporiti eksponencijalni rast. TCP Mehanizimi za kontrolu zagušenja u zatvorenoj petlji pokušavaju da
koristi drugi algoritam tzv. Izbjegavanje zagusenja linearno, a ne prevaziđu zagušenje nakon što se ono pojavilo.
eksponencijalno, povecava velicinu prozora. Kad velicina prozora dostigne -Potisak(Back pressure)-ruter koji je postao zagušen, može tražiti od
granicu sporog starta, faza sporog starta se zavrsava, a pocinje linearna prethodnog rutera da redukuje brzinu slanja paketa. Ruter kojem je zahtjev
faza. U ovoj fazi, nakon prijema potvrde za sve segmenta iza prozora, upućen vremenom će i sam postati zagušen i uputiće identičan zahtjev sebi
velicina prozora zagusenja se poveca za 1. Linearno povecavanje traje sve prethodnom ruteru. Ovako, informacija o nastalom zagušenju se rekurzivno
dok se ne detektuje pojava zagusenja. prenosi unazad sve do primarnih izvora od koji se zahtjeva da smanje
-Detekcija zagusenja i multiplikativno smanjenje – nakon pojave opterećenje mreže. Nakon redukcije opterećenja , zagušenje će početi
zagusenja, velicina prozora zagusenja mora biti smanjena. Jedini nacin posebno da se otklanja.
kako predajnik moze naslutit da je u mrezi nastalo zagusenje jest potreba -Kontrolni (chocke) paket- paket koji se generiše u zagušenom ruteru i šalje
za retransmisijom segmenta. Do retransmisije moze doci iz 2 razloga: nazad izvornom hostu sa zahtjevom da redukuje brzinu slanja paketa.
Slucaj1 (vrijem RTO tajmera je isteklo) – istek vremena cekanja na Primjer chocke paketa je ICMP poruka za prigušenje izvora. Po prijemu
potvrdu, posljedica je gubitka segmenta ili potvrde i ukazuje sa velikom chocke paketa , izvor smanjuje brzinu slanja paketa odredištu na koje se
vjerovatnocom, na mogucnost zagusenja. Zato, u ovom slucaju TCP poruka odnosi. Kada chocke paketi prestanu dolaziti, izvor uspostavlja
drasticno reaguje: postavlja granicnu velicinu prozora na polovinu trenutne prvobitni intenzitet slanja paketa datom odredištu.
velicine prozora (sstresh=cwnd/2), postavlja na 1 velicinu prozora -Implicitna signalizacija- sam izvor, bez pomoći rutera može na posredan
zagusenja(cwnd=1), ponovo restartuje fazu sporog starta način detektovati izvjesne signale upozerenja o mogućem zagušenju u
-Slucaj2 (tri ponovljena ACK-a) – prijem 3 ponovljena ACK-a takodjer mreži i nakon toga smanjiti brzinu slanja paketa.
ukazuje na mogucnost zagusenja. Nek segment moze biti unisten, ali postu -Eksplicitna signalizacija- -ruter izložen zagušenju može poslati eksplicitan
su primljena 3 ACK-a, segmenti koji slijede su uspjesno prenijeti. Ova signal, npr. Postavljanjem nekog posebnog bita u paketima koje
situacija se naziva brza retransmija i brzi oporavak. U ovom slucaju prosljeđuje, kako bi pošiljaoca ili primaoca paketa obavjestilo o zagušenju.
reakcija TCP-a je blaža i ukljucuje sljedece korake: postavlja granicnu
velicinu prozora na polovinu trenutne velicine prozora (sstresh=cwnd/2),
postavlja velicinu prozora zagusenja na granicnu vrijednost(cwnd=sstresh),
vraca se na fazu izbjegavanja zagusenja
tom slucaju predajniku se mora postaviti ogranicenje koliko najvise okvira Rekurzivno i iterativno razrjesavanje upita
smije poslati nakon nekog okvira prije nego sto stigne potvrda ili Postoje 2 nacina obrade DNS upita: rekurzivno i iterativno razrjesavanje.
odbijenica tog okvira.To ogranicenje se naziva velicina prozora, a sama Rekurzivno razrjesavanje – kod rekurzivne obrade DNS upita klijen
strategija se naziva strategija klizeceg prozora.Kada ne bismo imali to ocekuje da konacni odgovor na svoj upit dobije direktno od servera kome je
ogranicenje, teoretski bi se moglo desiti da prijemniku treba neograniceno postavio pitanje. Ako je domen koji se trazi u nadleznosti DNS servera,
mnogo memorije.Protokoli ovog tipa nazivaju se Selective-Repeating- razrjesivac direktno dobija odgovor. Međutim, ako se radi o udaljenom
Protocol prokoli zbog toga sto prijemik izabira koje pakete posiljalac domenu a informacija o njemu nije dostupna na lokalnom DNS server,
ponovo treba poslati.Ukoliko je velicina prozora jednaka N nije potrebno server saljezahtjev nekom drugom serveru i ceka na odgovor. Ako je
okvire numerisati brojevima vecim od N nego je dovoljno koristiti brojanje odgovoran za ime domena, roditeljski server ce vratiti odgovor, inace ce
po modulu N.Nedostatak SRP prokola je potreba za memorisanjem okvira proslijediti upit sljedecem serveru. Kad je upit konacno razrjesen, odgovor
u prijemniku sto u nekim slucajevima nije prakticno.Alternativa koja se istom putanjom vraca unazad od serveera do servera, sve dok konacno
izbjegava potrebu za memorisanjem su protkoli Go-Back-N tipa.Kod ovih ne stigne do klijenta koji je izdao prvobitni zahtjev.
protkola prijemnik ocekuje da primi okvire samo u ispravnom Iterativno razrjesavanje – kod iterativnog razrjesavanja server koji nije u
redoslijedu.U slucaju da prijemnik primi okvir za koji utvrdi da nije mogucnosti da obavi i razrjesavanje ne obraca se u sljedecem serveru, vec
ispravan, on ce zahtijevati retransmisiju ne samo pogresno prenesenog nazad vraca IP adresu servera za koga smatra da moze razrjesiti upit.
okvira nego i svih okvira koje je posiljalac poslao nakon spornog Klijent ponavlja upit i salje ga ovom drugom serveru. Ako zna odgovor,
okvira.Prijemnik ce nakon toga ignorirati sve okvire koji mu pristuzu sve drugi server vraca klijentu odgovarajucu IP adresu, inace, klijentu vraca IP
dok ne primi ispravnu verziju spornog okvira.Protokoli ovog tipa su adresu sljedeceg DNS servera. Klijent se sada mora obratiti trecem serveru
ocigledno manje efikasni od SRP prokola ali se gubitak u efikasnosti moze itd. Opisani proces se naziva iterativnim zato sto klijent povalja ist upit ka
tolerirati ako vjerovatnoca pogresnog prenoosa okvira nije velika. vise servera.
TTL (Time-to-live)
TTL je vrijeme u sekundama koje definise koliko dugo infrmacija iz
odgovora moze boraviti u kes memoriji bilo kog servera koji dođe u njen
posjed. Poslije tog vremena, preslikavanje se smatra zajstarjelim, a svaki
sljedeci upit mora ponovo biti prosljeđen nadleznom serveru.
Datagram MTU
Paketi koji se prenose na IP nivou nazivaju se datagramima. Datagram je Svaki protokol sloja veze definise format svog okvira.
paket promjenljive duzine i sastoji se iz 2 dijela:zaglavlje i podaci. Ogranicenje koje uvijek postoji je maksimalna velicina polja za podatke u
Zaglavlje je podijeljeno na polja koja sadrze informacije bitne za rutiranje i okviru (tzv. MTU – Maximum Transfer Unit).
isporuku datagrama. Velicna zaglavlja je najmanje 20, a najvise 60 bajta. Kada se datagram enkapsulira u okvir, ukupna velicina datagrama mora biti
Prvih dvadeset bajtova u zaglavlju su fiksni(uvijek postoje), a opcioni dio manja od ove maksimalne velicine koja je difinisana ogranicenjima
je promjenljive duzine od 0 do 40 bajtova.Opis zaglavlja: nametnutim hardverom i softverom koji se koriste u mrezi.
VERS(verzija) – cetverobitno polje koje definise verziju IP protokola. Vrijednost MTU parametra se razlikuje od jedne do druge fizicke mreze: za
Aktuelna verzija je 4, kojoj u ovom polju odgovara binarna vrijednost Ethernet 1,500 a za PPP mreze 296.
0100. Postojanje broja verzije u svakom datagramu olaksava prelazak na Da bi se IP protokol ucinio nezavisnim od fizicke mreze, projektanti IP
novu verziju IP protokola. Trenutno je aktuelan prelazak sa IPv4 na IPv6 protkola su odlucili da maksimalna velicina IP datagrama bude jednaka
Header Length (duzina zaglavlja) – u samom zaglavlju predvidjeno je 65,535 bajta.
polje HLEN, koje definise duzinu zaglavlja izrazenu brojem 32-bitnih Međutim, za ostale fizicke mreze sa manjim MTU datagram se mora
rijevi. Min vrijednost je 5, a maks 15. podijeliti na manje cjeline kako bi mogao biti prenijet kroz mrezu.
Type of service(tip servisa) – polje velicnie jednog bajta koje definise kako Ova podjela se naziva fragmentacija.
ce datagram biti tretiran od strane rutera. Pojedinaci bitovi ovog polja
definisu prioritet drugima, nivo pouzdanosti i kasnjenja koje posiljaoc
datagrama ocekuje od rutera
Total length (ukupna duzina) – definise velicnu IP datagrama (zaglavlje i
podaci) izrazenu u bajtovima. Velicina ovog pola je 16 bita, sto znaci da
velicin datagrama moze biti maks 65535 bajta (2^16-1). Broj bajtova
podataka koji se prenose datagramom moze se odrediti tako sto ce se od
total length oduzeti velicina zaglavlja (4*HLEN)
Sljedeca tri polja zaglavlja IP datagrama se ne koriste u fragmentaciji: Identification – 16.bitno polje koje se koristi prilikom fragmentacije
- IDENTIFIKACIJA - 16 bitno polje koje identifikuje datagrame koji datagrama.
poticu iz istog izvora. Kombinacija izvorne IP adrese i vrijednosti polja za Flags(polje za markere) – trobitno polje koje se takodjer koristi priikom
identifikaciju na jedinstven nacin definise datagram kad on napusti izvorni fragmentacije datagrama
host. Fragment offset(pomak fragmenta) – 13 bitno polje koje se koristi prilikom
Da bi se obezbjedila jedinstvenost, IP protokol koristi brojac za fragmentacije datagrama
oznacavanje datagrama. Uvijek kad salje datagram, IP izvornog hosta Time to live(vrijeme zivota) –brojac koji se koristi da bi se ogranicili
kopira tekucu vrijednost ovog brojaca u polje za identifikaciju a zatim vrijeme zivota datagrama. Ako vrijme zivota dostigne 0 prije nego sto
uveca brojac za 1. Ako se datagram fragmentira, vrijednost polja za datagram stigne do odredista on se unistava.
identifikaciju se kopira u sve fragmente. Protocol- 8 bitno polje koje ukazuje na protokol viseg nivoa koji korisit
- FLAGSI (polje za markere) sadrzi 3 bita. Prvi bit je neiskoristen (nema usluge IP sloja. Ovo polje definise kome se isporucuje sadrzaj IP
definisanu namjenu). Drugi bit, DF, postavljen ne vrednost 1 znaci Don´t datagramaa
Framgment (ne fragmentiraj) i predstavlja instrukciju ruteru da datagram Header Check Sum (kontorlna suma zaglavlja) 16-bitno polje koje se
nije dozvoljeno fragmentirati. Postavljajuci DF na 1, posiljalac je siguran koristi za verifikaciju zaglavlja
da ce datagram stici do odredista ˝u jednom komadu˝. Ako ruter ne moze Polja Source IP address i destination IP address (adresa izvora i adresa
da prosledi datagram ni kroz jednu od raspolozivih fizickih mreza, ruter ce odredista)- sadrze 32-bitne mrezene (IP) adrese izvornog i odredisnog
unistiti datagram, a izvorno hostu ce poslati ICMP poruku sa obavestenjem hosta
o gresci. Bit DF postavljen na 0 oznacava da je datagram dozvoljeno
fragmentirati. Treci bit polja FLAGS, MF (More Fragments) postavljen na
vrednost 1 ukazuje da datagram nije poslednji fragment nekog veceg
datagrama; postoji jedan ili vise fragmenata koji slede. Ako bit MF ima
vrednost 0, to znaci da je ovaj datagram poslednji fragment nekog veceg
datagrama ili se radi o datagramu koji nije fragmentiran.
- FRAGMENT OFFSET (Pomeraj fragmenta) (13 bita) definise poziciju
ovog fragmenta u okviru celokupnog datagrama. Predstavlja pomak
(offset) podataka u prvobitnom datagramu izrazen u jedinicama od po 8
bajta.
3.Treci segment(tzv. ACK segment) šalje klijent. Ovim segmentom klijent interakcije izmedju klijenta i servera-Nakon sto klijent uspostavi TCP
potvrdjuje početni redni broj servera. Flag ACK je postavljen, a polje konekciju sa serverom na portu 110, server se prvi javlja slanjem ASCII
Acknowledgment Number sadrži redni broj prvog očekivanog bajta. ACK poruke. U toku faze autorizacije, klijent salje svoje korisnicko ime, a onda i
segment ne troši ni jedan redni broj, sadrži samo zaglavlje, ali ne i podatke. lozinku(komande USER i PASS).-Nakon uspjesne autorizacije, klijent
prelistava sadrzaj svog mailbox-a pomocu komande LIST. Server vraca
ZATVARANJE spisak poruka zajedno sa velicinama poruka. Spisak se zavrsava tackom.
KONEKCIJE TROSTEPNIM USAGLAŠAVANJEM Klijent, koji sada posjeduje spisak, preuzima poruke komandom RETR
navodeci redni broj poruke kao parametar. Klijent zavrsava fazu transakcije
Trostepeno usaglašavanje je uobičajeni način zatvaranja TCP konekcijeU komandom QUIT. Po prijemu ove komande server ulazi u fazu azuriranja,
ovom slučaju strana koja primi FIN segment, kao odgovor salje FIN+ACK kada iz korisnikovog mailbox-a brise sve poruke oznacene za brisanje.
segment, kombinujući tako u isti segmetn FIN i ACK segmente iz Nakon zavrsenog brisanja poruka, server vraca odziv i zatvara TCP
procedure četverostepenog usaglašavanja.Klijent preskače FIN-WAIT-2 konekciju.-
stanje i direktno prelazi u stanje TIME-WAIT. Nakon završene faze IMAP4--POP3 ne omogucava korisnicima da organizuju svoje e-mail
prenosa podataka klijent izdaje komandu close. Klijentski TCP šalje FIN poruke na mail serveru. Takodjer, ne pruza mogucnost korisnicima da
segment i prelazi u stanje FIN-WAIT-1.Po prijemu FIN segmenta, djelimicno preuzmu e-mail prije nego sto odluce da li ce ga preuzeti u
serverski TCP isporučuje serverskoj aplikaciji zaostale podatke zajedno sa cjelosti ili obrisati.-Protokol IMAP4 pruza sljedece dodatne mogucnosti:
informacijom da konekcija mora biti zatvorena. Nakon toga , serverski 1.korisnik moze provjeriti zaglavlje e-maila prije nego ga preuzme,
TCP prelazi u stanje CLOSE-WAIT odlaže slanje ACK segmenta na 2.korisnik moze pretrazivati e-mail u njemu zadati string karaktera prije
primljeni klijentov FIN sve dok od svoje aplikacije ne dobije zahtjev za nego ga preuzme, 3. korinsnik moze djelimicno preuzeti e-mail, 4. korisnik
pasivnim zatvaranjem.Kad serverska aplikacija izda komandu close, TCP moze da kreira, brise i preimenuje mailbox-ove na mail serveru, 5.korisnik
šalje FIN+ACK segment klijentu i prelazi u stanje LAST-ACK gdje čeka moze da kreira hijerarhijski organizovane mailbox-ove
na posljedni ACK. Kad primi posljedni ACK prelazi u stanje CLOSE