49

Implementacija DRR algoritma

  • Upload
    milo

  • View
    68

  • Download
    0

Embed Size (px)

DESCRIPTION

Implementacija DRR algoritma. u svičevima sa baferima na izlazu. Nevena Vratonjić, Maja Matić, Nevena Krsmanović. Mentor: Prof. Dr Aleksandra Smiljanić. ETF, Beograd. Cilj projekta. Implementacija DRR algoritma Ispitivanje performansi arhitekture - PowerPoint PPT Presentation

Citation preview

Page 1: Implementacija DRR algoritma
Page 2: Implementacija DRR algoritma

Implementacija DRR Implementacija DRR algoritmaalgoritma

Nevena Vratonjić, Maja Matić, Nevena KrsmanovićNevena Vratonjić, Maja Matić, Nevena Krsmanović

ETF, Beograd

Mentor:Mentor:Prof. Dr Aleksandra SmiljanićProf. Dr Aleksandra Smiljanić

u svičevima sa baferima u svičevima sa baferima na izlazuna izlazu

Page 3: Implementacija DRR algoritma

Cilj projektaCilj projekta

Implementacija DRRImplementacija DRR algoritma algoritma

Ispitivanje performansi arhitektureIspitivanje performansi arhitekture garantovano kašnjenjegarantovano kašnjenje (saobra (saobraćaj sa ćaj sa

rezervacijama)rezervacijama) fer servis (best – effort saobraćaj)fer servis (best – effort saobraćaj)

Page 4: Implementacija DRR algoritma

Sadržaj :Sadržaj :

UvodUvod Mehanizam rada DRRMehanizam rada DRR SimulacijaSimulacija Rezultati Rezultati KomentariKomentari ZaključakZaključak

Page 5: Implementacija DRR algoritma

UvodUvod

Kriterijum mere fer servisaKriterijum mere fer servisa Bit-by-bit Round Robin (BR)Bit-by-bit Round Robin (BR)

Apsolutno fer algoritamApsolutno fer algoritam Vrlo težak za implementacijuVrlo težak za implementaciju

Deficit Round Robin (DRR)Deficit Round Robin (DRR) Skoro idealno ferSkoro idealno fer servis servis Jednostavna implementacijaJednostavna implementacija

Motivacija za Motivacija za uvouvođenje fer servisađenje fer servisaOgraničeni resursi, “agresivni” Ograničeni resursi, “agresivni” korisnici,....korisnici,....

Page 6: Implementacija DRR algoritma

Mehanizam rada DRRMehanizam rada DRR

Raspoređivanje paketa po Raspoređivanje paketa po tokovimatokovima

Page 7: Implementacija DRR algoritma

Algoritam DRR (1)Algoritam DRR (1) Formiranje aFormiranje aktivnktivnee list listee InicijalizacijaInicijalizacija Inkrementiranje Deficit Inkrementiranje Deficit

CounterCounter Ispitivanje uslovaIspitivanje uslova za slanje za slanje

paketapaketa Slanje paketaSlanje paketa Obrada sledeObrada sledećeg toka iz aktivne ćeg toka iz aktivne

listeliste

Page 8: Implementacija DRR algoritma

Algoritam DRR (2)Algoritam DRR (2)

Minimalni kvant servisaMinimalni kvant servisaQuantumQuantum > Lmax > Lmax

Dodeljivanje prioritetaDodeljivanje prioriteta

QuantumQuantumi i = m= mii * Quantum * Quantum

Page 9: Implementacija DRR algoritma

SSimulacijimulacija...a...

Modeliranje arhitektureModeliranje arhitekture Generisanje saobraćajaGenerisanje saobraćaja

Bernoulli (fiksna dužina paketa)Bernoulli (fiksna dužina paketa) Poisson (različite dužine paketa)Poisson (različite dužine paketa)

Realizacije saobraćajaRealizacije saobraćaja sa rezervacijama (policing)sa rezervacijama (policing) best – effort best – effort

Page 10: Implementacija DRR algoritma

Modeliranje arhitektureModeliranje arhitekture

Arhitektura rutera sa baferima na izlazuArhitektura rutera sa baferima na izlazu

Programski kod u programskom jeziku CProgramski kod u programskom jeziku C

Programski paket Matlab 7.0Programski paket Matlab 7.0

