You are on page 1of 21

UNIVERZITET U SARAJEVU

ELEKTROTEHNIČKI FAKULTET U SARAJEVU

PROJEKAT:
-Aktivno upravljanje redovima -
Kvaliteta usluge u telekomunikacijskim mrežama

Grupa: Aldina Bajraktarević


Anida Garib
Sarajevo, 27.02.2011.god. Mia Guso
Aktivno upravljanje redovima 2

SADRŽAJ

UVOD.........................................................................................................................................3
1. AKTIVNO UPRAVLJANJE REDOVIMA ČEKANJA................................................4
2. AQM ALGORITMI KOJI SE TEMELJE NA VELIČINI REDA ČEKANJA..............5
3. AQM ALGORITMI KOJI SE TEMELJE NA BRZINI PROMETA...........................9
3.1 BLUE........................................................................................................................9
3.2 YELLOW...............................................................................................................10
3.3 GREEN...................................................................................................................11
4. KOMBINIRANI AQM ALGORITMI..........................................................................13
5. POREĐENJE NEKIH AQM ALGORITAMA.............................................................16
ZAKLJUČAK...........................................................................................................................19
REFERENCE............................................................................................................................20

2
Aktivno upravljanje redovima 3

UVOD

Stalan rast kompleksnosti (složenosti) IP mreže, kao i evolucija usluga i protokola, ostavlja
otvoreno pitanje problematike poboljšanja kvaliteta usluge. Ključni izazov u IP mrežama
upravo predstavlja unapreĎenje kvalitete usluge. Pored povećanja korisničkih zahtjeva za brže
i bolje usluge, najveći razlog za uvoĎenje QoS-a je proboj novih servisa na tržište
telekomunikacija. Jedan od najznačajnijih problema današnjeg interneta je zagušenje. Iako
internet pruža servis najboljeg pokušaja na sloju mreže, rješenja za problem zagušenja su
zastupljena od sloja povezivanja podataka do sloja transporta. QoS (engl. Quality of Service)
je platforma koja pokušava da riješi mnoge nedostatke u današnjim mrežama. QoS koncept se
može djelimično uspješno primjeniti u mrežama sa jedinstvenom politikom projektovanja i
administracije. Značajnije širenje QoS platforme zahtjeva suštinsku promjenu načina
funkcionisanja Interneta. Pored QoS koncepta postoje rješenja koja teže da podignu opšti
nivo servisa, iako bez čvrstih garancija. Ovakva rješenja se ostvaruju upravljanjem baferima i
rasporeĎivanjem paketa u baferima. [1]

