ANALIZA KORIŠTENJA REDUNDANTNIH POVEZNICA SA SVRHOM POVEĆANJA UKUPNOG KAPACITETA

Size: px
Start display at page:

Download "ANALIZA KORIŠTENJA REDUNDANTNIH POVEZNICA SA SVRHOM POVEĆANJA UKUPNOG KAPACITETA"

Transcription

1 SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA DIPLOMSKI RAD br ANALIZA KORIŠTENJA REDUNDANTNIH POVEZNICA SA SVRHOM POVEĆANJA UKUPNOG KAPACITETA Ivan Sokol Zagreb, rujan 2008.

2 Mentor rada: Prof. dr. sc. Alen Bažant Voditelj rada: Vedran Mikac, dipl. ing.

3 Sadržaj Uvod Opis korištenih alata Osnove aplikacije iptables Popis korištenih naredbi u aplikaciji Iptables Automat stanja Protokol TCP Strategija usmjeravanja Opis korištenja redundantne poveznice Prethodni radovi Metoda rada Paketski način rada Konekcijski način rada Opis korištenih naredbi Pripremne skripte Glavne skripte Pomoćne skripte Testiranje i rezultati Postupak testiranja Zaključak Literatura Skraćenice Popis stranih izraza Dodatak... 52

4 Uvod U ovom radu obrađuje se mogućnost korištenja redundantnih poveznica u svrhu povećanja ukupnog raspoloživog kapaciteta. U prošlosti su samo važniji serveri i vrlo važne poveznice kod poslovnih korisnika koristili redundantnost. Kućni korisnici koji su se spajali modemskim vezama nisu imali tu mogućnost. U slučaju prekida veze nije bilo moguće u vrlo kratkom vremenu ponovno spajanje na Internet. Pojavom širokopojasnog pristupa Internetu i uvođenjem xdsl (engl. Digital Subscriber Line) i kabelskih tehnologija otvorila se mogućnost korištenja redundantnosti. Primjenom bežične tehnologije u LAN-u i naglim širenjem usluga besplatnog pristupa Internetu prosječnom je korisniku omogućen pristup Internetu preko više pristupnih mreža. Cilj rada je postići iskoristivost dodatnog prijenosnog pojasa (engl. bandwidth) redundantne poveznice. Potrebno je ispuniti uvjet da preusmjeravanje preko redundantne poveznice ne utječe na više slojeve mrežnog složaja. Zbog toga se sva preusmjeravanja vrše na mrežnom sloju OSI (engl. Open System Interconnection Reference Model) referentnog modela. Preusmjeravanje se vrši samo nad protokolom TCP (engl. Transmission Control Protocol). Ostali protokoli se ne usmjeravaju preko dvije poveznice. Kontrola opterećenja (engl load balancing) radi na način da usmjerava konekcije prema određenoj poveznici, ovisno o korisničkoj postavci. Kontrola opterećenja je statička, što znači da se postavlja samo jednom. Ako ipak dođe do promjene u propusnosti pristupne mreže, što je čest slučaj kod bežičnih mreža, tada korisnik može posebnom skriptom promijeniti parametre kontrole opterećenja. Redundantnost poveznica je ostvarena dodatnom skriptom koja omogućuje detekciju prekida bilo koje poveznice i preusmjeravanje prometa na dostupnu poveznicu. Analiza rada programa testirana je u laboratoriju na dvjema pristupnim mrežama. Jednu pristupnu mrežu je činila LAN mreža kojoj se pristupalo preko Ethernet mrežne kartice dok je druga pristupna mreža bežična mreža kojoj se pristupalo preko WLAN USB kartice. Testiranje je obavljeno u 4 različita scenarija ovisno o tome pristupa li se pristupnoj mreži preko NAT-a ili direktno. Za potrebe testiranja koristio se protokol torrent i klijentski program µtorrent. 1

5 1. Opis korištenih alata U svrhu izrade diplomskog rada korišten je operativni sustav Linux distribucija Ubuntu Linux je korišten upravo zbog aplikacije iptables koja u sprezi sa strategijom usmjeravanja (engl. Policy routing) omogućuje vrlo složene operacije nad paketima mrežnog sloja. U svrhu razumijevanja načina rada tih alata u ovom poglavlju se nalazi osnovni opis korištenih alata Osnove aplikacije iptables Iptables je aplikacija u operativnom sustavu Linux koja koristi definirani skup pravila te filtrira i podešava pakete koji dolaze na računalo i odlaze s njega. Podržana je od verzije kernela 2.4. U osnovi aplikacija radi tako da filtrira i podešava pakete prilikom njihova prolaska kroz mrežni složaj (engl. Network stack). Sastoji se od lanaca i tablica u kojima se nalaze pravila. Postoji 5 lanaca (PREROUTING, INPUT, FORWARD, OUTPUT i POSTROUTING) i 4 tablice (raw, mangle, nat i filter). Sve ove informacije mogu se naći u iptables vodiču [1]. Aplikacija iptables koja se koristi u ovom radu mora biti verzije ili novije. U vrijeme početka pisanja ovog rada aktualna verzija Ubuntu Linux distribucije bila je 7.10 i nije imala ugrađenu aplikaciju iptables verzije Tada je bilo potrebno prevesti (engl. compile) jezgru (engl. kernel) s ugrađenom novom verzijom aplikacije iptables jer se samo na taj način aplikacija može nadograditi. Na svu sreću, Ubuntu Linux verzija 8.04 ima podržanu verziju Ta verzija je važna jer ima podržan uvjet statistic koji omogućuje raspoređivanje paketa na dva sučelja uz navedenu vjerojatnost. Konkretno, radi se o sljedećem uvjetu: -m statistic --mode random --probability $X Uvjet određuje broj paketa koji će zadovoljiti pravilo u kojem se taj kod nalazi. Znači, ako neki broj paketa zadovolji ostale uvjete u pravilu, tada će samo onaj postotak koji je naveden u varijabli $X potvrdno proći. Ostali paketi se odbacuju kao da uopće nisu zadovoljili pravilo i dalje prosljeđuju kroz lanac. 2

6 Kada mrežni uređaj primi paket, prosljeđuje ga pokretačkom programu (engl. driver) u jezgri. Paket tada prolazi kroz mrežni složaj te se prosljeđuje odgovarajućoj aplikaciji ili se dalje prosljeđuje na drugo mrežno sučelje, ako takvo sučelje postoji. Prikaz organizacije tablica i lanaca aplikacije prikazan je slikom (Sl. 1.1) Sl. 1.1 Prikaz organizacije lanaca i tablica 3

7 Lanci nam govore gdje se primjenjuje određeno pravilo. U PREROUTING lancu primjenjuju se pravila nad paketima koji dolaze iz mreže na računalo prije donošenja odluke o usmjeravanju. Nakon donošenja odluke o usmjeravanju paket se može proslijediti u dva smjera: prema INPUT lancu i lokalnoj aplikaciji ili prema FORWARD lancu i dalje prema mrežnom sučelju. Lokalno generirani paket prolazi kroz OUTPUT lanac nakon kojeg se donosi odluka o usmjeravanju. U idućem koraku paket prolazi kroz POSTROUTING lanac i dalje u mrežu. Osim predefiniranih lanaca korisnici mogu dodati i svoje vlastite lance u kojima će se nalaziti određeni set pravila. Naravno da svi lanci moraju biti smješteni u tablicu koja podržava određena pravila. Ako želimo kreirati lanac USER i u njemu filtrirati pakete, to ćemo napraviti naredbom ~# iptables t filter N USER Oznaka ~# označava da naredbu moramo upisati kao glavni korisnik (engl. root user). Ako želimo kreirati lanac USER u kojem ćemo mijenjati zaglavlja paketa, tada to činimo naredbom # iptables t mangle N USER Tablice definiraju kakva pravila se primjenjuju u određenom lancu. Za pojedinu tablicu vrijede samo određena pravila. Mangle tablica služi za promjenu informacija u zaglavlju paketa kao što su TOS (engl. Type Of Service) i TTL (engl. Time To Live) ili MARK oznaka u jezgri. Nat tablica služi u svrhu formiranja DNAT (engl. Destination NAT) i SNAT (engl. Source NAT) pravila. Filter tablica služi za odbacivanje ili propuštanje paketa. Raw tablica služi za označavanje paketa oznakom NOTRACK. Ova tablica je nova i dostupna samo u posljednjim revizijama jezgre 2.6. Ako u nekoj naredbi nije naveden naziv tablice, tada se radi o filter tablici. Kada paket dođe do računala, jezgra prolazi kroz postavljena pravila i traži je li pravilo primjenjivo na taj paket. Pravila imaju sljedeću sintaksu: ~# iptables [-t tablica] naredba [uvjet] [izraz] Ako je pravilo primjenjivo na paket tada jezgra postupa s njim na način definiran u pravilu. Može se postaviti osnovno pravilo koje će se primijeniti na sve pakete koji su prošli kroz sva pravila bez ispunjenog uvjeta. Na primjer, filter tablica može se podesiti da odbacuje sve pakete koji su prošli kroz sva pravila u tom lancu, što se često koristi kod implementacije vatrozida (engl. firewall). 4

8 Popis korištenih naredbi u aplikaciji Iptables U skriptama se koristi nekoliko naredbi aplikacije iptalbes. Najvažnije naredbe su: 1. Naredba za ispis lanca (engl. list) Služi za ispis svih pravila nekog lanca. Ako ime lanca nije navedeno, naredba ispisuje sve lance neke tablice. Ako naziv tablice nije naveden, koristi se filter tablica. Može se koristiti s nekoliko opcija, od kojih su neke: n (engl. numeric) koja ispisuje brojevne vrijednosti kao što je IP adresa umjesto znakovne vrijednosti; -v (engl. verbose) opcija koja ispisuje dodatne informacije kao što je adresa sučelja i opcije u pravilima. Primjer naredbe ispisa pravila iz INPUT lanca filter tablice: ~# iptables -L INPUT 2. Naredba za brisanje pravila iz lanca (engl. delete) Ta naredba briše pravilo iz lanca. To može obaviti na dva načina. Jedan način je upisivanjem uvjeta koji se primjenjuju u pravilu. Primjer brisanja pravila koje filtrira pakete na osnovu odredišnih vrata iz INPUT tablice je: ~# iptables D INPUT --dport 80 -j DROP Drugi način je upisivanjem rednog broja pravila. Iduća naredba briše prvo pravilo iz tablice OUTPUT: ~# iptables D OUTPUT 1 3. Naredba za poništavanje brojača (engl. zero) Kada neki paket zadovolji određeno pravilo, tada se brojač tog pravila uveća za 1. Naredba služi za poništavanje brojača u lancu na vrijednost 0. U radu je to potrebno da se vidi omjer paketa koji odlaze na pojedino sučelje. Sljedeća naredba poništava brojače INPUT lanca u mangle tablici: ~# iptables t mangle Z INPUT 4. Naredba za dodavanje novog lanca (engl. new) U aplikaciji postoji 5 osnovnih lanaca. Ako korisnik želi dodati svoj vlastiti lanac, to radi naredbom: 5

9 ~# iptables t nat N USER_CHAIN Naredbom se u tablicu nat dodaje novi lanac USER_CHAIN. Ime lanca ne mora nužno biti napisano velikim slovima, ali je zbog čitljivosti bolje koristiti velika slova. 5. Naredba za umetanje pravila (engl. insert) Ovom naredbom umećemo novo pravilo na određeno mjesto u lancu. ~# iptables I INPUT 1 --dport 80 j ACCEPT Gornjom naredbom umetnuto je novo pravilo na prvo mjesto INPUT lanca. 6. Naredba za dodavanje pravila u lanac (engl. append) Ovom naredbom dodaje se pravilo na prvo slobodno mjesto u lancu. Ako u lancu nema nikakvih pravila, tada se novo pravilo dodaje na vrh. ~# iptables A INPUT --sport 443 j ACCEPT Gornja naredba dodaje pravilo u INPUT lanac na prvo slobodno mjesto. 7. Naredba za zamjenu pravila (engl. replace) Naredba zamjenjuje pravilo na navedenom mjestu novim pravilom. Pravilo koje je već postojalo na tom mjestu se briše. Primjer naredbe je: ~# iptables R INPUT 1 --dport 8080 j ACCEPT 1.2. Automat stanja Automat za praćenje stanja konekcije je sastavni dio aplikacije iptables. Unutar aplikacije paketi se mogu pridružiti određenoj konekciji. Na taj način izvodi se usmjeravanje i filtriranje svih paketa koji pripadaju istoj konekciji, a ne svakog paketa pojedinačno. Paketi se mogu nalaziti u 4 moguća stanja: NEW, ESTABLISHED, RELATED i INVALID. Svako praćenje konekcije vrši se unutar posebnog okvira u jezgri koji se naziva conntrack. Conntrack može biti sastavni dio jezgre ili može biti implementiran kao modul. Konekcija se prati pomoću specifičnih informacija vezanih uz protokol koji se koristi. Te informacije se koriste da bi conntrack znao u kojem stanju se trenutno nalazi tok podataka. Na primjer, kod praćenja UDP toka podataka koriste se specifične informacije tog toka, kao što su izvorišna i odredišna IP adresa te izvorišna i odredišna vrata (engl. port). Upotreba conntrack modula za praćenje paketa unosi dodatno kašnjenje u obradi paketa. Praćenje paketa odvija se u PREROUTING lancu za dolazne i OUTPUT lancu za lokalno generirane pakete. Sve 6

10 promjene stanja odvijaju se u PREROUTING lancu. Ako pošaljemo prvi paket toka, konekcija će u OUTPUT lancu dobiti stanje NEW, a prilikom primanja odgovora na taj paket, dolazni paket u PREROUTING lancu mijenja stanje konekcije u ESTABLISHED. Ako je prvi paket poslan od strane drugog računala, tada će konekcija dobiti stanje NEW u PREROUTING lancu. Stanje conntrack modula se može provjeriti ispisom datoteke /proc/net/ip_conntrack naredbom cat. Primjer ispisa jedne konekcije je sljedeći: tcp SYN_SENT src= dst= sport=32775 \ dport=22 [UNREPLIED] src= dst= sport=22 \ dport=32775 use=2 Prva i druga vrijednost govore o kojem protokolu se radi (druga vrijednost je numerička oznaka protokola). Vrijednost 117 je kontrola vremena koja nam govori koliko sekundi će conntrack modul pratiti konekciju ako se ne primijeti nijedan paket. SYN_SENT unos govori u kojem stanju je trenutno konekcija. Zatim su zapisane izvorišna i odredišna IP adresa kao i izvorišni i odredišni broj vrata. Ključna riječ UNREPLIED govori da se očekuje odgovor od druge strane u komunikaciji i ispisuje parametre koje bi taj paket trebao imati. Conntrack modul može pratiti samo određen broj konekcija ovisno o raspoloživoj memoriji. Na računalu sa 128MB RAM-a moguće je pratiti 8192 konekcije, a na računalu sa 256MB RAM-a moguće je pratiti konekcija. Ovu vrijednost moguće je promijeniti u /proc/sys/net/ipv4/ip_conntrack_max datoteci. Paketi se unutar jezgre mogu nalaziti u različitim stanjima, ovisno o protokolu koji se koristi. Međutim, izvan jezgre paketi se nalaze samo u 4 moguća stanja: NEW, ESTABLISHED, RELATED i INVALID. Stanje NEW Ovo stanje govori da je to prvi paket toka. To može biti SYN paket u procesu uspostave TCP konekcije. Stanje ESTABLISHED Da bi konekcija dospjela u ovo stanje potrebno je da računalo pošalje paket drugom računalu i dobije odgovor na poslani paket. Praćena konekcija tada prelazi iz stanja NEW u stanje ESTABLISHED. Stanje RELATED 7

