Professional Documents
Culture Documents
Mree
Primjena mrenih servisa i raunalnih komunikacija u
poslovnim sustavima
Napomena: ova skripta raena je primarno po knjizi Computer Networking A Top-Down Approach, 6. izdanje pratei
prezentacije s kolegija. Neki slajdovi su opirnije obraeni zbog nedostatka pojanjenja nekih pojmova i shema, no
veina prati koliinu gradiva iz prezentacija. Knjiga je dostupna na engleskom i bosanskom u punoj verziji na FOI Google
Drive, kao i 'skraena' verzija koja sadri samo ono to je obraeno na predavanjima.
Sadraj
1. UVOD RAUNALNE MREE I INTERNET .....................................................................................................4
1.1 to je Internet? .........................................................................................................................................................................4
1.1.1 Osnovni hardverski i softverski elementi ..............................................................................................................................4
1.1.2 Opis usluga .........................................................................................................................................................................4
1.1.3 Protokol..............................................................................................................................................................................4
1.2 Rub mree.................................................................................................................................................................................4
1.2.1 Pristupne mree ..................................................................................................................................................................4
1.2.2 Fiziki mediji .......................................................................................................................................................................5
1.3 Jezgra mree .............................................................................................................................................................................5
1.3.1 Prespajanje paketa .............................................................................................................................................................5
1.3.2 Prespajanje vodova.............................................................................................................................................................5
1.3.3 Mrea drugih mrea............................................................................................................................................................5
1.4 Kanjenje, gubici i propusnost...................................................................................................................................................6
1.4.1 Kanjenje paketa ................................................................................................................................................................6
1.4.2 Gubitak paketa ...................................................................................................................................................................6
1.4.3 Propusnost .........................................................................................................................................................................6
1.5 Slojevi protokola i modeli njihovih usluga .................................................................................................................................6
1.5.1 Modeli usluga TCP/IP i ISO/OSI .........................................................................................................................................6
1.5.2 Uahurivanje ......................................................................................................................................................................7
1.6 Mrena sigurnost ......................................................................................................................................................................7
1.7 Povijest mrea i interneta .........................................................................................................................................................7
3. TRANSPORTNI SLOJ......................................................................................................................................... 14
3.1 Transportne usluge i protokoli ................................................................................................................................................14
3.1.1 Transportni vs. mreni sloj ................................................................................................................................................ 14
3.1.2 Protokoli transportnog sloja u Internetu ............................................................................................................................ 14
3.2 Multipleksiranje i demultipleksiranje ......................................................................................................................................14
3.3 Transport bez uspostave veze UDP/User Datagram Protocol ...............................................................................................14
3.3.1 Format UDP segmenta ...................................................................................................................................................... 14
3.3.2 UDP Checksum zatitna suma......................................................................................................................................... 15
3.4 Principi pouzdanog prijenosa podataka ..................................................................................................................................15
3.5 Trasport orijentiran na vezu TCP/Transmission Control Protocol .........................................................................................15
3.5.1 Struktura segmenta .......................................................................................................................................................... 15
3.5.2 Procjena vremena odaziva/RTT/round trip time i vrijeme isteka/timeout ........................................................................... 15
3.5.3 Pouzdan prijenos podataka ............................................................................................................................................... 16
3.5.4 Kontrola toka.................................................................................................................................................................... 16
3.5.5 Upravljanje vezom ............................................................................................................................................................ 16
3.6 Kontrola zakrenja congestion control .................................................................................................................................16
3.6.1 Fairness - potenje ............................................................................................................................................................ 16
1.1 to je Internet?
Internetov/TCP/IP model
1.5.2 Uahurivanje
poiljalac prosljeuje poruku aplikacijskog sloja transportnom
transportni sloj poruci dodaje zaglavlje ije informacije e koristiti transportni sloj primatelja
segment poruka aplikacijskog sloja+zaglavlje transportnog
- enkapsulira poruku aplikacijskog sloja
transportni sloj poiljaoca prosljeuje segment mrenom sloju koji dodaje svoje zaglavlje s adresama izvorita i krajnjeg sustava
datagram segment transportnog sloja+zaglavlje mrenog
mreni sloj prosljeuje datagram u sloj veze koji dodaje svoje zaglavlje
frame/okvir datagram mrenog sloja+zaglavlje sloja veze
- u svakom sloju paket ima dva tipa polja zaglavlje i polje korisnikih informacija, tj. paket iz sloja iznad
2. Aplikacijski sloj
- poruka odgovora redak statusa tri polja verzija protokola HTTP/1.0 i HTTP/1.1
- statusni kod OK (posluitelj pronaao i alje traeni objekt)
- statusna fraza
- redci zaglavlja Connection da li e posluitelj zatvoriti TCP vezu nakon slanja poruke ili ne
- Date vrijeme kada je HTTP odgovor kreiran i poslan od strane posluitelja
- Server koji posluitelj je kreirao odgovor
- Last-Modified kljuan za cache objekata
- Content-Length broj bajtova u objektu koji se alje
- Content-Type vrsta objekta
- tijelo poruke sadri traeni objekt
10
11
12
13
3. Transportni sloj
- protokol transportnog sloja omoguava logiku komunikaciju izmeu procesa aplikacija koje se izvode na razliitim raunalima
- transportni protokoli se izvode u krajnjim sustavima, ne u mrenim routerima
- strana koja alje dijeli poruku aplikacijskog sloja u segmente, te ih predaje mrenom sloju
- strana koja prima sastavlja segment u poruke te ih predaje aplikacijskom sloju
- aplikacijama je na raspolaganju vie razliitih transportnih protokola
- Internet ima dva transportna protokola TCP i UDP
3.1.1 Transportni vs. mreni sloj
Mreni sloj
- logika komunikacija izmeu raunala
- ako mreni sloj ne moe garantirati kanjenje i propusnost
za transportne segmente slane izmeu raunala
Transportni sloj
- logika komunikacija izmeu raunalnih procesa
- transportni sloj ne moe garantirati isto za aplikacijske poruke slane izmeu
procesa
- ovisi o uslugama mrenog sloja i nadograuje usluge koje prua mreni sloj
- transportni protokol moe omoguiti pouzdan prijenos podataka aplikaciji ak i
ako je mreni protokol nepouzdan
- transportni protokol moe koristiti enkripciju za garantiranu tajnost podataka
ak i kad mreni sloj ne moe garantirati tajnost segmenata transportnog sloja
14
15
16
4.1 Uvod
4. Mreni sloj
17
- MTU/maximum transmission unit najvea mogua koliina podataka koju sloj podatkovne poveznice moe nositi, a razliit je za svaku mreu
- svaki IP datagram se enkapsulira unutar sloja podatkovne poveznice za prijenos od jednog usmjernika do drugog zbog ega MTU stavlja
ogranienje na veliinu IP datagrama
- fragmentacija postupak dijeljenja IP datagrama u vie manjih, tj. u fragmente kako bi mogli proi kroz izlaz koji ima manji MTU od originalne
veliine datagrama
- fragmenti manji dijelovi veih datagrama
- od jednog velikog datagrama nastaje vie manjih
- sastavljaju se samo na odreditu
- fragmenti se moraju sastaviti prije nego stignu do transportnog sloja na odreditu jer TCP i UDP oekuju primanje nefragmentiranih segmenata
iz mrenog sloja
- fragmenti se ponovno sastavljaju na krajnjim sustavima, a ne u usmjernicima
- idnetifier, flag, fragmentation offset kada stvara datagram, poiljatelj ga oznaava s identifikacijskim brojem, te izvorinim i odredinim
adresama
- kada usmjernik fragmentira datagrama, svaki fragment je oznaen s identifikacijskim brojem i
adresama originalnog datagrama
- kako bi raunalo bilo sigurno da je primilo sve fragmente nekog datagrama, posljednji fragment u flag
oznaci ima vrijednost 0, dok je kod svih ostalih ta vrijednost 1
- kako bi odredino raunalo znalo da li neki fragment nedostaje, polje offset se koristi za specificiranje
gdje je mjesto fragmentu u originalnom datagramu
4.3.2 Adresiranje IPv4
- IP adresa 32-bitni identifikator raunala i suelja usmjernika
- suelje veza izmeu raunala/usmjernika i fizikog voda
- usmjernici obino imaju vie suelja dok domain obino ima jedan ili dva
- IP adresa je pridruena svakom suelju
- podmrea/subnet ureaji s istim mrenim dijelom IP adrese pri emu je mogua meusobna fizika komunikacija bez uplitanja usmjernika
- za odreivanje podmrea, odpojite suelja od njihovih raunala i usmjernika pri emu nastaju izolirani otoci mrea
- svaka izolirana mrea je zapravo podmrea
- CIDR/classless InterDomain Routing adresiranje IP-a; mreni dio adrese je proizvoljne duljine
- npr. oblik adrese a.b.c.d/x x je broj bitova u mrenom dijelu adrese
- dobivanje IP adrese runo ju unosi administrator u datoteku ili se dobiju dinamiki od posluitelja zahvaljujui DHCP-u
18
- DHCP/Dynamic Host Configuration Protocol mreni administrator moe konfigurirati DHCP tako da raunalo ima istu IP adresu svaki put kada
se spoji na mreu ili moe imati privremenu IP adresu koja e pri svakom spajanju biti drugaija
- plug-and-play protokol jer automatizira mrene aspekte spajanja raunala na mreu
- daje raunalu vie informacija od samo IP adrese adresa usmjernika prvog-skoka/first-hop za
klijenta, ime i IP adresu te adrese posluitelja DNS-a, mrena maska/subnet mask
- DHCP spajanje korak 1 otkrivanje DHCP posluitelja pomou poruke DHCP discover koju klijent alje unutar UDP paketa na port 67
korak 2 posluitelj DHCP-a odgovara s porukom DHCP offer
korak 3 raunalo trai IP adresu porukom DHCP request
korak 4 posluitelj DHCP-a alje adresu u poruci DHCP ACK
- kako ISP dobiva blok adresa ICANN/Internet Corporation for Assigned Names and Numbers
- dodjeljuje adrese, nadgleda DNS i dodjeljuje imena domena i rjeava sporove
- NAT/Network adress translation jednostavniji pristup dodjeljivanju adresa
- svi datagrami koji naputaju lokalnu mreu imaju jednaku izvorinu NAT IP adresu ali razliite brojeve
izvorinog porta
- lokalne mree koriste samo jednu IP adresu za vanjski svijet
- ISP ne mora dodijeliti cijeli blok adresa korisniku ve je dovoljna samo jedna IP adresa za sve ureaje
- adrese ureaja unutar lokalne mree se mogu mijenjati bez potrebe da se o tome obavjetava vanjski svijet
- moe se promijeniti ISP bez da se ureajima mijenjaju IP adrese u lokalnoj mrei
- NAT usmjernik se prema vanjskom svijetu ponaa kao jedan ureaj s jednom IP adresom i skriva detalje
lokalne mree jer ureaji unutar lokalne mree nisu eksplicitno adresirani, tj. nisu vidljivi vanjskom svijetu
NAT usmjernik mijenja izvorinu IP adresu i broj porta odlaznog datagrama u NAT IP adresu i novi broj
porta
udaljeni klijent/posluitelj odgovara koristei NAT IP adresu i novi broj porta kao odredinu adresu
usmjernik pamti u NAT tablici prevoenja sve parove prevoenja izvorinih adresa i portova u NAT-ove
za dolazne datagrame NAT mijenja NAT IP adresu i novi broj porta u polju odredine adrese svakog
dolaznog datagrama s odgovarajuom izvorinom adresom i brojem porta spremljenima u NAT tablici
svi datagrami koji pristiu iz WAN-a u NAT usmjernik imaju istu odredinu IP adresu
npr. raunalo 10.0.0.1, 3345 alje datagram na 128.119.40.186, 80
NAT usmjernik mijenja izvorinu adresu datagrama iz 10.0.0.1, 3345 u 138.76.29.7, 5001
odgovor dolazi s adresom odredita 138.76.29.7, 5001
NAT usmjernik mijenja odredinu adresu datagrama iz 138.76.29.7, 5001 u 10.0.0.1, 3345
- polje porta je 16-bitni broj
- NAT problematika portovi bi trebali adresirati procese, a ne raunala
- usmjernici bi trebali procesirati pakete samo do 3. sloja, dok NAT zahtjeva funkcije do 4. sloja
- kri pravilo od-kraja-do-kraja raunala bi trebala direktno komunicirati bez posrednika koji mijenja IP adrese i portove
- nedostatak IP adresa trebao bi se rijeiti s IPv6
- intervenira kod P2P aplikacija, ukljuujui dijeljenje podataka
- NAT traversal posredovanje/relaying koji se moe koristiti kod P2P aplikacija i Skype-a
klijent iza NAT-a uspostavlja vezu s posrednikom/relay
vanjski klijent uspostavlja vezu s posrednikom/relay
posrednik razmjenjuje pakete izmeu te dvije veze
4.3.3 ICMP Internet Control Message Protocol
- koriste ga raunala i usmjernici da bi meusobno razmjenjivali informacije o mrenom sloju
- najvie se koristi za prijavu greaka/error reporting
- ICMP poruke se prenose unutar IP datagrama na isti nain na koji se TCP i UDP segmenti prenose
- ICMP poruke imaju polja tip i kod i sadre zaglavlje u prvih 8 bitova IP datagrama koji je i dopustio generiranje ICMP poruke kako bi poiljatelj
mogao odrediti koji datagram je uzrokovao greku
- ping program alje eho ICMP poruku tipa 8, kod 0 specificiranom posluitelju na to on odgovara eho porukom tip 0 kod 0
- traceroute doputa korisniku da prati putanju od posluitelja do posluitelja
kako bi odredio imena i adrese usmjernika izmeu izvorita i odredita, traceroute na izvoritu alje seriju UDP segmenta
prema odreditu
svaki od tih datagrama prenosi UDP segment s brojem porta koji se vjerojatno ne koristi prvi ima TTL1, drugi TTL2 itd.
kada n-ti skup datagrama stigne do n-tog usmjernika, on odbacuje datagram, alje izvoru ICMP poruku upozorenja tip 11, code
0, ukljuujui ime i IP adresu usmjernika.
kada ICMP poruka stigne do izvorita, on biljei RTT
- uvjeti zaustavljanja slanja UDP segmenata jedan od datagrama e eventualno stii do odredita na to raunalo odredita alje poruku
'nedostian port' tipa 3, code 3 natrag na izvorite
kada izvorite primi tu poruku zna da ne mora vie slati
19
5.1 Uvod
- vor/node bilo koji ureaj koji izvrava protokole sloja podatkovne poveznice = krajnja raunala, usmjernici, prespojnici, WiFi pristupne toke
- poveznica/link komunikacijski kanali koji povezuju susjedne vorove du komunikacijskog put
- ina ili beina poveznica, LAN
- okvir/frame vor koji alje enkapsulira datagram u okvir i alje ga na poveznicu
- sloj podatkovne poveznice ima odgovornost prijenosa datagrama od jednog vora do fiziki susjednog vore preko poveznice
- datagrami se prenose preko razliitih poveznice koritenjem protokola podatkovne poveznice Ethernet na prvoj, frame relay na sredinjoj i
802.11 na zadnjoj poveznici
- svaki protokol prua razliite usluge, tj. neki protokol moe ali ne mora pruati pouzdani prijenos preko poveznice
5.1.1 Usluge sloja podatkovne poveznice
- framing/stvaranje okvira svi protokoli podatkovne poveznice uahuruju svaki datagram mrenog sloja u okvir sloja podatkovne poveznice
prije nego ga alju kroz poveznicu
- okvir se sastoji od polja podataka u koji se ubacuje datagram mrenog sloja, zaglavlja i zavretka okvira/trailer
- MAC/ Medium Access Address adresiranje u zaglavlju okvira za definiranje izvorita i odredita
- samu strukturu okvira odreuje protokol
- pouzdan prijenos izmeu susjednih vorova koristi se kod poveznica s visokom vjerojatnou greaka beine/wireless
- upravljanje tokom/flow control usklaivanje brzine izmeu slanja i primanja susjednih vorova
- detekcija i korekcija pogreaka primatelj detektira prisutnost pogreaka uzrokovanih priguenjem signala i drugim smetnjama, te signalizira
poiljatelju da napravi ponovno slanje ili odbacuje okvir
- primatelj identificira i ispravlja pogreke na razini bita bez ponovnog slanja
- jednosmjerni/half-duplex i dvosmjerni/full-duplex prijenos kod jednosmjernog prijenosa vorovi na oba kraja poveznice mogu slati i primati
ali ne u isto vrijeme
5.1.2 Gdje se sloj podatkovne poveznice implementira
- u svakom krajnjem voru
- podatkovna poveznica je implementirana u 'mrenom adapteru'/NIC/network interface card ili na ipu Ethernet card, chipset
- prikljuuje se na sistemsku sabirnicu raunala kombinacija hardvera, softvera i firmvera
poiljatelj enkapsulira datagram u okvir i dodaje bitove za detekciju pogreaka, pouzdan prijenos, upravljanje tokom itd.
primatelj trai pogreke, pouzdani prijenos, upravljanje tokom itd., ekstrahira datagram i prosljeuje ga viem na primateljevoj strani
20
21
- struktura Ethernet okvira adapter koji alje enkapsulira IP datagram u Ethernet okvir i prosljeuje ga na fiziki sloj
adapter koji prima uzima okvir iz fizikog sloja, ekstrahira IP datagram i prosljeuje ga u mreni sloj
- preamble 7 bajtova s uzorkom 10101010 iza kojih slijedi jedan bajt s uzorkom 10101011
- koristi se za sinkronizaciju brzine slanja izmeu poiljatelja i primatelja
- addresses 6 bajtne izvorine i odredine MAC adrese
- ako adapter primi okvir s odredinom adresom koja je ili jednaka njegovoj ili je sveodredina, onda
prosljeuje podatke iz okvira protokolu mrenog sloja, u suprotnom adapter odbacuje okvir
- type pokazuje na protokol vie razine
- data podaci od 46 do 1500 bajtova
- CRC cyclic redundancy check kod primatelja ako se detektira pogreka okvir se odbacuje
- znaajke bez uspostave veze nema rukovanja izmeu primateljevog i poiljateljevog mrenog adaptera
nepouzdan primateljev mreni adapter ne alje poruke potvrde ili ne-potvrde poiljateljevom mrenom adapteru
- podaci u odbaenim okvirima se oporavljaju samo ako poetni poiljatelj koristi na viem sloju protokol
pouzdanog prijenosa, u suprotnom su odbaeni podaci izgubljeni
MAC protokol unslotted CSMA/CD with binary backoff
ograniena udaljenost izmeu dva vora 100 m kod koritenja UTP-a/isprepletene bakrene parice
- nekoliko km kod koritenja optike
- kod veih udaljenosti dolazi do znaajne degradacije performansi zbog slabljenja signala
- 802.3 Ethernet standardi postoji puno razliitih Ethernet standarda ali sa zajednikim MAC protokolom i formatom okvira
- razliite brzine: 2 Mbps, 10 Mbps, 100 Mbps, 1 Gbps, 10 Gbps
- razliiti mediji na fizikom sloju: optika i kabel
22
23