Pri prosljeĎivanju paketa kroz mrežu postoji kompromis izmeĎu kašnjenja i propusnosti. Ako
su redovi čekanja veliki, a spremnici gotovo puni, pristizanje velikog broja paketa rezultirati
će odbacivanjem većeg broja paketa. Ovo može dovesti do globalne sinkronizacije tokova i
dužeg vremena nedovoljnog iskorištenja mrežnih resursa. Cilj privremene pohrane paketa na
ruterima je omogućavanje primitka bursty paketa koji će se dalje odaslati tokom perioda kada
je dolazni promet manji od kapaciteta odlaznog kanala. Održavanje relativno malih redova
čekanja na ruterima stoga može dovesti do veće propusnosti i manjeg kašnjenja.
Rješenje problema punih spremnika je u tome da ruteri pakete odbacuju prije nego se
spremnici popune, tako da krajnji ureĎaji mogu ranije reagirati na nastanak zagušenja. Ovaj se
pristup naziva aktivno upravljanje redovima čekanja (AQM – engl. Active Queue
Management), a preporučuje ga IETF u RFC-u 2309 [2]. Održavanjem male veličine redova
čekanja smanjuje se kašnjenje, što je od posebne važnosti za interaktivne tokove čija radna
svojstva direktno ovise o kašnjenju. Aktivno upravljanje redovima čekanja osigurava da u
spremnicima gotovo uvijek ima mjesta za prihvatanje pristiglog paketa, čime se eliminira
mogućnost Lock-Out-a* i povećava pravednost prema bursty tokovima. Tehnike aktivnog
upravljanja baferima (mogu da posredstvom ECN platforme (engl. Explicit Congestion
Notification) saraĎuju sa TCP mehanizmima kontrole zagušenja. Ovo je veoma bitno jer se
procenjuje da preko 90% internet saobraćaja koristi TCP protokol. Još jedna bitna prednost
AQM mehanizama jeste mogućnost njihove postepene i nesmetane implementacije u
postojeću arhitekturu interneta.

*Lock out-predstavlja jedan od najvećih problema Drop Tail-a, to je fenomen koji je najčešće uzrokovan sinhronizacijom TCP
predajnika.Odnosno, on nastaje u situacijama kada Drop Tail omogući jednom ili nekolicini tokova zauzimanje cijelog spremnika na
usmjereniku.

3
Aktivno upravljanje redovima 4

1. AKTIVNO UPRAVLJANJE REDOVIMA ČEKANJA


U nekim slučajevima ispuštanje paketa može biti veoma važno u prevenciji zagušenja, npr.
signalizacija TCP koja čini veliki dio saobraćaja u današnjim mrežama. Način na koji mrežni
čvor ukaže izvoru da je riječ o zagušenju, utječe na kašnjenje i troughput koje će pojedina
TCP sesija iskusiti. Metod ispuštanja paketa ukoliko doĎe do pretrpavanja reda se zove tail
dropping.[3] Drop Tail je najjednostavniji mehanizam koji prihvata svaki nadolazeći paket
ukoliko ima mjesta u meĎuspremniku, a ukoliko je meĎuspremnik pun, on počne da odbacuje
svaki paket koji stigne. Ovakav način odbacivanja je najjednostavniji za implementaciju, ali
rezultuje problemima koji utiču na degradaciju QoS-a: zaključanje, punjenje redova do vrha,
globalna sinhronizacija.[4] Pogotovo ukoliko dolazi do stalnih zagušenja ovaj se mehanizam
ne ponaša zadovoljavajuće, jer može dovesti do povećanja kašnjenja, odbacivanja skupine
paketa, nepravilne razdiobe propusnog opsega i globalne oscilacije prometnih izvora. U cilju
rješavanja ovih problema objavljen je odreĎen broj algoritama za aktivno upravljanje
redovima čekanja (Active Queue Management (AQM) mehanizmi).

Slika 1.1. Osnovni zadatak AQM-a[26]

Mrežni čvorovi moraju vladati s dužinom redova saobraćaja. AQM se sastoji od ispuštanja ili
markacije paketa prije nego li red postane pun, i nezavisan je od vrste posluživanja reda,
odnosno od informisanja pošiljatelja o pojavi zagušenja prije nego što doĎe do prenapunjenost
meĎuspremnika.[5] U posljednjih desetak godina razvijen je veći broj AQM mehanizama za
ranu dojavu zagušenja. S obzirom na temelj za procjenu zagušenja, moguće je ove mehanizme
podijeliti u tri osnovne skupine (Slika 1.2) :
 Mehanizme koji se temelje na veličini reda čekanja;
 Mehanizmi koji procjenu stepena zagušenja temelje na brzini dolaznog prometa;
 Kombinirani mehanizmi.

Slika 1.2. Podjela AQM mehanizama [6]


4
Aktivno upravljanje redovima 5

2. AQM ALGORITMI KOJI SE TEMELJE NA VELIČINI


REDA ČEKANJA

Odbacivanje paketa je neučinkovito te je isplativije definirati metode nadzora, predviĎenja i


preventivnog reagiranja na uvjete koji predstoje zagušenju mreže. U tu svrhu razvijene su
metode kontrole zagušenja aktivnim upravljanjem redom čekanja i izbjegavanje zagušenja.
RED (Random Early Discard) koristi statističke metode kako bi ocijenio da li je potrebno
odbaciti paket prije nego se red čekanja napuni i doĎe do zagušenja mreže. Ovaj mehanizam
prati kolika je prosječna dužina reda čekanja i izračunava je svaki put kada u red stigne novi
paket. Ciljevi pri dizajniranju RED algoritma bili su minimizacija kašnjenja i gubitka paketa,
osiguranje visoke razine iskorištenja mreže i izbjegavanje negativne diskriminacije bursty
prometa.

Slika 2.1. Funkcionisanje RED mehanizma**

Pri proračunu prosječne veličine reda čekanja u obzir se uzima i period u kojem je red bio
prazan (period neaktivnosti), i to na način da se procijeni broj m malih paketa koji su se mogli
transmitirati tijekom perioda neaktivnosti. Po završetku perioda neaktivnosti nova se
vrijednost prosječne veličine reda čekanja računa kao da je m puta paket stigao u prazan red
čekanja. Kako avg (prosječna veličina reda čekanja) raste od minth do maxth tako vjerojatnost
označavanja paketa pb linearno raste od 0 do maxp:

max p avg min th


pb
max th min th

Efikasnost RED algoritma zavisi, u velikoj mjeri, o prikladnom izboru vrijednosti parametara
za očekivani profil mrežnog prometa. Iako je RED najpoznatiji i najčešće korišteni algoritam
aktivnog upravljanja redovima čekanja, smjernice za izbor vrijednosti parametara RED
mehanizma nisu dobro definirane. Ideja da veličina reda čekanja može služiti kao jedini
indikator zagušenja jer u potpunosti predstavlja opterećenost mreže potvrĎena je simulacijama
koje pretpostavljaju idealiziranu verziju mrežnog prometa i značajno se razlikuju od stvarnog
IP prometa. Na primjer, u većini simulacija korišten je ograničen broj tokova koji su velikog
trajanja i konstantnog vremena obilaska (RTT- engl. round trip time). Takav je promet blage
prirode, što je u suprotnosti s bursty prirodom prometa i rezultirajućim varijacijama
opterećenja mreže kod stvarnih IP mreža. Stoga, u realnim uvjetima prometa, korištenje
predloženog RED mehanizma nerijetko ne daje bolje rezultate od obične Drop Tail tehnike.

**RED mehanizam koristi EWMA (eng. exponentially weighted moving average – ponderirani eksponencijalni pomični prosjek) filtra
proračunava prosječnu veličinu reda čekanja.

5
Aktivno upravljanje redovima 6

Upravo ova činjenica rezultira razvojem različitih varijacija RED mahanizma, u cilju
njegovog poboljšanja kao što su: FRED (engl. Flow RED), SRED (engl. Stabilized RED),
DSRED (engl. Double Slope RED), ARED (engl. Adaptive RED), PD-RED (Proporcionalno-
derivacijski RED), LR-RED (engl. Loss Ratio-based RED), SHRED (engl. Short Lived Flow
Friendly RED), StoRED (engl. Stochastic RED), RIO (engl. RED In or Out). Pored RED
algoritama, postoji i tkz. CBT (engl. Class Based Thresholds) algoritam upravljanja redovima
čekanja koji nastoji zaštititi TCP tokove od neaktivnih UDP tokova, ali i izolirati neke tipove
UDP prometa od drugih. Naime, UDP tokovi koji služe za prenos multimedijskih aplikacija
su obično konstantne male brzine i osjetljivi su na utjecaj brzih nereaktivnih tokova, posebno
na povećanje broja odbačenih paketa. Stoga CBT nastoji sačuvati pozitivna svojstva RED
algoritma, ograničiti utjecaj nereaktivnih tokova, ali i omogućiti UDP tokovima zauzimanje
odreĎenog dijela ukupnog kapaciteta bez potrebe za voĎenjem statistike o svakom aktivnom
toku. CBT se može promatrati kao pojednostavljenje FRED algoritma. Ideja CBT algoritma je
izolirati TCP promet od utjecaja ostalog prometa na način da se ograniči prosječan broj
ostalih paketa koji se istovremeno mogu nalaziti u redu čekanja. TakoĎer mehanizam koji
poboljšava RED je PI regulator (proporcionalno-integracijski regulator) čiji je cilj eliminirati
grešku koju algoritmi poput RED-a imaju u stabilnom stanju i koja dovodi do oscilacija u
veličini reda čekanja pri konstantnom opterećenju usmjernika. Greškom se smatra razlika u
veličini reda čekanja pri stacionarnim uvjetima i konstantne referentne vrijednosti. Kako
prema teoriji upravljanja integracijski regulatori u stabilnom stanju nemaju pogrešku, PI
algoritmom se nastoji zadržati veličina reda čekanja oko referentne vrijednosti, neovisno o
opterećenju. Nažalost, istraživanja dokazala da AQM sa PI kontrolerom nije robustan kao
odgovor na nesigurnosti u mreži i povećanju broja izvora.[11]

Slika 2.2. PI integrator [10]

Kako su kod većine AQM mehanizama parametri algoritma postavljeni za rad na tačno
odreĎenoj radnoj tački, radna svojstva su im u realnom scenariju s promjenjivim mrežnim
uvjetima loša, predlaže se korištenje AQM mehanizma koji se temelji na upravljanju
korištenjem neizrazite logike (engl. fuzzy logic). Autori su na temelju lingvističkog modela (a
ne matematičkog kao što je to bio slučaj kod do sada spomenutih AQM mehanizama) sistema
razvili FEM (engl. Fuzzy Explicit Marking) mehanizam s nelinearnom funkcijom
vjerojatnosti označavanja paketa, koji nastoji održati veličinu reda čekanja oko ciljane
vrijednosti.

Slika 2.3. FEM sistem[10]


6
Aktivno upravljanje redovima 7

Postoje i CHOKe i PUNSI algoritmi, čije će osobenosti biti navedene u nastavku. Osnovni cilj
CHOKe (engl. CHOse and Keep for responsive flows, CHOse and Kill for unresponsive
flows) algoritma jest što nastoji jednostavnijim mehanizmom kontrolirati nereaktivne tokove.
Predlaže se mala modifikacija običnog FIFO reda čekanja upravljanog RED algoritmom.
CHOKe algoritam prikazan je slikom 2.4, gdje osjenčana polja predstavljaju funkcije CHOKe
algoritma, dok su ostale funkcije standardnog RED algoritma.

Slika 2.4. CHOKe algoritam (preuzeto iz [8])

Ideja ovog algoritma je u tome da sadržaj FIFO reda čekanja tvori „dovoljnu statistiku“
dolaznog prometa i, kao takav, može se koristiti za kažnjavanje nereaktivnih tokova. Pri
dolasku paketa u zagušeni usmjernik (onaj kojemu je veličina reda čekanja veća od minth)
CHOKe odabire slučajni paket iz reda čekanja (kandidat za odbacivanje) i usporeĎuje ga s
pristiglim paketom (slika 2.5.).

Slika 2.5. Osnovi princip rada CHOKe[26]

Ako paketi pripadaju istom toku, oba se odbacuju, a ako pripadaju različitim tokovima
slučajno se odabrani paket ostavlja dok se tek pristigli paket dodaje u FIFO red čekanja s
odreĎenom vjerojatnošću koja ovisi o stupnju zagušenja (ova se vjerojatnost računa kao u
RED algoritmu). Sa slike 2. Može se zaključiti da će se paketi nereaktivnih tokova češće
odbacivati od paketa reaktivnih tokova. CHOKe je vrlo jednostavan za implementaciju, ne
zahtijeva informaciju o aktivnim tokovima i kontrolira nereaktivne tokove. Ipak, CHOKe
ponekad kažnjava ne samo UDP tokove velike brzine, nego i TCP tokove. TakoĎer, CHOKe
nema dobre rezultate ako se u redu čekanja nalazi samo manji broj paketa nereaktivnih
tokova, što odgovara ranim fazama zagušenja. Nedostatke CHOKe algoritma pokušava
ispraviti PUNSI (Penalizing Unresponsive flows with Stateless Information).

7
Aktivno upravljanje redovima 8

Slika 2.6. PUNSI algoritam [9]

Razlika u odnosu na CHOKe je u tome što se kod PUNSI algoritma algoritma kandidati za
odbacivanje biraju samo u slučaju da tek pristigli paket pripada nereaktivnom toku. Dakle, na
TCP pakete primjenjuje se isključivo standardni RED algoritam. Razlika je, takoĎer, i u tome
što pri odabiru kandidata za odbacivanje iz reda čekanja vjerojatnost odabira nije uniformna,
već geometrijska tako da paketi koji su meĎu zadnjima primljeni u red imaju veću
vjerojatnost biti odabrani od paketa na početku reda čekanja. Naime, pokazalo se, u slučaju
kada praskoviti UDP promet uzrokuje zagušenje na usmjerniku, da je veća koncentracija
paketa toga toka na kraju (engl. tail) nego na početku (engl. head) reda čekanja. Stoga se
prikladnom geometrijskom funkcijom distribucije vjerojatnosti odabira paketa iz reda čekanja
povećava vjerojatnost da će odabrani paket pripadati istom nereaktivnom toku kao i pristigli
paket. Na taj način PUNSI štiti reaktivne tokove u intervalima zagušenja i osigurava da velika
većina (oko 99%) odbačenih paketa pripada upravo nereaktivnim praskovitim tokovima.

8
Aktivno upravljanje redovima 9

3. AQM ALGORITMI KOJI SE TEMELJE NA BRZINI


PROMETA

3.1 BLUE

Problem kod algoritama koji su obraĎeni u prethodnom naslovu ogleda se u u tome što se kao
indikator intenziteta zagušenja koristi veličina reda čekanja. Stoga se predlaže korištenje
BLUE algoritma, koji je suštinski različit od do sada spomenutih algoritama. Naime, prema
BLUE algoritmu redom čekanja se ne upravlja s obzirom na trenutnu ili prosječnu veličinu
reda, već s obzirom na iskorištenost kapaciteta i učestalost odbacivanja paketa. BLUE ima
samo jednu vjerovatnoća označavanja (ili odbacivanja) paketa, pm. Ukoliko zbog popunjenosti
spremnika konstantno dolazi do odbacivanja novopristiglih paketa, BLUE povećava
vjerojatnost pm, čime se se povećava brzina kojom se izvorima dojavljuje o nastanku
zagušenja. S druge strane, ako se red čekanja isprazni pa kapacitet kanala ostane neiskorišten,
BLUE smanjuje vjerojatnost označavanja paketa. Ovakav način rada omogućuje BLUE
algoritmu da „nauči“ optimalnu brzinu dojavljivanja zagušenja izvorima paketa. Algoritam je
prikazan na slici 3.1.:

Slika 3.1. BLUE Algoritam [12]

Na prethodnoj slici možemo vidjeti da se vjerovatnoća označavanja paketa ažurira i kada


veličina reda čekanja premaši odreĎenu vrijednost. Ovo omogućava prihvatanje prolaznih
bursty paketa te olakšava kontroliranje kašnjenja u situaciji kada je veličina spremnika velika.
Pri proračunu vjerovatnoće označavanja paketa pm BLUE algoritam se koristi trima
parametrima koji odreĎuju koliko će se brzo ta vrijednost mijenjati. Parametar freeze_time
odreĎuje minimalan vremenski interval izmeĎu dva ažuriranja vrijednosti pm. Time se
omogućuje da utjecaj promjene u vjerovatnoći označavanja paketa stupi na snagu prije nego
se vjerovatnoća opet ažurira. Kako bi se izbjegla globalna sinkronizacija, vrijednost parametra
freeze_time treba biti slučajno odabrana.

Ostala dva parametra odreĎuju iznos za koji se vrijednost pm inkrementira ako doĎe do
gubitka paketa zbog popunjenosti spremnika (δ1), odnosno iznos za koji se vrijednost
dekrementira ako kapacitet kanala ostane neiskorišten (δ2). Budući da do gubitka paketa
zbog popunjenosti spremnika može doći samo ako je algoritam upravljanja zagušenjem
prekonzervativan, a do neiskorištenosti kapaciteta ako je algoritam upravljanja zagušenjem
9
Aktivno upravljanje redovima 10

prekonzervativan ili preagresivan, vrijednost parametra δ1 treba biti veća od vrijednosti δ2.
Vrijednost parametra freeze_time treba se podesiti prema vremenu obilaska (RTT - eng. round
trip time) tokova na ruteru, tako da promjene u vjerovatnoći označavanja paketa djeluju na
izvore paketa prije novog ažuriranja vrijednosti pm. Dakle, za veze s velikim kašnjenjem (npr.
Satelitske veze) vrijednost parametra freeze_time bi trebala biti veća nego kod veza s malim
kašnjenjem. Parametri δ1 i δ2 trebaju se podesiti tako da, ovisno o parametru freeze_time,
omoguće promjenu vrijednosti vjerovatnoće pm iz 0 u 1 (i obratno) u onom vremenskom
intervalu u kojem može doći do velike promjene u opterećenju usmjernika (najčešće 5 do 30
sekundi). Ovo je u suprotnosti s algoritmima koji upravljaju redovima čekanja prema veličini
reda čekanja, kod kojih se vjerovatnoća označavanja (i odbacivanja) paketa može promijeniti
iz 0 u 1 u samo nekoliko milisekundi, čak i pri konstantnom opterećenju rutera. Spomenimo i
tkz. Stohastic Fair BLUE (SFB) algoritam koji je proširenje BLUE algoritma koje se temelji
na Bloomovom filtru. Cilj je ovog mehanizma identificirati i ograničiti nereaktivne tokove
korištenjem malog skupa informacija o tokovima.

3.2 GREEN

Zagušenja u mreži vode do gubljenja paketa, mehanizmi za aktivno upravljanje redovima kao
što su RED i BLUE su uvedeni da rano detektuju zagušenja i na odgovarajući način reagiraju
na ta zagušenja koji bi inače ispunili red i uzrokovali burst izgubljenih paketa. Osim toga,
BLUE ima izravnu primjenjivost pri poboljšanju performansi multimedijalnih aplikacija zbog
smanjenja brzine gubitaka paketa i čekanja u redu kašnjenja umreženih aplikacija kao što su
interaktivni audio i video. Veza propusnosti kod Green algoritma zadovoljava slijedeću
jednačinu, pod odreĎenim uslovima:

MSS c
BW ,
RTT p

gdje je BW propusnost veze, MSS najveća veličina segmenta, RTT round trip vrijeme, p je
vjerovatnoća gubitka paketa i c je konstanta koja zavisi o priznanju strategije koja se koristi
(npr., kasni ili svaki paket) kao i da li se pretpostavlja da li se paketi gube, povremeno ili
slučajno.[19] Osnovni rad GREEN-a ne zahtijeva informacije o stanjima svakog toka. N i
MSS se mogu lako procijeniti. GREEN ima minimalne zahtjeve za stanja. GREEN algoritam
se opisuje sljedećim zakonom upravljanja:

Pt T Pt t U t

gdje je
t X t u Ct
1 x 0
U x
1 x 0
t max abs t , P

gdje je X t procijenjena brzina dolaska na linku (bps), C t je kapacitet linka, u je cilj


korištenja, je kontrolni dobitak, P(t) je oznaka za brzinu ispada, P odreĎuje minimalne

10
Aktivno upravljanje redovima 11

1
prilagodbe i je ažurirana brzina[20]. Da bi vizualizirali GREEN algoritam, potrebno je
T
izvršiti prilagoĎenje P(t), P t za sve T sekunde, kao funkcije od X t u C t je
prikazan za GREEN i linearni integrator zakona upravljanja na slici 3.2.

Slika 3.2. Green P(t) (lijevo) i linearni integrator P(t) (desno) [18]

1
Kontrolna dobit i minimalna prilagodba P bi trebali biti skalirani u omjeru , da bi se
C
napravila stabilnost invarijantna na kapacitet linka. Ažurirani interval T treba biti manjeg
reda od najmanjeg RTT-a u mreži. GREEN primjenjuje znanje o stabilnom ponašanju TCP
konekcije na ruteru da intelegntno izbaci (ili označi) pakete za obavještavanje o zagušenju.
Pomoću ovog mehanizma, ruter može dati svakoj konekciji njegov fer udio pojasne širine a
istovremeno sprječava stvaranje redova paketa. Propusnost TCP konekcije zavisi, izmeĎu
ostalog, od round trip vremena (RTT) i vjerovatnoće da su paketi izbačeni u mreži. Osnovni
rad GREEN-a ne zahtijeva informacije o stanjima svakog toka. N i MSS se mogu lako
procijeniti. GREEN ima minimalne zahtjeve za stanja. Poznato je da konvergencijska brzina
integratora nije optimalna[18]. Za vrijeme dolaska na link važna je brza kontrola prema
ciljnom kapacitetu, jer ukoliko je dug period gdje je brzina dolaska iznad kapaciteta, stvara se
mala iskorištenost a tamo gdje je period brzine dolaska iznad kapaciteta stvara se čekanje i
kašnjenje. GREEN poboljšava integralni zakon upravljanja sa metodom prvog reda, na način
što ograničava minimalne prilagodbe za obliježenu vjerovatnoću P(t) do P po ažuriranom
intervalu.
Odlične performanse tradicionalnog GREEN-a dolaze sa činjenicom da tradeoff - ruter mora
biti u stanju zaključiti RTT toka. U radu [14] predstavljeni su preliminarni rezultati za
GREEN ruter gdje je pretpostavljeno da se RTT zna na ruteru. GREEN ne smije koristiti niti
jedno stanje toka da bi dokazao da posjeduje beneficiju za pravedno rasporeĎivanje. Stoga,
APU Kapadia[14] predstavlja dva pristupa za procjenu RTT-a bez potrebe stanja toka:
UgraĎeni RTTs i IDMaps.

3.3 YELLOW

Yellow je algoritam koji je nastao kombinacijom najboljih osobina RED i BLUE algoritama.
Ovaj algoritam koristi faktor opterećenja (link utilization), kao glavnu mjeru za upravljanje
zagušenjem.[21]
Osnovna mjera zagušenja kod YELLOW mehanizma upravljanja redovima čekanja [21] je
razlika izmeĎu kapaciteta kanala i brzine dolaznog prometa. Uz ovu, dodatna je i manje važna
mjera zagušenja trenutna veličina reda čekanja. YELLOW algoritam periodički ispituje
opterećenje kanala te za svaki vremenski interval odreĎuje funkciju upravljanja redom

11
Aktivno upravljanje redovima 12

čekanja i faktor opterećenja kanala. Ako je q trenutna veličina reda čekanja, a c kapacitet
kanala, tada je YELLOW algoritam dan s:

U svakom intervalu, ažurira se funkcija upravljanja redom čekanja prema izrazu:

q ref
max QDLF, za q q ref
1 q q ref
f qt
q ref
za 0 q q ref
1 q q ref

gdje QDLF odreĎuje gornju graničnu vrijednost brzine pražnjenja reda čekanja, qref je
referentna veličina reda čekanja (obično 20-30 paketa), a α i β su parametri koji
predstavljaju kompromis izmenu brzine odziva i stabilnih radnih svojstava sustava.
Parametar γ je faktor iskorištenja kanala.
Dostupni virtualni kapacitet ĉ ažurira se korištenjem funkcije upravljanja redom
čekanja, a zatim se računa faktor opterećenja z:
ĉ(q)=f(q)c
z = (brzina dolaznog prometa) / ĉ(q)
Vjerojatnost označavanja paketa ažurira se prema izrazima:

p z /c za z 1
p p / zc za z 1
p za 1 z 1

Dakle, ako je iskorištenost kanala unutar ciljanog intervala [1, 1+δ), vjerojatnost
odbacivanja paketa se neće mijenjati. Ako je trenutna iskorištenost kanala z veća od
ciljanog intervala, vjerojatnost označavanja paketa će se povećati, a u suprotnom će se
smanjiti. Što je razlika izmeĎu trenutne i ciljane iskorištenosti kanala veća, to će i
vrijednost promjene vjerojatnosti označavanja biti veća. Parametar δ definira raspon
ciljanog pojasa iskorištenosti kanala.

Vrijednost parametra α treba biti veća od vrijednosti parametra β, budući da je


poželjno što prije smanjiti broj paketa u redu čekanja ako je njegova veličina premašila
referentnu vrijednost. Parametar Δ utječe na brzinu promjene vjerojatnosti označavanja paketa
u slučaju nastanka ili prestanka zagušenja. Veća vrijednost ovog parametra omogućuje bržu
reakciju na promjene u stanju mreže, ali i uzrokuje veće oscilacije u veličini reda čekanja na
usmjerniku, dok će s manjom vrijednošću te oscilacije biti manje, ali će i vrijeme dovoĎenja
sistema u stabilno stanje biti duže. Autori predlažu korištenje dvije različite vrijednosti ovog
parametra, jedne za povećanje (Δ i), a druge za smanjenje vjerojatnosti označavanja paketa
(Δd). Stoga parametri Δi i α definiraju rad algoritma u trenucima kada je red čekanja veći od
referentne vrijednosti, a Δd i β u trenucima kada kapacitet kanala nije dovoljno iskorišten.[21]
Autori su u simulacijama pokazali da uvoĎenje funkcije upravljanja redom čekanja kod
YELLOW algoritma kao dodatne mjere zagušenja (uz brzinu dolaznog prometa kao osnovnu
mjeru zagušenja) za rezultat ima robusnija radna svojstva s obzirom na promjenu vremena
obilaska (RTT) u odnosu na druge algoritme koji se temelje na brzini dolaznog prometa.
Pokazano je, takoner, da korištenje YELLOW algoritma rezultira manjim kašnjenjem i
varijacijom kašnjenja na usmjernicima nego u slučaju korištenja AVQ ili BLUE mehanizma.

12
Aktivno upravljanje redovima 13

3.4 JOŠ NEKI AQM ALGORITMI

Selective Fair Early Detection (SFED) algoritam temelji se na kontroliranju brzine prometa
na usmjerniku i može se koristiti i s veoma jednostavnim algoritmima za odreĎivanje
redoslijeda posluživanja pristiglih paketa, poput FIFO algoritma. SFED održava filtar s
kreditima (eng. token bucket) za svaki aktivni tok (ili grupu tokova) na usmjerniku. Brzina
punjenja kredita u skladu je s dodijeljenim kapacitetom za svaki tok. Odluka o odbacivanju
(označavanju) paketa nekog toka ovisi o trenutnom broju kredita u filtru promatranog toka.
Pri svakom dodavanju paketa u red čekanja na usmjerniku smanjuje se broj kredita u filtru
toka kojem pristigli paket pripada. SFED osigurava ranu detekciju i dojavu zagušenja
izvorima.

Slika 3.4 Vjerojatnost odbacivanja paketa u filtru s kreditima

Nedostatke SFED algoritma (složenost algoritma) , rješava FABA (Fair Adaptive Bandwidth
Allocation) algoritam za upravljanje redovima čekanja. To je proširenje SFED algoritma koje
zahtijeva O(1) računskih operacija pri dodavanju paketa u red čekanja i pri posluživanju
paketa, što FABA algoritam čini skalabilnim i znatno pogodnijim izborom za korištenje u
praksi od SFED-a. Autori su simulacijom pokazali da, u odnosu na RED i CHOKe, korištenje
FABA algoritma rezultira pravednijom podjelom ukupnog kapaciteta kanala meĎu aktivnim
tokovima, čak i za veliki broj HTTP, FTP ili Telnet veza (oko 1000 aktivnih veza).

Algoritam AVQ radi na principu da se stvarnom redu čekanja pridružuje i virtualni red
čekanja sa spremnikom jednake veličine kao kod stvarnog reda čekanja i pripadnim
virtualnim kapacitetom manjim od kapaciteta stvarnog kanala. Pri svakom dolasku paketa u
stvarni red čekanja ažurira se i popunjenost virtualnog reda. Paketi se označavaju (ili
odbacuju) ako done do preteka virtualnog spremnika. Virtualni se kapacitet kanala ažurira
tako da ukupan dolazni promet bude jednak ciljanoj iskorištenosti stvarnog kapaciteta kanala.

Teško je postići zadovoljavajući kompromis izmeĎu kašnjenja na ruterima i iskorištenja


ukupnog kapaciteta kanala korištenjem konstantne vrijednosti parametra γ (ciljano
iskorištenje raspoloživog kapaciteta) AVQ algoritma. Ovo uzrokuje nastanak poboljšane
verzije AVQ algoritma, koja je nazvana SAVQ.

13
Aktivno upravljanje redovima 14

4. KOMBINIRANI AQM ALGORITMI

Što se tiče kombiniranih algoritama za aktivno upravljanje redovima postoje sljedeći


algoritmi:
REM (Random exponentional marking) i SVB (Stabilized virtual buffer), AQM algortimi
koji uzimaju u obzir stanje reda i opterećenja,te RaQ kombinirani algoritam.
Jedno od osnovnih svojstava REM algoritma je da se brzina dolaznog prometa stabilizira oko
kapaciteta kanala, a veličina reda čekanja oko ciljane (relativno male) vrijednosti, neovisno o
broju aktivnih tokova na usmjerniku. REM algoritam održava varijablu koja predstavlja mjeru
zagušenja na usmjerniku, a naziva se cijena. Još jedno svojstvo ovog algoritma je da
vjerojatnost označavanja (ili odbacivanja) paketa s kraja na kraj mreže, a koju opaža krajnji
korisnik, ovisi o sumi cijena (mjera zagušenja) na svim usmjernicima preko kojih promatrani
paket prolazi kroz mrežu. Ukoliko pogledamo narednu sliku uočiti čemo niz zanimljivosti, o
kojima će nešto više biti rečeno u implementacijskom dijelu. Veće propusnosti i manji udio
odbačenih paketa samo su neke od prednosti REM-a nad RED-om.

Slika 4.1. Vjerojatnost odbacivanja paketa za REM i RED [15]

Poput REM-a, i SVB algoritam [16] kao mjeru zagušenja koristi dolaznu brzinu paketa i
veličinu reda čekanja. SVB održava virtualni red čekanja i ažurira mu stanje s obzirom na
dodavanje paketa u i posluživanje paketa iz stvarnog reda čekanja. SVB algoritam za
označavanje paketa na usmjernicima relativno sličan AVQ algoritmu. Ipak, za razliku od
AVQ-a, gdje je veličina virtualnog spremnika konstantna i jednaka veličini stvarnog
spremnika na usmjerniku, a kapacitet virtualnog kanala je podesiv, kod SVB-a je brzina
posluživanja paketa iz virtualnog reda čekanja jednaka stvarnom kapacitetu kanala, dok se
veličina virtualnog spremnika podešava u skladu s brzinom dolaznog prometa. Takoner,
važna je razlika menu ovim algoritmima u tome što kod SVB-a vjerojatnost odbacivanja
paketa ovisi i o veličini reda čekanja, a ne samo o brzini dolaznog prometa, kao što je to
slučaj kod AVQ algoritma. Simulacijama će biti pokazano da ovaj algoritam ima propusnost i
prosječnu veličinu reda čekanja otprilike jednaku kao kod RED-a i REM-a, ali i znatno manju
standardnu devijaciju veličine reda čekanja( kao što se vidi u tabeli 4.1.).

U slučaju korištenja SVB algoritma za dojavu zagušenja označavanjem paketa, pri povećanju
broja aktivnih tokova udio odbačenih paketa ostaje malen (udio je konstantno manji od 0,1%),
iskorištenost kapaciteta kanala ostaje visoka, a veličine reda čekanja nema većih oscilacija.

14
Aktivno upravljanje redovima 15

Tabela 4.1. AQM mehanizmi s odbacivanjem paketa[16]

Posebno dobra svojstva SVB je pokazao za promet koji je mješavina kratkih i dugih tokova,
gdje, za razliku od REM-a I RED-a, povećanje broja aktivnih kratkih tokova ne uzrokuje
povećanje prosječne veličinereda čekanja.

U [22] se predlaže korištenje još jednog algoritma koji u obzir uzima i veličinu reda čekanja i
brzinu prometa. To je AQM algoritam koji uzima u obzir stanje reda i opterećenje. Pri
računanju vjerojatnosti odbacivanja paketa koriste se dvije funkcije: jedna za izračun
prosječne veličine reda čekanja, a druga za procjenu brzine promjene te veličine.
Prosječna veličina reda čekanja se računa korištenjemEWMA filtra. Procjena brzine dolazaka
paketat računa se korištenjem eksponencijalnog usrednjavanja.

Algoritam nastoji stabilizirati veličinu reda čekanja oko referentne vrijednosti na način da
predviĎa promjenu veličine reda čekanja u kratkom vremenskom intervalu te prilagoĎava
vjerovatnost odbacivanja paketa tako da buduća razlika izmeĎu referentne i prosječne
veličine reda čekanja bude minimalna.Vjerovatnost odbacivanja paketa se računa iz procjene
brzine dolaska paketa.

U usporedbi s RED, A-RED i BLUE algoritmima, predloženi algoritam u dinamičkim


uvjetima prometa ima mali udio odbačenih paketa i visoku iskoristivost kanala. Algoritam
uspješno zadržava veličinu reda čekanja oko referentne vrijednosti, s malom standardnom
devijacijom.

Pored prethodna tri gore navedena navest ćemo još jedan RaQ kombinirani AQM algortiam.
U [23] se predlaže korištenje RaQ (Rate and Queue-based) algoritma, još jednog mehanizma
za upravljanje redovima čekanja koji se temelji na veličini reda i brzini dolaznog prometa. Sa
stajališta teorije upravljanja, RaQ se može promatrati kao upravljanje korištenjem dvostruke
povratne veze. Unutrašnja povratna veza služi za upravljanje brzinom tako da RaQ brzo
reagira na promjene u stanju mreže, dok se vanjska koristi za kontrolu veličine reda čekanja
oko referentne vrijednosti, čime se na usmjerniku postiže predvidljivo kašnjenje s malom
varijacijom. RaQ koristi proporcionalnu regulaciju brzine dolaznog prometa i proporcionalno
integracijski regulator veličine reda čekanja.

15
Aktivno upravljanje redovima 16

6. POREĐENJE NEKIH AQM ALGORITAMA


U ovom naslovu biće predstavljena samo neka od mogućih poreĎenja AQM algoritama,
detaljniji opisi biće u implementacijskom dijelu rada. Sljedeća tabela prikazuje osnovne
razlike pojedinih AQM mehanizama:

Tabela 6.1. Poređenje AQM mehanizama[26]

 Sa 80% opterećenja sve tri vrste AQM mehanizama ne pružaju pojačanje;


 ARED daje performanse kao i Drop Tail;
 Sa ECN omogućeni PI i REM dalju bolje rezultate pri 90%-tnom opterećenju nego
 Drop Tail;
 Sa 90%-tnim opterećenjem PI daje bolje performance nego Drop Tail;
 Sa 98%-tnim i 105%-tnim opterećenjem PI i REM su malo bolji nego Drop Tail i
ARED;

Na slici 12. predstavljen je AQM scenario, gdje su A-J izvorni čvorovi, 2-destinacijski čvor i
1-čvor gdje su smješteni AQM mehanizmi i to: RED : minth = 20% i maxth = 80% , REM: γ =
0.01 φ = 1.003 α = 0.1 update time = 0.01 bo = 55 i GREEN: ΔT = 10ms, ΔP = 0.001, Cl =
0.97% , K = 0.1.

Slika 6.1. Primjer AQM scenarija [20]

Slika 6.2. Rezultati simulacije[20]


16
Aktivno upravljanje redovima 17

Slika 6.2. prikazuje rezultate koji pokazuju da su REM i Green izloženi niskim kašnjenjima u
redu čekanja pri svim opterećenjima.To je rezultiralo da gotovo nema gubitaka paketa pri
korištenju ovih AQM algoritama. Ova problematika će biti detaljnije razmatrana u
implementacijskom dijelu rada. Na slici 6.3. predstavljeno je poreĎenje AQM algoritama koji
potiču iz iste skupine tj. bazirani na brzini prometa. Osnovne karakteristike ovih algoritama
su: Blue-> Velika varijacija kašnjenja pri dinamičnom prometu;
Yellow->Brz odgovor, stabilan red, malo kašnjenje u redu čekanja.

Slika 6.3. Poređenje Blue i yellow algoritama[21]

U zavisnosti od propusnosti i opterećenja, na slici 6.4. je predstavljen potencijalni odabir


obilježavanja paketa.

Slika 6.4. Markiranje paketa u zavisnosti od propusnosti i opterećenja[25]

Kao što je prikazano na slici 6.5., Green osigurava značajno bolju pravednost od drugih AQM
mehanizama. Krivulja za Drop Tail prikazuje pravednost(fairness) koja se očekuje se očekuje
pri najvećem broju gateway-a na Internetu. FRED nadmašuje Drop Tail i SFB, jer rasporeĎuje
barem dva paketa toka, prije označavanja paketa iz tog toka. To omogućuje puno veću
pravednost sve dok svaki tok održava jedan do dva paketa koji čekaju na gateway-u.SFB ima
manju pravednost, jer je osjetljiv na različite RTT-ove.

17
Aktivno upravljanje redovima 18

Slika 6.5. Poređenje indeksa pravednosti za različite tokove saobraćaja[19]

U slijedećoj tabeli dato je poreĎenje AQM mehanizama na osnovu pravednosti(fairness):

Tabela 6.2. Poređenje fairness-a za navedene AQM mehanizme[26]

Svaki od AQM algoritama ima svoje mane i vrline, i s pravom se može reći da ne postoji
idealni mehanizam.U narednoj tabeli biće predstavljeno poreĎenje AQM mehanizama prema
broju potrebnih predefinisanih parametara za svaki od algoritama.

Tabela 6.3. Poređenje AQM mehanizama na osnovu broja predefinisanih parametara[26]

18
Aktivno upravljanje redovima 19

ZAKLJUČAK

Kompanija Cisco(r) objavila je 18. juna. 2010. godine rezultate godišnje Cisco(r) Visual
Networking Index (VNI) prognoze, 2009-2014 u kojoj se predviĎa da će se globalni internet
saobraćaj do 2014. godine povećati bar četiri puta na više od 3/4 zetabajta, što je deset puta
više od količine ukupnog saobraćaja preko Internet protokol mreža u 2008. godini. Do 2014.
godine, IP saobraćaj privatnih korisnika (web surfovanje, instant poruke, video sadržaj koji
su kreirali sami korisnici, itd) zauzimaće rekordnih 87 %, dok će biznis IP saobraćaj (email,
glasovni sadržaj, HD i video konferensing na mreži) činiti 13 % ukupnog mjesečnog
globalnog IP saobraćaja. Za samo deset godina, prosječna brzina preuzimanja podataka preko
kućne Internet konekcije povećala se 35 puta[24]. Ove činjenice rezultuju da poboljšanje
nadzora zagušenja i algoritama upravljanja redovima čekanja na Internetu bude jedan od
najaktivnijih područja istraživanja u posljednjih nekoliko godina. Razlog tome je potražnja za
većom propusnosti mreže, odnosno opterećenje u internet mrežama često se povećava iznad
maksimalnog kapaciteta linkova. Cilj je razviti strategije koje će rasporediti dostupne resurse
(opseg i kapacitet bafera) na kapacitet saobraćaja na željeni način.
Pokazalo se da korištenje bilo kojeg AQM mehanizma značajno smanjuje udio odbačenih
paketa i kašnjenje na ruterima u odnosu na Drop Tail tehniku. Pritom ne dolazi do većeg
smanjenja iskorištenosti kanala, kao ni, kod većine promatranih algoritama, do značajnog
porasta standardne devijacije veličine reda čekanja. Iako su se neki algoritmi (ARED, FEM)
pokazali boljima od drugih (PI), ne može se reći da je neki algoritam aktivnog upravljanja
redovima čekanja u svim aspektima bolji od ostalih, posebno ako se u obzir uzme
jednostavnost simuliranih mrežnih scenarija.

19
Aktivno upravljanje redovima 20

REFERENCE

[1] Telfor2004, Beograd


[2] Braden B., Clark D., et.al, “Recommendations on queue management and
congestion avoidance in the Internet”, IETF RFC (Information)2309, April 1998.
[3] Telekomunikacije 9/28/2010. Naučno-stručni časopis za telekomunikacijske tehnologije
[4] KUTM Radni materijal- Predavanje 6, ETF Sarajevo
[5] K. I. Park, QoS in Packet Networks, Springer Science + Business Media, Inc., 2005.
[6] Aktivno upravljanje redovima čekanja na Internetu, dipl.ing Ante Kristić, listopad 2010.
[7] J. Chung, M. Claypool, “Dynamic-CBT and chips-Router support for improved
multimedia performance on the Internet”, Proc. of ACM Multimedia Conference, Nov. 2000
[8]Pan R., Parbhakar B., Psounis K., ”CHOKe, a Stateless Active Queue Management
Scheme for Approximating Fair Bandwidth Allocation”, Proceedings of IEEE INFOCOMM,
February 2000.
[9]Yamaguchi T., Takahashi Y., “A queue Management algorithm for fair bandwidth
allocation”, Computer Communications, April 2007.
[10] Hollot C.V., Misra V., Towsley D., Gong W., „Analysis and Design of Controllers for
AQM Routers Supporting TCP Flows“, IEEE Transactions on Automatic Control, June 2002.
[11] Fengyuan R. Y. R. and S. Xiuming (2002). Design of a Fuzzy Controller for Active
Queue Management, Computer Communications, vol. 25, pp. 847-883, Elsevier Science.
[12] {govindas, zaruba}@cse.uta.edu
[13] Fuzzy Proactive Queue Management Technique,Saman Taghavi Zargar, Mohammad
Hossein Yaghmaee, Amin Milani Fard
[14] Kapadia, W. Feng, R. H. Campbell, "Green: a TCP equation-based approach to active
queue management", UIUC Technical Report: UIUCDCS-R-2004-2408/UILU-ENG-2004-
1710, February 2004.
[15]Athuraliya S., Lapsley D.E., Low S.H., ”Random Exponential Marking for internet
congestion control”, IEEE Transactions on Network, June 2001.
[16] Dimitriou S., Tsaoussidis V., „Adaptive Head-to-Tail: Active Queue Management
based on implicit congestion signals“, Computer Communications, February 2009.
[17] Deng X., Yi S., Kesidis G., Das C.R., “Stabilised Virtual Buffer (SVB) – An Active
Queue Management Scheme for Internet Quality of Service”, IEEE Globecom, November
2002.
[18] S. Athuraliya and S. H. Low, "Optimization Flow Control with Newton-Like Algorithm"
Journal of Telecommunication Systems, vol. 15, pp. 345-358, 2000.
[19] GREEN: Proactive Queue Management over a Best-Effort Network ,Wu-chun Feng,
Apu Kapadia , Sunil Thulasidasa
[20] Techniques in Internet Congestion Control ,Bartek Peter Wydrowski, Submitted for
examination for the fulfilment of the degree of Doctor of Philosophy, February 2003.
[21] The Yellow active queue management algorithm, C. Long, B. Zhao, X. Guan, J. Yang,
Computer Networks, Volume 47, Issue 4, March 2005.
[22] Hong J., Joo C., Bahk S., ”Active queue management algorithm considering
queue and load states”, Computer Communications, November 2006.
[23] Sun J., Zukerman M., “RaQ: a robust active queue management scheme based on
rate and queue length”, Computer Communications, February 2007.
[24] http://www.cisco.com/global/YU
[25] ABE: Providing a Low Delay within Best Effort,IEEE Network Magazine May/June
2001
[26] Taxonomy of Active Queue Management Strategies in Context of Peer-to-Peer
Scenarios, Kálmán Graffi, Konstantin Pussep, Nicolas Liebau, Ralf Steinmetz, 2006
20
Aktivno upravljanje redovima 21

21

You might also like