Ruter sa 10 ulaza i 10 izlazaRuter sa 10 ulaza i 10 izlaza Posmatran je samo jedan izlazPosmatran je samo jedan izlaz

Page 11: Implementacija DRR algoritma

Saobraćaj sa Saobraćaj sa rezervacijamarezervacijama

Obezbeđuje pouzdan prenos pri poštovanju Obezbeđuje pouzdan prenos pri poštovanju rezervacijarezervacija

Garantovano kašnjenje kontrolom pomoću Garantovano kašnjenje kontrolom pomoću prozorprozoraa

ΣΣ w wii ≤ F≤ F

Liste Liste za čekanjeza čekanje Liste za obradu po DRRListe za obradu po DRR Cilj: analiza kašnjenja kroz ruterCilj: analiza kašnjenja kroz ruter

uticaj opterećenja linka, veličine paketa, veličine uticaj opterećenja linka, veličine paketa, veličine prozoraprozora, po, poštovanja rezervacijaštovanja rezervacija

Page 12: Implementacija DRR algoritma

Best – effort saobraćajBest – effort saobraćaj

Ne obezbeđuje potpuno pouzdan prenosNe obezbeđuje potpuno pouzdan prenos

Ne garantuje se kvalitet servisaNe garantuje se kvalitet servisa

Jednostavnija implementacijaJednostavnija implementacija

Liste za obradu po DRRListe za obradu po DRR

Cilj: pokazati u kojoj meri je moguće Cilj: pokazati u kojoj meri je moguće obezbediti fer servisobezbediti fer servis Različiti scenariji dolaznog saobraćaja i Različiti scenariji dolaznog saobraćaja i

prioriteta tokovaprioriteta tokova

Page 13: Implementacija DRR algoritma

Rezultati simulacijaRezultati simulacija

Page 14: Implementacija DRR algoritma

Saobraćaj sa rezervacijamaSaobraćaj sa rezervacijama Scenario 1Scenario 1

Korisnici poštuju rezervacijeKorisnici poštuju rezervacije Isti prozori za sve korisnike Isti prozori za sve korisnike

Korisnici su istih prioritetaKorisnici su istih prioriteta

Scenario 2Scenario 2Korisnici poštuju rezervacijeKorisnici poštuju rezervacije““mali” i “veliki” korisnicimali” i “veliki” korisnici

Scenario 3Scenario 3Neki korisnici ne poštuju rezervacijeNeki korisnici ne poštuju rezervacijeIsti prozori za sve korisnike Isti prozori za sve korisnike

Page 15: Implementacija DRR algoritma

Scenario 1Scenario 1

Analiza kašnjenja u zavisnosti od Analiza kašnjenja u zavisnosti od opterećenjaopterećenja

Prosečno kašnjenje u ruteruProsečno kašnjenje u ruteru

Prosečno kašnjenje u listi za čekanjeProsečno kašnjenje u listi za čekanje

Prosečno kašnjenje u listi za obraduProsečno kašnjenje u listi za obradu

Raspodela vremena kašnjenja u ruteruRaspodela vremena kašnjenja u ruteru

Za različite dužine paketaZa različite dužine paketa Za dva tipa generisanja saobraćajaZa dva tipa generisanja saobraćaja

Page 16: Implementacija DRR algoritma

Kašnjenja u ruteru (1)Kašnjenja u ruteru (1)Saobraćaj : Bernoulli za različite dužine Saobraćaj : Bernoulli za različite dužine

paketapaketa

Page 17: Implementacija DRR algoritma

Kašnjenja u ruteru (2)Kašnjenja u ruteru (2)Saobraćaj : Poisson za različite dužine Saobraćaj : Poisson za različite dužine

paketapaketa

Page 18: Implementacija DRR algoritma

Raspodela vremena Raspodela vremena kašnjenjakašnjenjaSaobraćaj : Bernoulli za dužinu paketa L = 1Saobraćaj : Bernoulli za dužinu paketa L = 1Saobraćaj : Bernoulli za dužinu paketa L = 2Saobraćaj : Bernoulli za dužinu paketa L = 2Saobraćaj : Bernoulli za dužinu paketa L = 5Saobraćaj : Bernoulli za dužinu paketa L = 5

