260
1/21 Ra~unarske mre`e (Elektronski Fakultet, Ni{) - Marko Mili~i} UVOD Razlozi za nastajanje ra~unarskih mre`a: Uvo|enje ra~unarskih mre`a  je bilo uslovljeno ~isto ekonomskim faktorom. Nekada su se na vi{e ra~unara jedne firme nalazili va`ni podaci. To je pove}avalo i tro{kove a i ~inilo sinhronizaciju vrlo te{kom. Postojala su ~itava odeljenja u velikim firmama koja su se bavila isklju~ivo sinhronizacijom podataka. Te`nja je bila da se samo na jednom mainframe  ra~unaru ~uvaju podaci, a ostali ra~unari da po potrebi pristupaju tim podacima preko MRE@E . To je delovalo kao >> san snova << danas je to STVARNOST. [ta omogu}avaju ra~unarske mre`e: Pored ovih ekonomskih razloga tako|e bitan razlog je mogu}nost deljenja hardverskih resursa ( {to se ponovo svodi na ekonomiju, ali nema veze  ) i to pre svega onih skupih kao {to su laserski {tampa~i, kopir-ma{ine itd. Dakle, za organizacije, mre`e omogu}avaju ekonomi~nije poslovanje a za pojedince one omogu}avaju lak pristup informacijama, razmenu informacija, komunikaciju me|u korisnicima i naravno Counter Strike  u svim igraonicama {irom planete. Jednom re~ju, danas pod ra~unarom uglavnom podrazumevamo ra~unar koji ima pristup mre`i dok su oni usamljeni tzv. >> elektronska ostvrva << ve} odavno u manjini. Slede}i grafikon prikazuje dinamiku razvoja interneta ili mre`e svih mre`a tokom godina. Trend koji vidimo opravdava ulaganja mnogih internacionalnih kompanija u istra`iva~ke delatnosti vezane za ra~unarske mre`e, zar ne?

Racunarske_Mreze_-_Marko_Milicic

  • Upload
    asmir

  • View
    72

  • Download
    0

Embed Size (px)

DESCRIPTION

racunarske mreze

Citation preview

Page 1: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 1/260

1/21 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

UVOD

Razlozi za nastajanje ra~unarskih mre`a:

Uvo|enje ra~unarskih mre`a  je bi lo uslovl jeno ~isto ekonomskim faktorom. Nekada

su se na vi{e ra~unara jedne firme nalazi l i va`ni podaci. To je pove}avalo

tro{kove a i ~ini lo sinhronizaci ju vrlo te{kom. Postojala su ~i tava odeljenja u

vel ik im firmama koja su se bavi la iskl ju~ivo sinhronizaci jom podataka. Te`nja je

bi la da se samo na jednom mainframe  ra~unaru ~uvaju podaci, a ostal i ra~unar

da po potrebi pristupaju t im podacima preko MRE@E . To je delovalo kao >> san

snova<< danas je to STVARNOST.

[ta omogu}avaju ra~unarske mre`e:

Pored ovih ekonomskih razloga tako|e bitan razlog je mogu}nost del jenja

hardverskih resursa ({to se ponovo svodi na ekonomiju, al i nema veze ) i to pre

svega onih skupih kao {to su laserski {tampa~i, kopir-ma{ine i td. Dakle, za

organizaci je, mre`e omogu}avaju ekonomi~ni je poslovanje a za pojedince one

omogu}avaju lak pristup informaci jama, razmenu informaci ja, komunikaci ju me|u

korisnic ima i naravno Counter Str ike  u svim igraonicama {irom planete. Jednom

re~ju, danas pod ra~unarom uglavnom podrazumevamo ra~unar koj i ima pristup

mre`i dok su oni usamljeni tzv. >>elektronska ostvrva<< ve} odavno u manjini .

S lede}i grafikon prikazuje dinamiku razvoja interneta i l i mre`e svih mre`a tokom

godina. Trend koj i vidimo opravdava ulaganja mnogih internacionalnih kompanija u

istra`iva~ke delatnost i vezane za ra~unarske mre`e, zar ne?

Page 2: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 2/260

2/21 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

[ta je to ra~unarska mre`a?:

Ra~unarsku me`u  ~ini skup au t onomn i h

  al i me|usobno spregnut ih ra~unara. Ta

sprega se ostvaruje na razl i~ i te na~ine. Mo`e se korist i t i bakarna `ica-telefonska

parica, koaksi jalni kabl, opt i~ka vlakna, radio-talasi , satel i t i i td. Ra~unar

komuniciraju me|usobno tako {to razmenjuju poruke. Uostalom zar tako ne

komuniciramo i mi ?

Ono autonomni  zna~i da su svi ra~unari u mre`i nezavisni t j . da nema odnosa

Master-Slave. Ovaj odnos sre}emo u organizaci j i procesora i peri feri ja. Tada je

uglavnom neki od peri fernih ure|aja Master  i za vreme svoje >>vladavine<< on

zahteva neke informaci je i l i ~ak kontrol i{e neki drugi ure|aj. Me|utim takav vid

me|usobne komunikaci je kod mre`a ne postoj i . Ovo prakt i~no zna~i, da nikako ne

mo`e jedan ra~unar da upravl ja drugim. Njihova me|usobna komunikaci ja se svod

na razmenu poruka! Ukol iko se u toj poruci nalaze upravl ja~ki podaci, onda mo`e

jedan da upravl ja drugima, al i ipak to je samo zahtev za odre|enim vidom

samoupravl janja a ne kontrola u pravom smislu te re~i .Ra~unarska mre`a ni je samo prosta mre`a kablova koja povezuje dva i l i vi{e

ra~unara, ona je ne{to vi{e od toga jer ima odre|eni stepen logike ugra|en u

svoju infrastrukturu, koja poma`e da komunikaci ja izme|u ra~unara bude

efikasni ja.

Pogledajte sada sl ike. Ako uvedemo dogovor da se mre`a sastoj i od ~vorova, vrlo

lako mo`emo zakl ju~i t i da se t i ~vorovi me|usobno razl ikuju po ne~emu —

jednostavno nisu svi ist i . Razl ikujemo ~vorove koj i komuniciraju i ~vorove koj i tu

komunikaci ju omogu}avaju. Ukol iko bi mre`u predstavi l i kao graf, u ~vorovim grafa

bi bi l i ra~unari i l i bi lo koj i ure|aji koj i komuniciraju i l i omogu}avaju tu

komunikaci ju. Dakle, razl ikujemo termine End System  i Intermediate System . End

System je ure|aj (ma{ina) koja komunicira a Intermediate System je ure|aj koj

omogu}ava tu komunikaci ju.

Page 3: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 3/260

3/21 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

End Systemi mogu bit i Kli jent i i l i Serveri , a Intermediate Systemi mogu bit i Router

i l i Bridgevi .

Ova sl ika predstavl ja vizuelni prikaz d efinic i je ra~unarske mre`e. Naravno, ova

sl ika je oslobo|ena svih detal ja da bi pokazala osnovnu ideju, a to je da jeosnovna uloga mre`e da prenosi informaci je.

Ova sl ika je malo detal jni ja i otkriva neke detal je koje prethodna ni je prikazivala.

Sa ove sl ike razl ikujemo pojmve kao {to su nd S y s t em  i I n t e rmed ia t e S y s t em   i pojmove kao {to je K l i j en t  il i Se r ve r .

Pode la ra~unarsk i h mre`a :

Generalno gledano, postoj i mnogo na~ina da se podele ra~unarske mre`e

Me|utim i same ra~unarske mre`e su samo jedna podvrsta mre`a uop{te. Mre`e

Page 4: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 4/260

4/21 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

treba shvat i t i kao graf u matematic i . ^vorovi tog grafa su ra~unari , a veze izme|u

~vorova su kablovi i l i govore}i op{t i je to je komunikacioni medijum. Slede}a sl ika

govori o mre`ama i tehnikama koje one koriste za omogu}avanje komunikaci je. Sa

sl ike se vidi da postoj i nekol iko vida komunikaci je.

Po in t- to-po in t komun i kac i j aPrvi vid je point-to-point  komunikaci ja i ona je analogna starinskim telefonskim

sistemima gde je jedan od u~esnika u komunikaci j i , morao da ru~no  uspostav

f iz i~ku vezu izme|u sebe i sagovornika. Ovo je, nadam se da svi prime|ujete , vrlo

primit ivan vid mre`ne komunikaci je. Kada razdalj ina me|u izvori{tem i odredi{tem

postane du`a od najdu`eg mogu}eg kabla, veza se uspostavl ja preko nekog tre}eg

ra~unara. Ovo je prikazano slede}om sl ikom.

Svaki ra~unar ima poseban komunikacioni kanal ka drugom ra ~unaru. Ako pak dva

ra~unara nisu direkto povezana oni moraju komunicirat i preko drugih ra~unara koj

su izme|u nj ih. Naravno, ne mora da budu fiz i~ki izme|u nj ih, ve} treba da budu

izme|u nj ih na logi~kom nivou(u logi~kom smislu) . Tada postoj i vi{e alternat ivnih

puteva. Upravo zbog ovoga, kod ovih mre`a su algori tmi za rut iranje  vrlo va`ni

naime performanse mre`e zavise od efikasnost i t ih algori tama.

Page 5: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 5/260

5/21 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Ukol iko se ova arhitektura korist i za komunikaci ju izme|u svih pojedina~nih ra~unra

u mre`i, kada sve ra~unare pove`emo na ovaj na~in, dobi}mo ~itavu hrpu  veza

kablova, {to je prikazano na slede}oj sl ic i .

Na toj sl ic i je prikazan postupak kreiranja jedne cele mre`e kori{}enjem principa

point-to-point povezivanja ra~unara. Ono {to defini t ivno najvi{e upada u o~i jebroj l ini ja koj i je potrebno sprovest i ( f iz i~ki ) . Ovaj broj je drast i~no ve}i od onoga

{to se smatra ekonomi~nim umre`avanjem. Dakle, logi~no je bi lo da se potra`

bolje re{enje koje }e nekako uspet i da postoje}e resurse dinami~ki rekonektuje

sklapa i preklapa. Ovo je bio povod za osmi{l javanje 3 switching tehnike:

Page 6: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 6/260

6/21 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

C i r cu i t -Sw i t ched Ne tworks 

Slede}i vid komunikaci je - Circuit-Switched Networks  je unapre|en u odnosu na

prethodni jer postoj i >>pametna<< infrastruktura koja nam omogu}ava da na nek

na~in adresiramo sagovornika i nakon tog adresiranja sagovornika, mre`a nam

obezbe|uje komunikacioni kanal. Ovaj vid komunikaci je je analogan modernom

telefonskom saobra}aju. Ovakve mre`e mogu bit i mnogo ve}e od predhodnih i to

uz manji utro{ak kablova, jer ~vorovi koj i me|usobno komuniciraju ne moraju bit

povezani svi sa svakim, ve} je potrebno da u grafu postoj i spre`no stablo i to jedovol jno za nesmetanu komunikaci ju me|u ~vorovima.

Vrat imo se za~as na sl iku na kojoj smo obja{l javal i point-to-point komunikaci ju.

Kako korisnic i koriste ovakvu mre`u?

Kori{}enje mre`e po~inje fazom konektovanja. Ova faza prakt i~no setuje digi talna

kola t j . ure|aje tako da se uspostavi f iz i~ka konekci ja izme|u izvori{ta i odredi{ta

Nakon {to se konekci ja ostvari , korisnik korist i mre`u, a kada zavr{i posao, onda

konekci ju treba oslobodit i (diskonektovat i ) . Ceo ovaj cik lus kori{}enja mre`e prikazan

je na sl ic i .

Page 7: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 7/260

7/21 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Pogledajmo sada slede}u sl iku

Razl ika u odnosu na predhodni na~in komunikaci je je u tome {to ovde umesto

stalnih veza imamo infrastrukturu koja omogu}ava re-povezivanje mre`nih veza u

zavisnost i od odredi{nog ra~unara sa koj im izvori{te `el i da komunicira. Dakle,

princip je pribl i`no ist i s tom razl ikom {to se pre nego {to komunikaci ja po~ne

veze unutar mre`e automatski prepove`u tako da omogu}e izvori{tu da komunicira

sa odre|enim odredi{tom. Dakle, ponovo se svodi na point-to-point mre`u, al i samogu}no{}u rekonfiguraci je u zavisnost i od zahteva. Razl ika me|u ova dva vida

komunikaci je se lepo mo`e uo~it i na slede}em dijagramu koj i predstavl ja tok jedne

komunikaci je.

Page 8: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 8/260

8/21 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Message Sw i t ched Ne tworks 

Message Switched Networks  je na~in komunikaci je bl i` i internet komunikaci j i nego

telefonskoj komunikaci j i . Treba shvat i t i , da se ovaj vid komunikaci je bazira na

razmeni cel ih poruka, a ne na bazi delova poruka, kao {to }e to bit i s lu~aj u

narednom vidu komunikaci je. Dakle, cela poruka je osnovna jedinica komunikaci je.

Na slede}oj sl ic i se vidi princip komunikaci je. Kada odrdi{te {al je poruku, ono je

po{alje lokalnom switch-u, a on kasi je {al je tu poruku dalje kroz mre`u, sve dok

ona ne st igne na odredi{te.

Na slede}oj sl ic i mo`e se videt i tok podataka u toku jedne komunikaci je kroz

message switched mre`u. Dakle, vidimo da se poruka prvo {al je do lokalnog

Page 9: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 9/260

9/21 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

switch-a i da se tamo snima u bafer. Zat im taj switch prosle|uje dalje poruku do

odredi{ta i l i do narednog switcha. Tako poruka uspeva da se domogne odredi{ta

indirektnim putem. Dakle, ovaj vid komunikaci je je za razl iku od prethodna dva

indirektan.

Vrat imo se ponovo na{em primeru.

Prethodna metoda je funkcionisala tako {to je posredno uspostavi la vezu izme|u

~vorova A i D a sve to preko ~vorova B i C. Me|utim, ponekad ovakva konekci jamo`e bit i vrlo duga~ka, pa je ovo neekonomi~no re{enje. Message switched

Networks funkcioni{u na principu primopredaje poruke. Dakle, poruka ide >> iz ruke

u ruku<< sve dok ne do|e do odredi{ta. Dakle, da bi poruka st igla iz ~vora A u

~vor D, ~vor A mora poruku prenet i ~voru B, on }e je prenet i ~voru C a ~vor C

~voru D. Izgleda da i ova metoda dobro radi zar ne?

Ovaj metod se naziva i Store forfard  metod jer svaki ~vor prvo sa~uva(store

poruku a zat im je prosledi ( forward) dal je.

Page 10: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 10/260

10/21 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Na ovoj sl ic i vidimo princip koj i sam malope opisao. Postoj i jo{ jedno pitanje na

koje nismo dali odgovor, a to je za{to ~vor uop{te tro{i memori ju i pamti poruku,

kada mo`e odmah da je prosledi dal je? Odgovor je vrlo prost : Kanal mo`e da

bude zauzet. Dakle, ukol iko je kanal kroz koj i ~vor B treba da po{alje poruku

zauzet, onda on mora da sa~eka i da po{alje poruku tek kada se kanal oslobodi.

Prime}ujemo da su zadr`avanja u ovoj tehnici druge prirode u odnosu na

zadr`avanja iz predhodne tehnike. Nekada je ~ekanje bi lo potrebno zbog kona~nog

vremena uspostavl janja veze, a sada je ~ekanje neophodno zbog toga {to neki od

kanala mogu bit i zauzet i , pa poruka mora >>~ekat i u redu<<. Ovo ni je kona~no

vreme ~ekanja, jer kanal mo`e bit i ve~no zauzet (naravno ovo je samo najcrnj

s lu~aj i retko se de{ava u praksi ) .

 Jo{ jedan zna~ajan izvor ka{njenja je du`ina same poruke. U ovoj tehnologij

poruke su mnogo du`e (ve}e) od poruka u predhodnoj vari jant i . Dakle, i kol i~nik

vel i~ ine poruke i brzine kanala ima zna~ajnu ulogu.

Packe t Sw i t ch ing Ne tworks 

Packet Switching Networks su mre`e koje komunikaci ju svode na komunikaci ju

paketa podataka. Dakle, poruka se prvo podeli na poruke, a zat im poruke putuju

kroz mre`u. Paket i putuju odvojeno i tek na odredi{tu se ponovo grupi{u i stvaraju

poruku. Naravno, prime}ujete da je ovaj vid komunikaci je najbl i` i , ako ne

 potpuno ist i , komunikaci j i koju sre}emo kod interneta. Na internetu, svaki ra~unar

mora da ima svoju adresu, koja ga jednozna~no odre|uje u mre`i. Adresiranje je

vrlo {irok pojam, tako da zahteva dodatno obja{njenje. Packet switch princip rada

je vrlo sl i~an malopre pomenutom principu. On vrlo lako mo`e bit i i lustrovan

slede}om ilustraci jom:

Page 11: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 11/260

11/21 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Ovde se poruka del i na pakete, koj i mogu putovat i kroz mre`u razl i~ i t im putevima

Va`no je napomenuti da u ovom slu~aju mogu uspostavi t i vi{estruke konekci je t j

sada se jedno izvori{te mo`e povezat i sa vi{e odredi{ta. Svaki od paketa sadr`i u

sebi i header u kome se nalaze potrebni podaci za putovanje paketa i njegovo

ponovno sklapanje u poruku kada st igne do odredi{ta.

Vrat imo se ponovo na{em primeru:

Postoje dve vrlo bitne stavke koj i se karakteri{u kao dobra strana ove tehnike.

Prvo, paket i} i su mnogo manji od cel ih poruka, tako da je nj ihovo vreme

slanja mnogo manje. Pored toga treba naglasit i da kroz jedan ist i kana

mogu prot icat i paket i koj i pot i~u od razl i~ i t ih poruka, i to na primer prvo

pro|u dva paketa poruke 1 pa onda 3 paketa poruke 2 pa onda opet

nekol iko paketa poruke 1 i tako dalje. Ovim se ravnopravno raspodeljuje

~ekanje na pristup kanala.

Druga vel ika prednost ovog na~ina komunikaci je je paralelnost . Za vreme

dok paket 1 putuje od ~vora A do ~vora B, neki drugi paket neometano

putuje od ~vora B do ~vora C. Ovim se post i`e izuzetno vel ika efikasnost

Page 12: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 12/260

12/21 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Na kraju mo`emo da sastavimo preglednu tabelu koja govori o na~inima za

komunikaci ju o koj ima je ovde bi lo re~i .

Pored ovih razl i~ i t ih vidova komunikaci je, u okviru istog principa komunikaci je

razl ikujemo simplex, unicast i mult icast mogu}nost i komunikaci je

Adres i ran je

Svi ent i tet i u ra~unarskim mre`ama moraju bit i na neki na~in jednozna~no

odre|eni, da bi bi lo mogu}e da podaci namenjeni nekom od ent i teta dospeju do

njega. Ovo jednozna~no ozna~avanje ne re{ava sve probleme ali re{avanjem

jednozna~nost i dolazimo u si tuaci ju da uop{te re{avamo problem komunikaci je

Drugim re~ima, da bi re{i l i komunikaci ju izme|u nekih ent i teta, moramo pre svega

Page 13: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 13/260

13/21 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

jednozna~no odredit i u~esnike u toj komunikaci j i a zat im se bavit i komunikaci jom

Nadam se da sam bio jasan.

Ovo jednozan~no odre|ivanje se u tehni~kom svetu obi~no naziva >>adresiranje<<

Svaki ~vor u mre`i obi~no ima bar jednu adresu, al i mo`e imati i vi{e adresa. Na

primer, svi f iksni telefoni u nekoj zemlj i , al i i u svetu su jednozna~no odre|en

telefonskim brojem. Me|utim, ukol iko imate i mobilni telefon u ku}i, onda je va{a

ku}a adresirana sa dve adrese. Prva adresa je broj f iksnog telefona, a druga

adresa je broj mobilnog telefona.

Adrese su obi~no u numeri~kom obliku kao na primer telefonski brojevi . Ovakvo

adresiranje je zgodno jer ma{ine mnogo bolje( lak{e) pamte brojeve nego re~i i l

re~enice. Me|utim, to ni je slu~aj sa l judima. Mnogi l judi dosta lak{e pamte imena

u odnosu na brojeve. Naravno, l judi se me|usobno ne zovu po jedinstvenom

mati~nom broju, ve} po imenima. Ovde nastaje problem. Ra~unari bol je razumeju

brojeve a l judi bol je razumeju imena !?! Sve u svemu, name}e se logi~no re{enje,

da je potrebna neka komponenta koja }e ra zumeti i l jude i ra~unare, a koja }e bit

izmenju nj ih. Ta komponenta je Name Server . Name Server je mre`ni resurs koj

sadr`i spisak imena i spisak numeri~kih adresa koj i odgovara spisku imena. Ovim

se post i`e da u Name Serveru imamo i imena i brojeve i to tako organizovane da

se ta~no zna koj i broj odgovara kom imenu i obratbno.

Vrs te ~vo rova mre`e :

Ukoliko ~vorovi u mre`i omogu}avaju korisniku da pristupi mre`i t j . da komunicira

koriste}i mre`u, onda se takav ~vor naziva End System  i l i Host . Me|utim, ~vorov

koj i nemaju dodirnih ta~aka sa korisnic ima i koj i jedino {to rade je primanje

prosle|ivanje poruka iz jednog u drugi ~vor zovu se Intermediate System . Naravno

neki ~vorovi mogu bit i i End System i Intermediate System u istom trenutku. Zavisno

od funkci je koju trenutno obavl ja, ~vor }e bit i i l i ES i l i IS.

Page 14: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 14/260

14/21 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

^vorovi su me|usobno povezani l inkovima t j . vezama. Ruta  i l i put predstavl ja vezu

me|u ~vorovima a proces rut iranja  je proces nala`enja odgovaraju}eg skupa

puteva kroz koj i treba prote}i informaci ja, da bi do{la od izvora do odredi{ta.

Me|utim, ovaj vid komunikaci je ni je jedini mogu}i. Kasni je }ete videt i kako se vr{

komunikaci ja u vidu EMISIJE — broadcast .

Na~ in i p renosa poda taka (Un i cas t , mu l t i cas t , b roadcas t )

Postoj i nekol iko podela ra~unarskih mre`a. Prva podela se odnosi na tehnologi ju

prenosa ( t ransmisi je) a druga na samu vel i~ inu  ra~unarske mre`e. Naravno

podelama nikad kraja pa i malo znat i`el jni j i ~ i talac mo`e mre`e podeli t i minimum

po jo{ dva kri teri juma. [to se t i~e prvog kri teri juma (tehnologi ja prenosa) mre`e

delimo na: Broadcast mre`e (emisione) i Unicast i Mult icast mre`e.

[to se ti~e Broadcast mre`a, kod nj ih postoj i samo jedan komunikacioni kanal na

koj i su spregnut i svi ra~unari u mre`i. Ra~unar koj i generi{e poruku {al je je na

komunikacioni kanal, a u zaglavl ju poruke je adresa primaoca. Tako emitovana

poruka dolazi do svih ra~unara. Svaki ra~unar primi tu poruku i procesira je. Ako

zakl ju~i da ni je za njega odbaci je je a ako je za njega zadr`ava je. Ovakav na~in

umre`avanja se koristu na manjim geografskim podru~i j ima. Pretpostavl jate, da jeovo ne ba{ dobro re{enje, jer se kapacitet kanala ne korist i racionalno. Na

slede}oj sl ic i dat je pregled na~ina komunikaci ja.

Page 15: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 15/260

15/21 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Unicast — Point to point ,   na~in transmisi je podataka podrazumeva takav na~in

transmisi je gde imamo ta~no jednog po{i l jaoca i ta~no jednog pri jemnika. Ova

sistem transmisi je odgovara klasi~nom telefonskom razgovoru!

Mult icast na~in transmisi je podrazumeva da sada mo`emo imati vi{e izvori{ta, a

tako|e mo`emo imati i vi{e odredi{ta. Me|utim, regularna je i si tuaci ja kada

uop{te nemamo odredi{te. Dakle, mult icast tehnika je tehnika pri kojoj se jedan

paket podataka simultano prenosi do ve}eg broja odredi{ta. Ovakav na~in slanja

podataka bukvalno je spasao industr i ju kablovske televiz i je, jer kada bi cable TV

provajder svakom svom kl i jentu posebno slao video signal, za vrlo kratko vreme

mre`a bi se zagu{i la i posao bi propao. Moramo obavezno napomenuti da TCP

protokol ne podr`ava mult icast transmisi ju i da za te svrhe treba korist i t i UDP

protokol. Iz ovog ugla mult icast i broadcast nam deluju potpuno isto me|utim to

ni je tako. Kod broadcast transmisi je svi ~vorovi primaju istu informaci ju, a kodmult icast transmisi je samo ~vorovi koj i su na neki na~in >>naru~i l i<< informaci ju

primaju pakete podataka. ^vorovi u toku vremena mogu da menjaju mi{l jenje. Na

primer, ako ja sedim ku}i i menjam TV kanale to zna~i da ja menjam informaci je

koje sam naru~io. Upravo zbog ovog razloga ruteri imaju veoma vel iku ulogu u

mult icast transmisi j i i moraju imati >>pametne<< algori tme da bi se minimiziralo

dupliranje poruka i da bi svaki paket naj jekonomi~ni je korist io mre`ne resurse. Sve

u svemu mult icast transmisi ja ekonomi~ni je raspola`e kapacitetom komunikacionog

kanala. NPR Iskori{}enje/optere}enje kanala za unicast je reda vel i~ ine N a zamult icast 1/N. Danas ve}ina LAN mre`a podr`ava mult icast re`im transmisi je.

Page 16: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 16/260

16/21 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Smer komun i kac i j e ( s imp lex , dup lex , f u l l d up lex )

[to se t i~e smera komunikaci je  t j . pi tanja da l i konkretni komunikacioni kana

podr`ava dvosmernost komunikaci je i u kojoj meri , postoje Simplex , half Duplex 

Ful l Duplex mre`e.

Simplex je jednosmerna komunikaci ja. Na primer to je kao slu~aj kada gledamo TV

program. Mi nemamo nikakvu interakci ju sa programom jednostavno primamo

podatke.

Half Duplex  je t ip komunikaci je gde informaci je mogu da idu u oba smera, al i ne

istovremeno. Primer je telefonski razgovor. Prvo mi ka`emo ne{to, pa onda ~ekamo

odgovor.

Ful l Duplex  je t ip komunikaci je koj i podr`ava komunikaci ju u oba smera

istovremeno. Primer za ovaj vid komunikaci je je >>sva|a<< preko telefona, kada

niko nikog ne slu{a i obojica pri~aju u isto vreme. Dakle, dvosmerna komunikaci jai to u isto vreme.

Pode la po ve l i ~ i n i ( LAN , MAN, WAN, INTERNET )

Drugi kri teri jum: (vel i~ ina)

Mult ira~unari : Udaljenost procesora mora bit i manja od jednog metra t j

ure|aji se nalaze u jednom ku}i{tu.

LAN  mre`e (Local Area Network) . Udaljenost mo`e bit i od jednog do

nekol iko deset ina metara. Takve mre`e su naj~e{}e mre`e u nekoj zgradi

LAN mre`e su po pravi lu emisione (broadcast ) mre`e i imaju vel ike brzine

prenosa podataka reda 10-100 Mb/s. [to se t i~e topologi je, one mogu bit

organizovane u vidu niza (BUS ) i l i u vidu prstena (RING ) . U ovakvim mre`ama

je problem da se spre~i da vi{e ra~unara istovemeno {al je poruku

Standardi po koj ima se vr{i razmena poruka su IEEE 802.3 i IEEE 802.5

Page 17: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 17/260

17/21 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

MAN  mre`e (Metropoli ten Area Network) . To su gradske mre`e koje za

razl iku od LAN mre`a mogu da pokrivaju i povr{inu ve}u od 10 km u

pre~niku. I one uglavnom koriste broadcast metodu komunikaci je. Ovde se

koriste dve jednosmerne magistrale umesto jedne dvosmerne. Dakle, sada

imamo BUS-A i BUS-B. Ovaj standard se zove DQDB  (D is tr ibuted Queue

Dual Bus). Ako BUS-A slu`i za slanje podataka onda }e izvesno BUS-B

slu`i t i za pri jem podataka. Ra~unar koj i ho}e da po{alje poruku korist

razl i~ i tu magistralu u odnosu na to kom susedu {al je.WAN  mre`e su naj~e{}e Point-to-Point  t ipa. WAN objedinjuju vi{e LAN

mre`a. Razl ika u odnosu na MAN je {to je MAN samo vel ik i LAN a WAN je

skup nekol iko LAN mre`a. Ove mre`e obuhvataju kont inente, zemlje, i td . . .

INTERNET   mre`a je mre`a svih mre`a i ona povezuje sve mre`e u jedan

sistem.

Javne i p r i va tne mre`e

Tre}i kri teri jum: (privatnost )

Prema na~inu pristupa sve mre`e se dele na:

 Javne

Privatne

P r va ra~unarska mre`a

Distr ibuirani sistemi i mre`e :

Razl ika izme|u distr ibuiranih sistema  i mre`a  je su{t inska. Kod distr ibuiranihsistema imamo samo jedan ra~unar ~i ja je arhitektura geografski distr ibuirana, a

kod mre`a imamo nekol iko ra~unara.

Prva mre`a koja je projektovana nosi la je ime ARPANET. Ona je za ra~unare koj

komuniciraju korist i la termin HOST. Alternat ivni termin je bio End-System. Ovo je

bi la izuzetno prosta mre`a, al i je predstavl jala izuzetan pomak u ra~unarsko

industr i j i , jer je po prvi put povezala ra~unare koj i su do tada bi l i usamljena

>>elektronska ostrva<<.

Page 18: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 18/260

18/21 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Ra~unar A   Ra~unar B

Aplikativniproces

Aplikativniproces

Komunikac.Interfejs

Komunikac.Interfejs

Komunikaciona mre`a

Komunikacija

Komunikacija

Korisnik-korisnik 

Ra~unar-ra~unar

 

Ova sl ika predstavl ja princip rada mre`e t j . princip komunikaci je dva ra~unara

Aplikat ivni procesi razmenjuju poruke, a komunikacioni interfejs slu`i da bi im u

tome pomogao t j . da bi im to omogu}io. Na slede}oj sl ic i vide}emo kako

funkcioni{e komunikaciona mre`a. Koja ima za ci l j da fiz i~ki uspostavi vezu

prosle|ivanjem poruka od jednog do drugog ra~unara

Host

Host

Ruteri ili (IMPs)InterfaceMessageProcessors

 

HOST-ovi se dele na kl i jente  i servere . Apl ikat ivni proces koj i se izvr{ava na

kl i jentu zahteva neku uslugu od aplikatvnog procesa koj i se izvr{ava na serveru

Kli jet-server aplikaci je  su distr ibuirane aplikaci je ( jedna ista aplikaci ja se nalazi

na jednom i na drugom ra~unaru. Na primer, danas najpopunarni j i servis interneta - WEB - zasnovan je na ovom principu. Neki sajt nalazi se na nekom serveru, a

nama treba neki kl i jent da bi smo pristupi l i sadr`aju tog sajta. Kl i jent je obi~no

internet explorer a server je neki od poznat ih web servera (Appache, I IS , i td. . )

Page 19: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 19/260

19/21 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Komunikaciona podmre`a:

Komunikaciona podmre`a mo`e da bude:

Sa komutaci jom kola

Sa komutaci jom poruka

Sa komutaci jom paketa

O ovome je ve} vo|ena rasprava !

Da tag ram i v i r t ue ln i kana l

Na osnovu toga kako se prosle|uje paket ? , dele se na:

Datagram mre`e i

One koje koriste virtuelni kanal (Virtual Chanel)

Kod datagram mre`a  svaki paket u sebi sadr`i punu adresu izvori{ta i odredi{ta

(s l i~no kao pismo). Paket i koj i predstavl jaju delove iste poruke mogu putovat

razl i~ i t im putevima do odredi{ta, pa ~ak i da u razl i~ i tom redosledi st i`u na

odredi{te.

Kod modela sa virtuelnim kanalom  pre po~etka razmene informacionih paketa je

slanje uprvl ja~kih paketa i izvr{ava se neka handshake  procedura kojom se

uspostavl ja veza izme|u korisnika ( to je taj vir tuelni kanal) . Upravl ja~ki paketsadr`i punu adresu izvori{ta i odredi{ta. Na osnovu nje se uspostavl ja virtueln

kanal izme|u izvora i odredi{ta preko rutera. Ovaj proces se zove i t rasiranje puta

Posle toga se {al ju informacioni paket i i oni u sebi ne  sadr`e adresu izvori{ta

odredi{ta ve} samo broj vir tuelnog kanala. Ovaj trasirani put mogu da koriste

drugi korisnic i . Ovde je redosled primljenih i poslanih paketa ist i zato {to se korist

is t i put. Sa~uvan redosled je jedna od najve}ih prednost i ovog modela

komunikaci je. Ovom modelu komunikaci je odgovra telefonksa komunikaci ja za

razl iku od datagram mre`a koje su ekvivalent komunikaci j i putem pisama. Primer

za datagram mre`u je upravo INTERNET a za Virtual Chanel model je X.25. ATM,

Frame relay.

Page 20: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 20/260

20/21 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Konekc ion i i beskonekc ion i se r v i s

Sa stanovi{ta aplikat ivnog procesa usluge koje mu pru`a mre`a su:

Konekcioni servis (Connect ion oriented)

Bezkonekcioni servis (connect ionless)

Konekcioni servis . Mre`a obezbe|uje aplikaci j i savr{en komunikacioni kanal, poruka

st i`e bez gre{aka a konekcioni servis se postavl ja uz pomo} neke handshake

procedure sa 3 koraka. Ovde je obezbe|ena detekci ja gre{ke, kontrola toka i td. .

Kontrola toka obezbe|uje se tako {to se svaka poruka koja se po{alje, potvrdi da

je dobro st igla na odredi{te.

Na aplikaci j i je da odabere na~in komunikaci je (connect ionless i l i connect ion

oriented). Ovo se odre|uje jo{ u fazi projektovanja same aplikaci je.

Bezkonekcioni servis . Ovde nema nikakvih garanci ja o pri jemu poruke al i je zato

prenos mnogo br`i . Ovakav na~in komunikaci ja se korist i kod video-konferenci jaOvo je mogu}e zato {to i gere{ke u sl ic i ipak ne ut i~u na rad aplikaci je (malo

}emo slabi je videt i sagovornika al i je u principu sve OK).

Virtual channel . Uvek pru`a konekcioni servis apl ikat ivnom procesu a datagram

model mo`e da pru`i i connect ionless i connect ion oriented servis.

Komunikaci ja izme|u ra~unara:

Da bi komunikaci ja izme|u udaljenih ra~unara bi la ostvariva treba nam

odgovaraju}i software  i hardware . Rani je je komunikaci ja bi la mogu}a izme|u ist ih

t ipova ra~unara NPR. {ezdeset ih godina SNA (System Network Architecture) koju je

predlo`io IBM. Firma DEC je predlo`i la DNA (Data Network Architecture) . Komisi ja

za ISO standardizaci ju je definisala kako treba da se projektuje software

hadrware koj i }e omogu}it i komunikaci ju izme|u ra~unara bez obzira koje

proizvo|a~ ra~unara. Takav software ima hi jerarhi jsku organizaci ju pri ~emu svak

nivo obavl ja precizno definisani skup funkci ja. Funkci je koje obavl jaju ovi nivo

mogu bit i podeljeni u dve grupe:

Mre`no ori jent isane(zavisne) funkci je (zavise od strukture komunikacione

mre`e)

Aplikat ivno ori jent isane funkci je (zavise od t ipa mre`nih aplikaci ja)

Page 21: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 21/260

21/21 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Uvod ............................................................................................................................................................................... 1

Podela ra~unarskih mre`a:....................................................................................................................................3

Point-to-point komunikacija ..................................................................................................................................4

Circuit-Switched Networks......................................................................................................................................6

Message Switched Networks ................................................................................................................................8

Packet Switching Networks .................................................................................................................................. 10

Adresiranje.............................................................................................................................................................. 12

Vrste ~vorova mre`e: ............................................................................................................................................ 13

Na~ini prenosa podataka (Unicast, multicast, broadcast) ............................................................................. 14

Smer komunikacije (simplex, duplex, full duplex) ........................................................................................... 16

Podela po veli~ini (LAN, MAN, WAN, INTERNET).............................................................................................. 16

 Javne i privatne mre`e......................................................................................................................................... 17

Prva ra~unarska mre`a........................................................................................................................................ 17

Datagram i virtuelni kanal ................................................................................................................................... 19

Konekcioni i beskonekcioni servis ..................................................................................................................... 20

Page 22: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 22/260

1/11 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

OS I Open Sys tem In te r connec t i on)

OSI je slojevi t i model mre`ne komunikaci je. [to je ve}i broj slojeva u OSI strukturi

to je komunikaci ja pouzdanija al i je arhitektura glomaznija i slo`eni ja. OSI mode

omogu}ava standardno povezivanje ra~unara na mre`u. Hijerarhi jski je

organizovan. Funkci ja jednog nivoa je uvek ista i to takva da uvek treba da

obezbedi usluge nivou koj i je iznda njega a korist i usluge nivoa (slojeva) koj i je

neposredno ispod njega. OSI je standard koj i je kona~no standardizovao najbol ja

re{enja vode}ih kompanija iz oblast i ra~unarskih mre`a. Kao posledica ovestandardizaci je, projektant ima mre`a je bi lo mnogo lak{e da rade jer ta~no znaju

interfejs svakog nivoa, {to im olak{ava da razl i~ i ta re{enja za razl i~ i te nivoe ipak

budu me|usobno kompatibi lna. U OSI modelu postoj i sedam ovakvih nivoa( leyer) :

Apl ikat ivni

Prezentacioni

Nivo sesi je

 Transportni

Mre`ni

Nivo veze

Fizi~ki

Ovih sedam nivoa mogu bit i grupisat i u neke kategoije:

Fiz i~ki , Nivo veze i Mre`ni (mre`no zavisni nivoi )

 Transportni , Nivo sesije, prezentacioni i apl ikat ivni (apl ikat ivno zavisni )

Page 23: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 23/260

2/11 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Transportni nivo ima za zadatak da {t i t i protokole vi{ ih nivoa detal ja funkcionisanja

i organizaci je komunikacione podmre`e. Sve promene u strukturi podmre`e kao

ograni~enja, transportni nivo ~ini transparentnim za sve ostale nivoe.

Komun i kac i ja u OS I mode lu

Funkci je svakog nivoa su formalno definisane preko p rotokola odgovaraju}eg nivoa

Protokolom se pored funkci ja defini{u i pravi la konverzaci je koj ih se moraju

pridr`avat i u~esnici . Nj ime je definisan format i sadr`aj poruka koje se razmenjuju.

Svaki nivo u protokolnoj hi jerarhi j i pru`a sve definisane usluge za slede}i nivo.

Zadatak svakog nivoa je da obezbedi izvr{enje jednog i l i vi{e od slede}ih

zadataka:

Kontrola gre{ke  (Error Control ) obezbe|uje da logi~ki komunikacioni kanal

budu pouzdanij i .

Kontrola toka  (Flow Control ) obezbe|uje regulisanje brzine prenosa izme|u

u~esnika u komunikaci j i .

Segmentiranje i Reasembliranje  poruka proist i~e iz ograni~enja koje

name}e komunikaciona podmre`a. Podrazumeva del jenje poruke na

blokove iste vel i~ ine (segmentiranje) a na pri jemnoj strani reasembliranje

(sastavl janje poruke iz del i}a).

Page 24: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 24/260

3/11 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Mult ipleksiranje i demult ipleksiranje  poruka. Vi{e aplikat ivnih procesa del

ist i komunikcioni kanal ako je kapacitet kanala dovol jno vel ik i da : :primi:

informaci je. U izvornoj strani se odvi ja mult ipleksiranje a u odredi{no

demult ipleksiranje. Me|utim, ako neki proces zahteva nekol iko

komunikaciona kanala, onda je si tuaci ja obrnuta.

Uspostavl janje veze  je definisanje handshake  procedure kojom se defini{e

kako se uspostavl ja veza izme|u jednakih nivoa.

Odredi{teIzvor

4

3

2

1

4

3

2

1

Protokol nivoa 4

Protokol nivoa 3

Protokol nivoa 2

Protokol nivoa 1

Hijerarhija sa 4 nivoa 

V i r t ue lna komun i kac i ja :

Svaki nivo ima ut isak da direktno komunicira sa jednakim (njemu ekvivalentnim

nivoom druge ma{ine/ra~unara. Pravi la po koj ima oni komuniciraju su protokol

odgovaraju}eg nivoa.

Izme|u svakog od nivoa postoj i precizno definisan interfejs SAP-Service Access

Point ) . Preko SAP-a se pristupa usluzi koju pru`a susedni nivo. Sve dok je interfejs

izme|u razl i~ i t ih nivoa ist i , na~in implementaci je mre`e da se menja. Dakle, na~in

funkcionisanja je po pt incipu crne kut i je. .

Page 25: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 25/260

4/11 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Podaci koj i se razmenjuju izme|u jednakih nivoazovu se PDU Protocol Data Unit

i l i na srpskom — protokolske jedinice podataka.

Stvarna(f iz i~ka) komunkaci ja postoj i samo na najni`em fiz i~kom nivou. Komunikaci ja

se odvi ja po slede}em {ablonu enkapsulaci ja: Poruka M (originalna por uka) se del

na dva dela, i svakom delu se pridodaje HEADER tog nivoa na kome je poruka

podeljena. Svaki naredni nivo ponovo del i poruku i dodaje svoje hedere. Na

pri jemnoj strani se de{ava ist i proces al i u obrnutom redosledu. Dakle, sada svaknivo spaja nekol iko poruka i bri{e svoje hedere. Zat im takvu poruku preuzima

slede}i nivo i td. Ovo je prikazano slede}om {emom:

Page 26: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 26/260

5/11 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

 Tako|e je va`no napomenuti da jedan nivo uvek pru`a uslugu nivou koj i se nalaziznad njega a ne nivou ispod njega. Ovaj princip komunikaci je je prikazan slee}om

slikom.

Page 27: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 27/260

6/11 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Po{to smo kazali da svako od nivoa ima ut isak da komunicira sa svoj im

ekvivalentom na drugoj strani moramo i pomenuti da se ta virtuelna komunikaci ja

obavl ja po ode|enom protokolu. Svaki nivo ima svoj protokol. [ema koja }e ovo

pojasnit i je slede}a:

Komunikaci ja izme|u nivoa se odvi ja preko SAP-ova. O ovome smo ve} dosta rekl i

me|utim, komunikaci ja na nivou kl i jent — server se odvi ja pomo}u nekol ikoprimit iva. Komunikaci ja izme|u kl i jenta i servera se odvi ja na slede}i na~in:

Ovom sl ikoj je prikazan princip komunikaci je sa potvr|ivanjem. Za razl iku od ovog

principa, komunikaci ja se mo`e svest i i na komunikaci ju bez potvr|ivanja. Ovo je

manje pouzdana komunikaci ja, al i je i br`a, jer se ne gubi kapacitet

komunikacionog kanala na potvrde ve} se non-stop {al ju : :korisne:: informaci je.

Ap l i ka t i vn i n i vo

Aplikat ivni nivo pru`a podr{ku razl i~ i t im korisnic ima. Drugim re~ima, on daje

korisni~ki interfejst za usluge koje pru`a mre`a. Za svaki mre`ni servis na

aplikat ivnom nivou postoj i protokol  preko koga se pristupa tom servisu (na prime

za faj love je to FTP , za mail je SMTP , i td. . . ) Apl ikat ivni nivo pru`a aplikat ivnim

Page 28: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 28/260

7/11 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

procesima jo{ i ident i f ikaci ju korisnika po imenu, utvr|ivanje spremnost i druge

strane da stupi u komunikaci ju, na~in {i fr iranja podataka (ako se zahteva tako

ne{to) . Dakle, apl ikat ivni nivo samo odre|uje na~in {i fr iranja dok samo {ifr iranje

obavl ja nardni nivo (prezentacioni ) .

P rezen tac ion i n i vo

Bavi se predstavl janjem podataka koj i se prenose izme|u dva aplikat ivna procesa

Aplikat ivni Procesi na razl i~ i t im ma{inama koriste razl i~ i to predstavl janje podataka

pogotovu ako se radi o razl i~ i t im operat ivnim sistemima. Prezentacioni nivo pru`a

zajedni~ki obl ik koj i omogu}ava da se ostvari komunikaci ja izme|u aplikacionih

procesa. Ovde mo`e da se obavl ja {i fr iranje podataka ako se to tra`i u ci l ju

sigurnost i podataka.

Ni vo ses i j e

Nivo sesi je omogu}ava aplikacionim procesima da uspostave vezu (konekci ju) . Sesi ja

pru`a servis upravl janja di jalogom. Sesi ja mo`e da dozvol java da se komunikaci ja

obavl ja dvosmerno  i l i jednosmerno . Ako je dvosmerno, treba da se zna koja jestrana na redu da vr{i prenos. Upravl janje t im dijalogom se zove token

menad`ment  (`eton menad`ment) . Stana koja poseduje `eton mo`e da vr{i prenos

i tada predaje `eton drugoj strani.

Pored ove uloge nivoa sesi je, ona slu`i sa sinhronizaci ju  npr. Sesi ja traje 2h

pukne veza pa mora da se opet uspostavi da bi se sesi ja dovr{i la. Zato se u

podatke koj i se prenose ubaci ju sinhronizacione ta~ke tako da ako do|e do

prekida nastavak prenosa ide od poslednje sinhronizacione ta~ke. [to je vi{e ovih

sinhronizacionih ta~aka, to }e nastavak sesi je mo}i da bude pribl i`no ist i trenutku

kada je sesi ja prekinuta. Na primer, ako imamo sesi ju duga~uku 1 sat i imamo

samo jednu sinhronizacionu ta~ku, onda }e sesi ja mo}i da se ponovo uspostavi (u

slu~aju nasi lnog prekida) tek na 30-tom minutu. Ukol iko bi prekid nastao u 29-om

minutu, ceo na{ trud bi propao je ponovo bi moral i sve iz po~etka.

T ranspor tn i n i vo

Poruka sa nivoa sesi je se razdel i na cel ine i preda se mre`nom nivou, a u

pri jemnoj strani se radi obrnuto. Za svaki zahtev iz nivoa sesi je on otvara novu

konekci ju prema mre`nom nivou.

Page 29: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 29/260

8/11 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Mre`ni

Nivo sesije

 Transportni nivo

MultipleksiranjeDemultipleksiranje

 

Kao {to vidimo, ukol iko je aplikacja takva da joj je potreba ve}e propusnost, onda

se uspostavl ja nekol iko konekci ja. Tako|e, ukol iko aplikaci ja zahteva vrlo malu

propusnost, onda se nekol iko zahteva {al ju preko istog kanala. Ovaj nivo u vodi jo{

jedan nivo adresiranja, a to su takozvani portovi  0-16000 koj i slu`e za

ozna~avanje odre|ene aplikaci je. Oni omogu}avaju da se ve}i broj apl ikaci ja

prosledi na jedan mre`ni sloj (radi kao mult iplekser) .

Mre`n i n i vo

Zadatak ovog nivoa je definisanje puta  podataka kroz mre`u (kako da st igne doodredi{ta) . Ovo je poznat i je kao RUTIRANJE. To definisanje mo`e bit i obavl jeno

stat i~ki  (na osnovu tabl ica koje koje su formirane u fazi konfigurisanja mre`e). Na

primer u tabl ic i se mo`e definisat i da se sve {to dolazi iz pravca 1 treba usmeri t i

na pravac 4.

1   2

3

45

6

1

 Tablica

4A C 

Page 30: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 30/260

9/11 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Drugi na~in je da se obavi dinami~ko  konfigurisanje na osnovu pra}enja stanja

mre`e. Ove metode su komplikovanije al i su bol je jer se pametno ulazi u mre`u t j

tamo gde je najmanja gu`va, pa se t ime post i`e ve}a brzina protoka informaci ja

od hosta do hosta.

Da ta- l i nk

Na datal ink nivou defini{e se kako se vr{i prenos izme|u dva ~vora u mre`i pr

~emu je ~vor host i l i ruter. Bavi se problemom naru{avanja , gubljenja  i l

duplic iranja  poruka koje se razmenjuju izme|u dva ~vora. Ovde se reguli{e

brzina prenosa . On treba da obezbedi kontrolu toka porta. Tako|e, treba da vr{

framing . Da bi sve ovo moglo da funkcioni{e mora se uvest i neki vid adresiranja

da bi se znalo kome su podaci poslat i (ovo je naro~ito bitno kod broadcast

mre`a).

F i z i ~ k i n i vo

Page 31: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 31/260

10/11 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko

Mil i~ i}  

Fiz i~ki nivo se bavi elektr i~nim  i f iz i~kim interfejsom izme|u ra~unara (~ora, host-a

i komunikacionog kanala ( t ransportnog medijuma). Obezbe|uje nivou veze seri jsk

prenos bitova  du` komunikacionog kanala. Sastoj i se od mehani~kog i elektr i~nog

dela. Mehani~ka komponenta  defini{e mehani~ki interfejs, (kavi su konektori

raspored ni`ica, i td) . Kod elektr i~ne komponente f iz i~kog sloja, t ipi~ni problemi su:

Koj i naponski nivo treba da se korste za log i~ku 0 i 1

 Trajanje bitskog intervala (kol iko se napon nule i l i jedinice dr`i)

Kol iko ima pinova na mre`nom hardveru i ~emu svaki slu`i

Poroceduralna komponenta fiz i~kog nivoa odre|uje funkci ju svakog pina, i koje

radnje treba izvr{i t i da bi se izvr{i la neka funkci ja.

Page 32: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 32/260

11/11 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko

Mil i~ i}  

OSI (Open System Interconnection)....................................................................................................................... 1

Komunikacija u OSI modelu..................................................................................................................................2

Virtuelna komunikacija:...........................................................................................................................................3

Aplikativni nivo..........................................................................................................................................................6

Prezentacioni nivo....................................................................................................................................................7

Nivo sesije.................................................................................................................................................................7

 Transportni nivo........................................................................................................................................................7

Mre`ni nivo ...............................................................................................................................................................8

Data-link....................................................................................................................................................................9

Fizi~ki nivo .................................................................................................................................................................9

Page 33: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 33/260

1/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

TCP/IP MODEL

OSI model nikada u potpunost i ni je za`iveo u praksi. U praksi je TSP/IP model. Prv

put je implementiran na ARPANET -u. TCP/IP naziv je od dva najva`ni ja protokola:

 TCP (Transmision Control Protocol) — protokol transportnog nivoa

IP ( Internet protocol ) — protokol mre`nog nivoa

Ovde ne postoje jasno izdvojeni nivoi ve} na osnovu protokola koj i su u upotreb

mo`e da se izdvoj i 5 nivoa.

Ovde PDU  (Protocol Data Unit ) koj i se razmenjuju imaju imena. Na aplikat ivnom

nivou se zovumessage

, na transportnom nivou se zovudatagrami

, na mre`nom se

nazivaju segmenti , na nivou veze frejmovi,  a za fiz i~ki nivo nemaju posebno ime

ve} se zovu prosto PDU.

Protokol i mogu bit i implementirani hardverski i l i softwerski i l i kombinovano. Po

pravi lu su protokol i ni` ih nivoa implementirani hardverski a vi{ ih softverski . Mre`n

nivo mo`e bit i implementiran kombinovano.

U ovom slu~aju imamoNetwork Access

  t j .Host-to-Network

  sloj koj i obezbe|uje

f iz i~ki  i data-l ink  nivo. Postoj i zat im mre`ni sloj  koj i vr{i rut iranje  ( IP protokol )

Zat im postoj i Host-to-Host  nivo t j . Transportni sloj (TCP protokol ) koj i vr{i kontrolu

toka. Iznad toga je applicat ion nivo , on obuhvata i ap l ikacioni i prezentacioni i slo

sesi je.

Page 34: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 34/260

2/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

APL IKAT IVNI NIVO

 Jedan protokolski nivo mo`e bit i real izovan softverski i l i hardverski. Po pravi lu su

najvi{ i nivoi softverski (apl ikacioni nivo) a ni` i slojevi su naj~e{}e hardversk

implementirani i to u vidu mre`nih kart ica. Aplikat ivni nivo mo`e imati ve}i bro

protokola (FTP, SMTP, HTTP, Telnet i td . . . ) Svaki od ovih protokola se obi~no sastoj

iz dva dela, kl i jent strane i server strane. NPR: WEB browser je kl i jent a WEB serve

je server HTTP protokola.

Nivoi ispod aplikat ivnog nivoa imaju zadatak da obezbede pouzdan prenos, al i on

ne izvr{avaju nikakav realan posao za korisnika. Me|utim, i na aplikat ivnom nivou

postoj i potreba za protokol ima koj i }e podr`at i realnu aplikaci ju i l i funkci ju. Treba

napravit i razl iku izme|u mre`ne aplikaci je i protokola aplikat ivnog nivoa. Protoko

aplikat ivnog nivoa je samo jedan deo mre`ne arhitekture i to vrlo VA@AN deo.

Evo par primera:

WEB je mre`na aplikaci ja koja omogu}ava korisniku da dobije dokumente sa WEB

servra po zahtevu. WEB aplikaci ja sadr`i mnogo komponent i :

Standard za format WEB dokumenata (HTML)

WEB Kl i jente (Netscape navigator)

WEB servere (Apache)

Protokol apl ikacionog nivoa (WEB-ov protokol apl ikacionog nivoa je HTTP

(Hyper Text Transfer Protocol ) koj i defini{e kako se poruke prenose izme|u

traga~a (browsera) i WEB servera.

Page 35: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 35/260

3/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Drugi primer je E-mail apl ikaci ja. Ona ima mnogo komponent i ukl ju~uju}i :

Mail servere koj i sadr`e mailbox-ove

^ita~e poruka koj i omogu}avaju korisniku da ~ita i kreira poruke

Standard za definisanje strukture e-mail poruke MIME (Mult ipurpouse

Internet Mail Extension)

Protokol apl ikat ivnog nivoa koj i defini{e kako se poruke prenose izme|u

servera i servera, izme|u servera i ~i ta~a i kako se sadr`aj pojedinihdelova mail poruke interpret ira (npr header mail poruke). Osnovni protoko

aplikacionog nivoa za e-mail apl ikaci ju je SMTP (Simple Mail Transfe

Protocol )

Protokol ima aplikacionog nivoa se defini{e:

 Tip poruka koje se razmenjuju (npr: pitanja i odgovor)

S intaksa razl i~ i t ih t ipova poruka

Semantika, t j . zna~enje informaci ja u polju poruke

Pravi la koja defini{u kada i kako procesi {al ju pitanja (zahteve) i odgovore

K l i j en t i i se r ve r i

Aplikat ivni protokol i obi~no imaju dve strane; kl i jent stranu  i server stranu . Kl i jen

strana na jednom hostu komunicira sa server stranom na drugom hostu NPR. WEB

traga~ implementira kl i jent stranu HTTP-a a WEB Server server stranu HTTP-a.

Kod elektronske po{te, izvorni mail server implementira kl i jent stranu SMTP-a a

pri jemni (odredi{ni ) mail server server stranu SMTP-a.

U mnogim aplikaci jama HOST ce implementirat i i k l i jent i server stranu aplikaci je

NPR: Telnet (udaljeni Log-In) . Ako host A inic ira Telnet sesi ju tada je A-kl i jent a B-

server. Naravno, mogu}e je i obrnuto. Sl i~an primer je i FTP.

Kod ve}ine aplikaci ja host koj i inic ira sesi ju je ozna~en kao kl i jent . Ovo je pravi lo!

Host mo`e jednovremeno da deluje i kao kl i jent i kao server za datu aplikaci juNpr Mail server host izvr{ava kl i jent stranu SMTP-a za slanje poruka a server

stranu SMTP-a za pri jem poruka.

Page 36: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 36/260

4/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

DNS

Programi se retko obra}aju hostovima, mailbox-ovima i drugim resursima na

osnovu binarnih adresa. Umesto binarnih adresa koriste se ASCII nizovi kao na

primer: [email protected] .ac.yu. Me|utim, sama mre`a razume samo binarne adrese

pa je potrebno izvr{i t i konverzi ju iz jednog oblika u drugi. Da bi se ovo ostvari lo

korist i se DNS. Osnovni zadatak DNS-a je presl ikavanje imena hostova i e-mai

dest inaci ja u IP adrese.

 

Veoma kratko, DNS se korist i na slede}i na~in: Da bi se ostvari lo presl ikavanje

imena hosta u IP adresu. Aplikat ivni program (Web, E-mail , FTP i td. . . ) poziva

bibl iote~ku funkci ju koja se zoveRESOLVE

 predaju}i joj ime kao parametar. Funkci ja

tada {al je UDP  paket lokalnom DNS serveru, koj i zat im pretra`uje imena i nalaz

odgovaraju}u IP adresu. Tada je vrat i kao iz laznu vrednost aplikat ivnom programu.

[ta je DNS?

DNS je distr ibuirana baza podataka implementirana hi jerarhi jski u name-

serverima

DNS je protokol apl ikat ivnog nivoa koj i dozvol java hostovima i name-

serverima da komuniciraju da bi obezbedio uslugu presl ikavanja.

Name-serveri  su naj~e{}e UNIX ma{ine na koj ima se izvr{ava BIND  software. DNS

server korist i UDP i port 53. Usluge DNS-a koriste i drugi protokol i apl ikat ivnog

nivoa da bi prevel i korisni~ku adresu u IP adresu.

Koncepci jski , internet je podeljen na nekol iko stot ina povr{inskih domena(oblast i )

pri ~emu svaki domen pokriva vel ik i broj hostova. Svaki domen je dalje podeljenna poddomene, a oni dalje i td. . . Svi ovi domeni ~ine jedno stablo. L istovi stabla

predstavl jaju domene koj i nemaju poddomene (al i sadr`e hostove).

Domen u korenu stabla nema ime. Ovaj domen je podeljen nekol iko stot inama

poddomena. Podela je izvr{ena u odnosu na neke kl ju~ne osobine (generi~ka

podela) i l i na osnovu geografske pripadnost i . Tako npr: generi~ki domeni su .com,

.edu, .gov i td. geografski domeni ukl ju~uju domene za svaku zemlju, po ISO 3166.

U praksi, gotovo sve organizaci je u USA koriste generi~ke domene, a skoro sveorganizaci je van USA geografske domene (domene zemalja) . Svaki domen je

imenovan putem koj i ide od posebnih ka op{t im domenima. Prelaz (su`avanje

domena ozna~ava se ta~kom. Na primer:Elfak.ni .ac.yu

 

Svaki domen kontrol i{e kreiranje domena ispod sebe. NPR: Japan ima domene

ac. jp i co. jp koj i predstavl jaju academsku mre`u i mre`u komerci jalnih f irmi

Page 37: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 37/260

5/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Holandija ne pravi ovu razl iku i sve organizaci je stavl ja direktno ispod domena .nl

tako na primer u slede}em primeru sve tr i adrese predstavl jaju Computer Science

department na univerzi tetu.

Cs.yal l .edu (Yal l je univerzi tet u USA)

Cs.VU.nl (neki univerzi tet u Holandij i )

Cs.keo.ac. jp (Keo univerzi tet u Japanu)

Da bi se kreirao novi domen, tra`i se dozvola od domena u koj i }e on bit iukl ju~en. NPR: da bi se kreirao domen katedre za ra~unarstvo u okviru

elektronskog fakulteta tra`i se dozvola od domena elfak.ni .ac.yu. Da bi se kreirao

domen elfak.ni .ac.yu, tra`i se dozvola od domena ni.ac.yu i td. Kada se jednom

kreira i registruje domen, on mo`e kreirat i svoje poddomene, a da pri tome ne

tra`i niodkoga.

DNS prostor je podeljen na nepreklapaju}e zone. Svaka zona sadr`i neki deo

stabla i name-server koj i sadr`i autorizovane informaci je o toj zoni na svom hard-

disku.

Pored presl ikavanja imena u IP adresu, DNS obezbe|uje jo{ nekol iko va`nih

servisa:

Host Al iasing — Host sa komplikovanim imenom mo`e imati jednu i l i vi{e

skra}enica. NPR. Host sa imenom rely1.west-cost .enterprise.com mo`e imat

na primer dve skra}enice (enterprise.com il i www.enterprise.com). U ovom

prmeru se za prvo ime ka`e da je korisni~ko ime.

Mail server al iasing — Po`el jno je da e-mail adrese budu mnemoni~ke i

{to kra}e, pa se i ovde uvode skra}enice imena za kanoni~ka imena mai

servera.

Distr ibuci ja optere}enja. DNS se korist i za balansiranje optere}enja izme|u

optere}enih servera. Naime, ~esto su dosta pose}eni sajtovi repl ic irani na

nekol iko servera, pri ~emu se svaki server izvr{ava na razl i~ i toj ma{ini t j .

Sa razl i~ i tom IP adresom. Za repl ic irane web servere jedno kanoni~ko ime

je vezano za nekol iko IP adresa. DNS baza podataka sadr`i ovaj skup IP

adresa. Kada kl i jent napravi DNS upit za ime koje se presl ikava u nekol iko

adresa, server odgovara sa celokupnim setom adresa, al i rot ira u levo

spisak adresa za svaki upit . Ovim se post i`e da se iz jedna~i optere}enje

na svakom serveru jer kl i jent obi~no komunicira sa prvom adresom koju

dobije kao odgovor na DNS upit . Sl i~no se korist i i kod e-mail servera.

Page 38: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 38/260

6/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

DNS je primer distr ibuirane baze podataka. On korist i vel ik i broj name-servera

organizovanih hi jerarhi jski i distr ibuiranih po svetu. Ni jedan name-server ne

sadr`i sva presl ikavanja za sve hostove na internetu, ve} su ta presl ikavanja

distr ibuirana po name-serverima. (S l i~no kao kod hi jerarhi jskog rut i t i ranja na

mre`nom nivou). Za prvu aproksimaci ju uvodimo da pstoje tr i t ipa name-servera:

Lokalni

Root

Autorizovani name serveri

Ovi serveri interaguju jedni sa drugim i naravno, sa hostovima koj i {al ju upit na

slede}i na~in:

Lokalni Name-serveri : svaki ISP (provajder) kao {to je univerzi tet

akademski department, rezidenci jalni ISP, imaju lokalni name-server . Kada

host izda DNS upit , poruka se prvo prenosi do lokalnog name-servera. IP

adresa lokalnog name-servera se obi~no ru~no postavl ja u hostu. Lokaln

name-server je obi~no bl izu kl i jenta. Ako host zahteva translaci ju imena za

drugi host koj i je deo istog lokalnog ISP-a tada lokalni name-serve

odmah obezbedi zahtevanu IP adresu. NPR. Kada host alfa.el fak.ni .ac.yu

tra`i IP adresu za beta.el fak.ni .ac.yu, lokalni name-server >>elfak<< }e bit

u stanju da obezbedi zahtevanu IP adresu bez kontakt iranja drugih name-

servera.

Root name serveri : Na internetu postoj i na deset ine takozvanih root-name-

servera. Kada lokalni name server ne mo`e direktno da odgovori na upit

od hosta, lokalni name-server upu}uje upit jednom od root-name-servera

Ako root-name-server ima zapis za tra`eni host , on {al je DNS odgovor

lokalnom name-serveru , a lokalni-name-server odgovara hostu koj i je

uput io upit . Ako pak root-name-server nema zapis za tra`eni host , on zna

IP adresu autorizovanog name-servera koj i ima presl ikavanje za dato ime

hosta.

Autorizovani name serveri : Svaki host je registrovan u autorizovanom name

serveru. Obi~no je autorizovani name-server za host , name-server uhostovom lokalnom ISP-u. Po definic i j i , name-server je autorizovan za hos

ako on uvek ima zapis koj i prevodi ime hosta u IP adresu hosta. Kada

autorizovani name-server dobije upit od root-name-servera, on odgovara

tra`enom IP adresom. Root-name-server zat im prosle|uje to lokalnom

Page 39: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 39/260

7/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

name-serveru, koj i to prosle|uje hostu koj i je tra`io upit . Mnogi name-

serveri deluju istovremeno i kao lokalni i kao autorizovani.

Pr imer za DNS

Razmorimo jedan jednostavan primer. Pretpostavimo da host surf.eurecom.fr `el i IP

adresu hosta gaia.cs.ummas.edu. Zat im pretpostavimo da se eurecom-ov lokaln

name-server zove dns.eurecom.fr  a da se autorizovani name-server za

gaia.cs.umass.edu zove dns.umass.edu.

Host surf.eurecom.fr {al je upit lokalnom name serveru dns.eurecom.fr. Upit sadr`

ime hosta ~i ja se IP adresa tra`i . Lokalni name-server prosle|uje upit root-name-

serveru. Root name-server prosle|uje upit autorizovanom name-serveru za sve

hostove koj i se nalaze u domenu umass.edu t j . Name-serveru dns.umass.edu

Autorizovani name-server zat im {al je tra`enu IP adresu hostu koj i je uput io upit

preko root-name-*servera i lokalnog name-servera. U ovom primeru 6 DNS poruka

je razmenjeno (3 upita i tr i odgovora ).

Do sada smo pretpostavl jal i da root-name-server zna IP adresu autorizovanogname-servera za svaki host . Ovo ne mora bit i ta~no. Za dato ime hosta, root-

name-server mo`e znat i samo IP adresu me|u name-serverima, koj i dal je zna IP

adresu autorizovanog name servera za dato ime hosta.

Da bi smo ovo i lustroval i razmotrimo ponovo ist i primer. Pretpostavimo da

Univerzi tet u Masa~usetsu ima name server za univerzi tet , koj i se zove

dns.umass.edu. Tako|e, pretpostavimo da svaki department na univerzi tetu u

masa~usetsku ima svoj sopstveni name-servr, i da je svaki od nj ih autorizovan za

hostove u svom departmentu. Kada root-name-server primi upit za host ~i je se

ime zavr{ava sa umass.edu. Ovaj name-server prebacuje sve upite za imena

hostova koj i se zavr{avaju sa cs.umass.edu ka name-serveru dns.umass.edu, koj

je autorizovan za sve hostovge ~i ja se imena zavr{avaju sa cs.emass.edu

Autorizovani name-server prosle|uje `el jenu adresu, me|u-serveru dns.umass.edu

koj i je zat im prosle|uje root-name-serveru, koj i je prosle|uje lokalnom name-

serveru dns.eurecom.fr, a koj i kona~no mo`e da prosledi odgovor ka izvornom

hostu. U ovom primeru razmenjeno je 8 DNS poruka. U su{t ini i vi{e DNS poruka

mo`e bit i razmenjeno da bi se dobila `el jena IP adresa.

U prethodnim primwerima smo usvoj i l i da svi upit i imaju rekurzivnu strukturu. Kada

host i l i name-server A u~ini rekurzivni upit name-serveru B, tada name-server B

dobija `el jeno presl ikavanje a zaim ga prosledi ka A. DNS protokol tako|e

dozvol java >>iterat ivne<< upite u bi lo kom koraku u lancu izme|u izvornog hosta

Page 40: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 40/260

8/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

autorizovanog name-servera. Kada name-servea A upit i i terat ivni upit name

serveru B, ako name server B ne poseduje `el jeno presl ikavanje, on smesta {al je

DNS odgovor sa IP adresom slede}eg name-servera u lancu, recimo C. Name

server A zat im upu}uje upit direktno name-serveru C.

U nizu upita koj i su potrebni da bi se za dato ime hosta dobila IP adresa, neki

upit i mogu bit i i terat ivni a neki rekurzivni. Naj~e{}e su svi upit i u lancu upita

rekurzivni izuzev za upit od lokalnog name-servera do root-name-servera, koj i je

i terat ivan.

DNS zap i s i (DNS Reco rds )

Name-serveri koj i zajedno implementiraju DNS distr ibuiranu bazu podataka pamte

izvorne zapise (Resource Records — RR) za presl ikavanje imena hosta u IP adresu

Svaka DNS poruka nosi jedan i l i vi{e RR. RR je ~etvorka koja sadr`i slede}a polja:

(Name, Value, Type, TTL)

TTL:  Time to l ive za RR odre|uje kada RR treba da bude uklonjen iz ke{a

Informaci j i koja je visoko stabi lna se dodeljuje vel ika vrednost npr 1 dan (86400

sec). Informacj i koja je nestabi lna dodeljuje se mala vrednost npr 1 minut (60 sec)

U primeru koj i s ledi }emo videt i ovo polje.

Zna~enje pol ja Name i Value zavise od polja Type.

Ako je Type=A , tada je Name ime hosta a Value je njegova IP adresa . Tako, zapis

t ipa A sadr`i standardno presl ikavanje imena hosta u IP adresu.

NPR:

(relay1.bar. foo.com, 145.37.93.126,A)

je zapis t ipa A ( ime_hosta, IP_adresa, A)

Ako je Type=NS

, tada je Name ustvari domen kao npr foo.com a value je ime

servera koj i zna kako da dobije IP adresu hosta u svom domenu. Ovaj Zapis se

korist i da prosledi DNS upite du` lanca upita. NPR:

( foo.com, dns.foo.com, NS)

Ovo je zapis t ipa NS ( Ime_domena, DNS_server, NS)

Page 41: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 41/260

9/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Ako je type=CName , tada je Value korisni~ko ime hosta za al ias ime NAME. Ova

zapis mo`e obezbedit i dobijanje kanoni~kog imena za al ias ime.

NPR:

(Foo.com, rely1.bar. foo.com, CNAME)

Ovo je zapis t ipa CNAME (al ias, kanoni~ko_ime, CNAME)

Ako je type=MX , tada je Value ime mail servera koj i ima alias ime u polju name

NPR:

( foo.com, mail .bar. foo.com, MX)

Ovo je MX zapis. Ovaj zapis omogu}ava da imena mail servera imaju jednostavne

adrese.

(al ias, kankoni~ko_ime_mail_servera, MX)

Ako je name-server autorizovan za odre|eno ime hosta, tada }e name-server

sadr`at i t ip A zapisa za ime hosta. ^ak i ako name server ni je autorizovan on

mo`e sadr`at i t ip A zapisa u svom ke{u.

Ako server ni je autorizovan za dato ime hosta, tada }e on sadr`at i zapis t ipa NS

za domen koj i ukl ju~uje dat i host . On }e tako|e sadr`at i zapis t ipa A koj i daje IP

adresu name-servera u Value polju NS zapisa. NPR: pretpostavimo da root server

ni je autorizovan za host gaia.cs.umass.edu. Tada }e root-server sadr`at i zapis za

domen koj i sadr`i host cs.umass.edu t j .

(umass.edu, dns.umass.edu, NS)

Root server }e tako|e sadr`at i t ip A zapisa koj i presl ikava name-server

dns.umass.edu u IP adresu

(dns.umass.edu,128.119.40.111,A)

Page 42: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 42/260

10/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

TRANSPORTNI NIVO (HOST-TO-HOST NIVO)

Ovaj nivo obezbe|uje razbi janje poruka na pakete. Ovaj nivo pru`a aplikaci j i dve

vrste servisa:

Konekcioni (connect ion oriented) servis

Bezkonekcioni (connect ionless) servis

Protokol koj i pru`a konekcioni servis jeTCP

. Protokol za bezkonekcioni servis je

UDP  (User Datagram Protocol ) . UDP pru`a ve}e brzine prenosa (transportni nivo

te`i da br`e prosledi poruke al i ovde nema garanci ja da }e to i da se 100% prim

na odredi{tu) . Dakle, kada nam nije bitna 100%-tna ta~nost , al i je brzina zna~ajan

paramtar, onda }emo birat i UDP protokol.

MRE`NI NIVO ( IP NIVO)

Is to kao i kod OSI modela. Sve komponente ra~unara koj i `ele da budu povezan

moraju da podr`avaju ( izvr{avaju) Internet Protocol . Osnovna funkci ja je rut iranje

paketa i kontrola zagu{enja. Ovaj protokol je lepak koj i ra~unare dr`i zajedno.

DATAL INK NIVO

O ovom nivou bi}e posebno re~i , i zato je njemu dodeljeno celo poglavl je.

Osnovni zadatak je pouzdani prenos poruka izme|u dva ~vora u mre`i. ^vor mo`e

bit i HOST i l i RUTER. Protokolska jedinica podataka PDU se u ovom nivou zove okvir

(FRAME ) . Protokol i Data Link nivoa defini{u format poruka  koje se razmenjuju kao

akci je koje ~vorovi preduzimaju kod pri jema i slanja poruka. Ove akt ivnost

obuhvataju detekcju gre{aka , numeraci ju poruka , retransmisi ju poruka  ( u slu~aju

gre{ke),kontrolu toka

  islu~ajni pristup

  (Random Access). Primeri protokola ovog

nivoa su:

Ethernet protocol (postoj i vel ik i broj vari jant i kada su u pitanju emision

kanali t j . medijumi za prenos)

FDDI (za prenos po opt i~kom vlaknu)

 Token ring ( jkada su u pitanju emisioni kanali )

Page 43: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 43/260

11/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Za dat i komunikacioni kanal protokol data l ink nivoa je ug lavnom u paru adaptera

Adapter je kart ica koja ima RAM memori ju, DSP ~ipove, Host-Bus interfejs

interfejs prema komunikacionom kanalu. Adapteri se tako|e nazivaju i mre`ne

kart ice. Poruku sa mre`nog nivoa prihvata mre`na kart ica, uramljuje je i prosle|uje

formirani ram na komunikacioni kanal. Na pri jemu adapter prihvata ram. Vr{

proveru na gre{ke i onda predaje vi{em nivou.

Poruka mo`e bit i preno{ena po razl i~ i t im protokol ima. Svaki protokol mo`e da pru`

razl i~ i t t ip usluga mre`nom nivou, al i svaki mora da pru`i slede}e servise:

Uramlj ivanje (Framing) . Ovim se obezbe|uje da u~esnici u komunikaci j

mogu bit i u stanju da prepoznaju granice svakog frejma. Ovo se post i`e

uramlj ivanjem poruke koja treba da se prenese u par rezervisanih bajtova

i l i karaktera.

Kontrola toka . Baferi na krajevima komunikacionih kanala imaju ograni~en

prostor. Ako bi izvor slao poruke ve}om brzinom nego {to je brzinaprocesiranja u odredi{tu, do{lo bi do prepunjivanja bafera t j . odre|ene

poruke bi bi le izgubljene. Kontrola toka ba{ takve stvari regul i{e.

Kontrola gre{aka  podrazumeva tehnike za detekci ju gre{aka u toku

prenosa. Na primer ATM  (Asinhrone Transfer Mode) omogu}ava detekci ju

korekci ju gre{aka.

Adresiranje. Za Point To Point veze potreba za adresiranjem ne po stoj i . Za

emisione kanale koriste se Ethernet i l i Token Ring mre`e. Ovde adresiranje

ima vel ikog zna~aja jer se vi{e host-ova prik l ju~uje na ist i komunikacion

kanal.

Upravl janje vezom (L ink Management) . Ovo podrazumeva mehanizme za

uspostavl janje, odr`avanje i prekidanje veze.

Postavl ja se pitanje kako se ostvaruju ovi servis i?

F raming

Metoda brojanja karaktera :

Prvi bajt frejma nosi informaci ju o tome kol ika je du`ina celog frejma (ukl ju~uju}i

taj bajt ) problem se javl ja ukol iko do|e do gre{ke u prenosu prvog bajta ( tada se

gubi sinhronizaci ja) .

Page 44: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 44/260

12/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Metoda po~etnog i krajnjeg karaktera :

Uramlj ivanje u par rezervisanih bajtova i l i karaktera. Karakteri koj i ozna~avaju

po~etak svakog rama su DLE STX  (Postoje ASCII kodovi za ova dva karaktera). Kra

svakog rama se ozna~ava karakterima DLE ETX . Dakle, ukol iko `el imo da uramimo

neke podatke, onda bi posle uramlj ivanja imali slede}u si tuaci ju:

DLE STX /podaci/ DLE ETX

Vrlo ~esto do zabune mo`e da dovede ukol iko se u karakterima podataka na|e

neki od terminalnih i l i startnih simbola. Problem se re{ava tako {to u izvorno

strani mre`na kart ica kad nai|e na DLE karakter automatski ubacuje jo{ jedan DLE

karakter i taj DLE ukazuje da karakter koj i s ledi ni je upravl ja~ki karakter. Na

pri jemu kad se detektuju 2 DLE karaktera jedan se izbacuje.

NPR: Poruka HELDLE0 }e uokvirena izgledat i ovako:

DLE STX H E L DLE DLE  O DLE ETX

Ova tehnika se zove character stuff ing . Problem je {to se na ovaj na~in zahteva da

polje podataka bude celobrojni umno`ak karaktera (ne mogu bit i bi tovi najmanja

jedinica podataka).

Po~etni i zavr{ni f legovi

:

Ukol iko se umesto rezervisanih karaktera koriste rezervisani bajtovi  tog ograni~enja

nema. Sada se umesto grani~nih karaktera koriste nizovi bitova:

01111110 /podaci/ 01111110

Na izvoru: Automatski se posle 5 uzastopnih jedinica ubacuje 0 ~ime se izbegava

sekvenca za flag.

Na pri jemu : Kada se uspostavi 5 uzastopnih jedinica hardver izbacuje onu nulu.

Ova tehnika se nazivabit stuff ing

.

Na primer:

poruka je 011011111011111110110. Posle uokviravanja izvor }e u komunikacioni kana

poslat i s lede}i niz bitova:

01111110 01101111100111110110110 01111110

Podvu~ene nule su une{ene da bi se izbegla dvosmislenost t j . da bi se re{io

problem {ta je poruka a {ta okvir .

Page 45: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 45/260

13/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Kon t ro la g re{ke

Postavl ja se pitanje kako da odredi{te zakl ju~i da l i je poruka koju je primilo

korekna? Za to se koriste razl i~ i te metode na primer bit parnost i , CRC i td. . . Tako|e

se postavl ja pitanje kako da izvor zna da je poruka st igla na adresu korektno?

Re{enje ovog drugog problema se dobija kroz mehanizam potvrdj ivanja .

Detekci ja gre{ke

 se obezbe|uje uvo|enjem odre|enog broja bitova u info deo rad

utvr|ivanja gre{ke. Ovim uvodimo redundansu al i sve u ci l ju odbrane od gre{aka.

B i t pa rnos t i :

Najjednostavni j i metod je dodavanje bita parnost i . Ovaj metod se koris i za prenos

malog broja podataka i uspe{no detektuje jednostruke gre{ke. Ne korist i se ukol iko

postoj i opravdana sumnja da }e se javi t i vi{estruke gre{ke u prenosu podataka.

Slede}a tabl ica daje primer kako se odre|uje bit parnost i :

Bi t parnost i

0 0 0

0 1 1

1 0 1

1 1 0

Na primer ukol iko nam na odredi{te st igne 111 zna}emo da ne{to ni je uredu, zato

{to je 111 nepostoje}a kombinacja.

Kon t ro l na suma b loka — BCC (B l ock Check Sum) :

Za svaki karakter koj i se prenosi generi{e se kontrolna cifra parnost i (neparnost i )Na kraju bloka se dodaje jo{ jedna kontrola koja se dobija tako {to se za svaku

bitsku pozic i ju u nizu karaktera koj i se prenose formira ci fra parnost i (neparnost i )

Ovim postupkom se ukr{taju jedno P i jedno N.

Npr. Zamisl imo da imamo blok od 3 trobitna podatka:

Page 46: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 46/260

14/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

1 0 1 0

0 0 0 0

1 1 0 0

1 0 0 1

Dakle, vidimo da se postavl ja kontrolni bit za podatke koj i se nalaze u istoj koloni

i za podatke iz iste vrste. Naravno, ovakav prikaz nema fiz i~kog smisla, al i ovako

je prikazano da bi se shvat io princip. Ova tehnika omogu}ava i detekci ju

vi{estrukih gre{aka.

Naravno, treba primet i t i da se u kontrolnom bitu za vrste korist i 0 da se ozna~

parnost broja jedinica u vrst i , a 1 da se ozna~i neparnost broja jedinica u vrst i

[to se t i~e kontrolne cifre kolona, ona sledi suprotnu logiku t j . 0 slu`i da ozna~i

neparnost broja jedinica u koloni a jedinica da ozna~i parnost broja jedinica u

koloni.

Gre{ke koje nastaju u prenosu podataka su vrlo ~esto navalnog t ipa ( bursty ) t j

obi~no ni je samo jedan bit naru{en ve} je cela grupa bitova naru{ena (podlegla je

gre{ci ) . Du`ina navalne gre{ke  B je jednaka broju bitova izme|u prvog

poslednjeg naru{enog bita ukl ju~uju}i i nj ih. Iza navalne gre{ke du`ine B treba da

usledi bar B korektnih bitova da bi se ona mogla nazvat i gre{kom du`ine B

Ukoliko imamo manje korektnih bitova posle grupe od B neta~nih, onda to ni je

gre{ka du`ine B ve} neke du`ine D koja je du`a od du`ine B. Za detekci ju ovakvih

gre{aka koriste se napredne tehnike, kao {to je pol inomalna detekci ja putem CRC

postupka.

CRC (Cyc l i c Redundancy Code ) :

Za otkrivanje ovih gre{aka koriste se cik l i~ni  i l i polinomni kodovi . Na osnovu bloka

podataka koj i se prenosi formira se odre|en broj kontrolnih bitova i pridodaje se

poruci. Pri jemnik po istom principu izra~unava (generi{e) kontrolne cifre i ako

nastupi neslaganje smatra se da je nastupi la gre{ka u toku prenosa. Kako se

odre|uje CRC?

Elementi m-bitbne poruke se posmatraju kao koefic i jent i pol inoma (m-1)-og reda

pri ~emu je bit najve}e te`ine koefic i jent uz najvi{ i stepen. Na primer:

Message = 110 001 (du`ina je 6 bitova)

Page 47: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 47/260

15/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Message(x) = X5+X4+X0  (korist imo polinom m-1 og stepena)

Niz kontrolnih ci fara koj i se pridodaje poruci za detekci ju gre{aka formira se

deobom polinoma Message(x) generatorskim polinomom G(x) . Stepen generatorskog

polinoma mora da bude ni`i od stepena Message(x) pol inoma. Koefic i jent i uz

najvi{ i i najni` istepen G(x)-a treba da su jednaki jedinic i (zbog boljeg odre|ivanja

gre{aka).

Algori tam za formiranje CRC:

Pomno`it i pol inom Message(x) sa XR (X na R) {to je ekvivalentno dodavanju

r nula na kraj.

Podeli t i XR (X-na-R) *(puta) Message(x) sa G(x) pri ~emu se kod operaci je

del jenja sve operaci je izvr{avaju po modulu 2  t j . u moduo 2 ari tmet ic i . To

zna~i da nema prenosa kod sabiranja nit i pozajmice kod oduzimanja

Deljenje se obavl ja tako {to se smatra: del i lac se sadr`i u del jeniku ako

deljenik ima isto onoliko bitova kol iko i del i lac.

Ostatak del jenja R(x) se oduzima od X R (X-na-R) *(puta) Message(x)

Rezultat tog oduzimanja je poruka sa CRC-om T(x) .( )

( )  ( )xR

XG

xMX)x( T

r

−=  

Provera na gre{ku se vr{i tako {to se ispita da l i ostatak del jenja

polinoma T(x) pol inomom G(x) ima ostatak jednak nul i . Ukol iko je ostatak

razl i~ i t od nule onda zna~i da se dogodila gre{ka.

Standardi za generatorske polinome:

CRC 1 6=x 16+x 1 2+x5+x0 - za prenos osmobitnih karaktera

CRC 1 2=x 12+x 1 0+x3+x2+x+1

CRC32=x32+x26+x23+x22+x 1 6+x 12+x 1 1+x 1 0+x8+x7+x5+x4+x2+1 —za prenos bitova bez obzira

na du`inu karaktera

Page 48: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 48/260

16/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Na primer: M(x) = 11100110, a generatorski pol inom je x4+x3+1

X r (x-na-r) *(puta) M(x) = 111001100000

111001100000 : 11001. rezultat ovog deljenja ni je tol iko bitan. Nama je od

interesa samo ostatak. Ostatak ovog deljenja je 0110.

111001100000 — 0110 = 111001100110 = T(x )

 T(x) je poruka sa CRC-om

Hardver za generisanje CRC-a se sastoj i od XOR kola i pomera~kog registra

Pomera~ki registar ima n }el i ja i m XOR kola (kola za sumu po modulu 2).

CRC hardware:

C0 C1   C(n-1)+ + +

* * *A0   A1

Clk   

Page 49: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 49/260

17/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Tehn i ke po t v rde p renosa

Kako da izvor sazna da je u odredi{te st igla korektna poruka?

Za to postoje dva na~ina:

Prvi se zasniva na kori{}enjuECHO

 -a (provera odjeka — Echo Checking)

Drugi se zasniva na tehnici potvr|ivanja primljenih poruka  (ARQ —

Automatic Repeat Request ) .

ECHO tehn i ka :

Primenjuje se kada je u pitanju mala (kratka) poruka du`ine jednog karaktera

Svaki prenet i karakter (sa terminala) st i`e do centralnog ra~unara i kao ECHO  se

vra}a do terminala i tek tada se prikazuje na terminalu. Ako je nastupi la gre{ka

korinik {al je karakter Del da izbri{e poslednji karakter jer ni je dobro prene{en.

Kada je u pitanju komunikaci ja izme|u ra~unara ovakav na~in provere nema

smisla. Tada se korist i druga strategi ja.

ARQ tehnka :

Ideja je da ako u odredi{te prist igne korektna poruka, odredi{te {al je izvoru kratku

poruku — potvrdu. Ako pak poruka ni je korektno primljena postoje dve mogu}nost i :

Odredi{te {al je negat ivnu potvrdu (NAK)

Odredi{te ne {al je ni{ta (~eka se odre|eni vremenski interval — Time Out )

kada taj vremenski interval istekne vr{i se retransmisi ja poruke ({al je se

nova poruka sve dok se ne dob ije potvrda).

Postoj i nekol iko vari jant i koje se razl ikuju po tome da l i se priori tet  daje

iskori{}enost i komunikacionog kanala i l i zahtevanom baferskom prostoru u izvoru

odredi{tu. U odnosu na ove dve alternat ive postoje dve vari jante:

Slobodni ( idle) ARQ

Kontinualni ARQ

Kod Kont inualnog ARQ  postoje dve vari jante u odnosu na to kako se protokopona{a kada nastupi gre{ka:

Selekt ivna retransmisi ja

Go Back N (vrat i se na N)

Kod slobodnog ARQ  ni je potreban neki vel ik i bafer tako da ukol iko nam je to

priori tet logi~no je da }emo izabrat i ovu vari jantu. Postoje i lo{e stane ove u{tede

Page 50: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 50/260

18/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

a to je lo{a iskori{}enost komunikacionog kanala. Protokol i koj i koriste ovu tehniku

su protokol i t ipa Stop & Wait . Najjednostavni ja vari janta ovakvog protokola se

mo`e opisat i na slede}i na~in:

S top & wa i t p ro toco l :

Izvor mo`e poslat i najvi{e jedan IR ( Informacioni ram) pre nego {to se

zaustavi da sa~eka pri jem potvrde. Dakle, ~im se ram po{alje izvor odmah

zastaje i o~ekuje potvrdu.

Svaki put kada se inic ira prenos IR-a u izvoru se startuje jedan ~asovnik

(Timer) . Ako u odredi{te st igne korektan IR ono {al je potvrdu

(ACKNOWLEDGEMENT) izvoru. Kada izvor primi ACK signal tek tada mo`e da

po~ne sa slanjem narednog IR-a i tada se ~asovnik resetuje.

Ako u odredi{te st igne naru{eni IR, on se odbacuje.

Ako izvor primi naru{eni ACK signal i l i u predvi|enom vremenskom roku

(t ime-out na{eg ~asovnika) ne prist igne ni{ta izvor vr{i retransmisi ju t j

ponovno slanje IR-a.

Page 51: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 51/260

19/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Na ovaj na~in je obezbe|eno da u odredi{te st igne bar jedna korektna kopija IR-a

( informacionog rama). Mo`e se desit i da ACK bude naru{en umesto samog frejma,

i posle t ime-out intervala izvor ponovo {al je ist i IR jer misl i da on ni je dobro

st igao u odredi{te — sve ovo izvor zakl ju~uje na osnovu odsustva ACK-a koj i se

negde izgubio, tako da u odredi{tu postoj i duplikat tog IR-a. Zbog toga se vr{

numeraci ja IR-ova . Dovol jno je izvr{i t i numeraci ju poruke po modulu dva (0 i l i 1

jer duplikat nastaje samo izme|u dve susedne poruke.

I u izvoru i u odr edi{tu treba da postoje broja~i poruka . U izvoru broja~ poslat ih au odredi{tu broja~ primljenih poruka. U izvoru mora postojat i bafer u kome }e bit

zapam}ena poruka koja je poslata a ni je potvr|en njen uspe{ni prenos. Mala je

iskori{}enost komunikacionog kanala.

Ako je CRC uredu, onda se proverava redni broj rama. Ako se redni broj slo`i sa

o~ekivanim, ram se prihvata i broja~ se uve}ava za 1 ( i to po modulu 2).

Da bi se omogu}i lo izvoru da se sinhronizuje, svaki put kada st igne korektan ram

{alje se ACK . Kada primi ACK izvor uve}ava svoj broja~, ugra|uje ga u ram {alje. Al i , mora postojat i bafer koj i ~uva poruku koja je poslata a ni je se potvrdi la

zbog eventualne retransmisi je. Na slede}oj sl ic i prikazan je princip rada ovog

protokola preko jednog kona~nog automata.

Page 52: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 52/260

20/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

I s ko r i { }enos t kana la :

I(N) I(N+1)

Izvor

Odredi{te

I(N)

 Tt

 Tp Tix   Tip   Tp   Tap

 Tax  

 Tp - propagaciono ka{njenje

 Tix - Vreme prenosa poruke

 Tip - Vreme procesiranja Informacionog rama ( IR-a)

 Tax - Vreme potrebno za prenos ACK rama (ACKNOWLEDGE signala)

 Tar - Vreme procesiranje ACK poruke

 Tt - Minimalno vrme prenosa

 Tt = 2Tp + Tix * Tip + Tax + Tap

Da bi poruka bi la uspe{no primljena t j . da se ne bi poslao duplikat vreme Tt mora

da bude manje i l i jednako Time-out vremenu.

Page 53: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 53/260

21/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Po{to je vreme Tip mnogo kra}e u odnosu na Tix dobijamo pribl i`nu formulu:

 Tt=2Tp + Tix

Pored vremena za prenos podataka nas interesuje i iskori{}enost kanala :

a21

1U

 Tix

 Tp21

1

 Tix Tp2

 Tik 

 Tt

 Tik U

+==

+

=+

==  Ovde je uvedena smena da je Tix

 Tpa  =  

Primer:

Kapacitet kanala je 50 kb/s i razmenjuje se poruka vel i~ ine 1000 bit . Tp=250ms

 Tt = 2Tp + 1000 bit / 50 000 bit/s = 2*250 + 20 = 520ms

Dakle, samo 20/520=4% vremena se korist i za prenos podataka a ostatak vremena

se tro{i na ~ekanje o pri jemu potvrde.

Iskori{}enost komunikacionog kanala se mo`e pobolj{at i ako dozvol imo izvoru da

po{alje m poruka pre nego {to se zaustavi i po~ne da ~eka na potvrduprvoposlate poruke. Kada izvor po{alje m poruka za koje ni je prist igla potvrda on

se zaustavl ja dok ne prist igne prva potvrda. Ka`emo da je prozor izvora popunjen

Sa odgovaraju}im izborom vel i~ ine prozora W mogu}e je post i} i da izvo

kont inualno {al je poruke a da se prozor ne popuni.

Ako dozvol imo da izvor po{alje 26 ramova t=0. U trenutku t=320 (26*20) kada je

poslata 26-ta poruka prist igla je potvrda za prvu poruku. W poruka moraju da

budu zapam}ene u baferskom prostoru. (bafer pamti poslate a nepotvr|ene

poruke).

U odnosu na to kako se izvor pona {a kada nastupi gre{ka kod kont inualnog ARQ :

Selekt ivna retransmisi ja

Vrat i se nazad na N (Go Back N) — retransmisi ja se vr{i od pogre{no

primljene poruke pa nadalje. .

Postoj i razl ika u odredi{tu u odnosu na ove dve vari jante. Kod selekt ivne

retransmisi je  u odredi{tu se zahteva postojanje baferskog prostora vel i~ ine W, a

ako se radi o vari jant i Go Back N  dovol jan je bafer vel i~ ine jedne poruke(W=1)

Svaka primljena potvrda uklanja poruku iz bafera.

Page 54: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 54/260

22/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Se lek t i vna re t ransmis i ja

je jedan od protokola za otklanjanje gre{aka. Bol je je ustvari re}i , to je jedan od

protokola za detekci ju gre{ke (obave{tavanje o gre{ci ) . Selekt ivna retransmisi ja je

najkomplikovanija tehnika al i naravno i najef ikasni ja. Ova tehnika implementirana

je i u vrlo poznatom TCP protokolu. Postoj i nekol iko uslova koj i moraju bit

ispunjeni da bi selekt ivna retransmisi ja bi la mogu}a.

Svaki paket i} koj i se po{alje mora bit i numerisan. Za numeraci ju se obi~no

korist i ari tmet ika po modulu X jer se t ime omogu}ava da se ist i brojev

iskoriste po nekol iko puta. Naime, kada pro|e odre|eni vremenski interva

i kada smo sigurni da je paket sa rednim brojem 0 sigurno zavr{io svo

put, onda ponovo mo`emo krenut i od nule i t ime u{tedet i na kapacitetu

memori je koja bi bi la potrebna da se pamte ogromni brojevi .

Izvori{te mora uredno da bele`i u bafer sve one pakete koj i su poslat i a

jo{ uvek nisu potvr|eni.

Odredi{te pamti broj paketa koj i je poslednji potvr|en t j . broj paketa kojje poslednji >>dobro<< st igao na svoje odredi{te.

Odredi{te tako|e mora da sadr`i bafer u kome }e bit i svi paket i} i koj i su

primljeni al i jo{ uvek nisu st igl i na red da se za nj ih po{alje potvrda.

Dakle, ove ~etr i ta~ke govore o zahtevima koje mora da ispunjava neki sistem da

bi se ova tehnika mogla primenit i . Sama tehnika otkrivanja gre{aka funkcioni{e na

slede}i na~in.

Prvo, kada odredi{te otkri je da je do{lo do gre{ke, ono automatskuni{tava o{te}eni paket.

Zat im, odredi{te tra`i od izvora da mu ponovo po{alje paket koj i je

pretrpeo gre{ku u kanalu. Nadalje odredi{te ~eka da mu st igne taj paket

al i ako u me|uvremenu prist ignu neki paket i} i koje on ne o~ekuje

posmatraju}i nj ihove brojeve, on ih stavl ja u bafer.

Kada izvori{te primi zahtev za retransmisi jom, ono ponovo {al je

problemati~ni paket.Kada problemati~ni paket st igne, odredi{te ga prihvata i tada iz bafera

vadi paket i}e koj i s lede (ako ima takvih paket i}a u baferu).

Ovaj princip prikazan je slede}om sl ikom:

Page 55: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 55/260

23/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Ovaj princip i lustrova}emo na slede}em primeru!

Na ovoj sl ic i vidimo da je izvori{te poslalo 4 paket i}a. Me|utim prvi paket i} je

do`iveo gre{ku u kanalu i ni je regularno primljen u odredi{tu. Odredi{te }e saznat

da ne{to ni je u redu onda kada uspe{no primi paket i} broj 2 a ta~no zna da ni je

primio paket i} broj 1. Tada }e se odredi{te zapitat i >>a gde je paket i} broj 1

???<< ^im se to zapita, pdredi{te sme{ta paket i} broj 2 u bafer i {al je zahtev za

retransmisi jom paketa broj 1. Kada izvori{te primi ovaj zahtev, ono }e poslatpaket i} broj 1, a zat im nastavi t i da {al je paket i}e 5,6 i 7. U me|uvremenu, u

odredi{te st i`u paket i} i 3 i 4, al i po{to ih ono ne o~ekuje, stavl ja ih u bafer. E

kona~no sada st i`e i paket i} koj i je naru~en. Odredi{te potvr|uje da ga je dobro

primilo i zavr{ava sa nj im. Naravno, sada u svom lokalnom baferu ima paket i}e 2-

4. Odmah i nj ih potvr{uje, a u me|uvremenu st i`u na vreme i paket i broj 5-7

Page 56: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 56/260

24/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Al i ukol iko sama potvrda bude naru{ena, {ta onda?

Ova selekt ivna retransmisi ja ne pravi razl iku izme|u izgubljene poruke i one ~i ja je

potvrda izgubljena. Potvrda se gubi kada joj istekne Time Out . Pona{a se potpuno

isto kao da je poruka izgubljena. To zahteva da se u odredi{tu duplikat registruje

 To se vr{i mehanizmom numeraci je poruka. Svaki put kada se pr imi poruka vr{i se

njeno potvr|ivanje.

Go back N :

je tako|e jedna od tehnika za detekci ju gre{ke u komunikacionom kanalu.

Svaki paket i} koj i se po{alje mora bit i numerisan. Za numeraci ju se obi~no

korist i ari tmet ika po modulu x jer se t ime omogu}ava da se ist i brojev

iskoriste po nekol iko puta. Naime, kada pro|e odre|eni vremenski interva

i kada smo sigurni da je paket sa rednim brojem 0 sigurno zavr{io svo

put, onda ponovo mo`emo krenut i od nule i t ime u{tedet i na kapacitetu

memori je koja bi bi la potrebna da se pamte ogromni brojevi .

Izvori{te mora uredno da bele`i u bafer sve one pakete koj i su poslat i a

jo{ uvek nisu potvr|eni.

Odredi{te pamti broj paketa koj i je poslednji potvr|en t j . broj paketa koj

je poslednji >>dobro<< st igao na svoje odredi{te.

Sam proces otkrivanja gre{ke odvja se kroz slede}e korake:

Kada izvori{te primi o{te}eni paket, ono ga odmah uni{tava.

Odmah nakon toga odredi{te {al je signal NACK i l i REJECT {to zna~i da je

otkrio gre{ku. Nakon emitovanja ovog signala odredi{te o~ekuje da mu

st igne paket i} koj i je naru~io i automatski sve paket i}e koj i mu u

me|uvremenu prist i`u odbija i uni{tava.

Kada izvori{te primi REJECT zahtev, ono po~inje da {al je ponovo sve

paket i}e po~ev od onog za koj i je zatra`ena retransmisi ja NACK signalom

il i REJECT signalom.

Slede}a i lustraci ja reprezentuje ove korake:

Page 57: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 57/260

25/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Evo primera i za ovu tehniku !

Izvori{te {al je 4 paket i}a, me|utim prvo od nj ih ni je uspe{no primljeno. Slede}

paket i} koj i st i`e (uspe{no) je paket i} broj dva. E, sada odredi{te zna da ne{to ni je

bi lo uredu sa paket i}em broj 1 i zato tra`i da mu se ponovo po{alje paket i} broj 1

i svi paket i} i koj i s lede. U me|uvremenu, on odbija sve prispee paket i}e (pa makar

oni i bi l i urdu) jer o~ekuje paket i} broj 1. Kada odredi{te primi signal GoBackN(1

ono zna da treba po~et i sa transmisi jom ponovo od po~etka t j . od paket i}a broj 1.

Page 58: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 58/260

26/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

[ta se de{ava ako se naru{i ram potvrde? Ako su naru{eni ACK(N+1) i ACK(N+2). U

izvor st i`u ovi ACK-ovi sve do ACK(N+1), po{to izvor vidi da mu nije st igla potvrda

on smatra da se izgubio ACK(N+1). Me|utim, po{to mu nest igne ni NAK, on sada

zna da je pogre{io i da je u pitanju samo naru{avanje potvrde i da je ram

uspe{no st igao. Dakle, u tom slu~aju on ne}e vr{i t i retransmisi ju.

Primer: W=3.

Sa kol iko razl i~ i t ih rednih brojeva treba ozna~it i poruke da bi sve ovo

funkcionisalo? Izvor mo`e poslet i 3 poruke pre zaustavl janja (da sa~eka pri jem

potvrde). Vr{imo numeraci ju 0,1,2 i u odredi{te st i`u 0,1,2 korektno. Ukol iko istekne

t ime-out i bude naru{ena poruka 0, vr{i se retransmisi ja i ponovo se {al je 0

Duplikat ni je otkriven zato {to se posle dvojke {al je 0. Dakle, nismo obezbedil i

dobru numeraci ju. Ako numeraci ju vr{imo sa 0,1,2,3 . . . (w+1) {ta }e bit i ako?

Go back N:

 Tada je sve korektno ali istekne t ime-out za poruku broj 0. Tada se vr{

retransmisi ja poruke 0 i odredi{te detektuje da se radi o duplikatu, jer on o~ekuje

poruku sa rednim brojem 3. ( Ispituje se CRC i redni broj, ako se poklapaju {al je se

ACK).

Select ive retransmit ion:

Veli~ ina prozora i u izvoru i u odredi{tu je ve}a od 1. Neka budu jednaki (w)

Vr{imo numeraci ju sa w+1 razl i~ i t ih poruka. Kada se korist i selekt ivna retransmisi ja

u odredi{tu postoj i opseg va`e}ih rednih brojeva (prihvata sve i duplikate) .

Ako ACK(0) bude naru{en odredi{te se prebacuje na slede}i skup rednih brojeva.

Odredi{te ponovo {al je poruku sa rednim brojem 0. Duplikat ni je ident i f ikovan, iz

~ega zakl ju~ujemo da numeraci ja sa w+1 ni je dobra. U odredi{tu imamo

preklapanje izme|u dva susedna prozora. Zato moramo da imamo 2w  razl i~ i t ih

brojeva. Ako je razl i~ i ta vel i~ ina prozora onda se uzima w1+w2. 

I s ko r i { }enost komun i kac ionog kana la

 - Slobodni RQ (stop & wait) kor ist i numerisanje po modulu 2

 - Go Back N (kont inualni RQ) kor ist i numerisanje po modulu (w+1)

 - Selektivna retransmisi ja korist i numerisanje po modulu 2w.

Page 59: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 59/260

27/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Stop & Wait :

Ukupno vreme potrebno za slanje poruke razbi jene na n frejmova je T=n*Tf, gde je

 Tf vreme koje zahteva svaki pojedina~ni frejm i ono iznosi:

 Tf = Tprop + Tframe + Tproc + Tprop + Tack + Tproc

Gde je:

 Tprop — Propagacioni ka{njenje kroz kanal

 Tframe — Vreme potrebno za slanje jednog frejma

 Tproc — Vreme potrebno da bi se obradila(procesirala) prist igla poruka

 Tack — vreme potrebno za slanje ACK frejma

Zanemaruju}i neka vremena, mo`emo uprost i t i izraz za T:

 T=n(2*Tprop + Tframe)

Sada, na osnovu svega re~enog, mo`emo definisat i iskori{}enost kanala kao:

( )   aTframeTprop

Tframe

TframeTpropn

TframenU 

21

1

22   +=

+⋅=

+⋅

⋅=  

e propagacij Brzina

 predajnikai prijemnika RastojanjeTprop   ==

 _ 

 _  _  _  

 R

 L

 slanja Brzina

bitovimau frejma DuzinTframe   ==

 _ 

 _  _  _  

Ako uvedemo smenu da je:

Tframe

Tpropa =  

tada dobijamo:

aU  ⋅+= 21

1

 

Ovaj parametar a mo`emo izrazi t i kao:

VL

 RD

 R

 LV 

 D

novremeTransmisioa   ===

 vremenoPropagacio 

Page 60: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 60/260

28/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Gde su:

D — Rastojanje pri jemnika i predajnika

V — Brzina propagaci je (za opt i~ko vlakno je to pribl i`no jednako brzini svet lost

3*108 m/s, a za bakarne provodnike se kre}e oko 0.67 od brzine svet lost i .

L — Du`ina frejma u bitovima

R — Brzina slanja (data rate)

Ef ikasnost iskori{}enja kanala se zna~ajno pove}ava ako se omogu}i slanje ve}eg

broja frejmova bez potvrde bi lo kojeg od nj ih. Ako sa w ozna~imo broj bafera na

prednjoj strani, a sa a odnos propagacionog ka{njenja i vremena potrebnog za

slanje jednog frejma (kao u predhodnom primeru), iskori{}enost kanala se mo`e

aproksimirat i izrazom:

⎪⎩

⎪⎨⎧

+⋅+⋅

+⋅≥=

12,12

12,1

awa

waw

U p

 

Ovi izrazi dobijeni su pod pretpostavkom da je vreme prenosa 1 (normalizaci ja) , te

da je a zapravo propagaciono ka{njenje. Ukol iko je broj bafera ( t j . Vel i~ ina

prozora) na prednjoj strani dovol jno vel ik i t j . da je: TframeTpropTtransw   +⋅⋅ 2f

iskori{}enost kanala je 100% (u idealnom slu~aju bez gre{aka u kanalu i uz

zanemarivanje vremena obrade i slanja ACK frejmova). Ako broj bafera na prednjo

strani ni je dovol jan, nastaje zastoj nakon poslat ih w frejmova sve dok se ne prim

potvrda.

SA GRE[KOM:

Verovatno}a nastajanja gre{ke se zove BER (Bi t Error Rate) i to je verovatno}a da

neki bit bude naru{en. Ako je E=0.0001 verovatno}a da }e na 10 000 bitova 1 bit

bi t i naru{en. Problem je {to se poruke prenose u blokovima, u ram-u fiksne

vel i~ ine. Verovatno}a da tu bude naru{en je mnogo ve}a.

E — Bit Error

P = 1 — (1-E) n — Verovatno}a da se javi la gre{ka u paketu du`ine n

Page 61: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 61/260

29/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

P je verovatno}a da je jedan bit naru{en. I neka se poruke prenose u blokovim

vel i~ ine N bitova. Data }e verovatno}a da ceo paket bude na ru{en bit i jednak gore

napisanom obrascu: P = 1 — (1-E) n 

Postavl ja se pitanje kol ika je iskori{}enost kanala ako do|e do gre{ke u prenosu

Sa Nr ozna~imo o~ekivani broj retransmisi ja u toku prenosa. Onda je iskori{}enos

kanala:

Tt  Nr 

TixU 

⋅=  

Kako da odredimo Nr ako znamo verovatno}u nastupa gre{ke.

P — Verovatno}a da ram bude naru{en. Tada je o~ekivani broj retransmisi ja

obrnuto proporci jalan verovatno}i da ram ne bude naru{en.

 p Nr 

−=1

STOP & WAI T

( )   a

 p

a Nr U 

⋅+

−=

⋅+⋅=

21

1

21

Se lec t i v re t ransmi t i on

( )⎪⎩

⎪⎨⎧

+⋅+⋅

−+⋅≥−

=12,12

112,1

awa

 P waw P 

U p

 

Go Back N

( )( )( )⎪

⎪⎩

⎪⎪⎨

+⋅+−+⋅

+⋅≥+

=12,

112

1

12,21

1

awwP  P a

 P w

awaP 

 P 

U p

 

Za W=1 i Select ive Retransmit ion i Go Back N se svode na Stop & Wait .

Zak l j u~ak za razma t ran ja sa g re{kom:

Umesto da se korist i obrazac:Tt 

Tf  U  = , Gde je:

 Tf — vreme slanja jednog frejma

 Tt — ukupno vreme za koje je kanal zauzet tokom slanja jednog frejma

Page 62: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 62/260

30/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Ukol iko postoj i mogu}nost pojave gre{ke u kanalu, neki frejmovi se moraju poslat

ponovo. To degradira iskori{}enost kanala i ona se sada r a~una po obrascu:

Tt  Nr 

Tf  U 

⋅=  Gde je Nr o~ekivani broj slanja frejma.

Stop & Wait :( )   a

 P 

a Nr U 

⋅+

−=

⋅+=

21

1

21

Select ive reject : ( )⎪⎩

⎪⎨⎧

+⋅+⋅

−+⋅≥−

=12,

12

112,1

awa

 P waw P 

U p

 

Go Back N: ( )( )( )⎪

⎪⎩

⎪⎪⎨

+⋅+−+⋅

+⋅≥+

=12,

112

1

12,21

1

awwP  P a

 P w

awaP 

 P 

U p

 

P je verovatno}a da je jedan frejm naru{en (smatra se da ACK i NAK frejmovi nisu

naru{eni ) .

Za stop & wait i selekt ivnu retransmisi ju je:

( ) P  Nr 

−=

1

Za Go back N je daleko slo`eni ja formula! Tako da o njoj ne}e bit i re~i .

Ve rova tno}a nas ta jan ja g re{ke

se ozna~ava kao bitska brzina gre{ke (BER). Npr. BER=10 -4  t j . Od prose~no 10000

bitova 1 bit je naru{en. To ni je mnogo, al i obzirom da se ne {al ju bitovi nego

ramovi, verovarno}a da ram bude naru{en je ve}a.

E — Verovatno}a da jedan bit bude naru{en

N — Vel i~ ina rama (u bitovima)

(1-E) — Verovatno}a da bit bude ne naru{en

(1-E)n — Verovatno}a da poruka ne bude naru{ena t j . Da bude korektno primljena.

P=1-(1-E)n — verovatno}a da ram bude naru{en.

Mora da postoj i mehanizam koj i }e nas za{t i t i od gre{aka koje nastaju usled

vel ike brzine protoka ramova. Taj mehanizam je kontrola toka.

Page 63: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 63/260

31/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Ako izvor {al je podatke ve}om brzinom nego {to odredi{te st i`e da ih procesira,

popuni}e se baferski prostor u odredi{tu, tako da ne}e slat i potvrde za nj ih, pa }e

se popunit i i bafer za nj ih u izvori{tu. Ovo }e dovest i do toga da izvor mora da

stane sa slanjem.

Primer:

Niz poruka vel i~ ine 1000 bita treba da se prenese preko 100 Km dugog

komunikacionog kanala kapaciteta 20 Mbps (to je brzina prenosa). Brzina

propagaci je po kanalu iznosi 2*108 m/s i BER=4*10 -5 . Odredit i iskori{}enost kanala:

a)   Stop & Wait

b)   Select ive Retransmit ion (w=10)

c)   Go Back N (w=10)

Re{enje:

( ) ( )

( )96.01

11

96.000004.011

10

105/102

10100

 _ 

1051020

1000

2

1000

10001000

4

8

3

5

6

=−−−=

≈−=−

==

⋅=⋅

⋅=

⋅=⋅

=

+=

 P  E  P 

 E 

Tix

Tpa

 s sm

mTp

e propagacijvremeTp

 sbps

bit Tix

TpTixTt 

 

a)

046.021

1≈

+

−=

a

 P U   

b)

( )46.0

21

1

12

=+

−=

+=

a

 P wU 

aw

 

c)

338.0=U   

Page 64: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 64/260

32/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

P ro toko l i da ta- l i nk n i voa

HDLC — High Level Data Link Control - (HDLC je predlo`en kao standard po

ISO)

PPP — Point to Point - ( ov o je internetov standard za data-l ink nivo)

SL IP — Serial L ink Interupt Protocol

High Leve l Da ta L i nk Con t ro l

Ovo je protokol koj i je nastao iz IBM-ovih protokola SDLC 

HDLC  — Protokol koj i pru`a potpuni komunikacioni servis . To je bit-orjent isan

protokol. Du`ina poruke mo`e bit i proizvol jna t j . Ne mora bit i umno`ak broja

bajtova. Omogu}ava povezivanje terminala na ra~unara.

Podr`ava dva re`ima rada:

Neba l an s i r a n i r e ` im no rma l n i h odgo vo r a   ( inbalanced Normal Responce

Mode). Ovaj protokol funkcioni{e ako su u pitanju terminalske mre`e

Centralni ra~unar je taj koj i je zadu`en za uspostavl janje i raskidanje veze

Asinhroni balansirani re`im rada  (asynchronous Balanced Mode). Korist i se

kada su u pitanju mre`e ra~unara, kada se na obe strane nalaze jednak

(ravnopravni ) ra~unari .

Formati okvira za ovaj protokol je f iksan bez obzira da l i se radi o informacionom

il i upravl ja~kom ramu.

8 8(8x) 8(16) 16 8

f lag ad resa con tr ol --- in fo rmac ij a--- FCS f lag

 

Flag slu`i da ograni~i okvir : 01111110

Adresa: Kod nebalansiranog re`ima se javl ja ovo polje i to je adresa terminala sa

koj im se uspostavl ja veza. Ovo polje mo`e imati 8-bitno i l i pak umno`ak ovevrednost i . 

NPR: Ako ima 3B (bajt a ne bit ) adresa. Prvi bit u oktetu nam ozna~ava da l i je to

poslednji bajt adresnog polja (0=nije, 1=jeste) . Dakle, ako ima 3 bajta, u prva dva

bajta }e prvi bit bi t i obavezno 0, da bi inic irao da postoj i jo{ bajtova posle njega

Samo zadnji bajt na svojoj prvoj pozic i j i (prvi bit ) ima jedinicu, koja ka`e da je to

Page 65: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 65/260

33/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

bio poslednji bi t . Ukol iko `el imo da paket skigne do svih adresa, onda u polje

adrese upisujemo 11111111.

Vrs te ramova :

HDLC razl ikuje tr i vrste ramova:

Informacioni

Nenumerisani

Supervizorski

U Control bloku se defini{e o kojoj vrst i rama se radi.

Information:  Je informaci ja koja se prenosti . 

FCS:  Je u su{t in i CRC, a generatorski pol inom za ovaj protokol je: X 1 6+X 1 2+X5+1

Ovde je malo modif ikovana procedura za CRC. Umesto dodavanja 16 nula, dodaje

se 16 jedinica pa se to del i sa generatorskim polinomom, a dobijeni ostatak se

prvo invertuje, pa se onda vr{i sabiranje po modulu dva invertovanog ostatka

Sada, kad se vr{i kontrola gre{ke del i se sa generatorskim polinomom i ako nema

gre{ke ne dobije se ostatak nula ve} definisana sekvenca bitova i to je (1D0F)HEX .

Control :

1 3(7) 1 3(7)

0 N(S) Pool/Final N(R)

 - Nula u prvom polju govori da je u pitanju informacioni ram  

 - N(S) je redni broj poruke koja se {alje. Ovaj protokol dozvol java numeraciju

poruka po modulu 8 i l i modulu 128. Dakle, 8 i l i 128 poruka mo`e bit i poslato a

nepotvr|eno.

 - Pool/Final je bit prozivke i l i krajnji bit . Naziva se bit prozivke , kada ga upu}uje

strana koja uspostavl ja vezu, za drugu stranu to je Final bit . Ako je postavl jen na 1

zahteva se od druge strane potvr|ivanje teku}eg rama.

 - N(R) sadr`i redni broj poslednje ko rektnog pr imljenog rama. Ova informaci ja je

korist i ujedno i kao ram potvrde, ako je u pitanju dvosmerna komunikaci ja (Piggy

Backing — na le|ima).

Page 66: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 66/260

34/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Ako je u pitanju nenumerisani ram. On se korist i za uspostavl janje i raskidanje

veza. Ovakvi ramovi ne sadr`e informaci je o rednim brojevima. Samo jedan ovakav

ram mo`e bit i poslat a nepotvr|en.

Ovi M-ovi zajedno slu`e kao operacioni kod komande koja se korist i pr

uspostavl janju i raskidanju veze. Te komande su:

SNRM(E) — Set Normal Response. Za uspostavl janje veze(za numeraci ju po

modulu 8, i l i za numeraci ju po modulu 1 28

SABM(E) — Uspostavl ja se asinhroni balansni re`im rada. (E )-po modulu 128

UA — Unnumber Acknowledgement

DISC — Zahteva se raskidanje veze.

UP — Nenumerisana prozivka — U terminmalskim mre`ama za prozivku

terminala

DM — Kada primenik odbije uspostavl janje veze

Supervizorski ram :

Korist i se za kontrolu gre{ke i oporavak od gre{ke. Dakle, slu`i za potvr|ivanje

rama ako druga strana nema informacione ramove za slanje. Mogu}esupervizorske komande su slede}e:

2 2 1 3

1 0 S Pool/Final N(R)

Ovi ramovi slu`e za potvr|ivanje u slu~aju da druga strana nema svoje

informacione ramove za za potvr|ivanje.

RR = 00 -> Receive Ready — Spreman za pri jem, vr{i se potvr|ivanje

da je poruka primljena uredu.

RNR = 01 -> Receive Not Ready — Sadr`i redni broj poruke koja je

primljena al i saop{tava da privremeno treba prekinut i sa slanjem poruke.

REJ = 10 -> Korist i se za detekci ju gre{ke u primljenom ramu

2 2 1 3

1 1 M Pool/Final M

Page 67: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 67/260

35/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

SREJ = 11 -> Korist i se za detekci ju gre{ke u primljenom ramu

Kada se detektuje gre{ka u toku prenosa. Ona se emituje ako u odredi{te prist igne

poruka van o~ekivanog rednog broja.

REJ i SREJ govore da se vr{i retransmisi ja poruka po principu vrat i se na N

(Goback N). Ako se emituje SREJ, re~ je o selekt ivnoj transmisi j i t j . {al je se

samoporuka koja je naru{ena.

Kod asinhronog balansnog re`ima rada bilo koja strana mo`e da prekine vezu.

PPP p ro toko l

Point-to-Point protocol. Ranije je bio SLIP. PPP se korist i za povezivanje lokalne

mre`e na internet, i l i za povezivanje PC-a preko modema do internet provajdera

HDLC je bit-ori jent isan  protokol, a PPP je ba j t o r i j en t i san   protokol ( informaciono

polje je umno`ak bajtova). Osnovni zadaci PPP-a su:

Uramlj ivanje paketa (PPP urami paket koj i je prist igao sa mre`nog nivoa

tako da je pri jemnik u stanju da odredi po~etak i kraj paketa.

 Transparentnost : Ne smeju da postoje ograni~enja u vidu sadr`aja paketa

koj i dolazi sa mre`nog nivoa.

Da podr`i razl i~ i te protokole mre`nog nivoa preko iste point-to-point veze.

 Treba da podr`i i razl i~i te protokole f iz i~kog nivoa

Detekci ja gre{aka

Odr`avanje veze: Treba da detektuje otkaz na data-l ink nivou i da ostal im

nivoima signaliz ira.

Pregovaranje oko mre`ne adrese

Pored ovol ik ih zadu`enja za koja je PPP zadu`en, od njega se ne o~ekuje da:

Koriguje gre{ke

Kontrol i{e tok

Numeri{e poruke ( to rade vi{ i nivoi )

Format okvira:

Page 68: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 68/260

36/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

8 8 8 8 (1 6) 1 6(32) 8

F lag adresa Con tro l protocol Info rmac ija CLR F lag

Ovaj protokol je strogo namenjen poin-to-point mre`ama. Adresa  je uvek 11111111

jer je PPP protokol samo emisioni (broadcast ) protokol. Flag  je 01111110. Control  je

00000011. Ova polja koja su konstantna, mogla su i da se izostave, a da se

podrazumevaju, me|utim, zbog eventualne promene i l i evoluci je protokola, ova

polja su ostakla.

Protocol ozna~ava koj i je protokol mre`nog nivoa u pitanju ( IP, IPX, . . . ) . Sadr`a

ovog polja mo`e da bude iLCP

  (L ink Control Protocol ) koj i se korist i za

uspostavl janje veze i tada je u Info pol ju komanda za uspostavl janje veze.

Info pol je je maksimalno 1500 bajtova. Ako se u info na|e Flag ume}e se

speci jalni ESC karakter. ESC bajt ukazuje da posle njega ni je upravl ja~ki bit ve}

info. Ako je upravl ja~ki bajt = ESC onda se dodaje jo{ jedan ESC, tako da se uvek

mo`e prepoznat i da l i je ESC kao speci jalni karakter i l i je u sastavu upravl ja~kogbita.

Uspostavl janje i raskidanje veze : Korist i se LCP protocol. U info delu je sada

konekcioni zahtev, a u polju za protokol nalazi se LCP.

Configure Request  (konfiguracioni zahtev koj i se {al je u info delu) u kome mo`e da

se defini{e maksimalna kol i~ ina podataka koj i se razmenjuju i l i koj i je mehanizam

potvr|ivanja. Dakle, specif ic iraju se uslovi veze. Druga strana mo`e da po{alje kao

odgovor Configure ACK  (Uredu, dogovori l i smo se), Configure NACK  (znam {ta

ho}e{, al i mi je to neprihvat l j ivo, Configure REJ  (Ne razumem tvoje opci je

verovatno je nastala gre{ka u prenosu).

Nakon uspostavl janja konekci je treba da se defini{e komunikaci ja prema vi{em

nivou. Ciklus je prikazan preko automata na slede}oj sl ic i .

Zatvorena

 veza Uspostavljanje veze

 Autentifikacija

Konfigurisanje mreznog ivoaOtvorena

 veza

Zatvaranje veze

 

Page 69: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 69/260

37/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

MRE`NI NIVO

Primarni interfejs izme|u HOST-a i komunikacione podmre`e se doga|a na ovom

nivou. Mre`ni nivo je zadu`en za prenos paketa izme|u dva HOST-a za razl iku od

Data Link nivoa koj i je imao zadatak da prenese paket izme|u dva kraja veze

( izme|u >>rutera i rutera<< i l i izme|u >>hosta i rutera<<. Da bi ovo mogao da

obavi, mre`ni nivo mora da poznaje topologju komunikacione podmre`e.

Osnovno pitanje oko koga se vode rasprave je koju vrstu usluge treba mre`ni nivo

da obezbedi transportnom nivou:

Konekcioni i l i

Beskonekcioni servis

O konekcionim i bezkonekcionim servis ima smo govori l i u uvodnom delu ove

knj ige. Samo podse}anja radi nave{}u neki l iko osnovnih principa.

Konekcioni servis:  obezbe|uje idealan  komunikacioni kanal za transportni nivo

(nema gre{ke-paket i} i se isporu~uju po redosledu).Beskonekcioni servis  ne pru`a nikakve garanci je transportnom nivou. Kontrola

gre{ke je ostavl jena u nadle`nost i hosta.

Rasprava:

 Telefonske kompanije su pobornici konekcionig servisa a kao opravdanje navode

100-godi{nje uspe{no iskustvo sa telefonskim sistemima. Drugu grupu pobornika

predstavl ja internet populaci ja koja smatra da je zadatak podmre`e samo prenospaketa i ni{ta vi{e. Po nj ihovom mi{l jenju koje se zasniva na 30 godi{njem

iskustvu u radu sa realnim mre`ama, komunikaciona podmr e`a je nepouzdana bez

obzira na to kako je projektovana. Zato HOST treba da prihvat i tu ~injenicu i da on

obavl ja kontrolu gre{aka i kontrolu toka. U su{t ini pitanje se svodi na to gde se

stavl ja kompleksnost . Kod konekcionog servisa, mre`ni nivo nosi teret  dok je kod

beskonekcionog servisa to t ransportni nivo t j . HOST(na{ ra~unar)

Pobornic i beskonekcionog servisa kao ~injenicu navode to da su ra~unari postal

mo}nij i i jeft ini j i , pa nema razloga da HOST ne obezbedi funkci je rut iranja, kontrolu

toka. Me|utim, za mnoge real-t ime aplikaci je je mnogo bitni ja brzina od

pouzdanost i (na primer prenos glasa i l i s l ike) . S druge strane pristal ice

konekcionog servisa ka`u da mnogi korisnic i ne `ele da na nj ihovim ma{inama

izvr{avaju kompleksni protokol i transportnog nivoa.

Page 70: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 70/260

38/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

INTERNET  ima beskonekcioni mre`ni nivo, a ATM  (Asynchonius Transfer Mode

konekcioni. Vide}emo kako komuniciraju hostovi koj i se nalaze u mre`ama sa

razl i~ i t im mre`nim nivoima. Konekcioni servis je obi~no implementiran preko

virtuelnog kanala

, a konekcioni kaodatagram

.

Virtualni kanal :

Kada se korist i model vir tuelnog kanala, onda se pre po~etka slanja podataka

{alje speci jalni paket CALL REQUEST  koj im se uspostavl ja veza ( i odre|uje put

izme|u izvornog i odredi{nog hosta. Taj paket sadr`i punu adresu izvora

odredi{ta i jedan referent i broj koj i se zove logi~ki broj vir tuelnog kanala(port )

Kada se veza uspostavi , t j . obezbedi put izme|u izvora i odredi{ta, taj put se

korist i za sve pakete koj i su deo jedne poruke. Svi paket i sadr`e ist i broj vir tuelnog

kanala, al i bez adresa izvora i odredi{ta. Paket i prist i`u u odredi{e u redosledu u

kom su poslat i , jer svi koriste ist i put. Mo`e se uspostavi t i ana logi ja sa telefonskim

pozivom — prvo se uspostavi veza, pa se onda obavl ja komunikaci ja) .

Ako se korist i model virtuelnog kanala  svaki ruter mora da sadr`i tabl icu u kojopamti redne brojeve vir tuelnih kanala koj i su ostvareni preko njega. U tabl ic i se

vodi evidenci ja odakle je st igao paket, sa koj im rednim brojem, po kom kanalu

treba da se uput i i sa koj im rednim brojem. Pri tome treba napomenuti da kada

se uspostavl ja vir tuelni kanal bira se na jni` i neiskori{}eni redni broj za datu vezu

ut iskuje se u paket. Pri tome treba napomenuti da broj koj i je ut isnut u paket u

izvoru ne mo`e da bude ist i kao broj koj im on prist i`e u odredi{te, al i sve dok se

odredi{ni host vidi sa ist im dolaznim brojem nema problema. Virtuelni kanal se

bri{e i logi~ki broj napu{ta nakon okon~anja razmene podataka. Mogu}e je da jevir tuelni kanal stalno uspostavl jen, tako da korisnik koj i `el i stalno da komunicira

sa drugim korisnikom ne mora da uspostavl ja novi vir tuelni kanal. Ovo je poznato

kao permanentni vir tuelni kanal . Ova vrsta usluge se posebno pla}a.

Datagram:

Kod datagram usluge, nema inic i jalnog uspostavl janja veze. Svaki paket se {al je

nezavisno od prethodnog i sadr`i punu adresu izvora i odredi{ta. Paket i mogu

putovat i razl i~ i t im putevima i mogu prist izat i u odredi{te van redosleda. Datagram

je analogan slanju pisama. Svako pismo pismo se prenosi kao posebna jedinica

ima kompletnu adresu i izvora i odredi{ta. Ako se pismo izgubi, po{tanski sistem

ne korist i t ime-out, ve} je kontrola gre{aka u nadle`nost i korisnika.

Page 71: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 71/260

39/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Ru t i ran j e pake ta

Kao {to smo ve} napomenuli , osnovne funkci je mre`nog nivoa su rut iranje  t j

odre|ivanje puta paketa kroz mre`u i spre~avanje zagu{enja. Odre|ivanje puta

paketa se vr{i na osnovu tabl ica koje se nalaze u svakom ruteru. U zavisnost i da

l i se korist i model virtuelnog kanala i l i datagram model.

Kod modela virtuelnog kanala put paketa se odre|uje u samoj fazi uspostavl janja

vir tuelnog vir tuelnog kanala, a zat im svi paket i koriste ist i trasirani put. Kod

datagram  modela se za svaki paket i} utvr|uje novi put kroz topologi ju mre`e

 Tablice koje se formiraju u ruteru i koje se koriste za odre|ivanje puta paketa

imaju slede}i izgled.

Za svako potenci jalno odredi{te ( t j . svaki ruter) postoj i po jedna vrsta u tabl ic i . U

toj vrst i se navodi po kom kanalu se paket upu}uje da bi st igao do datog

odredi{ta. Nekad se navodi i alternat ivni put.

CAB

DEF

12

32 1 3

4

 

NPR: Ako je mre`a ovakva, tabl ica za ~vor A bi bi la ovakva:

Odredi{te Put Alternat ivni put

B 1 2

C 1 2

D 3 2

E 3 2

F 2 1

Paket ulazi u mre`u sa adresom odredi{ta u zaglavl ju. Odluke o putu se donose u

svakom ruteru kroz koj i paket prolazi na osnovu tabl ica za odre|ivanje rute(puta)

Page 72: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 72/260

40/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Ove tabl ice mogu bit i stat i~e  i dinami~ke. Stat i~ke tabl ice su unete u ruter u faz

projektovanja mre`e i retko se menjaju. Dinami~ke tabl ice se koriste kada se

odluke o putu donose na osnovu saobra}aja kroz mre`u, jer se `el i uvek poslat i

paket kroz l ini ju gde je gu`va manja. Algori tmi kol i se koriste za ovakvo rut iranje

nazivaju se adaptivni algori tmi .

Adaptivni algori tmi  se razl ikuju po tome odakle dobijaju informaci je (npr: lokalno

samo od susednih rutera i l i iz svih rutera), kada menjaju puteve (na odre|en

interval vremena se osve`avaju tabele jer se u me|uvremenu promenilooptere}enje t j . topologi ja mre`e). Koja metrika se korist i za opt imizaci ju (npr bro

skokova, rastojanje, ka{njenje i td. . )

P r i nc ip op t ima lnos t i

Pre nego {to damo neke konkretne algori tme za rut iranje, navedimo kako se

donosi odluka o opt imalnom putu (bez obzira na topologi ju i saobra}aj ) .

Princip opt imalnost i  glasi : Ako je ruter J na opt imalnom putu od I do K, tada je

opt imalni put od J do K na istom putu.

DOKAZ

: Ozna~imo put od I do J sa R1, a ostatak R2. Ako postoj i bol j i put od J do

K od R2, on bi opt imalan put bio R1 + R3 a ne R1 + R2 kao {to smo pretpostavi l i

Dakle, i l i je opt imalan za sve rutere koj i se nalaze na njemu i l i uop{te ni je

opt imalan.

Kao direktna posledica principa opt imalnost i mo`e se zakl ju~i t i da najkra}i putev

od svih izvora do jednog odredi{ta formiraju stablo sa korenom u odredi{nom

~voru. Ovo stablo ne mora bit i jedinstveno. Ci l j algori tma za rut iranje je daprona|e ovo stablo za sve rutere.

DOKAZ da svi ptevi ~ine stablo ->

Pretpostavimo suprotno, da postoj i pet l ja u putu, pri ~emu za svaki mogu}i pu

tvrdimo da je opt imalan.

I J

P

KL1

L2   L3

 

Put od I do J ima te`inu L1. S druge strane od I do J se mo`e st i} i i preko P i za

taj put tako|e tvrdimo da je opt imalan. Iz ovoga bi moralo da va`i da je L1=L2+L3

Page 73: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 73/260

41/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Put od P do J preko L3 je opt imalan. S druge strane od P do J se mo`e do}i i

preko L2+L1, koj i je tako|e opt imalan. To je ta~no ako je L3=L2+L1. Ako saberemo

ove dve jedna~ine dobi}emo da je L1+L3=2L2+L1+L3 => L2=0 Dakle, dokazali smo

da nema pet l je.

S ta t i ~ k i a lgo r i tm i

Dijkstra algori tam  (1959). Zadate su pozic i je rutera i rastojanja izme|u nj ih (ni je

obavezno da metrika bude rastojanje, mo`e da bude i broj skokova, ka{njenje

i td. . . ) Ci l j je na}i najkra}i put od izvora do odredi{ta. Algori tam startuje od izvora

svakom ~voru pridru`uje jednu labelu (oznaku) koja sadr`i informaci ju o rastojanju

od izvornog ~vora i informaci ju preko kog ~vora se dobija to rastojanje. Labele

mogu bit i privremene  i permanentne . Labela je privremena sve dok se ne utvrdi da

je to najkra}i put od izvora do tog ~vora. Tada se labela progla{ava

permanentnom. Algori tam se zavr{ava kada sve labele postanu permanentne

Algori tam je i terat ivne prirode. U po~etku svi ~vorovi imaju oznaku ( )−,0α  . Izuzev

izvornog ~vora. Zat im se odre|uje rastojanje od izvora do najbl i` ih suseda i lab ela

se menja. Zat im se od svih privremenih labela bira ona sa najmanjom vredno{}u

rastojanja i progla{ava se permanentnom. Zat im se za tu permanentnu labelu

utvrdi najbl i` i sused sa privremenom labelom i odre|uje novo rastojanje, i td . .

Primer:

A A

A A

A A

B B

B B

B B

C C

C C

C C

D D

D D

D D

E E

E E

E E

F F

F F

F F

G G

G G

G G

H H

H H

H H

2 2

2 2

2 2

2 2

2 2

2 2

6 6

6 6

6 6

1 1

1 1

1 1

4 4

4 4

4 4

2 2

2 2

2 2

7 7

7 7

7 7

3 3

3 3

3 3

3 3

3 3

3 3

2 2

2 2

2 2

2 2

2 2

2 2

(a,-) (6,A)

(6,A) (5,E)

(5,E) (5,E)

(a,-) (a,-)

(4,B) (4,B)

(4,B) (4,B)

(a,-) (2,A)

(2,A) (2,A)

(2,A) (2,A)

(a,-) (a,-)

(9,B) (9,B)

(9,B) (9,B)

(a,-) (a,-)

(a,-) (6,E)

(6,E) (6,E)

(a,-) (a,-)

(a,-) (a,-)

(9,G) (8,F)

(a,-) (a,-)

(a,-) (a,-)

(a,-) (a,-)

 

Page 74: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 74/260

42/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

F l ood ing A lgo r i t am (bu j i ca , pop lava )

Kod ovog algori tma svaki paket koj i st igne u ruter se {al je po svakom izlaznom

kanalu (osim po onom iz koga je do{ao). O~igledno je da ovaj algori tam generi{e

mnogo duplikata paketa, pa je potrebno uvest i neku meru da se okon~a proces

 Jedna takva mera je broja~ skokova  u zaglavl ju svakog paketa koj i se

dekrementira pri svakom prolasku kroz neki ruter, a paket se odbacuje kada b roja~

padne na nulu. Idealno bi bi lo da se broja~ postavi na du`inu puta od izvora do

odredi{ta. Ako izvor nezna rastojanje, onda se broja~ mora inic i jal izovat i nanajdu`i put t j . di jametar mre`e.

Ovaj algori tam nije prakt i~an za mnoge primene al i ipak ima svoje korisnike. NPR

u vojnim aplikaci jama gde ruteri mogu bit i uni{teni u bi lo kom trenutku, robusnos

ovog algori tma je izuzetno po`el jna. U aplikaci jama sa distr ibuiranim bazama

podataka ponekad je potrebo a`urirat i sve odjednom. I u takvim slu~ajevima

flooding ima presudni zna~aj. Tre}a mogu}nost kori{}enja ovog algori tma je kao

mera (reper) u odnosu na koj i se mere svi ostal i algori tmi. Buj ica uvek bira

najkra}i put, jer bira svaki mogu}i put paralelno. Shodno tome ni jedan drugi

algori tam ne mo`e dat i manje ka{njenje kroz mre`u.

Adap t i vn i a lgo r i tm i

Mogu bit i :

Globalni i

Decentral izovani

Kod globalnih  adaptivnih algori tama najbol j i put izme|u izvora i odredi{ta

odre|uje se na osnovu globalnog znanja o mre`i, a zat im se odre|ivanje puta vr{

u jednom centru (central izovani algori tam) i l i u vi{e centara. Kl ju~no kod ovih

algori tama je da oni poseduju potpune informaci je o povezanost i i ceni veza

Najpoznat i j i predstavnik ove grupe je L INK STATE algori tam.

Kod decentral izovanih  algori tama najbol j i put se odre|uje i terat ivno t j . jedan ~vor

nema potpunu informaci ju o ceni veza u mre`i. Svaki ~vor u po~etku posedujeznanje samo o ceni veza sa najbl i` im susedima, a zat im se u toku i terat ivnog

procesa razmenjuju informaci je sa najbl i` im susedima. Najpoznat i j i predstavnik ove

frupe algori tama je distance vector algori thm .

Page 75: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 75/260

43/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

D i s tance vec to r a lgo r i t hm

Svaki ruter sadr`i tabelu sa ulazom za svaki drugi ruter u mre`i. Svaka vrsta (ulaz

sadr`i dva dela:

Najpo`el jni ju l ini ju za tu dest inaci ju i

Procenu rastojanja i l i ka{njenja do te dest inaci je

Usvaja se da ruter zna rastojanje do svakog svog suseda. Rastojanje ne mora bit

du`insko! Ono mo`e bit i broj koraka, vel i~ ina reda za ~ekanje, ka{njenje i td . . .Akoje metrika ka{njenje ruter mo`e da ga odredi kori{}enjem speci jalnog ECHO paketa

koj i pri jemnik veri f ikuje i vra}a ga {to pre mo`e.

Pretpostavimo da je metrika ka{njenje i da ruter zna ka{njenje do svakog od svoj ih

suseda. Svakih T mikrosekundi ruter {al je svoj im susedima l is tu ustanovl jenih

ka{njenja za svaku dest inaci ju. Tako|e, prima sl i~nu l is tu od svoj ih suseda. Ovo se

naziva osve`avanje tabl ica .

Pretpostavimo da je jedna od ovih tabela svakog od suseda X, pri ~emu X

ozna~ava X-ovu cenu za ka{njenje do rutera i . Ako ruter koj i je prmio tabl icu zna

da ka{njenje do rutera X iznosi m mil isekundi, onda on zna da do rutera xi mo`e

st i} i za vreme xi + m preko rutera X.

Obavl jaju}i ovakva izra~unavanja za svakog suseda, ruter mo`e prona}i koja je

procena cene najbol ja i tu procenu iskorist i t i i a`urirat i odgovaraju}i ulaz u svojo

tabl ic i rut iranja. Stara tabela se ne korist i u izra~unavanju.

PRIMER: Za mre`u sa 5 ~vorova, datu na sl ic i 2, prikazat i postupak punjenja tabela

rastojanja u svim ~vorovima primenomDistance Vector Rout ing

 algori tma.

Re{enje:

Page 76: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 76/260

44/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

A

A

A

B

B

B

C

C

C

D

D

D

E

E

E

B

B

B

C

C

C

D

D

D

E

E

E

A

A

A

C

C

C

D

D

D

E

E

E

A

A

A

B

B

B

D

D

D

E

E

E

A

A

A

B

B

B

C

C

C

E

E

E

A

A

A

B

B

B

C

C

C

D

D

D

B

B

3

3

B

3

3

3

7

712

9

9

E

E

5

5

E

11

11

14

13

8

8

5

5

5

A

A

3

3

A

3

3

31011

8

8

C

C

4

4

C

11

4

4

4

9

9

13

12

E

E

6

6

E

11

11

15

14

9

9

6

6

6

B

B

4

4

B

7

7

4

4

413

10

10

D

D

5

5

D

1314

5

5

5

8

8

E

E

9

9

E

14

14

15

15

12

12

9

9

9

E

E

3

3

E

8

8

9

9

12

11

3

3

3

C

C

5

5

C

12

9

9

5

5

5

14

13

A

A

5

5

A

5

5

5

8

81213

B

B

6

6

B

9

9

6

6

6

10

1015

C

C

9

9

C

16

13

13

9

9

9

14

14

D

D

3

3

D

1112

8

8

3

3

3  

Diskusi ja re{enja:

U prvom redu tabela, popunjavaju se samo razdalj ine do direktnih suseda.

U drugom redu tabela, sledi se slede}a logika:

1.  Da bi iz A do{ao do B, kre}u}i se preko B, potrebno mi je 3 ( jedinice cene)

Ovo je direktna veza.

2.  Da bi iz A do{ao do B, kre}u}i se preko E, prvo moram da izra~unam kol iko }e

mi trebat i da do|em od A do E. Nakon {to sam to izra~unao ( pogledav{i u

tabele iz prvog reda ) dopisao sam plavom bojom broj 5 iznad kolone E. Ova

broj mi ozna~ava da mi od A do E treba 5 jedinica cene. Sada, kada znam

koliko mi treba od A do E treba da na|em kol iko mi treba od E do B i da turazdalj inu saberem sa onim plavim brojem 5 iznad tabele. Hmmmm, od E do B

}e mi trebat i 6 jedinica cene. Dakle, kada saberem onu plavu pet icu i ovu

{est icu, dobijam 11.

3.  Is tom logikom se slu`imo za sve mogu}e dest inaci je.

Page 77: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 77/260

45/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

U tre}em redu tabela se sledi sl i~na logika kao u drugom koraku. Ja }u dat i

primer ponovo za tabelu A:

1.  Da bi se iz A do{lo do B, kre}u}i se preko B, potrebno mi je 3 jedinica cene.

Ovo je, kao i u pro{lom primeru, direktna veza.

2.  Da bi se iz A do{lo do C preko E, moramo prvo da vidimo kol iko nam treba od

A do E, i da napi{emo onaj plavi broj iznad tabele. Po{to sam ve} jedared

odredio sve plave brojeve za prvi red tabl ica, prosto }u prepisat i plavu pet icu

iznad kolone za E. Sada, treba odredit i , kol iko mi je potrebno od E do C

Posmatram drugi red tabela i zakl ju~ujem da je ovog puta na raspolaganju tr

vari jant i . Te vari jante su 10, 9 i 8 jedinica cene. Naravno, slu`e}i se principom

ekonomi~nost i , biram ono 8. Dakle, sada treba sabrat i 8+5 i dobijamo 13

jedinica cene. Prime}ujemo da je za ovaj ist i put u drugom redu tabela bi lo

potrebno 14 jedinica cene! Naravno, jer tada smo za put izme|u E i C imal

samo jednu opci ju koja je ko{tala 9 jedinica cene. Sada su nam se otvori le

nove opci je, mi smo biral i naj jeft ini ju i tako je na{a tabela po~ela da

konvergira ka najjekonomi~ni jem re{enju.

Is tom logikom se slu`imo za sve mogu}e dest inaci je.

Ovaj algori tam teori jski dobro funkcioni{e, al i u praksi ima mnogo mana. Mada

konvergira ka konkretnom re{enju to mo`e bit i veoma sporo . Na dobre vest

reaguje brzo, al i na lo{e veoma sporo.

Posmatrajmo ruter ~i j i je najbol j i put do X veoma vel ik i . Ako kod slede}e razmene

sused, NPR A, raport ira kratko ka{njenje do X, ruter }e jednostavno odmah po~et

da korist i l ini ju prema A za saobra}aj do X. U toku jedne razmene vektora dobra

vest je primljena.

Da bi smo videl i kojom brzinom se dobre vest i  prenose, uzmimo primer slede}e

mre`e pri ~emu je kao metrika uzet broj skokova.

EA   B   C   D  

Pretpostavimo da inic i jalno A ne funkcioni{e i svi ostal i ruteri to znaju. Drugim

re~ima, svi imaju procenjeno ka{njenje do A jednako beskona~nost i . Kada se A

vrat i ostal i ruteri saznaju za to razmenom vektora. Kod prve razmene B uo~ava da

njegov levi sused ima nulto ka{njenje do A, pa a`urira svoju tabelu i ka`e da je

Page 78: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 78/260

46/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

broj skokova do A jednak = 1. Svi ostal i ruteri misle i dal je da je A van upotrebe.

Kod slede}e razmene C uo~ava da je rastojanje od B do A = 1, pa a`urira svoju

tabelu, i td . . .

O~igledno je da }e se dobra vest prenosit i brzinom od jednog skoka po razmeni

Ovi koraci prikazani su slede}om tabelom:

A B C D E

+beskona~no +beskona~no +beskona~no +beskona~no

1 +beskona~no +beskona~no +beskona~no

1 2 +beskona~no +beskona~no

1 2 3 +beskona~no

1 2 3 4

A sada pogledajmo i lustraci ju za brzinu {irenja lo{ih vest i . Posmatrajmo sada

situaci ju kada su inic i jalno sve l ini je i ruteri akt ivni . Ruteri B,C,D i E imaju

rastojanja 1, 2, 3 i 4 do A respekt ivno. Iznenada A prestane da radi.

Kod prve razmene B ne ~uje ni{ta od A. Na sre}u C mu ka`e >>ne brini , ja imam

put du`ine 2 do A<<. Pri tome B nema pojma da taj put vodi preko njega

samoga. Kao rezultat toga B shvat i da mo`e st i} i do A preko C za 3 skoka.

Kod druge razmene, C uo~ava da svaki od njegovih suseda tvrdi da ima rastojanje

3 do A. On odabira jedan od puteva (random — odabir ) , i ozna~ava da je novorastojanje do A jednako 4. Ostatak korak se odvi ja po istom principu. Ovo je

prikazano tabelom:

A B C D E

1 2 3 4

3 2 3 4

3 4 3 4

5 4 5 4

+beskona~no +beskona~no +beskona~no +beskona~no

Page 79: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 79/260

47/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

O~igledno je da broj razmena te`i +beskona~nost i . Ovaj problem je poznat pod

nazivom >>brojanje do beskona~nost i<< i l i >>Count To Inf ini ty<<.

Predlo`eno je mnogo re{enja u l i teraturi za ovaj problem (pri ~emu je svako novo

re{enje slo`eni je i manje efikasno od prethodnog).

Sp l i t ho r i zon a lgo r i t am

Nave{}emo SPLIT HORIZON  algori tam koj i radi isto kao Vector Distance  s jednom

izmenom: Ako Z korist i Y da st igne do X, tada }e Z re}i da ima rastojanje

+beskona~no do X. Z }e nastavi t i da govori ovu la ` Y sve dok put do X vod i preko

Y. Po{to Y veruje da Z nema put do X, Y nikako ne}e poku{at i da st igne do X

preko Z, sve dok Z komunicira sa X preko Y.

EA   B   C   D

Z   Y   X

 

Inic i jalno C ka`e D ist inu o rastojanju do A, al i ka`e la` B-u da mu je rastojanje

do A +beskona~no. Sl i~no D ka`e ist inu E-u a la` C-u. Da vidimo {ta se de{ava

kada A otka`e. Kod prve razmene B }e utvrdit i da je direktna veza pukla. C ga

la`e da je njegovo rastojanje do A +beskona~no (ne postoj i ) pa on a`urira svoju

tabl icu da mu je rastojanje do A = +beskona~no. U slede}oj rameni C ustanovl java

da oba njegova suseda imaju +beskona~no rastojanje do A, pa i on svoje

rastojanje setuje na +beskona~no, i td . . .Me|ut im, i ovaj algori tam mo`e da ima problem >>brojanje u beskona~nost<<

Razmotrimo NPR: slede}u mre`u.

A   B

C

D  

Inic i jalni A i B imaju rastojanje 2 do ~vora D, a C rastojanje 1 do ~vora D.

Pretpostavimo da l ini ja CD pukne. A i B ka`u C-u da ne mogu da do|u do D t j .

Da im je rastojanje do D +beskona~no jer je put do D vodio preko C. Na taj na~in

C odmah zakl ju~I da je D nedostupan, i izve{tava o tome A i B. Na `alost , a ~uje

Page 80: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 80/260

48/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

do B ima put du`ine 2 do D, pa zakl ju~uje da mo`e do}I do D za 3 koraka. Sl i~no

zakl ju~uje i B. U slede}oj razmeni A i B postavl jaju svoje rastojanje do D na 4,

I td… Ovo dovodi upravo do si tuaci je koju smo htel i da izbegnemo (brojanje do

beskona~nost i ) .

L i nk s ta te a lgo r i t hm

Distance Vector

  je kori{}en u Arpanetu do 1979 godine, kada je zamenjen saL ink

State algori tmom. Dva razloga su postojala za to:

Prvo, po{to je metrika za ka{njenje bi la du`ina reda ~ekanja, nisu se

uzimali u obzirkapacitet i l ini ja

  kod promene putanje. Inic i jalno su sve

l ini je bi le 56kb/s, al i su kasni je neke zamenjene sa 239 kb/s a zat im sa

1.544 Mb/s. Ne uzimanje kapaciteta l ini ja u obzir bio je vel ik i problem.

(Naravno, metrika je mogla da se promeni da se uzme u obzir kapacitet

l ini ja)

Drugi problem je bio {to je nekada bilo potrebno mnogo vremena da

Distance Vector algoriam konvergira do najbol jeg re{enja, ~ak i saSpl i

Horizon metodom.

Zbog ovih problema Distance Vector je 1979-te zamenjen potpuno novim

algori tmom (L ink State  algori tmom). Mnoge vari jane Link State algori tma se i dan

danas koriste. Ideja na kojoj se bazira Link State zasniva se na pet stavki :

Otkri t i svoje susede i ustanovit i nj ihove mre`ne adrese

Izmenit i ka{njenje i l i cenu do svakog suseda

Konstruisat i paket koj i sadr`i sve {to zna

Poslat i ovaj paket svim ruterima

Izra~unat i najkra}i put do svih akt ivnih rutera

U su{t ini potpuna topologi ja i ka{njenja se eksperimentalno utvr|uju i distr ibuiraju

svim ruterima. Zat im se DIJKSTRA  algori tam mo`e upotrebit i za odre|ivanje

najkra}eg puta do svakog rutera. Svaku od etapa u Link State algori tmu }emo

obradit i pojedina~no.

Page 81: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 81/260

49/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Ustanovl jenje mre`nih adresa suseda

:

Kada se ruter postavi u mre`u, njegov primarni zadatak je da otkri je ko su mu

susedi. Ovo se post i`e slanjem speci jalnog HELLO  paketa na svaku point-to-poin

l ini ju. Od rutera na drugom kraju veze se o~ekuje da odgovori ko je. Imena (t j

Adrese) rutera moraju bit i jedinstvena.

Odre|ivanje cene l ini je

:

L ink State algori tam zahteva da svaki ruter zna, i l i bar ima dobru procenu o

ka{njenju do suseda. Direktan na~in da se odredi ka{njenje je da po{alje ECHO

paket i da se od druge strane zahteva da ga odmah vrat i . Test mo`e bit

ponovl jen vi{e puta. Interesantno je pitanje da l i treba uzet i u obzir optere}enje

veze kod merenja vremena. Da bi se uzelo u obzir, meri se vreme do trenutka

kada jeECHO

 paket stavi u red ~ekanja pa dok se ne vrat i .

Generisanje Link State paketa :

Kada su informaci je o susedima prikupl jene, slede}i korak je da svaki ruter

napravi paket koj i sadr`i sve informaci je do koj ih je do{ao. Paket ima slede}

izgled:

Adresa izvora

Redni broj

Starost (age)

L ist suseda Ka{njenja

. .

. .

Page 82: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 82/260

50/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Primer:

A

B C

D

EF

4

5   6

1

2

3

7

8  

Generisanje paketa je jednostavno. Te`i deo posla je odredit i kada da se generi{e

paket. Jedna mogu}nost je da se oni generi{u periodi~no u regularnim vremenskim

razmacima. Druga vari janta je da to bude kada do|e do neke zna~ajni je promene

kao {to je otkaz rutera i l i komunikacionog kanala, i l i povratak nekada prekinutog

kanala i l i rutera. Naravno zna~ajan doga|aj je i promena performansi veze.

A

Redni broj

Starost (age)

L ista suseda Ka{njenja

B 4

F 5

I tako dalje za ostale ~vorove !

Distr ibuci ja Link State paketa :

Naj interesantni j i deo algori tma je pouzdana distr ibuci ja Link State paketa

Opisa}emo prvo osnovni algori tam a zat im neke njegove modif ikaci je.

Osnovna ideja je da se korist ibujica ( f looding)

  sa distr ibuci jom Link State paketa

Da bi se bujica dr`ala pod kontrolom, svaki paket sadr`i redni broj koj i se

inkrementira kod slanja svakog novog paketa. Ruteri vode ra~una o svakom paru

( izvor, redni broj ) koj i su >>v ide l i

<<. Kada prist igne novi L ink State paket, ruter

proverava da l i je ve} video taj paket. Ako ustanovi da je u pitanju novi paket

Page 83: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 83/260

51/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

prosle|uje ga po svim l ini jama onim po onoj po kojoj je paket do{ao. Ako otkri je

duplikat odbacuje ga. Ako se primi paket sa rednim brojem koj i je ni` i od

poslednje vi|enog odbaci je se kao da je zastareo.

Ovaj algori tam ima nekolko problema, al i se sa nj ima mo`e iza}i na kraj.

Prvo

, ako se vr{i numeraci ja paketa po nekom modulu, moglo bi do|i do konfuzi je

koj i je paket stari j i . Re{enje je da se koriste 32-bitni redni brojevi . Ako bi se svake

sekunde slao po jedan Link State paket, bi lo bi potrebno 137 godina da se onove

ist i redni brojevi , pa se ovaj problem mo`e ignorisat i .

Drugo , ako ruter otka`e, izgubi}e trag o svoj im rednim brojevima. Ako startuje

ponovo od 0, slede}i paket }e bit i odba~en kao dup likat .

Tre}e, ako do|e do naru{avanja rednog broja, i primi se na primer 65540 umesto

4 (1-bitna gre{ka) paket i od 5 do 65540 }e bit i odba~eni kao zastarel i .

Re{enje za ove probleme je da se ukl ju~i starost (age) paketa nakon rednog br oja

i da se dekrementira za 1 nakon svake sekunde. Kada starost dost igne 0, paket se

odbacuje.

Normalno, novi paket prist i`e recimo, na svakih 10 min, pa ruterima informaci ja

istekne samo kada je ruter otkazao. Pol je starost se dekrementira u svakom ruteru

u toku inic i jalnog procesa bujice, da bi se obezbedilo da ni jedan paket ne mo`e

da se izgubi i `ivi beskona~no.

Da bi se obezbedio od gre{aka na ruter-ruter l ini jama, svaki l ink state paket se

potvr|uje. Kada su l ini je slobodne, one se kru`no test iraju.

Primer:

Za mre`u na sl ic i , struktura podataka koju formira ruter B ima slede}i izgled:

S end f lags ACK fl ag s

Izvor Rbr. Age A C F A C F

A 21 60 0 1 1 1 0 0

F 21 60 1 1 0 0 0 1

E 21 59 0 1 0 1 0 1

C 20 60 1 0 1 0 1 0

D 21 59 1 0 0 0 1 1

Page 84: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 84/260

52/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Svaka vrsta u tabel i odgovara nedavno primljenom, al i jo{ potpuno ne obra|enom

Link State paketu. U tabel i se vodi informaci ja odakle paket pot i~e, njegov redn

broj, starost i podaci. Pored toga postoje f lagovi za slanje i potvr|ivanje (ACK) za

svaku od 3 l ini je za B (prema A, C i F ruterima). Send Flag  zna~i da paket mo`e

bit i poslat po ozna~enoj l ini j i , a ACK  da potvrda treba da bude poslata po

ozna~enoj l ini j i .

Odre| i van je nov ih pu teva

Kada je ruter prikupio sve Link State pakete, mo`e da konsrui{e graf cele mre`e.

Sada mo`e da iskorist i DIJKSTIN algori tam u svakom ruteru lokalno, da se prona|e

najkra}i put do svih mogu}ih odredi{ta.

Hijerarhi jsko rut iranje :

U dosada{njoj analiz i smo mre`u posmatral i jednostavno kao skup povezanih

rutera. Svi ruteri su izvr{aval i is t i algori tam za rut iranje kroz celu mre`u. U praks

ovaj model ne funkcioni{e iz najmanje dva razloga:

Za mre`u koja ima n rutera, pri ~emu svaki ima K suseda, memori ja

potrebna da se zapamte svi potrebni podaci je proporcionalna Kn (t j . O(Kn

). Za vel ike mre`e, kao {to je internet koj i se sastoj i od nekol iko mil iona

rutera i vi{e od 50 mil iona ra~unara ovo mo`e bit i problem. Ne samo da

se pove}avaju zahtevi za memori jskim prostorom, ve} se zahteva i vi{e

CPU-ovog vremena. Jednog trenutka mre`a mo`e postat i tol iko vel ika danema dovol jno memori je za pam}enje podataka o njoj .

Administrat ivna autonomija mora da pru`i mogu}nost organizaci jama da

administr iraju svoje mre`e po `el j i a da ipak imaju mogu}nost povezivanja

sa spoljnim svetom (ostatkom interneta).

Zbog svega ovoga se ruteri dele na regione  i l i autonomne sisteme , a rut iranje se

obavl ja hi jerarhi jski . Ruteri unutar istog regiona svi izvr{avaju ist i algori tamrut iranja (na primer Distance Vector  i l i L ink State ) . Naravno, potrebno je povezat

autonomne sisteme me|usobno, pa }e jedan i l i vi{e rutera u Autonomnom sistemu

imati dodatnu odgovornost za rut iranje paketa van tog autonomnog sistema. Ruter

koj i imaju ovu funkci ju se zovu GATEWAY ruteri (kapi je ka svetu) .

Page 85: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 85/260

53/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Za vel ike mre`e dvo-nivoiska hi jerarhi ja ~esto ni je dovol jna . Mo`e bit i potrebno da

se regioni grupi{u u grozdove (c lasters) , k lasteri u zone , zone u grupe i tako dalje.

Na sl ic i je dat primer rut iranja u dvodimenzionalnoj hi jerarhi j i sa pet regiona

 Tabela rutiranja za ruter 1A bez hi jerarhi jskog rut iranja ima 17 ulaza. Kada se

rut iranje obavl ja hi jerarhi jski , u tabel i postoje ulazi za sve lokalne rutere, al i za

sve ostale regione postoj i samo jedan ulaz. Hijerarhi jsko rut iranje je smanji lo

tabelu sa 17 na 7 ulaza.

1A

1B

1C   2A 2B

2C   2D

3A3B

4A

4B

4C

5A

5B5C 5D

5E

 

Prvo }emo sastavi t i potpunu tabelu za A a zat im hi jerarhi jsku tabelu:

Dest inaci ja Lini je Br. Skokova

1A - -

1B 1B 1

1C 1B 1

2A 1B 2

2B 1B 3

2C 1B 3

2D 1B 4

3A 1C 3

3B 1C 2

4A 1C 3

Page 86: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 86/260

54/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

4B 1C 4

4C 1C 4

5A 1C 4

5B 1C 5

5C 1C 5

5D 1C 6

5E 1C 5

Hijerarhi jska tabela za A:

Dest inaci ja l ini ja Broj skokova

1A - -

1B 1B 1

1C 1C 1

2 1B 2

3 1C 2

4 1C 3

5 1C 4

Me|utim, ovaj dobitak ni je besplatan. Moraju se plat i t i izvesna kazna koja se

ogleda u pove}anju du`ine puta. NPR: najbol j i put iz 1A do 5C je preko regiona 2

ali sa hi jerarhi jskim rut iranjem sav saobra}aj ka regionu 5 ide preko regiona 3, je

je to bol j i put za ve}inu dest inaci ja u regionu 5 .

Kada jedna mre`a postane veoma vel ika, postavl ja se interesantno pitanje, a to je

Kol iko nivoa hi jerarhi je je potrebno imati?

NPR: Ako imamo mre`u sa 720 rutera, i ako nema hijerarhi je svaki ruter mora da

ima tabelu sa 720 ulaza. Ako se mre`a podeli na 24 regiona sa po 30 rutera,

svakom ruteru je potrebna tabela sa 30 lokalnih ulaza + 23 externa ulaza (za

ostatak mre`e). To je ukupni 53.

Page 87: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 87/260

55/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Ako se odabere tronivoiska hi jerarhi ja pri ~emu svaki nivo sadr`i 9 regiona sa po

10 rutera, svakom ruteru je potrebna tabela sa 10 ulaza za lokalne rutere i 8 ulaza

za druge regione unutar istog klastera i 7 ulaza za ostale klastere. To je ukupno

25 ulaza.

Opt imalan broj nivoa za mre`u od N rutera jeednak je lnN, {to zahteva lnN ulaza

u tabel i svakog rutera, tako|e je ustanovl jeno da je srednje pove}anje efekt ivne

du`ine puta hi jerarhi jskim rut iranjem prihvat l j ivo.

L i nk S ta te A lgo r i t am:

Kao {to smo rekl i ovaj algori tam spada u frupu globalnih rut ing algori tama jer

zahteva znanje o svim vezama u celoj globalnoj mre`i.

Korak 1:

Prevo|enje topologi je mre`e u usmereni graf.

^vorove grafa ~ine:

Ruteri

Mre`e >> Tranzitne-(povezane na vi{e rutera) i terminalne-(povezane sa

jednim ruterom)

Grane ~ine

Point-to-point veze izme|u 2 rutera

Veze rutera na lokalnu mre`u

Sve veze su dvosmerne, pri ~emu se te`ine iste grane u razl i~ i t im smerovima

razl ikuju. Zato se naj~e{}e svaka grana razbi ja (pri l ikom crtanja) na dva zasebna

usmerena potega, svaki sa svojom te`inom. Iz lazne grane iz rutera imaju te`inu

koju dodeljuje sistem administrator ( i l i se izra~unava na osnovu ka{njenja kroz

vezu. Grane koje vode od mre`e ka ruteru imaju te`inu 0 .

Korak 2:

Formiranje SPF-stabla za svaki ruter. Polaze}i od datog rutera izra~unava se

putanja sa najni`om cenom do svake odredi{ne mre`e. Za to se korist i Di jkstra

algori tam. Rezultat ovoga je formiranje ( jednostruko povezanog usmerenog grafa

SPK stabla za dat i ~vor/ruter.

Korak 3:

Unos adresa susednih ~vorova (prvog skoka) za svaku odredi{nu mre`u u rut ing

tabelu.

Page 88: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 88/260

56/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

MRE@NI NIVO INTERNETA - IP PROTOKOL

Mre`ni nivo u Internetu se mo`e posmatrat i kao skup podmre`a i l i autonomnih

sistema (AS) koj i su me|usobno povezani. Ne postoj i jedinstvena struktura ve}

nekol iko vel ik ih ki~mi. Ki~me su napravl jene od visokopropusnih l ini ja i brzih

rutera. Na ki~mu su zaka~ene regionalne mre`e, a na regionalne mr e`e LAN mre`e

mnogih univerzi teta, kompanija i Internet provajdera.

Lepak koj i spaja internet je protokol mre`nog nivoa t j . IP protokol. Za razl iku od

rani j ih mre`nih protokola on je u startu projektovan tako da omogu}

internetworking. Njegov zadatakje da pru`i najbol ju mogu}u uslugu za prenos

datagrama od izvora do odredi{ta, bez obzira da l i se oni nalaze u susestvu i l i su

razdvojeni.

Komunikaci ja u internetu se odvi ja na slede}i na~in:

 Transportni nivo preuzima podatke iz aplikacionog nivoa i del i ih na datagrame

 Teori jski , datagrami mogu bit i vel i~ine do 64 Kbyte, al i su paketi obi~no vel i~ ine od

oko 1.5 kByte. Svaki datagram se prenosi kroz internet, pri ~emu mo`e bit

fragmentiran na manje delove. Kada svi delovi kona~no st ignu u odredi{te, mre`n

ih nivo reasemblira u originalni datagram. Datagram se zat im predaje

transportnom nivou, koj i ih zat im predaje aplikat ivnom.

I P P ro toko l

Format IP datagrama se sastoj i od zaglavl ja (header) i podataka (text part )

Zaglavl je ima 20 byte f iksnog dela i opcioni deo promenlj ive vel i~ ine.

4 4 8 16

Verzi ja IHL Tip servisa Ukupna du`ina

Ident i f ikaci ja Fragment offset

Vreme ̀ ivota protokol ~eksum zaglavlja

Adresa izvora

Adresa odredi{ta

Opci je (0 i l i vi{e re~i )

Page 89: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 89/260

57/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Polje verzi ja :

Ukazuje na verzi ju IP protokola. Na osnovu ovog 4-bitnog polja ruter mo`e da

utvrdi kako da interpret ira ostatak IP datagrama. Razl i~ i te verzi je IP protokola

koriste razl i~ i te formate datagrama. Teku}a verzi ja IP je IP v4 . Na prethodnoj sl ic

je prikazan upravo taj format IP protokola. Najnovi ja vrezi ja IP protokola je v6.

IHL (Header Lenght ) :

Po{to du`ina zaglavl ja ni je konstantna ovo polje govori kol ika je du`ina zaglav l ja u

32-bitnim re~ima. Minimalna vrednost je 5, kada nema nikakvih opci ja

Maksimalna vrednost je 15, {to zna~i da je maksimalna vel i~ ina zaglavl ja 60 byte

 To zna~i da je opciono polje maksimalne veli~ine 40 Byte. Za neke, kao {to je

bele`enje mar{ute paketa, 40 byte je malo.

Tip Servisa (Type of Service) :

Ovim poljem HOST ka`e podmre`i koju vrstu servisa `el i . Razl i~ i te kombinaci je

brzine i pouzdanost i su mogu}e. NPR, za prenos digital izovanog glasa mnogo je

bitni ja brzina od pouzdanost i . S druge strane, za prenos faj lova mnogo je bitni je

da prenos bude 100% ta~an nego brzina.

Prva tr i bi ta ovog polja ukazuju na priori tet  od 0 (normalni paket i ) do 7 (kontroln

paket i ) . S lede}a tr i bi ta (D-Delay, T-Throughtput, R-Rel iabi l i ty ) omogu}avaju da se

ozna~i ~emu se daje priori tet u toku prenosa (Malo ka{njenje, propusnost i l

pouzdanost ) .

Polje ukupna du`ina ( total lenght ) :

Defini{e ukupnu vel i~ inu datagrama u bajtovima: Zaglavl je + data. Maksimalna

du`ina je 65535 bajta. Me|utim datagrami su retko ve}i od 1500 bajtova.

Ident i f ikaci ja

:

U slu~aju da se vr{i fragmentaci ja, treba omogu}it i odredi{nom hostu da utvrd

kome datagramu pripada novoprist igl i fragment. Svi fragmenti jednog datagrama

nose istr i broj t j . Iden t i f ikaci ju.

DF -zna~i Don ’ t fragment (ne fragmentiraj ) . To nare|uje ruteru da ne vr{

fragmentaci ju, jer odredi{te ni je u stanju da delove ponovo spoji . Sve ma{ine

moraju da prihvate 576 byte.

MF -zna~i More Fragments ( jo{ fragmenata). Sv i fragmenti osim poslednjeg imaju

postavl jen ovaj bit . Naravno, posle poslednjeg fragmenta nema vi{e fragmenata

tako da je tada MF=0.

Page 90: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 90/260

58/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Fragment Offset  (13 bitova) redni broj fragmenta i datagrama. Svaki fragmen

izuzev poslednjeg mora bit i umno`ak od 8 bajtova (8 byte je elementara du`ina

fragmenta). Po{to je ovo polje 13 bitno, to zna~i da jedan datagram mo`e imati

najvi{e 8192 fragmenata.

Vreme `ivota(Time to Live) :

 Je broj koj i se korist i da ograni~i du`inu `ivota paketa. Zami{l jeno je da se vreme

broj i u sekundama, pa najvi{e vreme 255 sekundi. Ovo vreme se dekrementira u

svakom ruteru kroz koj i datagram prolazi . U praksi ovo zna~i da se broje skokov

a ne sekunde. Kada broja~ dst igne nulu, paket se odbacuje.

Polje Protokol :

Korist i se kada kompletan datagram st igne u odredi{te. Ovo polje ka`e kom

protokolu transportnog nivoa je datagram namenjen. 6-TCO, 17-UDP itd. . .

Header Checksum :

S lu`i za kontrolu zaglavl ja. Formira se na slede}i na~in. Vr{i se sabiranje 16-bitnih

polure~i kori{}enjem ari tmet ike jedini~nog komplementa, a zat im se pronalaz

jedini~ni komplement rezultata. Header Checksum se mora izra~unavat i u svakom

ruteru jer se u svakom ruteru bar jedno polje menja (makar t ime to l ive) .

Polja adresa izvora i odredi{ta:

Sadr`e 32-bitne IP adrese izvora i odredi{ta. O adresiranju }e bit i re~i kasni je.

Opcije:

Ovo polje je razl i~ i te du`ine. Svaka opci ja po~inje jedno-bajtnim kodom kojident i f ikuje opci ju. Do sada je ident i f ikovano 5 opci ja.

Securi ty — ka`e kolka je tajnost datagrama

Str ic t source rout ing (str ik tno rut iranje kako je zadato u izvoru) t j . Defini{e

se kompletan put koj i mora da se korist i

L is t Source Rout ing — Daje l is tu rutera koj i ne smeju bit i presko~eni u putu

Record route — Zahteva da svaki ruter kroz koj i prolazi datagram upi{e

svoju IP adresu.

 Time stamp — svaki ruter treba da upi{e svoju IP adresu i vreme prolaska

Page 91: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 91/260

59/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

I P Ad rese

Svaki HOST i ruter na Internetu imaju IP adresu  koja defini{e broj mre`e i bro

hosta u mre`i. Ruteri mogu imati vi{e IP adresa (svaka za po jednu iz laznu l ini ju) .

Ova kombinaci ja je jedinstvena (ne postoje dva ra~unara sa istom IP adresom). IP

adrese su 32-bitne i koriste se u polj ima >>adresa izvora<< i >>adresa

odredi{ta<< u IP paket ima. Formati koj i se koriste za IP adrese mogu bit i razl i~ i t i .

Ma{ine koje su povezane na vi{e mre`a imaju razl i~ i te IP za svaku mre`u

posebno. Postoje 4 klase formata IP adresa (Peta je rezervisana za budu}e

namene):

8   16   24

Mre`a Host

Mre`a

Mre`a

Multicast adrese

Rezervisano za budu}e namene

Host

Host

0

0

0

0

0

1

1 1

1 1 1

1 1 1 1

1.0.0.0 - 127.255.255.255

128.0.0.0 - 191.255.255.255

192.0.0.0 - 223.255.255.255

224.0.0.0 - 239.255.255.25

240.0.0.0 - 247.255.255.25

 

Klasa A dozvol java (omogu}ava) konfigurisanje do 126 sa po 16 mil iona Hostova u

svakoj.

Kalsa B

 dozvol java 16382 mre`a sa po 64K hostova

Klasa C 2 Mil iona mre`a sa po 254 hostova

Klasa D Omogu}ava slanje datagrama u vi{e hostova

Adresa koja po~inje sa 11110 je rezervisana za budu }e kori{}enje.

Deset ine hi l jada mre`a je trenutno povezano na Internet, a ovaj broj se

udvostru~ava svake godine. Mre`ni brojevi se dodeljuju od strane posebne

ogranizaci je NIC (Network Information Center) da ne bi do{lo do nekih konfl ikata

Mre`ne adrese se obi~no pi{u u dotted decimal formatu  t j . Svaki bajt je

predstavl jen decimalnim ekvivalentom i razdvojen ta~kom od ostatka adrese. Svak

od 4 bajta mo`e imati vrednost od 0-255 npr: 192.41.6.20

Najni`a IP adresa je 0.0.0.0 a najvi{a 255.255 .255.255. IP adresa 0.0.0.0 se korist

od strane hosta kada se on butuje, al i je posle toga vi{e ne korist i . Adrese oblika

127.xx.yy.zz su rezervisane zaLOOP BALL

  test iranje. Paket i poslat i po toj adresi se

procesiraju lokalno i tret iraju se kao dolaze}i paket i . Ovo se korist i kod

debagovanja mre`nog softwera.

Page 92: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 92/260

60/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

I n t e rne t Con t ro l Mesage P ro toco l

Pored IP, koj i se korist i za prenos podataka, Internet ima nekol iko upravl ja~kih

(control l ) protokola koj i se koriste na mre`nom nivou. To su ICMP. ARP (Address

Resolut ion Protocol l ) , RARP (Reverse Address Resolut ion Protocol ) i td . . .

ICMP:

ICMP se ~esto tret ira kao deo IP, al i hi jerarhi jski se nalazi iznad IP, jer se ICMP

poruke prenose unutar IP paketa. ICMP koriste hostovi i ruteri za razmenu

upravl ja~kih informaci ja. Tipi~no kori{}enje ICMP-a je za raport iranje o gre{kama

NPR: Kada izvr{avate Telnet . FTP, HTTP sesi je, mo`ete da primite poruku

>>dest inat ion network unreacheble<< i l i odredi{na mre`a je nedostupna. Ova

poruka je deo ICMP-a. Ako IP ruter ni je mogao da prona|e put do hosta koj i je

FTP, Telnet i l i HTTP aplikaci ja tra`i la, ruter formira i {al je t ip 3 ICMP poruke hostu

ukazuju}i na gre{ku. Tada host prima ICMP poruku i vra}a kOd gre{ke

transportnom nivou, a transportni nivo to prosle|uje aplikaci j i . Postoj i 12 t ipova

ICMP poruka. Svaka poruka je inkapsul irana u IP paketu. Neke od najva`ni j ih

poruka su slede}e:

DESTINATION UNREACHEABLE

  — korist i se kada podmre`a i l i ruter ne mogu

da lociraju odredi{te, i l i paket sa DF (Don ’ t Fragment) bitom ne mo`e bit

otposlat jer mre`a sa >>malim paket ima<< stoj i na putu.

TIME EXCEEDED — [al je se kada je paket odba~en zato {to je njegov broja~dost igao 0. Ovaj doga|aj je simptom da paket i kru`e, i l i da postoj i vel iko

zagu{enje, i l i je pak mo`da vrednost tajmera posavl jena na vrlo kratko

vreme.

PARAMETER PROBLEM

  — Ukazuje da je i legalna vrednost bi la otkrivena u

zaglavl ju paketa. Ovaj problem ukazuje na bag (bug) u IP softweru

izvornog hosta, i l i rutera kroz koj i je paket pro{ao.

SOURCE QUENCH  (ugasit i izvor) — je rani je kori{}en da reguli{e brzinuhosta koj i {al je mnogo podataka (paketa). Kada host primi ovu poruku od

njega se o~ekuje da uspori . Sada se retko korist i , jer kada nastup

zagu{enje ovi paket i samo pogor{avaju ve} ionako te{ku si tuaci ju. Kontrola

zagu{enja se na internetu uglavnom sprovodi u transportnom nivou.

Page 93: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 93/260

61/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

REDIRECT  — korist i se kada ruter primet i da ima izgleda da je paket

pogre{no rut iran. Korist i ga ruter da izvest i izvorni host o verovatno

gre{ci .

ECHO REQUEST i ECHO REPLY  — koriste se da bi se ustanovi lo da l i su

odgovaraju}e dest inaci je dostupne i `ive. Nakon pri jema ECHO REQUEST

poruke od odredi{ta se o~ekuje da po{alje ECHO REPLY nazad. (Ove poruke

korist i program~e P ING ) .

TIMESTAMP REQUEST i TIMESTAMP REPLY — su sl i~ne prethodnim, sem {to se

jo{ bele`i vreme prist izanja i vreme slanja poruke. Ova mogu}nost se

korist i za merenje performansi mre`e.

ARP P ro toco l

I ako svaka ma{ina na Internetu ima jednu i l i vi{e IP adresa, one se ne mogu

stvarno korist i t i za slanje paketa, jer data l ink hardware ne razume IP adrese

Danas je ve}ina hostova povezana na LAN preko mre`ne kart ice koja razume samo

LAN adrese. NPR svaka Ethernet kart ica koja je proizvedena dolazi sa 48-bitnomethernet adresom. Proizvo|a~i ethernet kart ica dobijaju blok adresa od centralne

slu`be da bi se sigurno moglo tvrdit i da ne postoje dve plo~e sa istom adresom

Ovim se izbegava konfl ik t ukol iko bi se u istom LAN-u na{le dve kart ice sa istom

adresom. Mre`ne kart ice {al ju i primaju frejmove na osnovu 48-bitnih etherne

adresa. One neznaju ni{ta o 32-bitnim IP adresama.

Postavl ja se pitanje kako se IP adrese presl ikavaju u adrese data l ink nivoa kao

{to su Ethernet adrese?

F1   F3

F2

E1   E2   E3   E4   E5   E6

192.31.65.7

192.31.65.5

Ruter ima 2 IP

192.31.66.4

192.31.65.4

Prema WAN

Ruter ima 2 IP

192.31.60.4

192.31.63.3

192.31.63.8

1   2 3   4

CS Ethernet 

192.31.65.0EE Ethernet 

192.31.63.0

 

Page 94: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 94/260

62/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Na sl ic i je prikazana mre`a jednog univerzi tetskog kampusa koj i se sastoj i od

nekol iko mre`a klase C. Na sl ic i su prikazane dve Ethernet mre`e; jedna Computer

Science department a druga Electr ical Engenering department. CS mre`a ima IP

adresu 192.31.65.0, a EE mre`a ima adresu 192.31.63.0. Svaka ma{ina u ethernetu

ima jedinstvenu Ethernet adresu, ozna~enu sa E1 do E6, a u FDDI prstenu, FDD

adresu F1 do F3.

Da vidimo prvo, kako HOST 1 {al je paket hostu 2. Pretpostavimo da po{i l jalac zna

ime pri jemnika, npr [email protected]. Prvi korak je da se prona|e IP adresaza host koj i je poznat pod imenom alfa.cs.uni.edu. Ovo pretra`ivanje obavl ja DNS

(Domain Name System), {to je deo aplikat ivnog nivoa. Za sada pretpostavimo da

DNS vra}a IP adresu hosta 2 — 192.31.65.5. Software vi{eg nivoa gradi paket sa

192.31.65.5 u polju adresa odredi{ta i predaje ga IP software-u za prenos. IP

software mo`e da ustanovi da je dest inaci ja u sopstvenoj mre`i, al i mu je

potrebno da prona|e ethernet adresu odredi{ta.

 Jedno re{enje je da postoj i konfiguracioni faj l negde u sistemu, koj i }e presl ikat i IP

adrese u Ethernet adrese. Ovo re{enje je zaista mogu}e, al i za organizaci je koje

imaj hi l jade ma{ina, odr`avanje ovakvih faj lova je podlo`no gre{kama i veoma

vremenski zahtevno.

Bol je re{enje je da HOST 1 po{alje broacast paket (emisioni paket ) na ethernet

>>ko poseduje IP adresu 192.31.65.5 ? <<.Ova poruka }e st i} i do svih ma{ina na

Ethernetu i svaka }e proveri t i svoju IP adresu. Jedini HOST 2 }e odgovori t i svojom

Ethernet adresom. Na ovaj na~in Host 1 ustanovl java da je IP adresa 192.31.65.5

na hostu sa ethernet adresom E2. Protokol koj im se postavl ja ovo pitanje i dobijaodgovor zove se ARO  (Address Resolut ion Protocol ) . Skoro sve ma{ine na Internetu

izvr{avaju ovaj protokol.

Prednost kori{}enja ARO nad konfiguraci jskim faj lom je njegova jednostavnost

Sistem administrator nema mnogo posla, sem da svakoj ma{ini dodeli IP adresu

odlu~i kako izgleda maska kojom se izdvaja broj mre`e; ARP obavl ja sve ostalo

Nakon {toje dobio adresu E2, IP software na hostu 1 gradi Ethernet ram adresiran

sa E2, stavl ja svoj IP paket u polje podataka u ram i pu{ta ga na ethernet

Ethernet kart ica na hostu 2 detektuje ovaj ram, prepoznaje svoju adresu, pokup

paket i izaziva prekid. Ethernet drajver izvla~i IP paket iz pol ja podataka i predaje

ga IP software-u koj i ustanovl java da je on korektno adresiran i procesira ga.

Mogu}e su razl i~ i te modif ikaci je ARP da bi se on u~inio jo{ efikasni j im. NPR. Kada

jednom ma{ina izvr{i ARP, ona ke{ira rezultat u slu~aju da joj je potrebno da

kontakt ira istu ma{inu uskoro. Tako da }e slede}i put prona}i presl ikavanje u svom

Page 95: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 95/260

63/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

ke{u i ne}e morat i da ponovo postravl ja isto pitanje. Po{to je i hostu 2 potrebna

IP adresa hosta 1, host 1 mo`e da po{alje u ARP paketu i svoju adresu t j . Par

(192.31.65.7, E1) .

Da bi projektovanje IP adresa u ad rese data l ink nivoa moglo da se promeni, NPR

kada se ethernet kart ica pokvari i zameni novom (i tako ima novu Ethernet adresu

Zbog ovoga ulazi u ARP ke{u treba da se bri{u nakon nekol iko minuta.

Posmatramo situaci ju sada u kojoj host1 `el i da po{alje paket hostu4 (192.31.63.8)

Kori{}enje ARP ne}e dat i rezultate jer host 4 ne}e videt i emisi ju (ruteri neprosle|uju ethernet level emisi ju) . Za ovo postoje dva re{enja!

Prvo, CS ruter mo`e bit i konfigurisan da odgovara na ARP zahteve za mre`u

192.31.63.0 ( i mo`da druge lokalne mre`e). U ovom slu~aju }e host 1 napravit i ARP

ke{ ulaz za (192.31.63.8, E3) i prosledit i ceo saobra}aj za host 4 lokalnom ruteru

Ovo re{enje zove se PROXY ARP (PROXY zna~i zastupnik — punomo}nik) .

Drugo re{enje je da host 1 odmah vidi da je odredi{te na drugoj mre`i, da ceo

takav saobra}aj prosledi na default Ethernet adresu koja upravl ja svim udaljenimsaobra}ajem, u ovom slu~aju to je E3. Ovo re{enje ne zahteva da CS ruter zna

koju udaljenu mre`u uslu`uje.

U oba slu~aja, ono {to se de{ava je da host 1 pakuje IP paket u polje podatka u

Ethernet frame adresiran za E3. Kada CS ruter dobije Ethernet frame, on uklanja IP

paket iz pol ja podataka i tra`i IP adresu u svojoj tabel i rut iranja. On utvr|uje da

paket i za mre`u 192.31.63.0 treba da idu uruter 192.31.60.7. Ako on jo{ ne zna

FDDI

 adresu (Adresa data-l ink nivoa) do 192.31.60.7, on emituje ARP paket na ring

(prsten), saznaje da je njegova adresa F3. On zat im ubacuje IP paket u poljepodataka FDDI rama (frame-a) odre|enog na F3 i {al je ga na ring.

U EE ruter, FDDI drajver uklanja paket iz pol ja podataka FDDI rama, i predaje ga

IP software-u koj i ustanovl java da treba da po{alje paket u 192.31.63.8.

Ako ova IP adresa ni je u ARP ke{u, on emituje ARP upit na EE Ethernet

ustanovl java da je odredi{na adresa E6, gradi ethernet Ram adresiran na E6,

stavl ja IP paket u polje podatka i {al je ga na Ethernet. Kada Ethermnet ram st igne

u Host 4, paket se izvla~i iz rama i prosle|uje IP software-u na p rocesiranje.Slanje IP paketa iz Hosta 1 u neku udaljenu mre`u preko WAN radi u su{t ini na ist

na~in, osim {to sada tabela u CS ruteru ka`e da treba da se korist i WAN ruter,

~ i ja je FDDI adresa F2.

Page 96: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 96/260

64/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

RARP — Reve rse ARP

ARP re{ava proble presl ikavanja IP adresa u adrese data l ink nivoa (kakva je

Ethernet adresa). Me|utim, mo`e se pojavi t i i obrnut i problem. On nastupa kada se

nova ma{ina povezuje na mre`u.

Kako ma{ina koja zna svoju Ethernet adresu da sazna koja joj je IP adresa?

Re{enje je da se korist iRARP

. Ovaj protokol dozvol java novo-postavl jenoj ma{in

da emituje svoju Ethernet adresu i ka`e: >>Moja Ethernet adreasa je xxxxxxxxxxx,

da l i neko zna moju IP adresu? <<. RARP server vidi ovaj zahtev, pretra`uje svo

konfiguracioni faj l i vra}a odgovaraju}u IP adresu.

Page 97: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 97/260

65/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

TRANSPORTNI NIVO

 Transportni nivo ni je samo jo{ jedan nivo. On je sr ce cele protokol hi jerarhi je

Osnovni zadatak transportnog nivoa je da obezbedi efikasan, pouzdan servis

svoj im korisnic ima, t j . procesima na aplikat ivnom nivou, nezavisno od fiz i~ke

mre`e. Bez transportnog nivoa ceo koncept vi{enivojske hi jerarhi je bi imao malo

smisla.

Ukratko, funkci je transportnog nivoa su slede}e:

Protokol transportnog nivoa obezbe|uje logi~ku komunikaci ju izme|u

aplikat ivnih procesa koj i se izvr{avaju na razl i~ i t im hostovima. Pod

logi~kom komunikaci jom misl i se da aplikat ivni procesi nisu f iz i~k

povezani, al i sa ta~ke gledi{ta aplikat ivnih procesa nj ima izgleda kao da

su fiz i~ki povezani.

Protokol i transportnog nivoa su implementirani u hostovima a ne u

mre`nim ruterima.

Na izvornoj strani transportni nivo prima poruke sa aplikat ivnog nivoa

del i ih na manje delove, dodaju}i svakom delu zaglavl je transportnog

nivoa kreiraju}i 4 PDU segmente (protokolne jedinice podataka). Transportn

nivo zat im predaje te segmente mre`nom nivou gde se svaka 4-PDU

enkapsul ira u 3-PDU. U odredi{tu, transportni nivo prima 4-PDU-ove od

mre`nog nivoa, uklanja zaglavl je transportnog nivoa iz 4-PDU i ponovo

sklapa poruku od vi{e PDU-ova i prenosi je u aplikat ivni nivo.

Ra~unarska mre`a mo`e nudit i vi{e protokola transportnog nivoa aplikaci j i

NPR internet ima dva protokola TCP  i UDP . Ovi protokol i pru`aju razl i~ i te

vrste usluga aplikat ivnim procesima

Svi protokol i transportnog nivoa obezbe|uju aplikaci j i usluge

mult ipleksiranja i delmult ipleksiranja

Primer:

Da bi objasni l i funkci ju transportnog nivoa potra`imo analogi ju sa primerom iz

svakodnevnog `ivota. Pretpostavimo da u Ni{u i Novom Sadu `ive dve orodice,

povezane rodbinskim vezama, sa mnogo dece u svakoj. Deca iz ovih porodica vole

da se dopisuju. Svako dete pi{e svakom svom ro|aku pismo svake nedelje. U

svakoj od porodica po jedno dete je zadu`eno da prikupl ja i distr ibuira pisma. U

Page 98: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 98/260

66/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Ni{u Mujo  i u Novom Sadu Haso . Svake nedelje Mujo prikupl ja pisma od svoje

bra}e i sestara i predaje ih po{taru koj i svakodnevno pose}uje ku}u. Kada pisma

st ignu u Ni{ Mujo ih distr ibuira bra}i i sestrama. Sl i~an zadatak ima Haso u

Novom Sadu.

U ovom primeru, po{ta obezbe|uje logi~ku komunikaci ju izme|u dva doma}instva

(ku}e). Po{ta prenosi pisma od ku}e do ku}e al i ne od osobe do osobe. S druge

strane Mujo i Haso obezbe|uju logi~ku komunikaci ju izme|u ro|aka. Mujo i Haso

prikupl jaju pisma i predaju pisma svojoj bra}i i sestrama. Sa ta~ke gledi{ta decekoja se dopisuju Mujo i Haso im pru`aju po{tanske usluge, mada su oni zapravo

samo deo primo-predaje pisama.

Potraimo sada analogi ju da bi objasni l i odnos izme|u transportnog i mre`nog

nivoa:

Hostovi = ku}e

Procesi = ro|aci

Aplikat ivne poruke = pisma

Protokol mre`nog nivoa = Po{ta

Protokol transportnog nivoa = Mujo i Haso

Nastavimo ovu porodi~nu pri~u dalje. Pretpostavimo da su Mujo i Haso ot i{ l i na

odmor i da ih zamenjuju Fata  i Miki Maus . Na`alost , Fata i Miki Maus ne obavl jaju

svoj posao isto kao Mujo i Haso. Po{to su mla|i i manje odgovorni Fata i Miki

Maus re|e prikupl jaju i {al ju pisma, pa ~ak povremeno neka pisma i zagube

Dakle, ro|a~ki par Fata i Miki Maus ne pru`aju ist i kval i tet usluge kao Mujo i

Haso.

Ako se vrat imo na mre`e ra~unara, to zna~i da transportni nivo mo`e da ima vi{e

protokola transportnog nivoa, pri ~emu oni p ru`aju razl i~ i te usluge. Sl i~no mre`nom

nivou, transportni nivo mo`e da pru`i apl ikat ivnim procesima konekcioni

bezkonekcioni servis . Konekcioni servis transportnog nivoa je u mnogome sl i~an

konekcionom servisu mre`nog nivoa. U oba slu~aja konekci ja ima tr i faze:

Uspostavl janje konekci je

Prenos podataka

Osloba|anje

Adresiranje i kontrola toka su tako|e sl i~ni .

Page 99: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 99/260

67/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Beskonekcioni transportni servis  je tako|e veoma sl i~an beskonekcionom mre`nom

servisu. Name}e se onda logi~no pitanje: Ako je servis transportnog nivoa sl i~an

servisu mre`nog nivoa, za{to onda postoje dva odvojena nivoa?

Odgovor je supt i lan, al i k l ju~an. Naime, mre`ni nivo je deo komunikacione

podmre`e i protokol i mre`nog nivoa su implementirani u komunikacioni j podmre`i

me|utim, {ta se de{ava ako mre`ni nivo nudi konekcioni servis, al i je ona

nepouzdana (~esto gubi pakete podataka). [ta se de{ava ako ruteri s vremena na

vreme otka`u?

Nastaju problemi. Korisnic i nemaju nikakvu kontrolu nad podmre`om, tako da on

ne mogu da re{e problem lo{e usluge kori{}enjem bolj ih rutera i l i uslo`njavanjem

data-l ink nivoa za kontrolu gre{aka na komunikacionim kanalima.

 Jedna mogu}nost je da se stavi drugi nivo iznad mre`nog nivoa koj i }e pobolj{at

kval i tet servisa. Transportni nivo omogu}ava da transportne usluge budu mnogo

pouzdanije nego odgovaraju}e mre`ne usluge. Izgubljeni i naru{eni podaci mogu

bit i detektovani i kompenzovani transportnim nivoom.Odnos izme|u aplikat ivnog, transportnog i mre`nog nivoa prikazan je na slede}o

sl ic i :

Aplikacija Aplikacija

Mre`ni nivo Mre`ni nivo

 Transportnientitet  Transportnientitet Transportniprotokol

Mre`na adresa

 Transportna adresa

 

 Transportni enti tet je hardver i l i software unutar transportnog nivoa preko koga se

mo`e pristupit i razl i~ i t im uslugama. Transportni ent i tet mo`e bit i u jezgru (kernel-u

operat ivnog sistema u odvojenom korisni~kom procesu, i u bibl iote~kom paketu

vezanom za aplikaci ju.

Page 100: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 100/260

68/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

P r im i t i ve t ranspor tn i h se r v i sa

Ove primit ive omogu}avaju korisniku transportne usluge (apl ikat ivnim programima

da pristupe usluzi . Svaka transportna usluga ima svoje primit ive preko koj ih im se

pristupa.

Razmotrimo primerkonekcionog transportnog servisa kome se pristupa preko pet

primit iva. Primer je pojednostavl jen, al i al i prikazuje su{t inu toga {ta konekcion

transportni interfejs treba da ostvari . On omogu}ava aplikacionim programima da

uspostave, koriste i oslobode konekci ju. To je dovol jno za mnoge aplikaci je.

Primit iva Transportna PDU koja se

{al je

Zna~enje

LISTEN Ni{ta Blokiraj dok neki proces ne poku{a

konekci ju

CONNECT Zahtev za konekci jom Akt ivno poku{ava da uspostavi konekci ju

SEND Podaci [al je informaci je

RECEIVE Ni{ta Blokiraj dok PDU sa podacima ne st igne

DISCONNECT Zahtev za diskonekci jom Ova strana `el i da raskine konekci ju

Da bi videl i kako ove primit ive mogu da se iskoriste, razmatramo aplikaci ju sa

jednim serverom i vi{e udaljenih kl i jenata.

Za po~etak, server izvr{ava L ISTEN  primit ivu, naj~e{}e tako {to poziva bibl iote~ku

proceduru koja obavl ja sistemski poziv da blokira server dok se kl i jent ne pojavi

 Jedan kl i jent `el i da pr i~a sa serverom, on izvr{avaCONNECT

  primit ivu

 Transportni enti tet prenosi ovu primit ivu tako {to blokira poziva~a i {al je pake

serveru. U polju podatka ovog paketa je poruka transportnog nivoa za serversk

transportni ent i tet .

Kl i jentov poziv CONNECT  primit ive, uzrokuje da CONNECTION REQUEST  PDU budeposlat serveru. Kada ovo st igne transportni ent i tet proverava da l i je server

blokiran naL ISTEN

  (da l i `el i da prihvat i zahteve). On zat im deblokira server i {al je

CONNECTION ACCEPTED PDU  nazad kl i jentu. Kada ova PDU st igne kl i jent je

deblokiran i konekci ja je uspostavl jena.

Sada mogu da se razmenjuju podaci kori{}enjemSEND

 iRECEIVE

 primit iva.

Page 101: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 101/260

69/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Kada konekci ja vi{e ni je potrebna, ona se mora oslobodit i . Raskidanje ima dve

vari jante:

Asimetri~na i

Simetr i~na vari janta

Kod asimetri~ne vari jante bi lo koj i host mo`e da izda DISCONNECT  primit ivu, {to

uzrokuje da se DISCONNECTION REQUEST PDU  po{alje udaljenom transportnom

enti tetu. Po pri jemu, konekci ja je okon~ana.

Kod simetri~ne vari jante, svaki smer se zatvara nezavisno od onog drugog. Kada

jedna strana izvr{i DISCONNECT  to zna~i da ona nema vi{e podataka za slanje, al

je jo{ uvek vol jna da prihvat i podatke sa druge strane. U ovom modelu konekci ja

se okon~ava kada obe trane izvr{e DISCONNECT primit ivu.

TCP PROTOCOL

T RANSM I S ION CONTROL PROTOCOL

 TCP obezbe|uje mult ipleksiranje i demultipleksiranje, kontrolu gre{aka, ful l-duplex

prenos podataka, point-to-point konekci ju (emisi ja ni je mogu }a).

 To je connect ion oriented protokol (t j . Pru`a konekcioni serv is aplikaci j i ) za razl iku

od UDP-a. Pre nego {to aplikat ivni procesi po~nu da razmenjuju podatke, oni mora

da pro|u kroz odre|enu handshke proceduru.

Da vidimo kako se uspostavl ja konekci ja. Pretpostavimo da proces koj i se izvr{ava

na jednom hostu `el i da inic ira konekci ju sa drugim procesom na drugom hostuHost koj i inic ira konekci ju ozna~ava se kao kl i jent , a onaj koj i odgovara na zahtev

se naziva server. NPR kl i jent program u javi to ~ini tako {to izdaje komandu:

Socket cl ientSocket = new Socket (hostname,portname)

 TCP u kli jentu zat im nastavlja sa uspostavl janje TCP konekci je sa TCP u serveru

Kl i jent {al je speci jalni TCP segment na koj i odgovara server slanjem drugog

speci jalnog TCP segmenta. Kona~no, kl i jent odgovara ponovo sa tre}im speci jalnim

segmentom. Prva dva segmenta ne sadr`e nikakve podatke sa aplikacionog nivoa,dok tre}i segment mo`e da ih ima. Zbog toga {to se razmenjuju 3 segmenta u

fazi konekci je, ova procedura se zove three-way handshame.

Kada se TCP konekci ja uspostavi , apl ikacioni procesi mogu da {al ju i primaju

podatke. Po{to je TCP ful l-duplex, podaci mogu da se razmenjuju u oba smera u

isto vreme. Razmotrimo slanje podataka iz kl i jent procesa u server proces. Kl i jen

Page 102: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 102/260

70/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

proces predaje niz podataka kroz socket (vrata procesa) gde ih preuzima TCP

software i sme{ta podatke u iz lazni bafer koj i je uspostavl jen (pu{ten u rad) u toku

handshake procedure. TCP od ovih podataka gradi segmente. Maksimalna vel i~ ina

segmenta je ograni~ena, ona zavis i od TCP implementaci je (zavisno od operat ivnog

sistema) i mo`e se konfigurisat i . Naj~e{}e je 1.5 kb.

 TCP izlaznibafer

 TCP ulaznibafer

Aplikacijaupisujepodatak 

Aplikacija~itapodatak 

Segment

Socket

 

Segmenti se predaju mre`nom nivou, gde se enkapsul iraju u IP datagrame. IP

datagrami se zat im {al ju u mre`u. Kada PCP primi segement na drugoj strani,

podaci se sme{taju u TCP pri jemni bafer. Aplikaci ja ~i ta podatke iz ovog bafera

Svaka strana ima i iz lazni i pri jemni (senr i r eceive) bafere.

Fo rma t TCP segmen ta

 TCP segment se sastoj i od Zaglavl ja (koje ima fiksni deo od 20 bajtova i opcion

deo) i podataka.

8   16   24   32

Source port #

Redni broj (sequence number)

Redni broj za potvr|ivanje (ack number)

Destination port #

Du`inazaglavlja   Extra   Veli~ina prozora prijemnika

Internet checksum Pointer na urgent podatke

Opcije

P o d a c i

 

Page 103: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 103/260

71/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Source port , i dest inat ion port :

Ident i f ikuju krajnje ta~ke konekci je. Svaki host mo`e da odlu~i kako }e vr{i t i dodelu

portova od 256 pa nadalje.

Sequence number i ACK number:

 To su jedna od najva`ni j ih pol j u TCP segmentu. Ova polja igraju klju~nu ulogu u

post izanju pouzdanog TCP servisa. Pre nego {to vidimo kako se ova polja koriste

za post izanje prenosa, da vidimo {ta TCP stavl ja u ova polja.

 TCP vidi podatke kao nizove bajtova. Redni brojevi ozna~avaju redne brojeve

prenet ih bajtova, a ne segmenata. Redni broj segmenta je jednak rednom broju

prvog bajta u datom segmentu. Razmotrimo jedan primer.

Pretpostavimo da proces na hostu A `el i da po{alje niz podataka procesu na

hostu B preko TCP konekci je. TCP u hostu A }e implic i tno numerisat i svaki bajt u

nizu podataka. Pretpostavimo da se niz podataka sastoj i od 500 000 bajtova, da

je maksimalna vel i~ ina segmenta 1000 bajtova, i da je prvi bajt podataka

numerisan sa 0. TCP }e konstruisat i 500 segmenata. Prvi segment dobija redni bro

0, drugi dobija redni broj 1000, tre}i 2000 i tako dalje. Ovi redni brojevi se ume}u

u polje seq number u zaglavl ju odgovaraju}eg TCP segmenta.

Razmotrimo sada ACK brojeve. Po{to je TCP ful l-duplex, ist i segment koj i prenos

podatke mo`e se iskorist i t i i za potvr|ivanje primljenih segmenata. ACK polje

sadr`i redni broj slede}eg bajta koj i se o~ekuje da se primi. Ako je npr: host A

primio sve brojeve od 0 do 999 iz B, on }e u ACK polju segmenta koj i {al je hostu

be upisat i 1000.

Postavl ja se pitanje {ta se de{ava ako u host A iz hosta B st igne prvi segment

(bajtovi od 0 do 999) pa tre}i segment (bajtovi od 2000 do 2999), t j . Ako st igne

segment van redosleda? Nigde se ekspl ic i tno ne ka`e {ta se tada de{ava. Jedna

vari janta je da se odbace svi segmenti koj i st ignu van redosleda dok se ne popun

sekvenca. Koja }e se vari janta korist i t i navodi se u polju >>opci je<<.

 Jo{ jedan interesantan detal j ! Mi smo u primeru uzel i da se bajtovi numeri{u od 0

realno, obe strane slu~ajno odabiraju prvi redni broj bajta da bi se izbegla

eventualna konfuzi ja ako neki segment iz predhodne konekci je (sa ist im brojem

porta) jo{ kru`i kroz mre`u, pa da se on slu~ajno ne shvat i kao segment teku}e

konekci je koja ima iste >>IP Port #<< oznake .

Slede}a 4 bita:

Page 104: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 104/260

72/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Ozna~avaju du`inu zaglavl ja u 32-bitnim re~ima. Ova informaci ja je bitna jer

opciono polje mo`e bit i razl i~ i te du`ine. Ovo odre|uje u su{t ini gde po~inje pol je

podataka.

Slede}ih 6 bitova:

Se ne koriste (ostavl jeno je da se eventualno jo{ ne{to doda zaglavl ju, al i to do

danas ni je u~injeno.

URG Bit :

Ovaj bit je postavl jen na 1 ako se korist i urgent pointer. Urgent pointer se korist i

da uka`e na offset u bajtovima od teku}eg rednog broja do mesta gde se nalaze

urgentni podaci u segmentu. U praksi se ovo vrlo retko korist i . Urgentni podaci su

zamena za prekid.

ACK Bit :

 Je postavl jen na jedinicu da uka`e da je ACK broj val idan. Tj . Da segment nos

potvrdu. Ako je ACK=0, segment ne nosi potvrdu, pa se polje ACK number

ignori{e.

PSH:

Ukazuje na >>push<< podatke t j . Podatke koj i moraju odma da se prenose nakon

pri jema iz aplikaci je, a ne da se baferuju i da se sa procesom ~eka dok se bafer

ne popuni. Ovo je u slu~ajevima kada se zahteva interakt ivni rad, kao npr telnet

sesi je i td . . .

RST bit :

Se korist i da resetuje konekci ju koja je postala konfuzna zbog pada hosta i l i nekog

drugog razloga. Korist i se i za odbacivanje neva`e}eg segmenta i l i kada se odbija

konekci ja.

SYN Bit :

Page 105: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 105/260

73/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Se korist i da uspostavi konekci ju. Konekcioni zahtev ima SYN=1 i ACK=0. Odjava na

konekci ju ima SYN=1 i ACK=1. U su{t ini SYN bit se korist i da ozna~i CONNECTION

REQUEAST i CONNECTION ACCEPTED, pri ~emu se ACK polje korist i da bi se

napravi la razl ika izme|u nj ih.\

FIN Bit :

Se korist i za osloba|anje konekci je. On ka`e da izvor nema vi{e podataka da

slanje. Me|utim, posle zatvaranja konekci je proces mo`e da nastavi da prima

podatke.

SYN i FIN segmenti imaju redne brojeve i t ime se garantuje da }e oni bit

procesirani u korektnom redosledu.

Kontrola toka u TCP se ostvaruje pomo}u kl izaju}eg prozora (s l iding window). Pol je

vel i~ ine prozora ka`e kol iko bajtova mo`e bit i poslato po~ev od potvr|enog bajta

Vrednost WIN=0 je legalna i ka`e da su bajtovi do rednog broja ACK-a primljeni

al i da pri jemnik trenutno ne `el i da primi vi{e podataka. Dozvola za nastavak

slanja se mo`e poslat i kasni je slanjem segmenta sa ist im ACK brojem i WIN<>0.

INTERNET CHECKSUM:

 Je CRC zaglavl je. Formira se na isti na~in kao kod IP.

Pol je opci je:

Omogu}ava da se defini{u dodatne opci je koje standardnim zaglavl jem nisudefinisane. Najva`ni ja je ona opci ja koja omogu}ava hostu da defini{e maksimalnu

mogu}u vel i~ inu segmenta koju on mo`e da prihvat i . Ef ikasni je je prenosit i du`e

segmente. U toku uspostavl janja konekci je svaka strana najavl juje svoj maksimum

Usvaja se manja vrdnost . Na internetu svi hostovi moraju da mogu da prihvate

20+536=556 bajtova

U polju opci ja mo`e da se specif ic ira selekt ivno ponavl janje i l i Go Bak N protoko

ako nastupi gre{ka.

.

Page 106: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 106/260

74/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Uspos tav l j an j e veze kod TCP

Veza se uspostavl ja 3-way handshake procedurom. Da bi se veza uspostavi la,

jedna strana, npr server pasivno ~eka izvr{avaju}i L ISTEN i ACCEPT primit ive.

Druga strana, kl i jent izvr{ava CONNECT primit ivu speci jal iz iraju}i IP adresu i port sa

koj im ho}e da uspostavi vezu, kao i maksimalnu vel i~ inu TCP segmenta koju mo`e

da prihvat i . CONNECT primit iva {al je TCP segment sa SYN=1 i ACK=0 i ~eka

odgovor.

Kada segment st igne u odredi{te, ako neki proces oslu{kuje (L ISTEN) dat i ort , TCP

mu prosle|uje segment. Proces mo`e da prihvat i i l i odbije vezu. Ako prihvat i vezu

{al je potvrdu. Ako se veza odbija {al je se segment sa RST=1.

Ako u kl i jent st igne segment potvrde konekci je, on {al je potvrdu sa SYN=0.

Ovo se mo`e videt i na slede}oj i lustraci j i :

ServerKlijentConnection requestsyn=1 seq=x , ACK=0)

Connection acceptedsyn=1 seq=y , ACK=x+1)

ACK

SYN=0, SEQ=x+1, ACK=y+1

Vreme Vreme 

Raskidanje veze je simetr i~no. Svaki smer se zatvara posebno. Da bi se raskinula

veza, jedna od strana {al je segment FIN=1, {to zna~i da nema vi{e podataka za

slanje. Kada se FIN potvrdi, taj smer je zatvoren. Podaci mogu da se prenose u

drugom smeru. Kada se oba smera uga{ena, konekci ja je okon~ana.

TCP po l i t i ka s lan ja poruka

Pretpostavimo da pri jemnik ima 4096-bajtni bafer. Ako izvor po{alje 2048 bajtn

segment koj i je korektno primljen, pri jemnik }e potvrdit i segment. Me|utim, po{to

pri jemnik sada ima samo 2048 bajtova slobodnog prostora (dok aplikaci ja ne

pro~ita podatke), on }e promenit i prozor na 2048 (t j . WIN=2048).

Page 107: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 107/260

75/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Sada izvor po{alje narednih 2048 bajtova, koj i se potvr|uju, al i je sada WIN

popunjen i postavl ja se na 0. Izvor mora da se zautavi dok aplikat ivni proces u

odredi{tu ne ukloni podatke i oslobodi bafer. Kada se to desi, TCP u pri jemniku

pove]ava prozor na 2048 i {al je segment izvoru, {to mu omogu}ava da ponovo

po~ne sa slanjem.

Kada je WIN=0, izvor ne sme da {al je segmente sem u dva slu~aja. Prvo, ugra|en

podatak se mo`e poslat i , npr. Da dozvol i korisniku da ubije proces koj i se izvr{ava

na udaljenoj ma{ini . Drugo, izvor mo`e poslat i 1-bitni segment da bi nateraopri jemnika da ponovo po{alje ACK i WIN. Ovo je u~injeno da bi se izbeglo

blokiranje ako se desi da se izgubi segment koj i najavl juje novi WIN koj i je razl i~ i

od nule.

UDP (Use r da ta p ro toco l )

Pru`a beskonekcionu uslugu (servis ) apl ikat ivnim procesima. To zna~i da nema

inic i jat ivnog uspostvl janja veze t j . Nikakve handshake procedure. Zaglavl je UDPsegmenta se sastoj i od 8-nitova. Iza tog zaglavl ja dolaze podaci.

Source port # Destination port#

CRCDu`ina UDP

Zaglavlje UDP protokola 

Brojevi izvornog i odredi{nog porta:  imaju isto zna~enje kao i kod TCP-a t j . Treba

da ident i f ikuje krajnje ta~ke u komunikaci ju.

Du`ina UDP-a: je ukupna du`ina UDP segmenta ukl ju~uju}i i zaglavl je i podatke.CRC: se formira isto kao kod TCP

Page 108: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 108/260

76/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

Mul t i p l e ks i ran j e i demu l t i p l e ks i ran j e

Da bi razumeli za{to je va`na usluga mult ipleksiranja/demult ipleksiranja podset imo

se da IP razmenjuje podatke izme|u dva hosta, pri ~emu svaki host ima

jedinstvenu IP adresu, IP ne razmenjuje podatke izme|u aplikat ivnih procesa. To je

zadatak transportnog servisa MUX/DMUX.

U odredi{nom hostu, transportni nivo prima segmente sa mre`nog nivoa. Zadatak

transportnog nivoa je da ih pr eda odgovaraju}em aplikat ivnom procesu u hostu.

Razmotrimo ovakvu jednu situaci ju. Pretpostavimo da sedite za ra~unarom

downloadujete web stranice, dok izvr{avate jednu FTP i dve telnet sesi je. To zna~

da se na va{em ra~unaru izvr{avaju 4 mre`na aplikat ivna procesa. Kada

transportni nivo u va{em ra~unaruprimi podatke od mre`nog nivoa, potrebno je da

ih usmeri ka jednom od ova 4 procesa. Postavl ja se pitanje kako }e transportn

nivo znat i kom procesu da prosledi segmet. Svaki segment transportnog nivoa ima

polje koje sadr`i informaci ju koja se korist i da se ustanovi kom procesu segment

treba da se preda. Zadatak predaje paketa korektnom aplikat ivnom pocesu sezove demult ipleksiranje. Zadatak prikupl janja podataka u izvornom hostu od

razl i~ i t ih aplikat ivnih procesa se zove mult ipleksirnje.

Set imose one pri~e o Muju i Hasi. U toj porodi~noj pri~ i Mujo i Haso su obavl jal i te

funkci je. Kada prikupl jaju po{tu od bra}e i sestara i predaju je po{taru oni vr{e

mult ipleksiranje, a kada iz po{te donose pisma i dele ih bra}i i sestrama on

obvl jaju demult ipleksiranje.

 Transportni protokoli u Internetu, TCP i UDP, obavl jaju zadatke MUX/DMUX tako {to

imaju dva polja u zaglavl ju segmenta:

Pol je broja izvori{nog porta (SP) i

Pol je broja odredi{nog porta (DP)

Zajedno ova dva polja na jedinstven na~in ident i f ikuju aplikat ivni proces koj i se

izvr{ava u odrdi{nom hostu. Broj porta je 16-bitni broj od 0 do 65535. Brojevi od

0 do 1023 su tzv. Dobro poznat i brojevi , rezervisani za dobro poznate aplikat ivne

protokole kao {to su NPR: HTTP — 80, FTP — 21, Telnet — 23. Kada razvi jamo novu

aplikaci ju mi joj moramo dodeli t i neki broj porta.

Za{to postoje dva polja (SP, DP) za brojeve portova? Odgovor: Host mo`e izvr{avat

dva procesa istog t ipa u isto vreme, pa broj porta aplikaci je ni je dovol jan da

ident i f ikuje proces. NPR: Web server mo`e opslu`ivat i vi{e HTTP procesa u isto

Page 109: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 109/260

77/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

vreme, {to zna~i da izvr{ava vi{e procesa sa brojm porta 80. Da bi se jedinstveno

ident i f ikoval i procesi, potreban je i drugi broj.

Kako se kreira ovaj drugi broj? Koj i broj se stavl ja u SP polje a koj i u DP polje?

Podset imo se Kl i jent-server modela. Obi~no je host koj i inic ira aplikaci ju ozna~en

kao kl i jent , a drugi host je server.

Pretpostavimo da aplikaci ja ima port 23. Razmotrimo kako izgleda segment koj

pot i~e od kl i jenta. Koj i su brojevi izvornoh (SP) i odredi{nog porta (DP) za ova

segment. Za DP ovaj segment ima broj porta aplikaci je, t j . DP=23. Za SP kl i jent

korist i broj koj i ne korist i ni jedan drugi proces koj i se na njemu izvr{ava. Ovo se

radi automatski od strane software-a tranportnog nivoa i transparentno je za

projektanta aplikaci je. Aplikaci ja mo`e i ekspl ic i tno zahtevat i odre|eni broj porta

kori{}enjem BIND ( ) primit ive. Pretpostavimo da je kl i jent izabrao broj porta X

 Tada }e svaki segment koji ovaj proces {alje imati broj izvori{nog porta postavl jen

na X, a odredi{nog na 23 (SP=x, DP=23). Kada segment st igne u server ovi brojev

}e omogu}it i serveru da preda segment korektnom aplikat ivnom procesu: Broj 23

ident i f ikuje Telnet proces, a broj X ident i f ikuje konkretan telnet proces.

Si tuaci ja je obrnuta kada segment ide od servera ka kl i jentu. Izvorni port je sada

port apl ikaci je, t j . 23 a odredi{ni port je X. Ovo je i lustrovano slede}om sl ikom.

Client Server

SP=X SP=23

DP=23 DP=X

 

[ta se de{ava ako dva razl i~ i ta kl i jenta uspostave Telnet sesi ju do servera i svak

kl i jent odabere ist i broj izvornog paketa, recimo X? Kako }e server znat i da

demult ipleksira dve sesi je koje imaju ist i broj porta? Odgovor je da server korist i IP

adrese u IP datagramu koj i prenosi ove segmente. Naime, kada odredi{ni HOST

primi podatke sa mre`nog nivoa, trojka ( IP Adresa, SP, DP) se korist i da se podaci

proslede odgovaraju}im procesima!

Page 110: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 110/260

78/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

 Transportni protokol i u neku ruku podse}aju na protokole data-link nivoa. Naime

protokol i transportnog nivoa moraju da se bave kontrolom gre{aka, kontrolom toka

itd. Me|utim bitna razlka je ta {to na data-l ink nivou postoj i f iz i~ka veza t j

Komunikacioni kanal izme|u dva rutera, dok je kod transportnog nivoa ovaj f iz i~k

kanal zamenjen celom podmre`om.

Data-link nivo

Fizi~ki kanal

Ransportni nivo

 

Page 111: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 111/260

79/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

 TCP/IP model ................................................................................................................................................................ 1

Aplikativni Nivo .............................................................................................................................................................2

Klijenti i serveri .........................................................................................................................................................3

DNS.............................................................................................................................................................................4

Primer za DNS..........................................................................................................................................................7

DNS zapisi (DNS Records) ......................................................................................................................................8

 Transportni nivo (Host-to-host nivo)....................................................................................................................... 10

Mre`ni nivo (IP nivo) .................................................................................................................................................. 10

Datalink nivo ............................................................................................................................................................... 10

Framing.....................................................................................................................................................................11

Kontrola gre{ke...................................................................................................................................................... 13

Bit parnosti: ............................................................................................................................................................. 13

Kontrolna suma bloka — BCC (Block Check Sum): .......................................................................................... 13

CRC (Cyclic Redundancy Code): .......................................................................................................................... 14

 Tehnike potvrde prenosa ..................................................................................................................................... 17

ECHO tehnika:......................................................................................................................................................... 17

ARQ tehnka:............................................................................................................................................................ 17

Stop & wait protocol: ............................................................................................................................................ 18

Iskori{}enost kanala: ............................................................................................................................................ 20

Selektivna retransmisija ....................................................................................................................................... 22

Go back N: ............................................................................................................................................................ 24

Iskori{}enost komunikacionog kanala .............................................................................................................. 26

STOP & WAIT ......................................................................................................................................................... 29

Selectiv retransmition............................................................................................................................................ 29Go Back N ............................................................................................................................................................. 29

Zaklju~ak za razmatranja sa gre{kom: ........................................................................................................... 29

Verovatno}a nastajanja gre{ke ......................................................................................................................... 30

Protokoli data-link nivoa ..................................................................................................................................... 32

Page 112: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 112/260

80/81 Ra~unarske mre`e (E lektronski Fakultet , Ni{) Marko Mil i~ i}

High Level Data Link Control .............................................................................................................................. 32

Vrste ramova: ........................................................................................................................................................ 33

PPP protokol........................................................................................................................................................... 35

Mre`ni nivo .................................................................................................................................................................37

Rutiranje paketa.................................................................................................................................................... 39

Princip optimalnosti .............................................................................................................................................. 40

Stati~ki algoritmi ..................................................................................................................................................... 41

Flooding Algoritam (bujica, poplava) ................................................................................................................ 42

Adaptivni algoritmi................................................................................................................................................ 42

Distance vector algorithm ................................................................................................................................... 43

Split horizon algoritam..........................................................................................................................................47

Link state algorithm.............................................................................................................................................. 48

Odre|ivanje novih puteva................................................................................................................................... 52

Link State Algoritam:............................................................................................................................................. 55

Mre@ni nivo INTERNETA - IP protokol ................................................................................................................... 56

IP Protokol .............................................................................................................................................................. 56

IP Adrese................................................................................................................................................................ 59

Internet Control Mesage Protocol...................................................................................................................... 60

ARP Protocol ...........................................................................................................................................................61

RARP — Reverse ARP............................................................................................................................................ 64

 Transportni nivo......................................................................................................................................................... 65

Primitive transportnih servisa.............................................................................................................................. 68

 TCP Protocol ............................................................................................................................................................... 69

Format TCP segmenta ..........................................................................................................................................70Uspostavljanje veze kod TCP ..............................................................................................................................74

 TCP politika slanja poruka ...................................................................................................................................74

UDP (User data protocol) .....................................................................................................................................75

Multipleksiranje i demultipleksiranje ..................................................................................................................76

Page 113: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 113/260

1/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

BEZBEDNOST MRE@E

Uvod

U prvih nekol iko deceni ja postojanja mre`e su uglavnom bile kori{}ene od strane

univerzi teta za razmenu e-maila, izme|u istra`iva~a, i za pristup {tampa~ima. Pod

ovim okolnost ima pitanju bezbednost i se ni je pridavala ve}a pa`nja. Me|utim

danas, kada mil ioni l judi koriste ra~unarske mre`e za obavl janje f inansi jskih

transakci ja, kupovinu, i td, bezbednost mre`e se pojavl juje kao vel ik i problem.

Bezbednost mre`e je {irok pojam. U svom najjednostavni jem obliku, bezbednos

podrazumeva da neovla{}ene osobe ne mogu ~itat i i l i jo{ gore, modif ikovat

poruke namenjene drugim osobama. Tako|e se odnosi na spre~avanje

neovala{}enog kori{}enja resursa. Ve}inu problema vezanih za bezbednost mre`e

uzrokuju zlonamerne osobe koje poku{avaju da izvuku neku korist na ra~un drugih

Problem bezbednost i mre`e se mo`e podeli t i na 4 oblast i koje se me|usobno

prepli}u:

 Tajnost

Autent i f ikaci ja

Neporicanje

Kontrola ident i teta

Tajnost  ima zadatak da sa~uva tajnost informaci je od neautorizovanih osoba

Autent i~nost  ima zadatak da utvrdi verodostojnost osoba u~esnika u komunikaci j i

pre slanja poverl j iv ih informaci ja.

Neporicanje — jedna strana zahteva od druge da u~ini ne{to (npr transfer novca sajednog ra~una na drugi ) a zat im to pori~e. Takve stvari se nesmeju dozvol i t i

Postavl ja se pitanje kom protokolu pripada odgovornost za bezbednost mre`e. Na

nekol iko nivoa je mogu}e re{avat i ovaj problem. Svaki nivo mo`e da da svo

doprinos.

P r ime r i z a{ t i t e na r a z l i ~ i t im s l o j e v ima l e ye r - ima )

Na f iz i~kom  nivou prenosne l ini je mogu bit i hermeti~ki zatvorene u cevima koje

sadr`e gas argon pod visokim pri t iskom. Svaki poku{aj da se prodre u cevoslobodi}e gas {to }e dovest i do smanjenja pri t iska i akt iviranja alarma. Neki vojn

sistemi koriste ovu tehniku.

Na data-l ink  nivou paket i mogu bit i kodirani pri slanju i dekodirani pri pri jemu

izme|u dva ~vora. Me|utim, ako paket i na svom putu treba da pro|u kroz vi{e

Page 114: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 114/260

2/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

rutera (a u svakom moraju da se kodiraju/dekodiraju) onda ruteri mogu postat

slaba ta~ka i meta zlonamernih napada.

Na mre`nom nivou mo`e se instal irat i f i rewall koj i vr{i f i l t r i ranje paketa, tako {to

nekim paket ima dozvol javaju prolaz, a nekim ne. Fi l t r i ranje se vr{i na osnovu IP

adrese.

Na t ransportnom nivou se mo`e izvr{i t i { i fr i ranje poruka koje se razmenjuju izme|u

krajnj ih ta~aka (host-host ) .

Me|utim, ni jedna od ovih tehnika ne re{ava problem autent i f ikaci je i neporicanja

Da bi se ovaj problem napao, r e{enje se mora potra`i t i na aplikat ivnom nivou.

Mehan i zm i za { t i t e - k r i p t og r a f i j a)

Kriptografi ja  je proces prevo|enja informaci je u kodirani obl ik ({ i frovani tekst

kori{}enjem odre|enog algori tma i kl ju~a(nekog broja, tajne re~i i l i { i fre) . Ci l

kr iptografi je je za{t i t i t i privanost informaci ja. Proces kriptovanja se sastoj i od

algori tma  i kl ju~a. Kl ju~ je vrednost koja je nezavisna od plaintext-a (originalnog

teksta koj i se kodira) . Ist i algori tam }e generisat i razl i~ i t iz laz u zavisnost i od

kl ju~a koj i se korist i . Kada je tekst {i fr i ran on se mo`e prenosit i . Po pri jemu

{ifrovani tekst se mo`e vrat i t i u originalnu informaci ju kori{}enjem algori tma za

de{ifrovanje i istog kl ju~a koj i je kori{}en za {ifrovanje. Na primer:

Ako je (X) poruka koju treba {ifrovat i , i neka je (K) kl ju~ za {ifrovanje, a (E

algori tam za {ifrovanje, tada proces {i frovanja mo`emo predstavi t i kao funkci ju

Y=EK (X) . (Y) je sada {ifrovani tekst koj i je ne~it l j iv u takvom obliku. Analogno ovom

postupku, de{ifrovanje }e se obavit i do slede}oj {emi: X=DK (Y ) . Jedina razl ika je u

tome {to je ovoga pu ta kori{}en algori tam za de{ifrovanje (D) umesto algori tma za

{ifrovanje (E ) .

Pode l a k r i p t og r a f s k i h s i s t ema

Mogu}e je izvr{i t i podelu kriptografskih sistema u odnosu na tr i nezavisna

kri teri juma (dimenzi je) .

U odnosu na t ip operaci ja  koje se koriste za transformisanje informaci je

(plaintext-a) u {i frovani tekst . Svi algori tmi za {ifrovanje se zasnivaju na

dva osnovna principa. Ta dva principa su: Subst i tuci ja  — kada se svak

element plaintext-a presl ikava u neki drugi element i Transpozici ja — kada

se vr{i preure|enje elemenata u plaintext-u. Fundamentalni uslov koj

mora bit i zadovol jen u ovim transformaci jama je da informaci ja ne sme

bit i izgubljena t j . da su sve operaci je 100% reverzibi lne.

Page 115: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 115/260

3/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

U odnosu na broj kl ju~eva koj i se koriste. Ako obe strane koriste ist i k l ju~

kriptografski sistem se naziva simetri~an kriptografski sistem . Ako po{i l jalac

i primalac koriste ral i~ i te kl ju~eve, sistem se naziva asimetri~an  i l i s istem

sa 2 kl ju~a, i l i s istem sa javnim kl ju~em. Ovo je mogu}e zahval juju}

otkri}u da je mogu}e razvi t i algori tam koj i koris i jedan kl ju~ za {ifrovanje

a drugi za de{ifrovanje. Kl ju~ za {ifrovanje mo`e bit i javni, al i kl ju~ za

de{ifrovanje mora bit i privatni . Javni i privatni kl ju~ ~ine par kl ju~eva.

U odnosu na na~in procesiranja  (obvrade) plaintext-a metode se dele na{ i f rovanje blokova  — u jednom trenutku se {ifruje ceo blok i {ifr iranje

niza (s tream) — {i fr ira se svaki element sekvenci jalno.

Dob r i a l go r i tm i i K r i p t oana l i z a

 To je poku{aj da se otkr ije X (or iginalna poruka, i l i kl ju~ K). Strategi ja koja se

korist i u kriptoanaliz i zavis i od {eme koja se korist i za {ifrovanje i raspolo`ivih

informaci ja. Najte`i slu~aj je ako je poznat samo {ifovan tekst . U nekim

slu~ajevima ni algori tam {ifrovanja ni je poznat. U op{tem slu~aju se ipak mo`e

uzet i da je kriptoanalizatoru poznat algori tam {ifr iranja.

 Jedan od mogu}ih napada(poku{aja) je proba svih mogu}ih kl ju~eva. Ako je bro

kl ju~eva vel ik i , ovaj pri laz postaje prakt i~no neupotrebl j iv. Mogu}e je zat im da

kriptoanali t i~ar ima neki {i frovani tekst i njegov plaintext , pa da onda na osnovu

toga proba da otkri je kl ju~ za {ifrovanje.

Dobar algori tam za {ifrovanje treba da zadovol j i jedan i l i oba od slede}ih

kri teri juma:

Cena razbi janja {i frovanog teksta prevazi lazi vredno st {i fr irane informaci je

Vreme potrebno za razbi janje {i fre je du`e od vremena va`enja

informaci je.

U slede}oj tabl i je prikazano kol iko je vremena potrebno za razbi janje {i fre t j

pronala`enje kl ju~a, za razl i~ i te vel i~ ine kl ju~eva.

Vel i~ ina k lj u~a u b it ov ima Broj mogu}ih kl ju~eva Pot rebno v reme

32 4.33 x 109  35.8 min

56 7.2 x 10 1 6  1142 god.

128 3.4 x 1038  5.4 x 1024 god.

DES algori tam korist i k l ju~ du`ine 56 bitova.

Page 116: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 116/260

4/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Subs t i t u c i o ne t ehn i k e

Subst i tucione tehnike su tehnike kod koj ih se slovo plaintexta zamenjuje drugim

slovima i l i brojevima, i l i s imbolima. Ako se plaintext posmatra kao niz bitova, tada

subst i tuci ja podrazumeva zamenu grupe bitova grupom simbola.

Ceza r o v { i f r a t o r

Najstari j i i naj jednostavni j i { i frator koj i korist i subst i tuci ju  je {i frator Jul i ja Cezara

Cezarov {i frator radi tako {to svako slovo rimskog alfabeta zamenjuje slovom koje

je 3 pozici je u desno udaljeno od njega u alfabetu.

Primet imo da se kod supst i tuci je slova vr{i l inearno pomeranje u desno za 3

mesta, tako iza Z ponovo dolazi A t j . Vr{i se rot iranje a ne {ifrovanje. Ako svakom

slovu dodelimo numeri~ki ekvivalent, tada algori tam mo`emo izrazi t i na slede}

na~in. Svako slovo plaintexta, p se zamenjuje sa slovom c u {ifrovanom tekstu na

slede}i na~in:

C = E(p) = (p+3) mod 26

Vrednost pomeraja mo`e bit i bi lo koja vel i~ ina (K) tako da Cezarov algori tam

mo`emo opisat i formulom:

C = E(p) = (p+k) mod 26 (Za K mora da vai da je izme|u 1 i 25)

Na osnovu ovoga, mo`emo napisat i algori tam de{ifrovanja kao:

P = D(c) = (c-k) mod 26

Ako se zna da je tekst {i frovan cezarovim algori tmom, tada se kriptoanaliza vr{metodom iscrpl j ivanja svih poku{aja. Dakle, vrlo je slaba za{t i ta, al i za to vreme

bilo je i tekako doba za{t i ta.

 Tri va`ne karakterist ike ovog problema su nam omogu}i le da korist imo metod svih

mogu}ih poku{aja u kriptoanaliz i :

Algori tam {ifrovanja i de{ifrovanja nam je poznat

Ima samo 25 mogu}ih kl ju~eva

 Jezik plaintext-a je poznat i lako se prepozna original od zbrke simbola.

U mnogim situaci jama, kada je re~ o komunikaci jama u ra~unarskim mre`ama

mo`emo smatrat i da nam je algori tam {ifrovanja i de{ifrovanja poznat. Ono {to

metod svih mogu}ih poku{aja u kriptoanaliz i ~ini neprakt i~nim je kori{}enje

algori tma sa vel ik im brojem kl ju~eva.

Page 117: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 117/260

5/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

 Tre}a karakterist ika je tako|e zna~ajna. Ako je jezik plaintext-a nepoznat, onda

prepoznavanje originala mo`e bit i vrlo te{ko, jer neznamo {ta tra`imo t j . {ta

ho}emo da proval imo.

P l a y f a i r - o v { i f r a t o r

Dobio je ime po Barno Playfair-u koj i je ovaj na~in {i frovanja uveo u bri tansk

Foreign Off ice (1854). To je algori tam {ifr iranja parova slova u tekstu parom slova

u {ifrovanom tekstu.

Algori tam se bazira na kori{}enju matrice slova dimenzi ja 5x5 konst i tuisane na

osnovu neke kl ju~ne re~i . Evo jenog primera te matrice. Ako je kl ju~na re~

MONARCHY, tada matrica izgleda ovako.

M O N A R

C H Y B D

E F G I/J K

L P Q S T

U V W X Z

Matrica se konst i tui{e popunjavanjem slova kl ju~ne re~i s leva u desno i od vrha

ka dole. Zat im se u ostatku matrice upi{u ostala slova u alfabetskom redosledu

Slova I i J se ra~unaju kao jedno slovo. Tekst se {i fr ira po dva slova po{tuju}i

s lede}a pravi la:

 Teks t se del i na parove slova. Ista slova koja bi se na{la u jednom paru

se razdvajaju, tako da se re~ ballon del i na bal x lo x on .

Par slova koj i se javi u istoj vrst i matrice se zamenjuje slovom koje se

nalazi desno (cik l i~no u desno). Na primer: Ako se u nekoj re~i javi pa

slova AR, on se zamenjuje sa RM zato {to se ta slova dobijaju {i f tovanjem

(pogledajte tabl icu) .

Par slova koj i se nalazi u istoj koloni se zamenjuje slovom ispod, pri ~emu

se poslednje slovo u koloni zamenjuje prvim (cik l i~no). Na primer: MU se

zamenjuje u CM. Ovde se korist i is t i princip, samo {to se cik l i~no

pomeranje vr{i po kolonama.

U ostal im slu~ajevima svako slovo teksta se zamenjuje slovom koje se

nalazi u preseku vrste u kojoj se slovo nalazi i kolone u kojoj se nalaz

drugo slovo iz para. NPR: HS se smenjuje u BP.

Page 118: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 118/260

6/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Po{to ima 26 slova, postoj i 26x26=676 razl i~ i t ih parova slova {to ~ini ident i f ikaci ju

pojedinih parova mnogo te`om. Dalje, relat ivna u~estanost pojavl j ivanja pojedinih

slova u jeziku se mnogo lak{e otkri je nego u~estanost pojavl j ivanja parova. Ova

algori tam je kori{}en kao standard za vreme prvog svetskog rata u bri tansko

armij i i dosta ~esto u ameri~koj vojsci za vreme drugog svetskog rata.

T r an spo z i c i o ne t ehn i k e c i k - ca k ma t r i c e )

Ove tehnike se svode na neku vrstu permutaci je slova u originalnom tekstu

Najjednostavni ja metoda ovog t ipa je onaj kod koga se plaintext pi{e cik-cak po

dijagonalama. [i fr irani tekst se dobija ~i tanjem vrsta. Za kriptoanali t i~ara je

nala`enje plaintext-a iz ovog {ifrovanog teksta vrlo lak posao.

Komplikovanija {ema je da se poruka upisuje u jedan pravougaonik ( t j . Matricu

vrsta po vrsta, a {i frovana poruka se dobija ~i tanjem matrice po kolonama pr

~emu kolone mogu bit i permutovane. U tom slu~aju, redosled kolona postaje kl ju~

za algori tam. NPR:

Kl ju~: 4 3 1 2 5 6 7

Plaintext :

n a p a d o D

l o ` e n z a

d v a s a t a

p o p o d n e

Ukoliko se kolone permutuju po kl ju~u, a mi ih ~i tamo, dobi}emo:

P`apaesoaovonldpdnadoztndaae

^ist transpoziciono {ifrovani tekst se lako prepoznaje jer ima istu u~estanost

pojavl j ivanja slova kao i original. De{ifrovanje se svodi na upisivanje {i frovanog

teksta u mtricu i igranje sa rasporedom kolona matrice.

 Transpozicioni {i frator mo`e bit i mnogo bezbednij i , ako se obavi vi{e puta. Kao

rezultat se dobija mnogo slo`eni ja permutaci ja koju je te{ko otkri t i . Tako, na gornj

tekst mo`e ponovo da se primeni transpozici ja, pa da se dobije:

Aodnpvnd`aptpodzaoaaendasloe

Page 119: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 119/260

7/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

DES Da t a E n c r i p t i o n S t anda r d )

Ovo je t ipi~an primer modernog algori tma {ifr iranja. Ovaj algori tam korist i

supst i tuci ju i transpozici ju. Po~e}emo od pojednostavl jene verzi je DES alogori tma

da bi lak{e shvat i l i kako funkcioni{e. Ozna~imo ovaj algori tam kao S-DES

(simpli f ied-DES).

Algori tam {ifr iranja ukl ju~uje 5 funkci ja:

Inic i jalna permutaci ja ( IP)

Funkci ja fk koja obuhvata i subst i tuci ju i permutaci ju i zavis i od kl ju~a

Funkci ju permutaci je(swap) koja menja levu (L ) i desnu (D) polovinu

Funkci ja fk ponovo

Funkci ja permutaci je koja je inverzna inic i jalnoj permutaci j i IP

Ulaz za funkci ju fk su podaci koj i se {i fr iraju i 8-bitni kl ju~. Algori tam je mogao da

bude projektovan tako da radi sa 16-bitnim kl ju~em, koj i se sastoj i od dva 8-bitna

kl ju~a, po jednim za svaku primenu funkci je fk . Mogu}e je korist i t i is t i 8-bitni kl ju~u oba slu~ajua. Kompromis je na~injen da se korist i 10-bitni kl ju~ na osnovu kojeg

se generi{u dva 8-bitna podkl ju~a, kao {to je prikazano na slede}oj sl ic i :

IP

IP

Fk Fk  

SW SW

Fk Fk  

Inv(IP)

Inv(IP)

P10

Shift

P8

Shift

P8

K1   K1

K2   K2

8-bitni {ifrirane tekst 8-bitni {ifrirane tekst 

Page 120: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 120/260

8/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

U ovom slu~aju, kl ju~ se prvo permutuje funkci jom P10, zat im se primnjuje

shif tovanje. Iz laz iz shif t bloka prolazi kroz funkci ju permutaci je P8 koja generi{e

8-bitni podkl ju~ K1. Iz laz iz prvog {if t bloka se dovodi i na ulaz drugog {if t bloka,

a odat le na ulaz P8 permutacione funki je oda kle se dobija K2.

Koncizno bi smo mogli izrazi t i S-DES algori tam {ifr iranja kao kompozici ju onih 5

funkci ja o koj ima je bi lo re~i na po~etku:

IP f SW f IP k k 

  oooo 121−  

gde je:

( )( )( )

( )( )( )( )~klju10pshiftshift8pK

~klju10pshift8pK

2

1

=

De{ifrovanje je proces inverzan {ifrovanju. Dakle, sve {to treba uradit i je primenit

svih 5 funkci ja inverznim redom.

Generisanje kl ju~eva u S-DES algori tmu. Iz 10-bitnog kl ju~a koj i je pozna

po{i l jaocu i primaocu, generi{u se dva 8-bitna podkl ju~a, K1 i K2. Procesgenerisanja kl ju~eva prikazan je na sl ic i :

P10

LS-1   LS-1

P8

LS-2   LS-2

P8

10

5   5

10

5   5

8

8

 

Ova sl ika otkriva kako se vr{i {i f tovanje.

Permutovanje 10-bitnog kl ju~a : Neka je 10-bitni kl ju~ ozna~en sa

(k1,k2,k3, . . . . . . ,k10) . Permutaci ja P10 je definisana kao: P10(k1,k2,k3, . . . . . . ,k10

= (k3,k5,k2,k7,k4,k10,k1,k9,k8,k6). Na primer: 1010000010 -> 1000001100

Page 121: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 121/260

9/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Cikl i~no rotoranje : Primenjuje se cik l i~no pomeranje ulevo ( i l i rotaci ja) za 1

mesto prve i druge grupe od 5 bitova. Na primer:1000001100 ->

0000111001

Permutaci ja P8  koja uzima 8 bitova i permutuje ih po slede}em pravi lu

P8(k1,k2,k3, . . . . .k10) = (k6,k3,k7,k4,k8,k5,k10,k9). Rezultat je podkl ju~ k1. U

na{em primeru to je 10100100.

Svaka petorka bitova iz koraka -2- se cik l i~no pomera (rot ira) za 2 mesta

u levo, LS-2. U na{em primeru dobijamo: 0000111000 -> 0010000011

Sada se nad ovim nizom bitova primenjuje P8 i dobija se podkl ju~ K2. U

na{em primeru K2=01000011.

P r o c e s S -DE S { i f r i r an j a

Kao {to smo rekl i {i fr i ranje ukl ju~uje primenu 5 funkci ja. Evo kako su te funkci je

definisane.

Inic i jalna IP i poslednja inv IP) :

Ulaz je 8-bitni plaintext koj i se permutuje pomo}u IP funkci je IP(p1,p2,p3,. . . .p8) =

(p2,p6,p3,p1,p4,p8,p5,p7). Na kraju primene algori tma primenjuje se odgovaraju}a

permutaci ja koja je inverzna permutaci j i IP. Dakle, invIP(p1,p2,p3,. . . . ,p8) =

(p4,p1,p3,p5,p7,p2,p8,p6).

Funkci ja fk:

Najslo`eni j i deo algori tma je funkci ja fk koja se sastoj i od kombinaci je funkci ja

permutaci je i subst i tuci je. Funkci ja fk se mo`e opisat i na slede}i na~in. Ozna~imo

sa L i R prva 4 bita i poslednja 4 bita 8-bitnog ulaza u funkci ju fk. Zat im

ozna~imo sa F presl ikavanje 4-bitnog niza i 4-bitni niz. Tada fk mo`emo definisat

na slede}i na~in:

( ) ( )( )R,Sk ,RFLR,Lf k    ⊕=  

Ovde je SK podkl ju~ (k1 i l i k2) a zaokru`eni plus je logi~ka XOR operaci ja. NPR

Neka je iz laz iz IP stepena L=1011 R=1101. Tada je za neki kl ju~ SK ->

F(1011,SK)=(1110) . Na osnovu svega ovoga, mo`emo da napi{emo funkci ju fk kao:

( ) ( ) ( )010111011101,111010111101,1011f k    =⊕=  

Funkci ja F:

Ulaz je 4-bitni broj (n1,n2,n3,n4). Prva operaci ja je ekspanzi ja sa permutaci jom

definisana kao:

Page 122: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 122/260

10/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

EP(n1,n2,n3,n4) = (n4,n1,n2,n3,n2,n3,n4,n1) .

Sada se 8-bitni podkl ju~ K1=(k11,k12,k13,k14,k15,k16,k17,k18) sumira po modulu 2

(XOR-uje se) sa gornj im nizom bitova na slede}i na~in:

18k 1n,17k 4n,16k 3n,15k 2n,14k 3n,13k 2n,12k 1n,11k 4n   ⊕⊕⊕⊕⊕⊕⊕⊕  

Ozna~imo sada dobijeni rezultat sa:

13p,12p,11p,10p,03p,02p,01p,00p

Sada se prva ~et ir i bi ta uvode u S-box S0 odakle se dobija dvo-bitni iz laz, a

druga 4 bita se uvode u S-box S1, odakle se tako|e dobijaju 2 bita. Box-ovi S0 i

S1 su definisani na slede}i na~in:

⎥⎥⎥⎥

⎢⎢⎢⎢

=

⎥⎥⎥⎥

⎢⎢⎢⎢

=

3012

0103

3102

3210

1S

2313

0120

0123

2301

0S

S-boxovi rade na slede}i na~in: Prvi i ~etvrt i bi t ulaza (p00 i p03 {to se t i~e S0 p10 i p13 {to se t i~e S1) se tret iraju kao 2 bitni brojevi koj i defini{u vrstu S-boxa, a

drugi i tre}i bit defini{u kolonu S-boxa. Element u preseku vrste i kolone

odgovaraju}eg S-boxa predstavl ja 2-bitni iz laz (ekvivalent se predstavl ja u

binarnom obliku) .

NPR: ako je (p00,p03)=00 i (p01,p02)=10 tada je selektovana vrsta 0 i kolona 2

Odgovaraju}i element je 3 t j . 11 u binarnom sistemu je 3 u dekadnom. Apsolutno

se ista strategi ja primenjuje za S-box S1.

Zat im se dobijena 4 bita iz S0 i S1 permutuju po formuli :

P4(n1,n2,n3,n4) = (n2,n4,n3,n1)

Iz laz iz P4 je funkci ja F.

SW Switch) funkci ja:

Funkci ja deluje samo na prva 4 bita ulaza. SW funkci ja zamenjuje mesta ovim

~etvorkama bitova, tako da druga ~etvorka postaje prva i obratno, pa druga

primena funkci je fk sada deluje na nova ~et ir i bi ta. Druga primena fk korist i k l ju~K2. Za razl iku od upro{}enog DES algori tma DES algori tam radi na slede}i na~in

DES radi sa 64-bitnim blokovima podataka. Korist i 56-bitni kl ju~ i generi{e 16 48-

bitnih podkl ju~eva. Proces {i frovanja se mo`e opisat i kao:

IPf SW....................................................................SWf SWf IP 1k 15k 16k 1

oooooooo−  

Page 123: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 123/260

11/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

A l go r i tm i s a j a vn im k l j u ~ em as ime t r i ~ n i a l go r i tm i )

Is tori jski posmatrano, problem distr ibuci je kl ju~a je uvek bio najslabi ja karika u

kriptosistemima. Bez obzira kol iko je jak kriptosistem, ako ul jez ukrade kl ju~, sistem

je beskoristan. Po{to su kl ju~ za {ifr iranje i de{ifrovanje ist i ( i l i se bar jedan mo`e

izvest i iz drugog) i moraju se distr ibuirat i svim korisnic ima, postoj i problem: kl ju~

mora bit i za{t i}en od kra|e i u isto vreme distr ibuiran.

1976. godine dva istra`iva~a sa Stanford Univerzi teta, predlo`i l i su radikalno novu

vrstu kriptosistema. Sistem kod koga kl ju~ za {ifrovanje i de{ifrovanje nisu ist i , a

kl ju~ za de{ifrovanje se ne mo`e izvest i iz kl ju~a za {ifrovanje. U nj ihovom

predlogu algori tam za {ifrovanje (E ) i algori tam za de{ifrovanje (D), moraju da

zadovol javaju slede}e zahteve:

1. Mora da bude reverzibi lno {i fr iranje: D(E(p) ) = p

2. Mora bit i izuzetno te{ko da se na osnovu D prona|e E algori tam.

Ako primenimo algori tam D na kriptovanu poruku E(p) , moramo dobit i originaln

plaintext (p) . Pod ovim uslovima, ne postoj i razlog da kl ju~ za {ifrovanje bude

tajni , t j . on mo`e bit i javni.

Metod radi na slede}i na~in. Osoba, recimo Ana, koja `el i da primi tajnu poruku

prvo odabira dva algori tma, Ea i Da, koj i zadovol javaju navedene kri teri jume

Zatim se algori tam i kl ju~ za {ifrovanje (Ea i Ka) obelodane. Ovo mo`e da se urad

tako {to se oni zapamte u faj l koj i mo`e da pro~ita ko god `el i . Algori tam i kl ju~

za de{ifrovanje (Da i Ka) ostaju u tajnost i .

Da vidimo kako se sada mo`e uspostavi t i pouzdani kanal za komunikaci ju izme|u

dve osobe, A i B (Ana i Marko), koje rani je nisu nikada komunicirale. Pri tome

usvajamo da su kl ju~evi za {ifrovanje obe osobe, Ea i Eb javno dostupni. Sada

osoba A (Ana) uzima svoju prvu poruku, P, {i fr ira je algori tmom Eb(p) i {al je je

osobi B. Primet imo da je Ana korist i la algori tam za {ifr iranje osobe B (Marka) a ne

svoj! Osoba B zat im de{ifruje poruku koriste}i svoj privatni kl ju~ i algori tam za

de{ifrovanje Db, t j . Izra~una Db(b(p) ) = p.

Page 124: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 124/260

12/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

RSA a l go r i t am

 Jedini problem je na}i algori tme koj i zadovol javaju sva tri kr i ter i jumka. Zbog svoj ih

prenost i u odnosu na tradicionalnu kriptografi ju, mnogi istra`iva~i su se anga`oval

na pronala`enju algori tama sa javnim kl ju~em.

 Jedan dobar metod je otkri la grupa istra`iva~a sa M.I .T Univerziteta 1978. godine

On je poznat pod nazivom RSA, koj i pot i~e od inic i jala tr i istra`iva~a (Rivest ,

Shamir, Adleman). Nj ihov metod se zasniva na nekim principima iz teori je brojeva.

Koraci su slede}i:

Odabrat i dva vel ika prosta broja, p i q

Izra~unat i n kao proizvod: n = pxq i z kao proizvod z = (p -1)(q -1)

Izabrat i broj d, relat ivno prost u odnosu na z

Na}i e, tako da va`i exd = 1 mod z

Sa ovako odre|enim parametrima, spremni smo za {ifr iranje. Dalj i koraci su

slede}i:

Podel i t i plaintext na blokove vel i~ ine k bitova, pri ~emu je k najve}i broj za

koj i va`i da je 2 k <n.

[i fr irana poruka c se dobija kao: C=pe mod n 

Da bi se de{ifrovala poruka potrebno je izra~unat i P=Cd mod n 

Mo`e se pokazat i da su za svako P iz opsega 0<=p<=n, funkci je {i frovanja

de{ifrovanja inverzne. Dakle, da bi se obavi lo {i frovanje potrebno je znat i e i n, a

da bi se obavi lo de{ifrovanje potrebno je znat i d i n. Prema tome, javni kl ju~ se

sastoj i od para (e,n) a privatni od para (d,n) .

Bezbednost metoda se zasniva na te{ko}ama vezanim za faktorisanje vel ik ih

brojeva. Ako bi kriptoanali t i~ar mogao da faktori{e t j . Prona|e proste ~inioce broja

n, on bi mogao da na|e p i q, a na osnovu nj ih z.

Sa poznavanjem z i e (koj i je javni ) mo`e se prona}i d. Na sre}u, matemati~ari ve}300 godina poku{avaju da prona|u metod za faktorisanje vel ik ih brojeva, a

iskustvo govori da je to veoma te`ak i dugotrajan posao. Tako na prmer

faktorisanje broja od 200 cifara zahteva 4 mil i jarde godina ra~unarskog vremena

Za 500-cifreni broj potrebno je 1023  godina pod pretpostavkom da se korist

najbol j i poznat i algori tam i da se 1 instrukci ja izvr{ava za 1 mikrosekundu.

Page 125: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 125/260

13/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

P r ime r za RSA

Evo jednog tr ivi jalnog primera RSA algori tma koj i je odabransamo i lustraci je radi

Neka je p=3 i q=11 (p i q moraju bit i prost i brojevi ) . Izra~unavamo da je

n=pxq=33, z=2x10=20. Za vrednsot d se mo`e uzet i 7, jer 7 i 20 nemaju

zajedni~kih ~ini laca. Sa ovakvim izborom d-a, e se mo`e izra~unat i iz:

(7e) mod 20 = 1 -> e=3

[ifrovani tekst C za plaintext p se dobija iz:

C=P3 mod 33

De[ifrovanje se dobija iz:

P=C7 mod 33

Po{to smo odabral i p i q da budu mali brojevi , P mora bit i manje od 33, pa svak

blok plaintext-a sadr`i samo jean karakter (s lovo). Kao rezultata se dobija

monoalfabetski subst i tucioni {i frator, {to i ni je ne{to naro~ito impresivno. Da smo

odabral i p i q reda vel i~ ine 101 00

  n bi bi lo reda 10200

, pa bi svaki blok mogao dabude vel i~ ine 664 ( jer je 2 664 pribl i`no jednako 10200 ) i l i 83 8-bitna karaktera.

Iako je veoma mo}an, RSA algori tam se uglavnom korist i za distr ibuci ju tajnih

kl ju~eva za DES i l i s l i~ne algori tme.

RSA je veoma spor za kriptovanje ve}e kol i~ ine podataka.

Page 126: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 126/260

14/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

PROTOKOL I ZA AUTENT I F I KAC IJU

Autent i f ikaci ja je tehnika pomo}u koje proces veri f ikuje da l i je njegov

komunikacioni partner zaista onaj koj i treba da bude, a ne neki la`ni. Ovaj proces

dokazivanja autent i~nost i je veoma slo`en i zahteva kompleksne protokole

zasnovane na kriptografi j i . Ne treba me{at i autorizovanost i autnt i f ikaci ju

Autent i f ikaci ja  je dokaz verodostojnost i procesa i l i osobe a Autorizovanost  zna~

pravo pristupa t j . pravo da se u~ini ne{to. Evo jednog primer. Kl i jent proceskontakt ira server i ka`e: >>Ja sam Markov proces i `el im da obri{em faj

cookbook.old<<. Sa ta~ke gledi{ta faj l servera, treba odgovori t i na dva pitanja:

Da l i je to zaista Markov proces (autent i f ikaci ja) i

Da l i Marko ima pravo da obri{e Cookbook.old (autorizaci ja)

Samo ako je na oba pitanja odgovor DA, mo`e se izvr{i t i zahtevana akci ja. Kada

faj l server utvrdi autent i~nost , autorizaci ja se lako proverava jednostavnimpretra`ivanjem lokalne tabele. Zbog toga }emo se skoncentrisat i na problem

autent i f ikaci je.

Mehan i z am au t en t i f i k a c i j e

Op{t i model koj i svi protokol i za autent i f ikaci ju koriste je slede}i. Inic iraju}i korisnik

(realno mo`e bit i i proces), recimo Ana `el i da uspostavi bezbednu konekci ju sa

drugim korisnikom, Markom. Marko je bankar sa koj im Ana `el i da posluje. Ana

otpo~inje komunikaci ju tako {to {al je poruku i l i Marku i l i poverl j ivom centru za

distr ibuci ju kl ju~a (KDC), koj i je uvek po{ten. Zat im sledi razmena nekol iko poruka

u oba smera. Dok se ove poruke razmenjuju, zlo~est i ul jez Miroslav I l i} , mo`e

presrest i te poruke modif ikovat i ih da bi Ana i Marko bi l i prevareni i l i samo da b

im upropast io posao. Ipak, kada se protokol okon~a Ana je sigurna da razgovara

sa Markom i Marko sa Anom.

Au t en t i f i k a c i j a za sno vana na za j edn i ~ k om t a j nom k l j u ~ u

Za po~etak pretpostavimo da Ana i Marko ve} poseduju tajni kl ju~ Kab. On je

mogo bit i dogovoren telefonom il i l i~nim kontaktom, al i nikako preko nesigurne

mre`e. Ovaj protokol se bazira na principu koj i se sre}e u mnogim protokol ima a

to je: Jedna strana {al je slu~ajno odabrani broj drugoj koja vra}a rezultat . Takv

protokol i poznat i su pod nazivom (izazov-odgovor) protokol i .

Page 127: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 127/260

15/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

U ovom protokolu korist i}emo slede}e oznake:

A,B - su oznake za Anu i Marka

Ri — su izazovi, pri ~emu indeks i o zna~ava izaziva~a ( indeksi mogu bit i a i l i b)

Ki — su kl ju~evi , gde i ozna~ava vlasnika

Ks — kl ju~ sesi je

Sada }u opisat i kako te~e razmena poruka u ovom protokolu za autent i f ikaci ju. U

prvoj poruci, Ana {al je svoj ident i tet (A) Marku tako da on to razume. Marko,

naravno nema na~ina da zna da l i ova poruka stvarno dolazi od Ane i l i od ul jeza

Miroslava I l i}a. Zato on bira izazov, vel ik i slu~ajni broj Rb  i {al je ga u poruci 2

Ani. Ana zat im {ifr ira poruku pomo}u kl ju~a koj i del i sa Markom i {al je {i frovan

tekst KAB (RB ) koj i se zove odgovor. Ovo je poruka broj 3. Kada Marko vidi ovu

poruku, on zna da ona zaista pot i~e od Alise, jer Miroslav I l i} ne zna tajni kl ju~

KAB . Tako|e, po{to se Rb bira slu~ajno malo je verovatno da je Miroslav I l i} mogao

rani je da >>ulovi<< Rb i odgovor na Rb.

Za sada je samo Marko siguran da razgovara sa Anom, al i Ana ni je sigurna da

razgovara sa Markom. Zato tada Anaa {al je izazov Ra u poruci broj 4 Marku.

Marko {ifr ira Ra zajedni~kim kl ju~em KAB , KAB (Ra) i vra}a {ifr irani tekst u poruci bro

5. Kada primi ovu poruku i Ana je sigurna da razgovara sa Markom.

Ako `ele da uspostave poseban kl ju~ samo za ovu konekci ju (sesi ju) Ana mo`e da

odabere kl ju~ Ks i da ga {ifr ira sa KAB (KS ) i po{al je Marku. nakon toga se u

komunikaci j i za {ifrovanje i de{ifrovanje korist i k l ju~ Ks.

Uspos t a v l j a n j e za j edn i ~ k og t a j n og k l j u ~ a

— D i f f i e -he l lmano v p r o t o k o l

Do sada smo pretpostavl jal i da Ana i Marko ve} poseduju zajedni~ki tajni kl ju~

Me|utim, {ta ako ga nemaju? Diff ie-Hellmanov  protokol (1976) omogu}ava da se

uspostavi zajedni~ki tajni kl ju~. Evo kako ova j protokol funkcioni{e:

Ana i Marko treba da izaberu dva vel ika prosta broja, n  i g , za koje va`

da su i n-1)/2 i g-1)/2 tako|e prost i brojevi . Ovi brojevi mogu bit i javni.

Sada Ana bira vel ik i broj, recimo X, i ~uva ga kao tajni

 Tako|e, Marko bira Y i ~uva ga kao tajni broj

Ana inic ira protokol za razmenu kl ju~a tako {to {al je Marku poruku koja

sadr`i (n, g, gX mod n).

Page 128: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 128/260

16/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Marko odgovara tako {to {al je poruku koja sadr`i (g Y mod n).

Sada Ana uzima broj koj i je dobila od Marka i di`e ga na stepen X, t j .

Izra~unava: ( ( gY mod n)X ) mod n

Marko sl i~no radi sa porukom koju je dobio od Ane: ( ( gX mod n)Y ) mod n

Po zakonima moduo ari tmet ike oba izra~unavanja da}e ist i rezultat : g XY

mod n, koj i predstavl ja tajni kl ju~ za {ifrovanje i d e{ifrovanje.

Miroslav I l i} je naravno video ove poruke. On zna g i n iz prve poruke. Ako bmogla da izra~una x i y, mogla bi da otkri je tajni kl ju~. Problem je u tome {to

poznavanje samo g

X

  mod n   ni je dovol jno da se odredi x. Ne postoj i ni jedan

algori tam koj i bi na osnovu g X  mod n mogao da odredi x. Ovo }e najbol je bit

i lustrovano primerom:

P r ime r za D i f f i e -He l lmano v p r o t o k o l

Neka je n=47 i g=3

Neka Ana odabere x=8, a Marko y=10Ana {al je (47,3,28), jer je 38 mod 47 = 28

Marko {al je Ani 310 mod 47 = 17

Sada Ana ra~una 178 mod 47 = 4, a Marko ra~una 28 1 0 mod 47 = 4

ANA I MARKO SU NEZAVISNO ODREDILI TAJNI KLJU^ 4

Ipak, postoj i problem sa ovim protokolom. Naime, kada Marko primi trojku (47, 3

28) kako on zna da ju je poslala Ana a ne Miroslav I l i}? Na `alost , ne postoj i

na~in da to otkri je i Miroslav I l i} mo`e iskorist i t i ovo da prevari i Anu i Marka.

Dakle, dok Ana i Marko biraju svoje brojeve x i y, Miroslav I l i} mo`e odabrat i svo

broj z. Ana {al je poruku 1 Marko. Miroslav I l i} je presre}e i umesto nje {al je

poruku 2 Marku, koriste}i korektne n i g (koj i su ionako javni ) , al i sa svoj im z

umesto x. On tako|e {al je poruku 3 Ani. Kasni je Marko {al je poruku 4 Ani, koju

Miroslav I l i} ponovo presre}e i zadr`ava. Sada svi obavl jaju izra~unavanja. Ana

izra~unava tajni kl ju~ kao g

XZ

 mod n , {to ~ini i Miroslav I l i} za poruku primljenu odAne. Marko ra~una g

YZ

 mod n  i Miroslav I l i} za poruku p rimljenu od Marka. Na ta

na~in Ana i Marko su uspostavi l i tajni kl ju~ sa Miroslavom Il i}em. Sada sva

komunikaci ja izme|u Ane i Marka ide preko zlo~estog  Miroslava koj i mo`e svaku

poruku modif ikovat i kako `el i i poslat i Marku i l i Ani. Ova vrsta napada poznata je

pod nazivom woman-in-the-middle attack .

Page 129: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 129/260

17/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Au t en t i f i k a ci j a k o r i { }en j em Cen t r a za d i s t r i b u c i j u k l j u ~ a KDC-a )

Druga vari janta za uspostavl janje tajnog kl ju~a je kori{}enje KDC. U ovom modelu

svaki korisnik ima kl ju~ koj i del i samo sa KDC. Autent i f ikaci ja i uspostavl janje

kl ju~a za sesi ju izme|u korisnka sada ide preko KDC.

Najjednostavni j i KDC protokol ukl ju~uje dve strane i poverl j iv i KDC. Ideja je

jednostavna. Ana bira kl ju~ za sesi ju sa Markom, Ks i ka`e KDC da `el i da pri~a

sa Markom kori{}enjem kl ju~a Ks. Ova poruka se {ifr ira tajnim kl ju~em koj i Ana

deli samo sa KDC, Ka.

Ana {al je poruku KDC-u: = A,Ka(B,Ks)

KDC de{ifruje ovu poruku i iz nje izvla~i Markov ident i tet , B, i kl ju~ za

sesi ju, Ks.

Kat im KDC konstrui{e novu poruku koja sadr`i Anin ident i tet , A, kl ju~ Ks

ona se {ifr ira kl ju~em Kb koj i Marko del i samo sa KDC, t j . Kb(A,Ks)

Kada Marko de{ifruje ovu poruku, on ustanovl java da Ana `el i da

komunicira sa nj im kori{}enjem kl ju~a Ks.

Bezbednost metode se zasniva na poverl j ivom KDC. KDC zna da poruka 1

mo`e do}i samo od Ane. Sl i~no, Marko zna da poruka 2 mo`e st i} i samo

od KDC.

Au t en t i f i k a i j a k o r i { } en j em k r i p t og r a f i j e s a j a vn im k l j u ~ em

Uzajamna autent i f ikaci ja se mo`e obavit i i uz pomo} kriptografi je sa javnimkl ju~em. Pretpostavimo da Ana i Marko znaju javne kl ju~eve jedno drugog. On

`ele da uspostave sesi ju a zat im da koriste {i fr iranje tajnim kl ju~em za tu sesi ju

jer je ona 100 do 1000 puta br`a od kriptografi je sa javnim kl ju~em.

Svrha inic i jalne razmene poruka je da se izvr{i autent i f ikaci ja i dogovori tajni kl ju~

za dalju komunikaci ju. Sada }u opisat i jedan od ovih metoda.

Ana po~inje komunikaci ju tako {to {i fr ira svoj ident i tet , A, i slu~ajni broj Ra

kori{}enjem Markovog javnog kl ju~a Eb, t j . Eb(A,Ra). Kada Marko primi poruku on

ne zna da l i ona pot i~e od Ane i l i Miroslava I l i}a, al i {al je natrag poruku koja

sadr`i Anin Ra(slu~ajni broj ) , njegov sopstveno odabrani slu~ajni broj, Rb,

predlo`eni kl ju~ za sesi ju Ks i sve to {i frovano Aninim javnim kl ju~em, Ea t j

Ea(Ra,Rb,Ks) .

Page 130: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 130/260

18/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Kada Ana primi poruku 2, ona je de{ifruje uz pomo} svog tajnog kl ju~a. Ona

prepoznaje Ra u poruci. Ova poruka mora do}i od Marka jer Miroslav I l i} nema

na~ina da odredi Ra.

Ana {al je poruku 3 Marku {ifrovanu predlo`enim kl ju~em Ks, t j . Ks(Rb). Kada Marko

primi ovu poruku on zna da je Ana primila poruku 2 i veri f ikuje Ra.

[ta mo`e da uradi zlo~est i Miroslav I l i} ovde? On mo`e da generi{e poruku 1

poku{a da prevari Markaa da je on Ana, al i kada Ana primi Ra ona zna da ga

nije ona generisala i odbija zahtev. Miroslav ne mo`e fals ikovat i poruku 3

o~igledno, jer on ne zna Rb i l i Ks koje ne mo`e odredit i bez Aninog privatnog

kl ju~a.

D i g i t a l n i po t p i s

Autent i~nost mnogih pravnih, f inansi jskih i drugih dokumenata se veri f ikuje

potpisom odgovaraju}e osobe. Za prenos takvih dokumenata kroz mre`u mora se

na}i re{enje koje }e zamenit i l i~ni potpis. U su{t ini ono {to je potrebno, je sistem

pomo}u kojeg jedna strana mo`e poslat i potpisanu poruku drugoj strani, tako da:

Primalac mo`e veri f ikovat i po{i l jaoca

Po{i l jalac ne mo`e kasni je poricat i sadr`aj p oruke

Pri jemnik ne mo`e sam izmisl i t i poruku

Kriptografske metode sa javnim kl ju~em se mogu iskorist i t i za re{enje ovog

problema. Industr i jski standard je digi talni potpis baziran na RSA algori tmu.

Pretpostavimo da algori tam za {ifr iranje i de{ifrovanje sa javnim kl ju~em ima

slede}u osobinu:

E(D(p) ) = p

Pored uobi~ajene

D(E(p) ) = p

RSA algori tam ima upravo tu osobinu. Ako je to tako, Ana mo`e poslat i Marku

potpisani tekst , P, tako {to }e poslat i poruku

Eb(Da(p) ) ,

Gde je Da — Anin tajni kl ju~ za de{ifrovanje, a

Eb — Markov javni kl ju~ za {ifrovanje.

Kada Marko primi ovu poruku on je transformi{e koriste}i svoj privatni kl ju~, Db t j .

Db(Eb(Da(p) ) ) = Da(p),

Page 131: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 131/260

19/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Marko zat im zapamti ovaj tekst na bezbedno mesto i de{ifruje ga kori{}enjem

Aninog javnog kl ju~a, Ea t j .

Ea(Da(p) ) = p,

 Tj . Dobija izvorni tekst, p.

Da bi se uveri l i da ovo zaista korektno funkcioni{e, pretpostavimo da Ana kasni je

pori~e da je poslala tekst P, Marku. Kada slu~aj do|e na sud, Marko }e kao dokaz

imati P i Da(p). Sud }e na osnovu toga mo}i da ustanovi da Marko ima zaista

va`e}u poruku, P, koja je {i frovana Aninim tajnim kl ju~em (Da) jednostavnom

primenom Aninog javnog kl ju~a Ea t j .

Ea(Da(p) ) = p.

Zakl ju~ak: Po{to Marko ne zna tajni Anin kl ju~ (Da) jedini na~in da do|e do poruke

koja je {i frovana sa Da je da je zaista tu poruku napisala Ana.

F i r ewa l l — Be zbednosn i z i d

Firewall je kombinaci ja hardwera i softwera koja izoluje lokalnu mre`u jedne

organizaci je od interneta, tako {to dozvol java i l i ne dozvol java prolazak paketa

ka/iz lokalne mre`e.

Organizaci je koriste f irewall-ove zbog nekog od slede}ih razloga:

Da spre~e ul jeze da naru{e operat ivnost i raspolo`ivost interne mre`e

Konkurenci ja, i l i neki haker `el jan zabave mo`e napravit i pusto{ u

neza{t i}enoj mre`i. Kod napada t ipa odbijanje usluge (DOS — Denial ofService) ul jez mo`e okupirat i kri t i~ne mre`ne resurse, tako da mre`a ne

mo`e da pru`i o~ekivane usluge. Primer ovakvog napada je takozvana SYN

poplava, kod kojeg napada~ {al je TCP segmente za odre|eni host . Host po

pri jemu svakog TCP segmenta odvaja baferski prostor (deo memori je) za

svaku konekci ju, i za nekol iko minuta ceo baferski prostor }e bit i okupiran

i ne}e bit i mesta za prave konekci je npr. Od strane mu{teri ja.

Da spre~e brisanje i l i modif ikaciu informaci ja zapam}enih u lokalnoj mre`i

NPR. Napada~ mo`e poku{at i da pristupi web serveru i promeni zvani~n

web sajt organizaci je. Rezultat i ovog napada bi}e vidl j iv i za nekol iko

minuta hi l jadama l judi. Napada~i, tako|e mogu poku{at i da do|u do

informaci ja o platnim i l i kreditnm kart icama sa web servera koj i podr`ava

elektronsko poslovanje.

Page 132: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 132/260

20/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Da spre~e ul jeze da pristupe poverl j iv im informaci jama. Mnoge

organizaci je imaju zapam}ene poverl j ive informaci je u ra~unarima —

poslovne tajne, razvojne planove a nove proizvode, market in{ke strategi je,

informaci je o zaposlenima, f inansi jske analize i td . . .

Naj jednostavni j i Firewall sadr`i f i l ter paketa a mo}nij i i f i l tere aplikaci ja t j

Apl icat ion gateways.

F i l t r i r an j e pake t a

Svaka organizacja sadr`i najmanje jedan ruter preko kojeg se lokalna mre`a

povezuje na internet preko internet provajdera. Sav saobra}aj iz lokalne mre`e ka

spoljnjem svetu i obrnuto, prolazi kroz taj ruter. Ve}ina proizvo|a~a rutera

obezbe|uje opci ju za fi l t r i ranje. Kada se ove opci je ukl ju~e, ruter postaje i f i l ter

Kao {to samo ime ka`e fi l ter dozvol java da neki paket i pro|u a neki ne kroz f i l ter

Kri teri jumi na koj ima se zasniva fi l t r i ranje naj~e{}e se baziraju na:

IP adresi - paket ima sa odre|enom IP adresom mo`e bit i zabranjen pro laz

Na IP adresi odredi{ta (mo`e bit i zabranjeno slanje paketa na odredi{ne IP

adrese.

Na broju izvornog i odredi{nog porta. (Na svakom ra~unaru se mo`e

izvr{avat i vi{e mre`nih aplikaci ja. Svakj takvoj apl ikaci j i se dodeljuje bro

porta preko kojeg se pristupa mre`i. Npr: za HTTP broj je 80, a za telnet

je 23.

Naravno, mogu}e je korist i t i i kombinaci ju IP adrse i broja porta.

Ap l i c a t i o n ga t eway — kap i j e ap l i k a c i j a

Fi l teri dozvol javaju organizaci j i da obave srednje f ino f i l t r i ranje paketa na osnovu

IP adresa i broja porta. Ovakav na~in f i l t r i ranja mo`e da omogu}i internim

korisnicima telnet konekci ju izvan lokalne mre`e, a da zabrani telnet za spoljne

korisnike na ra~unar u lokalnoj mre`i jedne organizaci je. Me|utim, {ta ako

organizaci ja `el i da dozvol i telnet konekci ju samo dre|enim korisnic ima. Takav

zadatak f i l t r i ne mogu da podr`e, jer informaci ja o ident i tetu korisnika ni jedostrupna u zaglavl ju IP i l i TCP/IP poruka, ve} se nalazi u podacima aplikat ivnog

nivoa.

Aplikat ivna kapija je specif i~ni server odre|ene aplikaci je kroz koj i prolaze sv

podaci sa aplikat ivnog nivoa. Na primer, na jednom hostu se mo`e izvr{avat i vi{e

aplikat ivnih kapija, al i svaka kapija je poseban server sa svoj im sopstvenim

Page 133: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 133/260

21/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

procesom. Da bi shvat i l i kako funkcioni{e aplikat ivna kapija, pretpostavimo da

ho}emo da konfiguri{emo firewall koj i }e dozvol i t i Telnet konekci ju samo

odre|enom broju internih korisnika, a zabranit i Telnet iz spol jne mre`e. Ovo se

mo`e post i} i kombinaci jom fi l tera u ruteru i Telnet apl ikacione kapije. Ruterski f i l te

je konfigurisan da blokira sve Telnet konekci je osim one koja pot i~e od aplikat ivne

kapije — t j . IP adrese aplikat ivne kapije. Ovo pris i l java da sve Telnet konekci je iz

lokalne mre`e ka spoljnom svetu idu preko aplikat ivne kapije, G. Kada intern

korisnik `el i da ostvari Telnet konekci ju sa ra~unarom koj i ni je u lokalnoj mre`i, onprvo uspostavl ja Telnet sesi ju sa aplikatovnom kapijom. Aplikaci ja koja se izvr{ava

na kapij i zahteva od korisnka ident i f ikaci ju (username i pasword). Kada korisnik

navede svoju ident i f ikaci ju, apl ikat ivna kapija proverava da l i korisnik ima dozvolu

da se Telnetuje na spoljnju ma{inu. Ako nema, aplikat ivna kapija okon~Ava Telnet

sesi ju sa korisnikom. Ako pak korisnik ima dozvolu, onda kapija tra`i od korisnika

ime spoljnjeg hosta sa koj im se zahteva Telnet konekci ja. Zat im se uspostavl ja

 Telnet sesi ja izme|u kapije i odgovaraju}eg HOSTA i na kraju se prosle|uju sv

podaci od strane korisnka ka spoljnjem svetu i obrnuto.

Interne mre`e ~esto imaju vi{e aplikat ivnih kapija, npr kapiju za telnet , Http, Ftp

E-mail i td.

Page 134: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 134/260

22/23 Ra~unarske mre`e (E lektronski Fakultet , Ni{) - Marko Mil i~ i}

Bezbednost mre`e....................................................................................................................................................... 1

Uvod........................................................................................................................................................................... 1

Primeri za{tite na razli~itim slojevima (leyer-ima)............................................................................................. 1

Mehanizmi za{tite - (kriptografija) .......................................................................................................................2

Podela kriptografskih sistema ...............................................................................................................................2

Dobri algoritmi i Kriptoanaliza ..............................................................................................................................3

Substitucione tehnike...............................................................................................................................................4

Cezarov {ifrator ........................................................................................................................................................4

Playfair-ov {ifrator ...................................................................................................................................................5

 Transpozicione tehnike (cik-cak matrice) ............................................................................................................6

DES (Data Encription Standard)..............................................................................................................................7

Proces S-DES {ifriranja ...........................................................................................................................................9

Algoritmi sa javnim klju~em (asimetri~ni algoritmi)..........................................................................................11

RSA algoritam......................................................................................................................................................... 12

Primer za RSA ........................................................................................................................................................ 13

Protokoli za autentifikaciju........................................................................................................................................ 14

Mehanizam autentifikacije ................................................................................................................................... 14

Autentifikacija zasnovana na zajedni~kom tajnom klju~u ............................................................................. 14

Uspostavljanje zajedni~kog tajnog klju~a ......................................................................................................... 15

Diffie-hellmanov protokol ..................................................................................................................................... 15

Primer za Diffie-Hellmanov protokol ................................................................................................................. 16

Autentifikacija kori{}enjem Centra za distribuciju klju~a (KDC-a) ................................................................ 17

Autentifikaija kori{}enjem kriptografije sa javnim klju~em ............................................................................ 17

Digitalni potpis........................................................................................................................................................ 18

Firewall — Bezbednosni zid.................................................................................................................................. 19

Filtriranje paketa.................................................................................................................................................... 20

Aplication gateway — kapije aplikacija............................................................................................................. 20

Page 135: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 135/260

1/28 Marko Mil i~ i}

LOKALNE MRE@E

Robert Metclafe , zajedno sa Davidom Boggsom  i ostal ima iz XEROX  korporaci je

razvi l i su 1976. LAN mre`u zasnovanu na mehanizmu detekci je nosioca signala

(carrier sensing). Ovakva LAN mre`a premo{}avala je razdalj inu od 1Km

podr`avala 100 personalnihstanica i dost izala brzinu prenosa od 2.94 Mbps. Ova

sistem je nazvan Ethernet u slavu supstance ETAR za koju se smatralo da prenos

elektromagnetno zra~enje. Ethernet su podr`al i kao standard Digital Equipmen

Corporat ion, Intel i Xerox . Prvi put je objavl jen kao standard septembra 1981

nazvan je DIX1 (po po~etnim slovima firmi) . Novembra 1982 objavl jen je i DIX2 .

U me|uvremenu, IEEE je preuzeo poslove oko standardizaci je LAN mre`a. Digital ,

Intel i Xerox su predlo`i l i usvajanje Etherneta kao standarda. IBM, na osnovu

protot ipova ugra|enih u nj ihov Zurich Lab predla`e Token Ring  i td . . . Zato IEEE

usvaja sve predloge vel ik ih f irmi u okviru svog IEEE 802 standarda donetog

po~etkom 1980. )

IEEE Standard Zna~enje

IEEE 802.1 Premo{}avanje LAN mre`a

IEEE 802.2 Kontrola Logi~ke veze (LLC)

IEEE 802.3 CSMA/CD Standardizaci ja Ethernet tehnologi je

IEEE 802.4 Token Bus Standard

IEEE 802.5 Token Ring Standard

IEEE 802.11 Be`i~ne LAN mre`e

Najprost i j i obl ik ETHERNET  mre`e korist i pasivni 50 omski koaksialni kabl ~i ja je

maksimalna brzina  10 Mbps. Dakle, koaksialni kabl ustvari f iz i~ki povezuje sve

ra~unare u mre`i. ETHERNET mre`a ne mo`e imati vi{e od 1024 ra~unara u mre`i

 Jedan segment koaksialnog kabla u mre`ama ograni~en je sa dva otpornika od 50

oma da bi se spre~i la refleksi ja signala u vodovima. Ra~unari se povezuju na

sistem preko t ransivera i l i mre`nih kart ica .

Page 136: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 136/260

2/28 Marko Mil i~ i}

Transiveri :

Medium Access Control (MAC) ~esto je poznat i kao Medium Access Unit  (MAU)

Ovaj elektronski ure|aj slu`i da obezbedi ra~unaru interfejs ka mre`nom medijumu

Mre`na kart ica, mo`e da ima svoj interni trasiver i l i da korist i eksterni kao {to je

to prikazano na sl ic i .

Danas, ethernet ne mora samo da korist i koaksialni kabl, ve} mo`e da korist i

druge vrste kablova. Naravno, ovo je posledica evoluci je ETHERNET mre`a. Danas

postoj i nekol iko razl i~ i t ih vrsta ETHERNET mre`a.

Frejmovi koj i se {al ju kroz mre`u formiraju se po protokolu MAC (Medium Acces

Control ) i kodiraju se Manchester (man~ester) kodom. Eternet korist i Carrier-Sense

Page 137: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 137/260

3/28 Marko Mil i~ i}

Mult iple Access protocol with Coll is ion Detect ion CSMA/CD)  da bi spre~io da dva

i l i vi{e ra~unara poku{avaju da emituju frejmove na mre`u.

Postoj i nekol iko vrsta ethernet mre`a. Njihov pregled dat je slede}om tabelom:

Segment type 

Max Number ofsystems per cablesegment 

Max Distance of acable segment 

10B5 (Thick Coax)  100  500 m 

10B2 (Thin Coax)  30  185 m 

10BT (TwistedPair) 

2  100 m 

10BFL (FibreOptic) 

2  2000 m 

Da bi se uskladi l i razl i~ i t i protokol i , Datal ink sloj je razbi jen na Logical L ink Contro

sloj koj i upravl ja vezom (nepotvr|eni datagram, potvr|eni datagram, uspostavl janje

veze i td. ) i Media Access Control  koj i upravl ja pristupom medijumu. LLC  je

zajedni~ki za sve t ipove LAN-a dok se MAC pri lago|ava specif i~nost ima nekog od

ponu|enih standarda.

Iako se ~esto poistove}uju IEEE 802.3 i Ethernet su razl i~ i t i standardi. I Ethernet I

(DIX2) i IEEE 802.3 imaju vel i~ inu okvira od 64B do 1528B.

Ethernet I :

Prva verzi ja mogla je da ostvaruje brzine od oko 2.94 Mb/s. Najve}e rastojanje

bi lo je 1000 m i mogao je da se sna|e sa 100 hostova. Idejni tvorac ove mre`e

bila je ro x   korporaci ja. Ovaj Ethernet bio je podr`an DIX1 standardom. 1982godine nastao je standard DIX2 (tzv Ethernet 2) i sada se korist i .

Neki me|unarodni standardi se bave definisanjem standardnog pona{anja. IEEE

802.3 je taj koj i defini{e pona{anje na ethernet-u. IEEE 802.4 defini{e topologi ju

IEEE 802.5 standard je IBM uspeo da progura kao standard. Data l ink nivo je

podeljen na LLC  (Logical L ink Control ) i MAC. LLC je zajedni~ki za sve mre`e ( IEEE

802.2), a MAC je poseban za svaku mre`u u zavisnost i od topologi je mre`e.

Frejm je du`ine od 74 do 1058 B. IEEE 802.3 se ipak malo razl ikuje od etherneta 2

Page 138: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 138/260

4/28 Marko Mil i~ i}

ETHERNET I I :

8 6 6 2 4-1500 4

P reambu la Odred i{na adresa I zvor i{ na adresa T ip Podac i CRC

IEEE 802.3

7 1 2-6 2-6 2 4-1500 4

P reambu la S FD Odred i{na adresa I zvor i{ na adresa Du` ina L LC Podaci CRC

 

IEEE = 802.3 preambula + SFD = Ethernet I I preambula = 7 x 10101010 + 10101011

Izvori{na i odredi{na adresa je jedinstveni kOd ethernet adrese. Ako je adresa FF-

FF-FF-FF-FF-FF {al je se svim kart icama koje su na mre`i.

Pol je t ip je ustvari t ip protokola kome se {al je paket

Pol je du`ina je du`ina LLC dela

CSMA/CD

- Ca r r i e r S en se W i t h Mu l t i p l e A c c e s s / Co l i s i o n De t e c t i o n

Ra~unari koriste jedan kabl kao zajedni~ki mre`ni medijum. Kabl je ustvari ono {to

je zajedni~ko svim ra~unarima i ono {to im omogu}ava da komuniciraju. [ta se

ustvari de{ava? Svi frejmovi koj i se po{alju na kabl f iz i~ki dolaze do svih ostal ih

ra~unara. Samo onaj ko prepozna svoju adresu u zaglavl ju dolaze}eg frejma

zadr`ava frejm, a ostal i se ne obaziru na p rispel i frejm (ni je za nj ih) .

Ra~unar oslu{kuje kanal i tek posle 9.6 mikro sekndi od detekci je poslednjeg bita

mo`e da po~ne sa slanjem. Ovo je neophodno zbog rastojanja izme|u frejmova

>> interframe spacing<< tokom slanja. Ukol iko utvrde kol iz i ju ra~unari prekidaju

dalj i prenos. Prva stanica koja otkri je kol iz i ju ( t j . ako adapter detektuje signa

drugog adaptera dok traje njegova emisi ja) , on prestaje sa slanjem korisnih paketa

i {al je 48-bitni JAM  signal (s ignal zagu{enja) da bi osigurala da druge stranice

tako|e detektuju kol iz i ju (detekci ja kol iz i je je na primer ako oset i jaku struju, i l i u

nekom trenutku po{alje 0 a isto tad pro~ita 1 sa kanala. Nakon prekida slanja

Page 139: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 139/260

5/28 Marko Mil i~ i}

frejma t j . JAM  signala (koj i se 32 i l i 48 b) adapter ulazi u fazu ~ekanja , koja je

odre|ena nekim algori tmom - (Truncated binary) exponent ial backoff algort ihm

Kada utvrdi n-tu uzastopnu kol iz i ju (za ist i frejm koj i po ku{ava da po{alje) , adapte

bira proizvol jnu vrednost za k (od 0 do 2m-1 ) gde je m=min(n,10) i ~eka k*512=td

Bitskih intervala nakon ~ega po~inje ponovo da {al je svoj frejm (oslu{kuje kanal) .

Ef ikasnost eterneta zavisi od optere}enost i mre`e. Ne mo`e se korist i t i za rad u

realnom vremenu jer nema garanci je da }e paket bit i poslat u nekom vremenskom

intervalu (u najgorem slu~aju vel ike zagu{enost i mre`e frejm mo`e ostat i zauvekneposlat ) .

Formula za odre|ivanje efikasnost i etherneta kada nema kol iz i je i sve stanice

imaju frejmove spremne za slanje:

 Ttrans = Maximalno vreme za koje se {al je frejm

 Tprop = maximalno ka{njenje izme|u dva ~vora

TtransTprop E  ff   /51

1

⋅+=  

Page 140: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 140/260

6/28 Marko Mil i~ i}

S t anda r dn i debe l i E t h e r ne t

Dobio je naziv po deblj ini koaksi jalnog kabla koj i se korist i za povezivanje RG-8

deblj ine 0.4-0.5 in~a . Ova mre`a se u IEEE zove 10BaseBand5  (ono 10 zna~i da je

brzina oko 10 Mb/S a ono Base zna~i da radi u osnovnom opsegu t j . ni je

moduliran signal. 5 je maksimalna du`ina koaksi janog segmenta i pribl i`no iznos

500 m.

10 — 10Mbps

BASE — rad u osnovnom opsegu (BaseBand) t j . ni je moduliran signal

5 — 500m po segmentu

Adapteri {al ju podatke preko spolja{njeg ure|aja — t ransivera , koj i je preko 15-to

`i lnog kabla povezan sa mre`nom kart icom. Da ne bi do{lo do refleksi je na vodu

krajevi vodova su zatvoreni terminatorima (to su otpornici jednaki otpornost i voda

Vod mora nj ima bit i zatvoren na oba kraja, a oba terminatora imaju uzemljenje,

da ne bi postojala struja curenja samo jedan terminator se uzemljuje.

Dva ethernet kabla se mogu spoji t i val jkast im konektorom .

500 metara naj~e{}e ni je dovol jno za mre`u. Da bi se mre`a produ`i la koriste se

speci jalni ure|aji koj i se zovu r ipi teri  (repeateri ) . Ripi ter izme|u dva koaksi jalna

segmenta naziva se ful l repeater . Ripi teri sa vi{e portova (Mult iPort Repeater ) kao

{to je DEMPR mogu povezato vi{e Ethernet segmenata. Mo`emo imati maksimalno

dva ful-ripi tera u okviru LAN-a. Ripi ter je, kao i obi~na stanica, na koaksi jalni kab

prik l ju~en preko transivera, pa se i on tret ira kao ostale stanice.

Na jednom segmentu mo`e bit i najvi{e 100 stanica. . Da bi se mre`a jo{ produ`i la

korist i se ripi ter koj i je sa jedne strane vezan za kabl, a sa druge strane preko IRL

inter repeat l ink) i drugog istog takvog half r ipi tera vezan za drugi opt i~ki kabl.

Maksimalna du`ina Inter Repeat Linka  je tako |e 500 metara. Na IRL ne mogu da

se ve`u ra~unari . Minimalno rastojanje izme|u stanica je 2.5m (preporu~uje se da

Page 141: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 141/260

7/28 Marko Mil i~ i}

bude umno`ak od 2,5m zbog minimizaci je interferenci je uzrokovane stoje}im

talasima). U slede}oj tabl ic i dato je pore|enje debelog i tankog etherneta:

Parametar Debel i E T Tanki ET

Brzina prenosa 10 Mb/s 10 Mb/s

Maksimalni broj r ipi tera bez IRL-a 2 2

Maksimalni broj r ipi tera sa ILR-om 4 4

Maks imalna du`ina koaks ija lnog segmenta 500m 185m

Maksimalni broj l ink segmenata 2 2

Maksimalna du`ina komb. l ink segmenta 1000m 400m

Maksimalni broj stanica po segmentu 100 30

Maksimalni broj stanica 1024 1024

Razdal jina izme|u s tanica N * 2.5m >0.5

Brzina prost iranja signala 0.77*c 0.65*c

Maksimalna du`ina kabla transivera 50m

Ovaj kabl je vrlo nezgodan za instal iranje. Vrlo je krut i te`ak. Upravo zato korist

se uglavnom za prave relaci je, kao {to su na primer hodnici poslovnih prostori ja Jedan prime je dat na slede}oj sl ici .

Page 142: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 142/260

8/28 Marko Mil i~ i}

Tan k i T h i nW i r e ) E t h e r ne t

 Tanki ethernet u potpunost i odgovara debelom ethernetu, samo {to se korist i tank

koaksi jalni kabl. Ovoje mnogo savit l j iv i j i i lak{i kabl. Naravno, zbog toga ga je

lak{e i instal irat i .

Njegova oznaka je 10 base 2 (10 Mb/s). Me|utim maksimalna du`ina segmenta

ni je 200 ve} 185m. Ovde ne postoj i t ransiver, ve} se preko jednog BNC T konektora

koaksi jalni kablovi prik l ju~uju na mre`nu kart icu. Isto imaju terminatore. Do skoro

je ovo bi la naj jeft ini ja LAN mre`a.

Thin Ethernet  kabl je pre~nika 0.2 in~a i oznaku RG-58  A/U 50(oma). Na

raspolaganju su razl i~ i to ise~ene du`ine sa standardnim BNC ut ika~em na oba

kraja. BNC teminator se prik l ju~uje na jednu od dve ut i~nice T konektora na koju n

jedan kabl ni je prik l ju~en. Ovaj kabl mo`e povezat i sve sobe na spratu jer mo`e

da se savi ja i zbog toga ni je ograni~en samo na hodnike.

Page 143: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 143/260

9/28 Marko Mil i~ i}

10 BASE — T 802 .3 i — 1990 god .

Porast interesovanja za 10 BASE T po~inje 1990, zbog ni`ih cena za komponente

jednostavnog konfigurisanja. Za povezivanje se korist i UTP  (Unshelterd Twisted

Pars ) — neza{t i}ena uvi jena parica. Mre`na kart ica ima telefonski port RJ-45 , koj

se slu`beno naziva i Media Dependent Interface  (MDI) port . Rani je su se kod

ovakvih parica kablovi oklapali zbog vel ikog ut icaja {umova, pa su kablovi bi l

skupi. Sa napretkom tehnologi je mogu}e je bi lo otklonit i ove {umove, pa je

mogu}e korist i t i neza{t i}ene upredene parice (UTP).

Korist i se model zvezde - topologi ja zvezde . Svaki koncentrator prihvata kablove

od vi{e ra~unara sa UTP konektorima, a `ice su {ir ine 0.4-0.6 mm. Dakle,

koncentrator  slu`i kao centralna skretnica. Koncentrator prihvata `ice sa nekol iko

Page 144: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 144/260

10/28 Marko Mil i~ i}

(naj~e{}e 12) radnih stanica. Svaka `ica se sastoj i od 2 para upredenih parica.

Kabl se sastoj i od 8 `ica od koj ih su prve dve za slanje, slede}e 4 za pri jem a

poslednje 2 za broadcast.

10 Base — T koncentrator ima ulogu ripi tera i :

Osve`ava paket sa podacima

 Test ira integri tet veze za dat i port

Auto del jenje po portu, {to omogu}ava odjavl j ivanje porta u slu~aju 30

uzastopnih kol iz i ja, i l i ukol iko je jedna al i posebno duga kol iz i ja, i l i ~ak

usled preteranog brbl janja porta.

Page 145: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 145/260

11/28 Marko Mil i~ i}

Potrebno je ograni~i t i maksimalno vreme propagaci je od jedne do druge stanice

Pravi la konfigurisanja za povezivanjepomo}u koncentratora (HUB-ova).

Najvi{e 4 HUB-a na putu izme|u bilo koje dve stanice.

UTP segmenti ne smeju bit i du`I od 100 metara (u praksi se uvek

postavl jaju upola manje vrednost i ) i moraju bit i ve}i od 60 cm.

Hub se tret ira kao stanica i tu se vr{i broadcast

Fiz i~ka topologi ja je zvezdasta, a logi~ka je topologi ja BUS-a ( jedan {al jea dostupno je svima). Dakle, sve {to hab dobije na jedan ulaz, on {al je na

sve ostale.

Switch mo`e da usmerava signal ta~no na odre|ene ra~unare, pa mo`e bolje da

upravl ja saobra}ajem. Hab je pasivna komponenta.

Page 146: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 146/260

12/28 Marko Mil i~ i}

Token R i ng LAN

 To su point-to-point  mre`e, za razl iku od Etherneta, t j . sekvenci jalne mre`e sa

vezama od ta~ke do ta~ke, koje ~ine krug. Smatraju se za digitalne mre`e u

odnosu na ethernet koj i je analogna mre`a. Determinist i~ko vreme odgovora, ~ak

pri vel ikom optere}enju. Optere}enje ne ut i~e na vreme odgovora kod ovakve

mre`e, {to ga ~ini pogodnim za real-t ime sisteme  (kod nj ih ne zna~i da odgovor

odmah st i`e, ve} da se dobija za ta~no odre|eno vreme). Naj~e{}e se sre}u

EThernet I I 802.5 odnosno IBM token ring mre`e. Svaka stranica deluje kao r ipi ter

(poja~ava i koriguje signal) . Medijum mo`e bit i koaksi jalni kabl, uporedna parica i l

opt i~ko vlakno.

Da bi mre`a funkcionisala post j i jedan kontrolni token frejm koj i kru`i mre`om i on

izgleda ovako:

SD PPP TM RRR ED

PPP tr i Priori ty bit-a

 T bit Token-a (da li je slobodan i l i ne)

M je bit nadzornika (monitor-a)

RRR su tr i bi ta za rezervaci ju

 Token mora neprekidno da kru`i i ~ak ako nema nikakve aktivnosti na mre`i

Point-to-point veza podrazumeva da su sve stanice ukl ju~ene da bi mre`a mogla

funkcionisat i t j . Da bi token mogao da kru`i . Zato se ovde korist i f iz i~ka topologi ja

zvezde  sa nulom u centru. Da bi se omogu}i lo da mre`a funkcioni{e i kada

stanica ni je ukl ju~ena korist i se re{enje sa relej ima  koja se zatvaraju kada se

stanica iskl ju~i tako da se veza kratkospoji i da se t ime omogu}i dal ja

komunikaci ja mre`e. Token ring stanice funkcioni{u u jednom od 4 re`ima:

Re`im slanja

Re`im slu{anja

Re`im premo{}avanja

Re`im pri jema

Page 147: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 147/260

13/28 Marko Mil i~ i}

Zamisl imo da su stanice A, B, C i D povezane u prsten.

 A 

B

C

D

 

Stanica A u re`imu slanja i po~inje sa slanjem kada dobije slobodni token. B

prihvata podatke i upore|uje ga sa DA  pol jem i ako ni je, onda prelazi u re`im

slu{anja. Frejm mo`e da ukloni samo stanica koja ga je poslala. Token je vel i~ ine

24b i ako imamo 4 kb mre`u 24b/4kb = 6 mikrosekundi. Tol iko treba signalu od

izlaznog pina do onda kada se ponovo primi na ulaznim portovima. Treba nam

24b-ni bafer koj i }e da unosi to ka{njenje jer u mre`i mo`e da se na|e na prime

samo 5b, a frejm mo`e bit i proizvol jne du`ine ograni~eno je samo dr`anje tokena

po stanici , pa se na osnovu toga mo`e izra~unat i maksimalna du`ina frejma

(Frejm ne mo`e bit i du`i od onoog kol iko ima vremena da se frejm po{alje. )

SD AC FC DA SA PODACI FCS ED FS

FC — Frame control

AC — Access control

FCS — Frame control sum

FS — Frame status (ovo polje mo`e da modif ikuje svaka stanica i to su flegovi ) :

A — Address Recognized (0-ni jedna stanica ni je prepoznala svoju adresu

1-uspeh)

F — Frame Copied (0 — Frejm ni je iskopiran, 1 — frejm je iskopiran)

E — Error (0 — ne postoj i gre{ka, 1 — postoj i gre{ka t j . Ne poklapa se bit

kontrolne sume)

Postoj i neregularno stanje a to je AC = 01. Sve ostale kombinaci je AC susozvol jene.

SD — Start derimiter (po~etak frejma)

DA — Dest inat ion adress

SA — Source adress

Page 148: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 148/260

14/28 Marko Mil i~ i}

Samo stanica koja je poslala frejm mo`e da ga ukloni, al i pi tanje je {ta se des

ako se ona iskl ju~i pre nego {to ga ukloni. Token ring ima akt ivnog korisnika AM

(MONITOR) za brzi oporavak mre`e. M=1 zna~i da frejm kru`i mre`om i ne mo`e

da se ukloni. Kada monitor prepozna ovu si tuaci ju on vr{i uklanjanje.

Ako se po{alju prva 2-3 bita a ostalo se izgubi, takvu si tuaci ju re{ava TRT Token

Rotat ion Time . To je maksimalno vreme za koje token mora da se vrat i do

monitora AM. Ako AM otka`e neka od ostal ih stanica treba da preuzme funkci ju

monitora. AM periodi~no {al je AMP (Act Man Present ) . Kada nema AMP-a a vreme

za ~ekanje AMP-a istekne, onda sve stanike konkuri{u za funkci ju monitora t ime

{to {al ju CLAIM TOKEN FRAME CL-TK.

Stanica ne}e poslat i CL-TK ako:

Ako je primljen drugi CL-TK a adresa po{i l jaoca je ve}a od adrse teku}e

stanice.

Ako je primljen MAK okvir upozorenja BEACON (BCN). On se {al je u slu~aju

nekog ve}eg otkaza na mre`i.

Primljen je MAK okvir pro~i{}enja (purge) PRG. Njega {al je stanica koja je

pobedila u trc i za akt ivnog monitora.

Ovi BNC, PRG imaju svoje kodove u FC.

DAT — Duplicat Adress Test

Bi lo koja stanica koja se prik l ju~uje na adresu {al je svoj DAT t j . Prazan frejm sa

svojom adresom u dest inat ion pol ju da bi utvrdi la da l i postoj i jo{ neka stanica sa

istom adresom na ta nova.

Priori tet pristupa :

Set imo se da ono PPP odre|uje priori tet a da je ono RRR reservat ion bits. Naime

stanica koja je vi{eg priori teta, stavi u RRR i kada se oslobodi token RRR se kopira

u PPP i posle toga samo ta stanica mo`e da dobije token.

NPR: 011=5 -> samo stanice koje imaju ve}i priori tet od 5 mogu da pribave taj

token.

Page 149: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 149/260

15/28 Marko Mil i~ i}

I BM 8228 Mu l t i s t a t i on Acces s Un i t MAU )

MAU ima logi~ku strukturu prstena, a fiz i~ki je vezana kao zvezda (preko nekog

centra) .

Za 3:

I E E E 802 . 5 p r a v i l a za po ve z i v an j e To k en R i ng m re`e :

 Token Ring parametri Tip 1 i 2 Tip 3

Max. broj ure|aja po prstenu 260 96

Brzina prenosa 16MB/s 4MB/s

Rastojanje od stanice do MAU

Za mre`e se 1 MAU

300m 100m

Rastojanje od stanice do MAU

Za mre`e se vi{e MAU

100m 45m

Max. broj MAU 12 2

Rastojanje MAU-MAU 200m 120m

*Tip 1 i 2 koriste 16 pinske prik l ju~ke za povezivanje a Tip 3 korist i telefonsku

paricu.

Page 150: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 150/260

16/28 Marko Mil i~ i}

Mos t o v i

Mostovi povezuju dve zasebne mre`e u jednu logi~ku cel inu. Na primer IBM 8209

most se korist i za povezivanje etherneta i TokenRing LAN mre`e.

Orion

Orion Orion

Most 

Orion

Orion

Orion

Orion

Orion

IEEE 802.3

8209

IEEE 802.5

 

U ovom slu~aju most mora imati 2 mre`ne kart ice i to jednu Ethernet i jednu Token

Ring , za povezivanje na odgovaraju}e mre`e. Mostovi rade na Data-Link  nivou

tako da ne razmatraju zaglavl je mre`nog nivoa (ve} direktno kopiraju pakete vi{ ih

nivoa) zato se ne mogu korist i t i za povezivanje mre`a sa razl i~ i t im mre`nim

protokolom.

Razlozi za upotrebu mostova su:

Postojanje vi{e cel ina (u kolekt ivu) , svaka sa sopstvenim potrebama

odgovaraju}om LAN mre`om, koje treba povezat i .

Geografska razu|enost i ve}a isplat ivost formiranja zasebnih LAN mre`a

koje se zat im povezuju mostovima.

Rastojanje izme|u najudaljeni j ih stanica je ve}e nego {to dozvol java LAN

tehnologi ja

Ve}a pouzdanost, jer neispravna stanica/l ini ja ometa ( i l i spre~ava

saobra}aj samo lokalno (do prvog mosta).

Ve}a sigurnost , jer mostovi mogu zabranit i protok nekih paketa koj i su

potenci jalna opasnost za sigurnost organizaci je. Tako|e je i ve}a

Page 151: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 151/260

17/28 Marko Mil i~ i}

pouzdanost je ukol iko do|e do katastrofe u jednoj prostori j i , mre`a u

drugoj prostori j i , koja je iza mosta radi nesmetano.

Zadaci mosta pri l ikom preformatiranja ramova:

Preformatiranje frejmova i izra~unavanje nove CheckSume

Okrenut i red bitova

Generisat i f ik t ivne priori tete (Ethernet ih nema a 802.5 ima, pa treba da ih

napravimo makar da budu fikt ivni .

Odbacit i priori tete

Zaokru`it i token (Ring drain) Povla~enje podataka sa mre`e (svaka stanica

koja {al je podatke treba i da ih povla~i ) .

Setovat i A i C bitove (pri ~emu se zapravo >>la`e<< da je odredi{te

primilo frejm

Regulisat i zagu{enje pri slanju na spori j i LAN (uvo|enje bafera)

Ako je frejm suvi{e vel ik i za odredi{ni LAN on se odbacuje (mogu}a je

neka signalizaci ja al i problem nije re{iv)

802.5 zapravo nema ograni~enja u vel i~ ini okvira, osim {to se mo`e desit i da

stanica ne mo`e emitovat i frejm du`i od token-holding t ime-a (vreme dr`anja

tokena) {to po defaultu iznosi 10 ms, odakle se izvodi maximalna du`ina okvira od

5000 b.

Zbog rada sa LAN-ovima razl i~ i t ih brzina i l i pojave kol iz i je, mostovi moraju imat

baferski prostor za sme{tanje prist igl ih ramova (okvira) . Prolaskom paketa kroz

most, gubi se semantika mre`e jer se mnogi parametri (na primer priori tet )

postavl jaju proizvol jno i gube pri l ikom prolaska kroz mre`u koja ih ne zahteva

Potrebno je maksimalno smanji t i komunikaci ju izme|u LAN-ova. Ako neka stanica

~esto (vi{e od 20% paketa) komunicira sa stanicom van LAN-a na koj i je

prik l ju~ena, treba razmotri t i njeno presel jenje u drugi LAN.

Page 152: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 152/260

18/28 Marko Mil i~ i}

T r an spa r en t B r i dges i l i S pann i ng t r ee b r i dges

Zami{l jeni su tako da sve samostalno rade, dovol jno je samo utaknut i prik l ju~ke za

mre`e, pri ~emu su potpuno transparentni za sve stanice na mre`ama. Zadatak

 Transparent Bridge-a je da prosledi pr ist igl i frejm il i ga odbaci. Odluku donosi na

osnovu vel ike Hash Tabele koju neprekidno a`urira. Kada se prvi put ukl ju~i most,

hash tabela je prazna, pa se korist i algori tam preplavl j ivanja  ( f looding) pri ~emu

se prist igl i paket {al je na sve ostale portove (most ne mora imati samo 2 porta)

Vremenom se hash tabela  putni adresama iz prist igl ih okvira, ~ime se zahtev za

plavl jenjem sve vi{e smanjuje, a most sve perfektni je funkcioni{e. Algori tam u~enja

o polo`aju stanica naziva se Backward Learning .

Okvir je primljen

bez gre{ke na portu X

Dest. Add. Na|ena uHASH Tabeli

Izlazni port= port X ???

Prosledi okvir na sveportove osim X-a

Prosledi okvir naizlazni port

Sour. Add. Na|ena uHASH Tabeli

Dodati Sour. Add. Utablicu zajedno sa

smerom i novim tajmero,

A`urirati smeri tajmer

KRAJ

 True

False

Learning

Prosle|ivanje

 

Page 153: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 153/260

19/28 Marko Mil i~ i}

Izgled tabl ice:

Kada se stavka doda u tabelu, i l i se a`urira ({to se de{ava svaki put kada

prist igne okvir ) a`urira se tajmer, koj i je inic i jalno postavl jen na 300 s. Nakon tog

vremena, ako ne prist igne novi okvir od date stanice, odgovaraju}i ulaz u tabl icu

se bri{e. Time se omogu}uje samostalna rekonfiguraci ja mre`e (na primer. Ako se

stanica iskl ju~i i prenese na drugo mesto, za par minuta (zavisno od postavl jenog

vremena) most }e sam odredit i njen novi polo`aj bez ikakve dodatne intervenci je.

Primer:

Za mre`u na sl ic i , skic irat i putanje paketa i stanja odgovaraju}ih Transparen

Bridge tabela , pri l ikom razmene okvira izme|u stanice A i E.

 A B C

D E

F G H

LAN 1 LAN 2LAN 3

LAN 4

B1 B21 2 1

2

3

 

1. A -> E

Inic i jalno su tabele prazne

 A 

E

LAN 1 LAN 2LAN 3

LAN 4

B1 B21 2 1

2

3

 

Stanica Port# Timer

Page 154: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 154/260

20/28 Marko Mil i~ i}

Most B1 ce imati slede}u tabelu:

Stanica Port Timer

A 1 300

Most B2 }e imati slede}u tabelu:

Stanica Port Timer

A 1 300

2. E -> A

 A 

E

LAN 1 LAN 2LAN 3

LAN 4

B1 B21 2 1

2

3

 

Po{to nema informaci ja o stanici E, ona se unosi u tabele.

Most B1 ce imati slede}u tabelu:

Stanica Port Timer

A 1 -

E 2 -

Most b2 }e imati slede}u tabelu:

Stanica Port Timer

A 1 300

E 3 300

Sada je putanja poznata i vi{e se ne korist i f looding algori tam.

Page 155: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 155/260

21/28 Marko Mil i~ i}

Prethodno prikazani algori tam u~enja zahteva da mre`a ima topologi ju stabla  je

postojanje pet l j i izaziva vel ike probleme. Ovo mo`emo videt i na slede}em primeru:

 A 

B1B1

B

LAN Y 

LAN X

 

 -   Javljaju se dva ista frejma na LAN-u Y

 -  Ako B1 prest igne B2 -> B2 menja ulaz za A i pomera ga na stranu LAN Y jer

odat le dolazi paket sa A-ovom Source Addr. Zat im B2 {al je okvir -> B1 menjasvoju tabelu -> nakon toga A vi{e nikako ne mo`e da primi okvir jer i B1 i b2

misle da su na strani LAN Y.

 -   Jo{ je gori slu~aj ako ni B1 ni B2 neznaju gde se nalazi B.

Da bi se ovo prevazi{lo, koriste se elementi teori je grafova koj i od zadate mre`e

formiraju minimalno spre`no stablo (spanning tree). Za formiranje ovog stabla

korist i se zaseban protokol koj im mostovi razmenjuju informaci je izme|u sebe

pomo}u BPDU (Bridge Protocol Data Unit )-a.

Algori tam:

1.  Odredit i root-bridge (na primer onaj sa najmanjim seri jskim brojem, mada se

~esto dodaje i priori tet mosta.

2.  Odredit i root-port na svim ostal im mostovima (port najbl i` i root-mostu, t j . sa

najmanjim brojem skokova paketa.

3.  Odre|ivanje akt ivnog mosta ( t j . designated Port-a) za svaku LAN mre`u.

Minimalno spre`no stablo se pravi tako {to se jedan LAN bira za koreni (osnovni ) ,

LAN-ovi se presl ikavaju u ~vorove a mostoviu grane.

Mostovi omogu}avaju autonomno funkcionisanje mre`a.

Page 156: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 156/260

22/28 Marko Mil i~ i}

Sou r c e Rou t i ng B r i dges

 Transparent Bridges se jednostavno instaliraju i koriste (samo se utaknu) al

nedovol jno dobro koriste propusnost mre`e jer upotrebl javaju samo deo topologi je

( t j . spre`no stablo) . Za razl iku od Transparent Bridges koj i se koriste kod CSMA/CD

i Token Bus-a, IBM je za svoje Token Ring mre`e predlo`io novu {emu — Source

Rout ing!

Kod ovog algori tma, po{i l jalac mora da zna da l i je odredi{te na istom LAN-u

Ako ni je, po{i l jalac postavl ja najvi{ i bi t izvorne adrese (Source Address) na 1 (~esto

se taj f leg ozna~ava sa RI I (Rout ing Information Indicat ion ) . [tavi{e u zaglavl je

okvira se unosi ta~na putanja koju okvir mora da sledi i to u okviru RD ( Rout ing

Designator ) pol ja.

RD  pol je sadr`i par podataka: Broj prstena (12 bitova) i broj mosta (4 bita) . Svaki

LAN ima jedinstven 12-bitni broj i svaki most 4-bitni broj koj i ga jedinstveno

odre|uje u kontekstu datog LAN-a, tako da je putanja jedinstveno odre|enasekvencom LAN,MOST,LAN. Postoj i ukupno 14 RD polja. Dakle, maksimalan

brojskokova je 13, me|utim IBM-ova implementaci ja trenutno ograni~ava ukupan

broj RD polja na 8 t j . 7 skokova.

Postoj i 4 razl i~ i ta t ipa Rout ing direkt iva t j . 4 t ipa rut iranja.

NULL — nema rut iranja -> frejm mogu primit i samo stanice na istom LAN-u

NonBroadcast  —> Rd polje sadr`i ta~nu rutu koju frejm mora da sledi

Samo mostovi na toj rut i ( t j . oni koj i prepoznaju svoje adrese i iz lazne LANadrese) prosle|uju frejm. Samo jedna kopija frejma se isporu~uje

odredi{tu.

All-Routs Broadcast  -> Svaki most prosle|uje paket jednom kroz svak

port , osim onog sa koga je primio. Mogu se pojavi t i vi{estruke kopije istog

okvira na LAN-u. Odredi{te prima po jednu kopiju okvira sa svake mogu}e

putanje kroz mre`u. Ovo je jedan od mehanizama otkrivanja trase do

odredi{ta. PI I bi t je postavl jen, al i su RD(x) pol ja prazna ( inic i jalno). Svak

most koj i propust i okvir upisuje svoj broj, kao i broj iz lazne LAN mre`e u

odgovaraju}e polje, tako da odredi{te, zajedno sa okvirom, dobija i celu

putanju. Da bi se izbeglo besprekidno kru`enje pa keta u mre`i, svaki mos

proverava da l i je u putanj i ve} zapisana mre`a na koju `el i da prosled

okvir. Ako jeste, okvir ne}e bit i prosle|en. Odredi{te odgovara na svak

prist igl i okvir, al i korist i NonBroadcast jer ta~no zna povratnu putanju do

Page 157: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 157/260

23/28 Marko Mil i~ i}

izvora). Izvor na osnovu svih prist igl ih odgovora mo`e da izabere

opt imalnu putnju i unese ga u svoju tabl icu putanja (Source Rout ing

Bridges nemaju nikakve tabl ice nit i s l i`nu strukturu, dakle, oni su mnogo

prost i j i od Transparent Bridges-a)

Single Rout Broadcast  -> obezbe|uje da odredi{te primi ta~no jednu

kopiju okvira. Da bi se to post iglo, okvir trebaju da proslede samo mostov

iz spre`nog stabla (sa korenom u izvornom ~voru — t j . ~voru koj i {al je

okvir ) . Tako|e se korist i za pronala`enje trase do odredi{ta! Kadaodredi{te primi okvir, odgovara preko AllRout Broadcast prist igl i okvir i (na

izvoru) otkrivaju sve mogu}e putanje . Problem formiranja spre`nog stabla

mo`e se re{i t i automatski (Delegiranjem po jednog mosta za svaki LAN i l

ru~no.

Ove pet l je sa putanjom se nalaze u host ra~unarima (a ne u mostovima kao kod

BUS topologi je) . Ove tabele se a`uriraju ako se ~esto javl jaju otkazi i TimeOut-ov

({to zna~i da vi{e ne mo`e da se korist i neka trasa), pri l ikom svakog

uspostavl janja veze kod LLC-a i l i se uvodi tajmer pa se po isteku tajmera a`urira

tabl ica (ponovo {al je discovery frame).

Page 158: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 158/260

24/28 Marko Mil i~ i}

I z bo r op t ima l ne pu t an j e :

Postoje dva kri teri juma.

Minimalni broj skokova — Bira se put zapisan u RD polju okvira sa

najmanjim brojem RD(x) pol ja

Minimalna cena t j . izbor puta sa maksimalnim protokom. Ovo se nemo`e

ekspl ic i tno utvrdit i pa se koriste alternat ive.o  Bira se putanja zapisana u okviru koja prvi st igne (pretpostavl ja se da

je pro{ao kroz mre`u sa najmanjim zagu{enjem).

o  Slu~ajno se bira jedna od putanja, da bi se ravnomerni je opteret i l

mostovi/mre`e.

Kol iko ~esto treba a`urirat i tabelu putanja?

U slu~aju otkaza mre`e (neke na putu) i l i ve}eg zagu{enja

Kod connect ion-oriented LLC-ova, sa svakim novim uspostavl janjem veze.

Uvo|enjem tajmera, bez obzira na t ip veze (connect ion-oriented i l

connect ionless) sa istekom odre|enog perioda.

Imp l emen t a c i j a S R mos t o va :

Softverska: Most prima svaki okvir, kopira ga u svoju memori ju gdeproverava da l i su RI I=1, pa ako jeste nastavl ja sa dalj im ispit ivanjem

(zahteva brz procesor)

Hibridna: Mre`ni (LAN) interfejs mosta ispituje da l i je RI I=1, pa ako jeste

kopira ga u memori ju. Ovo se hardverski vrlo lako implementira a

zna~ajno redukuje broj okvira koje most mora da ispita.

Hardverska: LAN interfejs mosta ne ispituje samo RI I , ve} i celu putanju,

da bi utvrdio da l i treba da se obavi prosle|ivanje i l i ne. Zahteva

kompleksan hardware al i ne tro{i CPU cikluse mosta jer se svi nepotrebn

okvir i u startu odbacuju. ( tako da se mo`e primenit i i neki spor procesor

za funkci ju mosta.

Vrlo lo{a osobina SR mostova je eksplozi ja okvira koja se javl ja pri l ikom slanja

Discovery frejmova (za tra`enje putanje) , jer se kod BroadCast ing-a broj frejmova

Page 159: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 159/260

25/28 Marko Mil i~ i}

na mre`ama eksponenci jalno pove}ava (sl i~an problem postoj i i kod TB-a al i ni je

ni pribl i`no tako drast i~an).

Funkci ja koja simulira ovaj most bi la bi:

If RII =1

{

case tip_rutiranja:

Null .....

Non Broadcast .....

 Al l_Routs_broadcast .....

Single_Route_broadcast ....

}

Page 160: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 160/260

26/28 Marko Mil i~ i}

Po r e|en j e TB i S RB-a

 Transparent Bridge Source Routing Br idge

Osnovna orjentaci ja Connect ionless Connect ion-oriented

 Transparentnost Potpuno transparentan Nije transparentan

Konfiguraci ja Automatska Ru~na

Rut iranje SubOptimalno Optimalno

Lociranje BackWard Learning Discovery frames

Ispadi mre`e Ispadima rukuju mostovi Ispadima ukuju Hostovi

Kompleksnost U Mostovima U Hostovima

Kako povezat i IEEE 802.3 mre`e koje koriste TB-ove sa 802.5 koje koriste SRB-ove?

Pomo}u IBM 8200 koj i obezbe|uje prevo|enje podataka o rut iranju izme|u

ova dva mehanizma.

Upotreba kombinacionih mostova, t j . transparentnih mostova sa izvornim

rut iranjem (Source Rout ing Transparent — SRT). Oni koriste transparentnopremo{}avanje ako ne postoj i RI pol je, u prot ivnom korist i izvorno rut iranje

Po ve z i v an j e To k enR i ng i Bu s m re `e :

Kori{}enje kombinovanih mostova koj i rade istovremeno i kao transparentni i kao

SourceRout ing. Ako je RI I setovano korist i se Source Rout ing, a ako ni je korist i se

algori tam transparentnog mosta.

RI I je u stvari najvi{ i bi t SA ( izvori{ne adrese).

Most pre nego {to uput i paket (sa All-Broadcast ) ako se u tabel i nalazi adresa

mre`e na koju se {al je (ne {al je se, i l i ako je u RD ve} adresa tog mosta — isto se

paket ne {al je (da ne bi do{lo do lutanja paketa. ) )

Na slede}im sl ikama predstavl jeni su formati frejmova za nekol iko najpoznat i j ih

standarda:

Page 161: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 161/260

27/28 Marko Mil i~ i}

Page 162: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 162/260

28/28 Marko Mil i~ i}

Page 163: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 163/260

1/7 Marko Mili~i}

ZADATAK

Za mre`u sa 5 ~vorova, datu na sl ic i 2, prikazat i postupak punjenja

tabela rastojanja u svim ~vorovima primenomDistance Vector Rout ing

 algori tma.

Re{enje:

A

A

A

B

B

B

C

C

C

D

D

D

E

E

E

B

B

B

C

C

C

D

D

D

E

E

E

A

A

A

C

C

C

D

D

D

E

E

E

A

A

A

B

B

B

D

D

D

E

E

E

A

A

A

B

B

B

C

C

C

E

E

E

A

A

A

B

B

B

C

C

C

D

D

D

B

B

3

3

B

3

3

3

7

7

12

9

9

E

E

5

5

E

11

11

14

13

8

8

5

5

5

A

A

3

3

A

3

3

3

10

11

8

8

C

C

4

4

C

11

4

4

4

9

9

13

12

E

E

6

6

E

11

11

15

14

9

9

6

6

6

B

B

4

4

B

7

7

4

4

4

13

10

10

D

D

5

5

D

13

14

5

5

5

8

8

E

E

9

9

E

14

14

15

15

12

12

9

9

9

E

E

3

3

E

8

8

9

9

12

11

3

3

3

C

C

5

5

C

12

9

9

5

5

5

14

13

A

A

5

5

A

5

5

5

8

8

12

13

B

B

6

6

B

9

9

6

6

6

10

10

15

C

C

9

9

C

16

13

13

9

9

9

14

14

D

D

3

3

D

11

12

8

8

3

3

3  

Page 164: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 164/260

2/7 Marko Mili~i}

Diskusi ja re{enja:

U prvom redu tabela, popunjavaju se samo razdalj ine do direktnih suseda.

U drugom redu tabela, sledi se slede}a logika:

1. 

Da bi iz A do{ao do B, kre}u}i se preko B, potrebno mi je 3 ( jedinice cene)

Ovo je direktna veza.

2. 

Da bi iz A do{ao do B, kre}u}i se preko E, prvo moram da izra~unam kol iko }e

mi trebat i da do|em od A do E. Nakon {to sam to izra~unao ( pogledav{i u

tabele iz prvog reda ) dopisao sam plavom bojom broj 5 iznad kolone E. Ova

broj mi ozna~ava da mi od A do E treba 5 jedinica cene. Sada, kada znam

koliko mi treba od A do E treba da na|em kol iko mi treba od E do B i da tu

razdalj inu saberem sa onim plavim brojem 5 iznad tabele. Hmmmm, od E do B

}e mi trebat i 6 jedinica cene. Dakle, kada saberem onu plavu pet icu i ovu

{est icu, dobijam 11.

3. 

Is tom logikom se slu`imo za sve mogu}e dest inaci je.

U tre}em redu tabela se sledi sl i~na logika kao u drugom koraku. Ja }u dat

primer ponovo za tabelu A:

1.  Da bi se iz A do{lo do B, kre}u}i se preko B, potrebno mi je 3 jedinica cene.

Ovo je, kao i u pro{lom primeru, direktna veza.

2. 

Da bi se iz A do{lo do C preko E, moramo prvo da vidimo kol iko nam treba od

A do E, i da napi{emo onaj plavi broj iznad tabele. Po{to sam ve} jedared

odredio sve plave brojeve za prvi red tabl ica, prosto }u prepisat i plavu pet icu

iznad kolone za E. Sada, treba odredit i , kol iko mi je potrebno od E do C

Posmatram drugi red tabela i zakl ju~ujem da je ovog puta na raspolaganju tr

vari jant i . Te vari jante su 10, 9 i 8 jedinica cene. Naravno, slu`e}i se principom

ekonomi~nost i , biram ono 8. Dakle, sada treba sabrat i 8+5 i dobijamo 13

jedinica cene. Prime}ujemo da je za ovaj ist i put u drugom redu tabela bi lo

potrebno 14 jedinica cene! Naravno, jer tada smo za put izme|u E i C imal

samo jednu opci ju koja je ko{tala 9 jedinica cene. Sada su nam se otvori le

nove opci je, mi smo biral i naj jeft ini ju i tako je na{a tabela po~ela da

konvergira ka najjekonomi~ni jem re{enju.

3. 

Is tom logikom se slu`imo za sve mogu}e dest inaci je.

Page 165: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 165/260

3/7 Marko Mili~i}

Zadatak

Za mre`u sa 4 ~vora, zadatu tabelom i grafom, primenomDistance

Vector Rout ing

  algori tma prikazat i postupak punjenja tabela rastojanja u svim

~vorovima. Ako se u trenutku T0, nakon uspostavl janja ravnote`nog stanja, te`ina

grane BC promeni sa 1 na 3, prikazat i postupak uspostavl janja nove ravnote`e.

6  6

3

1

2A C

D   B 

Poteg: AC AD BC BD CD

 Te`ina 2 6 1 3 6

Re{enje:

A

A

A

B

B

B

C

C

C

D

D

D

B

B

B

C

C

C

D

D

D

A

A

A

C

C

C

D

D

D

A

A

A

B

B

B

D

D

D

A

A

A

B

B

B

C

C

C

C

C

2

2C

3

3

2

2

2

8

6

D

D

6

6D

9

9

12

10

6

6

6

C

C

1

1C

3

3

1

1

1

7

5

D

D

3

3D

9

9

9

7

3

3

3

A

A

2

2A

2

2

2

5

8

8

B

B

1

1B

4

1

1

1

4

4

D

D

6

6D

12

12

9

9

6

6

6

A

A

6

6A

6

6

6

9

8

8

B

B

3

3B

6

3

3

3

4

4

C

C

6

6C

8

8

7

7

6

6

Page 166: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 166/260

4/7 Marko Mili~i}

Posle poreme}aja ravnote`e, nastupi}e novo ravnote`no stanje!

A

A

A

B

B

B

C

C

C

D

D

D

B

B

B

C

C

C

D

D

D

A

A

A

C

C

C

D

D

D

A

A

A

B

B

B

D

D

D

A

A

A

B

B

B

C

C

C

C

C

2

2

C

5

5

3

2

2

2

6

6

6

D

D

6

6

D

9

9

9

12

10

10

6

6

6

C

C

3

3

C

5

3

3

3

3

3

5

5

5

D

D

3

3

D

9

9

9

9

3

3

3

A

A

2

2

A

2

2

2

7

8

8

8

B

B

3

3

B

4

4

4

3

3

3

4

4

4

D

D

6

6

D

12

12

12

6

6

6

A

A

6

6

A

6

6

6

11

9

9

8

8

8

B

B

3

3

B

6

6

6

3

3

3

6

6

4

C

C

6

6

C

8

8

8

9

9

7

6

6

6

 

Kada nastane promena na nekom potegu treba ne{to promenit i , al i {ta?

U na{em slu~aju promenio se poteg BC. Dakle, gde god imamo rastojanje izme|u

B i C i l i C i B upisa}emo novu vrednost . A u tom istom redu, gde smo upisal i novu

vrednost , sve ostale brojeve zameni}emo beskona~nom udaljeno{}u. Sada

polazimo od ovih tabela, kao da su nam one startne.

U slede}em redu tabela tra`i}emo one plave brojeve i ponovite ceo postupak

punjenja tabela. Naravno, i u ovom zadatku smo korist i l i is tu logiku pr

popunjavanju tabela kao u predhodnom (apsolutno istu logiku).

Ni je bi l te{ko zar ne ; )

Page 167: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 167/260

5/7 Marko Mili~i}

Zadatak: Za globalnu mre`u zadatu tabelom prikazat i postupak punjenja rout ing

tabela primenomDistance Vector Routring

 algori tma. Parametri u tabel i zadat i su u

slede}em formatu (Oznaka ~vora, interfejs, IP adresa, te`ina iz lazne grane).

A: (1 ) 120.11.31.18 (2)

A: (2) 168.32.201.108 (3)

A: (3) 216.61.12.201 (7)

B: (1 ) 120.11.42.20 (1)

B: (2) 198.108.99.11 (3)

C: (1 ) 168.32.110.58 (4)

C: (2) 131.200.11.73 (2)

D: (1 ) 131.200.28.47 (3)

D: (2) 198.108.99.23 (4)

D: (3) 216.61.12.202 (6)

Re{enje:

N1 = 120.11.x.x

N2 = 168.32.x.x

N3 = 216.61.12.x

N4 = 198.108.99.x

N5 = 131.200.x.x

Na osnovu ovoga mo`emo nacrtat i graf!

Page 168: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 168/260

6/7 Marko Mili~i}

N1

N2

N3

N4

N5

 A 

2 7

3

B

1

3

C  4

4

D63

2

 

 Treba naglasi t i da su u prethodnom grafu izostavljene povratne grane i da je

nj ihova te`ina 0.

Da bi primenioDistance Vector Rout ing algori tam

, mora}u da iz ovog grafa

pre|em u njemu ekvivalentan. Dakle, imaju}i u vidu izostavl jene grane, mo`emo

da uprost imo graf i na klasi~an na~in prika`emo punjenje Distance Vector Rout ing

 Tabela.

 A    C

3

4

B

2 1

D

7

62 3

3

4  

Page 169: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 169/260

7/7 Marko Mili~i}

A

A

A

B

B

B

C

C

C

D

D

D

B

B

B

C

C

C

D

D

D

A

A

A

C

C

C

D

D

D

A

A

A

B

B

B

D

D

D

A

A

A

B

B

B

C

C

C

B

B

B

3

3

3

C

C

C

D

D

D

7

7

7

A

A

A

1

1

1

D

D

D

3

3

3

A

A

A

3

3

3

D

D

D

2

2

2

A

A

A

6

6

6

B

B

B

4

4

4

C

C

C

3

3

3

2

2

2

2

2

3

3

7

7

1

1

3

3

3

3

2

2

6

6

4

4

3

3

11

11

10

10

5

5

5

5

9

8

4

4

6

6

8

6

8

7

5

5

6

6

10

8

5

5

6

6

8

8

9

9

8

6   8

8  

Ovim je zadatak zavr{en!

Page 170: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 170/260

1/13 Marko Mili~i}

ZADATAK: Za globalnu mre`u zadatu tabelom:

 - skicirat i mre`u,

 - uz pretpostavku da svaki router 2 x lak{e propu{t a pakete u smeru interf .1

interf .2  nego u suprotnom smeru (gde je te`ina dodeljena iz lazu dvostruko ve}a)

primenom L ink State algori tma odredit i i prikazat i rout ing tabelu u ro uter-u B,

 - skicirat i razmenu paketa izme|u ra~unara A i J.

A 1 223.18.43.227 1 181.99.23.181 1 192.12.23.128

1 223.18.43.12E

2 223.18.43.200H

2 123.15.41.211B

2 128.77.23.110 1 223.18.43.117 1 123.18.12.111 128.77.23.220

F2 123.27.43.77

I2 181.99.23.14

C2 192.12.23.14 1 123.27.55.181 J 1 192.12.23.208

1 192.12.23.207G

2 128.77.180.33D

2 181.99.27.44

Re{enje:

N1 — C klasa 223.18.43.*

N2 — B klasa 128.77.*.*

N3 — B klasa 181.99.*.*

N4 — C klasa 192.12.23.*

N5 — A klasa 123.*.*.*

 A B C D E F G H I   J

N1N2

N3

N4

N5

 

Ustanovi}emo pravi lo da ukol iko neki ~vor ima samo jednu vezu, onda je to

interfejs 1 , a ukol iko ima dve veze, onda je prva veza interfejs 1  a druga veza

interfejs 2 . Sada, na osnovu ove mre`e treba nacrtat i di jagram koj i je zgodan za

Page 171: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 171/260

2/13 Marko Mili~i}

primenu Dijkstra algori tma za nala`enje najkra}e putanje izme|u ~vorova. Ukol iko

neko mo`e i na osnovu ove sl ike samo napred. U principu i na ovoj sl ic i imamo

dovol jno podataka ako dobro znamo usvojena pravi la. Dakle, kada paket ide u

smeru od rutera B ka N1 koj i je na interfejsu 1, onda zna~i da je paket do{ao sa

interfejsa 2. Zna~i, imamo ote`ani slu~aj i tada pi{emo te`inu 2 na putu od B do

N1. Istom logikom zakl ju~ujemo da je na putu od B do N2 te`ina 1.

Sada na neki na~in trebamo sprovest i DIJKSTRA algori tam. O~ito da moramo skicu

mre`e prevest i u usmereni graf.

Sada na osnovu ove {eme mo`emo sastavi t i s lede}i di jagram:

N1

N3

N2

N4

N5

A

B C

DE

F

G H

I

 J

 

Page 172: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 172/260

3/13 Marko Mili~i}

Ovo ni je usmereni graf, al i zbog preglednost i , smerove i te`ine veza }u pisat i u

tabel i :

Po{to se u zadatku tra`i da napi{emo rut ing tabelu za ~vor B, onda treba na}

najkra}e puteve od ~vora B do svih mre`a (N1,N2,N3,N4,N5). Za ovo bi trebalo

upotrebit i DIJKSTRA algori tam. Po{to je vrlo nezgodno i nepregledno izvodit

algori tam direktno na grafu, ja }u poku{at i da izvedem tabelatni na~in za

Od Do Direktno Suprotno

A N1 0 0

B N1 2 0

B N2 1 0

C N2 2 0

C N4 1 0

D N4 2 0

D N3 1 0

E N3 2 0

E N1 1 0

F N1 2 0

F N5 1 0

G N5 2 0

G N2 1 0

H N4 2 0

H N5 1 0

I N5 2 0

I N3 1 0

 J N4 0 0

Page 173: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 173/260

4/13 Marko Mili~i}

nala`enje najkra}eg puta do svih ~vorova! Da bi uspeo da prona|em tabelarn

na~in, prvo moram detal jno opisat i DIJKSTRA algori ta.

Di j ks t ra a lgor i tam

Dijkstra algori tam je dobio ime po svom pronalaza~u E.W.Di jkstra. On se bavio

problemom nala`enja najkra}eg rastojanja od jedne do druge ta~ke u grafu

Rade}i na re{avanju problema, zakl ju~io je da tra`e}i najkra}i put izme|u dve

ta~ke u grafu mo`emo dobit i najkra}e puteve za bi lo koje dve ta~ke grafa

(odjedared).

Ovo sve ima itekako veze sa spre`nim stablom grafa. Dakle, neki podgraf, koga

zovemo spre`no stablo  mora bit i takav da povezuje sve ta~ke u grafu. Tako|e

kada defini{emo spre`no stablo moramo re}i da ono nesme imati kru`ne veze

Nepostojanje kru`nih veza je nu`no, a to zapravo zna~i da ovakvo stablo nesme

imati vi{e od jednog puta izme|u bi lo koje dve ta~ke grafa.

Kako algori tam funkcioni{e:

Odaberemo izvori{te, t j . za koj i ~vor }emo tra`i t i najkra}e puteve do

ostal ih ~vorova.

Setujemo na beskona~nost cene svih ~vorova, osim onog kog smo odabral

u predhodnom koraku.

Sada treba odabrat i najbl i` i ~vor izvori{nom ~voru!

Po{to je ovo samo po~etak, za sada je jedino po~etni ~vor bl izak samom

sebi. Dakle, za najbl i`eg ~voru S biramo ~vor S (samog sebe).

Sada trebamo nekako obele`i t i ovaj ~vor jer smo za njega ve} prona{l

najkra}i put. Na primer, mo`emo oboji t i ovaj ~vor zelenom bojom .

Sada treba relaksirat i sve ~vorove koj i su susedni ~voru S a jo{ uvek nisu

obojeni u zeleno t j . jo{ uvek za nj ih ni je na|en najkra}i put. A {ta zna~i to

>>relaksirat i<<? Relaksirat i neki ~vor zna~i resetovat i njegovu cenu al

samo ako smo na{l i bol ju cenu t j . ako je cena preko trenutnog izvori{nog

~vora manja od trenutne cene. Pored nove cene pi{e se i ime ~vora koj i je

trenutno izvori{ni .

Od ovih relaksiranih ~vorova, odabrat i najbl i` i ! Sada zamisl imo da je on

izvori{ni! I boj imo ga zelenom bojom {to zna~i da smo ga obradil i t j . za

njega je na|en najkra}i put.

Relaksirat i sve ~vorove koj i su susedni novoizabranom izvori{tu!

Page 174: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 174/260

5/13 Marko Mili~i}

Sada ponovo biramo najbl i` i ~vor teku}em izvori{tu i proces nastavl jamo

do kraja t j . dok svi ~vorovi ne budu obojeni zelenom bojom.

ITD . . . . .

Biramo ~vor B  i boj imo ga u zeleno. Njegovi susedi su N1 i N2

Dakle, nj ih relaksiramo i boj imo u `uto. Nova (relaksirana) cena

~vora N1 je BN1+cena(B) 2+0=2 a ~vora N2 je BN2+cena(B) 1+0=1

Dakle, labele su 2B i 1B. Sada biramo N2  za novi ~vor jer je on

jeft ini j i i boj imo ga u zeleno. Njegovi susedi su B, C i G. B je ve}

obojen u zeleno, tako da relaksiramo samo C i G. Nova cena

~vora C je N2C + cena(N2) 0+1=1 a ~vora G je N2G + cena(N2

0+1=1. Sada biramo ~vor sa najjeft ini jom labelom iz skupa

relaksiranih (`ut ih) . Biramo ~vor C  i boj imo ga u zeleno. Njegov

susedi su N2 i N4. N2 je ve} pozeleneo pa zato relaksiramo samo

N4. Njegova nova labela je CN4+cena(C) 1+1=2. Nakon toga

ponovo biramo najjeft ini j i ~vor. Sada biramo G . Njegovi susedi suN5 i N2. N2 je ve} pozeleneo, pa zato relaksiramo samo N5

Njegova nova cena je GN5 + cena(G) 2+1=3. Sada ponovo biramo

najjeft ini j i ~vor . To je ~vor N1 . Njegovi susedi su A B E i F. Be je

ve} pozeleneo tako da relaksiramo samo A E i F. Nova cena A-a

je N1A + cena(N1) = 0+2=2. Nova cena E-a je N1E + cena(N1) =

0+2=2. Nova cena ~vora F je N1F + cena(N1) = 0+2=2. Saba biram

~vor A . Svi njegovi susedi suzeleni. Tako da tu ni{ta ne radim

Sada biram ~vor E . Njegovi susedi su N1 i N3. N1 je ve} zelen,zna~i relaksiram samo N3. EN3 + cena(E) = 2+2=4. Sada biram

~vor F . Njegovi susedi su N1 i N5. N1 je ve} zelen. Zna~

relaksiram samo ~vor N5. Njegova nova cena je FN5 + cena(F) =

1+2=3 ona ni je bol ja pa se ne apdejtuje. Sada biram ~vor N4

njegovi susedi su C D H J. relaksiram D. njegova cena je

N4D+cena(N4) = 0+2=2. Nova cena H-a je N4H+cena(N4)=0+2=2

Nova cena J-a je N4J + cena(N4) = 0+2=2. Sada biramo J . Svi njegovi ~vorovi su

zeleni. Zat im biramo ~vor H . njegovi susedi su N5 i N5. N4 je zelen a N5 }emorelaksirat i . Nova cena N5-a je HN5 + cena(H) = 1+2=3. ni je bol ja pa je ne uzimamo

u obzir. Sada biramo ~vor D . Relaksiramo N3. DN3 + cena(D) = 2+2=4. ni je bol ja pa

je ne uzimamo u obzir. Biramo N5 i relaksiramo I. N5I + cena(N5) = 0+3=3. Biramo

i apdejtujemo N3. IN3 + cena(I ) = 1+3=4 lo{i ja je pa je ne uzimamo u obzir.

Od Do + Cena

A N1 0 B,2N1

B N1 2

B N2 10

C N2 2

C N4 1

B,1N2

D N4 2

D N3 2B,2N4

E N3 2

E N1 1B,2N1

F N1 2

F N5 1B,2N1

G N5 2

G N2 1B,1N2

H N4 2

H N5 1B,2N4

I N5 2

I N3 1 B,3N5

J N4 0 B,2N4

 N1 A 0

 N1 B 0

 N1 E 0

 N1 F 0

B,2B

 N2 B 0

 N2 C 0

 N2 G 0

B,1B

 N3 I 0

 N3 E 0

 N3 D 0

B,4E

 N4 C 0

 N4 D 0

 N4 H 0

 N4 J 0

B,2C

 N5 I 0

 N5 H 0

 N5 G 0

 N5 F 0

B,3G

Page 175: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 175/260

6/13 Marko Mili~i}

Na osnovu DIJKSTRA algori tma, na{ao sam minimalno spre`no stablo uz ~i ju pomo}

mogu lako na}i minimalnu putanju od ~vora B do bi lo kog drugog ~vora. Minimalno

spre`no stablo ~ine du`i:

AN1, CN2, DN4, EN1, FN1, GN2, HN4, IN5, JN4,

N1B, N2B, N3E, N4C, N5G

Ovo stablo se dobija kada po|emo redom iz tabele, i za svaki ~vor pro~i tamo koja

mu je zadnja labela. Dakle, skup ta~aka ~vor-zadnja labela predstavl ja jednu du`

Kada to uradimo za sve ~vorove, dobi}emo skup du`i koje ~ine minimalno spre`no

stablo.

 Tabela za ~vor B:

Odred mre`a Ruter rast

N1 B 2

N2 B 1

N3 N2/C 4

N4 N1/E 2

N5 N2/G 3

Razmena izme|u ~vorova A i J bi bi la:

 A N  E  N  D J 

 J  N C  N  B A

→ ⎯ →→ ⎯ →→

 ⎯→ ⎯  ⎯→ ⎯  ⎯→ ⎯  ⎯→ ⎯  ⎯→ ⎯ 

13

42

110

01010

 

Ovo poslednje ne korist i minimalno spre`no stablo, zato {to je to stablo za ~vor BMinimalno spre`no stablo za ~vor B predstavl ja skup putanja za najkra}i put do

bilo kog drugog ~vora polaze}i iz ~vora B.

Page 176: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 176/260

7/13 Marko Mili~i}

Globalna mre`a sastoj i se od ra~unara sa slede}im IP adresama:

A : 198.108.99.1

B : 198.108.99.2

C : 198.108.99.7

D : 198.108.99.18

F : 198.108.71.4

G : 198.108.71.9

H :201.11.107.5

J :201.11.107.17

K :216.61.12.3

L :216.61.12.11

E : 198.108.99.19

( interfejs 1)

E :201.11.107.1

( interfejs 2)

E : 198.108.71.23

( Interfejs 3)

I :201.11.107.19

( Interfejs 1)

I :216.61.12.7

( Interfejs 2)

 -Skicirat i ra~unarsku mre`u,

 -Prikazati kako izgledaju rout ing tabele za ~vorove A,E i I

 -Objasnit i kako se {alje IP datagram od ra~unara C do ra~unara K

Re{enje:

198.108.99198.108.71

216.61.12

B   C   D

1   2  7

  18

E

19

F   G

4   9

H   J   I

5   17   19

H

3

I

11

201.11.107

7

1

23

 

Page 177: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 177/260

8/13 Marko Mili~i}

C:

Network Direct/Indirect Router Interface

198.108.99 D 1

198 .108 .7 1 I 198 .108 .99. 19 1

201 .1 1. 107 I 198 .108 .99. 19 1

216.61 .12 I 198 .108 .99. 19 1

E:

Network D/I Router Interface

198.108.99 D 1

198.108.71 D 3

201.11.107 D 2

216.61.12 I 201.11.107.19 1

I :

Network D/I Router Interface

198.108.99 I 201.11.107.1 1

198.108.71 I 201.11.107.1 1

201.11.107 D 2

216.61.12 D 2

Ra~unar C {al je IP datagram u ~i jem zaglavl ju su navedene IP adrese izvora (C) i

odredi{ta (K) . Kako Ethernet frejm zahteva Ethernet adresu u lokalnoj mre`i, da b

mogao bit i poslat , kao odredi{na, navodi se Ethernet adresa IP ruter-a koj i dal je

prosle|uje paket (E ) . Kada paket prist igne u E, IP nivo ovog ra~unara prosle|uje

Page 178: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 178/260

9/13 Marko Mili~i}

poruku dalje (po{to je utvrdio n eslaganje odredi{ne adrese sa svojom IP adresom)

Ra~unar E paket primljen preko interfejsta 1 prosle|uje na interfejs 2, navode}i kao

odredi{nu adresu ethernet adresu ra~unara I . Ra~unar I , utvr|uje da paket ni je za

njega, al i nalazi da je ra~unar na odredi{noj adresi direktno dostupan i prosle|uje

mu paket. Odluka o tome kom ra~unaru treba poslat i paket donosi se na osnovu

rout ing tabela i slaganja dela IP adrese odredi{ta sa prvom kolonom u njoj

S imboli~ki prikaz paketa sa IP i Ethernet adresama dat je na predhodnoj sl ic i .

Od C do K se ide preko C-E, E-I , I-K

Page 179: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 179/260

10/13 Marko Mili~i}

Za globalnu mre`u zadatu tabelom skic irat i mre`u i odredit i sadr`aj routing tabele

u ~voru C primenom Link-state algori tma. Parametri u tabel i su dat i u slede}em

formatu:

(oznaka ~vora, interfejs, IP adresa, te`ina iz lazne grane).

A 1 223.18.43.227 - 1 181.99.23.181 3 1 192.12.23.128 2

1 223.18.43.12 3E

2 223.18.43.200 5H

2 123.15.41.211 4

B 2 128.77.23.110 7 1 223.18.43.117 3 1 123.18.12.11 61 128.77.23.220 5

F2 123.27.43.77 5

I2 181.99.23.14 3

C2 192.12.23.14 4 1 123.27.55.181 4 J 1 192.12.23.208 -

1 192.12.23.207 8G

2 128.77.180.33 7D

2 181.99.27.44 3

Re{enje:

N1 — C klasa 223.18.43.*

N2 — B klasa 128.77.*.*

N3 — B klasa 181.99.*.*

N4 — C klasa 192.12.23.*

N5 — A klasa 123.*.*.*

 A B C D E F G H I   J

N1

N2

N3

N4

N5

 

Umesto usmerenog grafa, ja }u napisat i s lede}u tabelu, u kojoj su svi podaci koj

bi bi l i u usmerenom grafu.

Page 180: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 180/260

11/13 Marko Mili~i}

Spre`no stablo se sastoj i od slede}ih du`i:

AN1, BN2, DN4, EN3, FN1, GN2, HN4, IN3, JN4

N1B, N2C, N3D, N4C, N5H

 Tabele se mogu prikazat i na slede}i na~in:

Za ~vor C:

Network Direct/Indirect Router Interface

N1 I N2/B 1

N2 D 1

N3 I N4/D 2

N4 D 2

N5 I N4/H 2

Od Do + Cena

A N1 - B,(0+8)N1

B N1 3

B N2 7B,(0+5)N2

C N2 5

C N4 4

D N4 8

D N3 3B,(0+4)N4

E N3 3

E N1 5B,(0+7)N3

F N1 3

F N5 5 B,(0+8)N1

G N5 4

G N2 7B,(0+5)N2

H N4 2

H N5 4B,(0+4)N4

I N5 6

I N3 3B,(0+7)N3

J N4 - B,(0+4)N4

 N1 A 0

 N1 B 0

 N1 E 0

 N1 F 0

B,(3+5)B

 N2 B 0

 N2 C 0

 N2 G 0

B,(5+0)C

 N3 I 0

 N3 E 0

 N3 D 0

B,(3+4)D

 N4 C 0

 N4 D 0

 N4 H 0

 N4 J 0

B,(4+0)C

 N5 I 0 N5 H 0

 N5 G 0

 N5 F 0

B,(4+4)H

Page 181: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 181/260

12/13 Marko Mili~i}

Primer DIJKSTRA algori tma:

Graf je dat tabelom!

KORAK I:

Na samom po~etku treba resetovat i sve cene osim cene

izvori{ta na beskona~nost . Zat im, izaberemo ~vor S. Po{to

jo{ uvek ni je ni{ta relaksirano, onda je jedino on sam seb

najbl i` i sused, pa ga biramo i boj imo u zeleno. Sada treba

relaksirat i njegove susede. Njegovi susedi suU i X

jer za

suseda smatramo samo ~vor DO koga postoj i veza, a ne ~vor OD goga postoj

veza. Po{to je trenutna cena svih njegovih suseda (beskona~no) onda je logi~no da

ih trebamo relaksirat i . Dakle, nova cena ~vora U je 10 a predhodnik mu je S. Dakle

labela bi bi la 10 S . Naredni sused je X. Istom logikom dobijam da je labela za X

jednaka 5 S. Sve relaksirane ~vorove treba oboji t i `utom bojom.  

KORAK I I :

Sada, biramo najjeft ini j i ~vor iz skupa relaksiranih

~vorova. To je ~vor koj i ima najmanju cenu u label i

Dakle, to je ~vor X. Sada X postaje izvori{te i boj imo

ga u zeleno. Relaksiramo njegove susede, a to su Y

U i V . Sada njegove susede bojimo u `uto. Poenta

relaksiranja je da vidimo da l i postoj i neki kra}i put

do S od trenutnog puta. Samo relaksiranje se izvod

tako {to vidimo sve susede datog ~vora koj i vode DO njega od trenutnog

odredi{ta.Ovde j e v a `no p r ime t it i da kada b i ramo su sede i z v o r i{ t a t o s u samo

sused i DO ko j i h vod i i z vo r a sada p r i r e la k s i r an ju sused i su samo on i sused i ko j

vode DO ~vo ra ko j i se r e la k s i r a

.

Znaju}i ovo pravi lo, po~injem relaksaci ju ~vora Y. Njegovi susedi su V i X. Od ova

dva, bira se onaj koj i pot i~e sa novoizabranog ~vora. Dakle, to je ~vor X ~i ja je

te`ina 2 a cena labele 5. Zat im se sabira ova cena sa te`inom grane XY +

cena(X). Dakle 5+2=7.

Za ~vor U, njegovi susedi su svi ~vorovi koj i vode ka njemu: S, X. Sabiramo X ~i ja

je te`ina 3. Sabiramo XU + cena(X) => 5+3=8

Za ~vor V, njegovi susedi su: U, Y, X. poteg koj i pot i~e sa X nosi te`inu 9 a cna

X-a je 5 dakle, sabiramo XV + cena(X) => 9+5=14.

A B A-B Cena

S U 10

S X 5

U V 1

U X 2B-,10S

V Y 4 B-

Y V 6

Y S 7B-

A B A-B Cena

S U 10

S X 50

U V 1

U X 2B-,10S,8X

V Y 4 B-,14X

Y V 6

Y S 7B-,7X

X Y 2

X U 3

X V 9

B-,5S

Page 182: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 182/260

13/13 Marko Mili~i}

KORAK I I I :

Sada biramo najjeft ini j i ~vor. To je ~vor Y. Boj imo ga

u zeleno. Relaksiramo njegove susede, a to su: V.

Poteg YV ima te`inu 6 a cena Y-a je 7 dakle, nova

te`ina je YV + cena(Y) => 6+7=13.

KORAK IV:

Sada od svih relaksiranih ~vorova biramo U je

ima najmanju labelu. Boj imo ga u zeleno

relaksiramo njegove susede. Susedi U-a su V i X

Relaksiramo V. U-V grana je te{ka 1 a cena U-a

je 8 tako da je nova labela ustvari UV + cena(U= 1+8=9.

Na osnovu ovog postupka, mogu definisat i minimalno spre`no stablo za ovaj graf!

A to je:

X-S

Y-X

V-U

U-X

Ove du`i ~ine minimalno stablo koje povezi je sve ~vorove grafa i naziva se

minimalno spre`no stablo!

A B A-B Cena

S U 10

S X 50

U V 1

U X 2B-,10S,8X

V Y 4 B-,14X,13Y

Y V 6

Y S 7 B-,7X

X Y 2

X U 3

X V 9

B-,5S

A B A-B Cena

S U 10

S X 50

U V 1

U X 2B-,10S,8X

V Y 4 B-,14X,13Y,9UY V 6

Y S 7B-,7X

X Y 2

X U 3

X V 9

B-,5S

Page 183: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 183/260

1/21 Marko Mili~i}

Zadatak.  ^vor A preko ~vora B {al je pakete podataka ~voru C. ^vor B, na svaka

dva prosle|ena paketa prist igla od A, {al je i jedan svoj paket ~voru C. Odredit

brzinu prenosa  paketa podataka izme|u ~vorova B i C, za slu~aj slanja vel ikog

broja paketa (<<30), tako da ne do|e do zastoja u protoku. Zadati su slede}

uslovi :

 -  Podaci se izme|u ~vorova A i B prenose brzinom od 25 Kb/s

 -  Ka{njenje je 10 mikrosekundi/Km za obe l ini je

 -  L ini je su Ful l-duplex

 -  Paket i sa podacima su du`ine 1000b

 -  ACK paket i su zanemarl j ive du`ine

 -  Za prenos izme|u ~vorova A i B korist i se selekt ivna retransmisi ja  vel i~ ine

prozora 4

 -  Za prenos izme|u ~vorova B i C korist i se protokol Stop and Wait 

 -  Nema gre{aka, nit i gubitaka paketa u kanalu

 -  Razdalj ine su: AB=2000 Km, BC=500 Km

 -  Vreme obrade paketa se zanemaruje.

A   CSelektivnaretransmisija   Stop & Wait

Re{enje:

Rab = 25 Kb/s

Dab = 2000 Km

L = 1000 b

Rbc = ?

Dbc = 500 Km

L = 1000 b

Brzina prost iranja signala dobija se kao recipro~na vrednost ka{njenja kroz

medijum.

V = 1/10*0.000001 = 100000 Km/s

Page 184: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 184/260

2/21 Marko Mili~i}

A-B:

2

1

100000

50000==

⋅⋅

== LV 

 D R

 R

 LV 

 D

 Aab  

( )( )

⎪⎩

⎪⎨⎧

+⋅+⋅−

+⋅≥−=

22,12

112,1

awa

 pwaw p

U p

 

4

212

=

=+⋅

w

Dakle, zakl ju~ujemo da je:

1=U   t j . nema ~ekanja na deonici A-B.

Sada mo`emo da izra~unamo kol iko je potrebno vreme za slanje jednog frejma na

deonici A-B:

 Tframe(ab)=L/R=1000b/25Kb/s=40ms. Ovo je vreme koje je jednako kol i~niku du`ine

rama i brzine na toj deonici .

 Tako|e, mo`emo da izra~unamo kol iko je propagaciono ka{njenje na deonici B-C:

 Tprop(bc)=D*Tprop= 10 mikrosekundi * 500 Km = 5 ms

Znamo da se na svaka 2 paketa od A do B dodaje i jedan od strane B-a i tako

se {al ju ka C-u.

N*Tframe(ab) = (3/2) N(2*5ms + Tframe(bc) )

40 = 3/2(10ms + Tframe(bc)

=>

 Tframe(bc) = 16.6 ms

R=1000/16.6ms = 60Kb/s

Ovim je zadatak zavr{en!

Page 185: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 185/260

3/21 Marko Mili~i}

Zadatak:  Saobra}aj izme|u dve stanice odvi ja se po algori tmu >> selekt ivna

retransmisi ja<<. Stanice su na me|usobnoj udaljenost i od 5000 Km i povezani su

komunikacionim kanalom koj i prenosi signal brzinom od 2*10 8 m/s. Neka je:

 -  Veli~ ina paketa 1000 b

 -  Veli~ ina prozora 10

 -  Brzina slanja 1000000 b/s.

a) Odredit i iskori{}enost kanala ako je bit error rate (BER) = 10 - 4 (0.0001)

b) Skic irat i vremenski di jagram razmene paketa izme|u izvora i odredi{ta, ako je

vel i~ ina bafera — 5 poruka, a pri l ikom transporta dolazi do naru{avanja INFO3

ACK4 rama.

Re{enje:

a)

D = 5000 Km

V = 2*108 m/s

L = 1000b

W = 10

R = 106 b/s

E=10 -4 

U=?

( )⎪⎩

⎪⎨⎧

+

+≥

+−−

=12,

12,

12

1

1

aw

aw

a

 pw

 p

U p

 

( )

5112

2510210

10510

%5.9095.011

83

66

1000

=+

=⋅⋅⋅⋅

=⋅⋅

=

==−−=

a

 LV 

d  Ra

 E  P 

 

Page 186: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 186/260

4/21 Marko Mili~i}

( )177.0

51

905.010==U   

b)

0

0

1

1

2

2

3

3

4

4

5

5

6

6

7

7

3

3

4

4

8

8

0 0 0 0 01 1 1 1

1

2 2 2 22

3 3

3 33 3 3

44

4 4 4 43

55

5 5 5 4

66 6 6

6

7 7 778

0 1  2   3 4567

8

Itd...

 

Po{to je u pitanju pr otokol selekt ivna retransmisi ja, numerisanje moramo da vr{imo

po modulu jednakom 2w. Dakle, 20. U na{em slu~aju od 0 do 19. Po{to je bafer

manji od prozora, mora}emo da korist imo Negative Acknowledge Signal, da bi na

vreme mogli da reagujemo! [ta se ustvari de{ava?

Prvo sender {al je paket nroj 0. Paketu je potrebno izvesno vreme da st igne do

receiver-a. ^im po{alje paket, sender ga smest i u bafer nepotvr|enih paketa da b

eventualno mogao da ga ponovo po{alje ako se slu~ajno desi gre{ka u kanalu

Zat im sender {al je pakete broj 1,2,3,4. U trenutku kada po{alje paket broj 4 tada

st i`e potvrda da je paket broj 0 spe{no primljen. Dakle, sada je sender saznao da

je paket broj 0 uspe{no prenesen i u slede}m trenutku (kada {al je paket 5) }e

izbrisat i iz bafera paket broj 0. U trenutku slanja paketa broj 5 st i`e potvrda oprispe}u paketa 1 tako da }e sender, kada {al je paket broj 6 pre nego {to ga

smest i u bafer obrisat i iz bafera paket broj 1. Odmah nakon slanja paketa 6 st i`e

potvrda o paketu broj 2. Dakle, kada sender krene da {al je slede}i paket (pake

broj 7) , pre upisa paketa 7 u bafer, on }e izbrisat i paket broj 2 iz bafera jer je za

njega st igla potvrda.

E, {ta se u me|uvremenu de{avalo?

Page 187: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 187/260

5/21 Marko Mili~i}

Sender je non-stop slao podatke iako ni je znao da l i su paket i prenet i bez gre{ke

On ih je za nedaj-bo`e stavl jao u bafer. Jedna takva nedaj-bo`e si tuaci ja je

nastala kada mu se izgubio paket broj 3.

Ris iver ima jedan speci jalni bafer u koj stavl ja sve pakete koj i st ignu do njega bez

gre{ke a ni je ga o~ekivao. Ris iver je primetio da mu je st igao paket 3 sa gre{kom

i umesto signala potvrde on {al je zahtev da se ponovo po{alje paket broj tr i .

Dakle, nakon slanja paketa broj 7, trebalo bi da mu st igne potvrda o paketu 3

me|utim po{to je paket o{te}en umesto potvrde si`e zahtev za ponovnim slanjem

paketa broj 3. Zbog ovoga, umesto da se nakon slanja paketa broj 7 {al je paket

broj 8, sender mora da ponovo po{alje paket broj 3. U trenutku ovog slanja

trebalo bi da st igne potvrda o paketu broj 4. Me|utim, iako je paket dobro st igao

njegova potvrda je izgubljena u kanalu, tako da do sendera ne dolazi potvrda. On

ovo shvata isto kao da se izgubio sam paket. Dakle, odmah nakon ponovnog

slanja paketa broj 3 {al je se paket broj 4 jer je i on o{te}en. U trenutku kada se

ponovo {al je paket broj 4 treba da st igne potvrda za paket broj 5, tako da }e u

narednom trenutku, kada se {al je paket broj 8, iz bafera bit i izba~en paket broj 5.

Detal jno sam opisao postupak o nastajanja gre{aka i za vreme otklanjanja

gre{aka, dal j i tok transmisi je }e bit i potpuno analogan onom po~etnom delu

transmisi je bez gre{aka i stoga ga je suvi{no opisivat i i komentarisat i !

Page 188: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 188/260

6/21 Marko Mili~i}

Zadatak:  Predajnik i pri jemnik se nalaze na udaljenost i od 1000 Km, a prenos

poruka se obavl ja pod kontrolom protokola Go Back N  sa vl i~ inom prozora 7 i u

predajniku i u pri jemniku. Paket i su vel i~ ine 1000b. Signal se kroz kanal prost ire

brzinom od 2*108m/s

 -  Odredit i brzinu slanja podataka tako da iskori{}enost kanala u slu~aju da u

njemu ne nastaju gre{ke bude 50%

 -  Za brzinu slanja podataka dobijenu iz predhodne ta~ke, izra~unat i iskori{}enos

kanala u slu~aju da je verovatno}a naru{enost i nekog bita u poruci E=2*10 -5 .

NAPOMENA:

Iskori{}enost kanala se ra~una po formuli :

( )

( )( )⎪

⎪⎪⎨

+⋅

+−+⋅

+⋅≥+−

=12,

112

1

12,21

1

aw

wP  P a

 P w

awaP 

 P 

U p

 

Re{enje:

D=1000 Km

W=7

L=1000b

V=2*108m/s

a)

U>0.5

Sa gre{kama:

( )( )( )⎪

⎪⎩

⎪⎪⎨⎧

+⋅+−+⋅

+⋅≥+−

=12,

112

1

12,21

1

awwP  P a

 P w

awaP  P 

U p

 

Page 189: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 189/260

7/21 Marko Mili~i}

Bez gre{aka:

( )⎪⎩

⎪⎨⎧

+⋅+⋅

+⋅≥=

12,12

12,1

awa

waw

U p

 

 sb D

 LV  R

wa

aw

aw

VL

 RDa

/10135.6

5.65.0

5.0

5.012

5⋅=⋅⋅

=−

++

=

p

p

f

f

 

b)

( )( )

( ) ( )  58.0

68.1

92.0

84.02

92.0

14.098.02

98.0

702.002.0114

029.017

029.011

1025.6

1000

5

==⋅

=−

=⋅−−

−=

=−−=

⋅==

 E  P 

 E a

 

Page 190: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 190/260

8/21 Marko Mili~i}

Zadatak : Prikazat i saobra}aj izme|u 2 IMP-a, ako se korist i protokol Go Back N za

kontrolu toka protoka. Paket i su vel i~ ine 1000b, brzina prenosa je 100 Kb/s,

ka{njenje ful l-duplex l ini je je 10 mikrosekundi, a razdalj ina izme|u IMP-a je 2000

Km. Pretpostavi t i da su INFO3 i ACK5 naru{eni. (Numeraci ja po~inje od nule) . Ako

su vel i~ ine predajnog i pri jemnog bafera 7 poruka , predlo`i t i vel i~ inu prozora

objasnit i kako treba vr{i t i numeraci ju poruka, da ne bi do{lo do kol iz i je.

 Ttimeout = 1s.

Objasnit i pri lo`eno re{enje!

Re{enje:

 sTimeout 

 Km D

 s

 Kb R

b L

1

7

2000

10101

100

1000

6

=

=

=

⋅=

=

=

−  

( )⎪⎩

⎪⎨⎧

+⋅+⋅

+⋅≥=

12,12

12,1

awa

waw

U p

 

2.021

1

512

2048.2

=+

=

=+

≈==

aU 

a

 LV 

 RDa

 

10010

1

100097.0

102400

1000

=

≈===

ms

 s

ms

 s

b

bTframe

 R

 L

 

Page 191: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 191/260

9/21 Marko Mili~i}

Dakle, u toku jednog TimeOut-a mo`e se prenet i 100 poruka. Po{to je ovo

ogroman t ime out interval, moramo regulisat i vel i~ inu prozora. Moj predlog je da

vel i~ ina prozora bude 8 poruka, da bi odmah po pra`njenju prozora moglo da se

odreaguje na nedolazak potvrde za frejm broj 3. Drugo re{enje je da se korist

NACK signal, al i ja misl im da je bol je korist i t i kra}i prozor u ovom slu~aju.

Saobra}aj se mo`e prikazat i slede}om sl ikom!

0

0 0 0 0 0

1 1 1 1

1

2 2 2

2

2

3 3

3

3

3

4

4

4

4

5

5

5

6

6

7

1

0   1

2

2

3

3

4   5   6 7   3

3

3

4

3

4

4

5

3 3 3

4 4 4

5 5 5

5

6

6 6

7

4

5

6

7

7

8

8

5

6

7

8

0

6

7

8

0

0

1

1

6   7

7

8

0

1

2

2

 

Page 192: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 192/260

10/21 Marko Mili~i}

Zadatak:  Prikazat i saobra}aj izme|u 2 radne stanice koje koriste selekt ivnu

retransmisi ju  za kontrolu toka podataka na transportnom nivou. Paket i su vel i~ ine

1000 b, brzina slanja je 100 Kb/s, ka{njenje ful l-duplex l ini je je 10 µs/KM, a

razdalj ina izme|u stanica iznosi 2000 KM.

Pretpostavi t i da su INFO4 i ACK5 ramovi naru{eni. Ako su vel i~ ine predajnog

pri jemnog bafera po 7 Kb, objasnit i kako treba vr{i t i numeraci ju poruka da ne b

do{lo do kol iz i je. Predlo`i t i >>optimalnu<< du`inu t ime-out intervala ( i obrazlo`i t

predlo`enu vrednost ) .

Re{enje:

m Kmd 

 s

mV 

 Km

 s

 s

b

 s

 Kb R

b L

6

8

1022000

10

1

101

102400100

1000

⋅==

=

=

==

=

µ  

512

048.2

≈+⋅

=⋅⋅

=

a

V  L

d  Ra

 

Bafer = 7 dakle, w=7

Po{to je w=7 vr{imo numerisanje po modulu 14 (%14).

Page 193: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 193/260

11/21 Marko Mili~i}

0

0

1

1

2

2

3

3

4

4

5

5

6

6

7

7

8

8

9

9

10

10

4

4

5

5

8 9 10 11 120 0 0 0 0

1 1 1 1

1

2 2 22

2

3 33

3

3

44

44

4 4 4 4 4 4 4 4

55

55 5 5 5 5 5 5 5

5

11

11

12

66

6 6 6

77 7 7

7

8 8 88

8

9 99

99

1010

1010

10

 Time out

 

 Ttimeout:

msTtimeput    68102400

7000==  

 Timeout treba da iznosi onol iko vremena koliko je potrebno da se prenese 7

paketa vel i~ ine 1000b brzinom 102400 b/s. Ovim se omogu}ava minimalizaci ja

ka{njenja t j . latenci je.

Ovim je zadatak zavr{en!

Page 194: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 194/260

12/21 Marko Mili~i}

Zadatak: Za protokol Stop & wait odredit i :

A) Vel i~ inu paketa ( frame -a), ako je brzina slanja 4Kb/s, propagaciono ka{njenje

20ms, vel i~ ina zaglavl ja 20b, vel i~ ina ACK/NAK paketa je 20b, brzina obrade

signala na izvoru i odredi{tu je 64Kb/s, tako da iskori{}enost kanala bude vi{e od

50%;

B) Za datu vel i~ inu paketa odredit i frekvenci ju gre{ke (bit error rate

) , tako daiskori{}enost kanala bude ve}a od 30%.

Re{enje:

A)

%50

64

20/

20

20

4

?

>

=

=

=

=

=

=

 s

 KbVab

b NACK  ACK 

b ZAG

msTpropS 

 Kb R

 L

 

%50==

=

=

=

++++=

Tuk 

TfrejmaU 

 R

 Lak Tack 

Vobr 

 LTobr 

 R

 LTfrejma

TpropTack Tobr TpropTfrejmaTuk 

 

152

172

31.4011

31.0/64

2040

0

2

22

=

=

=⎟ ⎠

 ⎞⎜⎝ 

⎛  −

=+=−

+=−

+++=

 Lpak 

 L

msVob R

 L

ms s Kb

bms

br V 

 L

 R

 L

Tack TpropTobr Tf  

Tack Tobr TpropTf  Tf  

 

Page 195: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 195/260

13/21 Marko Mili~i}

B)

( )

 E 

 E  P 

 Nr  P 

Uer 

U  Nr 

 Nr 

U Uer 

 Lfrejma

 Lfrejma

−−==

==−

===

=

=

114.0

6.01

1

66.130

50

172

 

Page 196: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 196/260

14/21 Marko Mili~i}

Zadatak:  Ra~unari A i B komuniciraju po protokolu Go Back N . Propagaciono

ka{njenje zadato funkci jom na sl ic i . U slu~aju da ra~unar A samo {al je, a B samo

prima poruke, skic irat i saobra}aj (prvih 5 poruka) ako su i vel i~ ina prozora

vel i~ ina bafera u predajniku po 3 poruke.

Uporedit i efikasnost  saobra}aja u slu~aju da se koriste NAK  ramovi u odnosu na

retransmisi ju samo na osnovu isteka t ime-out-a (bez NAK-a). Na osnovu sl ika

odredit i kol iko je potrebno vremena da se prenese 5 ramova ovim metodama (sa

bez NAK-a).

Re{enje:

Ova tabla nam otkriva odnos izme|u vremena propagaci je i vremena potrebnog za

slanje poruke (frejma). Sa sl ike se vidi da je:

3 _  _ 

2 _  _ 

1 _  _ 

3 _  _ 

2 _  _ 

=

=

=

=

=

 poruku petu zaTfrm

Tprop

 porukucetvrtu zaTfrm

Tprop

 porukutrecu zaTfrm

Tprop

 porukudrugu zaTfrm

Tprop

 poruku prvu zaTfrm

Tprop

 

Odavde zakl ju~ujemo da je propagaciono ka{njenje:

 - prve poruke jednako 2Tfrm

 - druge poruke jednako 3Tfrm

Page 197: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 197/260

15/21 Marko Mili~i}

i td . . .

Sada, daj da vidimo kol iko je ukupno vr emena potrebno:

 Tuk=Tfrm + Tprop + Tobr + Tack + Tprop

Dakle, ukupno potrebno vreme je u op{tem slu~aju jednako zbiru vremena

potrebnog za slanje frejma (Tfrm), propagacionog ka{njenja (Tprop), vremena

obrate (Tobr) , Vremena potrebnog za slanje potvrde (Tack) i ponovo propagacionog

ka{njenja al i ovog puta za ack signal.

 Tuk=Tfrm + Tprop + Tobr + Tack + Tprop

Po{to }emo da zanemarimo vreme obrade i vreme slanja ACK signala dobi}emo:

 Tuk=Tfrm + Tprop + Tprop = Tfrm + 2Tprop

 Tuk1=5Tfrm

 Tuk2=7Tfrm

 Tuk3=3Tfrm

Bez NACK!

0

0

1

0 0

1

2

0

1

2

12

0

0

1

2

1

0

1

2

2

1

2

0   12

3

1

2

3   4

0   1   2

3

2

4

3

2

2

2

3

4

4

4

2

3

4

4

4

 

Page 198: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 198/260

16/21 Marko Mili~i}

Zadatak:  Ako se kontrola toka obavl ja po protokolu Go Back N , odredit i grani~nu

brzinu slanja podataka, tako da iskori{}enost kanala bude 100% u slu~aju da ne

nastaju gre{ke u prenosu. Vel i~ ina prozora u predajniku je 5, rastojanje predajnika

i pri jemnika je 5000km, a brzina prenosa signala je 2*10 8  m/s. Neka je vel i~ ina

paketa 1000b.

 - Da l i je dobijena brzina minimalna i l i maksimalna za slu~aj potpune

iskori{}enost i kanala?

 -  Za prethodno izra~unatu brzinu slanja nacrtat i razmenu paketa u slu~aju da su

izgubljeni INFO1 i ACK3.

 -  Objasnit i , kako bi naj lak{e bio izbegnut zastoj u slanju ako bi ACK0 zakasnio

12ms.

5

5000

/10

?

1000

8

=

=

=

==

 Km D

 smV 

 R

b L

 

( )⎪⎩

⎪⎨⎧

+⋅+⋅

+⋅≥=

12,12

12,1

awa

waw

U p

 

 LV 

 RDa =  

2

125

12

<=

+>=

+>=

a

a

aw

 

Da bi iskori{}enost bi la 100% a mora bit i manje od 2!

 s Kb sb D

aVL RaVL RD   /80/80000   ===⇒=  

Ako je manje a, manja je i brzina, a po{to je ovo ra~unato za maksimalno a,

onda je ovo maksimalna brzina. Kada bi R1 bi lo ve}e od R, onda bi a1 bi lo ve}e

od a, a to ne bi bi lo dobro jer bi tada efikasnost opala!

Page 199: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 199/260

17/21 Marko Mili~i}

Sl ika koja predstavl ja saobra}aj izme|u dva ra~unara u slu~aju da su naru{en

INFO1 i ACK3 frejmovi.

0

0 0 0 0 01 1 1 1 1

2 2 2

2

3 33

445

1

0 E

2

D

3 4 5 1 2 3

3

4

34

5

345

0 1 2 3 4

1   12 12 12 12 3

45

2

0

34

501

45

012

50

123

01

234

D D D 1 2 3 4 5 0 1 2 3 4

0   1 2 3 4 5 0 1 2 3 4  

Potrebna nam je informaci ja o t ime-out intervalu.

Po{to znam da bafer prima 5 paketa, idealno bi bi lo da t ime-out bude jednak

vremenu potrebnom za slanje 5 poruka. Dakle, to vreme je jednako proizvodu

5*L/R=TimeOut:

ms

 s

b

bTframe

 R

 L5.120125.0

80000

1000≈===  

Dakle, jednom frejmu je potrebno 12.5 ms da st igne do odredi{ta. Ukupan t ime-

out interval bi bio: 5*12.5 = 62.5ms

Najlak{i na~in za izbegavanje zagu{enja je da produ`imo t ime-out interval za

vreme ka{njenja frejma INFO0, {to za sobom poval~i pove}avanje pr ozora za jednomesto. Naravno, ukol iko bi pove}al i prozor za jedno mesto, onda bi nam bio

potreban ve}i skup za numeraci ju frejmova jer znamo da je n=w+1 za go-backN t j

numeri{emo po modulu w+1.

Page 200: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 200/260

18/21 Marko Mili~i}

Primer za Go-back-N

Go-back-n protokol ima bafer vel i~ ine 1 na pri jemnoj strani. Kada st igne potvrda

za frejm koj i se nalazi na dnu prozora na predajnoj strani, to zna~i da je ova

paket uspe{no prene{en i da se prozor mo`e pomerit i za jedno mesto na gore.

Pri l ikom svakog slanja frejma, setuje se tajmer. Ukol iko potvrda st igne pre nego

{to tajmer istekne, tajmer se cancel-uje. Me|utim, ukol iko tajmer istekne, svi ostal

tajmer koj i nisu istekl i , mogu se cancel-ovat i . Sada je potrebno da se retransmituje

ceo prozor frejmova po~ev{i sa frejmm najmanjeg broja koj i n i je potvr|en.

Na pri jemnoj strani postoj i prozor vel i~ ine 1. Svi frejmovi koj i ne pripadaju ovom

prozoru moraju bit i odba~eni. Naravno, frejm koj i pripada ovom prozoru se

korektno prima, i za njega se {al je potvrda.

[ta se de{ava ako se izgubi potvrda u kanalu?

Ukoliko se izgubi potvrda za frejm 3, a prva potvrda koju predajnik primi je za

frejm broj 4, onda on vrlo lako mo`e da zakl ju~i da je frejm 3 uspe{no prenet

preko komunikacionog kanala, jer u prot ivnom nikako ne bi mogla da bude

generisana potvrda za frejm broj 4.

Frejmovi 1 i2 su poslat i i primljeni bez gre{ke.

Frejm 3 je poslat , al i nastala je gre{ka u komunikacionom kanalu i on ni je

korektno primljen.

Page 201: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 201/260

19/21 Marko Mili~i}

Dakle, poslednj i ACK signal generisan je za frejm broj 2. Iako frejmovi 4 i

5 st i`u bez gre{ke, za nj ih ne}e bit i generisan ACK signal jer odredi{te

o~ekuje frejm broj 3.

Posle izvesnog vremena, tajmer koj i je setovan kada je poslat frejm broj 3

}e iste}i .

Ovde je va`no primeti i t i , da je jednino va`no koj i je prvi frejm do`iveo

gre{ku u kanalu. Svi frejmovi koj i st i`u posle takvog fr ejma tret iraju se kao

da su pretrpel i gre{ku (~ak iako mo`da i nisu). Dakle, jedno je bitna prva

gre{ka.

Nakon {to istekne tajmer, svi frejmovi iz prozora u predajniku se ponovo

{al ju kroz komunikacioni kanal. Dakle, to }e bit i frejmovi broj: 3, 4, 5 i td.

Page 202: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 202/260

20/21 Marko Mili~i}

Primer za Selekt ivnu retransmisi ju !

Protokol Select ive Retransmit ion poku{ava da redukuje broj retransmitovanih paketa

tako {to poku{ava da sa~uva maksimalni broj paket i}a koj i su korektno prispel i u

odredi{te. On to ~ini pove}avaju}i bafer u pri jemniku t j . odredi{tu. Dakle

predajnikov prozor je sada ve}i od jedne pozici je, kao {to je to bio slu~aj u tehnic

Go-Back-N.

Kada frejm prist igne, njemu se proverava redni broj. Ako je njegov broj jednak

najmanjem broju u okviru pri jemnikovog prozora, onda se taj frejm prosle|uje na

mre`ni nivo a prozor se pomera za jedno mesto na gore. Me|utim, ukol iko njegov

broj ni je jedank najmanjem broju u okviru prozora, a ipak je u okviru prozora

onda }e taj frejm bit i sa~uvan u lokalnom baferu. Tada se {al je potvrda o

poslednjem korektno primljenom frejmu.

U slu~aju da frejm koga smo o~ekival i st igne sa zaka{njenjem, onda se on

prosle|uje na mre`ni nivo. Tako|e se u mre`ni nivo prosle|uju svi frejmovi koj i su

privremeno sme{teni u pri jemnom baferu. Ovoga puta, potvrda se {al je za frejm

koji je poslednj i poslat na mre`ni nivo!

Primer za ovaj protokol je dat slede}om ilustraci jom:

Page 203: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 203/260

21/21 Marko Mili~i}

Ukratko }u komentarisat i kako te~e razmena frejmova i poku{at i da t ime objasnim

na~in funkcionisanja ovog protokola!

Kao prvo vel i~ ina predajnog i pri jemnog prozora je ista i iznosi 8 pozici ja.

Na samom po~etku, prozori na obe strane obuhvataju frejmove

1,2,3,4,5,6,7 i 8.

Prvo se {al je frejm broj 1, on uspe{no st i`e na odredi{te i po{to je u

pri jemnom prozoru on jednak sa najmanjim brojem prozora, on odmah

biva prosle|en na mre`ni nivo. Odmah nakon toga prozor u pri jemniku se

pomera za jedno mesto na gore, tako da sada prozor u pri jemniku

obuhvata brojeve 2,3,4,5,6,7,8 i 9.

Isto se de{ava sa frejmom 2 i nakon njegovog prosle|ivanja u mre`n

nivo, pri jemni prozor sadr`i brojeve 3,4,5,6,7,8,9 i 10.

Sada treba da st igne frejm 3. Me|utim, on se negde na putu o{tet io i na

pri jemu biva ignorisan. U tom trenutku se ne generi{ i nikakva potvrda.

Sada korektno prist i`e paket sa rednim brojem 4. Po{to on pripada

prozoru, al i ni je trenutno o~ekivan, on biva sa~uvan u baferu. Ovoga puta

se generi{e potvrda za poslednj i frejm koj i je prosle|en mre`nom nivou

Dakle, potvr|uje se frejm 2.

U trenutku kada je korektno prist igao frejm 4 prozor u pri jemniku je

obuhvatao brojeve 3,4,5,6,7,8,9 i 10. Nezavisno od toga {to je nastala

gre{ka, prozor u predajniku mora da se isprazni i emituju se svi paket i} i

nakon ~etvrtog. Dakle, 5,6,7,8,9 i 10. Nakon emitovanog desetog frejma{alje se ponovo tre}i frejm.

Kada prist igne tre}i frejm prozor u pri jemiku obuhvata brojeve

3,4,5,6,7,8,9 i 10. Tada se prihvata tre}i frejm. Po{to je on prvi u prozoru

on se odmah prosle|uje mre`nom nivou. Naravno, odmah za nj im se

prosle|uju i svi prikupl jeni frejmovi iz bafera.

Kada se svi ovi paket i} i proslede na mre`ni nivo prozor obuhvata brojeve

11,12,13,14,15,16,17 i 18.

Po inerci j i po{i l jalac {al je i pakete 4,5 i 6 nakon slanja tre}eg paketa

Po{to je u trenutku kada st i`u paket i 4,5 i 6 prozor na pri jemnoj strani od

11 do 18, ovi frejmovi bivaju ignorisani. Onog trenutka kada st igne potvrda

nastala pri l ikom uspe{noga prispe}a paketa broj 4, promeni}e se opseg

prozora na predajnoj strani. Dakle, kada predajnik primi ACK10 odmh }e

podesit i svoj prozor na opseg od 11 do 18 frejma.

Page 204: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 204/260

1/12 Marko Mili~i}

Zadatak : Projektovat i mre`u zasnovanu na token-ring arhitekturi za radnu

organizaci ju ~i ja je {ema prostori ja data na sl .1.

S l .1. [ema rasporeda prostori ja i ra~unara jedne radne organizaci je

Radi lak{eg izra~unavanja smatrat i da se svi ra~unari du` nekog zida nalaze na

njegovoj sredini . Ruteri , mostovi , habovi mogu se nalazi t i samo na mest ima za

povezivanje, a kablovi , ~i ja pojedina~na du`ina ne sme da pre|e 150m , moraju

prolazi t i kroz odgovaraju}e kanale u podu/zidovima (vidi sl iku) . Ni je dozvol jeno da

saobra}aj jedne prostori je ugro`ava ostale (u drugu prostori ju mogu u}i samo

paket i namenjeni ra~unaru iz te prostori je) . Maksimalan broj ra~unara po prstenu

je 24 .

Skic irat i predlo`eno re{enje, pobrojat i upotrebl jene komponente ( t ip i broj )

izra~unat i cenu takvog re{enja. Cenovnik komponent i dat je u nastavku:

Cenovnik:

RJ-45(UTP) 1$/m IBM 8228 MAU (HUB sa 8 porta) 600$TR kabl tipa 1 i 2 1$/m IBM 8209 Bridge 300$Repeater sa dva porta 80$ Transparentni most 200$Router 1000$ Source Rout. most 100$

Re{enje:

Po{to moramo da korist imo Token Ring  arhitekturu, i to sa ograni~enjem da u

Ring-u ne sme bit i vi{e od 24 ra ~unara, idejno re{enje se samo name}e.

Page 205: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 205/260

2/12 Marko Mili~i}

Ring 1 Ring 2

Ring 3

Ring 4

Ring 5

 

Dakle, u sobi A }emo imati jedan prsten u kome }e se nalazi t i svi ra~unari (nj ih

15). Soba B }e svoj ih 18 ra~unara tako|e umre`it i u jedan prsten, jer jo{ uvek ne

prelazimo l imit od 24 ra~unara u jednom Ringu. Me|utim, problemati~na je soba

C, u kojoj ima 48 ra~unara. Teoretski bi moglo da se svi ra~unari u sobi C pove`u

u dva Ring-a al i zbog neophodnost i da ovakva mre`a bude povezana sa ostale

dve, moramo se odlu~i t i za vari jantu umre`avanja pomo}u tr i Ring-a. U tom

slu~aju u svakom ring-u }e bit i po 16 ra~unara.

Detal jna {ema:

3x15m

2x95m

6x55m

4x25m

8x55m

Ova linije predstavlja

skup od 8 kablova!

6x55m

Ova linije predstavlja

skup od 6 kablova!

30m130m

32x65m

15x60m

4x15m

Dakle, potrebno je:

12 MAU-a

Page 206: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 206/260

3/12 Marko Mili~i}

5 Source Rout ing Bridge-a

Potrebno je 4355 m koaksi jalnog kabla

Dakle, iz ove specif ikaci je mo`emo izra~unari cenu mre`ne arhitekture!

12 MAU-a ko{taju 12*600$ = 7200$

5 SR Bridge-a = 5*100$ = 500$

4355*1$ = 4355$ za kabl

Ukupno potrebno:

12055$

Prva soba ima 15 ra~unara i zato nam je potrebno 2 MAU-a. Oni zajedno imaju 16

prik l ju~ka, al i jedan od nj ih je potreban za povezivanje ka prostori j i C tako da su

svi prik l ju~ci iskori{}eni.

Page 207: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 207/260

4/12 Marko Mili~i}

Soba B ima 18 ra~unara. Tako da je minimalan broj MAU-a 3. Oni ukupno imaju

24 prik l ju~ka tako da 6 prik l ju~aka ostaju neiskori{}eni. Naime, jedan od ta 6 }e

se iskorist i t i za povezivanje ka sobi C, tako da }e ostat i 5 neiskori{}ena prik l ju~ka.

Soba C ima 48 ra~unara i plus mora da prihvat i ulaze iz predhodne dve sobe.

Naravno, zbog toga {to je soba C organizovana kao 3 ring-a u sobi C mora bit i

infrastruktura koja }e podr`at i vezu izme|u t ih ringova. Dakle, soba C je pri l i~no

slo`ena.

Prvo, u jedan od ova tr i r inga, treba sprovest i kablove iz predhodne dve sobe

Kada to uradimo taj r ing ima vezu ka svim ra~unarima. OK posao za sada ide

dobro. Sada treba napravit i ostala dva ringa i nj ih povezat i me|usobno na ist

Page 208: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 208/260

5/12 Marko Mili~i}

na~in na koj i je prvi r ing u sobi C uspeo da pove`e ostale dve sobe. Dakle, ta

prvi r ing koj i smo napravi l i t reba da ima dva Source Rout ing Bridge-a koj i }e

povezivat i ostala dva ringa u ovoj sobi. Naravno to ni je sve. Treba nam jo{ jedan

Source Rout ing Bridge, da bi povezao drugi i tre}i r ing sobe C. Ovo je neophodno

da bi svi r ingovi mogli nesmetano da komuniciraja. Smetanje u komunikaci j i b

predstavl jala uzajamna iskl ju~ivost pri komunikaci j i !

Dakle, da rezimiramo potrebno nam je:

12 MAU-a

5 Source Rout ing Bridge-a (Jedan za sobu A, 1 za sobu B i tr i za sobu C)

Potrebno je 4355 m koaksi jalnog kabla

Page 209: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 209/260

6/12 Marko Mili~i}

ZADATAK:  Na sl ic i 1. Prikazan je raspored prostori ja jedne radne organizaci je. U

prostori j i A treba formirat i Token Ring  mre`u (na raspolaganju su MAU sa 8

portova), a u prostori j i B - 10BASE2 Ethernet mre`u. Predlo`i t i t ip mre`e u prostori j

C i obrazlo`i t i izabrano re{enje. Omogu}it i uzajamno povezivanje mre`a u svim

prostori jam. Svu opremu, izuzev kablova za povezivanje i krajnj ih ra~unara,

dozvol jeno je smest i t i samo na mest ima za povezivanje.

Skic irat i predlo`eno re{enje, pobrojat i upotrebl jene komponente ( t ip i broj )

Objasnit i da l i ponu|eno re{enje omogu}uje da svaka od prostori ja ima zaseban

mre`ni protokol (komponentu mre`nog nivoa). Ukol iko to ni je slu~aj ukazat i na

modif ikaci ju koja bi to omogu}i la.

Detal jna {ema:

8linija

7linija

12 linija

 T konektor Terminator

 Terminator

 T konektor

8209

10 base 2 Token RingMre`a

 TB

10 base T

6 linija

 

A B

C

Page 210: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 210/260

7/12 Marko Mili~i}

Specif ikaci ja komponent i :

2 MAU-a

1 8209 Bridge

1 Transparent bridge

8 Hub-a

19 T Konektora

2 terminatora

9-pinski kabla za Token Ring mre`u (Tip 1 i 2)

UTP za 10 base T (RJ-45)

Koaksi jalni ( tanki ) za 10 base 2 (RG-58)

Obvo je detal jni r ikaz veza u sobi A

Page 211: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 211/260

8/12 Marko Mili~i}

Page 212: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 212/260

9/12 Marko Mili~i}

Page 213: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 213/260

10/12 Marko Mili~i}

ZADATAK: Za organizaci ju prikazanu na sl ic i projektovat i LAN zasnovan na

10BASE T specif ikaci j i .

a) Pobrojat i pravi la povezivanja za ovaj t ip mre`e.

b) Skic irat i predlo`eno re{enje.

c) Odredit i ukupnu du`inu kabla i potreban broj dodatnih komponent i za

predlo`eno re{enje.

Napomena: Kabl i komponente za povezivanje mogu se na}i samo u {rafiranim

delovima objekta. Ne uzimati u obzir dodatnu du`inu usled savi janja kabla.

Re{enje:

a)

Pravi la konfigurisanja za povezivanjepomo}u koncentratora (HUB-ova).

Najvi{e 4 HUB-a na putu izme|u bilo koje dve stanice.

UTP segmenti ne smeju bit i du`I od 100 metara ( u praksi se uvek

postavl jaju upola manje vrednost i ) i moraju bit i ve}i od 60 cm.

Hub se tret ira kao stanica i tu se vr{i broadcast

Page 214: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 214/260

11/12 Marko Mili~i}

Fiz i~ka topologi ja je zvezdasta, a logi~ka je topologi ja BUS-a ( jedan {al je

a dostupno je svima). Dakle, sve {to hab dobije na jedan ulaz, on {al je na

sve ostale.

Korist i se UTP kabl od 100 oma sa RJ-45 konektorima

b)

5m

3m

Ovo je mesto za HUB

 

Potrebno je 2 10BT HUB-a sa 8 po rta

RJ konektori , komada 16*2=32

Potrebno je:

3*(5+3+2.5)=31.5m

0.6m

13m

Page 215: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 215/260

12/12 Marko Mili~i}

11m

16m

3*2.5=7.5m

8

3+3*2.5=10.5

Ukupno: oko 100 m UTP kabla!

Page 216: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 216/260

1/3 Marko Mili~i}

Zadatak: Ako je poruka M(x)=101101011 i ako je generatorski pol inom G(x)=10101

na}i poruku sa CRC-om!

Dodajemo 4 nule zato {to je generatorski pol inom G(x) n=5 -og stepena a m

uzimamo n-1 nula za dodavanje.

101101011 

Sada treba podeli t i ovako pro{irenu M(x) sa generatorskim polinomom G(x)=10101

Pri del jenju nas ne interesuje re{enje ve} samo o statak. Upravo zbog toga del jenje

obavl jamo na slede}i na~in:

1011010110000:10101=

10101

11101

10101

10000

10101

10100

10101

1

Dakle ostatak je jedan. Treba primet i t i da smo ovde vr{i l i sabiranja po modulu dva

t j . ni je bi lo ni prenosa ni pozajmica.

Sada taj ostatak sa brojem cifara n-1 dopisujemo na originalno M(x) i dobijamo

CRC poruke M(x) .

 T(X) = 1011010110001

Page 217: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 217/260

2/3 Marko Mili~i}

ZADATAK: Na primeru mre`e date na sl ic i 1: o bjasnit i postupak nala`enja najkra}eg

puta od stanice A do stanice C, prikazat i sadr`aje RD polja svih ramova prist igl ih

do stanice C i odredit i najkra}i put i obrazlo`i t i {ta sve mo`e ut icat i na izbo

najkra}eg puta.

(Napomena: Na sl ic i su krugovima ozna~eni prstenovi, {estougaobicima - mostovi

a kvadrat ima - radne stanice. Ident i f ikacioni brojevi prstena i mostova dat i su na

samoj sl ic i . )

Re{enje:

RD1 RD2 RD3 RD4 RD5 RD6

1-9 AC1-1 BF3-9 BF4-0

1-2-3 AC1-1 BF3-2 AC2-3 BF4-0

1-2-6-4 AC1-1 B F3-2 AC2-6 AC3-4 BF4-0

1-2-7 -A-4 AC1-1 B F3 -2 AC2-7 A32-A AC3-4 BF4 -0

5-2-9 AC1-5 AC2-2 BF3-9 BF4-0

5-3 AC1-5 AC2-3 BF4-0

5-6-4 AC1-5 AC2-6 AC3-4 B F4 -0

5-7-A-4 AC1-5 AC2-7 A32-A AC3-4 BF4-0

8-7-2-9 AC1-8 A32-7 AC2-2 BF3-9 B F4-0

Page 218: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 218/260

3/3 Marko Mili~i}

8-7-3 AC1-8 A32-7 AC2-3 B F4-0

8-7-6-4 AC1-8 A32-7 AC2-6 AC3-4 BF4-0

8-A-6-2-9 AC1-8 A32-A AC3-6 AC2-2 BF3-9 B F4 -0

8-A-6-3 AC1-8 A32-A AC3-6 AC2-3 BF4-0

8-A-4 AC1-8 A32-A AC3-4 B F4 -0

Page 219: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 219/260

1/29 Marko Mili~i}

Zadatak: Napisat i program na Javi koj im se simulira rad kl i jenta po protokolu Stop

Wait  (sa mogu}om pojavom naru{avanja i gubitka paketa u kanalu) . Server se

nalazi na adresi 160.99.34.311  na portu 1721 , a za prenos poruka korist i se UDP

(User Datagram Protocol ) .

Import java.io.*;

Import java.net.*;

Class UDPKli jent

{

Publ ic Static Void Main(Str ing Args []) Throws Exception

{

BufferedReader unos = new BufferedReader(new InputStreamReader (System.in)) ;

DatagramSocket kanal = new DatagramSocket();

InetAddress IPAddress = InetAddress.getByName(“hostname”);

byte[] zaslanje = new byte[1024];

byte NextFrameToSend = 0;

byte[] zapr i jem = new byte[1024];

Str ing poruka = unos.ReadLine();

Zaslanje = poruka.getbytes() ;

While(True)

{

Zaslanje[0] = nextframetosend;

Datagrampacket spacket = new datagrampacket(zaslanje, zaslanje.lenght,

“160.99.34.311”,1721)

Kanal.send(spaket) ;

Datagrampacket ppaket = new satagrampacket (zapr i jem, zapri jem.lenght) ;

Kanal.receive(rpaket) ;

Str ing odgovor = new str ing(rpaket.getbytes());

I f(odgovor[0] == nextframetosend)

{

Uzmipodatke(zaslanje);

I f (nextframetosend <1)

Page 220: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 220/260

2/29 Marko Mili~i}

Nextframetosend ++;

Else nextframetosend = 0;

}

Poruka = unos.readl ine() ;

Zaslanje = poruka.getbytes() ;

}

Kanal.close();

}

}

Page 221: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 221/260

3/29 Marko Mili~i}

Zadatak:  Napisat i server-aplikaci ju u Javi koja kontrolu toka paketa obavl ja po

protokolu Stop Wait  (smatrat i da paket i ne mogu bit i izgubljeni i l i u{te}eni u

kanalu) . Apl ikaci ja korist i UDP  protokol za razmenu podataka sa kl i jentom i nalaz

se na portu 1678 .

Re{enje:

import java.io.*;

import java.net.*;

class SAWServer

{

publ ic stat ic void main(Str ing args[]) throws Exception

{

DatagramSocket serverSocket = new DatagramSocket(1678);

byte[] receiveData = new byte[1024];

byte[] sendData = new byte[1024];

whi le ( true)

{

DatagramPacket receivePacket=new DatagramPacket(receiveData,

receiveData.length);

serverSocket.receive(receivePacket) ;

Str ing sentence=new Str ing(receivePacket.getData()) ;

InetAddress IPAddress=receivePacket.getAddress();

int port=receivePacket.getPort() ;

Str ing capital izedSentence=sentence.toUpperCase();

sendData=capital izedSentence.getBytes() ;

DatgramPacket sendPacket=new

DatagramPacket(sendData,sendData.length,IPAddress,port) ;

serverSocket.send(sendPacket) ;

} / /whi le

}//main

}//class

Page 222: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 222/260

4/29 Marko Mili~i}

Zadatak: Napisat i funkci ju na C-u koja vr{i izra~unavanje Internet ChechSume

Ukoliko je originalna poruka oblika: F10674A578549D34, napisat i kako izgleda

poruka koja se {al je na kanal, t j . nakon primene prethodne funkci je za

izra~unavanje kontrolne sume.

#define Bajt=256;

#define Rec=65536;

char* InternetCheckSum (char*  Niz, int  N)

{

unsigned Suma = 0;

int   I ;

for  ( I=0; I<N; I++)

if (I%2==0)

{

Suma += (unsigned) Niz[I] ;

}

else

{

Sum += (unsigned) Niz[I]*Bajt;

}

While  (Suma >= Rec)

{

Suma = Suma/Rec + Suma%Rec;

}

Niz[N] = (char ) (255-Suma%Bajt) ;

Niz(N+1)=(char ) (255-Suma/Bajt) ;

Return Niz;

}

Page 223: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 223/260

5/29 Marko Mili~i}

DRUGA VARIJANTA (java)

int  InternetCheckSum (char* Data)

{

int  Sabirak = 0;

long Zbir = 0;

char  A,B;

int  Pozici ja = 1;

 A = Data[Pozici ja];

B = Data[Pozici ja+1];

while (A!=’\0’ && B!=’\0’)

{

Sabirak = (( int)A<<8) 9 ( int)B;

Zbir += ( long) Sabirak;

Pozici ja += 2;

}

int  Pom

while (Zbir > MAXINT)

{

Pom – int(Zbir) ;

Zbir >> 16;

Zbir += Pom;

}

Pom = int(Zbir) ;

return(Pom);

}

Page 224: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 224/260

6/29 Marko Mili~i}

Zadatak:  Napisat i server apl ikaci ju u Javi koja kontrolu toka paketa obavl ja po

protokolu Stop Wait  (sa mogu}no{}u gubitka paketa u kanalu) . Apl ikaci ja b

trebalo da se nalazi na portu 1789 i za prenos podataka korist i UDP protokol.

Import java.io.*;

Import java.net.*;

Class Rnit extends Thread

{

Public datagramPacket P;

Public DatagramSocket S;

Public byte ctr l ;

Publ ic Rnit (datagrampacket p1, datagramsocket s1)

{

P=p1;

S=s1;

Ctr l=0;

} //Rnit

Publ ic void run()

{

s.receive(p);

ctr l=1;

} //run

}//Class

Public stat ic void main (str ing args[]) throws exception

{

int brojac = 0;

datagramsocket kanal=new datagramsocket(1785);

byte[] poruka = new byte[1024];

Page 225: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 225/260

7/29 Marko Mili~i}

while ( true)

{

datagrampacket ppacket = new datagrampacket(poruka,poruka.lenght) ;

Rnit ni t = new Rnit(ppacket, kanal) ;

Nit.start() ;

While (nit .ctr l == 0) && brojac <20)

{

Sleep(50);

Brojac++;

}//whi le

brojac = 0;

nit .stop();

str ing odgovor = new str ing (“NACK”);

i f (ni t .ctr l == 1)

{

system.out.pr int ln (“Pr ist ig la poruka:” + poruka);

else

system.out.pr int ln(“Poruka ni je st igla za 1s”) ;

poruka = odgovor.getbytes() ;

PortAddress adr = ppaket.getaddress();

Int port = ppaket.getport() ;

Datagrampacket sport = new datagram packet(poruka,

poruka.lenght, adr,port) ;

Kanal.send(spaket) ;

} / / i f

kanal.close();

} / /whi le

}//main

Page 226: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 226/260

8/29 Marko Mili~i}

Zadatak:  Napisat i server-aplikaci ju u Javi koja kontrolu toka paketa obavl ja po

protokolu Stop Wait  (sa mogu}no{}u naru{avanja, al i ne i gubitka paketa u

kanalu) . Apl ikaci ja bi trebalo da se nalazi na portu 1728  i za prenos podataka

korist i UDP  protokol. Paket i su vel i~ ine 128B  i zadnja 4B  slu`e za sme{tanje

kontrolne sume. Podrazumevat i da postoj i funkci ja GetCRC  koja za dat i niz bajtova

ra~una kontrolnu sumu.

Import java.net.*;

Import java.io.*;

Class UDPServer

{

Publ ic stat ic void main(str ing args[]) throws Exception

{

Boolean pom = true;

Byte[] ack = new byte[3];

Str ing p = new str ing (”ACK”);

 Ack = p.getBytes();

datagramSocket kanal = new DatagramSocket(1728);

Byte[] poruka = new byte[133];

Byte[] podaci = new byte[128];

Byte[] crc = new byte[4];

While ( true)

{

DatagramPacket PPaket = new DatagramPacket (poruka,133);

Kanal.receive(Ppaket) ;

I f( !(pom && poruka[0])==1)

{

For ( int i=1; i<129; i++) podaci[ i -1] = poruka[i ] ;

Crc = getCRC(podaci) ;

Page 227: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 227/260

9/29 Marko Mili~i}

I f(CRC[0]==poruka[129] && CRC[1]==poruka[130] &&

CRC[2]==poruka[131] && CRC[3]==poruka[132])

{

System.Out.Pr intLn(podaci) ;

InetAddress adr = Ppaket.getAddress();

Int Port = Ppaket.getPort();

DatagramPacket Sport = new DatagramPacket(ACK,3,Adr,Port) ;

Kanal.send(Spaket) ;

Pom = true

}// i f

e lse

pom=false

}// i f

Else

{

Inetaddress adr = ppaket.getaddress();

Int port ppaket.getport() ;

Datagrampacket spaket=new datagrampacket

(ack,3,adr,port) ;

Kanal.send(spaket) ;

} / /whi le

}//main

}//class

Page 228: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 228/260

10/29 Marko Mili~i}

Zadatak:  Nacrtat i Algori tam i napisat i program u Javi koj im se simulira rad HTTP

kl i jenta, sposobnog da prihvat i samo tekstualne i HTML dokumente. Preuzet

dokumenti se prikazuju na standardnom izlazu, a veza se raskida odmah nakon

prenosa.

import java.io.*;

import java.net.*;

import java.uti l .* ;

class HTTPClient

{

publ ic stat ic void main (Str ing argv[]) throws Exception

{

Str ing imefaj la;

Str ing poruka;

BufferedReader odkorisnika = new BufferedReader (new InputStreamReader

(new inputstreamreader(system.in)) ;

Socket kanal = new Socket(“server”,80);

BufferedReader odservera = new BufferedReader (new InputStreamReader

(new inputstreamreader(kanal.getinputstream));

System.out.pr int ln(“/ ime faj la”) ;

Imefaj la = odkorisnika.readl ine() ;

Poruka = “get_” + imefaj la + “_http/1.0\n Accept:text/html\n”;

DataOutputStream kaserveru = new DataOutputStream

(kanal.getOutputStream());

Kaserveru.writebytes(poruka);

Poruka = odservera.readline();

Str ingtokenizer t = new str ingtokenizer(poruka);

i f ( t .nexttoken().equals(“http/1.0”) && t.nexttoken().equals(“200”)

{

Poruka = odservera.readl ine() ;

Page 229: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 229/260

11/29 Marko Mili~i}

Str ingtokenizer t1 = new str ingtokenizer(poruka);

Poruka = t1.nexttoken();

Int n = integer.parseint(poruka);

Poruka = odservera.readl ine() ;

Datainputstream ulaz = new datainputstream (kanal.getinputstream());

Fi le inbytes = new byte[n];

Ulaz.read(f i le inbytes,0,n);

System.out.pr int ln(poruka);

}

Else

System.out.pr int ln(“greska u transferu”) ;

Kanal.close();

}

}

Page 230: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 230/260

12/29 Marko Mili~i}

Zadatak:  Nacrtat i algori tam i napisat i program u Javi koj im se simulira proces

autorizaci je korisnika (dostavl janje korisni~kog imena i lozinke) kori{}enjem POP3

protokola. Ukol iko server vrat i poruku o nastaloj gre{ki (-ERR), ponovit i komandu

koju server ni je razumeo.

import java.io.*;

import java.net.*;

import java.uti l .* ;

class POP3Client

{

publ ic stat ic void main (Str ing args[]) throws Exception

{

Str ing kor ime;

Str ing sifra;

BufferedReader odkorisnika = new BufferedReader(new InputStreamReader

(system.in)) ;

Korime = odkorisnika.readLine();

si fra=FromUser.readLine();

Socket kanal = new Socket(“adresa”,110);

DataOutputStream zaserver = new DataOutputStream

(kanal.getOutputStream());

BufferedReader odservera = new BufferedReader(new InputStreamReader

(kanal.getInputStream())) ;

zaservera.writeBytes(“Connect mail server:110\r \n”) ;

Str ing odgovor = odservera.readLine();

Str ingTokenizer st = new Str ingTokenizer(odgovor);

whi le(!st.nextToken().equals(“+OK”))

{

zaserver.wri teBytes(“Connect mailserver:110\r \n”) ;

odgovor = odservera.readLine();

st = new Str ingTokenizer(odgovor);

Page 231: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 231/260

13/29 Marko Mili~i}

} / /whi le

zaserver.wri teBytes(“User: “+username);

odgovor = odservera.readLine();

st = new Str ingTokenizer(odgovor);

whi le(st.nextToken().equals(“-ERR”))

{

zaserver.wri teBytes(“User: “+username);

odgovor = odservera.readLine();

st = new Str ingTokenizer(odgovor);

} / /whi le

zaserver.wri teBytes(“Pass: “+password);

odgovor = odservera.readLine();

st = new Str ingTokenizer(odgovor);

whi le(st.nextToken().equals(“-ERR”)

{

zaserver.wri teBytes(“Pass: “+password);

odgovor=odservera.readLine();

st = new Str ingTokenizer(odgovor);

}

cl ientSocket.close();

} / /main

}//class

Page 232: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 232/260

14/29 Marko Mili~i}

DRUGA VARIJANTA

Import Java.net.*;

Import java.io.*;

Class POP3Client{

Publ ic Static Void Main (Str ing args[]) throws exceptions

{

Str ing Poruka;

BufferedReader = new Soctek( ‘pop3.bankerinter.net’ .110);

BufferedReader = OdServera = new BufferedReader(new

InputStreamReader(kanal.getInputStream()));

DataOutputStream ZaServer = new DataOutputStream(kanal.getOutputStream());

While(true)

{

Poruka = “Connect mail Server:110\n”

ZaServer.wri teBytes(poruka);

Poruka = odServera.readl ine() ;

I f (poruka.StartsWith(“-ERR” == true) continue;

System.out.Pr intLn(“Unesite kor isni~ko ime:\n”) ;

Poruka=”user”;

Poruka += odKli jenta.readLine();

ZaServer.wri teBytes(poruka+”\n”) ;

Poruka = Oservera.readLine();

I f(Poruka.StartsWith(“-ERR” == true)) continue;

System.Out.Pr int ln(“Unesite lozinku:\n”) ;

Poruka = “Pass”;

Poruka += Odkl i jenta.readLine();

ZaServer.WriteBytes(poruka + “ \n”) ;

Page 233: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 233/260

15/29 Marko Mili~i}

Poruka = OdServera.readLine();

I f (Poruka.StartsWith(“-ERR”) == true)) continue;

Break;

} //whi le

kanal.close();

} / /main

}//class

Page 234: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 234/260

16/29 Marko Mili~i}

ZADATAK: Napisat i HTTP kl i jenta u Javi , koj i sa zadate adrese u~itavai n e x h t m

stranicu i njen sadr`aj ispisuje na ekranu (u obl iku HTML koda). Kl i jent se

predstavl ja (User-agent: ) kao LabClient , zahteva zatvaranje veze nakon vra}anja

dokumenta (Connect ion: close) i prihvata samo tekstualne objekte (Accept

text/html) .Postoj i s l i~no resenje

Import java.net.*;

Import java.io.*;

Publ ic class HTTPC

{

Str ing Fi leName = “ \ index.html”

Publ ic stat ic Void main (str ing[] args)

{

Str ing host = www.elfak.ni.ac.yu;

Int port = 80;

Str ing f i leName = “ \ index.html” ;

{

Socket socket = new Socket (host,port) ;

Socket.SetGoTimeout(10000);

Pr intWriter WR = new PrintWriter(socket.getOutputStream());

WR.pr int ln(“GET + f i lename + “HTTP/1.0”) ;

WR.pr int ln(“User-agent:. .” ) ;

WR.pr int ln(“Accept: text/html”) ;

WR.pr int(“connection: CLOSE”);

WR.pr int ln() ;

WR.flush();

BufferedReader sd = new BufferedReader(new

InputStreamReader(socket.getInputStream());

Str ing STI;

Page 235: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 235/260

17/29 Marko Mili~i}

While ((sd=rd.readl ine()) ! = NULL)

System.out.pr int ln(sd);

Socket.close();

} / /

Catch IOEXCEPTION (e)

{

System.out.pr int ln(e);

}

NISAM SIGURAN ZA OVAJ ZADATAK!

Page 236: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 236/260

18/29 Marko Mili~i}

ZADATAK: Napisat i program (na C-u, C++-u, Javi i l i Paskalu) koj im se simulira rad

Source Rout ing mosta. Pri l ikom obrade frejma, u obzir uzimati samo t ip_rut iranja

RD polja.

Class Paket

{

Publ ic:

Int RII;

Int t ip-rut iranja;

Int DA;

Int SA;

Int[] RD

Int getNextRD () ;

Int checkRD(int tekRD);

}

Class Ruter

{

Publ ic:

Paket paket;

Int adresaRutera;

SubNetMask[] adrPodMreze;

Ports[] portovi;

Int sled_ruter;

Int Element()

Void SendPaket(Paket.DA)

Void SendPaket(Paket.RD)

Void sendPaket(ports);

Void SendOdgovorNonBroadcast(ports);

Void SendOdgovorAllBroadcast(ports);

Ports getUlazniPort() ;

Page 237: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 237/260

19/29 Marko Mili~i}

Void SRB();

}

void Ruter::SRB()

{

i f (paket.RII == 0) do

{

Switch (paket.t ip-rut iranja)

Case ‘1’ Break;

Case ‘2’

Int next = paket.getNextRD();

I f (next != 0)

sendPaket(next) ;

else

sendpaket(Paket.DA);

break;

Case ‘3’

I f (element)

{

SendPaket(Paket.DA);

SendOdgovorNonBroadcast(getUlazniPort())

}

else i f ( !paket.check RD(adresaRutera))

sendPaket(GetUlazniPort()) ;

Break;

Case ‘4’

I f (element)

{

Page 238: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 238/260

20/29 Marko Mili~i}

SendPaket (Paket.DA);

SendOdgovorAllBroadcast (getUlazniPort()) ;

}

else SendPaket (Sled-Ruter);

break;

Default:

Error()

}

Page 239: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 239/260

21/29 Marko Mili~i}

Zadatak: HTTP server , na portu 8080, ustanju da prepozna 3 t ipa podatka

(Content-Type): text/html, image/jpeg, image/gif . Ako se zahteva neki drugi t ip vraca

kod >>400 Bad Request<<, a ako ne pronadje zel jenu datoteku, kod >>404 No

Found<<

import java.io.*;

import java.net.*;

import java.uti l .* ;

class HTTPServer

{

publ ic stat ic vodi main (Str ing args[]) throws Exception

{

Str ing requestMessageLine;

Str ing Fi leName;

ServerSocket l istenSocket = new ServerSocket(8080);

Socket connectionSocekt = l istenSocket.accept() ;

BufferedReader inFromClient = new BufferedReader(new InputStreamReader

(connectionSocket.getIntputStream());

DataOutputStream outToClient = new DataOutputStream

(ConnectionSocket.getOutputStream());

requestMessageLine = inFromClient.readLine();

Str ingTokenizer tokenizedLine = new Str ingTokenizer(requestMessageLine);

i f ( tokenizedLine.nextToken().equals(“GET”))

{

f i leName = tokenizedLine.nextToken();

i f ( f i leName.startsWith(“/”)) f i leName=fi leName.substr ing(1);

Fi le f i le = new Fi le(f i leName);

int numOfBytes = ( int) f i le. length() ;

i f (numOfBytes=0)

{

outToClient.wri teBytes(“404 Not Found”);

connectionSocket.close();

Page 240: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 240/260

22/29 Marko Mili~i}

return;

} // i f

i f ( f i leName.endsWith(“ .html”) | | f i leName.endsWith (“ . jpg”) | |

f i leName.endsWith(“ .gi f”))

{

outToCLient.wri teBytes(“HTTP/1.0 200 OK\r\n”) ;

i f ( f i leName.endsWith(“ .html”) outToClient.wri teBytes (“ContentType:text/html \r \n”) ;

elseif ( f i leName.endsWith(“ . jpg”) outToClient.wri teBytes (“ContentType:

image/jpeg \r \n”) ;

else(f i leName.endsWith(“ .gi f”) outToClient.wri teBytes (“ContentType:

image/gif \r \n”) ;

outToClient.wri teBytes (“Content Length: “+numOfBytes+\r \n”) ;

Fi leInputStream inFIle = new Fi leInputStream(fi leName);

byte[] f i leInBytes = new byte[numOfBytes];

inFi le.read(f i leInBytes);

outToClient.wri te(f i leInBytes,0,numOfBytes);

connectionSocket.close();

} / / i f

e lse

{

outToClient.wri teBytes(“400 Bad Request \r \n”) ;

connectionSocket.close();

} / /else

}

else

{

system.out.pr int ln(“Bad request message”);

connectionSocket.close();

} / /else

}

}

Page 241: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 241/260

23/29 Marko Mili~i}

 TCP Server

Import java.io.*;

Import java.net.*;

Class TCPServer

{

Publ ic stat ic void main (str ing args[]) throws exception

{

Str ing cl ientsentence;

Str ing c apital izedsentence;

ServerSocket kSocket = new ServerSocket(6789);

While(true)

{

Socket connectionSocket = ksocket.accept() ;

Bufferedreader od korisnika = new bufferedreader (new inputstreamreader(

connectionsocket.getinputstream())) ;

Dataoutputstream zakl i jenta = new

dataoutputstream(connectionsocket.getoutputstream;

Clientsentence = odkl i jenta.readl ine() ;

Capital izedsentence = cl ientsentence.touppercase() + “ \n”;

Zakl i jenta.writebytes|(capital izedsentence);

}

}

}

Page 242: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 242/260

24/29 Marko Mili~i}

 TCP Kl i jent

Import java.io.*;

Import java.net.*;

Class TCPClient

{

Publ ic stat ic void main (str ing args[]) throws exception

{

Str ing sentence;

Str ing modif iedsentence;

Bufferedreader odkli jenta = new bufferedreader (new inputstreamreader(

system.in())) ;

Socket cl ientsocket = new socket(host” ,6789);

Dataoutputstream zaservera = new

dataoutputstream(cl ientsocket.getoutputstream());

Bufferedreader odservera = new bufferedreader(new

inputstreamreader(cl ientsocket.getinputstream);

Sentence = odkl i jenta.readl ine() ;

Zaservera.writebytes(sentence+”\n”) ;

Modif iedsentence = odservera.readl ine() ;

System.out.pr int ln(“od servea:” + modif ied)” ;

Cl ientsocket.close();

}

}

Page 243: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 243/260

25/29 Marko Mili~i}

Stop Wait cl ient sa gubitkom paketa u kanalu!

Import java.io.*;

Import java.net.*;

Class udp cl ient

{

Publ ic stat ic void main(str ing args[]) throws exceptions

{

Bufferedreader unos = new bufferedreader (new inputstreamreader(system.in);

Datagramsocket kanal = new datagramsocket() ;

Byte nextframetosend = 0;

Byte[] zaslanje = new byte[1024];

Byte[] zapr i jem = new byte[1024];

Str ing poruka = unos.readl ine() ;

Zaslanje = poruka.getbytes() ;

While(true) {

Zaslanje[0]=nextframetosend;

Datagrampacket spaket = new datagrampacket (zaslanje, zaslanje.lenght ,

”154.54.54.4”,1654);

Kanal.send(spaket) ;

Datagrampacket ppaket = new datagrampacket (zapr i jem, zapri jem.lenght) ;

Kanal.receive(rpaket) ;

Str ing odgovor = new str ing (rpaket.getbytes()) ;

I f (odgovor[0] == nextframetosend)

{

Uzmipodatke(zaslanje);

I f (nextframetosend <1)

Nextframetosend ++;

Else nextframetosend = 0;

}

Poruka.unos.readl ine() ;

Page 244: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 244/260

26/29 Marko Mili~i}

Zaslanje=poruka.getbytes;

}

Kanal.close();

}

}

Page 245: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 245/260

27/29 Marko Mili~i}

Stop-and-wait (naru{avanje i gubitak paketa) — UDP

UDPClient. java

Import java.net.*;

Import java.io.*;

Class UDPClient{

Publ ic stat ic void main (str ing args[]) throws exceptions

{

Bufferedreader unos = new bufferedreader( inputstreamreader(system.in)) ;

Str ing poruka = unos.readl ine() ;

Byte[] zaslanje = new byte[1024];

Byte[] zapr i jem = new byte[1024];

Zaslanje = poruka.getbytes() ;

Datagramsocket spaket = new datagrampacket(zaslanje,

zaslanje.lenght,”160.99.34.311”,1721);

Datagrampacket rpaket = new datagram(zapri jem, zapri jem.lenght) ;

Str ing potvrda = new str ing(“OK!”) ;

Str ing pr i jem;

Do{

Kanal.send(spaket) ;

Kanal.receive(rpaket) ;

Str ing pr i jem = new str ing (rpaket.getbytes);

}

While (pr i jem!=potvrda);

Kanal.clse() ;

}

}

Page 246: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 246/260

28/29 Marko Mili~i}

Stop&wait SERVER (gubitak paketa) UDP

Import java.io.*;

Import java.net.*;

Class UDPServer{

Publ ic stat ic void main (str ing args[]) throws exceptions{

Byte frameexpected = 0;

datagramSocket kanal = new datagramsocket(1789_;

byte[] zapr i jem = new byte [1024];

byte[] zaslanje = new byte [1024];

while (true) {

Datagrampacket ppaket = new datagrampacket (zapr i jem, zapri jem.lenght) ;

Kanal.receive(rpaket) ;

Str ing poruka = new str ing (rpaket.getdata()) ;

I f (poruka[0] ==frameexpected){

Obrada(zaslanje,poruka);

If ( frameexpected <1) frameexpected ++;

Else frameexcepted = 0;

}

Byte Ack = 1-frameexcepted;

Zaslanje[0]=ACK;

Inetadrdress ipadr = ppaket.getaddress();

Int port = ppaket.getport() ;

Datagramsocket spaket = new datagramsocket (zaslanje, zaslanje.lenght, Ipadr, port) ;

Kanal.send(spaket) ;

}

}

}

Page 247: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 247/260

29/29 Marko Mili~i}

Stop&Wait bez naru{avanja i gubitaka, UDP.

UDPServer. java

Import java.io.*;

Import java.net.*;

Class UDPServer{

Publ ic stat ic void main (str ing args[]) throws exceptions{

Datagramsocket kanal = new datagramsocket(1678);

Byte[] receivedata = new byte[1024];

Byte[] senddata = new byte[1024];

While(true){

Datagrampacket rpacket = new datagrampacket (receivedata, receivedata.lenght) ;

Kanal.receive(rpaket) l

Str ing poruka = new str ing(rpaket.getdata()) ;

Inetaddress = ipadr = rpaket.getaddress();

Int port = rpaket.getport() ;

Datagram spaket = new datagrampacket (poruka, poruka.lenght, ipadr, port) ;

Kanal.send(spaket) ;

}

}

}

Page 248: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 248/260

1/13 Marko Mil i~ i}

Zadatak: Projektovat i algori tam koj im se simulira rad CSMA/CD protokola.

 Teori ja:

CSMA/CD

Carrier Sense With Mult iple Access / Col is ion Detect ion

Ra~unar oslu{kuje kanal i tek posle 9.6 mikro sekndi od detekci je poslednjeg bita

mo`e da po~ne sa slanjem. Ovo je neophodno zbog rastojanja izme|u frejmova

>>interframe spacing<< tokom slanja. Ukol iko utvrde kol iz i ju stanice (ra~unari )

prekidaju dalj i prenos. Prva stanica koja otkri je kol iz i ju ( t j . ako adapter detektuje

signal drugog adaptera dok traje njegova emisi ja) , on prestaje sa slanjem korisnih

paketa i {al je 48-bitni JAM signal (s ignal zagu{enja) da b i osigurala da druge

stranice tako|e detektuju kol iz i ju (detekci ja kol iz i je je na primer ako oset i jaku

struju, i l i u nekom trenutku po{al je 0 a isto tad pro~i ta 1 sa kanala. Nakon prekida

slanja frejma t j . JAM signala (koj i se 32 i l i 4 8 b) adapter ulazi u fazu ~ekanja,koja je odre|ena nekim algori tmom - (Truncated binary) exponent ial backoff

algort ihm. Kada utvrdi n-tu uzastopnu kol iz i ju (za ist i frejm koj i poku{ava da

po{alje) , adapter bira proizvol jnu vrednost za k (od 0 do 2m-1 ) gde je m=min(n,10) i

~eka k*512=td Bitskih intervala nakon ~ega po~inje ponovo da {al je svoj fr ejm

(oslu{kuje kanal) .

E f ikasnost eterneta zavis i od optere}enost i mre`e. Ne mo`e se korist i t i za rad u

realnom vremenu jer nema garanci je da }e paket bit i poslat u nekom vremenskom

intervalu (u najgorem slu~aju vel ike zagu{enost i mre`e frejm mo`e ostat i zauvek

neposlat ) .

Formula za odre|ivanje efikasnost i etherneta kada nema kol iz i je i sve stanice

imaju frejmove spremne za slanje:

 Ttrans = Maximalno vreme za koje se {alje frejm

 Tprop = maximalno ka{njenje izme|u dva ~vora

TtransTprop E  ff   /51

1

⋅+=  

Page 249: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 249/260

2/13 Marko Mil i~ i}

SlobodanKanal

Wait9.6 microsec

Slanje

Kolizija

[Alje do kraja

N=0

Slanje se prekida

48b JAM signal

N=N+1

N>15

M=Min(N,10)

K(0,1,2,.....2 )

^Eka k*512 bitnihintervala

M-1

Odbacuje sepaket

 TrueFalse

Page 250: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 250/260

3/13 Marko Mil i~ i}

Zadatak: Projektovat i algori tam koj i defini{e na~in funkcionisanjaoken ing

  radne

stanice. Radi pojednostavl jenja smatrat i da stanica ne vr{i ulogu >>akt ivnog<< i l

>>pasivnog<< nadzornika.

Re`im slanja

^ekaj dok nai|e token

 Token Slobodan T=0

Da li {alje{

Prioritet >ili = PPP

Pre|i u re`im

slanja

Prosledi

token

Prosledi

token

Da li {alje{

Uporedi RRR

PostaviRRR

Pre|i u re`im prijemai prosledi token

KRAJ

 True

False

 

Page 251: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 251/260

4/13 Marko Mil i~ i}

Re`im prijema

^ekaj dok nai|e poruka

UporediDA

 True

False

A=1

E=0

Prover CHKSUMi eventualno postavi E

Kopiraj

C=1

Proslediporuku

Pre|i uoslu{kivanje

Re`im prijema 

Page 252: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 252/260

5/13 Marko Mil i~ i}

Re`im slanja

Upi{i svoj prioritetu PPP i o~isti RRR

 True

False

Po{alji>>zauzet token<<

Framing, po{aljiporuku

po{alji SA, DA,o~isti flegove

Izra~unaj CHKSUM

Primi tokenzapamti RRR

Primi poruku

A=1 and C=1

A=1

Pre|i u re`imslanja

PPP = stari RR~isti RRR

[Alji slobodni token T=0

Pre|i u re`imslu{anja

Re`im slanja  

Page 253: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 253/260

6/13 Marko Mil i~ i}

Zadatak: Projektovat i algori tam za rad Source-rout ing mostova

 Teori ja: Mostovi povezuju dve zasebne mre`e u jednu logi~ku cel inu. Na primer

IBM 8209 most se korist i za povezivanje etherneta i TokenRing LAN mre`e.

Orion

Orion   Orion

Most

Orion

Orion

Orion

Orion

Orion

IEEE 802.3

8209

IEEE 802.5

 

U ovom slu~aju most mora imati 2 mre`ne kart ice i to jednu Ethernet i jednu

 Token Ring, za povezivanje na odgovaraju}e mre`e. Mostovi rade na Data-Link

nivou, tako da ne razmatraju zaglavl je mre`nog nivoa (ve} direktno kopiraju pakete

vi{ ih nivoa) zato se ne mogu korist i t i za povezivanje mre`a sa razl i~ i t im mre`nim

protokolom. Razlozi za upotrebu mostova su:

 - Postojanje vi{e celina (u kolektivu), svaka sa sopstvenim potrebama i

odgovaraju}om LAN mre`om, koje treba povezat i .

 - Geografska razu|enost i ve}a isplativost formiranja zasebnih LAN mre`a koje se

zat im povezuju mostovima.

 - Rastojanje izme|u najudaljeni j ih stanica je ve}e nego {to dozvol java LAN

tehnologi ja

 - Ve}a pouzdanost, jer neisp ravna stanica/lini ja ometa (i l i spre~ava) saobra}aj

samo lokalno (do prvog mosta).

 - ve}a sigurnost, jer mostovi mogu zabranit i protok nekih paketa koj i su

potenci jalna opasnost za sigurnost organizaci je.

Page 254: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 254/260

7/13 Marko Mil i~ i}

Preformatiranje frejmova:

Zadaci mosta pri l ikom preformatiranja ramova:

 - 

Preformatiranje frejmova i izra~unavanje nove CheckSume

 -   Okrenut i red bitova

 - 

Generisat i f ik t ivne priori tete

 - 

Odbacit i priori tete

 - 

Zaokru`i t i token

 - 

Setovat i A i C bitove (pri ~emu se zapravo >>la`e<< da je odredi{te primilo

frejm

 - 

Regulisat i zagu{enje pri slanju na spori j i LAN (uvo|enje bafera)

 - 

Ako je frejm suvi{e vel ik i za odredi{ni LAN on se odbacuje (mogu}a je neka

signalizaci ja al i problem nije re{iv)

802.5 zapravo nema ograni~enja u vel i~ ini okvira, osim {to se mo`e desit i dastanica ne mo`e emitovat i frejm du`i od token-holding t ime-a (vreme dr`anja

tokena) {to po defaultu iznosi 10 ms, odakle se izvodi maximalna du`ina okvira od

5000 b.

Zbog rada sa LAN-ovima razl i~ i t ih brzina i l i pojave kol iz i je, mostovi moraju imati

baferski prostor za sme{tanje prist igl ih ramova (okvira) .

Prolaskom paketa kroz most, gubi se semantika mre`e jer se mnogi parametri (na

primer priori tet ) postavl jaju proizvol jno i gube pri l ikom prolaska kroz mre`u koja ih

ne zahteva.

Potrebno je maksimalno smanji t i komunikaci ju izme|u LAN-ova. Ako neka stanica

~esto (vi{e od 20% paketa) komunicira sa stanicom van LAN-a na koj i je

prik l ju~ena, treba razmotri t i njeno presel jenje u drugi LAN.

Re{enje:

Page 255: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 255/260

8/13 Marko Mil i~ i}

Primio paket

 Tip rut. Iz RDprva 3b

Po{alji naspecijalni portiz tablice

spre`nog stabla

Ako imaRD

Upi{i svoj RD uprvi slobodan izRD niza prosledina sve portoveosim ulaznog

Single Rout Broadcast

All Rout Broadcast

Prosledi na prvislede}i port iz

RD niza

Null

Non Broadcast

Page 256: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 256/260

9/13 Marko Mil i~ i}

Druga vari janta:

Po~etak 

Prihvati paketili iskopirajbafer mre`e

u bafer

Paket-RM== 1 Odbaci

Switch(tip_rut)case Null

case NonBroadcastcase AllRoutBroadcast

case SingleRout Broadcast

 TrueFalse

 

Page 257: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 257/260

10/13 Marko Mil i~ i}

Napisat i funkci ju u C-u kojom se simulira rad Token-Ring radne stanice. Potrebno

je implementirat i s lede}e funkcionalnost i :

 - provera da l i je token slobodan i ako jeste i postoje podaci za slanje - zauzet

ga,

 - postavi t i pr iori tet poruka koje se {al ju,

 - postavl janje A, C i E bitova.

Skic irat i izgled okvira sa naznakom polja koja su kori{}enja u implementaci j

prethodno navedenih unkcionalnost i .

Re{enje:

^ekaj dok nai|e token

 Token Slobodan T=0

Da li {alje{

Prioritet >ili = PPP

Pre|i u re`imslanja

Prosleditoken

Prosleditoken

Da li {alje{

Uporedi RRR

PostaviRRR

(RRR=Prior)

KRAJ

 True

False

Prosledi token

Pre|i u re`im prijema

 

Page 258: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 258/260

11/13 Marko Mil i~ i}

Re`im prijema

^ekaj dok nai|e poruka

E=0

 True

False

A=1

E=0

Kopiraj

C=1

Proslediporuku

Pre|i uoslu{kivanje

KRAJ

Proveri FCDi postavi E

UporediDA

 

Page 259: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 259/260

12/13 Marko Mil i~ i}

Re`im slanja

Upi{i svoj prioritetu PPP i o~isti RRR

 True

False

Po{alji>>zauzet token<<

Framing, po{aljiporuku

po{alji SA, DA,o~isti flegove

Izra~unaj CHKSUM

Primi tokenzapamti RRR

Primi poruku

A=1 and C=1

A=1

Pre|i u re`imslanja

PPP = stari RR~isti RRR

[Alji slobodni token T=0

Pre|i u re`imslu{anja

Re`im slanja  

Page 260: Racunarske_Mreze_-_Marko_Milicic

7/17/2019 Racunarske_Mreze_-_Marko_Milicic

http://slidepdf.com/reader/full/racunarskemreze-markomilicic 260/260

Zadatak: Napisat i algori tam za funkci ju koja ra~una Internet CheckSum!

Internet_Check)Sum(char * ulaz)

Int sabirak = 0Long Zbir = 0

I = 0