Matematičko modeliranje računalnih mreža zbirka riješenih zadataka s auditornih vježbi

Similar documents
ZANIMLJIV NAČIN IZRAČUNAVANJA NEKIH GRANIČNIH VRIJEDNOSTI FUNKCIJA. Šefket Arslanagić, Sarajevo, BiH

TEORIJA SKUPOVA Zadaci

Red veze za benzen. Slika 1.

Metode praćenja planova

Uvod u relacione baze podataka

PRIPADNOST RJEŠENJA KVADRATNE JEDNAČINE DANOM INTERVALU

Projektovanje paralelnih algoritama II

Algoritam za množenje ulančanih matrica. Alen Kosanović Prirodoslovno-matematički fakultet Matematički odsjek

Fajl koji je korišćen može se naći na

Slika 1. Slika 2. Da ne bismo stalno izbacivali elemente iz skupa, mi ćemo napraviti još jedan niz markirano, gde će

Mathcad sa algoritmima

KLASIFIKACIJA NAIVNI BAJES. NIKOLA MILIKIĆ URL:

Rešenja zadataka za vežbu na relacionoj algebri i relacionom računu

LOGIKA. Logika. Sveučilište u Rijeci ODJEL ZA INFORMATIKU Radmile Matejčić 2, Rijeka Akademska 2017/2018. godina

LINEARNI MODELI STATISTIČKI PRAKTIKUM 2 2. VJEŽBE

ALGORITMI I STRUKTURE PODATAKA

Metode izračunavanja determinanti matrica n-tog reda

Quasi-Newtonove metode

Doc. dr. sc. Marko Maliković Ak. god

NAPREDNI FIZIČKI PRAKTIKUM 1 studij Matematika i fizika; smjer nastavnički MJERENJE MALIH OTPORA

FIZIKALNA KOZMOLOGIJA VII. VRLO RANI SVEMIR & INFLACIJA

Šime Šuljić. Funkcije. Zadavanje funkcije i područje definicije. š2004š 1

NAPREDNI FIZIČKI PRAKTIKUM II studij Geofizika POLARIZACIJA SVJETLOSTI

PEARSONOV r koeficijent korelacije [ ]

Zlatko Mihalić MOLEKULARNO MODELIRANJE (2+1, 0+0)

KVADRATNE INTERPOLACIJSKE METODE ZA JEDNODIMENZIONALNU BEZUVJETNU LOKALNU OPTIMIZACIJU 1

Termodinamika. FIZIKA PSS-GRAD 29. studenog Copyright 2015 John Wiley & Sons, Inc. All rights reserved.

UPUTE ZA OBLIKOVANJE DIPLOMSKOG RADA

Oracle Spatial Koordinatni sustavi, projekcije i transformacije. Dalibor Kušić, mag. ing. listopad 2010.

Zadatci sa ciklusima. Zadatak1: Sastaviti progra koji određuje z ir prvih prirod ih rojeva.

Pitagorine trojke. Uvod

Fibonaccijev brojevni sustav

Geometrijski smisao rješenja sustava od tri linearne jednadžbe s tri nepoznanice

Vedska matematika. Marija Miloloža

Formule za udaljenost točke do pravca u ravnini, u smislu lp - udaljenosti math.e Vol 28.

ATOMSKA APSORP SORPCIJSKA TROSKOP

Iskazna logika 1. Matematička logika u računarstvu. oktobar 2012

DETALJNI IZVEDBENI NASTAVNI PLAN PREDMETA

Hornerov algoritam i primjene

Matrice u Maple-u. Upisivanje matrica

O aksiomu izbora, cipelama i čarapama

Mirela Nogolica Norme Završni rad

Teorem o reziduumima i primjene. Završni rad

NIPP. Implementing rules for metadata. Ivica Skender NSDI Working group for technical standards.

ANALYSIS OF THE RELIABILITY OF THE "ALTERNATOR- ALTERNATOR BELT" SYSTEM

pretraživanje teksta Knuth-Morris-Pratt algoritam

Karakteri konačnih Abelovih grupa

EXPERIMENTAL ANALYSIS OF THE STRENGTH OF A POLYMER PRODUCED FROM RECYCLED MATERIAL

KRITERIJI KOMPLEKSNOSTI ZA K-MEANS ALGORITAM

Impuls sile i količina gibanja

Teorijska i praktična znanja programiranja i modeliranja

Kontrolni uređaji s vremenskom odgodom za rasvjetu i klimu

Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku DIOFANTSKE JEDNADŽBE

Maja Antolović Algoritmi u teoriji brojeva

HRVATSKA MATEMATIČKA OLIMPIJADA

Mersenneovi i savršeni brojevi

DETALJNI IZVEDBENI NASTAVNI PLAN PREDMETA

Pellova jednadžba. Pell s equation

U člnaku se nastoji na jednostavan i sažet način bez ulaženja u egzaktne i formalizirane dokaze postići slijedeće:

Sveučilište J.J.Strossmayera u Osijeku Odjel za matematiku. Sveučilišni preddiplomski studij matematike

Tablica 2: Opis predmeta 1. OPĆE INFORMACIJE Nositelj predmeta: Marko Katić Davor Zvizdić

Sveučilište Josipa Jurja Strossmayera u Osijeku Odjel za matematiku

Optimizacija Niza Čerenkovljevih teleskopa (CTA) pomoću Monte Carlo simulacija

Keywords: anticline, numerical integration, trapezoidal rule, Simpson s rule

ALGORITAM FAKTORIZACIJE GNFS

NIZOVI I REDOVI FUNKCIJA

UPUTE ZA IZRADU DIPLOMSKOG RADA NA ODJELU ZA PSIHOLOGIJU SVEUČILIŠTA U ZADRU. 1. Izgled diplomskog rada

Zanimljive rekurzije

The Prediction of. Key words: LD converter, slopping, acoustic pressure, Fourier transformation, prediction, evaluation

CLINICAL. Neodoljiva ponuda iz Ivoclar Vivadenta PROLJEĆE LJETO. Ponuda traje od: ili do isteka zaliha

Funkcijske jednadºbe

Ariana Trstenjak Kvadratne forme

Nilpotentni operatori i matrice

Prsten cijelih brojeva

Math 230 Assembly Language Programming (Computer Organization) Numeric Data Lecture 2

DISTRIBUIRANI ALGORITMI I SISTEMI

Matematika (PITUP) Prof.dr.sc. Blaženka Divjak. Matematika (PITUP) FOI, Varaždin

Dr. Željko Jurić: Matematička logika i teorija izračunljivosti Radna skripta za istoimeni kurs na Elektrotehničkom fakultetu u Sarajevu.

BAZE PODATAKA Predavanje 03

AGENTI ZA RUDARENJE WEBA

Načelo linearne superpozicije i interferencija

Sveučilište u Zagrebu Fakultet prometnih znanosti Diplomski studij. Umjetna inteligencija - Genetski algoritmi 47895/47816 UMINTELI HG/

Harmonijski brojevi. Uvod

1 Pogreške Vrste pogrešaka Pogreške zaokruživanja Pogreške nastale zbog nepreciznosti ulaznih podataka

INVESTIGATION OF UPSETTING OF CYLINDER BY CONICAL DIES

ALGORITMI ZA ISPITIVANJE DJELJIVOSTI

Strojarstvo Preddiplomski Preddiplomski - 6. semestar Izborni

Veleučilište u Rijeci. Dodjela procesora (eng. CPU scheduling)

Impuls sile i količina gibanja

OBJEKTIVAN POGLED NA REFRAKTIVNU KIRURGIJU. Damjan Žunić, M.Sc.

Tina Drašinac. Cramerovo pravilo. Završni rad

Sortiranje podataka. Ključne riječi: algoritmi za sortiranje, merge-sort, rekurzivni algoritmi. Data sorting

Osobine metode rezolucije: zaustavlja se, pouzdanost i kompletnost. Iskazna logika 4

Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Sveučilišni nastavnički studij matematike i informatike. Sortiranje u linearnom vremenu

ZANIMLJIVI ALGEBARSKI ZADACI SA BROJEM 2013 (Interesting algebraic problems with number 2013)

Položaj nultočaka polinoma

Numeričke metode u ekonomiji Dr. sc. Josip Matejaš, EFZG

Vektori u ravnini i prostoru. Rudolf Scitovski, Ivan Vazler. 10. svibnja Uvod 1

Metoda parcijalnih najmanjih kvadrata: Regresijski model

Transcription:

Matematičko modeliranje računalnih mreža zbirka riješenih zadataka s auditornih vježbi jednopredmetni preddiplomski studij, III i IV semestar dvopredmetni preddiplomski studij, V i VI semestar diplomski studij matematike i informatike, III i IV& semestar preddiplomski studij fizike, V semestar diplomski studij fizike i informatike, II semestar diplomski studij politehnike i informatike, I i II semestar 30 sati (zimski semestar) + 30 sati (ljetni semestar) Vedran Miletić Zavod za komunikacijske sustave Odjel za informatiku Sveučilišta u Rijeci akademska godina 2014/2015. zadnja promjena: 2. srpnja 2017. 1