11 Konekcija će dospjeti u ovo stanje kada neka druga uspostavljena konekcija stvara novu konekciju. Primjer toga je kontrolna FTP konekcija koja otvara podatkovnu FTP konekciju za prijenos podataka. U tom slučaju će kontrolna konekcija biti u stanju ESTABLISHED, a podatkovna u stanju RELATED. Stanje INVALID Ovo stanje nam govori da paket ne može biti identificiran ili da nema svoje pridruženo stanje. Jedan od razloga za ovo može biti nedostatak memorije Protokol TCP Aplikacija iptables prati konekcije pomoću automata stanja. Protokol TCP je konekcijski orijentiran protokol koji prati stanje veza i omogućava pouzdan prijenos podataka. Uspostava konekcije se vrši razmjenom SYN i ACK paketa. Prvi paket koji se šalje je SYN paket na koji druga strana odgovara sa SYN/ACK paketom, kao što je prikazano na idućoj slici (Sl. 1.2). Sl. 1.2 Uspostavljanje TCP konekcije Ako ne dođe do isteka vremenske kontrole za vrijeme prijenosa podataka stanje konekcije će uvijek biti ESTABLISHED. Kod raskida konekcije događa se sljedeća situacija: 8

12 Sl. 1.3 Raskid TCP konekcije Ovako se na uobičajen način zatvara konekcija, kada se čeka na posljednji ACK paket. Konekciju je moguće zatvoriti i RST (engl. reset) paketom kada se ne čeka na ACK paket nego se konekcija trenutno prekida. Do prekida konekcije može doći i prilikom isteka vremenske kontrole (ako dođe do zagušenja u mreži). U tablici (Tablica 1.1) prikazane su vrijednosti vremenske kontrole za pojedina stanja konekcije u jezgri. Stanje NONE ESTABLISHED SYN_SENT SYN_RECV FIN_WAIT Vrijednost vremenske kontrole 30 minuta 5 dana 2 minute 60 sekundi 2 minute Stanje TIME_WAIT CLOSE CLOSE_WAIT LAST_ACK LISTEN Vrijednost vremenske kontrole 2 minute 10 sekundi 12 sati 30 sekundi 2 minute Tablica 1.1 Vrijednosti vremenske kontrole Ove vrijednosti nisu fiksno postavljene, već se mogu mijenjati u različitim revizijama Linux jezgre, ali ih, iako nije preporučljivo, korisnici sami mogu mijenjati Strategija usmjeravanja Linux operativni sustav ima mogućnost korištenja više tablica usmjeravanja [2]. Osim dvije osnovne (lokalne i glavne), može se kreirati i koristiti još 252 vlastite tablice usmjeravanja. 9

13 Tablice usmjeravanja koriste se u sprezi sa strategijom usmjeravanja. Strategija usmjeravanja (engl. Policy routing) nam omogućuje primjenu različitih tablica usmjeravanja za različite korisnike ovisno o postavljenom uvjetu [3]. Time je omogućeno da u sprezi sa connmark modulom i fwmark uvjetom različite pakete šaljemo na različite tablice usmjeravanja. Da bi se koristila strategija usmjeravanja, trebaju se najprije dodati vlastite tablice usmjeravanja. Njih dodajemo upisivanjem prioriteta i rednog broja tablice naredbom: # echo [redni broj] [ime tablice] >> /etc/iproute2/rt_tables Redni broj tablice mora biti u rasponu od 1 do 252. Ostale vrijednosti su rezervirane za: lokalnu tablicu (engl. local table) - redni broj 255; glavnu tablicu (engl. main table) - redni broj 254; osnovnu tablicu (engl. default table) - redni broj 253); nedefinirana (engl. undefined table) - redni broj 0. Ispis pojedine tablice usmjeravanja postiže se upisivanjem naredbe: # ip route show table [ime tablice] Prilikom odabira rute usmjeravanja jezgra provjerava strategiju usmjeravanja, počevši od najvišeg prioriteta (prioritet 0) do najnižeg prioriteta (prioritet 32767). Korištenjem naredbe # ip rule show na ekranu se ispisuju sva pravila 0: from all lookup local 32766: from all lookup main 32767: from all lookup default Prvo se provjerava lokalna tablica usmjeravanja, nakon nje glavna i tek na kraju osnovna tablica usmjeravanja. Postoji i cache tablica usmjeravanja u kojoj se nalaze već uspostavljene rute i koja se provjerava prije lokalne tablice usmjeravanja. Ako dodamo pravilo za vlastitu tablicu, tada će se i to pravilo sa svojim prioritetom pojaviti u ispisu. U slučaju da prioritet pravila nije definiran, dodjeljuje mu se prvi slobodni najviši prioritet. Vlastita pravila dodaju se u tablicu naredbom # ip rule add prio [prioritet] [uvjet] table [naziv tablice] Jezgra će prilikom odabira rute usmjeravanja prolaziti kroz pravila usmjeravanja sve dok ne naiđe na uvjet koji je primjenjiv na paket koji treba usmjeriti. Tada se paket usmjerava prema tablici na koju pravilo pokazuje. 10

14 2. Opis korištenja redundantne poveznice 2.1. Prethodni radovi Postoje radovi koji koriste redundantne poveznice u svrhu povećanja kapaciteta linkova. Jedan takav rad opisan je na web stranici Linux Advanced Routing and Traffic Control [4]. Za razliku od ovog rada, taj rad pretpostavlja postojanje lokalne mreže i jednog računala koje se ponaša kao poveznik (engl gateway) i omogućuje pristup Internetu preko dva pružatelja usluga kako je prikazano na slici (Sl. 2.1). Sl. 2.1 Pristup Internet mreži preko dva pružatelja usluga Druga razlika je što se taj rad oslanja samo na iproute2 aplikaciju za podešavanje parametara kontrole opterećenja. To se postiže sljedećom naredbom: ~# ip route add default scope global nexthop via $P1 dev $IF1 weight 1 nexthop via $P2 dev $IF2 weight 1 Ta naredba će preusmjeravati konekcije preko obje poveznice. Nedostatak ovog načina kontrole opterećenja je taj što se rute koje su spremljene u cache tablici usmjeravanja ne brišu, pa će često korištene konekcije uvijek ići preko iste poveznice. Ovaj rad pretpostavlja da sve konekcije lokalne mreže prolaze kroz NAT proces na sučelju koje je priključeno na lokalnu mrežu, pa ne opisuje proces postavljanja izvorišnih IP adresa za slučaj da to nije tako. Zbog korištenja jedino iproute2 aplikacije nije moguće detaljnije provjeravati što se događa sa paketima u pojedinim koracima procesa. Na ovaj način nije moguće usmjeravati veze po statusu u automatu stanja. 11

15 Prednost ovakvog načina rada je u tome što je malo brži od metode primijenjene u ovom radu zato što konekcije ne prolaze kroz lance aplikacije iptables pa nad njima nije potrebno vršiti dodatno procesiranje Metoda rada Svrha diplomskog rada je da se prosječnom korisniku omogući proširenje prijenosnog pojasa korištenjem redundantnih poveznica prema Internetu. U daljnjem tekstu koristit će se pojam osnovna i redundantna poveznica. Korisnik sam odabire glavnu poveznicu. U prošlosti je pojam redundantnih poveznica bio usko vezan uz potrebe poslovnih korisnika. Primjer jedne takve situacije je mala tvrtka koja ima urede na dvije udaljene lokacije. Glavna lokacija posjeduje dvije poveznice prema Internetu koje joj nude dva različita pružatelja usluga. Recimo da se u nekom vremenskom periodu na jednoj od lokacija obavlja proces izrađivanja sigurnosne kopije (engl. backup) svih podataka. Jedna poveznica se u tom slučaju koristi kao glavna kojom se prenose podatci, a druga se koristi za ostale potrebe (Internet, VoIP). Danas, pojavom bežičnih mreža i besplatnog pristupa Internetu preko bežične infrastrukture, redundantne poveznice dostupne su i prosječnim korisnicima. Zamislimo da korisnik kod kuće ima neku vrstu širokopojasnog pristupa Internetu (DSL, kabelski pristup). Ujedno je pomoću bežične kartice dostupna besplatna bežična mreža u čijem je dometu (Sl. 2.2). Sl. 2.2 Prikaz referentnog modela mreže Korištenjem napisane skripte može se iskoristiti dodatni ponuđeni prijenosni pojas. U idealnom slučaju to bi značilo da je ukupna širina prijenosnog pojasa zbroj pojedinačnih širina prijenosnih pojaseva. U praksi to i nije baš tako. Korisnik može utjecati samo na to kamo šalje odlazne pakete. Ruta (engl. route) prvog dolaznog paketa ne ovisi o korisniku ako druga 12

16 strana inicira vezu. Situaciju dodatno kompliciraju i prijenosni protokoli. Dva najčešće korištena prijenosna protokola su TCP i UDP. Protokol TCP se koristi za ostvarivanje pouzdanog prijenosa podataka i ima ugrađene mehanizme koji omogućuju pouzdanost. Protokol UDP se koristi najčešće kada je potrebno brzo dostaviti pakete, pa nije važno ako se neki od paketa izgube u prijenosu. Upravo je zbog svojstava transportnih protokola odlučeno da se radi samo sa protokolom TCP. UDP datagrame u većini slučaja šalju video serveri, a ne korisnik, pa kontrola opterećenja nema utjecaja na takvu vrstu paketa. Postoje dva osnovna načela na temelju kojih možemo iskoristiti redundantnu poveznicu. Jedno načelo je paketski orijentirano, a drugo konekcijski Paketski način rada Za početak, pretpostavimo da su nam prijenosne brzine na obje poveznice jednake. Kod paketskog načina rada kontrola opterećenja će raditi na način da 50% paketa šalje na jedno izlazno sučelje, a 50% paketa na drugo. Teoretski bi se na taj način mogao potpuno iskoristiti prijenosni pojas. Neka na računalu postoji lokalni proces koji ima otvorene 3 konekcije prema Internetu. Svaka konekcija šalje slučajnim procesom svoje pakete. Kod paketskog načina rada će neparni paketi koji dođu do kontrole opterećenja biti usmjereni na glavnu poveznicu, a parni paketi će biti usmjereni na redundantnu poveznicu (Sl. 2.3). Pri tome nije važno kojoj konekciji paketi pripadaju. Sl. 2.3 Paketski način rada Prvi problem na koji se nailazi je asimetričnost poveznica. Ako su poveznicama prijenosne brzine nejednake i promjenjive u vremenu (što je čest slučaj kod bežičnih mreža), može se dogoditi da se neki paketi izgube ili ih pristupna točka odbaci zbog zagušenja. Na taj način izgubljeni paketi utječu na kontrolu toka protokola TCP koji dojavi lokalnom procesu da uspori slanje paketa jer su neki izgubljeni. Gubitak paketa na lošijoj poveznici uzrokovat će usporavanje slanja paketa na boljoj poveznici. 13

17 Drugi problem je nezavisnost mreža. Ako se spajamo na Internet preko dva različita pružatelja usluga, tada i pristupne mreže na koje se spajamo imaju različite IP postavke mreže. Lokalni proces prilikom slanja paketa provjerava tablice usmjeravanja i paketu dodjeljuje izvorišnu IP adresu na temelju IP adrese glavne poveznice. Pošto se 50% paketa usmjerava na redundantnu poveznicu, ti paketi će kao izvorišnu adresu imati adresu glavne poveznice. Tako nastaju dvije vrste problema. Kada paketi dođu u redundantnu mrežu, pristupna točka ih može poslati na osnovnu rutu prema Internetu. Međutim, postoje i situacije kada se takvi paketi odbacuju jer im izvorišna adresa ne pripada mreži iz koje se šalju, na primjer zbog korištenja NAT-a u pristupnoj mreži. Druga vrsta problema je primanje odgovora na takve pakete. Pošto je sve temeljeno na protokolu IP koji je bezkonekcijski (engl. connectionless), svi odgovori će pristizati prema glavnoj poveznici. Time se redundantna mreža koristi samo u odlaznom smjeru, ali ne i dolaznom Konekcijski način rada Kod konekcijskog načina rada se svi paketi koji pripadaju jednoj konekciji šalju samo po jednoj poveznici. Kontrola opterećenja radi na način da 50% konekcija usmjerava prema osnovnoj poveznici a 50% konekcija prema redundantnoj poveznici. Teoretski na taj način možemo ostvariti punu brzinu prijenosa, ali je u praksi situacija drugačija. Maksimalna brzina koju postiže neka konekcija ovisi o obje strane koje komuniciraju i kontroli toka protokola TCP. Može se dogoditi da 50% konekcija koje su usmjerene preko jedne poveznice koriste približno 100% širine raspoloživog prijenosnog pojasa poveznice, a 50% konekcija koje su usmjerene preko druge poveznice koriste jako malu širinu prijenosnog pojasa. Sl. 2.4 Konekcijski način rada Najveća prednost konekcijskog načina rada je ta da se svi paketi koji pripadaju jednoj konekciji usmjeravaju preko iste poveznice (Sl. 2.4). Time je kontroli toka omogućeno lakše upravljanje prijenosnom brzinom. Konekcije na jednoj poveznici ne utječu na konekcije druge 14

18 poveznice. Druga prednost je ta što se sada može koristiti NAT (engl. Network Address Translation) na redundantnoj poveznici. NAT prati konekcije, pa se svi paketi koji dolaze na redundantnu poveznicu adaptiraju u pripadnost redundantne mreže. Time se ne gube paketi i koristi se dolazni smjer redundantne poveznice. Važno je opisati dva procesa koji se koriste. Proces SNAT (engl. Source NAT) radi tako da prepisuje izvorišnu IP adresu odlaznog paketa s IP adresom sučelja na koji se paket šalje. Proces DNAT (engl. Destination NAT) radi obrnut proces, gdje dolaznim paketima prepisuje odredišnu IP adresu [1]. Originalna IP adresa paketa je adresa sučelja na koji je paket pristigao. SNAT proces koristi se kada više računala u LAN mreži pristupa preko glavnog računala na Internet. DNAT proces se koristi kada je na jednu vanjsku IP adresu priključeno više računala (na primjer web poslužitelji). Tada se tim procesom vrši kontrola opterećenja pojedinog servera [1]. U radu je korišten konekcijski način rada. Zbog korištenja takvog načina rada prosječni korisnik prilikom korištenja osnovnih Internet alata (Internet preglednika, klijenta elektroničke pošte) neće primijetiti značajno ubrzanje rada. Razlog tome je način rada tih programa koji otvaraju istovremeno jednu ili vrlo mali broj konekcija. Čak i korištenje FTP klijenta neće ubrzati preuzimanje datoteke zato što se koristi samo jedna konekcija za prijenos podataka. Značajno ubrzanje i korištenje prijenosnog pojasa redundantne poveznice će biti vidljivo samo pri korištenju programa koji ostvaruju velik broj konekcija, kao što su torrent klijenti. Zato je i prilikom testiranja skripte korištena µtorrent aplikacija. Skripta radi tako da konekcije u stanju NEW i RELATED statistički sa određenom vjerojatnošću raspoređuje na odlazne poveznice. Vjerojatnost raspoređivanja ovisi o korisnikovu unosu. Najprije se testiraju obje poveznice i korisnik prema rezultatima testiranja unosi težinu (engl. weight) pojedine poveznice. Ako su obje poveznice jednakih brzina, tada će njihove težine biti jednake i vjerojatnost raspoređivanja će biti 50%. Ako je prva poveznica dvostruko brža od druge, tada će težina prve poveznice biti 2 a druge 1. Vjerojatnost raspoređivanja će biti 66% u korist prve poveznice. Vrijednost težine se unosi na početku i ona je statička. Moguće je u daljnjem radu promijeniti tu vjerojatnost pokretanjem posebne skripte. Redundantnost poveznica ostvarena je korištenjem dodatne skripte koja detektira prekid poveznice. Ako prekinuta poveznica ponovno postane dostupna, skripta će se pobrinuti da se ponovno uspostavi kontrola opterećenja i usmjere nove konekcije prema dostupnoj poveznici. Način usmjeravanja konekcije prema mrežnom sučelju odvija se u 4 koraka: 15

