You are on page 1of 38

Diplomski studij

Informacijska i
komunikacijska tehnologija:
Telekomunikacije i informatika
Informacijske mreže

5.
Simulacija diskretnih događaja.

Ak.god. 2018./2019.
Pregled predavanja
Zavod za telekomunikacije

 Uvod u simuliranje sustava


 Monte Carlo simulacija
 Simulacija diskretnih događaja
 Primjer: Simulacija sustava posluživanja M/M/1
 Simulator diskretnih događaja ns-2
 Primjer: Simulacija upravljanja zagušenjem u različitim
varijantama protokola TCP

Informacijske mreže 07. 11. 2018. 2 od 38


Sustav i tipovi sustava
Zavod za telekomunikacije

 Sustav (system) je skup zasebnih jedinica (entities) koje


uzajamno rade i djeluju radi postizanja željenog logičnog
završetka (tj. cilja)
 Diskretni sustav
 mijenja varijable stanja samo u diskretnim vremenskim trenucima
 npr. usmjeritelj u mreži jer se stanje mijenja samo u diskretnim
trenucima dolaska i odlaska paketa
 Kontinuirani sustav
 mijenja varijable stanja kontinuirano u vremenu
 npr. kretanje trkaćeg automobila po pisti jer se njegova pozicija,
brzina i akceleracija stalno mijenjaju

Informacijske mreže 07. 11. 2018. 3 od 38


Načini proučavanja sustava
Zavod za telekomunikacije

 Eksperiment sa stvarnim sustavom


 Eksperiment s modelom stvarnog sustava
 Fizikalni model sustava
 Manja ili veća fizička kopija sustava
 Matematički model sustava
 Analitičko
rješenje sustava
 Numerička simulacija sustava računalom

 Mnogi stvarni sustavi su previše složeni (tj. prekomplicirani)


da bi se njihovi modeli mogli riješiti analitički
 Zbog toga koristimo numeričku simulaciju sustava računalom
 Imitiramo rad sustava tijekom vremena
 Prikupljamo podatke kao da promatramo stvarni rad sustava

Informacijske mreže 07. 11. 2018. 4 od 38


Simuliranje sustava
Zavod za telekomunikacije

 Simulacija je imitiranje ponašanja nekog sustava (iz stvarnog


svijeta) tijekom nekog vremenskog perioda
 Izgradnjom modela sustava se omogućava proučavanje
ponašanja stvarnog sustava tijekom promatranog perioda
 Model se sastoji od niza pretpostavki o ponašanju stvarnog
sustava
 matematički,
 logički i/ili
 simbolički odnosi između zasebnih jedinica (entities) sustava

 Model se može iskoristiti za odgovaranje na niz „što ako” pitanja o


ponašanju stvarnog sustava
 Simuliranjem se može odrediti utjecaj potencijalnih promjena u
sustavu na njegovo ponašanje u stvarnosti

Informacijske mreže 07. 11. 2018. 5 od 38


Prednosti i nedostaci simuliranja
Zavod za telekomunikacije

 Prednosti
 Može se doći do zaključaka bez remećenja rada stvarnog sustava
 Ne trebaju se kupovati dodatni stvarni resursi
 Mogu se testirati bilo kakve hipoteze o sustavu
 Vrijeme se može sažeti i rastegnuti ovisno o potrebi
 Mogu se analizirati kritične točke sustava prije nego one dođu do
izražaja u stvarnom sustavu
 Simulacija često pomaže da se shvati kako sustav funkcionira

 Nedostaci
 Modeliranje sustava zahtijeva specifično znanje i trening
 Ponekad je teško protumačiti rezultate simuliranja
 Modeliranje i analiza mogu jako dugo trajati i biti vrlo skupi

Informacijske mreže 07. 11. 2018. 6 od 38