Predgovor Skripta je namijenjena studentima druge godine preddiplomskog studija informatike. Nastala je na temelju vježbi iz kolegija Računalne mreže 1 i Računalne mreže 2 na Odjelu za informatiku Sveučilišta u Rijeci. Nadovezuje se na gradivo i literaturu predavanja iz istih kolegija. Očekuje se poznavanje sadržaja prve godine preddiplomskog studija, ponajviše kolegija Matematika 1 i 2, Osnove fizike 1 i 2, Osnove digitalne tehnike i Osnove informatike 1. Neki dodatni zadaci zahtjevaju i poznavanje gradiva kolegija Programiranje 1 i Operacijski sustavi 1, te osnova kombinatorike i teorije kodiranja. U okviru kolegija ćemo se mnogo sretati s gradivom teorije grafova i ponešto s gradivom teorije vjerojatnosti i matematičke statistike. Kako u sadašnjem programu studija Računalne mreže 1 i 2 prethode kolegijima Diskretna matematika i Vjerojatnost i statistika, u ovoj skripti definiraju se osnovni pojmovi koji nam trebaju za rješavanje zadataka. Kako s računalnim mrežama radimo gotovo svakodnevno, ne treba ih posebno predstavljati. Osnovne značajke, mahom iz perspektive korisnika, već smo spomenuli u okviru kolegija Osnove informatike 1. Cilj je ovih dvaju kolegija dati uvid u osnovne ideje i algoritme koje stoje u pozadini danas korištenih računalnih mreža. Skripta je podijeljena u dva veća dijela. U prvom dijelu, od 1. do 6. poglavlja, obrađen je sadržaj kolegija Računalne mreže 1, a u drugom, od 7. do 12. poglavlja, sadržaj kolegija Računalne mreže 2. Na pojedinim mjestima uključene su dodatne teme koje nisu dio kolegija. Premda je skripta prvenstveno namijenjena studentima informatike na Odjelu za informatiku Sveučilišta u Rijeci, svakako može u bar dijelom poslužiti i studentima tehničkih znanosti, a prvenstveno studentima računarstva. Skriptu posvećujem svojim učiteljima, Deanu Crnkoviću i Renéu Sušnju, koji su me nebrojeno puta inspirirali i pružili mi podršku u učenju matematike. Vjerujem da se njihov utjecaj očituje i u ovom radu. Vedran Miletić 2

Osnovne informacije o vježbama kolegija Računalne mreže Osnovne informacije o kolegijima Osnovne informacije o kolegijima Nositelj: prof. dr. sc. Mario Radovan Asistent: Vedran Miletić, prof. Demonstrator: Edvin Močibob Proučite DINP. U ovoj prezentaciji je većinom ono što nije u DINP-u, i obrnuto. Način izvođenja nastave, teme i literatura Očekivano predznanje Formalni preduvjet: položen kolegij Osnove digitalne tehnike. Neformalni preduvjeti: Matematika 1, Osnove fizike 2, Programiranje 1, Osnove informatike 1. Međutim, sve što budemo koristili, osim zaista osnovnih matematičkih, informatičkih i fizikalnih pojmova, bit će definirano na vježbama. Predavanja Predavanja izvodi prof. dr. sc. Mario Radovan, i sve informacije o njima možete dobiti od njega u terminu predavanja ili njegovom terminu konzultacija. Konzultacije i ispite drži utorkom od 11 do 13 sati. Auditorne vježbe Auditorne vježbe tematski i sadržajno prate i nadopunjuju gradivo predavanja, što znači: kratko ponavljanje relevantnog dijela teorije, rješavanje zadataka iz područja računalnih mreža, te poneki primjer rada s alatima na računalima. Od studenata se očekuje da: znaju sadržaj pripadnih predavanja, kako bi mogli stečeno znanje primijeniti u rješavanju zadataka, prouče materijale za vježbe koji će biti unaprijed dani putem sustava sustava za e-učenje, te bilježe rješenja zadataka na satu, jer su na bilješkama koje ćete dobiti zadaci rješeni ukratko. 3

Laboratorijske vježbe Ovaj dio odnosi se samo na studijske grupe koje imaju laboratorijske vježbe. Laboratorijske vježbe su dio RM1 i RM2 za sve studijske grupe kojima kolegij nosi 4 ili 5 ECTS-a. Nastale su unutar projekta razvoja e-kolegija koji je financiralo Sveučilište u Rijeci. Izvode se u obliku pripremljenih materijala za samostalno učenje i konzultacija, a polažu putem domaćih zadaća. Demonstrature Demonstrature su organizirane kako god to dogovorite s demonstratorom (auditorne ili laboratorijske vježbe, zadaci s vježbi ili dodatni zadaci,... ). Rezerviran je termin u rasporedu četvrtkom od 16 do 20 sati u prostoriji O-366 (ima sav potreban softver za rješavanje laboratorijskih zadataka). Literatura Osnovna literatura su knjige Računalne mreže (1), [RadovanRM1], i Računalne mreže (2), [RadovanRM2]. Knjige možete podijeljene po poglavljima naći na e- kolegiju. Osim te dvije knjige na hrvatskom jeziku, u ovom području dominiraju tri knjige na engleskom jeziku koje možete pronaći u knjižnici: Kurose i Ross: Computer Networking: A Top-Down Approach, [KuroseRossCN], Peterson i Davie: Computer Networks: A System Approach, [PetersonDavieCN], Tanenbaum i Wetherall: Computer Networks, [TanenbaumWetherallCN]. Zadaci auditornih vježbi većim su dijelom sastavljeni prema [PetersonDavieCN]. Pojmovi i pravila auditornih vježbi uglavnom su preuzeti s Wikipedije. Zadaci laboratorijskih vježbi većim su dijelom sastavljeni prema dokumnentaciji alata (Unix man stranice alata koje koristimo, [WiresharkUserGuide], [IMUNESManual], [ns3tutorial], [ns3manual] i [ns3models]). Pored toga, većinu stvari moguće je googlati. Vrednovanje aktivnosti i ocjenjivanje Bodovanje aktivnosti Kolokviji (auditorne vježbe): 20 + 20 bodova, Kvizevi (predavanja): 20 + 25 bodova, Domaće zadaće (laboratorijske vježbe): 15 bodova, Nagradne aktivnosti: 15 + 5 bonus bodova. 4

Prisustvovanje satovima predavanja i vježbi Prisustvovanje satovima predavanja i vježbi se ne boduje. Prisustvovanje satovima predavanja nije obavezno. Prisustvovanje satovima auditornih vježbi je obavezno. Asistent vodi evidenciju o dolascima. Dozvoljeno je sakupiti ukupno do 3 izostanka s vježbi, u što se ne računa eventualni izostanak s kolokvija ili međuispita. Prisustvovanje sastovima demonstratura nije obavezno. Kolokviji (auditorne vježbe) Na dva kolokvija iz gradiva auditornih vježbi možete sakupiti ukupno 40 bodova. Svaki od kolokvija pišete 90 minuta u terminu vježbi. Napomena: prije početka pisanja kolokvija bit će dana potrebna objašnjenja, a zatim nema pitanja. Kolokviji i ECTS bodovi Studenti kojima kolegij nosi 4 ECTS boda rješavaju 4 od 5 ponuđenih zadataka i preostali zadatak prekriže. Ukoliko ne bude prekrižen niti jedan od ponuđenih zadataka, ispit će biti bodovan po sistemu koji vrijedi za studente kojima kolegij nosi 5 ECTS bodova. Kvizevi (predavanja) Na dva kviza iz gradiva predavanja možete sakupiti ukupno 45 bodova. Kvizevi su online testovi. Mogućnost popravnog kolokvija ili kviza Ne postoje popravni kolokviji ni kvizevi. Domaće zadaće (laboratorijske vježbe) Kompletan udžbenik iz laboratorijskih vježbi bit će vam dostupan podijeljen po poglavljima. Udžbenik je namijenjen za samostalno učenje i samostalno rješavanje zadataka; vrlo je detaljan i sadrži sve potrebne upute za rad s alatima koje koristimo. Sugestije za poboljšanje udžbenika su dobrodošle. Bonus bodovi Nagradne aktivnosti služe kako bi mogli eventualno izgubljene bodove nadoknaditi. Možete sakupiti ukupno 20 bodova. Primjeri aktivnosti za bonus bodove su: blic pitanja (gradivo prethodnih sati predavanja ili vježbi; točan odgovor na pitanje donosi 1 bod), aktivnost na satu (ideja za rješenje ili slično): 2 boda), nagradni zadaci koji se rješavaju programiranjem (C++ ili Python): 5 bodova, i razna druga nenajavljena iznenađenja. 5