90% paketa čeka manje od 6, 8, 12 90% paketa čeka manje od 6, 8, 12 slotovaslotova

90% paketa čeka manje od 8, 14, 25 90% paketa čeka manje od 8, 14, 25 slotovaslotova

90% paketa čeka manje od 17, 37, 86 90% paketa čeka manje od 17, 37, 86 slotovaslotova

Page 19: Implementacija DRR algoritma

Raspodela vremena Raspodela vremena kašnjenjakašnjenja

Saobraćaj : Poisson za dužinu paketa Lsr = Saobraćaj : Poisson za dužinu paketa Lsr = 11

90% paketa čeka manje od 8, 11, 12 90% paketa čeka manje od 8, 11, 12 slotovaslotova

90% paketa čeka manje od 14, 20, 22 90% paketa čeka manje od 14, 20, 22 slotovaslotova

Saobraćaj : Poisson za dužinu paketa Lsr = Saobraćaj : Poisson za dužinu paketa Lsr = 22

Saobraćaj : Poisson za dužinu paketa Lsr = Saobraćaj : Poisson za dužinu paketa Lsr = 55

90% paketa čeka manje od 32, 47, 65 90% paketa čeka manje od 32, 47, 65 slotovaslotova

Page 20: Implementacija DRR algoritma

Izbor kvanta servisa za Izbor kvanta servisa za DRRDRR

Uticaj kvanta servisa Uticaj kvanta servisa za DRR za DRR na na kakašnjenješnjenje

Promenom prioriteta menja se kvant Promenom prioriteta menja se kvant servisa za DRRservisa za DRR

Izborom optimalne vrednosti kvanta Izborom optimalne vrednosti kvanta minimizuje se kašnjenje u ruteruminimizuje se kašnjenje u ruteru

Page 21: Implementacija DRR algoritma

Komentar (scenario 1)Komentar (scenario 1)

Povećenjem dužine paketa povećava se i Povećenjem dužine paketa povećava se i prosečno kašnjenje u ruteruprosečno kašnjenje u ruteru

Vreme obrade paketa po DRR je kritiVreme obrade paketa po DRR je kritično za čno za kašnjenjekašnjenje

Oblici krivih prosečnog kašnjenja su isti za Oblici krivih prosečnog kašnjenja su isti za oba tipa generisanja saobraćajaoba tipa generisanja saobraćaja

U slučaju Poisson generisanja saobraćaja U slučaju Poisson generisanja saobraćaja različite dužine paketa uzrokuju veće različite dužine paketa uzrokuju veće kašnjenjekašnjenje

Page 22: Implementacija DRR algoritma

Saobraćaj sa rezervacijamaSaobraćaj sa rezervacijama Scenario 1Scenario 1

Korisnici poštuju rezervacijeKorisnici poštuju rezervacije Isti prozori za sve korisnike Isti prozori za sve korisnike

Korisnici su istih prioritetaKorisnici su istih prioriteta

Scenario 2Scenario 2Korisnici poštuju rezervacijeKorisnici poštuju rezervacije““mali” i “veliki” korisnicimali” i “veliki” korisnici

Scenario 3Scenario 3Neki korisnici ne poštuju rezervacijeNeki korisnici ne poštuju rezervacijeIsti prozori za sve korisnike Isti prozori za sve korisnike

Page 23: Implementacija DRR algoritma

Scenario 2Scenario 2 ““mali” korisnici: veličina prozora mali” korisnici: veličina prozora ww

““veliki” korisnici: veličina prozora 4veliki” korisnici: veličina prozora 4··ww

Analiza kašnjenja u zavisnosti od opterećenjaAnaliza kašnjenja u zavisnosti od opterećenja

Prosečno kašnjenje u ruteruProsečno kašnjenje u ruteru

Prosečno kašnjenje u listi za čekanjeProsečno kašnjenje u listi za čekanje

Prosečno kašnjenje u listi za obraduProsečno kašnjenje u listi za obradu

Raspodela vremena kašnjenja u ruteruRaspodela vremena kašnjenja u ruteru

Za različite dužine paketaZa različite dužine paketa Za dva tipa generisanja saobraćajaZa dva tipa generisanja saobraćaja

Page 24: Implementacija DRR algoritma

