Professional Documents
Culture Documents
Skripta Mreze 1.semestar
Skripta Mreze 1.semestar
Skripta Mreze 1.semestar
by Danijel Dvorak
INTERNET MODEL
- TCP - veza aplikacija preko portova
- broj portova kod Interneta = broj Servise Access Pointa (SAP) kod ISO-OSI
Slojevi Internet arhitekture
1) Fiziki sloj
- veza izmeu vorova putem fizikih medija
- bavi se karakteristikama medija, signalima,...
2) Sloj mree
- razmjena podataka preko mree, dodavanje adresa, pozivanje servisa (npr. prioritet)
- mogue razne mree: ATM, LAN, Frame Relay,...
3) Internet sloj (IP)
- routing (usmjeravanje) meu razliitim mreama, implementiran u vorovima i routerima
- dodavanje IP adresa
4) Transportni sloj (TCP)
- pouzdan prijenos podataka, redoslijed dostave
5) Sloj aplikacije
- podrka za korisnike aplikacije, npr. HTTP, SMPT
- na predavanjima smo radili bez 1) i 2) ve je to bilo samo kao spajanje IP sloja na LAN tj. ve postojeu
mreu
- prikaz TCP/IP prijenosa
ISO-OSI MODEL
(International Organization for Standardization - Open Systems Interconnection)
1) FIZIKI SLOJ
- zadatak sloja je prijenos signala prijenosnim sredstvima
- fiziki povezuje 2 sustava izravno ili putem mree (routeri, hubovi, bridgevi,...)
- mogue oteenje signala zbog duljine voda i umova
- fiziko spojite izmeu ureaja odreuju: mehanika, elektrina, funkcionalna, proceduralna svojstva
2) SLOJ VEZE
- zadatak sloja je uspostavljanje, odravanje i raskidanje veze, brine se o ispravnom prijenosu podataka i
upravlja tokom podataka (prijenos bez uma)
- brine se o otklanjanju pogreaka u prijenosu
- pogreku otklanja ili prvi vor ili ciljni vor (ako je velika vjerojatnost pogreke onda se ona otklanja u
prvom voru)
- cijena prijenosa raste sa svakom provjerom - provjera samo ciljnog vora je jeftinija i bra (inae se gubi
vrijeme na provjere jer se eka cijeli fajl pa se alje dalje...)
- treba se ekati zaglavlje u kojem pie kamo slati a zatim se alju paketi kako stiu
3) SLOJ MREE
- zadatak sloja je odreivanje ruta ili puteva kroz mreu
- u zaglavlju pie izvorina i odredina adresa
- zaglavlje se dodaje poruci koja stie iz 4. razine
- kod terminala ne treba adresa servera jer terminal moe slati samo serveru
- ako su ravnopravni vorovi u mrei - moraju biti 2 adrese
- MAC (Media Access Control) - protokol za dobivanje kontrole nad mreom
4) SLOJ PRIJENOSA
- zadatak je povezivanje obradnih i prijenosnih slojeva (izolacija)
- najvii od prijenosnih slojeva
- funkcija sloja je efikasnije koritenje mree
- brine se o povezivanju raunala
5) SLOJ RAZGOVORA
- zadatak je uspostavljanje veze izmeu 2 aplikacije
- brine se da se prijenos nastavlja na toki prekida
- prati slanje poruke (sinkronizacija)
6) SLOJ PRIKAZA
- zadatak je prezentacija podataka u razumljivom obliku (promjena kodiranja, formatiranje podataka za
prikaz na ekranu ili za printanje, ifriranje/deifriranje)
7) APLIKACIJSKI SLOJ
- zadatak je jednostavni pristup servisima mree
- 5,6,7 slojevi ne vide mreu (samo obrauju podatke)
- prijenosni dio mree pokriva 3 funkcije ISO-OSI
- jedinice podataka (datagrami) pojedinog sloja:
1.
2.
3.
4.
5,6,7
bit
okvir
paket
segment
poruka
1. FIZIKI SLOJ
baud
b) b/s
- baud=b/s samo u sluaju kad jedan signal odgovara jednom bitu (veinom se signalom prenosi vie
bitova)
- brzina prijenosa oznaava koliko se jedinica podatka moe prenijeti u jedinici vremena kanalom
- brzina prijenosa bitova ne govori o efektivnoj brzini prijenosa korisnikih podataka kanalom, mjera za to
je brzina prijenosa informacijskih bitova TRIB (Transfer Rate Information Bits)
- TRIB je omjer broja inf. bitova (N) i ukupnog vremena da se prenesu svi bitovi potrebni da se inf. bitovi
prihvate u odreditu (t1 + t2)
- osim korisnikih informacija kanalom se prenose i upravljaki bitovi, adrese, bitovi za provjeru
ispravnosti... - OVERHEAD
odreivanje brzine prijenosa inf. bitova za prijenos podataka binarnim sinkronim protokolima
Naini prijenosa:
1) paralelni - serijski
- na kratkim udaljenostima (unutar raunala, izmeu pojedinih funkcijskih jedinica, izmeu raunala i
njegovih perifernih jedinica) podaci se obino prenose paralelno - svi bitovi jednog znaka ili neke vee
podatkovne jedinice (rije) putuju paralelno (istovremeno) vodom
- u serijskom prijenosu niu se jedan iza drugog: predajnik alje a prijemnik prima u svakom vremenskom
intervalu po jedan bit
- paralelan prijenos je takav u kojem se svi bitovi podatkovne jedinice prenose istovremeno putem vie
kanala, skup kanala se moe ostvariti snopom vodova ili jednim vodom ako se frekvencijski pojas
podijeli u vie uih pojasa
2) asinkron - sinkron
a) asinkron - vremenski razmak izmeu jedinica podataka moe biti bilo kakav
- naziva se i start-stop prijenos, svakom znaku koji se alje prethodi jedan start-bit i slijedi do dva stopbita, znakovi se alju u neregularnim intervalima, start-stop-bitovi omeuju znak da bi prijemnik
mogao odrediti njegov poetak i kraj
- jednostavan, jeftin, dobar za prijenos podataka s velikim "rupama" (tipkovnica), overhead od 2-3 bita
- ako se jedan bit krivo prenese kod sinkroniziranog prijenosa krivo e se prenijeti cijeli blok, dok e se
kod asinkronog prijenosa krivo prenijeti samo jedan znak
3) SX - HDX - FDX (simplex, half duplex, full duplex)
- SX - prijenos uvijek u jednom smjeru, jedna strana je uvijek predajnik a druga prijemnik
- HDX - kanalom se alje u oba smjera ali ne istovremeno, prvo jedna strana alje pa prima...
- FDX - podaci se prenose istovremeno u oba smjera (potrebna 2 kanala)
4) dvoian - etveroian
- prednost dvoinog prijenosa je nia cijena, a nedostatak dui prijenos radi vremena potrebnog da
modemi prijeu iz stanja prijema u stanje predaje to se dogaa svaki put kada funkcijska jedinica
(raunalo, terminal) eli slati podatke
- po etveroinom vodu prijenos u jednom smjeru se obavlja jednim parom ica a u drugom smjeru
drugim parom (FDX prijenos)
- nedostatak dvoinog voda moe se otkloniti koritenjem modema koji dijele frekvencijski pojas voda na
dva kanala i tako omoguuju dupleksan prijenos
5) digitalni - analogni
- na manjim udaljenostima podaci se prenose digitalnim podacima
- digitalni signali se ne mogu prenositi na velike udaljenosti metalnim vodovima i svjetlovodima bez
posebne prijenosne opreme radi njihovog ogranienog frekvencijskog pojasa
- uobiajeno je koritenje analognih signala za prijenos na velike udaljenosti
- digitalni se pretvaraju u analogne postupkom modulacije
TEHNIKE KODIRANJA SIGNALA
a) digitalni podaci u digitalni signal
b) digitalni podaci u analogni signal
c) analogni podaci u digitalni signal
d) analogni podaci u analogni signal
1.2. KODIRANJE DIGITALNIH PODATAKA U DIGITALNI SIGNAL
NRZ-L (Non Return to Zero - Level)
- uvijek nulta voltaa za 1, uvijek pozitivna za 0 - nemogunost sinkronizacije
NZRI (Non Return to Zero Inverted)
- promjena voltae za binarnu 1, nema promjene voltae za 0
10
Manchester
- tranzicija se vri na sredini trajanja bita
- nia prema vioj voltai je 1, a via prema nioj je 0
Diferencijalni Manchester
- tranzicija se vri samo za 1, 0 ostavljaju isto stanje
12
13
14
- stvara imunost na razne umove i ometanja, signal se moe sakriti/kriptirati (samo uz kd irenja moe se
dekodirati signal), nekoliko korisnika mogu koristiti isti kapacitet kanala uz male smetnje (beini
telefoni, CDM (Code Division Multiplexing), CDMA (Code Division Multiple Access))
Frequency Hopping Spread Spectrum - FHSS ("skakanje" po frekvencijama)
- signal se emitira preko prividno sluajnom slijedu frekvencija, primatelj "skae" izmeu frekvencija u
sinkronizaciji s poiljateljem
- prislukivai uju samo nerazgovjetne umove, ometanje jedne frekvencije pogaa samo par bitova
15
- spori FHSS - brzina skokova manja ili jednaka trajanju elementa signala
16
17
b) koaksijalni kabel
- centralni vodi zatien
vanjskim vodiem u obliku
cilindra, manje osjetljiv na um
- prenose TV signal, kablovska
TV, LAN,...
- analogni prijenos treba pojaala
svakih par km
- frekvencijski pojas do 500MHz,
digitalni prijenos obnavljai
svakih 1-9 km
2.a) radio-relejni sistemi
- ogranienje im je um a ne irina frekvencijskog
pojasa
- kanali u podruju 1,7 GHz - 13 GHz
- repetitori svakih 100 km (zbog zakrivljenosti
Zemlje)
18
- izvori kanala:
a) ILD (Injection Laser Diode) - skuplji, osjetljiviji, manje pouzdani, vea irina frekv. pojasa - bri
prijenos
b) LED (Light Emitting Diode) - jeftiniji, vei toplinski raspon, dulje trajanje
- detektori signala:
a) pin diode - linearnost, irina pojasa, manja osjetljivost
b) lavinske fotodiode - osjetljiva, nije linearna, nije stabilna
c) pin-FET tranzistori - osjetljive, stabilne, mali napon
- tipovi optikih vlakana:
1) Multimode step-index
- razliiti kutevi odbijanja svjetlosti
- vie propagacijskih puteva razliitih duljina zbog razliitih lomova svjetlosti to dovodi do toga da
neki signali bre stignu do odredita
- potrebno je slati signale u odreenim vremenskim periodima (tako da stigne i najsporiji signal s
najveim lomom svjetlosti) to ograniava brzinu prijenosa
- najbolji za prijenos na kratkim udaljenostima
2) Multimode graded-index
- svjetlost se kree blie sredini optikog kabla te se ne odbija od rubova nego ve se savija to
rezultira manjim putem te veom brzinom (skoro ko u monomodu)
- esto se koristi u LAN-ovima
3) Monomode
- prua najbolje rezultate jer se svjetlost alje po jednom putu te stoga nema disperzije
- signal na kraju je jednak signalu na izvoru
- najee se koristi za velike udaljenosti (telefon, kablovska TV,...)
19
Telefonski kanal
- prilagoen karakteristikama ljudskog glasa i uha (ljudsko uho registrira frekv. od 30Hz do 16kHz)
- najvei dio energije koncentriran je u podruju od 300Hz do 3400Hz, telefonski aparat pretvara glas u
elektrine signale a tel. kanalima se prenosi samo podruje od 300Hz do 3400Hz jer je ono dovoljno za
razumijevanje govora
- prijenosna karakteristika telefonskog kanala je strma na rubovima a na niskim frekvencijama i iznad
4000Hz u potpunosti gui signale
- filter telefonskog kanala koji ograniuje njegovu irinu, uzrokuje fazni pomak meu signalima raznih
frekvencija to izaziva izoblienje digitalnih signala - nije pogodan za prijenos digitalnih signala
- da se prevlada taj nedostatak signali se moduliraju pomou modema u analogne signale
20
7. SLOJ APLIKACIJA
- korisniki agent - spojite izmeu korisnika "iznad" i mree "ispod"
- sadri korisniki interfejs i protokol aplikacijske razine
- npr. Web: preglednik, E-mail: mail reader, streaming video/audio: media player
- aplikacija - komunicira, distribuira procese
- koristi se na krajevima sustava (terminalima)
7.1. - PROTOKOL APLIKACIJSKOG SLOJA
- "dio" aplikacije, definira poruke koje izmjenjuju aplikacije te akcije koje e se izvriti
- koristi komunikacijske servise koje pruaju protokoli niih slojeva (TCP, UDP)
Protokol aplikacijskog sloja definira:
a) tipove poruka koje se izmjenjuju (npr. zahtjev i odgovor)
b) sintaksu poruka (podjela polja u porukama)
c) semantiku polja (znaenje informacija u poljima)
d) pravila razmjene poruka
- javni protokoli - definirani RFC standardom (HTTP, SMTP)
- privatni protokoli - KaZaA
- 2 modela komuniciranja u mrei:
a) peer-to-peer
b) server-klijent
Klijent
- zapoinje razmjenu poruka sa serverom
- trai usluge od servera
- klijenti su ugraeni u Web browsere i mail readere
Server
- prua traene usluge klijentima
Proces komuniciranja putem mree
- poruci se dodaje adresa - 32-bitna IP adresa raunala i PORT adresa aplikacije
- fiziki se ostvaruje preko SOCKETA preko kojeg se aplikacija vee na mreu
- proces stvara socket (aplikacija stvara procese, svaki proces ima svoj socket)
- specifian socket je za TCP i UDP
- programer moe jedino odabrati tip usluge to ga nudi sloj ispod (TCP ili UDP) i izabrati neke parametre
21
Adresiranje procesa
- da bi proces mogao primiti poruku mora imati identifikator
- svaki server ima jedinstvenu 32-bitnu IP adresu
- uz IP adresu proces mora imati i broj porta povezan s procesom servera
Karakteristike prijenosa za aplikacije:
a) gubirak podataka - neke aplikacije toleriraju gubitak nekoliko paketa tijekom prijenosa (audio) dok
druge zahtjevaju toan prijenos podataka (telnet, prijenos podataka)
b) kanjenje - neke aplikacije zahtjevaju jako malo kanjenje da bi bile "uinkovite" (igranje preko neta)
c) kapacitet kanala - neke ap. zahtjevaju odreeni minimum da bi bile "uinkovite" (multimedia) dok druge
koriste kapacitet kakav im je na raspolaganju
Tipovi protokola prijenosa za Internet - sloj prijenosa
1) TCP (Transmission Control Protocol)
- connection oriented - uspostavlja vezu, prijenos, prekida vezu
- klijent-server model, razmjenjuju kontrolne informacije da se pripreme na razmjenu podataka
(handshaking), FDX veza, aplikacija prekida vezu nakon prijenosa
- pouzdan prijenos (bez greaka i u tonom redoslijedu)
- kontrola toka - poiljatelj ne moe "zaguiti" primatelja
- kontrola gomilanja - uspori poiljatelja kad je mrea zaguena (loe za real-time prijenos)
- ne prua odreeni minimalni kapacitet i mogue kanjenje (npr. ekamo 10 sekundi da primimo
base HTML fajl s Interneta)
2) UDP (User Datagram Protocol)
- connectionless - bez handshakinga
- nepouzdan prijenos podataka (nije sigurno da e podaci doi do klijenta, ni redoslijed tih podataka)
- ne prua: kontrola toka, kontrola gomilanja, odreeni minimalni kapacitet, kanjenje
- nudi samo odreeni broj portova
- koristi se gdje nije bitna tonost prijenosa (real-time prijenos)
- alje pakete unato zaguenosti voda
7.2. WEB I HTTP
- Web stranice se sastoje od objekata (HTML fajl, JPG slika, Java applet, audio fajl...)
- Web stranice se veinom sastoje od baznog HTML fajla koji sadri nekoliko referenciranih objekata (npr.
bazni HTML i 6 slika)
- svaka stranica ima svoj URL (2 dijela):
22
www.someschool.edu/someDept/pic.gif
server
path
23
Persistent HTTP
- server ostavlja otvorenu vezu poslije slanja odgovora
1) bez pipelininga - klijent stvara novi zahtjev tek nakon to je primio odgovor (1 RTT za svaki
referencirani objekt + vrijeme ekanja za novi objekt)
2) pipelining - klijent alje zahtjev im naie na referencirani objekt, 1 produeni RTT za sve
referencirane objekte (defaultni je za HTTP/1.1)
HTTP poruke
1) REQUEST poruka
- pisana u ASCII kodu
- zaglavlje se moe sastojati od jednog reda ili vie (npr. 5 kao u ovom primjeru)
request line
(GET, POST,
HEAD commands)
Carriage return,
line feed
indicates end
of message
24
Naredbe zahtjeva:
1) POST - zahtjev se alje u polju zahtjeva (entity body)
2) GET - zahtjev se alje u URL polju:
www.somesite.com/animalsearch?monkeys&banana
3) HEAD - nakon zahtjeva prima se HTTP ali bez referenciranih objekata
Tipovi metoda uploadanja
1) HTTP/1.0 - GET, POST, HEAD
2) HTTP/1.1 - GET, POST, HEAD, PUT (stavljanje objekata na server), DELETE (brisanje objekata)
2) RESPONSE poruka
status line
(protocol
status code
status phrase)
header
lines
data, e.g.,
requested
HTML file
HTTP/1.1 200 OK
Connection close
Date: Thu, 06 Aug 1998 12:00:15 GMT
Server: Apache/1.3.0 (Unix)
Last-Modified: Mon, 22 Jun 1998 ...
Content-Length: 6821
Content-Type: text/html
data data data data data ...
Autorizacija
- kontrolira pristup sadraju servera
- obino se sastoji od korisnikog imena i zaporke
- ako je stateless - klijent se mora autorizirati u svakom zahtjevu
Cookies
- uvaju stanje - HTTP postaje state protokol
- 4 komponente:
1) cookie header line u HTTP poruci odgovora
2) cookie header line u HTTP poruci zahtjeva
3) cookie fajl uvan na korisnikom raunalu
4) baza podataka na Web sajtu
- koristi od cookiesa: autorizacija, kolica za kupovinu, preporuke,...
- privatnost: cookies dozvoljavaju sajtu da mnogo sazna o tebi
7.3. FILE TRANSFER PROTOCOL (FTP)
Proces komuniciranja:
1) FTP klijent kontaktira FTP server na port 21, tako odabirujui TCP kao transportni protokol
2) klijent alje autorizaciju preko kontrolne veze
3) klijent pretrauje "udaljene" direktorije aljui naredbe preko kontrolne veze
4) kada server dobije naredbu za prijenos podataka, otvara TCP podatkovnu vezu s klijentom
5) poslije prvog fajla server zatvara vezu
6) server otvara novu podatkovnu vezu za prijenos drugog fajla
- FTP server zadrava stanje (state) - trenutni direktorij, ista autentifikacija
- HDX kontrolna veza i SDX podatkovna
26
- naredbe: alju se kao ASCII tekst preko kontrolnog kanala (USER, PASS, LIST, RETR, STOR), naredbe
od 4 slova
- povratni kodovi i fraze: 1** (sve ok), 3** (potrebni dodatni podaci), 4** (greka)
7.4. TFTP (Trivial FTP)
- nema kontrole pristupa (javne su sve datoteke)
- vrste paketa: - RRQ (Read Request)
- WRQ (Write Request)
- DATA
- ACK
- ERROR
- temelji se na UDP transportnom protokolu - TFTP se sam brine o uklanjanju pogreaka (alje se paket
tako dugo dok se dobije ACK)
- port 69, svaka strana ima svoj TID (Transfer ID)
- prijenos poinje slanjem zahtjeva - prima se odgovor u obliku ACK paketa ili DATA paketa
7.5. ELEKTRONIKA POTA
- komponente: korisniki agent, mail server, SMTP protokol (Simple Mail Transfer Protocol)
a) korisniki agent (mail reader) - sastavlja, ureuje, ita mailove (Outlook, Eudora, Netscape Messenger)
- poslane/primljene poruke su spremljene na serveru
c) SMTP - koristi TCP za siguran prijenos email poruka od klijenta serveru, port 25
- direktan prijenos - server koji alje, server koji prima
- 3 faze prijenosa: handshaking (pozdrav), prijenos poruka, zatvaranje veze
- naredbe/odgovori: naredbe u ASCII tekstu, odgovori su statusni kodovi i fraze
- poruke moraju biti u 7-bitnom ASCII kodu
- connection oriented protokol (HELO za uspostavljanje veze, QUIT za prekid veze)
- SMTP koristi persistent vezu, za kraj poruke se pie "."
- SMTP je push protokol (veinom alje objekte preko TCP-a)
- primjer:
1) Alice koristi KA (korisniki agent) za pisanje poruke i "za" Bob@htnet.hr
2) Alice koristi KA za slanje poruke svojem mail serveru, poruka stavljena u red ekanja
3) klijent SMTP veze otvara TCP vezu s Bob-ovim mail serverom
4) SMTP klijent alje poruku od Alice preko TCP veze
5) Bob-ov mail server stavlja poruku u Bob-ov sandui
6) Bob koristi svoj KA za itanje poruke
Format poruka
- klasini mailovi imaju samo From, To, Subject, prazni red pa onda ASCII tekst, i toku za kraj
- dodatne linije u Subjektu oznaavaju tip MIME (Multipurpose Internet Mail Extension)
MIME version
method used
to encode data
multimedia data
type, subtype,
parameter declaration
From: alice@crepes.fr
To: bob@hamburger.edu
Subject: Picture of yummy crepe.
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Type: image/jpeg
base64 encoded data .....
.........................
......base64 encoded data
encoded data
MIME tipovi/podtipovi:
- tekst - /plain, /html
- slika - /jpeg, /gif
- audio - /basic, /32kadpcm (32 kbps kodiranje)
- video - /mpeg, /quicktime
- aplikacija - /msword
- kod primljene poruke u zaglavlju se dodaje red Recieved: - od koga i kada
28
- DNS ima decentraliziranu bazu podadataka ureenu hijerarhijski i distribuiranu diljem svijeta
- nijedan name server nema sve veze ime-IP adresa
- tipovi name servera:
1) lokalni name server (local name server)
- svaki ISP ima svoj lokalni name server, brz odaziv i odgovor
2) root name server
- ako lokalni name server nema traeni hostname, ponaa se kao DNS kijent i alje upit dalje root
name serveru
- ako ni root name server nema traeni hostname on zna IP autoritativnog name servera koji ima tu
adresu te upit proslijeuje
3) autoritativni name server
- svaki server je registriran na autoritativnom name serveru
- neki name server je autoritativan serveru ako u svakom trenutku ima DNS zapis kojim se prevodi
serverovo ime u IP adresu
- mnogi name serveri su ujedno i lokalni i autoritativni name serveri
root name server
2
5
dns.eurecom.fr
6
gaia.cs.umass.edu
requesting host
surf.eurecom.fr
- ako root name server ne zna naziv autoritativnog name servera, kontaktira posredniki name server koji
zna naziv autoritativnog name servera
root name
server
6
2
7
dns.eurecom.fr
8
authoritative name server
dns.cs.umass.edu
requesting host
surf.eurecom.fr
gaia.cs.umass.edu
- root name server moe i vratiti odgovor natrag lokalnom name serveru u kojem mu kae da sam
kontaktira neki posredniki name server
30
- caching - kada DNS server primi upit o nekom serveru on odgovara ali i zapisuje taj podatak u lokalnu
memoriju (izbacuje se iz memorije nakon odreenog vremena), na slijedei upit moe odmah odgovoriti
bez slanja upita autoritativnom serveru
DNS zapisi (RR - Resource Record)
- zapisi imena - IP adresa
- format RR: (naziv, vrijednost, tip, TTL)
- TTL - vrijeme ivota u cache memoriji
- tipovi: A - naziv servera, vrijednost IP adresa
NS - naziv domene, vrijednost IP adresa autoritativnog servera za domenu
CNAME - naziv je "alias" za kanoniko (pravo) ime, vrijednost je kanoniko ime
MX - vrijednost je kanoniko ime mail servera koji ima aliase
DNS poruke
- poruke upita i odgovora, oboje s istim formatom zaglavlja (12 bajtova)
Odgovori na upit
Zapisi autoritativnog
servera
Dodatne informacije
- identifikacija - 16-bitni ID broj kojim raspoznaje koji reply odgovara kojem upitu
- zastavice - upit ili odgovor, rekurzija poeljna, rekurzija mogua, odgovor je autoritativan
7.7. CONTENT DISTRIBUTION (Distibucija sadraja)
- iz mnogo razloga (put do sadraja je preko kanala malog kapaciteta, vod je zaguen, server je pretrpan
upitima...) mogui su zastoji i duga ekanja da doemo do eljenog sadraja, zato se sadraji repliciraju
- distribucija sadraja oznaava repliciranje sadraja na vie servera te mogunost odreivanja koji e
server dostaviti te sadraje najbre
- kategorije distribucije sadraja:
1) Web Caching
2) Content Distibution Networks (CDN)
3) Peer-to-peer file sharing
Web Caching (proxy server)
- proxy server je vor mree koji zadovoljava HTTP upite umjesto izvornog servera (ima svoj disk na koji
sprema kopije nedavno traenih objekata)
- najee ih primjenjuju ISP-i (Internet Service Provider)
31
- primjer:
1) browser uspostavlja TCP vezu s proxy serverom i alje zahtjev za objekt
2) proxy server pretrauje memoriju i ako ima kopiju, alje browseru klijenta
3) ako nema kopiju, otvara TCP vezu s izvornim serverom i alje upit te dobiva traeni objekt
4) pohranjuje kopiju u memoriju te proslijeuje objekt klijentu preko postojee TCP veze
- koristi od web cache-a:
1) smanjuje vrijeme odgovora na klijentov zahtjev (posebno prema onim serverima koji imaju male
kapacitete kanala, a veza prema proxy serveru je puno bra)
2) smanjuje spajanje na Internet (due se moe raditi s manjim kapacitetom kanala bez daljnjih
investicija)
3) prua bru distribuciju sadraja (ako neki sporiji server ima neku popularan sadraj, taj sadraj e se
brzo kopirati na Internet cacheve i velika potranja e biti zadovoljena)
2) CDN replicira korisniki sadraj na CDN server. Kada korisnik uploadira novi sadraj (npr.
promijeni web stranicu) CDN redistribuira novi sadraj na svoje CDN servere.
3) CDN tvrtka prua mehanizam da kada netko zatrai sadraj, opsluiva ga server koji moe taj
sadraj najbre pribaviti.
- postupak traenja sadraja koji se nalazi na CDN serveru:
1) browser alje zahtjev za bazni HTML objekt serveru (www.foo.com) koji odgovara s traenim
HTML objektom, browser nalazi referencu za objekt (http://www.cdn.com/www.foo.com/sports/
ruth.gif)
2) browser alje DNS upit za www.cdn.com koji je hostname za referencirani objekt, DNS server alje
upit autoritativnom DNS serveru koji pronalazi IP adresu servera koji e taj sadraj najbre dostaviti
(veinom je to CDN server koji je najblii ISP-u)
3) klijent prima DNS odgovor i alje zahtjev CDN serveru s odreenom IP adresom te prima objekt
(klijent nastavlja dalje koristiti taj CDN server budui da se IP adresa zapisuje u DNS cache klijenta
ili lokalnog DNS servera)
33
b) peerovi sami odravaju mreu (to je komplicirano ali dobro radi u praksi)
c) ipak postoji bootstrapping server
d) copyright
35
2. SLOJ VEZE
- jedinica podataka je okvir ili blok
- podaci se prenose preko razliitih veza i protokola, svaki protokol nudi drugaije usluge
- funkcije sloja veze: kontrola tijeka, otkrivanje i otklanjanje pogreaka
Servisi sloja veze
1) okviri - podacima se dodaju zaglavlja i jo neki podaci ("fizike adrese" koje se koriste za identificiranje
izvora/odredita razlikuju se od IP adresa)
2) pristup komunikacijskom kanalu - MAC (Media Access Control)
3) pouzdan prijenos meu vorovima i bez greaka
4) kontrola tijeka
5) otkrivanje pogreaka
6) ispravljanje pogreaka
7) HDX, FDX
Komuniciranje adaptera
- adapteri (NIC - Network Interface Card) - ethernet kartice, PCMCIA kartice, 802.11 kartice (wireless)
36
37
1) Provjera pariteta
a) paritet jednog bita (vertikalna ispravnost) - otkriva pogreke
b) paritet bitova u dvije dimenzije - otkriva i ispravlja pogreke (FEC - Forward Error Correction)
2) Checksum metode
- d bitovi podataka se tretiraju kao niz k-bitnih brojeva
- k-bitni brojevi se sumiraju te se taj dobiveni broj dodaje kao zatita - Internet checksum, TCP, UDP
- mali overhead ali i slaba zatita
38
39
- ako je ispravno primljen okvir alje se RR# (Reciever Ready # okvira koji se oekuje - svi okviri prije #
su time potvreni)
- reciever moe slati priznanje bez dozvoljavanja daljnjeg prijenosa
(RNR - Reciever Not Ready) - za daljnji nastavak poalje obian
RR
- kod full duplexa ako se ne alju podaci povratnom vezom alje se
samo ACK za svaki primljeni okvir
Kontrola greaka
- otkrivanje i ispravljanje greaka, izgubljeni okviri, oteeni okviri,
ARQ
ARQ - Automatic Repeat Request
- protokoli s automatskim ponavljanjem na zahtjev
a) Stop and Wait ARQ metoda
- izvor alje jedan okvir i eka ACK
- ako je primljen oteeni okvir - odbacuje ga, poiljatelj ide u
timeout i ako ne primi ACK tijekom timeouta ponovo alje okvir
- ako je ACK oteen - poiljatelj alje ponovo isti okvir, primatelj
usporeuje okvire i odbacuje duplikat i alje ACK
40
- okvir
42
43
fr
eq
ue
nc
y
ba
nd
s
time
a) slotted ALOHA
- svi okviri su iste veliine, vrijeme je podijeljeno na iste odsjeke, vorovi poinju slati okvire na poetku
odsjeka, vorovi su sinkronizirani, ako 2 ili vie vora alju u isti odsjeak, svi vorovi otkrivaju
koliziju
- kada vor dobije okvir poinje ga slati u slijedeem odsjeku, ako nema kolizije vor moe slati, ako ima
kolizije vor alje okvir u svakom slijedeem odsjeku (nakon oporavka - vrijeme ekanja) s
vjerojatnosti p dok ne uspije
- vjerojatnost p - kao bacanje novia, glava za slanje a pismo za ekanje
- ako je jedan aktivni vor, on alje pri punom kapacitetu, decentralizirano (svaki vor odluuje kada e
slati), odsjeci u vorovima moraju biti sinkronizirani, jednostavnost
- mogue kolizije, troi se vrijeme na ekanje i oporavak, ne omoguuje se otkrivanje kolizija
- efikasnost - kanal se korisno iskortava 37% vremena
b) pure (unslotted) ALOHA
- jednostavniji protokol, nema sinkronizacije
- kada okvir prvi puta stigne, odmah se alje (raste
vjerojatnost kolizije), ako doe do kolizije vor odmah
opet alje okvir s vjerojatnosti p, odnosno eka odreeno
vrijeme te ponovno alje s vjerojatnosti p
- efikasnost : 18%
As MAC
addr
datagram source,
dest address
As IP
addr
Bs IP
addr
IP payload
datagram
46
- stavka ARP tablice: IP adresa; MAC adresa; TTL (Time To Live - vrijeme nakon kojeg se IP/MAC veza
zaboravlja, obino je 20min)
- u sluaju da zna IP adresu od B ali nema MAC adresu u ARP tablici, on alje (broadcast FF-FF-FF-FFFF-FF) ARP paket (koji sadri IP odresu od vora B i svoju IP i MAC adresu), svi vorovi primaju ARP
upit, B prima ARP upit i odgovara voru A sa svojom MAC adresom, A sprema IP/MAC vezu u svoju
ARP tablicu
- ARP je plug-and-play protokol - sam se aurira
Prespajanje u drugi LAN
- A stvara paket s A kao izvorom (IP i MAC adresu) i B kao ciljem (IP adresu)
- A koristi ARP da dobije MAC aresu od R (routera) za 111.111.111.110
- A stvara okvir s MAC adresom od R kao ciljnom
- A alje okvir, R prima okvir
- R uzima IP paket iz okvira i vidi da je cilj vor B
- R koristi ARP da sazna MAC adresu od B, stvara okvir koji sadri IP paket i alje ga voru B
LAN Topologije
- Drvo (Tree), Sabirnica (Bus), Prsten (Ring), Zvijeznda (Star)
a) Sabirnica i drvo
- signal propagira kroz medij - "uju" ga sve stanice (potrebna je jedinstvena adresa stanice)
- full duplex veza izmeu stanice i izvora (dozvoljava istovremeno slanje i primanje)
47
Fiziki sloj
- kodiranje/dekodiranje, generiranje/micanje preambule, primanje/slanje bitova
LLC - Logical Link Control
- veza s viim slojevima, kontrola greaka i tijeka
- adresiranje ukljuuje odreivanje adresa LLC korisnika poiljatelja i primatelja (LLC korisnike adrese
su kao SAP kod ISO-OSI modela)
- servisi:
a) connectionless servis bez potvrda - ne prua kontrolu tijeka ni kontrolu greaka, nepouzdan prijenos
podataka
b) connection-mode servis - logika veza je uspostavljena izmeu korisnika te ima kontrole tijeka i
greaka
c) conectionless servis s potvrdama - alju se potvrde te ima kontrole greaka ali se ne uspostavlja
logika veza izmeu korisnika
- LLC protokol:
a) koristi asinkroni balansirani nain izvoenja operacija HDLC-a za connection-mode servis
b) connectionless servis bez potvrda izvodi se pomou nenumeriranih okvira
c) connectionless servis s potvrdama izvodi se pomou 2 nova nenumerirana okvira
d) dozvoljava multipleksiranje koristei LLC service access points (LSAP)
48
MAC okvir
49
- connectionless protokol, nesiguran (ne alju se ACK or NACK poiljatelju, mogue poporaviti
koritenjem TCPa)
- koristi CSMA/CD:
a) Adapter prima paket i stvara okvir
b) Ako oslukivanjem otkrije da je kanal slobodan poinje slati okvir, a ako je zauzet eka da se oslobodi
c) Ako adapter poalje okvir bez otkrivanja druge transmisije, gotov je sa slanjem
d) Ako adapter otkrije drugu transmisiju, prekida i alje jam signal (48 bitova)
e) Eksponencijalno ekanje: poslije m-te kolizije adapter uzima K random vrijeme tako da bira iz {0,
1,..., 2m-1}. Adapter eka K*512 bitova vremena
- uinkovitost je vea ako je vrijeme propagacije manje
Ethernet tehnologije
a) 10base2
- 10 oznaava 10Mbps, 2 oznaava duljinu kabla max. do 200m
- koristi se tanki koaksijalni kabel, obnavljala (do 4 obnavljala, to omoguuje duljinu voda do 925m i
broj vorova od 150, meutim ako bilo koja 2 vora alju u isto vrijeme doi e do kolizije)
50
b) 10baseT, 100baseT
- T znai twisted pair (parica)
- vorovi su povezani u zvjezdanu topologiju pomou hub-a, 100m max. udaljenost izmeu vora i hub-a
- hub je obnavljalo fizikog sloja - bitovi koji ulaze na jedan vod izlaze na sve ostale, ne prua
CSMA/CD
- ethernet koristi Manchester moduliranje - svaki bit ima tranziciju, mogua sinkronizacija izmeu vorova
Bridge (most)
- pohranjuje i proslijeuje ethernet okvire, selektivno alje okvire na temelju MAC adresa, koristi
CSMA/CD
- vorovi nisu svjesni postojanja mostova, radi na 2. razini ISO-OSI
- mogue povezivanje mrea razliitih tipova brzina, ne postoji ogranienje na veliinu mree
- postavljanjem mostova LAN se dijeli u segmente - filtrira pakete (okviri jednog LANa ne proslijeuju se
u drugi), svaki segment postaje svoja domena kolizije
- svaki most ima tablicu usmjeravanja (bridge table) ija stavka se sastoji od (MAC adresa vora, Broj
spojita mosta, Vrijeme ivota)
- mostovi ue koji vor se nalazi na kojem spojitu (self-learning) - kada prime okvir zapiu u tablicu
usmjeravanja
- mostovi su i plug-and-play (ne treba nita konfigurirati ve samo spojiti mreu na most)
- primjer: vor C alje okvir voru D, budui da se u tablici ne nalazi C most ga zapisuje, poplavljuje
(flooding) sve vorove na spojitima 2 i 3 i vor D prima okvir, D alje okvir voru C, most zapisuje u
tablicu vor D i proslijeuje okvir na spojite 1
- za poveanje raspoloivosti poeljno je imati redundantne, alternativne puteve od izvora prema odreditu
(spanning tree)
- zbog viestrukih puteva mogue je beskonano kruenje okvira mreom to je rijeeno tako da mostovi
iskljuuju nepotrebne puteve te ih ukljue po potrebi
52
- Bridge:
+ bre prespajanje (samo 2. razina), plug-and-play, tablice su samouee
- sav promet ide preko spanning tree makar postoji alternativni direktni put, ne nude zatitu od
"broadcast oluje" (ako jedan vor "poludi" i pone slati beskrajan niz okvira, svi e biti preneseni i
past e mrea)
- Router:
+ proizvoljne topologije, kruenje je ogranieno pomou TTL brojaa, zatita od "broadcast oluje"
- nije plug-and-play (trai konfiguriranje IP adresa), sloenije procesiranje (3. sloj)
- bridgevi su bolji u malim (par stotina hostova) mreama, routeri u velikim mreama (tisue hostova)
Switch (prespojnik)
- u biti to je samo bridge s vie ulaza
- alje okvire drugog sloja, filtrira koristei LAN adrese
- FDX veza preko istog spojita (slanje i primanje)
- moe slati istovremeno A-A', B-B'... bez kolizije
- esto se koristi u topologiji u obliku zvijezde
- kombinira mree razliitih brzina
- cut through prespajanje - slanje okvira od ulaza prema izlazu bez
ekanja da stigne cijeli okvir (ali treba barem zaglavlje - adresa)
53
hub
bridge
router
switch
izolacija
prometa
plug-and-play
optimalno
usmjeravanje
cut through
- ad hoc pristup - bez baznih stanica, beini hosti komuniciraju meusobno (okvir da bi stigao od A do B
moda mora biti usmjeravan preko X, Y, Z) - primjena na laptop konferencijama, bojitima,...
2.10. BLUETOOTH
- troi malo energije, mali radijus djelovanja (10-100m)
- frekvencija na 2.45 GHz nelicenciranog radijskog pojasa
- do 721kbps kapcitet kanala
- smetnje od beinih LANova, digitalnih beinih telefonca, mikrovalnih penica - smanjuju se frequency
hoppingom
2.11. POINT TO POINT DATA LINK CONTROL (PPP DLC)
- jedan poiljatelj, jedan primatelj (ne treba Media Access Control ni MAC adresiranje)
- popularni PPP DCL protokoli: PPP (point-to-point protocol) i HDLC
- prua: transparentnost bitova (mora moi prenijeti bilo koji niz bitova u data polju), otkrivanje greaka
(ne i ispravljanje), otkrivanje i javljanje greke na vezi gornjem sloju (mrenom), krajnji korisnici mogu
saznati/konfigurirati meusobne mrene adrese
- ne prua: ispravljanje greaka, kontrolu tijeka, dostavljanje OK izvan reda, veze s vie pristupa
- ispravljanje greaka, kontrola tijeka, ureivanje podataka su preneseni na vie slojeve
Podatkovni okvir
- zastavica - delimiter
- adresa - ne slui niemu jer postoji samo jedan mogui
primatelj
54
- prije prijenosa podataka peerovi moraju: konfigurirati PPP vezu (max duina okvira, autentifikacija connection oriented) i konfigurirati mreu (za dobivanje IP adrese se prenosi IP Control Protocol (IPCP)
da se saznaju/konfiguriraju IP adrese)
2.12. ATM (Asynchronous Transfer Mode) - Asinkroni nain prijenosa
- pokriva (zamjenjuje) 4 sloja ISO-OSI
- cilj je integrirani, end-end prijenos glasa, videa i podataka - zadravajui vremenske/kvalitetne zahtjeve
za glas i video (suprotno od Internet best-effort modela), telefonija "slijedee generacije", prespajanje
paketa (odreene duljine - elije) koristei virtualne vodove
- AAL sloj (ATM Adaptation Layer) - samo na krajevima ATM mree (segmentacija podataka)
- ATM sloj (sloj "mree") - prespajanje, usmjeravanje elija, definira strukturu ATM elija
- PHY sloj - fiziki sloj
- koristi se za povezivanje routera IP okosnica:
- IP preko ATM-a
- ATM kao zamjena za sloj veze - povezuje IP routere
AAL sloj
- "prilagoava" vie slojeve (IP ili ATM aplikacija) ATM sloju
- nalazi se samo na krajevima mree, ne i u switchevima
- okvir AAL sloja se dijeli na vie ATM elija (kao TCP u IP pakete)
- AAL sloj se dijeli na 2 podsloja:
a) Segmentation And Reassembly (SAR)
b) Convergence Sublayer (CS)
55
- podaci vieg sloja se prvo ugrauju u Common part convergence sublayer (CPCS) okvir u CS podsloju
- budui da je taj okvir prevelik i ne stane u ATM eliju mora se segmentirati
- SAR podsloj segmentira okvir te mu dodaje AAL zaglavlje i AAL trailer
- podatkovno polje je veliine 48 bajta podataka (zbog breg kreiranja elija kod prijenosa glasa izabrana
sredina izmeu 32 i 64)
ATM zaglavlje
- 5 bajtno zaglavlje
- ID virtualnog kanala (VCI - Virtual Channel ID) - mijenja se od veze do veze kroz mreu
- Tip podataka (PT - Payload Type)
- Bit prioriteta (CLP - Cell Loss Priority bit)
- CRC (HEC - Header Error Checksum)
- vie verzija AAL sloja (ovisno o ATM servisu):
- AAL1 - CBR (Constant Bit Rate)
- AAL2 - VBR (Variable Bit Rate) npr. MPEG video
- AAL3 - ABR (Available Bit Rate)
- AAL5 - za podatke (npr. IP podaci)
- AAL5 - SEAL (Simple and Efficient AL) - mali overhead, 4 bajta CRC-a, PAD omoguuje koritenje
vie elija od 48 bajtova (veliki AAL5 okviri dijele se u 48 bajtne ATM elije)
Network
Architecture
Internet
Service
Model
best effort
ATM
CBR
ATM
VBR
ATM
ABR
ATM
UBR
Bandwidth
none
constant
rate
guaranteed
rate
guaranteed
minimum
none
Guarantees ?
Loss Order Timing
Congestion
feedback
no
no
no
no (inferred
via loss)
yes
yes
yes
yes
yes
yes
no
congestion
no
congestion
no
yes
no
yes
no
yes
no
no
klasini IP
3 LAN segmenta
MAC adrese i IP adrese
IP preko ATM
mijenja LAN segmente s ATM mreom
ATM adrese i IP adrese
addres
s
data
CRC
flag
s
58
- handshaking (pitanje modema kod spajanja) - pregovaranje o protokolima modulacije, kontrole greaka i
kompresije, koordinacija spajanja
- fallback metoda (uspostavljanje optimalnog naina komunikacije) - prvo se spaja na najbri protokol,
ovisno o loim uvjetima tel. linije "pada" na ranije protokole i tako dugo dok se ne pronae
zajedniki jezik ili ne ponestane protokola (no carrier)
- irina govornog kanala je 4000Hz, PCM uzima 8000 uzoraka * 8 bitova po uzorku (razine amplitude) =
64000 bps
- zbog kvantizacijskog uma i ostalih smetnji uzima se samo 7 bitova po uzorku - 8000 * 7 = 56000 bps
- uvjeti za postizanje 56kbps - digitalni modem spojen na Javnu telefonsku mreu, V.90 podrka na oba
kraja, samo jedna A/D konverzija (korisnik-host), dovoljno kvalitetan vod
- kontrola toka:
a) softverska (XON/XOFF) - kontrolni znakovi ukljueni unutar podatkovnog toka
b) hardverska (RTS/CTS) - mijenjanje napona na signalnim linijama serijskog suelja
- modemima se upravlja pomoi AT naredbi
59
razmak izmeu
tonova 4,3 kHz
max 3 db
varijacije
frekvencija
POTS
upstream
downstream
1,1 MHz
20 kHz 25 kHZ
15
15
15
9
8
60