Prepisivanje Prema sveučilišnom etičkom kodeksu, prepisivanje se smatra neetičnom radnjom. Zbog toga vrijede iduća pravila. Na kolokvijima i ispitima prvo uočeno prepisivanje se kažnjava se oduzimanjem 5 bodova svim studentima koji u njemu aktivno sudjeluju. Iduće uočeno prepisivanje kažnjava se ocjenjivanjem ispita, odnosno kolokvija, s 0 bodova. Posjedovanje šalabathera kažnjava se ocjenjivanjem ispita, odnosno kolokvija, s 0 bodova. Na domaćim zadaćama i nagradnim zadacima sumnja na prepisivanje rješava se usmenom obranom rješenja na konzultacijama. U slučaju da na konzultacijama student zna detaljno argumentirati način razmišljanja i postupak rješavanja u predanim zadacima, smatra se da se ne radi o prepisivanju i vježba se boduje adekvatno. U slučaju da student prizna prepisivanje prije pristupanja obrani rješenja, izbjegava usmenu provjeru i predana zadaća boduje se s 0 bodova. Ukoliko student ne uspije objasniti način razmišljanja i postupak rješavanja zadataka, predana domaća zadaća vrednuje se s -2 boda. Najmanji broj ocjenskih bodova koji možete ostvari na svakoj pojedinoj aktivnosti je 0, bez obzira na broj stečenih negativnih bodova. (Pritom se tri domaće zadaće smatraju jednom aktivnosti.) E-učenje sustav Instructure Canvas Prijava na Canvas: Instructure Canvas: https://canvas.instructure.com/enroll/xkfn9g Moderniji i funkcionalniji LMS od Moodlea Cloud-based, free for teachers, free for students Nema AAI autentifikacije, potrebna je registracija putem poveznice dane iznad Moguća prijava s @student.uniri.hr, @ffri.hr mail adresom ili nekom drugom (preferirano @student.uniri.hr, odnosno @ffri.hr) Obavezno postavite točno ime i prezime (velikim početnim slovima sa hrvatskim dijakriticima) i vremensku zonu na Zagreb; uređivanje profila, povezivanje sa Facebookom i Twitterom je po želji Napomene u vezi unosa bodova: Nagradne aktivnosti boduju se kao da nose 0 bodova. Obzirom da Canvas podržava overgrading, to uredno funkcionira. Pripazite na odnos postotaka i stvarnih bodova, naročito na opciju Calculate based only on graded assignments. 6

Najvažnije od svega Kontinuirano učite i radite. Prije svakih auditornih vježbi ponovite gradivo prethodnih. Aktivno sudjelujte odgovaranjem na pitanja na vježbama. U slučaju bilo kakvih nejasnoća dođite na konzultacije. Rješavajte nastale probleme. Ako ste bolesni, odmah javite mailom i prvom prilikom osobno donesite ispričnicu. Ako imate dobronamjeran prijedlog u vezi načina bodovanja, svakako ga recite. Ako nađete grešku u skripti, javite mi mailom. ( Za to se dobivaju nagradni bodovi oh wow yeah kako dobro!!!1!! ) Bez obzira na svakodnevne izazove, održite pozitivan stav prema onome što studirate. Nešto od toga ćete danas-sutra raditi. Pozitivan stav je samoispunjujuće proročanstvo. Ono što je zabavno je i lako. :-) Oznake, simboli i dijagrami Simboli Matematičari i drugi znanstvenici su tokom godina razvili složen sustav oznaka i definirali standarde zapisa tih oznaka. Te oznake služe da bi gradivo ostavljalo dojam konzistentnosti i da bi se lakše usvajalo. Neke od oznaka koje ćemo mi na ovom kolegiju koristiti su: označava zadatak koji rješavamo na ploči, označava zadatak koji rješavamo na računalu, označava teži nagradni zadatak, označava zadatak za čije rješavanje je potrebno poznavati osnove teorije vjerojatnosti, označava zadatak sličan zadacima već rješenima na vježbama čije rješenje postoji u skripti. Za kraj rješenja zadatka koristi se: u skripti: uobičajeni AMS-L A TEX simbol l, na prezentacijama: tri simbola. (To zna biti osobito korisno kod zadataka čija rješenja zauzimaju više folija.) 7