Modeliranje sustava
Zavod za telekomunikacije

 Model je zamjena za stvarni sustav


 Prednosti modeliranja
 Izgradnja sustava i njegovih kopija je često skupa
 Mjerenje ponašanja sustava može biti dugotrajan proces
 Sustav kojeg modeliramo ne mora uopće fizički postojati

 Vrste modela sustava


 Deterministički i stohastički (imamo li nekakvu dozu slučajnosti?)
 Statički i dinamički (je li vrijeme bitno?)
 Kontinuirani i diskretni (kakvo je vrijeme?)

 Simulacija diskretnih događaja: model sustava je stohastički,


dinamičan i diskretan
 Monte Carlo simulacija: model sustava je stohastički i statičan

Informacijske mreže 07. 11. 2018. 7 od 38


Pregled predavanja
Zavod za telekomunikacije

 Uvod u simuliranje sustava


 Monte Carlo simulacija
 Simulacija diskretnih događaja
 Primjer: Simulacija sustava posluživanja M/M/1
 Simulator diskretnih događaja ns-2
 Primjer: Simulacija upravljanja zagušenjem u različitim
varijantama protokola TCP

Informacijske mreže 07. 11. 2018. 8 od 38


Monte Carlo simulacija
Zavod za telekomunikacije

 Ova simulacija se temelji na uzastopnom uzorkovanju


slučajnih brojeva
 Koristi se za rješavanje fizičkih i matematičkih problema koji
su teški za analitičko rješavanje
 Osnovna ideja
 Definiraj domenu mogućih ulaznih vrijednosti
 Nasumično generiraj ulazne vrijednosti u skladu s njihovom
distribucijom unutar domene
 Koristi generirane ulazne vrijednosti za deterministički izračun
problema
 Agregiraj rezultate izračuna za različite ulazne vrijednosti

Informacijske mreže 07. 11. 2018. 9 od 38


Primjer 1: Izračun broja PI
Zavod za telekomunikacije

Informacijske mreže 07. 11. 2018. 10 od 38


Pregled predavanja
Zavod za telekomunikacije

 Uvod u simuliranje sustava


 Monte Carlo simulacija
 Simulacija diskretnih događaja
 Primjer: Simulacija sustava posluživanja M/M/1
 Simulator diskretnih događaja ns-2
 Primjer: Simulacija upravljanja zagušenjem u različitim
varijantama protokola TCP

Informacijske mreže 07. 11. 2018. 11 od 38


Simulacija diskretnih događaja
Zavod za telekomunikacije

 Modeliramo sustav čije se stanje mijenja samo u diskretnim


vremenskim trenucima
 Sustav se sastoji od zasebnih cjelina (dijelova) kojima su
pridružena svojstva (atributi)
 Stanje sustava je skup stanja svih njegovih dijelova
 Događaj je trenutna pojava u sustavu koja mijenja njegovo
trenutno stanje, a može pokrenuti:
 Aktivnost (activity) za koju se zna koliko traje i koje cjeline su u nju
uključene
 Odgađanje (delay) nekih budućih događaja koje ima unaprijed
nepoznato trajanje
 Model sustava se sastoji od cjelina i njihovih atributa,
aktivnosti, događaja te njihovih međusobnih odnosa
Informacijske mreže 07. 11. 2018. 12 od 38
Protok vremena kod simulacije diskretnih događaja
Zavod za telekomunikacije

 Protok vremena se modelira kao niz događaja u vremenu


 Svaki događaj mijenja stanje sustava

e1 e2 e3 e4

S0 S1 S2 S3 S4

 Model sadrži varijablu koja se zove unutarnji sat ili simulirani


sat
 Svaki događaj uzrokuje (skokovitu) promjenu unutarnjeg sata
 Periodi kad nema promjene stanja sustava se preskaču
Informacijske mreže 07. 11. 2018. 13 od 38
Događaji
Zavod za telekomunikacije

 Događaj može uzrokovati jedan ili više budućih događaja, a


može biti takav da ne uzrokuje niti jedan budući događaj
 Kako događaji uzrokuju promjenu stanja sustava potrebno ih
je držati u odgovarajućoj strukturi podataka
 Redoslijed dodavanja događaja u strukturu nije unaprijed
poznat (na njega utječu drugi događaji na koje utječu slučajne
varijable)
 Iz te strukture se uvijek uzima događaj koji je sljedeći u