19 U prvom koraku aplikacija iptables označava jednom oznakom konekcije koje šalje na jedno mrežno sučelje, a drugom oznakom konekcije koje šalje na drugo sučelje. To se postiže CONNMARK naredbom. Sve konekcije imaju na početku od jezgre postavljenu connmark vrijednost na 0 koju aplikacija mijenja. Konekcije koje prolaze kroz ovaj korak su one čije stanje je NEW ili RELATED. U drugom koraku označuju se pojedini paketi u konekciji. Ovisno o oznaci koju je prijašnji korak dodijelio pojedinoj konekciji se svim paketima te konekcije dodjeljuje oznaka naredbom MARK. Kroz ovaj korak prolaze NEW, ESTABLISHED i RELATED konekcije. Naredba MARK omogućuje ispravnu detekciju paketa u trećem koraku. U trećem koraku koristi se strategija usmjeravanja koja koristi različite tablice usmjeravanja. Konekcije kojima je dodijeljena jedna oznaka koriste jednu tablicu usmjeravanja dok ostale konekcije koriste drugu tablicu usmjeravanja. Važno je napomenuti da aplikacija iptables koristi decimalni sustav kod dodjeljivanja oznaka, a strategija usmjeravanja čita taj broj kao heksadecimalni. Ako u iptables aplikaciji označimo pakete oznakom 10, a u strategiji usmjeravanja označimo kao uvjet usmjeravanja oznaku 10, doći će do nekonzistentnosti uvjeta. Strategija usmjeravanja će tražiti oznaku 10 u heksadecimalnom sustavu što je ekvivalentno oznaci 16 u decimalnom sustavu. U posljednjem koraku vrši se translacija izvorišne IP adrese paketa u adresu koja odgovara lokalnoj mreži iz koje se paket šalje na Internet. U tu svrhu se koristi nat tablica u aplikaciji iptables i SNAT naredba. Novim konekcijama u dolaznom smjeru se dodjeljuje oznaka ovisno o sučelju i koristi DNAT naredba u aplikaciji iptables, ako je to potrebno. Zbog korištenja NAT-a na klijentskom računalu postoje razlike u performansama prilikom spajanja na pristupne mreže u NAT okruženju i pristupne mreže u kojima se ne koristi NAT Opis korištenih naredbi Najlakši i najbrži način da se u Linux operativnom sustavu podesi neka aplikacija je korištenjem Linux shell skripti. Linux shell je program koji prihvaća korisnikove naredbe i prosljeđuje ih jezgri. Postoji više vrsta shell programa, poput BASH ili CSH programa. Ekvivalent tog programa u Windows operativnom sustavu je cmd (engl. Command prompt). Shell skripte su u osnovi tekstualne datoteke koje sadrže niz naredbi i imaju postavljenu 16

20 zastavicu za izvođenje (engl. execute permission). Skripte imaju ugrađene specifične naredbe, poput if...else uvjeta, for i while petlje te ostale naredbe specifične za programske jezike. Prevodilac koji se koristi za prevođenje skripti i prosljeđivanje naredbi jezgri se određuje u prvoj liniji skripte naredbom: #!/bin/sh Tom linijom prenosi se uputa operativnom sustavu da koristi sh prevodilac kod izvođenja skripte. Linux skripta ima mogućnost korištenja ostalih aplikacija operativnog sustava Linux koristeći posebnu sintaksu. Za potrebe rada korištena je kalkulatorska aplikacija bc, kao i aplikacije za parsiranje teksta grep i awk. U daljnjem tekstu će prilikom opisa skripti biti opisane i linije koda u kojima se koriste navedene aplikacije. U radu je korišteno nekoliko skripti, koje su podijeljene u tri grupe: pripremne skripte, glavne skripte i pomoćne skripte Pripremne skripte U ovu skupinu spadaju skripte koje služe pripremi iptables i iproute2 aplikacije. To su sljedeće skripte: 1. store_dns.sh Skripta služi za spremanje parametara DNS domene. Prilikom spajanja na pristupnu mrežu, računalo od DHCP servera dobije adresu DNS servera nadležnog za tu mrežu i naziv DNS domene. Linux te parametre sprema u /etc/resolv.conf datoteku. Ispis te datoteke je sljedeći: search [DNS domena] nameserver [IP adresa primarnog DNS servera] nameserver [IP adresa sekundarnog DNS servera] Prilikom spajanja na prvu pristupnu mrežu računalo pohranjuje ove informacije prvi put. Nakon spajanja na drugu pristupnu mrežu računalo pohranjuje DNS informacije druge mreže u istu datoteku prepisujući sadržaj koji se u njoj već nalazi. Nakon spajanja na obje mreže računalo ima zapisane informacije vezane uz drugu mrežu. DNS upiti uvijek se šalju preko glavne poveznice i na njih ne utječe kontrola opterećenja. Ako je glavna poveznica ona na koju smo se zadnju spojili, tada nema problema jer računalo posjeduje informacije o toj DNS domeni. Međutim, ako je glavna poveznica ona na koju smo se prvi put spojili, tada računalo prilikom slanja DNS upita koristi DNS informacije koje ima pohranjene, a to su informacije o 17

21 drugoj DNS domeni. Zbog nekonzistentnosti domena, DNS server prve mreže nam na nijedan upit neće poslati odgovor. Zato je potrebno pohraniti informaciji o svakoj DNS domeni pojedinačno. U datoteku /etc/resolv.conf se zatim kopiraju informacije ovisno o poveznici koja se koristi kao glavna. Ispis skripte je sljedeći: if [ -s /etc/resolv.conf ] then fi cat /etc/resolv.conf > dns rm dns2./reset_settings.sh Uvjet je ispunjen ako /etc/resolv.conf postoji i nije prazna. cat naredba ispisuje sadržaj datoteke. U ovom slučaju ispisuje sadržaj datoteke /etc/resolv.conf u datoteku dns. Datoteka se nakon ove naredbe stvara ako ne postoji, a ako postoji briše se njen sadržaj i zapisuje samo novi. Naredba rm briše datoteku dns2. Posljednja naredba pokreće skriptu reset_settings.sh. 2. restore_dns.sh Ova skripta sprema parametre druge DNS domene koju je računalo pohranilo prilikom spajanja na drugu pristupnu mrežu: sleep 3 if [ -s /etc/resolv.conf ] then fi cat /etc/resolv.conf > dns2 cat dns > /etc/resolv.conf ip route show table main > main.table.bak Ako je ispunjen uvjet da datoteka etc/resolv.conf postoji i nije prazna tada se njen sadržaj pohranjuje u datoteku dns2. Sadržaj datoteke dns prepisuje se preko sadržaja datoteke etc/resolv.conf. Time su u toj datoteci postavljeni parametri prve DNS domene. U trenutku kada se izvršava ova skripta podešene su obje pristupne mreže, pa se sadržaj tablice usmjeravanja sprema u datoteku main.table.bak. Općenito, operator preusmjeravanja > služi za preusmjeravanje ispisa sa standardnog izlaza (engl. screen) u datoteku. 18