Kašnjenja u ruteru (1)Kašnjenja u ruteru (1)Saobraćaj : Bernoulli za različite dužine Saobraćaj : Bernoulli za različite dužine

paketapaketa

Page 25: Implementacija DRR algoritma

Kašnjenja u ruteru (2)Kašnjenja u ruteru (2)Saobraćaj : Poisson za različite dužine Saobraćaj : Poisson za različite dužine

paketapaketa

Page 26: Implementacija DRR algoritma

Raspodela vremena Raspodela vremena kašnjenjakašnjenja

90% paketa čeka manje od 13 slotova (kao u 90% paketa čeka manje od 13 slotova (kao u scenariju 1)scenariju 1)

Saobraćaj : Bernoulli za dužinu paketa L = 2Saobraćaj : Bernoulli za dužinu paketa L = 2

Page 27: Implementacija DRR algoritma

Raspodela vremena Raspodela vremena kašnjenjakašnjenja

90% paketa čeka manje od 19 slotova (kao u 90% paketa čeka manje od 19 slotova (kao u scenariju 1)scenariju 1)

Saobraćaj : Poisson za dužinu paketa Saobraćaj : Poisson za dužinu paketa Lsrednje = 2Lsrednje = 2

Page 28: Implementacija DRR algoritma

Komentar (scenario 2)Komentar (scenario 2) Povećenjem dužine paketa povećava se i Povećenjem dužine paketa povećava se i

prosečno kašnjenje u ruteruprosečno kašnjenje u ruteru

Vreme obrade paketa po DRR je kritiVreme obrade paketa po DRR je kritično za čno za kašnjenjekašnjenje

Oblici krivih prosečnog kašnjenja su isti za Oblici krivih prosečnog kašnjenja su isti za oba tipa generisanja saobraćajaoba tipa generisanja saobraćaja

Kašnjenje je isto za “male” i “velike” korisnikeKašnjenje je isto za “male” i “velike” korisnike Pri istom opterećenju i za iste dužine paketa Pri istom opterećenju i za iste dužine paketa

vreme kašnjenja je isto kao u scenariju 1 vreme kašnjenja je isto kao u scenariju 1

Page 29: Implementacija DRR algoritma

Saobraćaj sa rezervacijamaSaobraćaj sa rezervacijama Scenario 1Scenario 1

Korisnici poštuju rezervacijeKorisnici poštuju rezervacije Isti prozori za sve korisnike Isti prozori za sve korisnike

Korisnici su istih prioritetaKorisnici su istih prioriteta

Scenario 2Scenario 2Korisnici poštuju rezervacijeKorisnici poštuju rezervacije““mali” i “veliki” korisnicimali” i “veliki” korisnici

Scenario 3Scenario 3Neki korisnici ne poštuju rezervacijeNeki korisnici ne poštuju rezervacijeIsti prozori za sve korisnike Isti prozori za sve korisnike

Page 30: Implementacija DRR algoritma

Scenario 3Scenario 3

““agresivni” korisnik ne poštuje svoju agresivni” korisnik ne poštuje svoju rezervacijurezervaciju Generiše tri puta više saobraćajaGeneriše tri puta više saobraćaja

Uticaj “agresivnog” korisnika na :Uticaj “agresivnog” korisnika na :

Prosečno kašnjenje u ruteruProsečno kašnjenje u ruteru

Broj odbijenih paketaBroj odbijenih paketa

Procenat zadovoljenja traženog saobraćajaProcenat zadovoljenja traženog saobraćaja

Za različite dužine paketaZa različite dužine paketa Za dva tipa generisanja saobraćajaZa dva tipa generisanja saobraćaja

Page 31: Implementacija DRR algoritma

Saobraćaj: Bernoulli za dužinu paketa Saobraćaj: Bernoulli za dužinu paketa L = 1L = 1

Page 32: Implementacija DRR algoritma

Saobraćaj: Bernoulli za dužinu paketa Saobraćaj: Bernoulli za dužinu paketa L = 2L = 2

Page 33: Implementacija DRR algoritma

Saobraćaj: Bernoulli za dužinu paketa Saobraćaj: Bernoulli za dužinu paketa L = 5L = 5

Page 34: Implementacija DRR algoritma

Saobraćaj: Poisson za dužinu paketa Saobraćaj: Poisson za dužinu paketa Lsr = 1Lsr = 1