Nastanak SORM oznaka Pored tih simbola, koristiti ćemo i druge konvencije koje propisuje standard pod imenom SORM. Ime dolazi od prvih slova riječi idućih naziva i imena: Sveučilište u Rijeci, Odjel za informatiku, Radovan Mario, Miletić Vedran, a zapravo znači Standard Označavanja Računalnih Mreža. SORM slike Slika 1: Primjeri slikovnih simbola (zadatak 1). H br 3 rep 7 st loc sw 4 eth 5 tr 1 AP 8 mesh cloud SORM prezentacija Pojam: primjer pojma. Pojam (engl. notion) je izdvojen na ovaj način. Pravilo: primjer pravila. Pravilo (engl. rule) izgleda ovako, a često ima i neku formulu u sebi, primjerice a 2 ` b 2 c 2. Primjer: primjer primjera. Na ovaj način je dano pojašnjenje teorije u nekom konkretnom slučaju, recimo za a 3, b 4, c 5, prethodna formula postaje 9 ` 16 25, što znamo da vrijedi. Dodatak: o isprepletenoj topologiji. Proučite na Wikipediji stranicu Mesh networking ili prva dva poglavlja u Groverovoj knjizi [GroverMesh]. Tekst zadatka (zadatak 1). Za x 5 odredite vrijednost funkcije fpxq x 2 ` x. 8

Linux komandna linija. $ echo ovako pišu naredbe $ ls -la Python programski kod. import socket # create a socket s = socket.socket(socket.af_inet, socket.sock_stream) SORM legenda o nastanku Prema zapisima povjesničara Emilijana Pesara, koji je živio u doba vladavine mletačkog dužda Domenica II Contarinija, SORM potječe od Aztečkih zapisa koje je Kolumbo pronašao i sa sobom donio u Europu. Kako bi ih zaštitio od inkvizicije, Kolumbo ih je sakrio među svoje osobne dnevnike, koje su njegova braća prodali trgovcima sitnom robom za vrijeme dok je bio u zatvoru. Jedan od vojskovođa mletačkog dužda, Michele Valiero, priča kako je na štandu u Veneciji uočio nekakve spise na neobičnom materijalu sličnom papiru, ali bitno različitom od svega što je bilo poznato u Europi. Od trgovca je, bez premišljanja, otkupio sve što je ovaj imao. Proučavajući spise, vojskovođa je shvatio da bi otkrivanje ovih drevnih istina moglo imati katastrofalne posljedice i uzrokovati pomicanje kraja svijeta na raniji datum, te ih je u kasnijem osvajačkom pohodu na Starigrad Paklenicu zakopao ispod Večke kule. Stoljećima kasnije, mladi asistent sa Zavoda za komunikacijske sustave Odjela za informatiku Sveučilišta u Rijeci jedne se večeri šetao laganim koracima uz obalu, osluškujući živu glazbu koja je dopirala sa terase obližnjeg hotela. Našavši se blizu Večke kule, osjetio je energetsku auru crveno-plave boje i potrčao prema mjestu gdje ju je najjače osjećao. Iznenada je počeo mahnito kopati. Na metar i pol ispod zemlje naišao na ukrašenu metalnu škrinju. Škrinja je na poklopcu imala ugraviranog lava s ptičjim krilima, koji je desnom šapom držao otvorenu knjigu na kojoj je pisalo PAX TIBI MARCE EVANGELISTA MEVS. Mladi asistent je osjetio da će ovo što je pronašao iz temelja promijeniti živote svih ljudi koje poznaje i koje će tek upoznati. Snažno je proživljavao svaku sekundu koju je potiho otkucavao njegov ručni sat dok je bezuspješno pokušavao naći način da otvori lokot kojim je škrinja bila zatvorena. Napokon je obio lokot kamenom grotom s plaže, podigao poklopac i njime nehotice ogrebao desno staklo na naočalama. Vojskovođa je zapisao: Tajne Aztečke tehnike crtanja dijagrama iz Računalnih mreža zapisane na ovim papirima dio su knjige Matematičko modeliranje računalnih mreža koju je napisao A zmahuwiag Hwogoawo. U ovih dvije godine uspio sam otkriti značenje većine spisa, i postao sam svjestan kakav bi utjecaj mogli oni imati ako dođu u krive ruke. Bojim se, najviše od svega, proročanstva koje opisuje što bi se dogodilo da netko neuk napiše SORM malim slovima, zakošeno ili običnim oblikom pisma. Zato SORM uvijek piši masnim uspravnim oblikom pisma, velikim slovima. Mladi se asistent na trenutak zamislio. Osjetio je da je ovo prilika koja se rijetkima pruža i koju još rjeđi znaju cijeniti, ali tada još nije imao čistu viziju što treba napraviti. Mjesecima kasnije, krećući se laganim koracima kroz snijegom obasuti Karlovac, razmišljao je o svemu što je doživio tog ljeta. U putničkom vlaku na relaciji Karlovac-Zagreb, napokon je shvatio dubinu koju imaju Micheleove riječi i osjetio pravo značenje svog poziva. 9

Labosi legenda o nastanku Rustichelli je čuo od Marka Pola za vrijeme dok su obojica bili zarobljeni u tamnici priču o tome kako su na putu prema Kini Markov otac i ujak dobili su na poklon od svećenika u Kašgaru svilu koja je na sebi imala naslikane neobične dijagrame, za razliku od ostale svile koja je uglavnom bila oslikana motivima iz prirode. Gotovo dvadeset godina kasnije, na povratku, Markov su otac i ujak pokušavali odgonetnuti značenje dijagrama na svili, i svoje rezultate zapisivali na spisima koje su čuvali u kući u Veneciji. Marko Polo ponio je svile i spise sa sobom na Korčulu; svile su mu otete kada je zarobljen od strane đenovljanskih vojnika u bitci s Mlecima, a spisi su ostali u njegovoj kući na Korčuli, smatrani su bezvrijednima. Rustichelli kaže da, iako je Marko znao za te svile i spise, izgleda da nije bio svjestan vrijednosti onog što je bilo na njima jer ih tek u nekoliko navrata usputno spomenuo. Upravitelj zatvora, Enrico Lenafesto, saznavši za to, bio je odlučan u namjeri da spise pronađe i razgleda. Predstavivši se kao brat tadašnje Markove zaručnice Donate Badoer, Enrico je u prvi mah je pušten u kuću bez prevelikog propitivanja od strane Korčulanaca. U kući je pronašao čitavu škrinju punu spisa; većina njih bila je neuredna i s puno pogrešaka, ali ubrzo ih je poredao i zaključio da su autori kod u kojem je original zapisan nisu samo odgonetnuli, već su ga i detaljno opisali. Sređujući spise, došao je do zapanjujućih rezultata. Iako je imao namjeru vratiti se u Genovu, ubijen je na povratku od strane Mletaka koji su ga otkrili u prijevari. Enrico je u bijegu sa sobom htio ponijeti i originale i svoje prijepise i zaključke; kako nije mogao sve nositi odjednom, u trenutku kada je bio uhvaćen sa sobom je imao originale; prijepisi su ostali nedaleko pristaništa za brodove. Stoljećima kasnije, mladi asistent sa Katedre za mrežne sustave Odjela za informatiku Sveučilišta u Rijeci osjetio je da na trajektnom pristaništu Dominče energetski karakter bežičnih valova, što je smatrao nadasve neobičnim obzirom da u blizini nije bilo dostupnih pristupnih točaka. Razgledavajući okolo, došao je do mjesta gdje je osjećao ful jako djelovanje valova i počeo razmicati naslagane kamene grote. Kako je Sveti Krševan tada vršio ukrcaj, nitko na mladog asistenta nije obraćao previše pažnje i on je neometano izvukao drvenu kutiju. Razbio ju je grotom s plaže, i počeo čitati papire koji su se pritom rasuli. Govorili su o modeliranju i simulaciji komunikacije na daljinu. Ubrzo se povukao na skrovitije mjesto; znao je da će ovo potrajati. Nekoliko sati kasnije znao je točno što mora napraviti. Uzeo je snop papira A4 formata i napisao na vrh prvoga Nešto što nisam spomenuo? Računalne mreže 2: laboratorijska vježba 1. Pitanja? 10

Dio I Računalne mreže 1 1 Mrežni sustavi: struktura i načela rada I can find the joy only if I do my work in the best way possible to me. But the best is a matter of standards and I set my own standards. I inherit nothing. I stand at the end of no tradition. I may, perhaps, stand at the beginning of one. 1.1 Uvod: razvoj telekomunikacije i veza s računalnim mrežama. Čime se bavi ovaj kolegij? Pod jedan, telekomunikacija Tri stvari... Pojam: telekomunikacija. Telekomunikacija (engl. telecommunication) podrazumijeva prijenos poruka preko velikih udaljenosti s ciljem ostvarivanja komunikacije. Povijesno gledano, možemo istaknuti nekoliko razdoblja: bubnjevi (Afrika, Nova Gvineja, Južna Amerika) i dimni signali (Sjeverna Amerika, Kina); baklje na vrhovima planina i svjetionici (antička Grčka); optički telegraf (Claude Chappe, 1792. 32 min, zadržavanje 9 min); Lille Paris, 15 stanica, 230 km, 36 simbola u električni telegraf (Samuel Morse, 1837.); bežična telegrafija (radio i televizija). Pod dva, računalni komunikacijski sustavi Pojam: umrežavanje računala. Umrežavanje računala (engl. computer networking) je znanstvena i tehnička disciplina koja proučava komunikaciju između računala. Od samih početaka postoji uska veza telekomunikacija i računalnih komunikacija; naime, Internet je počeo kao mreža koja je koristila javnu telefonsku mrežu, a danas se za telefoniju koriste Internet protokoli (npr. VoIP). Jako veliku ulogu u razvoju računalnih mreža imali su Unix-like operacijski sustavi, naročito BSD i nešto kasnije Linux. 11

Pod tri, komunikacijska tehnologija i društvo O utjecaju razvoja tehnologije općenito na društvo već je jako puno rečeno i napisano (primjerice, o tome govori Castells u čitvom nizu svojih knjiga, [CastellsTIC; CastellsTIA1; CastellsTIA2; CastellsTIA3; CastellsIG; CastellsCP]). Nekoliko primjera gdje se očituje utjecaj: Tanya Rider went off the road... (2007.), Christmann had been going 38 MPH... (2003.), Two MIT researchers bought 158 used disk drives.... Ovi primjeri su preuzeti iz [AbelsonLedeenLewisB2B], knjige koja se bavi utjecajem razvoja komunikacijske tehnologije na privatnost, slobodu i općenito način života pojedinca u društvu. Knjiga je dostupna na http://www.bitsbook.com/ pod Creative Commons BY-NC-SA licencom. Toliko za sad... Bacimo se na posao! p q Zadatak 1. Iduća tri zadatka su primjeri zadataka iz stvarnog života. Tekst zadatka (Prema istinitom događaju... ). Tihana igra Quake Wars Demo na njemačkom serveru gamingpalace.de čija je adresa 78.143.44.10:27733. Međutim, kako ona to sama kaže, igrivost je prilično loša. Naime, nedavni potres koji je pogodio srednju Europu uzrokovao je prekid nekih optičkih kabela, pa se većinom koriste rezervni kojih nema dovoljno i zato ne nude istu kvalitetu usluge. O čemu se zapravo ovdje radi? Što to točno Tihana primjećuje kao lošu igrivost? RTT nam označava povratno vrijeme, tj. vrijeme potrebno da na odredište stigne poslani zahtjev i natrag odgovor na njega. Tekst zadatka (ping i mjerenje RTT-a). Unix i Windows alat ping može se koristiti za određivanje RTT-a do različitih domaćina na Internetu. U pripadnoj man stranici možete pogledati kako se koristi i koje mogućnosti nudi, a mi ćemo se za sada ograničiti na osnovni oblik i saznati RTT do iduća tri domaćina: www.pragma-ade.nl, www.ri.linux.hr, www.debian.org. 12

Demonstracija: Linux komandna linija. $ ping www.pragma-ade.nl... $ ping www.ri.linux.hr... $ ping www.debian.org... Uočite kako postoje razlike u polju time. Jesu li one očekivane? Zašto? Naime, radi se, prije svega, o tome da su ti domaćini fizički različito udaljeni i da paketi duže putuju kada je u pitanju veća fizička udaljenost. Osim toga, razmotrimo polje ttl. Ono označava broj skokova koji paket može napraviti prije nego što će biti odbačen od strane usmjerivača. Paketi rade više skokova kada trebaju doći do daljih domaćina, što u konačnici rezultira većim povratnim vremenom. Dodatak: promjenama RTT-a. Mjerite vrijednost RTT-a do određenog skupa domaćina u različitim vremenima tijekom nekoliko dana i usporedite dobivene rezultate. Razmislite što uzrokuje razliku u vrijednostima. p q Zadatak 2. U prošlom zadatku spomenuli smo skokove koje paketi rade da bi došli na cilj. Sada ćemo vidjeti kako izgleda put kojim paketi skaču do cilja. Tekst zadatka (Prema istinitom događaju... ). Mladen i Manuel, voditelji supertajne nevladine organizacije Zametska Unija, žele prisluškivati pakete koji govore o planovima organizacije KASTAV HOOLIGANS. Tajni agent ZU, Gabrijel (kodno ime), upao je u jedno od računala koje KH koriste za sigurnu komunikaciju i želi otkriti kojim putem prolaze paketi koji ih interesiraju. Usmjerivač je računalo povezano s barem dvije mreže koje pakete usmjerava na putu do odredišta. Tekst zadatka (zadatak 2). Unix alat traceroute i Windows alat tracert koristi se za otkrivanje niza usmjerivača kroz koje prolazi poslana poruka. Iskoristite ovaj alat da otkrijete putanju s trenutne mreže do ostalih. Za primjer, mi ćemo saznati putanju do: www.gnome.org, docs.nvidia.com, www.riteh.uniri.hr, www.biotech.uniri.hr. Napomena: u nekim Linux distribucijama (primjerice Ubuntu) uobičajena instalacija ne uključuje traceroute, ali uključuje tracepath, koji mu je vrlo sličan i sasvim dovoljan za naše potrebe. Postoje razlike, i one se mogu otkriti uspoređivanjem man stranica traceroute(1) i tracepath(8). 13

Demonstracija: Linux komandna linija. $ traceroute www.gnome.org... $ traceroute docs.nvidia.com... $ traceroute www.biotech.uniri.hr... $ traceroute www.riteh.uniri.hr... Što uočavate kod početka putanje? Možete li pomoću ovog alata prepoznati koji se usmjerivači nalaze u mreži vaše organizacije? Naime, radi se o tome da je izlaz iz mreže u kojoj smo trenutno jednak bez obzira do koje udaljene mreže odlazimo. Dodatak: o značaju broja skokova. Razmislite na koji bi način sakupili podatke da testirate iduće dvije hipoteze. Postoji pozitivna korelacija broja skokova s vrijednosti RTT-a (tj. veća vrijednost RTT-a povezana je s većim brojem skokova). Postoji negativna korelacija broja skokova s geografskom udaljenosti (tj. manja geografska udaljenost povezana je s većim brojem skokova). p q Zadatak 3. U narednom zadatku upoznati ćemo još jednu od Unix naredbi koja se veže uz računalne mreže i Internet. Tekst zadatka (Prema istinitom događaju... ). Web developer Rade izrađuje web portal za renomiranu tvrtku MD Stolarija d.o.o. No, da ne bi baš sve bilo savršeno i da bi mi imali zadatak, u procesu razvoja portala poslužitelj na kojem se on nalazi biva napadnut. Ubrzo Rade otkriva da je njegov kod promijenjen na način da kod otvaranja određenih stranica portala taj kod šalje podatke na određenu IP adresu. Kako će on otkriti tko stoji iza te IP adrese te (vjerojatno) ima nekakve veze s napadom (iako možda nije napadač)? Tekst zadatka (zadatak 3). Unix alat whois koristi se prilikom traženja kojoj organizaciji pripada određena domena ili IP adresa. U pripadnoj man stranici možete pogledati kako se koristi i koje mogućnosti nudi, a mi ćemo se za sada ograničiti na osnovni oblik i za primjer saznati kome pripadaju iduće četiri domene: mit.edu, kde.org, uniri.hr, google.com. 14

Demonstracija: Linux komandna linija. $ whois uniri.hr... $ whois mit.edu... $ whois kde.org... $ whois google.com... Što uočavate kod načina formatiranja sadržaja koji dobivamo kao odgovor? Pokušajte objasniti tu pojavu. Naime, radi se samo o tome da svaka od domena pripada različitoj organizaciji koja rezultate upita u svoju bazu različito formatira. Ovisno o konfiguraciji, whois alat može pretraživati i.hr domenu, i rezultat vratiti u nekom od tekstualnih web preglednika (npr. lynx). 1.2 Fizičke osnove mreža: mediji, veze, čvorovi, domaćini. Priprema za zadatak. Prostorne jedinice su vam dobro poznate iz svakodnevice i iz Osnova fizike. Ovdje ćemo, kao podsjetnik, spomenuti samo tri koje će nam redovito trebati u zadacima: 1 km = 1000 m = 10 3 m, 1 Mm = 1 000 000 m = 10 6 m, 1 Gm = 1 000 000 000 m = 10 9 m. Vremenske jedinice su još svakidašnjije : 1 min = 60 s, 1 h = 60 min = 3600 s, 1 ms = 0.001 s = 10 3 s, 1 µs = 0.000 001 s = 10 6 s, 1 ns = 0.000 000 001 s = 10 9 s. Pojam: prefiksi jedinica. Fizikalne jedinice mogu imati prefiks koji znači: mili (m) = 10 3, mikro (µ) = 10 6, nano (n) = 10 9, piko (p) = 10 12 ; kilo (k) = 10 3, mega (M) = 10 6, giga (G) = 10 9, 15

tera (T) = 10 12. U digitalnoj tehnici koriste bitovi i bajtovi: 1 bit := 0 _ 1 (bit binary digit), 1 B := 8 bit (byte binary term), pri čemu znamo da je bajt od 8 bitova samo de facto standard. Pojam: binarni prefiksi. Za jedinicu bajt (B) koriste se idući prefiksi, koji znače: kibi (Ki) = 2 10, mebi (Mi) = 2 20, gibi (Gi) = 2 30, tebi (Ti) = 2 40. Pojam: IEC 60027-2: Telecommunications and electronics. Jedinice i prefiksi koje smo naveli definirani su standardom pod nazivom IEC 60027-2: Telecommunications and electronics. (IEC je kratica za International Electrotechnical Commission.) Mi ćemo slijediti pravila označavanja koja propisuje taj standard, iz nekoliko razloga: propisan je zakonom Europske Unije od 2007. godine, kompatibilan je sa SI sustavom jedinica (nema kolizija), takav način označavanja koristi zajednica otvorenog koda. Međutim, taj stanard nije jedini koji postoji. Pojam: JEDEC Standard 100B.01. Često se u praksi može sresti standard označavanja pod imenom JEDEC Standard 100B.01, koji definira: jedinice veličine prostora za pohranu informacija: bit (b): 0 ili 1, byte (B): niz (od najčešće osam) bitova, prefikse jedinica za kapacitet poluvodiča za pohranu informacija: kilo (K): 2 10, mega (M): 2 20, giga (G): 2 30. 16

Dok u fizikalnim jedinicama prefiks kilo znači 10 3 = 1000, po JEDEC standardu 100B.01 u kilobajtima taj isti prefiks znači 2 10 1024. To može biti problem. Isto ne vrijedi za bitove: kod bitova prefiks kilo znači isto što i kod fizikalnih jedinica, tj. 10 3. Za bitove se zbog toga nikad ne koriste binarni prefiksi. Zato treba prilikom računanja paziti na razliku između kilo (mega, giga, tera) u fizikalnim jedinicama i bitovima i kilo (mega, giga, tera) u bajtovima. Primjer: pretvorba jedinica. Koliko je 10 Mbit u bitovima? Koliko je 100 MiB u bajtovima? Koliko je to u bitovima? Pojam širine frekventnog pojasa često se koristi u raznim granama tehnike, i pritom označava raspon frekvencija signala koje neka veza može prenijeti. Formalno, to se definira na idući način. Pojam: širina frekventnog pojasa. Neka je f l najniža, f h najviša frekvencija komunikacijskog kanala. Širina frekventnog pojasa (engl. bandwidth) bw je apsolutna vrijednost razlike ta dva broja, bw f h f l. Primjer: računanje raspona frekvencija. Raspon frekvencija za radiovalove je od 88 MHz do 108 MHz. apsolutna vrijednost razlike ta dva broja, i iznosi 20 MHz. Širina frekventnog pojasa je Claude Shannon je 1949. u svom radu Communication in the presence of noise generalizirao raniji Hartleyev zakon o kvantificiranju količine informacije koja se može prenesti (električnim) signalima nekog kanala. U teoremu koji navodimo se omjer signala i šuma, SNR, S izražava u linearnoj skali umjesto N uobičajenoj logaritamskoj. Pravilo: Shannon-Hartleyev teorem. Kapacitet C komunikacijskog kanala, odnosno najveća teoretski moguća količina informacije koju taj kanal može prenijeti, izražen u bitovima po sekundi, određuje se kao C B log 2 ˆ 1 ` S N pri čemu je B širina frekventnog pojasa izražena u hercima, S ukupna jačina nosioca signala i N ukupna jačina šuma., Ovaj teorem samo navodimo (bez dokaza) iz dva razloga. On tvrdi da se količina grešaka koju će neki kanal stvarati može predvidjeti, i da će biti vrlo mala dok količina informacije koju kanal prenosi ne prelazi kapacitet kanala. Pomaže nam definirati pojam širine frekventnog pojasa i za računalne mreže bez da se pritom opterećujemo fizičkim svojstvima veze (da možemo, primjerice, uspoređivati žične i bežične veze), a opet tako da ima analogno značenje pojmu širine frekventnog pojasa u komunikacijama. Intuitivno nam je jasno da veza koja može prenijeti 1 bit u 1 s ima širinu frekventnog pojasa 1 bit{s. Krenimo od toga. Pojam: širina frekventnog pojasa. 17

Širina frekventnog pojasa (engl. bandwidth) veze u računalnoj mreži je broj bitova koje ta veza može prenijeti u jedinici vremena, što možemo zapisati kao Širina frekventnog pojasa se izražava u bit{s. bw : n t. Pored pojma širine frekventnog pojasa, koji je prvenstveno teoretski, javlja se i pojam propusnosti, koji je prvenstveno praktični koncept. Pojam: propusnost. Propusnost (engl. throughput) veze je broj bitova koje ta veza prenosi u jedinici vremena u nekoj konkretnoj situaciji. Ako je n s izmjereni broj bitova, a t s vrijeme mjerenja, onda to možemo zapisati kao thp : n s. t s Kao i širina frekventog pojasa, izražava se u bit{s. Možemo reći da je širina frekventnog pojasa veze ona veličina za koju je neka veza bila projektirana, a da je propusnost te veze ona veličina koju neka veza odista postiže. Razlika između te dvije vrijednosti je često netrivijalna, što telekom operateri vrlo dobro znaju. Primjer: Iskon.ADSL. Iskon.ADSL usluga nudi flat adsl brzine do 3 Mbit{s ili adsl brzine do 10 Mbit{s. Kada govorimo o brzini prijenosa neke računalne mreže, najčešće to izražavamo u broju bitova koje u sekundi ta mreža može prenijeti. Zato nam treba iduća definicija. Pojam: bitova po sekundi. 1 bit u 1 s pišemo 1 bit{s, i vrijedi: 1 kbit{s = 1 kbit / 1 s = 1000 bit / 1 s = 10 3 bit{s 1 Mbit{s = 1 000 000 bit{s = 10 6 bit{s 1 Gbit{s = 1 000 000 000 bit{s = 10 9 bit{s Uočimo da ova definicija kaže da se prefiks kilo (mega, giga) nasljeđuje od bitova, i zato ti prefiksi znače 10 3 (10 6, 10 9 ). p q Zadatak 4. Riješimo jedan jednostavan zadatak koji daje ideju kako funkcionira prijenos signala različitim medijima. Tekst zadatka (zadatak 4). Koliko dugo traje jedan bit u 100 Mbit{s vezi? (Napomena: pod trajanjem bita podrazumijevamo vrijeme zapisivanja bita, odnosno njegovog očitavanja (ta dva vremena su jednaka).) Koliko je fizički dugačak taj bit u bakrenoj žici, gdje je brzina širenja signala 2.3 ˆ 10 8 m{s? Koliko je fizički dugačak taj bit u optičkom kabelu, gdje je brzina elektromagnetskog vala 2 ˆ 10 8 m{s? 18

Slika 2: Mreža (zadatak 4). 2.3 ˆ 10 8 m{s H 1 H 2 2 ˆ 10 8 m{s H 3 H 4 Kako je bw 100 Mbit{s 10 8 bit{s, svaki bit traje t 10 8 s 10 ns. U prvom slučaju imamo da je dužina dijela žice koju zauzima taj bit d 10 8 s ˆ 2.3 ˆ 10 8 m{s 2.3 m. Dakle, jedan bit se svakih 10 8 s pomakne za 2.3 m. U drugom slučaju na sličan način dobivamo d 10 8 s ˆ 2 ˆ 10 8 m{s 2 m. Dodatak: podaci u žici. Uz iste postavke kao u zadatku, razmislite koliko bi metara optičkog kabela trebalo da možemo prenijeti 700 MiB (1 CD) podataka. Kako ne postoji optička radna memorija, u sveoptičkim mrežama često se koriste tzv. svjetlovodne niti za zadržavanje (engl. fiber delay lines). O tome ima više na Wikipedijinoj stranici Optical buffer. p q Zadatak 5. Tekst zadatka (zadatak 5). Ema, Mario i Andrijana su cimeri. Ema želi gledati treću sezonu Gossip Girl, pa je pitala kolege ako mogu to potražiti na torrentima. Mario ju je ubrzo pronašao na Pirate Bayu i vidio da je ukupna veličina 6.3 GiB. On u stanu ima T-Com maxadsl vezu brzine 2 Mbit{s. Koliko će vremena trebati da se završi skidanje ako je brzina prijenosa uvijek maksimalna, ako je brzina prijenosa u 70 % vremena maksimalna, a ostalo vrijeme točno 1 Mbit{s? 19

Imamo da je 6.3 GiB 6.3 ˆ 2 30 B «6 764 573 491 B, što pretvoreno u bitove iznosi 54 116 587 928 bit. S druge strane je 2 Mbit{s 2 ˆ 10 6 bit{s, pa dijeljenjem veličine sa brzinom prijenosa dobivamo: za prvi slučaj, kada je brzina uvijek maksimalna t 54 116 587 928 bit 2 ˆ 10 6 bit{s «27 058.29 s «7.52 h, u drugom slučaju moramo prvo izračunati koliko iznosi prosječna brzinu prijenosa, što možemo dobiti kao thp 0.7 ˆ 2 Mbit{s ` 0.3 ˆ 1 Mbit{s 1.7 Mbit{s. Sada slično kao u prvom dijelu dobivamo t 54 116 587 928 bit 1.7 ˆ 10 6 bit{s «31 833.29 s «8.84 h. Dodatak: drugi način rješavanja. Razmišljajući drugačije, može se doći do ideje da je zbroj oblika 0.7 ˆ 54 116 587 928 bit 2 ˆ 10 6 bit{s ` 0.3 ˆ 54 116 587 928 bit 10 6 bit{s rješenje drugog dijela zadatka, međutim to nije slučaj. Što on zapravo predstavlja? Dodatak: poopćenje ovog računa. Izračunajte koliko općenito traje prijenos x KiB, MiB ili GiB preko y Mbit{s veze. Rezultat izrazite kao omjer x i y. 1.3 Zadržavanje. Vrijeme širenja signala i vrijeme prijenosa podataka. Priprema za zadatak. Pojam: zadržavanje. Zadržavanje (engl. delay, latency) veze je količina vremena koja je potrebna da paket podataka dospije s jednog kraja veze do drugog kraja. Izražava se u s, i sastoji od tri komponente: vrijeme širenja signala (engl. propagation), vrijeme prijenosa podataka (engl. transmit), vrijeme čekanja na red (engl. queue). 20

Zadržavanje je jednako zbroju ta tri vremena, tj. t D : t P ` t T ` t Q. Pojam: vrijeme širenja signala. Vrijeme širenja signala (engl. propagation) veze je količina vremena koja je potrebna signalu da dospije s jednog kraja veze do drugog kraja. Ako sa d označimo fizičku udaljenost, a sa v s brzinu širenja signala, vrijeme širenja signala t P iznosi t P : d v s. Tri brzine širenja signala koje ćemo često koristiti su: brzina električnog signala u bakrenom vodiču (koaksijalni kabel ili opletena parica) 2.3 ˆ 10 8 m{s. H 1 rep 1 H 2 H 1 S 1 brzina svjetlosti (i drugih elektromagnetskih valova) u vakuumu 3 ˆ 10 8 m{s, oznaka c 0, H 1 AP 1 brzina svjetlosti u optičkom vlaknu 2 ˆ 10 8 m{s, R 1 R 2 Pojam: vrijeme prijenosa, vrijeme čekanja na red. Vrijeme prijenosa podataka (engl. transmit) veze širine frekventnog pojasa bw je količina vremena koja je potrebna skupu podataka ukupne veličine s da dospiju s jednog kraja veze do drugog kraja nakon dospijeća signala, i iznosi t T : s bw. Vrijeme čekanja na red (engl. queue) veze je količina vremena koju paketi čekaju u međuspremnicima preklopnika ili domaćina na putu kojim prolaze. Označavamo ga sa t Q. p q Zadatak 6. Sljedeći zadatak je primjer najjednostavnijeg mogućeg zadatka koji koristi pojmove koje smo do sada uveli. Tekst zadatka (zadatak 6). Razmatrajmo vezu bivše gornje zgrade FFRi-ja u Omladinskoj 14 sa CARNetovim čvorom na RiTehu. Radi se o vezi tipa točka-do-točke čija je duljina fizičke veze 2 km, a fizički medij je optički kabel. Širina frekventnong pojasa te veze iznosi 10 Mbit{s. Odredite: vrijeme prijenosa paketa veličine 1 KiB, vrijeme širenja signala. 21

Tekst zadatka (zadatak 6). Pri kojoj širini frekventnog pojasa bi vrijeme širenja signala bilo jednako vremenu prijenosa jednog paketa podataka: ako pretpostavimo da paket podataka ima veličinu 100 B, ako pretpostavimo da paket podataka ima veličinu 512 B? Slika 3: Topologija (zadatak 6). net RiT eh 2 km net F F Ri Vrijeme prijenosa paketa veličine 1 KiB računamo kao t T Vrijeme širenja signala iznosi 1024 B 10 Mbit{s t P 1024 ˆ 8 bit 10 000 000 bit{s 8.192 ˆ 10 4 s. 2 ˆ 103 m 2 ˆ 10 8 m{s 10 5 s. 8192 bit 10 7 bit{s Kada je vrijeme prijenosa 100 B jednako 10 5 s, imamo širinu frekventnong pojasa: bw 100 B 10 5 s 107 B{s 8 ˆ 10 7 bit{s 80 Mbit{s. U drugom slučaju vrijeme prijenosa 512 B iznosi 10 5 s, pa sasvim analogno dobivamo širinu frekventnog pojasa: bw 512 B 10 5 s 8 ˆ 512 ˆ 105 bit{s 409.6 Mbit{s. p q Zadatak 7. Tekst zadatka (zadatak 7). Neka domaćin ima datoteku veličine 1 MiB koju želi poslati drugom domaćinu. Datoteka zahtijeva 1 sekundu procesorskog vremena da bi se kompresirala 50 %, a dvije sekunde procesorskog vremena da bi se kompresirala 60 %. Odredite širinu frekventnog pojasa na kojoj obje opcije zahtijevaju jednako ukupno vrijeme za kompresiju i prijenos podataka. Objasnite zašto vrijeme širenja signala ne igra ulogu. 22

Označimo sa bw širinu frekventnog pojasa, sa t c vrijeme kompresije, sa s c veličinu datoteke nakon kompresije. Bez kompresije vrijeme prijenosa bilo bi a kada kompresiramo datoteku ono iznosi Izjednačavanjem t D oba slučaja imamo t D t P ` t T 1 MiB bw, t D t c ` t P ` t T t c ` t P ` sc bw. a sređivanjem dobivamo pa je t P ` 1 s ` 0.5 MiB bw 0.1 MiB bw t P ` 2 s ` 1 s, bw 0.1 MiB{s 838.86 kbit{s. 0.4 MiB bw, Zadržavanje ne igra ulogu jer bi u oba slučaja bilo jednako, pa se ono (računski gledano) poništilo na obje strane jednadžbe. Priprema za zadatak. Pojam: produkt širine frekventnog pojasa i zadržavanja. Produkt širine frekventnog pojasa i zadržavanja (engl. bandwidth-delay product, BDP) je produkt podatkovnog kapaciteta veze (izraženog u bit{s) i njenog zadržavanja (izraženog u second). Ta vrijednost je maksimalna količina podataka koja se može u nekom trenutku nalaziti u vezi (odnosno, maksimalna količina podataka koja je poslana i još nije primljena). Pojam: povratno vrijeme. Povratno vrijeme (engl. round trip time, RTT) veze je količina vremena potrebna da signal poslan s jednog kraja veze stigne do drugog kraja, i zatim istom vezom natrag. Zato je očito da vrijedi relacija t RT T : 2 ˆ t D. Kao i zadržavanje, izražava se u s. p q Zadatak 8. Tekst zadatka (zadatak 8). Uzmite je uspostavljena 100 Mbit{s veza između Zemlje i novoizgrađene kolonije na Mjesecu. Udaljenost od Zemlje do Mjeseca je 385 000 km, a signal (elektromagnetski val) tom vezom putuje brzinom 3 ˆ 10 8 m{s. Izračunajte minimalni RTT za tu vezu. Izračunajte produkt širine frekventnog pojasa i RTT-a za tu vezu. 23

Koje je značenje produkta izračunatog u prethodnom dijelu zadatka? Kamera koja se nalazi u glavnoj bazi te kolonije uslikava Zemlju i sprema te slike u digitalnom formatu na disk. Ekipa koja upravlja kolonijom sa Zemlje želi skinuti zadnju snimku, čija je veličina 25 MiB. Koje je najmanje vrijeme koje će biti potrebno od slanja zahtjeva do završetka prijenosa podataka? Kako signal ne može putovati brže od brzine svjetlosti, minimalni RTT iznosi t RT T 2 ˆ 385 ˆ 106 m 3 ˆ 10 8 m{s Produkt širine frekventnog pojasa i RTT-a iznosi «2.57 s. bw ˆ t RT T 2.57 s ˆ 100 Mbit{s 257 Mbit «30.64 MiB. Produkt i širine frekventnog pojasa i RTT-a je količina podataka koju pošiljatelj može poslati prije nego dobije odgovor od primatelja (primjerice, o primitku prvog bita), i ona je jednaka dvostrukom kapacitetu veze. Da bi odredili vrijeme potrebno za prijenos datoteke od 25 MiB moramo zbrojiti vrijeme širenja signala, koje dobijemo zbrajanjem 1 RTT-a koliko treba da stigne 2 zahtjev sa Zemlje na Mjesec sa 1 RTT-a koliko treba da stigne prvi bit podataka sa 2 Mjeseca na Zemlju, i vrijeme prijenosa podataka, koje iznosi Ukupno vrijeme iznosi t T 25 MiB 100 Mbit{s 8 ˆ 25 ˆ 220 bit 10 8 bit{s t D t P ` t T 2.57 s ` 2.1 s 4.67 s. Uočite da nema čekanja na potvrdu primitka. «2.1 s. Priprema za zadatak. Pojam: rukovanje. Rukovanje (engl. handshaking) je automatizirani proces dogovaranja koji dinamički ( u letu ) postavlja parametre komunikacijskog kanala između dva entiteta prije početka komunikacije po tom kanalu. Rukovanje slijedi nakon fizičke uspostave veze, a prethodi prijenosu informacija. Sve pojmove koje smo sad definirali primijenit ćemo u idućem zadatku, koji je tipičan zadatak za ovo poglavlje. 24

p q Zadatak 9. Tekst zadatka (zadatak 9). Izračunajte ukupno vrijeme potrebno da bi se izvršio prijenos datoteke veličine 1000 KiB, pretpostavljajući RTT od 100 ms, veličinu paketa od 1 KiB, početno rukovanje u trajanju dva RTTa prije početka prijenosa podataka i potvrdu primitka (zanemarive veličine) nakon izvršenog prijenosa svih paketa. Širina frekventnog pojasa iznosi 1.5 Mbit{s, a paketi se mogu slati kontinuirano jedan za drugim. Širina frekventnog pojasa iznosi 1.5 Mbit{s, ali nakon završetka prijenosa svakog paketa podataka, moramo sačekati jedan RTT prije slanja idućeg paketa. Pretvoriti ćemo sve jedinice u sekunde, bitove i bitove po sekundi, da s njima lakše baratamo. Treba nam ukupno vrijeme, a ono je u ovom zadatku zbroj: vremena koje je potrebno za početno rukovanje, vremena koje je potrebno za prijenos podataka, te vremena koje je potrebno da pošiljatelj sazna da je prijenos podataka završio, tj. da od primatelja do pošiljatelja stigne potvrda o primitku. U prvom slučaju imamo: početno rukovanje (2 ˆ t RT T ): 2 ˆ 100 ˆ 10 3 s 0.2 s prijenos podataka: 1000ˆ210ˆ8 bit 1.5 ˆ 10 6 bit{s 5.46 s potvrda primitka ( 1 2 ˆ t RT T ): 0.5 ˆ 100 ˆ 10 3 s 0.05 s Da bi dobili ukupno vrijeme, zbrajamo ta tri broja: 0.2 s ` 5.46 s ` 0.05 s 5.71 s. Drugi slučaj je sličan kao prvi, ali pored ukupnog vremena iz prvog slučaja nakon svakog paketa moramo pričekati 1 RTT prije slanja idućeg, što znači da ukupno imamo 999 takvih čekanja (nakon zadnjeg ne moramo čekati). Dakle, na vrijeme prijenosa od 5.71 s moramo dodati i vrijeme od 999 RTT-a, koje iznosi: Sada ukupno vrijeme iznosi: 999 ˆ 100 ˆ 10 3 s 99.9 s. 5.71 s ` 99.9 s 105.61 s. 25

p q Zadatak 10. Tekst zadatka (zadatak 10). Inicijalne pretpostavke su iste kao u prethodnom zadatku (1000 KiB podataka, 100 ms RTT, 1 KiB paketi). Treba odrediti ukupno vrijeme potrebno za prijenos podataka. Širina frekventnog pojasa je beskonačna, što znači da uzimamo da je vrijeme prijenosa nula, ali do 20 paketa se može poslati po jednom RTT-u. Širina frekventnog pojasa je beskonačna, i za vrijeme prvog RTT-a možemo poslati 1 paket (2 1 1 ), tijekom drugog RTT-a možemo poslati 2 paketa (2 2 1 ), tijekom trećeg RTT-a možemo poslati 4 paketa (2 3 1 ), itd. Napomena: Objašnjenje za ovaj neobični eksponencijalni porast bit će dano u poglavlju o upravljanju prometom u mreži.objašnjenje za ovaj naizgled neobični i prilično neočekivani eksponencijalni porast broja paketa koje možemo slati bit će dano u poglavlju o upravljanju prometom u mreži. Moramo razlikovati tri slučaja: slanje n paketa po RTT-u ili za vrijeme RTT-a, slanje n paketa nakon svakog RTT-a, slanje n paketa prije svakog RTT-a. Posljednja dva slučaja rezultirati će jednim vremenom prijenosa koje će trajati jedan RTT duže. U prvom slučaju, dijeljenem veličine skupa podataka i veličine paketa dobivamo da imamo 1000 KiB ukupno 1000 paketa. 1 KiB Obzirom da možemo slati 20 paketa po RTT-u, za poslati 1000 paketa nam treba 1000 20 50 ˆ t RT T 50 ˆ 100 ˆ 10 3 s 5 s. Na ovo vrijeme prijenosa podataka moramo dodati vrijeme početnog rukovanja i vrijeme čekanja na potvrdu primitka, pa ukupno vrijeme tada iznosi: 0.2 s ` 5 s ` 0.05 s 5.25 s. Posljednji slučaj je nasloženiji. Prijenos ide: početno rukovanje (2 ˆ t RT T ), za vrijeme prvog RTT-a pošaljemo jedan (2 0 ) paket, za vrijeme drugog RTT-a pošaljemo dva (2 1 ) paketa, za vrijeme trećeg RTT-a pošaljemo četiri (2 2 ) paketa,... potvrda primitka ( 1 2 ˆ t RT T ). 26

Zanima nas nakon koliko RTT-a će ukupno biti poslano više od 1000 paketa. Uočimo da članovi sume koju razmatramo čine geometrijski niz. Po formuli za sumu imamo: 1 ` 2 ` 4 ` 8 ` ` 2 n nÿ 2 i 2 n`1 1. Kako je 2 9`1 1 1023 ą 1000, nakon 9 ` 1 10 RTT-a poslali smo svih 1000 paketa koje smo trebali. Tu sumu deset članova možemo i raspisati za provjeru: 1 ` 2 ` 4 ` 8 ` 16 ` 32 ` 64 ` 128 ` 256 ` 512 1023. i 0 Ukupno vrijeme iznosi: 0.2 s ` 1.0 s ` 0.05 s 1.25 s. p q Zadatak 11. Tekst zadatka (zadatak 11). Za svaku od ovih operacija odredite je li više osjetljiva na širinu frekvetnog pojasa ili na vrijeme zadržavanja: otvaranje datoteke (razmišljajte o otvaranju u C++-u ili Pythonu, ne u Wordu), čitanje sadržaja datoteke, izlistavanje sadržaja direktorija, prikaz atributa datoteke. Otvaranje datoteke je više osjetljivo na zadržavanje jer poruke koje se izmjenjuju (ime datoteke, tip datoteke) su većinom kratke. Čitanje sadržaja datoteke je više osjetljivo na širinu frekventnog pojasa, pogotovo za velike datoteke. Izlistavanje sadržaja direktorija je više osjetljivo na zadržavanje, jer se šalju samo imena datoteka (tekst relativno male dužine) koje se nalaze u direktoriju direktoriji koji izlistavamo. Prikaz atributa datoteke također je više osjetljiv na zadržavanje, obzirom da su svojstva datoteke gotovo uvijek puno manje veličine nego sama datoteka. Linux komandna linija. -rw-r r. 1 vedran vedran 4283 2009-06-20 10:12 inf-prijemni-2009.tex 27

1.4 Multipleksiranje: FDM (WDM) i (S/A)TDM. Priprema za zadatak. Pojam: FDM i TDM. Kad nekim medijem želimo opslužiti više domaćina, možemo dijeliti prostor ili vrijeme. Zbog toga postoje dvije osnovne vrste multipleksiranja: multipleksiranje s podjelom frekvencija (engl. frequency-division multiplexing) FDM, multipleksiranje s podjelom vremena (engl. time-division multiplexing) TDM. Pojam: multipleksiranje s podjelom frekvencija. Multipleksiranje s podjelom frekvencija čini da se različiti tokovi podataka istodobno prenose vezom na različitim frekvencijama. Primjer: primjeri FDM. Neki primjeri za FDM su: kabelska televizija svi programi se prenose istim kabelom, ali na različitim frekvencijama; korisnik u svakom trenutku prima sve programe i odabire koji želi gledati (na sličan način radi i obična analogna televizija), radio u zrak se odašilju sve frekvencije, a korisnik podešavanjem svojeg uređaja bira koju želi primati. Pojam: multipleksiranje s podjelom vremena. Kod sinkronog multipleksiranja s podjelom vremena (engl. synchronous time-division multiplexing, STDM ) vrijeme se dijeli na jednake intervale; u svakom od tih intervala, fizička veza prenosi pakete jednog od tokova podataka koji sudjeluju u procesu multipleksiranja; u slijedećem vremenskom intervalu prenose se podaci drugog toka. Kod asinkronog multipleksiranja s podjelom vremena (engl. asynchronous timedivision multiplexing, ATDM ) vremenski intervali dodjeljuju se samo aktivnim tokovima podataka. To se ponekad naziva i statističko multipleksiranje. Primjer: pokretna traka. Iako nije direktno vezana uz računalne mreže, proizvodnja uz pomoć pokretne trake može biti primjer za STDM. To je situacija kad dva stroja proizvode neki proizvod i stavljaju ga na zajedinčku traku na kojoj se izvodi pakiranje, a zatim se proizvodi na kraju trake razdvajaju u dva skupa (oni koje je proizveo prvi stroj i one koje je proizveo drugi). p q Zadatak 12. Posebna vrsta zadataka su tzv. teorijski zadaci. Oni zahtjevaju da razmislite o pojmovima kojima se bavimo i donesete zaključak. Tekst zadatka (zadatak 12). Koje razlike u vrsti prometa su razlog da je FDM isplativa vrsta multipleksiranja za TV i radio mrežu, a STDM isplativa vrsta multipleksiranja za glasovnu telefonsku mrežu, i bez obzira na to obje općenito nisu prikladne za realizaciju računalne mreže? 28

Zahtjevi računalnih mreža za zadržavanjem, širinom frekventnog pojasa i drugim karakteristikama su jako promijenjivi, pa nije moguće unaprijed dodijeliti resurse komunikacijskim kanalima. FDM i STDM, kao što znamo, koriste se kod usluga koje imaju konstantnu uniformnu potrebu za širinom frekventnog pojasa, i zahtjevaju da resursi komunikacijskih kanala (bilo frekvencije ili vremenski intervali), a time i njihove širine, budu unaprijed dodijeljeni. Korištenje FDM-a ili STDM-a učinilo bi da je većinu vremena većina kanala neiskorištena. Dodatak: ATDM. Bi li korištenje ATDM-a bilo prikladnije? p q Zadatak 13. Tekst zadatka (zadatak 13). Neka imamo određeni medij koji nudi n domaćina H 1, H 2,..., H n algoritmom kružnog dodjeljivanja priliku da izvrše prijenos jednog paketa; domaćini koji nemaju ništa za poslati u trenutku kada dođu na red ustupaju medij na korištenje idućem domaćinu. Na koji je način ovo različito od STDM? Kakvo je iskorištenje mreže u ovoj shemi u usporedbi sa STDM? Pri korištenju STDM svaki domaćin u svakom krugu dobiva jednaku količinu vremena, i ukoliko je ne iskoristi ona se nepovratno gubi. Ovdje opisana metoda, koja je zapravo ATDM, daje svakom domaćinu onoliko vremena koliko treba da izvrši prijenos (ili prepusti medij drugom domaćinu ako nema ništa što mora slati), te bi iskorištenje mrežnih resursa bilo znatno veće. 1.5 Zadržavanje zbog čekanja na preklopnicima i obnavljačima signala. Priprema za zadatak. Preklopnik je uređaj koji omogućuje povezivanje više od dva domaćina u istu mrežu. Kako nas zasad topološka svojstva (odnos čvorova i veza) mreže ne zanimaju, preklopnik ćemo doživljavati kao uređaj koji prima paket i šalje ga dalje s određenim čekanjem. Pojam: pohrani i proslijedi, reži kroz, bez fragmenata. Razlikujemo dvije metode rada preklopnika: pohrani i proslijedi (engl. store and forward), kod koje preklopnik prvo primi cijeli paket i onda ga šalje dalje, reži kroz (engl. cut through), kod koje preklopnik može početi slati paket prije nego ga primi u cijelosti (često već nakon što primi i obradi izlaznu adresu). bez fragmenata (engl. fragment free) 29