Scopul algoritmicii de retea este combaterea strangularilor de retea
cauzate de diferite implementari. Pe langa tehnici specifice, sunt
cristalizate principiile crearii de solutii pentru evitarea strangularilor in
internet, inglobate in ceea ce se numeste algoritmica de retea sau teoria
algoritmilor de retea. Ea asigura cititorului ustensile pentru crearea
diferitelor implementari, pentru anumite contexte particulare si pentru
abordarea noilor strangulari care cu siguranta vor aparea in lumea in
permanenta schimbare a retelelor.
Algoritmica de retea sau teoria algoritmilor de retea trece dincolo de
crearea algoritmilor eficienti pentru sarcinile retelei, chiar daca acestia
au un rol important. In particular, teoria algoritmilor de retea recunoaste
importanta majora a abordarii sistemelor interdisciplinare pentru
fluentizarea implementarilor de retea. Algoritmica de retea este o
abordare interdisciplinara deoarece cuprinde domenii ca arhitecturi si
sisteme de operare (pentru cresterea vitezei serverului), proiectare
hardware (pentru cresterea vitezei componentelor de retea cum sunt
ruterele), si proiectarea de algoritmi (pentru proiectarea unor algoritmi
scalabili). Algoritmica de retea este si o abordare de sistem, fiind descris
un set de 15 principii si utilizarea lor, care exploateaza faptul ca ruterele
si serverele sunt sisteme, in care eficienta poate fi obtinuta prin
deplasarea functiilor in spatiu si timp intre subsisteme.
Problemele algoritmicii de retea sunt legate de performanta
fundamentala legata de strangularile de retea/bottlenecks. Solutiile
adoptate de algoritmica de retea genereaza un set de tehnici
fundamentale pentru tratarea acestor strangulari.
1.1. PROBLEMA: STRANGULARILE DE RETEA
Principala problema avuta in vedere este realizarea unor retele usor de
folosit, utilizand hardware-ul la capacitatea maxima. Usurinta folosirii
vine de la folosirea unor abstractizari puternice de retea, cum sunt
interfetele socket si expedierea/inaintarea bazata pe prefix a pachetelor.
Trebuie avut grija insa, deoarece astfel de abstractizari pot duce la
scaderea performantelor comparativ cu capacitatea transmisiilor pe
legaturi ca fibra optica. Pentru a putea intelege aceasta diferenta de
performanta vom examina doua categorii fundamentale de dispozitive de
retea, nodurile terminale/endnodes si ruterele.
Strangulari la nodurile terminale
Nodurile terminale sunt punctele de final ale retelei. Ele includ
calculatoarele personale si statiile de lucru precum si serverele de mari
dimensiuni, furnizoare de servicii. Nodurile terminale sunt dedicate
calculelor, spre deosebire de retele, si de obicei sunt proiectate ca sa poata
realiza calcule de uz general. Astfel strangularile nodurilor terminale sunt
de obicei rezultatul a doua cauze: structura si scala/dimensiunea.
2
o Structura: Pentru a putea rula orice cod, calculatoarele personale si
serverele mari au de obicei un sistem de operare care mediaza intre
aplicatii si hardware. Pentru a usura dezvoltarea software-ului, majoritatea
sistemelor de operare de mari dimensiuni sunt structurate cu grija, ca un
software pe niveluri; pentru a proteja sistemul de operare de alte aplicatii,
sistemele de operare implementeaza un set de mecanisme de protectie; in
final, rutinele nucleului sistemului de operare, cum sunt planificatoarele si
procedurile de alocare, sunt scrise folosind mecanisme generale, orientate
spre o clasa de aplicatii cat mai larga posibil. Din pacate, combinatia intre
software-ul pe niveluri, mecanismele de protectie, si generalitatea excesiva
poate duce la incetinirea semnificativa a software-ului retelei, chiar si cu
procesoarele cele mai rapide.
o Scala/dimensiunea: Aparitia serverelor mari oferind Web si alte
servicii duce la aparitia altor probleme, de performanta. In particular, un
server mare cum este un server de Web, va avea de obicei mii de clienti
concurenti. Multe sisteme de operare folosesc structuri de date ineficiente
si algoritmi care au fost proiectati pentru o epoca in care numarul de
legaturi a fost mic.
In figura 1.1 sunt prezentate principalele strangulari ale nodurilor
terminale, impreuna cu cauzele si solutiile lor. Prima strangulare are loc
deoarece structurile sistemului de operare conventional impun copierea
pachetelor de date intre domeniile protejate; situatia se complica si mai
mult in cazul serverelor de Web prin copieri similare pentru sistemul de
fisiere si alte manevre, ca sumele ciclice de control, care verifica toate
pachetele de date. Se descriu un numar de tehnici de reducere a acestor
supraincarcari, mentinand ca scop abstractizarile sistemului, ca protectia
si structura. A doua supraincarcare majora este cea generata de control,
cauzata de comutarea intre firele de control (sau domeniile de protectie
Documentul este oferit gratuit,
trebuie doar să te autentifici in contul tău.