vremenu
 Ova podatkovna struktura nije FIFO, već prioritetni red (npr.
java.util.PriorityQueue u Javi)

Informacijske mreže 07. 11. 2018. 14 od 38


Komponente i organizacija modela
Zavod za telekomunikacije

 Stanje sustava
 Unutarnji sat
 Lista (tj. prioritetni red) događaja
 Statistika (skup brojača)

 Procedura inicijalizacije (initialization routine)


 Procedura protoka vremena (timing routine) i odabira
sljedećeg događaja (event routine)

Informacijske mreže 07. 11. 2018. 15 od 38


Način izvođenja simulacije diskretnih događaja
Zavod za telekomunikacije

Informacijske mreže 07. 11. 2018. 16 od 38


Generiranje slučajnih varijabli
Zavod za telekomunikacije

 Neophodan dio svake simulacije diskretnih događaja


 Kako generirati slučajnu varijablu s generatorom slučajnih
brojeva?
 Dvije najčešće korištene metode generiranja slučajnih
varijabli
 Metoda inverzne transformacije
 Analitička metoda
 Koristi kumulativnu funkciju razdiobe 𝐹 𝑋

 Metoda prihvaćanja i odbijanja


 Oblik Monte-Carlo simulacije
 Koristi funkciju gustoće vjerojatnosti razdiobe 𝑓 𝑥
 Pokazat ćemo ove dvije tehnike na primjeru eksponencijalne
razdiobe
Informacijske mreže 07. 11. 2018. 17 od 38
Gen. sluč. varijabli metodom inverzne transformacije
Zavod za telekomunikacije

1. Odabrati funkciju gustoće vjerojatnosti razdiobe


𝑓 𝑥
2. Izračunati njenu kumulativnu funkciju razdiobe
𝑥
𝐹 𝑋 = න 𝑓 𝑡 𝑑𝑡
0
3. Riješiti jednadžbu 𝐹 𝑥𝑖 = 𝑦𝑖 da dobijemo 𝑥𝑖 = 𝐹 −1 𝑦𝑖
4. Generirati proizvoljan broj slučajnih brojeva 𝑦𝑖 (uniformnom
razdiobom u intervalu 0 do 1) te na osnovu njih izračunati
vrijednosti slučajne varijable 𝑥𝑖

Informacijske mreže 07. 11. 2018. 18 od 38


Gen. sluč. varijable tehnikom prihvaćanja i odbijanja
Zavod za telekomunikacije

1. Nasumično generirati 𝑥𝑖 uniformnom razdiobom u mogućem


intervalu
2. Za taj 𝑥𝑖 izračunati 𝑓 𝑥𝑖
3. Nasumično generirati 𝑦𝑖 uniformnom razdiobom u intervalu
0 do max 𝑓 𝑥𝑖
𝑖
4. Ukoliko je 𝑦𝑖 > 𝑓 𝑥𝑖 vratiti se na korak 1., inače prihvati
𝑥𝑖
5. Generirati proizvoljan broj vrijednosti slučajne varijable 𝑥𝑖
ponavljanjem od koraka 1. do prihvaćanja vrijednosti u
koraku 4.

Informacijske mreže 07. 11. 2018. 19 od 38


Primjer 2: Generiranje slučajne varijable po eksp. raz.
Zavod za telekomunikacije

funkcija gustoće vjerojatnosti razdiobe kumulativna funkcija razdiobe


𝑥
𝑓 𝑥 = 𝜆𝑒 −𝜆𝑥 𝐹 𝑋 = න 𝑓 𝑡 𝑑𝑡 = 1 − 𝑒 −𝜆𝑥
0

Informacijske mreže 07. 11. 2018. 20 od 38


Inverzna transformacija za eksponencijalnu razdiobu
Zavod za telekomunikacije

1 − 𝑒 −𝜆𝑥𝑖 = 𝑦𝑖

𝑒 −𝜆𝑥𝑖 = 1 − 𝑦𝑖

−𝜆𝑥𝑖 = ln 1 − 𝑦𝑖

1
𝑥𝑖 = ln 1 − 𝑦𝑖
−𝜆