22 Datoteke store_dns.sh i restore_dns.sh mogu se koristiti ručno na način koji će kasnije biti opisan, ali se mogu koristiti i automatski podešavanjem /etc/network/interfaces datoteke. Taj način koristimo ako se uvijek spajamo na iste pristupne mreže. Sve datoteke koje nastaju korištenjem skripti će biti smještene u onom direktoriju u kojem pokrećemo skripte, ako drugačije nije podešeno. 3. reset_settings.sh Skripta služi za poništavanje svih promjena u aplikacijama iptables i iproute2. Koristi se samo na početku, kada se namještaju postavke kontrole opterećenja da bi izbrisali naredbe koje se greškom nalaze u lancu. To se provjerava na početku korištenjem naredbe: flag=`iptables -L -t mangle -n grep BALANCING_AND_MARKING_1 -c` Znak apostrof (engl. back quote) ` govori da se radi o naredbi i da se rezultat te naredbe sprema u varijablu flag. Glavna naredba ispisuje tablicu mangle. Na ispis se djeluje naredbom grep koja ispisuje samo one linije koje sadrže navedenu frazu, a to je u ovom slučaju fraza BALANCING_AND_MARKING_1. Općenito se više naredbi postavljaju jedna iza druge operatorom. Opcija -c naredbe grep ispisuje koliko puta se navedena fraza pojavljuje u ispisu. Time smo provjerili da li u tablici mangle već postoje korisnički lanci. Ako postoje, znači da već postoje postavke aplikacija i da ih treba izbrisati. Naredbe ip route flush table master ip route flush table slave brišu sadržaj tablica master i slave. Naredba ip rule del prio [prioritet] briše postavke u strategiji usmjeravanja. Ostale naredbe brišu postavke u lancima aplikacije iptables Glavne skripte U ovu skupinu spadaju skripte koje postavljaju parametre aplikacija iptables i iproute2. To su sljedeće skripte: 1. parsing.sh Skripta sprema sve relevantne parametre obje poveznice u dvije datoteke, dev1 i dev2. Parametri koji se spremaju su: 19

23 naziv mrežnog sučelja, IP adresa, maska podmreže (engl. subnet mask), IP adresa poveznika (engl. gateway), faktor težine poveznice, oznaka je li poveznica bežična. Ne koristi se izravno, već pozivanjem iz druge skripte linijom:./parsing.sh < uređaj 1 > < uređaj 2 > Podaci o nazivu uređaja 1 spremaju se u korisničku varijablu DEV_1: DEV_1=$1 Prilikom prevođenja skripti jezgra pamti parametre skripte u posebnim varijablama $0, $1, $2,... U varijabli $0 nalazi se ime skripte. Varijabla $1 čuva prvi parametar koji se nalazi nakon imena skripte, što je u ovom slučaju naziv uređaja 1, na primjer eth0. Sljedeća naredba je IP_1=`ifconfig $DEV_1 grep "inet addr" awk -F":" '{print $2 }' awk -F" " '{ print $1 }'` Naredba ifconfig $DEV_1 ispisuje parametre sučelja DEV_1. Na tu naredbu djeluje se naredbom grep inet addr koja ispisuje redak u kojem se pojavljuje navedeni izraz. Redak se parsira naredbom awk koja po zadanoj oznaci : razdvaja dijelove ispisane linije. Parsirani dio ispisuje se naredbom print $2. Time se u ispisu dobiva samo informacija koja sadrži IP adresu tog mrežnog sučelja. Numerička vrijednost ispisuje se djelovanjem naredbom awk, ali ovaj put praznom oznakom (engl. space). Na taj način se u varijablu IP_1 sprema numerička IP adresa mrežnog sučelja. Maska podmreže sprema se u varijablu MASK_1 naredbom: MASK_1=`ifconfig $DEV_1 grep "inet addr" awk -F":" '{print $4 }' awk -F" " '{ print $1 }'` IP adresa poveznika može se saznati iz datoteke main.table.bak: GW_1=`cat main.table.bak grep $DEV_1 grep default awk -F" " '{ print $3 }'` Oznaku je li poveznica bežična ili ne postavlja sljedeća naredba: WIRELESS_1=`iwconfig $DEV_1 grep -c IEEE` Ako je poveznica bežična ova naredba će vratiti vrijednost 1, a ako nije vraća vrijednost 0. Posljednja varijabla je varijabla težine poveznice. Ova skripta se može koristiti na samom početku konfiguracije kontrole opterećenja, kada se poveznicama dodjeljuju 20

24 jednake težine, ali i kada se mijenjaju parametri kontrole opterećenja. Ako postoji generirana datoteka weight, tada iz nje čitamo zapisanu vrijednost, a ako ne postoji, u varijablu WEIGHT_1 postavlja se vrijednost 1 naredbama: if [ -s weight ] then WEIGHT_1=`cat weight awk -F";" '{ print $1 }' awk -F"=" '{ print $2 }'` else WEIGHT_1=1 fi Ista procedura ponavlja se i za drugo sučelje. Na posljetku se sve informacije spremaju u datoteke dev1 i dev2 nizom naredbi: echo "dev1=$dev_1" > dev1 echo "ip1=$ip_1" >> dev1 echo "mask1=$mask_1" >> dev1 echo "gateway1=$gw_1" >> dev1 echo "weight1=$weight_1" >> dev1 echo "wireless=$wireless_1" >> dev1 Operator > preusmjerava ispis sa standardnog izlaza u datoteku dev1 i briše prijašnji sadržaj te datoteke. Operator >> preusmjerava standardni izlaz u datoteku dev1 i dodaje ispis na kraj datoteke, čuvajući postojeće stanje datoteke. 2. load_balancing.sh Ovo je glavna skripta koja namješta parametre kontrole opterećenja. Pokreće se naredbom u terminalu ~$ sudo./load_balancing.sh <mrežno sučelje 1> <mrežno sučelje 2> Prvih nekoliko funkcija skripte služe za obavijesti korisniku. Funkcija usage() objašnjava način korištenja skripte. Funkcija default_behaviour() postavlja glavnu tablicu usmjeravanja ovisno je li poveznica bežična ili ne. Ako je prva poveznica bežična, tada se u glavnu tablicu upisuje druga pristupna mreža kao glavna i obrnuto. Upisivanje osnovne rute u glavnu tablicu usmjeravanja postiže se naredbom: ip route add default scope global via $GW_1 dev $DEV_1 metric 99 21

25 ip route add default scope global via $GW_2 dev $DEV_2 metric 100 U ovom slučaju prva mreža je žičana, a druga bežična, pa prva mreža ima manju metriku, tj. veći prioritet. Prilikom odabira izvorišne IP adrese paketa jezgra provjerava mrežno sučelje s manjom metrikom i šalje paket tim sučeljem. Ovisno o odabiru glavne poveznice, potrebno je podesiti parametre DNS domene naredbom: cat dns > /etc/resolv.conf Na početku glavnog dijela skripte provjerava se je li skriptu pokrenuo osnovni (engl. root) korisnik. Ako nije, izlazi se iz skripte i daje uputa korisniku kako ispravno pokrenuti skriptu. Zatim se provjerava jesu li nazivi mrežnih sučelja ispravni, tj. da li ta sučelja postoje u računalu. Ako se utvrdi da je sve u redu, poziva se skripta parsing.sh. U daljnjem izvođenju potpuno se briše tablica usmjeravanja i postavlja samo osnovna vrijednost: ip route add default scope global via $GW_1 dev $DEV_1 table main Jezgra na taj način sve pakete usmjerava preko jednog mrežnog sučelja. Nakon toga korisnik pokreće test poveznice. Postoje dvije mogućnosti testiranja poveznice. Jedna mogućnost je instalacija alata za mjerenje propusnosti poveznice i preuzimanje datoteke sa Interneta. Vrlo jednostavan alat za mjerenje propusnosti poveznice je nload. Može se preuzeti sa Interneta naredbom: ~$ sudo apt-get install nload Program se pokreće na sljedeći način: ~$ sudo nload $DEV_1 $DEV_2 -m -u H Na taj način program mjeri prijenosnu brzinu na obje poveznice. Drugi način je korištenje specijaliziranih Internet stranica. Jedna od takvih stranica je [5]. Na toj stranici može se mjeriti: brzina preuzimanja datoteke (engl download), brzina slanja datoteke (engl. upload), ping vrijeme. Nakon što se izmjeri brzina preuzimanja datoteke potrebno ju je zapisati ili zapamtiti. Zatim se briše tablica usmjeravanja i postavlja samo redundantna poveznica kao glavnu naredbom: 22

26 ip route add default scope global via $GW_2 dev $DEV_2 table main Jezgra će koristiti samo redundantnu poveznicu za slanje paketa prema Internetu. Potrebno je namjestiti parametre DNS domene i pobrisati cache tablica usmjeravanja za što se brinu sljedeće naredbe: ip route flush cache cat dns2 > /etc/resolv.conf U idućem koraku korisnik ponovno pokreće test brzine. Ako se koriste Internet stranice u svrhu testiranja potrebno je zatvoriti Internet preglednik i ponovno ga pokrenuti. Nakon završenog mjerenja potrebno je zapisati brzinu redundantne poveznice. Brzine je zatim potrebno prebaciti u težinski faktor. Ako je brzina jedne poveznice 400 kb/sek, a druge 280 kb/sek, tada je težinski faktor prve poveznice 40, a druge 28. Težinski faktor je brojčana vrijednost od 1 do 100. Faktori se zatim uspoređuju i poveznica s većim težinskim faktorom postavlja se kao glavna. Ako su težinski faktori jednaki, tada se poziva funkcija default_behaviour(). Težinski faktori se spremaju u datoteku weight. Iz njihove vrijednosti računa se vjerojatnost kojom će kontrola usmjeravanja preusmjeravati pakete prema određenoj poveznici po formuli probability=.`echo "($weight1*$precision)/($weight1+$weight2)" bc` Rezultat formule upisuje se u datoteku probability. Varijabla precision govori kolika je preciznost računanja. Osnovna vrijednost postavljena je na 3 decimale, tj. vrijednost varijable je postavljena na Maksimalna vrijednost varijable je , tj. preciznost na 6 decimala. Osnovna vrijednost varijable nalazi se postavljena u trećem retku skripte i tamo se može mijenjati. Prije pozivanja skripte primary_configuration.sh, ova skripta još i zapisuje u datoteku main naziv mrežnog sučelja koji se koristi kao glavni. 3. primary_configuration.sh U prvom koraku dodaju se nove tablice u listu tablica usmjeravanja: echo 201 master >> /etc/iproute2/rt_tables echo 202 slave >> /etc/iproute2/rt_tables U tablicu master upisuje se samo osnovna ruta preko prve poveznice a u tablicu slave samo osnovna ruta preko druge poveznice: ip route add table master default via $GW_1 dev $DEV_1 23

27 ip route add table slave default via $GW_2 dev $DEV_2 Prilikom korištenja kontrole usmjeravanja moguće je imati dva slučaja: Jedan slučaj je kada je glavna poveznica osnovna a sporedna poveznica redundantna. Paketi se obilježavaju oznakama 1 i 2. Paketi s oznakom 1 odlaze na osnovnu poveznicu a paketi s oznakom 2 odlaze na redundantnu poveznicu. Nad paketima s oznakom 2 se vrši SNAT proces pretvaranja izvorišne IP adrese. U drugom slučaju je redundantna poveznica glavna, a osnovna poveznica sporedna. Tada su paketi obilježeni oznakama 3 i 4. Paketi s oznakom 3 odlaze na redundantnu poveznicu, a paketi s oznakom 4 odlaze na osnovnu poveznicu. Nad paketima s oznakom 4 se vrši SNAT proces. U skladu s ta dva slučaja namještaju se pravila politike usmjeravanja [3] na sljedeći način: ip rule add prio 50 fwmark 1 table master ip rule add prio 51 fwmark 3 table slave ip rule add prio 52 fwmark 2 table slave ip rule add prio 53 fwmark 4 table master Prioriteti tih pravila veći su od prioriteta glavne tablice usmjeravanja, pa strategija usmjeravanja po tim pravilima usmjerava pakete. Paketi koji nisu obilježeni nikakvim oznakama, poput paketa protokola UDP ili ICMP, ne zadovoljavaju postavljene uvjete pa se njih usmjerava pomoću glavne tablice usmjeravanja. U svrhu lakšeg označavanja paketa dodaju se novi lanci u iptables aplikaciju: iptables -t mangle -N BALANCING_AND_MARKING_1 iptables -t mangle -N BALANCING_AND_MARKING_2 iptables -t mangle -N MARKING iptables -t nat -N NATTING_OUTPUT iptables -t nat -N NATTING_INPUT iptables -t mangle -N NATTING_OUTPUT iptables -t mangle -N NATTING_INPUT Ako je došlo do pogreške u postavljanju pravila u lance, na primjer zbog nestanka struje, tada se prije svakog postavljanja lanaca brišu sva pravila koja u njima postoje naredbom F (engl. flush) a naredbom Z (engl. zero) poništavaju se brojači. Također se brišu pravila u glavnim lancima naredbom D (engl. delete). Ako se aplikacija iptables koristi za 24

28 druge namjene osim za kontrolu opterećenja, tada će set naredbi koje brišu pravila u glavnim lancima pobrisati i pravila drugih aplikacija. Na primjer, vatrozid aplikacije koriste filter tablicu za postavljanje pravila odbacivanja paketa. Kontrola opterećenja radi samo sa mangle i nat tablicama, pa u tom slučaju ne bi trebalo biti konflikata. Na odlazne pakete djeluje se unošenjem idućih pravila u OUTPUT lanac: iptables -t mangle -I OUTPUT 1 -s $IP_1 -d! p tcp -j BALANCING_AND_MARKING_1 iptables -t mangle -I OUTPUT 2 -s $IP_2 -d! p tcp -j BALANCING_AND_MARKING_2 Prva naredba dodaje pravilo na prvo mjesto u OUTPUT lancu. Paketi se filtriraju po izvorišnoj IP adresi koja je zapisana u varijabli $IP_1, odredišnoj adresi koja mora biti različita od IP adrese (engl. loopback) i protokolu TCP. Paketi koji zadovoljavaju postavljene uvjete preusmjeravaju se na lanac BALANCING_AND_MARKING_1. Druga naredba primjenjuje se na jednak način, ali nad paketima sa odredišnom IP adresom zapisanom u varijabli $IP_2. Paketi se usmjeravaju na lanac BALANCING_AND_MARKING_2. U lanac BALANCING_AND_MARKING_1 upisuju se sljedeće naredbe: iptables -t mangle -I BALANCING_AND_MARKING_1 1 -m connmark --mark 0 -m state -- state NEW,RELATED -m statistic --mode random --probability $X -j CONNMARK --setmark 1 Naredba dodaje pravilo na prvo mjesto u tablicu. Zatim odabire sve one pakete koji zadovoljavaju dva uvjeta: -m connmark mark 0 uvjet filtrira sve neobilježene pakete, -m state state NEW,RELATED uvjet filtrira pakete ovisno u njihovu statusu u automatu stanja. Svi paketi koji zadovolje ta dva uvjeta statistički se raspoređuju po vjerojatnosti zapisanoj u varijabli $X uvjetom i dodjeljuje im se connmark oznaka naredbom -m statistic --mode random --probability $X -j CONNMARK --set-mark 1 25

29 Ako je vrijednost varijable $X jednaka 0.600, tada će 60% paketa dobiti oznaku 1. Ostalih 40% paketa označava se sljedećim pravilom: iptables -t mangle -A BALANCING_AND_MARKING_1 -m connmark --mark 0 -m state -- state NEW,RELATED -j CONNMARK --set-mark 2 Sada su konekcije označene. Potrebno je označiti i sve pakete u konekciji. Za to se brinu sljedeća dva pravila: iptables -t mangle -A BALANCING_AND_MARKING_1 -m state --state NEW,RELATED,ESTABLISHED -m connmark --mark 1 -j MARK --set-mark 1 iptables -t mangle -A BALANCING_AND_MARKING_1 -m state --state NEW,RELATED,ESTABLISHED -m connmark --mark 2 -j MARK --set-mark 2 Kao uvjet statusa konekcije pojavljuje se i ESTABLISHED stanje. Razlog tome je to što kontrolu opterećenja prolaze jedino novostvorene konekcije. Već ostvarene konekcije se samo trebaju obilježiti odgovarajućom oznakom. Isti set pravila postavlja se u lanac BALANCING_AND_MARKING_2, uz odgovarajuće promjene. U tom lancu postavljaju se oznake 3 i 4, a vjerojatnost usmjeravanja nije više vrijednost varijable $X nego varijable $Y: Pravila koja se dodaju u taj lanac su: $Y = 1- $X iptables -t mangle -I BALANCING_AND_MARKING_2 1 -m connmark --mark 0 -m state -- state NEW,RELATED -m statistic --mode random --probability $Y -j CONNMARK --setmark 3 iptables -t mangle -A BALANCING_AND_MARKING_2 -m connmark --mark 0 -m state -- state NEW,RELATED -j CONNMARK --set-mark 4 iptables -t mangle -A BALANCING_AND_MARKING_2 -m state --state NEW,RELATED,ESTABLISHED -m connmark --mark 3 -j MARK --set-mark 3 iptables -t mangle -A BALANCING_AND_MARKING_2 -m state --state NEW,RELATED,ESTABLISHED -m connmark --mark 4 -j MARK --set-mark 4 Paketi nakon prolaska kroz lanac dolaze do odluke o usmjeravanju. Tada strategija usmjeravanja koristi pravila koja su dodana na početku skripte i ovisno o uvjetu usmjerava pakete na određeno sučelje. U tom procesu gubi se oznaka paketa koju je potrebno obnoviti u sljedećem lancu (POSTROUTING lanac): iptables -t mangle -I POSTROUTING 1 -s $IP_1 -d! p tcp -m state --state NEW,RELATED,ESTABLISHED -j CONNMARK --restore-mark 26

30 iptables -t mangle -I POSTROUTING 2 -s $IP_2 -d! p tcp -m state --state NEW,RELATED,ESTABLISHED -j CONNMARK --restore-mark Zatim se u istom lancu, ali u nat tablici, usmjeravaju svi paketi protokola TCP na lanac NATTING_OUTPUT: iptables -t nat -I POSTROUTING 1 -s! d! p tcp -j NATTING_OUTPUT U tablicu NATTING_OUTPUT dodaju se iduća pravila: iptables -t nat -A NATTING_OUTPUT -m connmark --mark 2 -j SNAT --to-source $IP_2 iptables -t nat -A NATTING_OUTPUT -m connmark --mark 4 -j SNAT --to-source $IP_1 Ako je osnovna poveznica glavna, tada svi paketi koji odlaze na redundantnu poveznicu imaju izvorišnu IP adresu osnovne poveznice i oznaku 2. Takvi paketi prolaze kroz SNAT proces gdje im se izvorišna IP adresa mijenja u IP adresu redundantne poveznice. SNAT proces se brine da odgovori na pakete konekcije kojoj je promijenjena izvorišna IP adresa imaju originalnu IP adresu prije nego što ih proslijedi jezgri. Ako je redundantna poveznica glavna, paketi koji dolaze na osnovnu poveznicu imaju izvorišnu IP adresu redundantne poveznice i oznaku 4. Takvi paketi također prolaze kroz SNAT proces. Dolazne konekcije koje se ostvaruju prvi put, tj. imaju stanja NEW ili RELATED se moraju označiti u lancu PREROUTING. Ovisno o tome koja je poveznica glavna se postavljaju različita pravila u novi lanac MARKING mangle tablice. Ako je osnovna poveznica glavna upisuju se sljedeća pravila: iptables -t mangle -A MARKING -i $DEV_1 -j CONNMARK --set-mark 1 iptables -t mangle -A MARKING -i $DEV_2 -j CONNMARK --set-mark 2 iptables -t mangle -A MARKING -m connmark --mark 1 -j MARK --set-mark 1 iptables -t mangle -A MARKING -m connmark --mark 2 -j MARK --set-mark 2 Prva dva pravila postavljaju oznaku connmark ovisno o dolaznom sučelju, a druga dva pravila označuju pojedine pakete. Ako je redundantna poveznica postavljena kao glavna, koristi se sljedeći set pravila: iptables -t mangle -A MARKING -i $DEV_2 -j CONNMARK --set-mark 3 iptables -t mangle -A MARKING -i $DEV_1 -j CONNMARK --set-mark 4 iptables -t mangle -A MARKING -m connmark --mark 3 -j MARK --set-mark 3 27

31 iptables -t mangle -A MARKING -m connmark --mark 4 -j MARK --set-mark 4 Preusmjeravanje novih konekcija na lanac MARKING vrši se postavljanjem sljedećih pravila u PREROUTING lanac: iptables -t mangle -I PREROUTING 1 -s! d $IP_1 -p tcp -m state --state NEW,RELATED -j MARKING iptables -t mangle -I PREROUTING 2 -s! d $IP_2 -p tcp -m state --state NEW,RELATED -j MARKING Potrebno je postojećim konekcijama vratiti oznaku koju su dobile u OUTPUT lancu: iptables -t mangle -I PREROUTING 3 -s! d $IP_1 -p tcp -m state --state ESTABLISHED -j CONNMARK --restore-mark iptables -t mangle -I PREROUTING 4 -s! d $IP_2 -p tcp -m state --state ESTABLISHED -j CONNMARK --restore-mark Nad novim konekcijama, ako imaju oznake 2 ili 4, se obavlja DNAT proces. U nat tablicu dodajemo novi lanac nazvan NATTING_INPUT: iptables -t nat -A NATTING_INPUT -s! d! p tcp -m connmark --mark 2 -j DNAT --to-destination $IP_1 iptables -t nat -A NATTING_INPUT -s! d! p tcp -m connmark --mark 4 -j DNAT --to-destination $IP_2 Preusmjeravanje na taj lanac vrši se iz lanca PREROUTING: iptables -t nat -I PREROUTING 1 -s! d! p tcp -j NATTING_INPUT U odlaznom smjeru se proces SNAT brine da izvorišne IP adrese paketa odgovaraju pristupnoj mreži u koju se šalju, a u dolaznom smjeru se proces DNAT brine da paketi koji dođu do jezgre uvijek imaju IP adresu glavne poveznice postavljenu kao odredišnu Pomoćne skripte Dvije su pomoćne skripte. Jedna se pokreće u pozadini i prati status poveznica, dok druga služi za promjenu kontrola opterećenja. 1. change_balance.sh Omogućuje mijenjanje parametara kontrole opterećenja, tj. vrijednost varijabli $X i $Y. U osnovi je slična skriptama load_balancing.sh i primary_configuration.sh, samo što mijenja određena pravila u lancima. Korisnik unosi vrijednosti težinskih faktora pojedinih poveznica te se na temelju tih vrijednosti računa vjerojatnost usmjeravanja paketa na osnovnu, odnosno 28

32 redundantnu poveznicu. Nakon izračuna vrijednosti mijenja se pravilo na prvom mjestu u tablici BALANCING_AND_MARKING_1: iptables -t mangle -R BALANCING_AND_MARKING_1 1 -m connmark --mark 0 -m state - -state NEW,RELATED -m statistic --mode random --probability $X -j CONNMARK --setmark 1 Ovo pravilo isto je kao i prijašnje, samo što je promijenjena vrijednost varijable $X. Koristi se naredba R (engl. replace) za unos pravila u lanac. Slično pravilo primjenjuje se na lanac BALANCING_AND_MARKING_2, samo što se u tom slučaju mijenja vrijednost varijable $Y: iptables -t mangle -R BALANCING_AND_MARKING_2 1 -m connmark --mark 0 -m state - -state NEW,RELATED -m statistic --mode random --probability $Y -j CONNMARK --setmark 3 Ako korisnik promijeni odnos osnovne i redundantne poveznice mijenjanjem vrijednosti njihova težinskog faktora, potrebno je podesiti tablice usmjeravanja i lanac MARKING. U opisu prethodnih skripti objašnjen je način na koji se mijenjaju pravila u tablici usmjeravanja. Lanac MARKING se mijenja na način da se izbrišu sva pravila koja postoje u lancu i dodaju nova, ovisno o postavkama glavne poveznice: flag=`cat main grep -c $DEV_1` if [ $flag -eq 1 ] then else fi iptables -t mangle -F MARKING iptables -t mangle -A MARKING -i $DEV_1 -j CONNMARK --set-mark 1 iptables -t mangle -A MARKING -i $DEV_2 -j CONNMARK --set-mark 2 iptables -t mangle -A MARKING -m connmark --mark 1 -j MARK --set-mark 1 iptables -t mangle -A MARKING -m connmark --mark 2 -j MARK --set-mark 2 iptables -t mangle -F MARKING iptables -t mangle -A MARKING -i $DEV_2 -j CONNMARK --set-mark 3 iptables -t mangle -A MARKING -i $DEV_1 -j CONNMARK --set-mark 4 iptables -t mangle -A MARKING -m connmark --mark 3 -j MARK --set-mark 3 iptables -t mangle -A MARKING -m connmark --mark 4 -j MARK --set-mark 4 29

33 2. gwping.sh Ovu skriptu napisao je gosp. Angsuman Chakraborty [6]. Skripta radi tako da izvršava naredbu ping nad poveznicama i vrši kontrolu opterećenja pomoću iproute2 programa. Način na koji se to radi opisan je u prijašnjem poglavlju. Da bi skripta radila sa aplikacijom iptables potrebno je podesiti nekoliko postavki i dodati određene linije koda. Rezultat 0 označava uspjeh. Parametre je moguće promijeniti promjenom linija koda. Skripta se pokreće u pozadini i vrti u beskonačnoj petlji. Svakih 10 sekundi pokreće naredbu ping koja ispituje je li globalna IP adresa dostupna, na primjer Taj dio skripte je promijenjen tako da se samo ispituje je li dostupan poveznik (engl. gateway) pristupne mreže. Time se dobiju brži odgovori, što znači i brža reakcija na prekid poveznice. Varijabla SLEEPTIME čuva vrijednost pauze u sekundama između provjere stanja poveznice. Osnovno je postavljena na 10 sekundi. Varijabla TIMEOUT je konstanta koja postavlja vrijednost vremena na koje naredba ping čeka odgovor prije nego što proglasi poveznicu prekinutom. Osnovna je vrijednost postavljena na 5 sekundi. Za žičane poveznice vrijeme čekanja uvijek je postavljeno na 1 sekundu, a za bežične na vrijeme od TIMEOUT + 1 sekunda. Varijable DEV_1 i DEV_2 čuvaju nazive sučelja koji se koriste. Varijable IP_1 i IP_2 čuvaju vrijednosti IP adresa sučelja koji se koriste. Varijable GW_1 i GW_2 čuvaju IP adrese poveznika prema kojima se šalje ping. Varijabla SUCCESSREPEATCOUNT govori koliko uzastopnih ping odgovora treba da bi se poveznica proglasila ispravnom. Osnovna vrijednost je postavljena na 4. Varijabla FAILUREREPEATCOUNT govori koliko uzastopno puta mora isteći vremenska kontrola čekanja na ping odgovor. Osnovna vrijednost je postavljena na 2. Za žičane poveznice dovoljno je ovu vrijednost postaviti na 1, ali je potrebno ovu vrijednost povećati na 2 ili više zbog korištenja bežične infrastrukture. Ako se prva poveznica prekine potrebno je sve nove konekcije preusmjeriti na redundantnu poveznicu: echo "Switching to $DEV_2" iptables -t mangle -R BALANCING_AND_MARKING_1 1 -m connmark --mark 0 -m state - -state NEW,RELATED -m statistic --mode random --probability 0 -j CONNMARK --setmark 1 30

34 iptables -t mangle -R BALANCING_AND_MARKING_2 1 -m connmark --mark 0 -m state - -state NEW,RELATED -m statistic --mode random --probability 1 j CONNMARK --setmark 3 ip route del default table main ip route del default table main ip route add default scope global via $GW_2 dev $DEV_2 metric 99 ip route flush cache cat dns2 > /etc/resolv.conf Ako dođe do prekida osnovne poveznice, potrebno je u lancu BALANCING_AND_MARKING_1 postaviti vjerojatnost $X jednaku 0, u lanac BALANCING_AND_MARKING_2 postaviti vjerojatnost $Y jednaku 1. Glavna tablica usmjeravanja postavlja se tako da se paketi usmjeravaju samo prema redundantnom sučelju. Prekidom poveznice prekinut će se sve konekcije koje su ostvarene preko te iste poveznice. Potrebno je podesiti DNS parametre da svi upiti idu preko redundantnog sučelja. Ako je došlo do prekida redundantne poveznice situacija je obrnuta: echo "Switching to $DEV_1" iptables -t mangle -R BALANCING_AND_MARKING_1 1 -m connmark --mark 0 -m state - -state NEW,RELATED -m statistic --mode random --probability 1 -j CONNMARK --setmark 1 iptables -t mangle -R BALANCING_AND_MARKING_2 1 -m connmark --mark 0 -m state - -state NEW,RELATED -m statistic --mode random --probability 0 -j CONNMARK --setmark 3 ip route del default table main ip route del default table main ip route add default scope global via $GW_1 dev $DEV_1 metric 99 ip route flush cache cat dns > /etc/resolv.conf Nakon što skripta ustvrdi da je došlo do ponovnog uspostavljanja veze preko prekinute poveznice, vraća aplikacije u prijašnje stanje. Na slici (Sl. 2.5) može se vidjeti ponašanje prijenosne brzine korištenjem torrent klijenta u trenutku prekida poveznice eth2: 31

35 Sl. 2.5 Prikaz stanja poveznica u slučaju prekida 32

36 3. Testiranje i rezultati Analiza iskoristivosti izvršena je u laboratoriju na dvije pristupne mreže. Prva pristupna mreža je 100 Mbit Ethernet LAN na koju je testno računalo spojeno preko eth0 mrežnog sučelja. Brzina poveznice prema Internetu mjerena je uz DHCP dodijeljenu adresu u okruženju bez NAT-a. Prema informaciji na stranici [5] brzina preuzimanja datoteke iznosila je 5,23 MB/sek. Druga pristupna mreža je IEEE g WLAN mreža na koju se pristupilo preko eth2 mrežnog sučelja. Uređaj korišten za pristup mreži je Planet WL-U356 USB bežična kartica temeljena na Atheros zd1211 čipu. Brzina preuzimanja datoteke mjerena uz DHCP dodijeljenu adresu u okruženju bez NAT-a iznosila je 0,98 MB/sek. Približni odnosi brzina poveznica u odnosu su 5 : 1 u korist žičane poveznice. Za potrebe testiranja korišten je odnos glavne i redundantne poveznice u odnosu 100 : 99. Znači da je glavnoj poveznici dodijeljen faktor težine 100, a redundantnoj faktor težine 99. Iako su odnosi brzina 5 : 1 u korist žičane poveznice, odnos glavne i redundantne poveznice je u omjeru približno 1 : 1. Radi lakšeg razumijevanja potrebno je razlikovati pojmove glavne i sporedne, te osnovne i redundantne poveznice. U testnom slučaju glavna poveznica je sučelje eth0 prema žičanoj mreži, a sporedna poveznica je eth2 sučelje prema bežičnoj mreži. Ovisno o testnom scenariju, glavna poveznica može biti ili osnovna ili redundantna. Rezultati će biti točniji ako se izjednači raspoređivanje na osnovnu i redundantnu poveznicu omjerom 1 : 1. Najbliži takav omjer nam omogućava korištenje najvećih faktorskih vrijednosti, a to su upravo 99 i 100. Pri tom omjeru približno je jednak odnos poveznica, ali zbog razlike težinskih faktora od 1 je točno određeno koja poveznica je osnovna a koja redundantna. Budući da su korištena sučelja eth0 i eth2 za pristup mrežama, što nije mijenjano tijekom testiranja, moguće je ubrzati postupak pripreme poveznica za testiranje. Podešavanje sučelja u Linux operativnom sustavu moguće je pomoću mijenjanja parametara /etc/network/interfaces datoteke. Ta datoteka sadrži različite postavke određenog mrežnog sučelja koje se automatski postavljaju nakon što se sučelje aktivira. To su IP adresa, maska podmreže, naziv DNS domene, postavke vezane za pristup bežičnoj mreži (ESSID, vrsta enkripcije i ključ). Moguće 33

37 je postaviti naredbu koju će sučelje izvršiti nakon što postane aktivno i spoji se na mrežu. Za eth0 sučelje dodaju se sljedeći parametri: auto eth0 iface eth0 inet dhcp pre-up echo "" > /etc/resolv.conf up /usr/local/share/applications/lb/store_dns.sh Prva naredba označava da sučelje automatski postaje aktivno s podizanjem sustava. Druga naredba označava da sučelje dobiva IP adresu od DHCP servera. Treća naredba označava da se prije postavljanja sučelja eth0 aktivnim, briše sadržaj datoteke /etc/resolv.conf. Ključna riječ koja to omogućuje je pre-up. Četvrta naredba označava da se nakon postavljanja sučelja u aktivno stanje pokrene skripta /usr/local/share/applications/lb/store_dns.sh. Direktorij /usr/local/share/applications/lb je direktorij stvoren za potrebe testiranja. Tu se nalaze sve skripte potrebne za testiranje. Pokretanje skripte omogućuje ključna riječ up. Na sličan način podesi se sučelje eth2: auto eth2 iface eth2 inet dhcp wireless-key key wireless-essid ESSID up /usr/local/share/applications/lb/restore_dns.sh Treća i četvrta naredba služe za spajanje na bežičnu mrežu dok posljednja naredba služi za pokretanje skripte /usr/local/share/applications/lb/restore_dns.sh. Za potrebe testiranja korišten je protokol torrent zbog mogućnosti da u vrlo kratkom vremenu ostvari velik broj konekcija, što je idealno za testiranje skripte. Korišteni klijentski program je µtorrent. Iako na Linux OS-u postoji velik broj klijentskih programa protokola torrent, navedeni program vrlo malo utječe na ukupne performanse računala. Zbog toga što ne postoji Linux verzija tog programa, potrebno je pokrenuti taj program u Wine emulatoru. To je program koji emulira Windows operativni sustav, ali ne na način da virtualizira računalo, nego prevodi naredbe iz Windows okruženja u Linux okruženje. Način rada tog programa je vidljiv i u imenu koji je zapravo rekurzivna kratica Wine Wine Is Not Emulator. 34

38 Datoteka koja je protokolom torrent preuzeta s Interneta je DVD inačica Debian distribucije Linux operativnog sustava. Time nisu prekršena nikakva autorska prava Inače je vrlo raširena zabluda da se protokol torrent koristi samo za kršenje autorskih prava i preuzimanje zaštićenih materijala. Na slici (Sl. 3.1) se vidi ispis ekrana (engl. screenshot) glavnog prozora µtorrent programa. Sl. 3.1 Prikaz sučelja programa µtorrent U procesu testiranja je korišten program tcptrack. Program pasivno prati stanja TCP konekcija na određenom mrežnom sučelju. Na računalo se instalira naredbom ~$ sudo apt-get install tcptrack Pokreće se naredbom ~$ sudo tcptrack i <naziv mrežnog sučelja> -d f Pomoću programa moguće je u realnom vremenu prikazati stanje konekcija i širinu korištenog prijenosnog pojasa na pojedinom sučelju. 35

39 3.1. Postupak testiranja Koriste se sučelja eth0 i eth2 koja je potrebno podesiti da bi kontrola opterećenja ispravno radila. Najprije je potrebno oba sučelja postaviti u neaktivno stanje naredbama: ~$ sudo ifconfig eth0 down ~$ sudo ifconfig eth2 down Zatim aktiviramo sučelje eth0. ~$ sudo ifconfig eth0 up Zbog namještenih postavki u /etc/network/interfaces datoteci, mrežno sučelje će od DHCP servera dobiti sve potrebne informacije za spajanje na mrežu. Nakon toga aktiviramo sučelje eth2 naredbom: ~$ sudo ifconfig eth2 up Još nam preostaje aktivirati kontrolu opterećenja naredbom: ~$ sudo./load_balancing.sh eth0 eth2 Time je postupak podešavanja mrežnih sučelja gotov. Postoje 4 testna scenarija ovisno o tome da li se koristi NAT u pristupnoj mreži ili ne. Scenarij I U prvom scenariju glavna je poveznica osnovna sa faktorom težine 100, a sporedna redundantna sa faktorom težine 99. Glavnoj poveznici dodijeljena je IP adresa , adresa mreže je /24, a adresa poveznika Sporedna poveznica nalazi se u NAT okruženju, dodijeljena joj je IP adresa , adresa mreže je /24, a adresa poveznika je Brzina glavne poveznice je 5,43 MB/sek, a sporedne 1,16 MB/sek. Ispis tablica usmjeravanja i pravila strategije usmjeravanja vidljiv je na slici (Sl. 3.2). 36

40 Sl. 3.2 Prikaz tablica usmjeravanja i strategije usmjeravanja Vidljive su postavke glavne tablice usmjeravanja, s glavnom poveznicom postavljenom na manju metriku. Sl. 3.3 Ispis lanaca mangle tablice za scenarij I Nakon pokretanja torrent klijenta potrebno je pričekati neko vrijeme da kroz kontrolu opterećenja prođe određen broj paketa. 37

41 Naredba ~# iptables t mangle L n -- line-numbers v ispisuje lance koji se nalaze u mangle tablici (Sl. 3.3).Odlazni paketi prolaze samo kroz lanac BALANCING_AND_MARKING_1. Tu je 216 konekcija označeno oznakom 1, a 208 konekcija oznakom 2. Konekcije s oznakom 1 su ostvarile 30 MB prometa, a konekcije s oznakom 2 5,2 MB prometa. Odnos odlaznog prometa po glavnoj i sporednoj poveznici približno je u odnosu 6 : 1, iako je odnos broja konekcija približno 1 : 1. Po glavnoj poveznici u dolaznom smjeru pristiglo je 948 MB prometa, a po sporednoj 134 MB, što čini omjer dolaznog prometa po poveznicama 7 : 1 u korist glavne poveznice. Ostvareno je 390 novih konekcija u dolaznom smjeru samo po glavnoj poveznici. Po sporednoj poveznici nije pristigao nijedan zahtjev za novom konekcijom. Razlog tomu je što se ta poveznica nalazi u mreži koja je zaštićena NAT/vatrozidom (engl. NAT/firewall) pa odbija dolazne pakete koji iniciraju konekcije. Također možemo vidjeti i izgled lanaca u nat tablici (Sl. 3.4). Sl. 3.4 Ispis lanaca nat tablice za scenarij I U nat tablici je 210 paketa s oznakom 2 prošlo kroz SNAT proces pretvaranja izvorišne IP adrese. Treba napomenuti da svi podatci nisu snimljeni istodobno, pa neki lanci mogu imati brojače različite od drugih lanaca. Lanac BALANCING_AND_MARKING_1 u mangle tablici prijavljuje da je poslao 208 paketa u NATTING_OUTPUT lanac nat tablice, dok taj lanac prijavljuje da je primio 210 paketa. U ovom scenariju vidi se primjer ispisa aplikacije tcptrack za glavnu poveznicu (Sl. 3.5). 38

42 Sl. 3.5 Ispis aplikacije tcptrack za glavnu poveznicu Osnovna poveznica trenutno ima 203 konekcije aktivne i brzina prijenosa je jednaka 3 MB/sek. Puno je veći broj konekcija koje su ostvarene u dolaznom smjeru nego konekcija koje su ostvarene u odlaznom smjeru. Ispis aplikacije tcptrack za sporednu konekciju vidljiv je na slici (Sl. 3.6). 39

43 Sl. 3.6 Ispis aplikacije tcptrack za sporednu poveznicu Radi se o puno manjem broju konekcija (41) i sve su ostvarene u odlaznom smjeru. Na slici (Sl. 3.7) se vidi iskorištenost prijenosnog pojasa. 40

44 Sl. 3.7 Iskorištenost prijenosnog pojasa u scenariju I Scenarij II U drugom scenariju su iste postavke kao u prvom scenariju, samo je razlika što je glavna poveznica redundantna, a sporedna osnovna. U odnosu na prvi scenarij primijećeno je nekoliko promjena. Torrent klijent prijavljuje grešku da NAT/vatrozid ograničava promet pa je potrebno podesiti vrata (engl. port) tako da se ostali korisnici mogu spojiti na klijentsko računalo. Ta se greška pojavljuje svaki put kada se klijentsko računalo nađe u mreži u kojoj djeluje mrežni NAT/vatrozid. 41

45 Sl. 3.8 Ispis mangle tablice za scenarij II Konekcije prolaze kroz lanac BALANCING_AND_MARKING_2 (Sl. 3.8). Po sučeljima su raspoređene u omjeru približno 1 : 1. Broj konekcija koje su usmjerene na sporednu poveznicu je 212, a na glavnu 201. Konekcije s oznakom 3 ostvarile su 22 MB prometa, a konekcije sa oznakom 4 23 KB prometa. Odnos odlaznog prometa po sporednoj i glavnoj poveznici približno je u odnosu 1000 : 1 u korist sporedne poveznice. U dolaznom smjeru je vidljivo da je po glavnoj poveznici pristiglo 72 MB prometa, a po sporednoj 31 KB. Ostvarene su 1042 nove konekcije u dolaznom smjeru, i to samo po glavnoj poveznici. Sl. 3.9 Ispis nat tablice za scenarij II 42

46 DNAT je procesirao 1048 paketa koji su pristigli po osnovnoj poveznici, za razliku od prošlog scenarija kada DNAT nije ništa procesirao jer po sporednoj poveznici nisu pristizali nikakvi zahtjevi za novim konekcijama (Sl. 3.9). Aplikacija tcptrack prijavila je da je na glavnoj poveznici bila aktivna 151 konekcija, ali je ukupna prijenosna brzina bila 0 KB/sek. Na sporednoj poveznici je bilo aktivno 68 konekcija ukupne prijenosne brzine 523 KB/sek. Iskorištenost prijenosnog pojasa na obje poveznice dana je na slici (Sl. 3.10). Sl Iskorištenost prijenosnog pojasa u scenariju II Scenarij III Treći scenarij koristi NAT okolinu kod obje poveznice. Glavna poveznica je postavljena kao osnovna i dodijeljena joj je IP adresa sa adresom mreže /24 i adresom poveznika Postavke sporedne poveznice su ostale nepromijenjene. 43

47 Sl Ispis mangle tablice za scenarij III Ispis mangle tablice govori da je raspored konekcija po poveznicama bio u omjeru 281 : 265 u korist glavne poveznice (Sl. 3.11). Ukupni odlazni promet je 25 MB, od čega je preko glavne poveznice ostvareno 14 MB prometa, a preko sporedne 11 MB prometa. Sl Iskorištenost prijenosnog pojasa u scenariju III 44

VDSL modem Zyxel VMG1312-B10A/B30A

VDSL modem Zyxel VMG1312-B10A/B30A VDSL modem Zyxel VMG1312-B10A/B30A Default Login Details LAN IP Address http://192.168.2.1 User Name user Password 1234 Funkcionalnost lampica Power lampica treperi kratko vrijeme nakon uključivanja modema,

More information

VRIJEDNOSTI ATRIBUTA

VRIJEDNOSTI ATRIBUTA VRIJEDNOSTI ATRIBUTA Svaki atribut (bilo da je primarni ključ, vanjski ključ ili običan atribut) može i ne mora imati ograničenja na svojim vrijednostima. Neka od ograničenja nad atributima: Null / Not

More information

Microsoft Hyper-V Server 2016 radionica EDU IT Pro, Zagreb,

Microsoft Hyper-V Server 2016 radionica EDU IT Pro, Zagreb, Microsoft Hyper-V Server 2016 radionica EDU IT Pro, Zagreb, 13.04.2017. Podešavanje Hyper-V Servera 2016 za RSAT upravljanje Dario Štefek Lokacije za preuzimanje: Microsoft Hyper-V Server 2016 https://www.microsoft.com/en-us/evalcenter/evaluate-hyper-v-server-2016

More information

Sberbank Business Online na Mozilla FireFox

Sberbank Business Online na Mozilla FireFox Sberbank Business Online na Mozilla FireFox Verzija 1.6 Srpanj 2016. Sberbank d.d. Stranica 1 SADRŽAJ 1 INSTALACIJA... 2 2 POKRETANJE MOZILLE FIREFOX... 3 2.1 IMPORT SECURITY MODULA... 4 2.2 AUTOMATSKI

More information

Uputa za instaliranje programske potpore za operativni sustav WINDOWS

Uputa za instaliranje programske potpore za operativni sustav WINDOWS ZABA SignErgy Desktop aplikacija Uputa za instaliranje programske potpore za operativni sustav WINDOWS SADRŽAJ 1. UVOD 3 2. PODRŽANI OPERATIVNI SUSTAVI 3 3. PROGRAMSKI PREDUVJETI ZA INSTALACIJU PROGRAMSKE

More information

Upute za postavljanje Outlook Expressa

Upute za postavljanje Outlook Expressa Upute za postavljanje Outlook Expressa Prije postavljanja klijenata morate obavezno obaviti prvu prijavu na web mail kako bi aktivirali vaš račun na novom sustavu. Ukoliko niste obavili prvu prijavu, nećete

More information

Informatika Uvod u C#,.NET Framework i Visual Studio... nastavak...

Informatika Uvod u C#,.NET Framework i Visual Studio... nastavak... Informatika Uvod u C#,.NET Framework i Visual Studio... nastavak... Prof. dr. sc. Tomislav Pribanić Izv. prof. dr. sc. Vedran Podobnik Doc. dr. sc. Marija Seder Sveučilište u Zagrebu Fakultet elektrotehnike

More information

Uputstvo za korišćenje logrotate funkcije

Uputstvo za korišćenje logrotate funkcije Copyright AMRES Sadržaj Uvod 3 Podešavanja logrotate konfiguracionog fajla 4 Strana 2 od 5 Uvod Ukoliko je aktivirano logovanje za RADIUS proces, može se desiti da posle određenog vremena server bude preopterećen

More information

Naredbe za kontrolu toka

Naredbe za kontrolu toka Naredbe za kontrolu toka Naredbe za kontrolu toka Nakon odslušanog bit ćete u stanju: objasniti semantiku naredbi za kontrolu postupaka navesti sintaksu naredbi if, if-else i case u programskom jeziku

More information

ETHERNET LOKALNA MREŽA. I. Podešavanje mrežnih postavki računala u Linux operacijskom sustavu

ETHERNET LOKALNA MREŽA. I. Podešavanje mrežnih postavki računala u Linux operacijskom sustavu ETHERNET LOKALNA MREŽA I. Podešavanje mrežnih postavki računala u Linux operacijskom sustavu Za umrežavanje računala potrebno je: - imati ugrađenu i podešenu Ethernet mrežnu karticu (instaliran pogonski

More information

CSS CSS. selector { property: value; } 3/20/2018. CSS: Cascading Style Sheets

CSS CSS. selector { property: value; } 3/20/2018. CSS: Cascading Style Sheets CSS CSS CSS: Cascading Style Sheets - Opisuje izgled (appearance) i raspored (layout) stranice - Sastoji se od CSS pravila, koji defini[u skup stilova selector { property: value; 1 Font face: font-family

More information

Windows Server 2012, VDI Licenciranje najprodavanijeg servera, što je novo, VDI licenciranje. Office 2013 / Office 365

Windows Server 2012, VDI Licenciranje najprodavanijeg servera, što je novo, VDI licenciranje. Office 2013 / Office 365 Windows 8 Licenciranje, razlike u verzijama Windows Server 2012, VDI Licenciranje najprodavanijeg servera, što je novo, VDI licenciranje Serverski proizvodi Server 2012, System centar 2012, SQL 2012, Sharepoint

More information

Single Sign-On s Officeom 365 na Kineziološkom fakultetu Sveučilišta u Zagrebu

Single Sign-On s Officeom 365 na Kineziološkom fakultetu Sveučilišta u Zagrebu Single Sign-On s Officeom 365 na Kineziološkom fakultetu Sveučilišta u Zagrebu Stipe Gorenjak, Kineziološki fakultet Sveučilišta u Zagrebu e-mail: stipe.gorenjak@kif.hr Sponzori Ugasite mobitele. Hvala.

More information

Računarske osnove Interneta (SI3ROI, IR4ROI)

Računarske osnove Interneta (SI3ROI, IR4ROI) Računarske osnove terneta (SI3ROI, IR4ROI) Vežbe MPLS Predavač: 08.11.2011. Dražen Drašković, drazen.draskovic@etf.rs Autori: Dražen Drašković Naučili ste na predavanjima MPLS (Multi-Protocol Label Switching)

More information

Uputstvo za podešavanje mail klijenta

Uputstvo za podešavanje mail klijenta Uputstvo za podešavanje mail klijenta 1. Podešavanje Thunderbird mail klijenta 1.1 Dodavanje mail naloga Da biste podesili Vaš mail klijent (u ovom slučaju Thunderbird) da prima i šalje mail-ove potrebno

More information

Uputa: Zabranjeno je koristiti bilo kakva pomagala. Rje²enja pi²ete desno od zadatka. Predajete samo ovaj list.

Uputa: Zabranjeno je koristiti bilo kakva pomagala. Rje²enja pi²ete desno od zadatka. Predajete samo ovaj list. Ime i prezime: Asistent: Predava : Programiranje (C) 1. kolokvij 14. 4. 2003. 1. 2. 3. 4. 5. 6. 7. Uputa: Zabranjeno je koristiti bilo kakva pomagala. Rje²enja pi²ete desno od zadatka. Predajete samo ovaj

More information

Prva recenica. Druga recenica.

Prva recenica. Druga recenica. Algoritmi i programiranje Predavanje 4 METODE LOKALNE, GLOBALNE VARIJABLE I KONSTANTE METODA je imenovani izdvojeni slijed naredbi koji rješava određeni zadatak i po potrebi se poziva jednom ili više puta

More information

VB komande. Programiranje 1

VB komande. Programiranje 1 VB komande Programiranje 1 Zadatak 1: Sastaviti program koji se sastoji iz jedne ListBox kontrole, jedne Textbox kontrole i dva komandna dugmeta. Klikom na prvo komandno dugme umeće se u ListBox sadržaj

More information

PREDMET. Osnove Java Programiranja. Čas JAVADOC

PREDMET. Osnove Java Programiranja. Čas JAVADOC PREDMET Osnove Java Programiranja JAVADOC Copyright 2010 UNIVERZITET METROPOLITAN, Beograd. Sva prava zadržana. Bez prethodne pismene dozvole od strane Univerziteta METROPOLITAN zabranjena je reprodukcija,

More information

Sveučilište u Zagrebu PMF Matematički odsjek. Mreže računala. Vježbe 08. Zvonimir Bujanović Slaven Kožić Vinko Petričević

Sveučilište u Zagrebu PMF Matematički odsjek. Mreže računala. Vježbe 08. Zvonimir Bujanović Slaven Kožić Vinko Petričević Sveučilište u Zagrebu PMF Matematički odsjek Mreže računala Vježbe 08 Zvonimir Bujanović Slaven Kožić Vinko Petričević Uvod: (X)HTML i CSS Na ovim i idućim vježbama naučit ćemo osnove jezika za opisivanje

More information

TP-LINK TL-WPA4220 strujni prijenosnik Internet ili IPTV signala s bežičnim modulom. Priručnik za korištenje i brzu instalaciju

TP-LINK TL-WPA4220 strujni prijenosnik Internet ili IPTV signala s bežičnim modulom. Priručnik za korištenje i brzu instalaciju TP-LINK TL-WPA4220 strujni prijenosnik Internet ili IPTV signala s bežičnim modulom Priručnik za korištenje i brzu instalaciju Sadržaj ŠTO JE TP-LINK TL-WPA4220... 3 KAKO KORISITI TP-LINK TL-WPA4220...

More information

PKI Applet Desktop Application Uputa za instalaciju programske potpore

PKI Applet Desktop Application Uputa za instalaciju programske potpore 1 SADRŽAJ 1. UVOD 3 2. PODRŽANI OPERATIVNI SUSTAVI 3 3. PROGRAMSKI PREDUVJETI ZA INSTALACIJU PROGRAMSKE POTPORE 3 4. INSTALACIJA PROGRAMSKE POTPORE 3 5. DEINSTALACIJA PROGRAMSKE POTPORE 6 2 1. Uvod PKI

More information

Case Study Hrvatska pošta: Korisničko iskustvo iz snova. Tomislav Turk Samostalni sistem inženjer, Combis d.o.o. Zagreb,

Case Study Hrvatska pošta: Korisničko iskustvo iz snova. Tomislav Turk Samostalni sistem inženjer, Combis d.o.o. Zagreb, Case Study Hrvatska pošta: Korisničko iskustvo iz snova Tomislav Turk Samostalni sistem inženjer, Combis d.o.o. Zagreb, 27.12.2018. Sadržaj Hrvatska pošta prije projekta Izazovi projekta Tehnologije korištene

More information

SVEUČILIŠTE U MOSTARU FAKULTET PRIRODOSLOVNO-MATEMATIČKIH I ODGOJNIH ZNANOSTI BAZE PODATAKA 2. Doc.dr.sc. GORAN KRALJEVIĆ BAZE PODATAKA 2 1

SVEUČILIŠTE U MOSTARU FAKULTET PRIRODOSLOVNO-MATEMATIČKIH I ODGOJNIH ZNANOSTI BAZE PODATAKA 2. Doc.dr.sc. GORAN KRALJEVIĆ BAZE PODATAKA 2 1 SVEUČILIŠTE U MOSTARU FAKULTET PRIRODOSLOVNO-MATEMATIČKIH I ODGOJNIH ZNANOSTI BAZE PODATAKA 2 Doc.dr.sc. GORAN KRALJEVIĆ BAZE PODATAKA 2 1 Baze podataka 2 Web: http://www.fpmoz.ba/gkraljevic Pitanja, primjedbe,

More information

FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA

FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA Sustavi za praćenje i vođenje procesa Seminarski rad LOGIČKI ANALIZATOR (PC kao instrument) 26. svibnja 2007. Ivan Grubišić 0036404380 1. Logički analizator Logički

More information

Mehanizmi ostvarivanja sigurnosti

Mehanizmi ostvarivanja sigurnosti Mehanizmi ostvarivanja sigurnosti Stjepan Groš 1 Sadržaj Sigurnosne stijene (Firewall) Implementacija sigurnosne stijene u Linux OS-u Tuneliranje Virtualne privatne mreže 2 Sigurnosne stijene (1) Stavljaju

More information

Sustavi za praćenje i vođenje procesa

Sustavi za praćenje i vođenje procesa Fakultet elektrotehnike i računarstva Sveučilišta u Zagrebu Zavod za elektroničke sustave i obradbu informacija Laboratorij za sustave i signale Sustavi za praćenje i vođenje procesa vježba br. 4: Internet

More information

Programiranje III razred

Programiranje III razred Tehnička škola 9. maj Bačka Palanka Programiranje III razred Naredbe ciklusa for petlja Naredbe ciklusa Veoma često se ukazuje potreba za ponavljanjem nekih naredbi više puta tj. za ponavljanjem nekog

More information

Usmjeravanje na Internetu

Usmjeravanje na Internetu Usmjeravanje na Internetu Stjepan Groš 1 Sadržaj Temeljni pojmovi iz mrežnog sloja Interneta Pojam i namjena usmjernika Proces proslijeđivanja Izrada tablica proslijeđivanja Podešavanje tablica proslijeđivanja

More information

Učitati cio broj n i štampati njegovu recipročnu vrijednost. Ako je učitan broj 0, štampati 1/0.

Učitati cio broj n i štampati njegovu recipročnu vrijednost. Ako je učitan broj 0, štampati 1/0. Kontrolne naredbe Primjeri: Opšti oblik razgranate strukture (if sa ) if (uslov) Naredba 1 ili blok naredbi1 Naredba 2 ili blok naredbi2 Učitati broj x i štampati vrijednost double x, z; Scanner in=new

More information

Sadržaj. Verzija 03/2017 Primjenjuje se od 20. novembra godine

Sadržaj. Verzija 03/2017 Primjenjuje se od 20. novembra godine Sadržaj 1 Web hosting 3 2 Registracija domena 3 3 Internet marketing 3 4 E mail paketi 4 5 Virtuoz 4 6 Internet Security servis 5 7 Kolokacija servera 6 8 Cloud usluge 6 9 Aktivni servisi koji nijesu u

More information

Uvod, varijable, naredbe, petlje

Uvod, varijable, naredbe, petlje 8. JavaScript Uvod, varijable, naredbe, petlje M. Zekić-Sušac 1 Što je JavaScript? JavaScript je najpopularniji skriptni jezik na Internetu kojeg podržavaju svi poznatiji preglednici (Internet Explorer,

More information

Cjenovnik usluga informacionog društva

Cjenovnik usluga informacionog društva Cjenovnik usluga informacionog društva Verzija: 01/2018 Sadržaj 1 Web hosting 3 2 Registracija domena 3 3 Internet marketing 3 4 E mail paketi 4 5 Virtuoz 4 6 Internet Security servis 5 7 Kolokacija servera

More information

Izrada VI laboratorijske vježbe

Izrada VI laboratorijske vježbe Izrada VI laboratorijske vježbe 1. Programirati proceduru koja se aktivira sa Standard palete alatki klikom na button Fajlovi. Prilikom startovanja procedure prikazuje se forma koja sadrži jedan list box

More information

Unaprjeñenje sigurnosti u mrežama pružatelja

Unaprjeñenje sigurnosti u mrežama pružatelja Unaprjeñenje sigurnosti u mrežama pružatelja usluga Miroslav Šimić miroslav.simic@snt.hr CCIE #19429 Agenda Zaštita mrežne infrastrukture Zaštita na rubovima mreže Uočavanje i sprječavanje napada Agenda

More information

6. USMJERAVANJE NA INTERNETU Usmjeravanje kod paketskih mreža ima primarnu ulogu osigurati dostupnost od izvorišta do odredišta toka podataka, a

6. USMJERAVANJE NA INTERNETU Usmjeravanje kod paketskih mreža ima primarnu ulogu osigurati dostupnost od izvorišta do odredišta toka podataka, a 6. USMJERAVANJE NA INTERNETU Usmjeravanje kod paketskih mreža ima primarnu ulogu osigurati dostupnost od izvorišta do odredišta toka podataka, a sekundarnu pri tome utjecati na optimalno iskorištenje mreže

More information

b) program deljiv3; uses wincrt; var i:integer; begin i:=3; while i<100 do begin write(i:5); i:=i+3; end; end.

b) program deljiv3; uses wincrt; var i:integer; begin i:=3; while i<100 do begin write(i:5); i:=i+3; end; end. NAREDBA CIKLUSA SA PREDUSLOVOM WHILE 1.Odrediti vrednosti s i p nakon izvrsenja sledecih naredbi za dato a=43, a=34, a=105 program p1; var a,s,p:integer; write('unesite a:');readln(a); p:=a; s:=0; while

More information

Geant2 - JRA1. Upravljanje mjerenjem i performansama mreža (perfsonar, baza multi-domain nadzorne usluge) Danijel Matek (Srce)

Geant2 - JRA1. Upravljanje mjerenjem i performansama mreža (perfsonar, baza multi-domain nadzorne usluge) Danijel Matek (Srce) Geant2 - JRA1 Upravljanje mjerenjem i performansama mreža (perfsonar, baza multi-domain nadzorne usluge) Danijel Matek (Srce) 21.11.2007, CUC2007, Rijeka Što je to JRA1? Glavni zadatak JRA1 (Performance

More information

Uputstva za instaliranje čitača Datalogic Skorpio u operativnom sistemu Windows 7 i višim POM-NA-XX-46, V3.0

Uputstva za instaliranje čitača Datalogic Skorpio u operativnom sistemu Windows 7 i višim POM-NA-XX-46, V3.0 POM - Pomoć korisnicima Uputstva za instaliranje čitača Datalogic Skorpio u operativnom sistemu Windows 7 i višim POM-NA-XX-46, V3.0 IZUM, 2016 COBISS, COMARC, COBIB, COLIB, IZUM su zaštićeni znaci u posedu

More information

PARALELNO PROGRAMIRANJE

PARALELNO PROGRAMIRANJE Predavanje 09 Odjel za matematiku 1 PARALELNO PROGRAMIRANJE POSIX threadovi za C++ Predavanje 09 Odjel za matematiku 2 Programske niti (thread) unutar procesa Danas ćemo se upoznati s POSIX thread bibliotekom

More information

Osnove programskog jezika C# Čas 5. Delegati, događaji i interfejsi

Osnove programskog jezika C# Čas 5. Delegati, događaji i interfejsi Osnove programskog jezika C# Čas 5. Delegati, događaji i interfejsi DELEGATI Bezbedni pokazivači na funkcije Jer garantuju vrednost deklarisanog tipa. Prevodilac prijavljuje grešku ako pokušate da povežete

More information

Upute za VDSL modem BiPAC 8700VNXL R3

Upute za VDSL modem BiPAC 8700VNXL R3 Upute za VDSL modem BiPAC 8700VNXL R3 Default Login Details LAN IP Address User Name Password http://192.168.2.1 user user Funkcionalnost lampica LED Stanje Opis Power LAN 1-4 WLAN WPS USB Crvena svijetli

More information

UPUTSTVO ZA KORIŠĆENJE NOVOG SPINTER WEBMAIL-a

UPUTSTVO ZA KORIŠĆENJE NOVOG SPINTER WEBMAIL-a UPUTSTVO ZA KORIŠĆENJE NOVOG SPINTER WEBMAIL-a Webmail sistem ima podršku za SSL (HTTPS). Korištenjem ovog protokola sva komunikacija između Webmail sistema i vašeg Web čitača je kriptovana. Prilikom pristupa

More information

VMware Workstation. VMwareWorkstation ESX ($) (vmotion, DRS, HA, Storage vmotion) vcenter Server ($) Server. Guest OS

VMware Workstation. VMwareWorkstation ESX ($) (vmotion, DRS, HA, Storage vmotion) vcenter Server ($) Server. Guest OS VMware Workstation ESX ($) vcenter Server ($) (license manager) Server hardware (vmotion, DRS, HA, Storage vmotion) ESXi (freeware) (ESXi freeware is managed by the Virtual Infrastructure (or vsphere)

More information

Sveučilište u Zagrebu Fakultet strojarstva i brodogradnje. WEB programiranje HTML & CSS

Sveučilište u Zagrebu Fakultet strojarstva i brodogradnje. WEB programiranje HTML & CSS Sveučilište u Zagrebu Fakultet strojarstva i brodogradnje WEB programiranje HTML & CSS Autor/i: Juraj Benić 2018 1. Zadatak Kreirati stranicu kojoj će naslov biti Zadatak 1. i veličina teksta 20px te staviti

More information

Programiranje Programski jezik C. Sadržaj. Datoteke. prof.dr.sc. Ivo Ipšić 2009/2010

Programiranje Programski jezik C. Sadržaj. Datoteke. prof.dr.sc. Ivo Ipšić 2009/2010 Programiranje Programski jezik C prof.dr.sc. Ivo Ipšić 2009/2010 Sadržaj Ulazno-izlazne funkcije Datoteke Formatirane datoteke Funkcije za rad s datotekama Primjeri Datoteke komunikacija između programa

More information

STATEFUL INSPECTION FIREWALL

STATEFUL INSPECTION FIREWALL FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA ZAGREB Zavod za elektroničke sustave i obradbu informacija Sustavi za praćenje i vođenje procesa STATEFUL INSPECTION FIREWALL Sanja Žonja 0036381544 Zagreb, 05.06.2005.

More information

Uvod u programiranje - vežbe. Kontrola toka izvršavanja programa

Uvod u programiranje - vežbe. Kontrola toka izvršavanja programa Uvod u programiranje - vežbe Kontrola toka izvršavanja programa Naredbe za kontrolu toka if, if-else, switch uslovni operator (?:) for, while, do-while break, continue, return if if (uslov) naredba; if

More information

ARDUINO KROZ JEDNOSTAVNE PRIMJERE - pripreme za natjecanja -

ARDUINO KROZ JEDNOSTAVNE PRIMJERE - pripreme za natjecanja - ARDUINO KROZ JEDNOSTAVNE PRIMJERE - pripreme za natjecanja - PRIPREMA 5-2015 DVOSMJERNA SERIJSKA KOMUNIKACIJA Paolo Zenzerović, mag. ing. el. Zagreb, 2015. 2 ARDUINO KROZ JEDNOSTAVNE PRIMJERE DVOSMJERNA

More information

Osnove programskog jezika C# Čas 4. Nasledjivanje 2. deo

Osnove programskog jezika C# Čas 4. Nasledjivanje 2. deo Osnove programskog jezika C# Čas 4. Nasledjivanje 2. deo Nasledjivanje klasa Modifikator new class A { public virtual void F() { Console.WriteLine("I am A"); } } class B : A { public override void F()

More information

Sigurnosni problemi u računalnim programima i operativnim sustavima područje je na kojem CARNet CERT kontinuirano radi.

Sigurnosni problemi u računalnim programima i operativnim sustavima područje je na kojem CARNet CERT kontinuirano radi. IPTables vatrozid CCERT-PUBDOC-2007-07-198 Sigurnosni problemi u računalnim programima i operativnim sustavima područje je na kojem CARNet CERT kontinuirano radi. Rezultat toga rada ovaj je dokument, koji

More information

Korisničko uputstvo za instalaciju i podešavanje securew2 programa za pristup eduroam servisu

Korisničko uputstvo za instalaciju i podešavanje securew2 programa za pristup eduroam servisu Korisničko uputstvo za instalaciju i podešavanje securew2 programa za pristup eduroam servisu Termin supplicant se koristi u IEEE 802.1X standardu. U širem značenju, ovaj termin predstavlja entitet (korisnik

More information

Upute za pristup bežičnoj mreži Medicinskog fakulteta u Splitu (MS Windows XP) ver 1.1, lipanj 2010.

Upute za pristup bežičnoj mreži Medicinskog fakulteta u Splitu (MS Windows XP) ver 1.1, lipanj 2010. Upute za pristup bežičnoj mreži Medicinskog fakulteta u Splitu (MS Windows XP) ver 1.1, lipanj 2010. Upute za pristup bežičnoj mreži Medicinskog fakulteta u Splitu na Microsoft Windows XP operativnom sustavu

More information

Svi Java tipovi imaju ekvivalentan tip u jeziku Scala Većina Scala koda se direktno preslikava u odgovarajući Java konstrukt

Svi Java tipovi imaju ekvivalentan tip u jeziku Scala Većina Scala koda se direktno preslikava u odgovarajući Java konstrukt Funkcionalno programiranje Interoperabilnost jezika Scala i Java Prevođenje u Java bajt kod Svi Java tipovi imaju ekvivalentan tip u jeziku Scala Većina Scala koda se direktno preslikava u odgovarajući

More information

SVEUČILIŠTE U ZAGREBU FAKULTET PROMETNIH ZNANOSTI

SVEUČILIŠTE U ZAGREBU FAKULTET PROMETNIH ZNANOSTI SVEUČILIŠTE U ZAGREBU FAKULTET PROMETNIH ZNANOSTI Mateja Jasak USPOREDBA PROTOKOLA IPv4 I IPv6 ZAVRŠNI RAD Zagreb, 2016. Sveučilište u Zagrebu Fakultet prometnih znanosti ZAVRŠNI RAD USPOREDBA PROTOKOLA

More information

NASLOV SEMINARSKOG RADA (16 pt, Bold) Seminarski rad. (16 pt, Bold)

NASLOV SEMINARSKOG RADA (16 pt, Bold) Seminarski rad. (16 pt, Bold) Sveučilište u Zagrebu (12 pt, Bold) Ekonomski fakultet (12 pt, Bold) Naziv diplomskog studija (12 pt, Bold) NASLOV SEMINARSKOG RADA (16 pt, Bold) Seminarski rad (16 pt, Bold) Ime i prezime studenta/studentice,

More information

PROGRAMIRANJE. Amir Hajdar

PROGRAMIRANJE. Amir Hajdar PROGRAMIRANJE Amir Hajdar Teme 2 Klase i objekti u Javi Primjer kroz klasu Krug Atributi i metode Inicijalizacija objekata (konstruktori) Polymorphism Statičke varijable i metode This Klase i objekti u

More information

Operacijski sustavi. Laboratorijska vježba 2. Petra Lončar, mag. ing. el., asistent FESB, 2016.

Operacijski sustavi. Laboratorijska vježba 2. Petra Lončar, mag. ing. el., asistent FESB, 2016. Operacijski sustavi Laboratorijska vježba 2 Petra Lončar, mag. ing. el., asistent ploncar@fesb.hr FESB, 2016. Linux procesi procesi su programi koji se izvršavaju i pritom zauzimaju sredstva sustava (spremnik,

More information

Vežbe - XII nedelja PHP Doc

Vežbe - XII nedelja PHP Doc Vežbe - XII nedelja PHP Doc Dražen Drašković, asistent Elektrotehnički fakultet Univerziteta u Beogradu Verzija alata JavaDoc za programski jezik PHP Standard za komentarisanje PHP koda Omogućava generisanje

More information

Događaj koji se javlja u toku izvršenja programa i kvari normalno izvršenje. Kada se desi izuzetak, sistem pokušava da pronađe način da ga obradi.

Događaj koji se javlja u toku izvršenja programa i kvari normalno izvršenje. Kada se desi izuzetak, sistem pokušava da pronađe način da ga obradi. Obrada izuzetaka Šta je izuzetak? Događaj koji se javlja u toku izvršenja programa i kvari normalno izvršenje. Kada se desi izuzetak, sistem pokušava da pronađe način da ga obradi. Prosleđuje izuzetak,

More information

Backup i Restore C particije ili Windowsa sa NORTON-om

Backup i Restore C particije ili Windowsa sa NORTON-om BRZO KOPIRANJE I RESTAURIRANJE DISKOVA (programski paket Norton SystemWorks) OBJAŠNJENJE Backup i Restore C particije ili Windowsa sa NORTON-om Je li vam se nekada srušio operativni sustav ili pokvario

More information

Alen Prodan. Standby DB tehnologija na Oracle SE bazi podataka

Alen Prodan. Standby DB tehnologija na Oracle SE bazi podataka Alen Prodan Standby DB tehnologija na Oracle SE bazi podataka Agenda Uvod u standby database tehnologiju Standby baza podataka na Oracle Standard Edition platformi Automatizacija postupka održavanja standby

More information

Računalne mreže. Analiza Grafičkog mrežnog simulatora GNS3

Računalne mreže. Analiza Grafičkog mrežnog simulatora GNS3 Sveučilište u Zagrebu Fakultet prometnih znanosti Vukelićeva 4, Zagreb Programski zadatak iz predmeta: Računalne mreže Tema: Analiza Grafičkog mrežnog simulatora GNS3 Mentor: Ivan Grgurević, dipl. ing.

More information

namespace spojneice { public partial class Form1 : Form { public Form1() { InitializeComponent(); }

namespace spojneice { public partial class Form1 : Form { public Form1() { InitializeComponent(); } Spojnice using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO;

More information

9. RAD S DATOTEKAMA PODATAKA

9. RAD S DATOTEKAMA PODATAKA Rad s datotekama 7-1 9. RAD S DATOTEKAMA PODATAKA U programiranju se često radi sa skupovima podataka koji se čuvaju na jedinicama perfernih memorija, a koji se organizuju u posebne cjeline koje nazivamo

More information

VHDLPrimeri Poglavlje5.doc

VHDLPrimeri Poglavlje5.doc 5. VHDL opis kola koja obavljaju osnovne aritmetičke funkcije Sabirači Jednobitni potpuni sabirač definisan je tablicom istinitosti iz Tabele 5.1. Tabela 5.1. cin a b sum cout 0 0 0 0 0 0 0 1 1 0 0 1 0

More information

FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA. SMTP autentikacija

FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA. SMTP autentikacija SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA SEMINARSKI RAD IZ PREDMETA SUSTAVI ZA VOĐENJE I UPRAVLJANJE PROCESIMA SMTP autentikacija Dejan Božić 0036376981 Zagreb, 05.06.2005. SADRŽAJ 1.

More information

Cilj ove vežbe je upoznavanje sa osnovnim konceptima firewall sistema, access listama (ACL) i filtriranjem mrežnih paketa.

Cilj ove vežbe je upoznavanje sa osnovnim konceptima firewall sistema, access listama (ACL) i filtriranjem mrežnih paketa. SecLab 02 Cisco Access liste (ACL) Cilj vežbe Cilj ove vežbe je upoznavanje sa osnovnim konceptima firewall sistema, access listama (ACL) i filtriranjem mrežnih paketa. Filtriranje mrežnog saobraćaja i

More information

Instalacija i podešavanje računara, sa WindowsXP OS-om, za pristup Internetu preko modemskih linija RCUB-a

Instalacija i podešavanje računara, sa WindowsXP OS-om, za pristup Internetu preko modemskih linija RCUB-a Instalacija i podešavanje računara, sa WindowsXP OS-om, za pristup Internetu preko modemskih linija RCUB-a Podešavanje Dial-Up Networking-a Ovo podešavanje se vrši iz Control panel-a (Start - Settings

More information

JavaScript i HTML DOM

JavaScript i HTML DOM 4. vježbe iz WEB programiranja četvrtak, 22. ožujka 2012. JavaScript 1. dio JavaScript i Što je DOM? Kako JS koristi DOM? Pristup elementima dokumenta Promjena i učitavanje vrijednosti tagova Primjer 1.

More information

GUI - događaji (Events) i izuzeci. Bojan Tomić

GUI - događaji (Events) i izuzeci. Bojan Tomić GUI - događaji (Events) i izuzeci Bojan Tomić Događaji GUI reaguje na događaje (events) Događaj je neka akcija koju korisnik programa ili neko drugi izvrši korišćenjem perifernih uređaja (uglavnom miša

More information

Mrežni koncepti (koncept, skica, nacrt, plan) o Pregled na najvažnije koncepte mreže. Slanje paketa sa Argon-1 prema Neon-u

Mrežni koncepti (koncept, skica, nacrt, plan) o Pregled na najvažnije koncepte mreže. Slanje paketa sa Argon-1 prema Neon-u Mrežni koncepti (koncept, skica, nacrt, plan) Arhitektura tu protokola o Pregled na najvažnije koncepte mreže Protokol slojevi Encapsulation Uvod u mreže. Mrežna apstrakcija Ova prezentacija koristi primjer

More information

UNIVERZITET U BEOGRADU ELEKTROTEHNIČKI FAKULTET

UNIVERZITET U BEOGRADU ELEKTROTEHNIČKI FAKULTET UNIVERZITET U BEOGRADU ELEKTROTEHNIČKI FAKULTET Katedra za elektroniku Računarska elektronika Grupa br. 11 Projekat br. 8 Studenti: Stefan Vukašinović 466/2013 Jelena Urošević 99/2013 Tekst projekta :

More information

var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin ListBox1.Items.LoadFromFile('d:\brojevi.

var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin ListBox1.Items.LoadFromFile('d:\brojevi. 1 PANEL komponenta kontejnerska, slična GropBox. Roditeljska komponenta za komp. postavljene na nju. Zajedno se pomeraju. Caption svojstvo za naziv; Alighment pomera svojstvo Caption levo i desno; Align

More information

KURSORI BAZE PODATAKA U ORACLE 11g

KURSORI BAZE PODATAKA U ORACLE 11g KURSORI BAZE PODATAKA U ORACLE 11g SAŽETAK Kursor baze podataka je privatno SQL područje u kojem se čuvaju informacije za procesiranje određene SQL naredbe. Oracle PLSQL jezik koristi implicitne i eksplicitne

More information

Univerzitet u Zenici

Univerzitet u Zenici Internet, E-mail v.as.mr. Samir Lemeš slemes@mf.unze.ba Univerzitet u Zenici - 2008 Internet Šta je Internet? Načini povezivanja ISP Internet servisi Princip rada Elektronske pošte Podešavanje klijentskog

More information

RAČUNALNE MREŽE. Uvod Arhitektura računalnih mreža Fizička razina Podatkovna razina Mrežna razina Prijenosna razina

RAČUNALNE MREŽE. Uvod Arhitektura računalnih mreža Fizička razina Podatkovna razina Mrežna razina Prijenosna razina RAČUNALNE MREŽE Uvod Arhitektura računalnih mreža Fizička razina Podatkovna razina Mrežna razina Prijenosna razina RAČUNALNE MREŽE Mrežna razina Uvod Algoritmi usmjeravanja Paketne mreže po preporuci ITU-T

More information

Predavanje 10. Odjel za matematiku 1 IP NETWORKING. Detaljnije o domenama, hostovima, socketima, TLSu, SSLu

Predavanje 10. Odjel za matematiku 1 IP NETWORKING. Detaljnije o domenama, hostovima, socketima, TLSu, SSLu Predavanje 10 Odjel za matematiku 1 IP NETWORKING Detaljnije o domenama, hostovima, socketima, TLSu, SSLu Predavanje 10 Odjel za matematiku 2 Imena hostova (posluţitelja) i imena domena Top-level domain

More information

Tema 8: Koncepti i teorije relevantne za donošenje odluka (VEŽBE)

Tema 8: Koncepti i teorije relevantne za donošenje odluka (VEŽBE) Tema 8: Koncepti i teorije relevantne za donošenje odluka (VEŽBE) SISTEMI ZA PODRŠKU ODLUČIVANJU dr Vladislav Miškovic vmiskovic@singidunum.ac.rs Fakultet za računarstvo i informatiku 2013/2014 Tema 8:

More information

Filtriranje prometa usmjerivačima CCERT PUBDOC

Filtriranje prometa usmjerivačima CCERT PUBDOC Filtriranje prometa usmjerivačima CCERT PUBDOC 2008 02-220 Sigurnosni problemi u računalnim programima i operativnim sustavima područje je na kojem CARNet CERT kontinuirano radi. Rezultat toga rada ovaj

More information

Razvoj hibridnih mobilnih aplikacija pomoću PhoneGap platforme

Razvoj hibridnih mobilnih aplikacija pomoću PhoneGap platforme INFOTEH-JAHORINA Vol. 12, March 2013. Razvoj hibridnih mobilnih aplikacija pomoću PhoneGap platforme Igor Dujlović Elektrotehnički fakultet Banja Luka Banja Luka, BiH dujlovic@gmail.com Zoran Đurić Elektrotehnički

More information

PLANIRANJE MIGRACIJE S PROTOKOLA IPv4 NA IPv6

PLANIRANJE MIGRACIJE S PROTOKOLA IPv4 NA IPv6 SVEUČILIŠTE U ZAGREBU FAKULTET PROMETNIH ZNANOSTI Lidija Belužić PLANIRANJE MIGRACIJE S PROTOKOLA IPv4 NA IPv6 ZAVRŠNI RAD ZAGREB, 2017. Sveučilište u Zagrebu Fakultet prometnih znanosti ZAVRŠNI RAD PLANIRANJE

More information

PF vatrozid CCERT-PUBDOC

PF vatrozid CCERT-PUBDOC PF vatrozid CCERT-PUBDOC-2006-12-178 Sigurnosni problemi u računalnim programima i operativnim sustavima područje je na kojem CARNet CERT kontinuirano radi. Rezultat toga rada ovaj je dokument, koji je

More information

Fcheck IDS alat CCERT-PUBDOC

Fcheck IDS alat CCERT-PUBDOC Fcheck IDS alat CCERT-PUBDOC-2000-11-06 Sigurnosni problemi u računalnim programima i operativnim sustavima područje je na kojem CARNet CERT kontinuirano radi. Rezultat toga rada ovaj je dokument koji

More information

RIP v2. Mr Nenad Krajnović Katedra za telekomunikacije

RIP v2. Mr Nenad Krajnović Katedra za telekomunikacije RIP v2 Mr Nenad Krajnović Katedra za telekomunikacije E-mail: krajko@etf.bg.ac.yu Istorijat Nastao kao pokušaj da se RIPv1 protokol popravi i prilagodi novim potrebama Definisan u okviru RFC-a 2453 Ima

More information

VEŽBA 5 do while petlja, switch case

VEŽBA 5 do while petlja, switch case VEŽBA do while petlja, switch case Petlja sa ulaznim uslovom do while U slučaju do while petlje obavezno izvršavanje bar jedne iteracije se postiže tako što je upravljački izraz petlje na samom dnu petlje.

More information

ILM implementacija DWH baza u T-mobile

ILM implementacija DWH baza u T-mobile ILM implementacija DWH baza u T-mobile Bojan Šumljak, PS Consultant Hrvoje Dubravica, PS Head Consultant www.snt-world.com 1 Što je ILM? - information Lifecycle Management praksa primjenjivanja pravila

More information

Mašinska vizija. Dr Nenad Jovičić tnt.etf.rs/~mv

Mašinska vizija. Dr Nenad Jovičić tnt.etf.rs/~mv Mašinska vizija Dr Nenad Jovičić 2017. tnt.etf.rs/~mv Linearne 2D geometrijske transformacije 2D geometrijske transformacije Pretpostavka: Objekti u 2D prostoru se sastoje iz tačaka i linija. Svaka tačka

More information

QRadar & StealthINTERCEPT

QRadar & StealthINTERCEPT QRadar & StealthINTERCEPT Windows Security Intelligence Nađa Halebić security Sadržaj QRadar QRadar arhitektura StealthINTERCEPT Scenariji zaštite 8.6.2015 security 2 QRadar SIEM nove generacije Prije

More information

Računarska tehnika i računarske komunikacije Osnovi računarskih mreža 1. Vežba 7 Wireshark

Računarska tehnika i računarske komunikacije Osnovi računarskih mreža 1. Vežba 7 Wireshark Računarska tehnika i računarske komunikacije Osnovi računarskih mreža 1 2017-2018 Vežba 7 Wireshark Za bolje razumevanje mrežnih protokola, najbolje je posmatrati protokol u akciji, odnosno posmatrati

More information

OUR KNOWLEDGE FOR YOUR SUCCESS. Iskustva u razvoju i implementaciji ADF aplikacije

OUR KNOWLEDGE FOR YOUR SUCCESS. Iskustva u razvoju i implementaciji ADF aplikacije Iskustva u razvoju i implementaciji ADF aplikacije Sadržaj Opis aplikacije za AZ Mirovinski Fond Internacionalizacija aplikacije Integracija sa Oracle Reports Iskorištenje postojeće PL/SQL logike Kreiranje

More information

Hybrid Cloud najbolje od oba svijeta

Hybrid Cloud najbolje od oba svijeta Partneri: Hybrid Cloud najbolje od oba svijeta Drazen.Bzik@COMBIS.HR Cloud okolina Hybrid infrastruktura Gartner & Hyperconverged Infrastruktura Source: Gartner, Magic Quadrant for Hyperconverged Infrastructure,

More information

Računarska tehnika i računarske komunikacije Osnovi računarskih mreža 2. Vežba 3 Adresiranje. Dynamic Host Configuration Protocol (DHCP)

Računarska tehnika i računarske komunikacije Osnovi računarskih mreža 2. Vežba 3 Adresiranje. Dynamic Host Configuration Protocol (DHCP) Računarska tehnika i računarske komunikacije Osnovi računarskih mreža 2 2017-2018 Vežba 3 Adresiranje Dynamic Host Configuration Protocol (DHCP) Dynamic Host Configuration Protocol je klijent-server protokol

More information

Jezik Baze Podataka SQL. Jennifer Widom

Jezik Baze Podataka SQL. Jennifer Widom Jezik Baze Podataka SQL SQL o Jezik koji se koristi u radu sa relacionim bazama podataka o Nije programski jezik i manje je kompleksan. o Koristi se isključivo u radu za bazama podataka. o SQL nije case

More information

za praćenje i vođenje procesa

za praćenje i vođenje procesa Sustavi za praćenje i vođenje procesa Branko Jeren i Predrag Pale Fakultet elektrotehnike i računarstva Zavod za elektroničke sustave i obradbu informacija Internet Što je Internet? nije organizacija infrastruktura

More information

Sigurnost DSL usmjerivača CCERT-PUBDOC

Sigurnost DSL usmjerivača CCERT-PUBDOC Sigurnost DSL usmjerivača CCERT-PUBDOC-2008-06-231 Sigurnosni problemi u računalnim programima i operativnim sustavima područje je na kojem CARNet CERT kontinuirano radi. Rezultat toga rada je i ovaj dokument,

More information

Uputa za korištenje Office365 usluga

Uputa za korištenje Office365 usluga Uputa za korištenje Office365 usluga Sadržaj 1. Prijava na Office365... 1 2. Instalacija Office paketa na Vaše uređaje... 3 2.1. Instalacija Office 2016 alata na Vaše računalo... 3 2.2. Instalacija drugih

More information

USLOVI I CENE KORIŠĆENJA ZA TARIFNE PAKETE «PRENESI I SURFUJ+»

USLOVI I CENE KORIŠĆENJA ZA TARIFNE PAKETE «PRENESI I SURFUJ+» USLOVI I CENE KORIŠĆENJA ZA TARIFNE PAKETE «SURFUJ+» USLUGE U OKVIRU PAKETA pretpl ate sa pdvom pretplate ka mreža ma u Telenor mreži SMS poruka SURFUJ+ S 950 791.67 150 5,000 250 SURFUJ+ M 1,250 1,041.67

More information

progecad NLM Korisničke upute

progecad NLM Korisničke upute progecad NLM Korisničke upute Sadržaj Uvod... 2 Kako započeti... 2 progecad NLM Server instalacija... 2 progecad NLM Server registracija... 2 Dodavanje licenci i aktivacija... 3 progecad instalacija i

More information

1. Uvod. Evolucija Interneta.

1. Uvod. Evolucija Interneta. Sadržaj 1. Uvod...2 2. Ethernet...3 2.1.Osnove Ethernet mreža...4 2.1.1. Adresiranje u Ethernet mrežama...4 2.1.2. Ethernet okviri...5 2.1.3. Pretvaranje IP adresa u Ethernet adrese...6 2.2.Topologije

More information