Page 35: Implementacija DRR algoritma

Saobraćaj: Poisson za dužinu paketa Saobraćaj: Poisson za dužinu paketa Lsr = 2Lsr = 2

Page 36: Implementacija DRR algoritma

Saobraćaj: Poisson za dužinu paketa Saobraćaj: Poisson za dužinu paketa Lsr = 5Lsr = 5

Page 37: Implementacija DRR algoritma

Komentar (scenario 3)Komentar (scenario 3) Pri malim opterećenjima scenario 3 svodi se na Pri malim opterećenjima scenario 3 svodi se na

scenario 1 i scenario 2scenario 1 i scenario 2 Kritično opterećenje :Kritično opterećenje :

““agresivni” korisnik ne poštuje rezervacijuagresivni” korisnik ne poštuje rezervaciju Odbacuju se paketi Odbacuju se paketi Kašnjenje raste do vrednosti određene veličinom Kašnjenje raste do vrednosti određene veličinom

prihvatnog baferaprihvatnog bafera Vreme provedeno u listi za čekanje postaje kritično Vreme provedeno u listi za čekanje postaje kritično Smanjuje se sa porastom dužine paketaSmanjuje se sa porastom dužine paketa

Za korisnike koji poštuju rezervacije nema odbijenih Za korisnike koji poštuju rezervacije nema odbijenih paketapaketa

Page 38: Implementacija DRR algoritma

Best–effort saobraćajBest–effort saobraćaj

Arhitektura rutera se menjaArhitektura rutera se menja Nema garantovanog kašnjenjaNema garantovanog kašnjenja Ispitivanje mere fer servisaIspitivanje mere fer servisa

Uticaj “agresivnih” i “dobrih” korisnikaUticaj “agresivnih” i “dobrih” korisnika Uticaj opterećenja linkaUticaj opterećenja linka Uticaj prioriteta korisnika Uticaj prioriteta korisnika Granična vrednost opterećenjaGranična vrednost opterećenja

Page 39: Implementacija DRR algoritma

Best-effort saobraćaj Best-effort saobraćaj Scenario 1Scenario 1

Scenario 2Scenario 2

Scenario 3Scenario 3

Scenario 4Scenario 4

Scenario 5Scenario 5

Scenario 6Scenario 6

Scenario 7Scenario 7

Svi korisnici imaju isti prioritetSvi korisnici imaju isti prioritet

Svi korisnici imaju isti nivo Svi korisnici imaju isti nivo generisanog saobraćaja, manji od generisanog saobraćaja, manji od granične vrednostigranične vrednosti

Page 40: Implementacija DRR algoritma

Best-effort saobraćajBest-effort saobraćaj

Scenario 2Scenario 2 Svi korisnici imaju isti prioritetSvi korisnici imaju isti prioritet

Svi korisnici imaju isti nivo Svi korisnici imaju isti nivo generisanog saobraćaja, manji od generisanog saobraćaja, manji od granične vrednostigranične vrednostiKorisnik 9 generiše veći nivo Korisnik 9 generiše veći nivo saobraćaja, manji od graničnog saobraćaja, manji od graničnog

Page 41: Implementacija DRR algoritma

BesBestt-effort saobraćaj -effort saobraćaj

Scenario 3Scenario 3 Svi korisnici imaju isti prioritetSvi korisnici imaju isti prioritet

Korisnici od 0 do 8 generišu isti nivo Korisnici od 0 do 8 generišu isti nivo saobraćaja, manji od graničnogsaobraćaja, manji od graničnog

Korisnik 9 generiše veći nivo Korisnik 9 generiše veći nivo saobraćaja, koji je veći od graničnogsaobraćaja, koji je veći od graničnog

Page 42: Implementacija DRR algoritma

Best-effort saobraćaj Best-effort saobraćaj

Scenario 4Scenario 4

Svi korisnici imaju isti prioritetSvi korisnici imaju isti prioritet

Svi korisnici generišu nivo Svi korisnici generišu nivo saobraćaja veći od graničnogsaobraćaja veći od graničnog

Korisnik 9 generiše veći nivo Korisnik 9 generiše veći nivo saobraćaja od ostalih korisnikasaobraćaja od ostalih korisnika

