200 likes | 329 Views
Coordonator ş tiinţific : Conf. Dr. Ing. Ştefan Stăncescu. Absolvent: Truică Marius. Facultatea de Electronică,Telecomunicaţii şi Tehnologia Informaţiei Universitatea “POLITEHNICA” din Bucureşti. Combaterea congestiei cu algoritmul Adaptive RED. Cuprins. Introducere
E N D
Coordonator ştiinţific: Conf. Dr. Ing. Ştefan Stăncescu Absolvent: Truică Marius Facultatea de Electronică,Telecomunicaţii şi Tehnologia Informaţiei Universitatea “POLITEHNICA” din Bucureşti Combaterea congestiei cu algoritmul Adaptive RED
Cuprins • Introducere • Congestia in reţelele de comunicaţie • Combaterea congestiei • Metode de prevenire a congestiei • Algoritmul RED (Random Early Detection) • Algoritmul Adaptive RED • Rezultatele simulărilor si interpretări • Concluzii
Introducere • Ce este o “reţea de calculatoare”? -o “reţea de calculatoare” este o colecţie de calculatoare autonome interconectate folosind o singură tehnologie. Spunem despre 2 calculatoare că sunt interconectate dacă sunt capabile să schimbe informaţie între ele. Reţelele pot fi de dimensiuni,tipuri şi forme diferite. • Clasificarea retelelor in functie de tehnologia de transmisia folosita 1. Reţele cu fir 2. Reţele wireless • Clasificarea retelelor in functie de dimensiune 1. Reţea locala 2. Reţea metropolitana 3. Reţea larg raspandita geografic • Clasificarea retelelor dupa topologia fizica 1. Reţele de tip magistrala 2. Reţele de tip stea 3. Reţele de tip inel 4. Reţele de tip arbore
Congestia in reţelele de comunicaţii • Congestiaapare odată cu supraîncărcarea reţelelor, definiţiile congestiei se concentrează asupra comportamentului reţelelor la încărcări mari sau foarte mari.Supraîncărcarea resurselor apare atunci când pe o legătura se doreşte a fi transmis un volum de date mai mare decât capacitatea sa. În prezent congestia este semnalată pe reţele prin detecţia pierderilor de pachete ca rezultat al aşteptării în coada ce depăşeşte o anumită limită. • Odata cu aparitia congestiei apar 3 fenomene: - întârzierea datorata cozilor de aşteptare - pierderea de pachete - Traficul este dominat de retransmisii care duc la scăderi ale lăţimii de bandă În cadrul unei reţele congestionate pe masură ce numarul de pachete care ajunge in coada gateway-ul creşte, creşte şi numărul de pachete aruncate.
Combaterea congestiei Congestia în reţelele de calculatoare trebuie descoperită si combătută încă dintr-o fază incipientă , pentru a nu avea o coadă supraîncărcată la ieşire, lucru care ar duce pană la urma la blocarea întregii reţele. Obiectivele pe care trebuie să le avem în cazul în care ne confruntăm cu o reţea congestionată sunt : • Un nivel al cozii medii cât mai mic • Întârzieri cât mai mici în reţea • Viteza de transmisie a informaţiei mare • Obtinerea unei rate de transfer cât mai mare • Evitarea sincronizarii globale care duce la nefolosirea eficientă a laţimii de bandă
Metode de prevenire a congestiei • TCP este orientat spre o strategie de control a congestiei, contrar unei alte variante posibile, şi anume: de evitare a congestiei. Altfel spus, TCP are nevoie, pentru a determina lărgimea de bandă disponibilă pentru conexiune, să creeze pierderi de pachete valide care ulterior vor fi retransmise. • Mecanismul de evitare a congestiei constă din modalităţi de "prezicere" a momentului în care se poate produce congestia şi apoi folosirea unor mecanisme de reducere a ratei de transmitere a pachetelor. Si toate acestea inainte să înceapă eliminarea (pierderea) pachetelor de date. • Algoritmi de prevenire a congestiei: • Algoritmul DECbit • Algoritmul RED (Random Early Detection)
Algoritmul RED • Algoritmul RED mai este cunoscut şi sub denumirea de Random Early Discard sau Random Early Drop. Acest algoritm funcţionează la nivelul router-ului. • Ideea de bază a algoritmului RED ( Random Early Detection ) este de a anunţa sursele de o congestie prin marcarea şi aruncarea unor pachete înainte ca fenomenul de congestie să apară. Pentru aceasta, RED se bazează pe controlarea dimensiunii medii a cozii, incadrând-o intre două praguri: minth si maxth. • Dimensiunea medie a cozii se calculează cu următoarea formula: • avg=(1-wq)*avg+wq*q
Algoritmul RED • Algoritmul RED generalizat este prezentat mai jos: Pentru fiecare pachet primit se calculează dimensiunea medie a cozii avg daca minth ≤ avg < maxth se calculează probabilitatea pa cu probabilitatea pa: marcheaza pachetul primit altfel daca maxth ≤ avg marcheaza pachetul primit pb ← maxp(avg-minth)/(maxth-minth) pa ← pb/(1-cont*pb)
Algoritmul Adaptive RED • Algoritmul RED are câteva puncte slabe cum ar fi: • RED nu funcţionează bine atunci când dimensiunea medie a cozii depăşeşte pragul maxth rezultând o scadere a ratei de transfer şi o rată mare de aruncare a pachetelor. • Dimensiunea medie a cozii variază în funcţie de nivelul de congestie şi poate ajunge foarte aprope de minth sau maxth. • Scopul nostru este de a rezolva aceste probleme cu un minim de modificări asupra algoritmului RED. • Această propunere păstrează structura de bază a algoritmului RED şi reglează doar parametrul maxp pentru a menţine dimensiunea cozii între pragurile minth şi maxth. • Varianta propusă are o serie de îmbunătăţiri faţă de RED fără a renunţa la alte beneficii ale acestuia. Astfel Adaptive RED reduce rata de aruncare a pachetelor şi intârzierile datorate cozii de asteptare.
Algoritmul Adaptive RED • Algoritmul Adaptive RED este prezentat mai jos: La fiecare interval de secunde: if (avg>target and maxp≤0.5) incrementăm maxp : maxp←maxp+α; elseif (avg<target and maxp≥0.01) decrementăm maxp: maxp←maxp*β Variabile: Avg:dimensiunea medie a cozii Parametri fixaţi: interval:0.5 sec target: acest parametru este pentru avg [minth+0.4*(maxth-minth),minth+0.6*(maxth-minth)]. α:factor de incrementare β:factor de decrementare
Network Simulator • Network Simulator 2 (NS) a aparut in anul 1989,ca o variantă a simulatorului de retele REAL (simulator conceput initial in scopul analizei comportamentului dinamic al fluxurilor şi al schemelor de control al congestiei). • NS 2 este disponibil pentru diferite platforme cum ar fi: Linux, Solaris, FreeBSD. • Este un simulator orientat pe obiecte,scris in C++,cu o interfată făcută de un interpretor OTcl. • NS foloseşte 2 limbaje de programare: • C++ • Otcl • Topologia utilizata:
Rezultatele simulărilor RED cu creşterea congestiei
Rezultatele simulărilor Adaptive RED cu creşterea congestiei
Rezultatele simulărilor Pana in secunda 25 Dupa secunda 25
Rezultatele simulărilor RED cu scăderea congestiei
Rezultate simulari Adaptive RED cu scăderea congestiei
Rezultatele simulărilor Pană in secunda 25 Dupa secunda 25
Concluzii • Detecția aleatoare timpurie (RED) reprezintă un mecanism eficient pentru evitarea congestiei la nivelul gateway-ului, în colaborare cu protocolul de transport din rețea. • Această variantă propusă are o serie de îmbunătăţiri faţă de RED fără a renunţa la alte beneficii ale acestuia. Acest lucru nu duce doar la o întârziere medie predictibilă a cozii, dar minimizează de asemenea posibilitatea depăşirii pragului maxth , reduce rata de pierderi a pachetelor si întârzierile datorate cozii de aşteptare. • Acest algoritm pare promiţător,dar nu facem nicio afirmaţie cum că acest algoritm este singurul sau cel mai bun însă ar putea fi utilizat în condţii de siguranţă în implementări RED în Internet.