1
𝑥𝑖 = ln 𝑦𝑖
−𝜆

Informacijske mreže 07. 11. 2018. 21 od 38


Faze procesa simulacije diskretnih događaja
Zavod za telekomunikacije

Informacijske mreže 07. 11. 2018. 22 od 38


O fazama procesa simulacije diskretnih događaja
Zavod za telekomunikacije

 Formulacija problema – problem mora biti poznat i jasan


 Cilj i plan simulacije – moramo znati što želimo
 Konceptualizacija modela – sustav pretvaramo u model
 Prikupljanje podataka – omogućava postavljanje ispravne
vrijednosti atributa
 Translacija – pretvaranje modela u računalni program
 Verifikacija – provjeravanje ponašanja računalnog modela
 Validacija – kalibracija modela usporedbom sa stvarnim sustavom
 Dizajniranje eksperimenta
 Izvođenje eksperimenta
 Izvještavanje o eksperimentu – analiza i komentiranje rezultata
 Implementacija stvarnog sustava

Informacijske mreže 07. 11. 2018. 23 od 38


Pregled predavanja
Zavod za telekomunikacije

 Uvod u simuliranje sustava


 Monte Carlo simulacija
 Simulacija diskretnih događaja
 Primjer: Simulacija sustava posluživanja M/M/1
 Simulator diskretnih događaja ns-2
 Primjer: Simulacija upravljanja zagušenjem u različitim
varijantama protokola TCP

Informacijske mreže 07. 11. 2018. 24 od 38


Primjer 3: Simulacija sustava posluživanja M/M/1
Zavod za telekomunikacije

 Zasebne cjeline i njihovi atributi


 poslužitelj(atribut: srednje vrijeme posluživanja zahtjeva),
 red čekanja i
 zahtjevi (atribut: redni broj zahtjeva)

 Događaji
 dolazak novog zahtjeva i
 završetak posluživanja nekog zahtjeva

 Aktivnosti
 posluživanjezahtjeva
 čekanje na dolazak novog zahtjeva

 Odgađanje: čekanje u repu

Informacijske mreže 07. 11. 2018. 25 od 38


Primjer 3: Zašto je ovo simulacija diskretnih događaja?
Zavod za telekomunikacije

 Model sustava je stohastički, dinamičan i diskretan

 Stohastički je jer su međudolazna vremena i vremena


posluživanja slučajne varijable

 Dinamičan je jer se stanje sustava mijenja u vremenu kako


novi zahtjevi dolaze, a stari bivaju obrađeni

 Diskretan je jer se stanje sustava mijenja samo u diskretnim


vremenskim trenucima (dolaska novih i završetka obrade
zahtjeva)
Informacijske mreže 07. 11. 2018. 26 od 38
Primjer 3: Graf događaja u sustavu
Zavod za telekomunikacije

Informacijske mreže 07. 11. 2018. 27 od 38


Primjer 3: Obrada događaja u sustavu
Zavod za telekomunikacije

Informacijske mreže 07. 11. 2018. 28 od 38


Primjer 3: Zadatak
Zavod za telekomunikacije

⧫ Mjerenjem na pristupnoj točki mreže dobivamo srednji


protok od 125 paketa u sekundi i srednje vrijeme
posluživanja 0,002 sekunde.
⧫ Što je sve moguće zaključiti o promatranom kanalu?

0,002 s
Dolazni paketi u
komunikacijskom 125 p/s
kanalu
paketi

Informacijske mreže 07. 11. 2018. 29 od 38


Primjer 3: Analitičko rješenje
Zavod za telekomunikacije

⧫ Srednji protok δ = 125 p/s


⧫ Srednje vrijeme posluživanja S = 0,002 s/p
⧫ Prosječna zaposlenost sustava
ρ = δ * S = ( 125 p/s ) * ( 0,002 s/p ) = 0,25 (25 %)
⧫ Srednje vrijeme zadržavanja paketa u sustavu
T = S/(1 - ρ) = (0,002 s/p)/(1 - 0,25) = 0,0026666 s
⧫ Srednji broj paketa u sustavu
N = δ*T = (125 p/s)*(0,0026 s) = 0,333 p
⧫ Srednje vrijeme zadržavanja u repu:
W = T - S = 0,0006666
⧫ Srednji broj paketa u repu:
Nw= δ*W = 0,08333333
Informacijske mreže 07. 11. 2018. 30 od 38
Primjer 3: Rezultat simulacije
Zavod za telekomunikacije