Page 43: Implementacija DRR algoritma

Best-effort saobraćaj Best-effort saobraćaj

Scenario 5Scenario 5

Svi korisnici generišu nivo saobraćaja veći od Svi korisnici generišu nivo saobraćaja veći od graničnoggraničnog

Korisnik 9 generiše veći nivo Korisnik 9 generiše veći nivo saobraćaja saobraćaja od ostalih korisnikaod ostalih korisnikaKorisnik 9 ima veći prioritet od ostalihKorisnik 9 ima veći prioritet od ostalih

Povećanje prioriteta korisnikaPovećanje prioriteta korisnikaPovećanje kvanta servisa za DRRPovećanje kvanta servisa za DRRKorisnik sa prioritetom dobija veći deo kapaciteta Korisnik sa prioritetom dobija veći deo kapaciteta izlaznog linkaizlaznog linka

Page 44: Implementacija DRR algoritma

Best-effort saobraćaj Best-effort saobraćaj

Scenario 6Scenario 6

Svi korisnici generišu nivo saobraćaja Svi korisnici generišu nivo saobraćaja veći od graničnogveći od graničnog

Povećanje prioriteta korisnikaPovećanje prioriteta korisnikaKorisnik sa prioritetom dobija veći deo Korisnik sa prioritetom dobija veći deo kapaciteta izlaznog linkakapaciteta izlaznog linka

Korisnik 5 ima veći prioritet od Korisnik 5 ima veći prioritet od ostalihostalih

Korisnici 3 i 5 generišu veći nivo Korisnici 3 i 5 generišu veći nivo saobraćaja od ostalih korisnikasaobraćaja od ostalih korisnika

Page 45: Implementacija DRR algoritma

Best-effort saobraćaj Best-effort saobraćaj

Scenario 7Scenario 7

Povećanje prioriteta korisnikaPovećanje prioriteta korisnikaKorisnik sa prioritetom dobija veći deo Korisnik sa prioritetom dobija veći deo kapaciteta izlaznog linkakapaciteta izlaznog linka

Svi korisnici generišu isti nivo Svi korisnici generišu isti nivo saobraćaja, veći od graničnogsaobraćaja, veći od graničnog

Korisnicima se prioriteti dodeljuju Korisnicima se prioriteti dodeljuju relacijom relacijom m[i] = i+1m[i] = i+1, i-tok korisnika, i-tok korisnika

Page 46: Implementacija DRR algoritma

KomentarKomentar

““agresivni” korisnici ne ugrožavaju agresivni” korisnici ne ugrožavaju “dobre” korisnike“dobre” korisnike

Kapacitet linka se ravnomerno Kapacitet linka se ravnomerno raspoređuje korisnicima koji generišu raspoređuje korisnicima koji generišu veći nivo saobraćajaveći nivo saobraćaja

Povećanjem prioriteta dodeljujemo Povećanjem prioriteta dodeljujemo veći kapacitet linka zahtevnijim veći kapacitet linka zahtevnijim korisnicima korisnicima

Page 47: Implementacija DRR algoritma

Zaključak (1)Zaključak (1)

Saobraćaj sa rezervacijamaSaobraćaj sa rezervacijama Ostvaruje se garantovano kašnjenje bez Ostvaruje se garantovano kašnjenje bez

odbijanja paketaodbijanja paketa Oblici krivih kašnjenja ne zavise od tipa Oblici krivih kašnjenja ne zavise od tipa

sobraćajasobraćaja Best – effort saobraćajBest – effort saobraćaj

Garantuje se fer servis svakom korisnikuGarantuje se fer servis svakom korisniku Dodeljeni kapacitet izlaznog linka zavisi Dodeljeni kapacitet izlaznog linka zavisi

od prioritetaod prioriteta

Page 48: Implementacija DRR algoritma

Zaključak (2)Zaključak (2)

PruPružanje željenog kašnjenjažanje željenog kašnjenja VoIP, video streamingVoIP, video streaming

Garantovanje fer servisaGarantovanje fer servisa FTPFTP

Potvrđene su dobre performanse Potvrđene su dobre performanse arhitekture rutera sa baferima na arhitekture rutera sa baferima na izlazuizlazu

Page 49: Implementacija DRR algoritma

?Pitanja ?Pitanja ?