Professional Documents
Culture Documents
Uvod U Prenos Podataka PDF
Uvod U Prenos Podataka PDF
Konvertuje Konvertuje
Generiše podatke u primljeni Prihvata
Prenos
podatke signale signal u dolazeće
podataka
koje treba pogodne podatak podatke
preneti za prenos
PC PC
modem modem
mašina mašina
Javna telefonska
mreža
22
Prenos podataka – Uvod u prenos podataka
U najjednostavnijem obliku prenos podataka izmedju dva direktno povezana uredjaja (računara)
se ostvaruje preko prenosnog medijuma koji direktno povezuje ta dva uredjaja. Ipak, u praksi, najčešće se
javlja potreba za medjusobnim povezivanjem ne samo dva nego i većeg broja uredjaja. U takvim
situacijama korektno rešenje je ono kod koje se svaki uredjaj povezuje na komunikacionu mrežu.
Globalno posmatrano, ne postoji neka opšta taksonomija (sistematizacija) na osnovu koje delimo
računarske mreže. Prećutno se koriste dve, čini se ravnopravne podele, od kojih se prva zasniva na
tehnologiji prenosa, a druga na obimu mreže. Ukazaćemo sada na osobine jedne i druge podele.
Razlikujemo dva tipa tehnologija prenosa, a to su:
(a) mreže tipa emisija-svima (broadcast networks); i
(b) mreže tipa tačka-ka-tački (point-to-point networks)
Kod mreže tipa emisija-svima postoji jedinstveni komunikacioni kanal koji je zajednički za sve
mašine u mreži. Kratke poruke koje nazivamo paketi, predaju se od strane bilo koje mašine, a primaju ih
sve ostale. Adresnim poljem (sastavni deo paketa) specificira se kojoj je mašini poruka namenjena.
Nakon prijema paketa, svaka mašina proverava adresno polje. Ako je paket namenjen toj mašini, ona vrši
njegovu obradu, a za slučaj da nije, mašina ga ignoriše. Moguća je i varijanta da se paket adresira na
takav način da ga primaju svi (zajednička adresa za sve mašine). Ovaj način rada se naziva emisija-svima
(broadcasting). U slučaju kada paket prima samo odredjeni podskup mašina takvu emisiju nazivamo
selektivnu (multicasting).
Mrežu tipa tačka-ka-tački čini veći broj veza koje egzistiraju izmedju parova mašina. Da bi se
prešao put od izvorišta do odredišta paket kod ovog tipa mreže mora prvo da prodje (poseti) jednu ili veći
broj usputnih mašina. Često postoji veći broj puteva, različitih dužina, tako da su efikasni algoritmi za
trasiranje (rutiranje) paketa od izuzetne važnosti kod ovih mreža. I pored izuzetaka, postoji jedno opšte
pravilo da se manje, geografski lokalizovane, mreže realizuju na principu emisija-svima (broadcasting), a
veće mreže na bazi tačka-ka-tački (point-to-point) pristupa.
Alternativni kriterijum za klasifikaciju mreža zasniva se na njihovom obimu. U konkretnom
slučaju pojam obim se odnosi na prostor u kome su računari rasporedjeni. Na slici 2.2 prikazana je
klasifikacija mreža koja odgovara ovoj podeli.
23
Prenos podataka – Uvod u prenos podataka
Kod visoko-paralelnih mašina SIMD tipa, kao i kod multiprocesorskih i multiračunarskih mašina
MIMD tipa, prenos se obavlja na krataka rastojanja, a obično je veoma brz i paralelnog je tipa. Za nas od
interesa u ovom kursu je serijski prenos podataka pa je to glavni razlog zbog čega u daljoj analizi princip
prenosa podataka kod ovih računara nećemo razmatrati. Osobine ovih mašina kao i tehnike prenosa
podataka izučavaju se iz predmeta Paralelni računarski sistemi.
Lokalne računarske mreže, koje nazivamo LAN-ove, su komunikacione mreže koje se uobičajeno
koriste za povezivanje većeg broja PC mašina ili radnih stanica na nivou zgrade ili kompleksa zgrada
nekog preduzeća, fabrike, fakulteta, itd. LAN-ove karakterišu sledeće osobine:
24
Prenos podataka – Uvod u prenos podataka
1) ograničeni obim
2) prenos signala se vrši po jedinstvenom kablu na kome se povezuju mašine. Brzina prenosa
podataka najčešće je u opsegu od 10-100 Mbps (megabitova/sekundi), mada postoje i LAN-ovi kod
kojih je brzina nekoliko stotina Mbps, pa i desetinu i stotinu Gbps.
3) moguće su različite topologije.
Dve standardne topologije koje najčešće srećemo kod LAN-ova su prikazane na slici 2.3.
računar
računar
...
kabl
25
Prenos podataka – Uvod u prenos podataka
Kada računari, terminali, i/ili drugi uredjaji namenjeni za obradu padataka žele da razmenjuju
podatke, procedure koje su sastavni deo ovog procesa mogu biti veoma složene. Razmotrimo na primer
prenos fajlova izmedju dva računara. Kao prvo, da bi prenos bio moguć, mora da egzistira put za prenos
podataka izmedju oba računara. Put može biti izveden kao direktni, ili da se prenos obavlja preko
komunikacione mreže. No, pored prenosnog puta, potrebno je da egzistira i mnogo šta više o čemu ćemo
u daljem delu ovog teksta govoriti više. To se pre svega odnosi na specifični softver koji se ugradjuje u
računare koji predstavljaju sastavne delove komunikacionog sistema.
Tipični zadaci koji se pri prenosu podataka obavljaju su sledeći:
1. Izvorišni sistem mora da:
a) aktivira direktni put za prenos podataka,
b) informiše komunikacionu mrežu o nameri da želi da ostvari vezu sa odredišnim sistemom
2. Izvorišni sistem mora da ustanovi da li je odredišni sistem spreman da primi podatke.
3. Fajl transfer aplikacija izvorišnog sistema mora da ustanovi da li je fajl manager program
odredišnog sistema spreman da prihvati i memoriše fajl koji je namenjen odredjenom
(specificiranom) korisniku.
4. Ako su korišćeni fajl formati oba sistema nekompatibilni, tada jedan od sistema mora da obavi
funkciju prevodjenja jednog oblika formata u drugi.
Na osnovu prethodnih sagledavanja jasno je da mora da egzistira visok nivo saradnje izmedju oba
računarska sistema kao učesnika u prenosu podataka. Umesto da se logika za obavljanje ovog složenog
zadatka implementira kao jedinstveni modul, zadatak se obično deli na podzadatke, pri čemu se svaki
zadatak implementira posebno. Kod protokol arhitekture, moduli su uredjeni u vertikalni-redosled
(nazvan stack-vidi sliku 2.4). Svaki nivo stack-a obavlja odgovarajući podskup funkcija koji je potreban
za komuniciranje sa drugim sistemom. Niži nivo obavlja primitivniju funkciju, ali takodje i servise
(usluge) za potrebe narednog višeg nivoa. U idealnom slučaju, nivoi treba da su tako definisani, da
promene jednog nivoa ne zahtevaju promene na drugim nivoima.
Naravno, da bi se ostvarila korektna razmena podataka, izmedju oba računara, isti skup nivovskih-
funkcija mora da egzistira kod oba sistema. Komunikacija se ostvaruje zahvaljujući egzistenciji
odgovarajućih ravnopravnih-nivoa (peer levels), kod oba sistema koji medjusobno komuniciraju. Peer
nivoi komuniciraju pomoću formatiranih blokova podataka poštujući pri tome skup pravila ili dogovora
(konvencija) koje nazivamo protokol. Ključne karakteristike protokola su:
26
Prenos podataka – Uvod u prenos podataka
protokol nivoa 5
nivo 5 nivo 5
peer nivoi
interfejs
nivoa4/5
protokol nivoa 4
vertikalni-redosled (stack)
nivo 4 nivo 4
peer nivoi
interfejs
nivoa3/4
protokol nivoa 3
nivo 3 nivo 3
peer nivoi
interfejs
nivoa2/3
protokol nivoa 2
nivo 2 nivo 2
peer nivoi
interfejs
nivoa1/2
protokol nivoa 1
nivo 1 nivo 1
peer nivoi
protokola nivoa n. Često se u stručnoj literaturi koristi i termin celina (entity). Kod različitih mašina
pojam peer referencira ono što objedinjava aktivnosti odgovarajućeg nivoa. To znači da celina predstavlja
sve ono što je u stanju da predje i prima informaciju, dok su peer (slični) nivoi oni koji komuniciraju
izmedju sebe koristeći odredjeni tip protokola. Kod realnih sistema ne vrši se direktni prenos podataka sa
nivoa n jedne mašine na nivo n druge mašine. Umesto toga svaki nivo predaje podatke i upravljačku
informaciju nivou ispod njega sve dok se ne dostigne najniži nivo, tj. nivo fizičkog medijuma, preko koga
se vrši prenos signala. Na slici 2.4 virtuelna (zamišljena) komunikacija je predstavljena isprekidanim
linijama, dok je fizička (stvarna) kominikacija označena punim linijama. Izmedju svakog para susednih
slojeva postoji interfejs. Interfejs definiše koje primitivne operacije i servise se od strane nižeg nivoa
nude višem nivou.
Skup nivoa i protokola naziva se mrežna arhitektura. Lista protokola koji se koriste od strane
nekog sistema, pri čemu je jedan protokol dodeljen jednom nivou, poznata je pod imenom protokol-
magacin (protocol stack).
Primer:
Cilj ovog primera, prvenstveno zadat u formi teksta, je da pruži čitaocu više detalja o načinu
prenosa fajlova kod jednostavnih protokol-arhitektura.
Uobičajeno za proces komuniciranja-podacima kažemo da čine sledeća tri tipa agenta: aplikacije,
računari, i mreže.
Aplikacije se izvršavaju na računarima koji obično podržavaju simultano izvršenje većeg broja
aplikacija. Računari su povezani u mreže, a podaci, koji se razmenjuju, prenose se od strane mreže od
jednog računara ka drugom.
Imajući u vidu ovakav koncept, prirodno je organizovati komunikacioni zadatak na tri releativno
nezavisna nivoa: nivo pristupa mreži, transportni nivo, i aplikacioni nivo.
U nadležnosti nivoa pristupa-mreži (network access layer) je razmena podataka izmedju
računara i mreže na koju je taj računar povezan. Računar-predajnik mora da saopšti mreži adresu
odredišnog računara kako bi mreža znala da usmeri podatke ka odgovarajućem odredištu. Takodje,
računar-predajnik može da zatraži uslugu odredjenih servisa mreže, kakav je na primer prioritet u brzini
prenosa poruke, i dr. Specifični softver koji se koristi za implementaciju ovog nivoa zavisi od tipa mreže,
kakvi su LAN, MAN, WAN, i dr.
Nezavisno od prirode aplikacija koje razmenjuju podatke, uobičajeno je da postoji zahtev za
pouzdanu razmenu podataka. Mehanizmi pomoću kojih se ostvaruje ovaj zahtev pripadaju
transportnom-nivou (transport layer).
Konačno, aplikacioni nivo (application layer) sardži logiku koja je potrebna za podršku rada
različitim korisničkim aplikacijama. Za svaki tip aplikacije, kakav je recimo fajl transfer, postoji poseban
modul koji je specifičan za tu aplikaciju. Na slikama 2.5 i 2.6 prikazana je jedna jednostavna arhitektura.
Na slici 2.5 prikazana su tri računara povezana u mrežu. Svaki računar sadrži softver koji se odnosi na
nivo pristupa-mreži i nivoa-transporta, kao i softver na aplikacionom nivou za jednu ili veći broj
aplikacija. Svaka aplikacija u okviru računara mora da ima adresu koja je jedinstvena u okviru tog
računara i kojia omogućava transportnom nivou da podrži veći broj aplikacija u svakom od računara. Ove
adrese se nazivaju portovi (ports ili service access points-SAPs).
Na slici 2.6 prikazano je kako na bazi protokola komuniciraju moduli instalirani na različitim
računarima. Predpostavimo da aplikacija SAP 1 koja se izvršava na računaru X želi da pošalje poruku
drugoj aplikaciji SAP 2 koja se izvršava na računaru Y. Aplikacija na računaru X predaje poruku svom
transportnom nivou zajedno sa instrukcijom (naredbom) da se poruka preda aplikaciji SAP 2 na računaru
Y. Transportni nivo preda poruku nivou pristupa mreži i izda naredbu da se poruka preda računaru Y.
Naglasimo da mreža nezna odredišnu SAP. Sve što ona treba da zna je informacija da je poruka upućena
računaru Y.
28
Prenos podataka – Uvod u prenos podataka
SAP
Aplikacije
1 2 3 4
Transport Adresa
mreže
Pristup mreži Aplikacije
1 2
Transport
Komunikacione
mreže Pristup mreži
Aplikacije
1 2 3
Transport
Pristup mreži
Računar X Računar Y
Aplikacioni protokol
Aplikacija Aplikacija
Transportni protokol
Transport Transport
Svaku transportnu-PDU jedinicu transportni nivo predaje nivou pristupa mreži sa ciljem da se
informacija preda odredišnom računaru. Nivo pristupa mreži izdaje zahtev za prenos tako što primljenoj
informaciji pridružuje mrežno-zaglavlje (network header). Kombinacija transportnog-PDU-a i mrežnog
zaglavlja naziva se PDU-za-pristup-mreži ili paket. Obično sastavni delovi informacija o mrežnom
zaglavlju su :
• adresa odredišnog računara- mreža mora da zna kom računaru u mreži informacija treba da
bude isporučena.
• zahtevi za odredjenim pogodnostima (beneficije)- protokol za pristup mreži može da zahteva
od mreže pružanje odredjenih usluga, kakva je recimo na primer, prioritet u brzini prenosa.
Aplikacioni podaci
Zaglavlje
transportnog
nivoa
Jedinice podataka
transportnog protokola
Zaglavlje
transportnog nivoa
Jedinice podataka
mrežnog protokola
Zaglavlje Zaglavlje (paketi)
mrežnog mrežnog
nivoa nivoa
Na slici 2.8 Prikazani su svi relevantno prethodno diskutovani koncepti kao i interakcija izmedju
modula u toku prenosa jednog bloka podataka.
Izvor X Odredište Y
Pristup Pristup
mreži DHost DHost mreži
paket
30
Prenos podataka – Uvod u prenos podataka
31
Prenos podataka – Uvod u prenos podataka
Računar A Računar B
AP AP
aplikaciono aplikaciono
orijentisane orijentisane
funkcije funkcije
mrežno mrežno
orijentisane orijentisane
funkcije funkcije
mrežno okruženje
OSI okruženje
okruženje realnog sistema
32
Prenos podataka – Uvod u prenos podataka
AP AP
komunikacioni
subnet
Mrežno okruženje
OSI okruženje
33
Prenos podataka – Uvod u prenos podataka
Aplikacioni proces krajnjeg korisnika, aplikaciju čini veći broj procesa, tj.
korisnika
podaci
Nivo Nivo
DH podaci DT
veze veze
Fizički Fizički
bitovi
nivo nivo
Analiziraćemo sada aktivnosti kada aplikacioni proces na predajnoj strani predaje podatke
aplikacionom procesu na prijemnoj strani. Podaci se prvo predaju nivou aplikacije. Ovaj nivo podacima
pridružuje zaglavlje (header) AH (zaglavlje može biti i nulto), a novo formiranu poruku (podaci plus AH
zaglavlje) predaje zatim prezentacionom nivou. Prezentacioni nivo, može da transformiše (procesira)
primljene podatke na različite načine (recimo obavi šifrovanje), na kraju obrade transforamacionim
podacima dodaje zaglavlje PH i transformisane podatke predaje nivou sesije. Treba naglasiti da
prezentacioni nivo nije “svestan” toga koji deo od primljenih podataka sa višeg nivoa predstavlja
zaglavlje AH, a koji deo se odnosi na podatke. Proces se nadalje ponavlja sve dok podaci ne dostignu
fizički nivo, nakon čega se oni prenose do prijemne strane. Na prijemnom kraju, kako se poruka prenosi
prema višim nivoima, odbacuju se odgovarajuća pridružena zaglavlja i obavlja ako je potrebno inverzno
procesiranje (kakvo je dešifrovanje) sve dok konačno podaci ne pristignu do prijemnog aplikacionog
procesa. Ključna ideja je sledeća. I pored toga što se stvarni prenos podataka organizuje kao vertikalni
prenos, softver svakog nivoa se kreira kao horizontalni. Svrha svakog zaglavlja je da doda novu
informaciju koja je potrebna da se ostvari (podrži) komunikacija tipa peer-to-peer. Pridruženo zaglavlje i
podaci nazivaju se, kako smo već napomenuli, PDU (Protocol Data Unit). Svaki PDU kažemo da
enkapsulira podatke dodavanjem odgovarajućeg zaglavlja.
Kao što se vidi sa slike 2.12, na nivou veze sa prednje strane se dodaje zaglavlje DH, a sa zadnje
strane rep DT.
Na Slici 2.13 prikazana su imena jedinica podataka koja se razmenjuju izmedju nivoa u ISO-OSI
modelu.
35
Prenos podataka – Uvod u prenos podataka
ISO-OSI referentni model je pre svega zamišljen da posluži kao šablon radi kreiranja i
struktuiranja komunikacionog podsistema na kome se zasnivaju standardne aktivnosti koje se pridružuju
svakom nivou. On nije zamišljen kao standard kod koga je svakom nivou pridružen po jedan protokol,
već kao standardni model, ili uzor, za klasifikaciju (definisanje) komunikacionih funkcija.
Nezavisno od aktivnosti koje su se sprovodile od strane ISO, ministarstvo odbrane SAD-a (60-tih
godina prošlog veka) finansiralo je istraživanje na projektima čiji je glavni cilj bio razvoj efikasne
računarske komunikacije i umrežavanje računara. Kao rezultat istraživanja razvijena je bila mreža, koja je
u početnoj fazi povezivala različite univerzitetske i naučno-istraživačke centre, poznate pod imenom
ARPANET. Kasnije se ova mreža povezala sa najšire rastprostranjenom mrežom Internet.
Skup protokola koji se koristi za prenos podataka po Internetu je poznat pod imenom
Transmission Control Protocol / Internet Protocol (TCP/IP). U suštini skup protokola čini jednu
kolekciju protokola pri čemu se ti protokoli koriste kao Internet standardi definisanih od strane Internet
Architecture Board (IAB).
Treba istaći da ne postoji oficijelni TCP/IP protokol model kakav je to bio slučaj sa OSI. Ipak, držeći
se ISO-OSI modela kao uzora, komunikacioni zadatak kod TCP/IP-a je moguće organizovati u sledeća
pet relativno nezavisna nivoa:
• aplikacioni nivo
• host-to-host, ili transportni sloj
• internet sloj
• sloj za pristup mreži
• fizički nivo (sloj)
Fizički nivo pokriva fizički interfejs izmedju uredjaja za prenos podataka, kakav je recimo računar i
prenosnog medijuma ili mreže. Ovaj nivo daje detalje koj se odnose na specifikaciju karakteristika
prenosnog medijuma, priroda signala, brzina prenosa podataka, tip konektora, i druge srodne podatke.
36
Prenos podataka – Uvod u prenos podataka
Sloj za pristup mreži pokriva detalje koji se tiču razmene podataka izmedju krajnjeg sistema i mreže
na koju je taj sistem poveza. Računar koji predaje mora da dostavi mreži adresu odredišnog računara tako
da mreža usmeri podatke ka odredištu. Računar koji predaje može da traži i odredjene servise kojih treba
da obezbedi mreža.
Kada dva uredjaja povezana na dve različite mreže treba da komuniciraju izmedju sebe neophodno je
da postoji procedura koja će obezbediti prenos poruke preko većeg broja medjusobno povezanih mreža.
Ovu funkciju obavlja internet nivo. IP protokol je taj koji u ovom slučaju obezbedjuje funkciju rutiranja
poruke preko većeg broja mreža. Ruter je procesor koji povezuje dve mreže i čija je primarna funkcija da
prenese podatke iz jedne mreže ka drugoj.
Nezavisno od prirode aplikacija koje razmenjuju podatke, obično postoje zahtevi koji se odnose na to
da se podaci razmene pouzdano i u korektnom redosledu. To znači, moramo biti sigurni da su svi podaci
pristigli u istom redosledu kako su i poslati. Ovaj mehanizam je u suštini nezavisan od tipa aplikacije, a
realizuje se od strane transportnog sloja, tj. TCP protokola.
Konačno, aplikacioni sloj ima ugradjenu logiku koja podržava različite tipove korisničkih aplikacija.
Za svaki tip aplikacije, kakav je recimo transfer fajlova, postoji poseban modul koji je tipičan za tu
aplikaciju.
Na slici 2.14 prikazan je uporedni odnos TCP/IP i ISO-OSI arhitektura kao i hardversko-softverske
metode implementacija različitih nivoa protokola.
TCP/IP OSI
aplikacioni
aplikacioni
prezentacioni
korisni~ki
sesija
prostor
transportni
transportni
softver
internet
mre`ni
operativni
sistem
firmver
hardver
pristup mre`i
veze
fizi~ki fizi~ki
37
Prenos podataka – Uvod u prenos podataka
TCP
zaglavlje
TCP segment
IP
zaglavlje
IP datagram
mrežno
zaglavlje
paket mrežnog nivoa
IP mre`ni
38
Prenos podataka – Uvod u prenos podataka
2.6. Standardi
39