SERVER UTILIZATION: 0.24921279719994185


MAXIMUM QUEUE LENGTH: 8.0
AVERAGE QUEUE LENGTH: 0.08375873190400254
AVG. NUM. OF REQS IN THE SYSTEM:0.33297152910394434
AVERAGE RESPONSE TIME: 0.002666075069869527
AVERAGE SERVICE TIME: 0.00199542593775278
AVERAGE WAITING TIME: 6.706491321167472E-4
AVERAGE INTERARRIVAL TIME: 0.8006916017847439
SIMULATION TIME: 800.6916017847439
NUMBER OF ARRIVALS: 100000
NUMBER OF DEPARTURES: 100000

Informacijske mreže 07. 11. 2018. 31 od 38


Pregled predavanja
Zavod za telekomunikacije

 Uvod u simuliranje sustava


 Monte Carlo simulacija
 Simulacija diskretnih događaja
 Primjer: Simulacija sustava posluživanja M/M/1
 Simulator diskretnih događaja ns-2
 Primjer: Simulacija upravljanja zagušenjem u različitim
varijantama protokola TCP

Informacijske mreže 07. 11. 2018. 32 od 38


Simulator Ns2 - Uvod
Zavod za telekomunikacije

 Razvijen na Sveučilištu Berkely


 Diskretni mrežni simulator vođen događajima
 Objektno orijentiran
 Dio VINT projekta (Virtual InterNet Testbed)
 http://netweb.usc.edu/vint
 Razvija alate za prikaz rezultata simulacije, analize i pretvarače koji
pretvaraju mrežnu topologiju generiranu iz ns formata
 Simulacije na nivou paketa
 Implementacije protokola od sloja linka na više
 FreeBSD, Linux, Solaris, Windows and Mac

Informacijske mreže 07. 11. 2018. 33 od 38


Funkcionalnosti simulatora ns-2
Zavod za telekomunikacije

 Žične i bežične
 Žične
 Mrežni protokoli (TCP, UDP)
 Ponašanje prometnih izvora (FTP, Telnet, Web, CBR, VBR)
 Mehanzimi upravljanja spremnicima (DropTail, RED, CBQ)
 Algoritam usmjeravanja (Dijkstra)
 Višeodredišno razašiljanje (multicast)

 Bežične
 Mobile ad-hoc usmjeravanje
 Mobile IP

Informacijske mreže 07. 11. 2018. 34 od 38


Korisnikov pogled na simulator ns-2
Zavod za telekomunikacije

 korisnik piše OTcl skriptu koja:


 pokreće raspored događaja
 postavlja mrežnu topologiju
 govori prometnim izvorima kada pokrenuti i zaustaviti prijenos paketa
prema rasporedu događaja

Informacijske mreže 07. 11. 2018. 35 od 38


Završetak simulacije
Zavod za telekomunikacije

 NS generira jednu ili više izlaznih tekstualnih datoteka


 Direktna analiza
 Ulaz za grafičko-simulacijski alat Network Animator (NAM)

Informacijske mreže 07. 11. 2018. 36 od 38


Pregled predavanja
Zavod za telekomunikacije

 Uvod u simuliranje sustava


 Monte Carlo simulacija
 Simulacija diskretnih događaja
 Primjer: Simulacija sustava posluživanja M/M/1
 Simulator diskretnih događaja ns-2
 Primjer: Simulacija upravljanja zagušenjem u različitim
varijantama protokola TCP

Informacijske mreže 07. 11. 2018. 37 od 38


Primjer 4: Prozor zagušenja u varijantama TCP-a
Zavod za telekomunikacije

Informacijske mreže 07. 11. 2018. 38 od 38

You might also like