Mihai Sprinceana
Un forum de programare cu de toate. Va astept sa va inscrieti si sa deveniti moderatori. Oricine este binevenit aici sa se inscrie si sa aiba acces la informatie free! Fiecare este liber sa adauge proiecte programe free etc. Ajutati acest forum sa devina o comunitate puternica unde fiecare invata de la fiecare! Tot ce trebuie sa faceti este sa va inregistrati si fiecare contributie se poate dovedi utila in timp! Forumul este free informatia free dk aveti timp liber ajutati si pe ceilalti si invatati si voi in acelasi timp! Haideti sa facem ceva pt.a ne ajuta intre noi! Cititi regulament postare forum inainte de a posta!
Lista Forumurilor Pe Tematici
Mihai Sprinceana | Inregistrare | Login

POZE MIHAI SPRINCEANA

Nu sunteti logat.
Nou pe simpatie:
crazylife pe Simpatie
Femeie
25 ani
Bucuresti
cauta Barbat
25 - 47 ani
Mihai Sprinceana / Retele / Protocoale de nivel retea Moderat de Houssey, andreeamp, costin1920, fireratbat, ozzywz4rd, profu.info, sade5000
Autor
Mesaj Pagini: 1
cr3us
Moderator

Inregistrat: acum 17 ani
Postari: 160
Protocoale de rutare si protocoale rutate

Ce este Internet-ul?

Raspunsul trivial este ca Internetul este suma tuturor retelelor interconectate.

Problema cu aceasta definitie este ca este o definitie descriptiva si, desi adevarata, este în mare parte
irelevanta.

Daca am un calculator nou si îl conectez la un alt calculator va fi noul calculator parte din Internet?

Daca noul calculator are o placa de retea, atunci va avea si adresa MAC, singura provocare fiind aceea de a
face rost si a atribui calculatorului o adresa IP. Aparent esenta Internetului se rezuma la capacitatea
calculatoarelor de a fi "TCP/IP compliant", adica de a rula stiva de protocoale TCP/IP si de a poseda o
adresa IP.

Este atunci Internetul multimea tuturor calculatoarelor interconectate ce sunt "TCP/IP compliant"?

Deja stim ca pentru a lega calculatoarele între ele avem nevoie de diverse dispozitive de interconectare.
Odata cu dispozitivele de interconectare vin si numeroase protocoale.

Ruterul este dispozitivul ce face posibila extraordinara scalabilitate a Internetului, si astfel chiar existenta sa,
astfel încât orice definitie relevanta a Internetului trebuie sa porneasca mai degraba de la rutere decât de la
statii.

Privit din punctul de vedere al modului cum functioneaza, Internetul este definit de simbioza a doua tipuri de
protocoale de nivel retea: protocoale de rutare si protocoale rutate.

Protocoalele rutate sunt acele protocoale responsabile pentru asigurarea unui mod de identificare a entitatilor
ce participa în Internet prin stabilirea unei scheme de adresare ce trebuie sa asigure unicitatea, dar si
ierarhizarea adreselor.

Protocoalele de rutare sunt cele ce stabilesc regulile prin care informatiile despre retele sunt schimbate între
rutere în scopul obtinerii unei tabele de rutare adecvate topologiei.

Tabele de rutare

Tabela de comutare era o lista de reguli, fiecare cuprinzând o parte de identificare (matching) si una de
actiune, în speta interfata de iesire din switch. În partea de identificare se afla o adresa MAC destinatie, iar
pentru partea de actiune era precizata una din interfetele switchului.

Datorita dimensiunii mult mai mari a Internetului acest mod de decizie a trebuit rafinat, iar cele doua directii
de rafinare au fost alegerea unei scheme de adresare ierarhica si implementarea unor algoritmi de cautare si
implicit stocare a informatiilor cât mai performanti.

În ceea ce priveste prima directie, desi are o vârsta venerabila, IPv4 ofera o schema de adresare
satisfacatoare, astfel încât IPv6 va trebui sa exploateze multe alte avantaje pe lânga ierarhizarea spatiului de
adrese pe mai multe niveluri, pentru a reusi sa se impuna drept înlocuitorul lui IPv4.

În privinta algoritmilor de caching lucrurile stau ceva mai bine, datorita libertatii fiecarui producator de a
explora solutii noi fara a necesita modificari în structura Internetului. Astfel, dupa prima paradigma de rutare
process switching, au urmat o serie de oprimizari ce au condus la solutii ca: fast switching, optimal switching
sau Cisco express forwarding. Fiecare nou algoritm propune o noua modalitate de stocare si accesare a
informatiilor de rutare, precum si un mod diferit de tratare a pachetelor sosite la ruter, acesta fiind motivul
pentru care modalitatile de rutare sunt deseori referite ca algoritmi de caching.

Pe parcursul acestui capitol singurul tip de rutare ce va fi discutat este rutarea process switching.

Revenind totusi la tabelele de rutare si la modul de organizare a informatiei, vom defini ce este o ruta si apoi
o tabela de rutare.

O ruta este o regula ce cuprinde o parte de identificare si una de actiune. Partea de identificare este compusa
din doua elemente: adresa retelei destinatie si masca acesteia, în vreme ce partea de identificare poate fi
exprimata prin ambele sau doar unul dintre urmatoarele elemente: adresa urmatorului ruter (numita next hop
address) si interfata de iesire din ruter.

O tabela de rutare este o lista de rute cu acces secvential.

O tabela de rutare are urmatoarele 4 componente:

- adresa de retea
- masca
- next hop
- interfata

Pentru unele rute este precizata doar adresa urmatorului ruter, în vreme ce pentru altele doar interfata de
iesire.
O ruta valida poate preciza doar interfata de iesire în cazul unei legaturi seriale, sau orice alta legatura punct
la punct, aceeasi ruta este considerata ambigua în cazul unei legaturi Ethernet, în acest al doilea caz fiind
necesara precizarea adresei urmatorului hop.

Pâna în acest punct am determinat forma tabelei de rutare, precum si modul de inserare în aceasta; cu toate
acestea, procesul decizional al ruterului poate parea înca neclar. Pentru a întelege mai usor modul de decizie
al unui ruter vom presupune ca un ruter cu o tabela de rutare identica cu cea prezentata în figura de mai sus
primeste un pachet cu adresa destinatie 194.230.85.66.

Din întregul pachet singura informatie relevanta pentru nivelul retea al unui ruter este adresa logica destinatie.
În primul rând, ruterul va trebui sa determine daca nu este el destinatarul acestui pachet, iar pentru aceasta
va compara adresele logice ale tuturor interfetelor sale active cu adresa destinatie a pachetului. Daca este
destinatarul pachetului atunci va trimite datele nivelurilor superioare.

În cazul în care ruterul nu are nici o interfata activa cu aceeasi adresa ca cea a pachetului, ruterul va trece la
pasul doi, încercând sa determine daca destinatia se afla în aceeasi retea ca si sursa. Pentru aceasta va
analiza adresa si masca interfetei pe care a primit pachetul în cauza. Astfel va aplica masca asociata interfetei
de intrare pe adresa interfetei urmând ca rezultatul sa fie comparat cu rezultatul operatiei de "si" logic între
aceeasi masca de retea si adresa destinatie. Daca cele doua rezultate coincid, ruterul va ignora pachetul,
altfel urmând sa înceapa procesul efectiv de rutare.

Prima ruta din tabela de rutare va fi extrasa, iar rezultatul operatiei de "si" logic între adresa destinatie si
masca de retea cuprinsa în aceasta ruta va fi comparat cu adresa de retea. În cazul în care cele doua valori
coincid, antetul de nivel legatura de date al pachetului va fi rescris (antetul de nivel retea ramânând
neschimbat) si pachetul va fi trimis catre urmatorul hop. Daca valorile difera, va fi extrasa urmatoarea ruta
pâna la gasirea primei potriviri sau pâna la epuizarea rutelor, caz în care pachetul urmeaza sa fie ignorat.


În cazul exemplului nostru, presupunem ca pachetul cu destinatia 194.230.85.66 trebuie rutat. Prima ruta va
aplica masca /26 adresei destinatie, rezultând 194.230.85.64, valoare diferita de 194.230.85.0. Nici a doua ruta
nu este potrivita pentru aceasta destinatie, astfel ajungându-se la cea de a treia ruta.

Aparent prima si a treia ruta se refera la aceeasi retea. La o privire mai atenta mastile de retea difera, astfe
a treia ruta se refera la un spatiu de adrese de patru ori mai mare decât prima. În realitate, datorita
caracterului secvential al utilizarii tabelelor de rutare si a faptului ca primele doua rute se refera la doua
sferturi din acelasi spatiu de adrese, numarul de adrese diferite ce vor folosi a treia ruta va fi doar dublu (si nu
de patru ori mai mare) decât numarul de adrese ce vor folosi prima ruta.

În urma aplicarii mastii /24 pentru adresa destinatie rezulta 194.230.85.0 si anume adresa retelei destinatie din
aceasta ruta. Pentru a putea trimite pachetul va trebui aflata adresa MAC a urmatorului hop, si anume
194.230.5.65. În urma interogarii tabelei ARP sau a unei cereri ARP adresa MAC sursa este rescrisa cu
adresa MAC a interfetei E1, iar adresa MAC destinatie este înlocuita cu adresa MAC corespunzatoare
urmatorului hop.

Exemplul de tabela de rutare prezentat în figura de mai sus mai are înca o virtute didactica: prezinta o
proiectare destul de putin fericita a distributiei adreselor, deschizând astfel o discutie importanta asupra
distributiei eficiente a adreselor logice.

Care este rolul unei distributii eficiente a adreselor logice într-o retea?

Cele doua aspecte ale unei distributii eficiente urmaresc distribuirea adreselor astfel încât sa putem reduce
dimensiunea tabelei de rutare prin agregarea rutelor, dar si evitarea pierderii de adrese.

În cazul nostru cea de a doua ruta se refera la o retea cu masca /26, retea la care are acces printr-o interfata
seriala. Legaturile seriale sunt punct la punct, astfel din cele 26-2=62 de adrese vom folosi doar 2, restul
ramânând blocate. O alocare eficienta de adrese ar fi folosit un spatiu de adrese cu masca /30 pentru aceasta
retea.

În ceea ce priveste agregarea rutelor, desi pe ruterul nostru situatia pare buna, nu ne putem opri sa speculam
în legatura cu tabelele de rutare ale ruterelor adiacente. Astfel este extrem de probabil sa existe rutere
adiacente ce vor avea rute catre 194.230.85.0/24 si 194.230.86.0/24, ambele rute având ca urmator hop ruterul
nostru. Din pacate aceste doua spatii de adrese, desi consecutive, nu pot fi agregate.

O alta discutie ar putea fi purtata în legatura cu implicatiile faptului ca nici una dintre interfetele ruterului nu
se afla în spatiul de adrese 194.230.85.0/24, desi acest ruter este punctul în care acest spatiu de adrese este
partitionat.

Înainte de a încheia subiectul optimizarilor traficului folosind tabelele de rutare vom mai zabovi un pic asupra
unui alt aspect. Pentru exemplul de mai sus sa consideram ca mai adaugam o ruta si anume:


194.230.85.8 /30 194.230.5.65 E1

Este usor de observat ca toate pachetele ce vor fi rutate pe aceasta ruta ar trece de primele doua rute din
vechea tabela, urmând ca cea de a treia ruta sa le trimita catre 194.230.5.65, adica catre acelasi urmator hop.
În concluzie, din puctul de vedere al ruterului, toate pachetele vor fi rutate identic în ambele cazuri.

Astfel, aceasta operatie de adaugare a noi rute nu schimba cu nimic modul de rutare a pachetelor, ducând
totusi la marirea dimensiunii tabelei de rutare si deci aparent la deprecierea performantelor. În realitate
deprecierea performantelor afecteaza toate adresele rutate cu exceptia celor cuprinse în spatiul
194.230.85.8/30. Astfel, pentru un scenariu în care 80% din traficul ce trece prin acest ruter este destinat
adreselor 194.230.85.9 si 194.230.85.10, adaugarea acestei noi rute duce în realitate la îmbunatatirea
performantelor generale ale retelei.

Astfel, o prima clasificare a rutelor ar fi în functie de tipul procesului de rutare, si anume classfull sau classless.
Odata cu trecerea timpului si cu cresterea în popularitate a adresarii classless tabelele de rutare au devenit
classfull chiar daca sunt alimentate uneori de protocoale de rutare classless (adica protocoale ce nu transmit
si informatii despre masca de retea), ruterele urmând sa precizeze explicit masca de retea înainte de a
introduce informatiile în tabela de rutare.

În rutarea cu rute classfull procesul este un pic diferit, si anume adresa destinatie extrasa din antetul unui
pachet ajuns la ruter va fi mai întâi comparata cu 192, si în cazul în care e mai mica de 192 va fi comparata cu
128, determinându-se astfel clasa de adrese si implicit masca de retea. Din acest punct procesul este similar
cu cel din rutarea classfull, adica se va efectua o operatie de "si" logic între adresa destinatie si masca retelei,
rezultatul urmând a fi comparat cu adresa de retea continuta în ruta.

Odata cu raspândirea rutarii classless a aparut clasificarea rutelor în functie de tipul destinatiei. Astfel vom
avea rute de tip nod sau rute host si rute de tip retea. Rutele de tip host contin informatii doar despre o
singura statie, adica masca de retea este /32. Odata cu cresterea Internetului, si implicit a dimensiunii
tabelelor de rutare, a crescut si presiunea de a agrega cât mai mult rutele, precum si a se renunta la rutele de
tip nod. Cu toate acestea, datorita modului de inserare a rutelor, si deci datorita promovarii rutelor de nod la
începutul tabelei de rutare, acestea având prefixul maxim, rutele host mai sunt înca folosite pentru unele
optimizari de trafic, mai ales pe ruterele de la periferia Internetului.

Al treilea criteriu de clasificare a rutelor este în functie de modul de conectare, iar cele doua tipuri de rute
sunt: rutele direct conectate si rute gateway. Rutele direct conectate sunt rute catre retele în care ruterul în
cauza are o interfata, si în majoritatea cazurilor aceste rute sunt automat introduse în tabela de rutare de
catre sistemul de operare odata cu configurarea si activarea interfetei respective. Rutele direct conectate în
general nu contin adresa urmatorului hop, având specificata doar interfata de iesire din ruter. Astfel rutele
direct conectate sunt singurele rute valide ce pot avea specificata ca interfata de iesire o interfata multiaccess
(gen Ethernet), fara a necesita precizarea adresei urmatorului hop.

Exista totusi unele rutere în care se specifica adresa urmatorului hop si pentru rutele direct conectate. Adresa
urmatorului hop în acest caz este chiar adresa logica primara a interfetei de iesire din ruter, acesta fiind
singurul caz când putem folosi una dintre adresele ruterului pentru a specifica urmatorul hop.

O a patra clasificare a rutelor se face în functie de mediul de acces catre o retea, având astfel rute pe medii
punct la punct si rute pe medii multiacces. Diferenta între cele doua tipuri de rute consta, dupa cum a fost
precizat si mai înainte, în faptul ca rutele catre o retea conectata pe o legatura punct la punct pot fi specificate
ori prin interfata de iesiere din ruter, ori prin adresa urmatorului hop, ori prin ambele, în vreme ce rutele pe
medii multiacces sunt specificate doar prin adresa urmatorului hop, interfata de iesire nefiind suficienta.

Ar fi important de precizat ca din punctul de vedere al unui ruter, doua medii de transmisie acopera marea
majoritatea a rutelor, altfel spus doua tipuri de interfete sunt mult mai populare decât restul. Cele doua tipuri
de interfete sunt: interfetele Ethernet si cele seriale, prima permitând transmisia peste un mediu multiacces,
în vreme ce cea de a doua este o interfata punct la punct. Alte interfete punct la punct destul de populare sunt
cele de fibra optica si cele ISDN.

Exista o clasificare ce împarte rutele în rute generice si rute specifice, dar aceasta clasificare este un pic
artificiala de vreme ce la ora actuala rutele agregate au trecut ferm în tabara rutelor specifice, sigura ruta
generica fiind ruta implicita sau ruta default.

Ruta implicita sau ruta default este ruta spre care se trimit toate pachetele pentru care nu se cunoaste o
destinatie specifica.

În mod evident nici un pachet nu va ajunge sa fie sa prelucreze ce-a de a doua ruta implicita, toate pachetele
fiind acceptate de prima.

Dezactivarea unei interfete, ce poate avea loc ori ca o consecinta a unei închideri administrative sau a
întreruperii legaturii de nivel fizic sau a celei de nivel legatura de date, are drept consecinta directa înlaturarea
tuturor rutelor ce folosesc respectiva interfata ca interfata de iesire din ruter. Astfel, în cazul în care nu am
avea cea de a doua ruta default si interfata S0 ar fi dezactivata, toate pachetele care ar fi fost rutate prin
prima ruta implicita ar urma sa fie ignorate.

În concluzie, într-o tabela de rutare exista o singura ruta default activa, dar pot fi precizate mai multe rute
default în scopuri de backup.

Ultima clasificare a rutelor asupra careia vom mai insista este pe departe si cea mai semnificativa. Aceasta
clasificare se face în functie de modul în care informatia pe baza careia sunt construite rutele este dobândita si
împarte rutele în rute statice si rute dinamice.

Clasificarea rutelor în rute statice si rute dinamice se refera doar la rutele gateway, deoarece rutele direct
conectate sunt introduse automat în tabela de rutare.

Rute statice

Rutele statice sunt introduse manual de catre administratorul ruterului, spre deosebire de rutele dinamice ce
necesita doar configurarea unui protocol de rutare, rutele urmând a fi învatate schimbând informatii despre
rutele direct conectate cu celalalte rutere.

Este importat de precizat ca o ruta statica va aparea în tabela de rutare numai atunci când interfata de iesire
din ruter este configurata corect si activata.

O alta limitare a folosirii rutelor statice este ca schimbarile în topologia retelei trebuie cel mai adesea sa fie
actualizate manual de administrator pe ruter. Desi exista modalitati de minimizare a efectului schimbarilor în
topologie, aceste procedee duc la marirea dimensiunii tabelei de rutare.

Exista si o latura pozitiva a incapacitatii rutelor statice de a urmari schimbarile topologice (caderea unei
conexiuni de exemplu). Una dintre metodele, e drept mai rare, de atac al unei retele este atacarea rutarii
dinamice, si anume introducerea unui ruter într-un mediu multiacces ce va oferi o ruta foarte buna,
"convingând" astfel toate celalalte rutere sa trimita traficul catre el.

În plus, orice protocol de rutare consuma mai multa sau mai putina banda pentru ca ruterele sa-si poata
actualiza tabelele de rutare. Apoi, odata primita, informatia de rutare trebuie prelucrata înainte de a fi
introdusa în tabela de rutare, unele protocoale de rutare consumând cantitati semnificative de timp de
procesor sau de memorie.

Rutarea statica nu are cerinte de latime de banda, timp de procesor sau memorie (în afara de memoria
efectiva ocupata de tabela de rutare) si, desi introducerea manuala de informatii poate parea o metoda
arhaica de administrare, deseori rutarea statica este mult mai potrivita pentru ruterele de la periferia
Internetului decât rutarea dinamica.

Multe dintre retelele de mici dimensiuni nu au o legatura redundanta la Internet, astfel încât specificarea
legaturii de Internet printr-o ruta statica sau dinamica sunt la fel de inutile în cazul întreruperii acestei legaturi.


În concluzie, rutele statice nu sunt o solutie depasita de configurare a ruterelor, iar viitorul nu pare sa anunte
înlocuirea rutarii statice cu rutarea dinamica. Rutarea statica va continua sa fie solutia optima pentru retelele
cu un grad redus de complexitate sau a retelelor stub (retele cu o singura conexiune la Internet).


Protocoalele rutate si Internetul

Cele doua protocoale de rutare concurente pentru IP sunt AppleTalk si IPX, si desi implementarile solutiilor
de conectare peste Internet bazate pe aceste protocoale sunt rare, cele doua protocoale ramân înca destul de
folosite în retelele locale.

Desi Macintosh ocupa 3,5% din piata mondiala de calculatoare personale, efortul pentru sustinerea solutiilor
bazate pe AppleTalk în rândul marilor producatori de echipamente de retea s-a diminuat rapid, trecând pe un
plan colateral începând cu anii `95.

IPX în schimb a fost multa vreme un competitor redutabil pentru IP. De fapt, competitia dintre stiva de
protocoale TCP/IP si SPX/IPX s-a tradus în limbajul retelelor locale de calculatoare în competitia dintre
Microsoft si Novell.

De ce IP a ramas practic singurul protocol rutat peste Internet?

Dupa cum am observat deja, AppleTalk nu a fost un competitor real pentru IP. Nu am aflat totusi cum solutiile
IP au reusit mai întâi sa recupereze în popularitate, iar apoi chiar sa elimine solutiile IPX.

O prima distinctie trebuie facuta între retelele de servere (mainframe-uri) si cele de calculatoare personale.
Retelele din campusurile academice, precum si cele de servere au folosit traditional solutii bazate pe IP. Cu
toate acestea, odata cu începutul anilor `90 si cu cresterea exploziva a retelelor de calculatoare personale, au
început sa se dezvolte solutii comerciale care sa exploateze particularitatile noilor tipuri de retele.
Câstigatorul competitiei a fost fara îndoiala Novell Netware, sistemul lor de operare promovând o noua stiva
de protocoale, si anume IPX/SPX.

Cum traim într-un secol al ironiilor, nu este lipsit de importanta sa subliniem aici ca noua stiva de protocoale
era de fapt doar adaptarea unui protocol consacrat în acea vreme: XNS, protocol dezvoltat de compania Xerox.
Privind în urma cu 10-15 ani vom gasi compania Xerox implicata si în dezvoltarea primelor solutii grafice,
bazate pe folosirea unui nou dispozitiv periferic, dispozitiv numit azi mouse. Xerox, alaturi de DEC de data
aceasta, a contribuit si la dezvoltarea si standardizarea protocolului de nivel legatura de date ce guverneaza în
acest moment retelele locale de calculatoare: Ethernet. Ironia este ca, desi multe dintre solutiile Xerox au
definit lumea IT asa cum o cunoastem noi acum, la sfârsitul anilor `90 Xerox a trebuit sa se retraga de pe
piata producerii de calculatoare, întâmpinând si acum dificultati financiare considerabile.

În extrema cealalta, o firma extrem de prospera, pornita prin achizitia unui alt sistem de operare, ce a preluat
solutiile grafice de la Macintosh, stiva TCP/IP si unele dintre solutiile de retea din UNIX, a ajuns sa
guverneze nu doar piata retelelor locale de calculatoare, dar si cea a serverelor.

Revenind totusi la IPX, o prima diferenta fata de IP este formatul adreselor. O adresa IPX este un sir de
10 octeti, din care primii 4 octeti reprezinta adresa de retea, în vreme ce ultimii 6 reprezinta adresa de statie,
numita adresa de nod. Pentru adrese de nod IPX foloseste chiar adresa MAC a placii de retea, iar adresa de
retea este pastrata pe server, statiile la pornire urmând sa-si construiasca singure adresa IPX. În acest mod
s-a eliminat necesitatea folosirii unui protocol aditional (cum este protocolul ARP în cazul IP) pentru
comunicatia în reteaua locala.

Multe dintre mecanismele de control ale protocolului IP au fost preluate si de IPX. Spre exemplu, în antetul
IPX exista un câmp numit Transport Control, al carui rol este similar cu cel al câmpului Time To Live din IP.

Este oare overheadul folosirii de adrese de 10 octeti în loc de adrese de 6 octeti responsabil pentru victoria
protocolului IP fata de IPX? Exista facilitati ale protocolului IP ce nu se regasesc în protocolul IPX?

Protocoale de retea folosite în retelele locale de calculatoare

Un lucru ce pare azi sa apartina mai degraba notelor de subsol decât istoriei recente a retelelor de calculatoare
personale e faptul ca firma Microsoft a aparut pe piata si s-a definit mai întâi ca unul dintre competitorii
solutiilor Novell, mai degraba decât concurent pentru solutii UNIX.

Anii `93-`94, precum si lansarea sistemului de operare Novell 3.x, au adus aproape întreaga piata a retelelor
de calculatoare personale sub controlul companiei Novell Netware. În acea vreme orice administrator de
retea trebuia sa aiba o buna întelegere a stivei IPX/SPX, indiferent de cerintele specifice slujbei. În contrast,
acum solutiile Novell sunt deseori preferate tocmai pentru gradul aditional de securitate oferit de numarul
redus de specialisti în domeniu.

O discutie a protocoalelor de retea folosite în retelele locale nu poate trece cu vederea solutia proprietara
Microsoft, si anume NetBEUI (NetBIOS Extended User Interface). Protocolul NetBEUI, desi poate parea o
solutie adecvata pentru retelele de mici dimensiuni, aduce doua inconveniente semnificative:

Adresele NetBEUI sunt simbolice, fiecare statie fiind identificata printr-un nume.
Absenta unei scheme de adresare ierarhica face practic imposibila rutarea acestui protocol;

Componenta importanta a acestui protocol se realizeaza prin mesaje de difuzare, ceea ce poate duce la o
încarcare semnificativa a retelei.
NetBIOS (Network Basic Input/Output System) este un API folosit de aplicatii în retelele IBM pentru a
solicita servicii de la procesele de retea de nivel scazut. NetBIOS include 3 servicii de baza:

Serviciul de nume: acest serviciu este în realitate responsabil pentru asigurarea schemei de nume folosita de
NetBEUI. Numele sunt difuzate la intrarea în retea sau pot fi interogate explicit prin pachete de difuzare.

Serviciul de sesiuni este un serviciu orientat catre conexiune, asigurând secventierea mesajelor si gestionând
confirmarile pentru acestea.

Serviciul de datagrame este bazat pe datagrame si este folosit pentru difuzari si mesaje de informare.

În urma cu 3 ani, recomandarile pentru alegerea protocolui de retea pentru o retea de calculatoare aratau în
felul urmator:


la nivelul retelei locale cele mai eficiente sunt IPX si NetBEUI
cele mai sigure protocoale sunt tot IPX si NetBEUI
daca dorim integrarea retelei noastre pe Internet flexibilitatea cea mai ridicata o ofera TCP/IP, urmat apoi de IPX/SPX
cel mai usor de administrat este suita de protocoale TCP/IP
cel mai usor de integrat cu retelele Unix este TCP/IP
cel mai usor de integrat cu retelele Windows este NetBEUI
cel mai usor de integrat cu retelele Netware este IPX/SPX

Începând cu versiunea 5.x a sistemului de operare Novell Netware, stiva de protocoale nativa a fost
schimbata la TCP/IP, iar ultimii ani au marcat o crestere constanta a firmei Microsoft pentru solutii IP,
adeseori în defavoarea solutiilor NetBEUI. Astfel, recomandarile pentru alegerea protocolului de retea în
2003 se reduc la o singura regula: "Alege IP".

Protocoale de rutare

Determinarea caii optime

Protocoalele de rutare, uneori denumite si protocoale de rutare dinamica, au drept obiectiv schimbarea
informatiilor despre retelele cunoscute între ruterele ce ruleaza acelasi protocol de rutare. Pe baza acestor
informatii se contruiesc rute, aceste rute numindu-se rute dinamice.

Ruterele au o singura tabela de rutare pentru fiecare protocol rutat, astfel încât aceeasi tabela de rutare va
contine atât rutele direct conectate, rutele statice, dar si rutele dinamice.

Un ruter poate rula unul sau mai multe protocoale de rutare, numarul protocoalelor de rutare ce pot fi rulate
fiind limitat în general de sistemul de operare, sau de modelul ruterului. Un ruter Cisco spre exemplu ruleaza
în general pâna la 30 de instante de protocoale de rutare.

Problema care apare este ca acelasi protocol de rutare poate sa furnizeze doua sau mai multe rute catre
aceeasi destinatie; de asemenea pot exista doua rute dinamice catre aceeasi retea provenite din protocoale
de rutare diferite, sau, de ce nu, este posibil chiar sa avem o ruta dinamica catre o retea direct conectata.

Astfel, desi avem trei tipuri de rute trebuie sa avem un mecanism de comparare a rutelor între ele. Mai mult
chiar, este necesara ierarhizarea tuturor rutelor.

Cele doua mecanisme de ierarhizare a rutelor se numesc distanta administrativa si metrica.

Metrica unei rute este un numar care apreciaza cât de bun este un drum spre o anumita destinatie în raport cu
un set de factori specifici. Atât metrica, precum si setul de factori, sunt relevanti pentru un anumit protocol de
rutare - adica nu are sens sa comparam metricile unor rute obtinute prin protocoale de rutare diferite.

Distanta administrativa este un numar între 0 si 255, asociat cu un tip de ruta sau cu un protocol de rutare, ce
permite ierarhizarea protocoalelor de rutare.

Clasificarea protocoalelor de rutare

Exista numeroase clasificari ale protocoalelor de rutare, dar ne vom opri doar asupra a doua dintre acestea.

Dupa cum statiile sunt grupate în retele pentru a oferi o ierarhizare a spatiului de adrese, si retelele la rândul
lor sunt grupate în colectii de retele aflate sub o administratie comuna numite sisteme autonome.

Astfel, o prima clasificare a protocoalelor de rutare se face în protocoale de rutare inter-AS, folosite pentru
schimbul informatiilor de rutare între sisteme autonome diferite si protocoale de rutare interne adica
protocoale folosite în cadrul aceluiasi sistem autonom.

O a doua clasificare a protocoalelor de rutare se refera în realitate la clasificarea protocoalelor de rutare
interna în functie modul de schimbare a informatiei de rutare. Cele trei clase în care sunt împartite
protocoalele de rutare interna sunt: protocoale bazate pe vectori de distanta (distance-vector protocols),
protocoale bazate pe starea conexiunii (link-state protocols) si protocoale hibride.

Cea de a treia categorie de protocoale de rutare interna îmbina caracteristici ale protocoalelor bazate pe
vectori de distanta cu unele caracteristici ale protocoalelor bazate pe starea conexiunii. În realitate, aceasta
noua categorie este folosita pentru a clasifica protocoalele ce nu pot face parte din nici una dintre primele
doua categorii, astfel ca, în cele ce urmeaza, vom prezenta doar protocoalele distance-vector si link-state.

Protocoale distance-vector

Întorcându-ne la protocoale de tip distance-vector, pentru acestea calculul drumului optim se face pe baza de
directie (de obicei interfata) si distanta pâna la destinatie folosind directia respectiva. Informatiile de rutare
se schimba numai între ruterele învecinate, la intervale periodice, aceasta traducându-se într-un timp de
convergenta mare, adica schimbarile aparute în topologia retelei se propaga destul de greu catre rutele mai
îndepartate de locul aparitiei modificarii în cauza.

Cele mai populare protocoale de rutare bazate pe vectori de distanta sunt RIP si IGRP, aceste protocoale
fiind usor de configurat, iar resursele de latime de banda si timp de procesor sunt extrem de reduse.

Pentru a întelege mai exact modul cumulativ în care protocoalele distance-vector calculeaza costul unei rute,
vom analiza în continuare protocolul RIP.

Prima precizare ce ar trebui facuta când vorbim de RIP este ca în acest moment exista doua versiuni ale
acestui protocol cu o popularitate relativ egala. Astfel va fi prezentat RIP version 1, si mecanismele de
protocol bazat pe vectori de distanta, pentru ca apoi sa fie prezentate adaugarile si modificarile aduse de
versiunea 2 a acestui protocol. În acest moment prin RIP (fara a preciza versiunea) se întelege doar RIP
version 1, iar pentru referinte la versiunea a doua trebuie precizata versiunea: RIP v2.

RIP a aparut ca un efort de standardizare a unui prim protocol de rutare la mijlocul anilor `80, efort
concretizat prin publicarea RFC 1058.

RIP foloseste drept metrica numarul de hopuri sau rutere pâna la reteaua destinatie. Pentru a se evita
efectele negative ale buclelor logice a fost stabilita o metrica maxima, astfel încât orice informatie despre o
ruta cu o metrica mai mare de 15 este ignorata.

Actualizarile se fac transmitând toate informatiile de rutare si nu doar cele ce s-au modificat de la ultima
actualizare, dar sunt trimise folosindu-se adrese de difuzare, adica pachetele de actualizare vor ajunge doar
la ruterele adiacente, deoarece în mod implicit ruterele filtreaza pachetele de broadcast.

Actualizarile se fac implicit la 30 de secunde, acest timp reprezentând un compromis între timpul de
convergenta si cantitatea de banda utilizata pentru actualizari. Astfel timpul de convergenta la RIP în cel
mai defavorabil caz este de 7 minute jumatate, calificând RIP în categoria protocoalelor de rutare interna cu
o convergenta scazuta. În masura în care se impune un timp de convergenta mai mic, perioada de actualizare
poate fi redusa, ducând astfel si la un consum mai ridicat de latime de banda.

Fiecare ruter ce primeste un pachet de actualizare va incrementa metrica fiecarei rute continute în pachet cu 1,
iar apoi pentru fiecare dintre rute va încerca sa determine daca nu exista deja o ruta cu o metrica mai buna
catre aceeasi destinatie în tabela de rutare.

Protocoale link state

Protocoalele de tip link-state construiesc o baza de date cu întreaga topologie a retelei si calculeaza drumul
cel mai scurt pe baza unui algoritm de tip Dijkstra (SPF - shortest path first).

Astfel, pentru actualizarea tabelelor de rutare se trimite într-o prima etapa întreaga tabela de rutare catre
toate ruterele ce ruleaza acelasi protocol de rutare, aceasta realizându-se prin folosirea în câmpul destinatie
a unei adrese logice de multicast specifice fiecarui protocol în parte. Dupa aceasta etapa de trimitere a
tuturor informatiilor, numita si flooding, actualizarile se vor efectua doar la aparitia unei schimbari în
topologie, iar pachetele de actualizare vor contine doar informatii despre rutele modificate, acesta metoda de
actualizare numindu-se actualizare incrementala.

Principala problema a acestor protocoale este ca fiecare dintre rutere va trebui sa construiasca arborele
topologic, si apoi sa extraga rutele ca drumuri optime în acest arbore, iar acest proces necesita resurse de
memorie si procesor adesea semnificative. În plus, efortul configurarii unui protocol bazat pe starea
conexiunii este adesea mult mai mare decât cel necesar pentru a configura un protocol bazat pe vectori de
distanta.

Cu toate acestea, datorita initierii procesului de actualizare odata cu aparitia modificarilor în topologie,
precum si datorita folosirii adresarii multicast, si deci a propagarii informatiilor de actualizare în întreaga
retea, timpul de convergenta pentru protocoalele link-state este semnificativ mai redus decât pentru cele
distance-vector.

Sisteme autonome

Datorita dimensiunii Internetului am vazut ca toate protocoalele rutabile trebuie sa suporte o schema de
adresare ierarhica. Cu toate acestea, la ora actuala exista miliarde de retele, astfel încât un ruter din
nucleul Internetului ar avea o tabela de rutare cu peste un miliard de intrari.

În realitate, în plus fata de cele doua niveluri de ierarhizare aduse de protocolul rutat, retelele mai
sunt grupate în sisteme autonome.

Un sistem autonom este o colectie de rutere aflate sub o administratie comuna.

Definitia de mai sus pare a-si avea locul mai degraba într-o carte de marketing, decât într-o carte de retele de
calculatoare. Cu toate acestea o definitie mai exacta este greu de dat, în plus cea mai importanta
caracteristica a unui sistem autonom este cuprinsa în aceasta definitie, si anume faptul ca orice ISP, pentru a
putea intra în Internet, trebuie sa se afilieze unei organizatii, adica unui sistem autonom.

O administratie comuna se traduce printr-un set de protocoale de rutare ce trebuie folosite în cadrul
sistemului autonom, printr-un set de politici de securitate si de comportament.

Un sistem autonom sau AS (autonomous system) este identificat printr-un numar numit numar sau adresa
AS. Acest numar poate fi cuprins între 1 si 65.535, cu toate ca ultimul segment al acestui spatiu de adrese,
si anume numerele între 64.512 si 65.535, sunt rezervate pentru uz privat, similar cu clasele de adrese IP
private.

Atribuirea unui numar AS se face de catre IANA (Internet Assigned Numbers Authority), si desi pretul de
100 USD este nesemnificativ, costul real este mai degraba în termeni birocratici, procedura de justificare a
unui numar AS face imposibila obtinerea unui numar AS de catre ISP-urile mici si medii. Astfel, sigura
optiune pentru acestea este de a intra într-un AS deja existent, si sa accepte regulile si politicile de securitate
si rutare ale acestuia.

Protocoale de rutare inter-AS

Odata cu gruparea retelelor în sisteme autonome a aparut si problema dezvoltarii de protocoale care sa
faca fata cerintelor rutarii între AS-uri. Astfel a fost creata distinctia între IGP (Interior Gateway Protocol)
si EGP (Exterior Gateway Protocol), adica între protocoale de rutare interne unui sistem autonom si
protocoalele de rutare exterioare unui AS, sau, altfel spus, protocoale de rutare inter-AS.

Care sunt cerintele pentru un EGP?

Prima si cea mai importanta cerinta e aceea de a face fata unor tabele de rutare semnificativ mai mari decât
orice am putea întâlni in interiorul unui AS. O tabela de internet actuala care este schimbata între doua rutere
de granita din sisteme autonome diferite cuprinde aproximativ 180.000 de rute.

A doua cerinta este cea de flexibilitate. Desi unele dintre protocoalele interne folosesc pâna la cinci factori
pentru determinarea metricii, folosirea unei formule pentru determinarea costului unei rute nu ofera un grad
suficient de flexibilitate. Procesul complet de comparare a doua sau mai multe rute pentru BGPv4, spre
exemplu, este un algoritm cu 13 pasi.

În plus numarul informatiilor asociate cu o ruta creste semnificativ. Pentru un IGP singurele informatii
transmise erau: retea destinatie, masca, metrica, în vreme ce pentru BGP mai trebuie precizate si atribute ca:
origin, as_path, next_hop, local_pref, atomic_aggregate, aggregator, multi_exit_disc.

O alta schimbare fata de rutarea interna o reprezinta schimbarea paradigmei de securitate. Astfel, daca ar fi
sa judecam un protocol de rutare inter-AS dupa criteriile rutarii clasice (interne adica), EGP ar fi în categoria
extrem-paranoic. Aceasta schimbare a paradigmei de securitate, corelata cu cerinta de flexibilitate, se
traduce printr-o crestere a gradului de complexitate a configurarii unui EGP.

Pentru a vedea si partea pozitiva a lucrurilor, cerintele de convergenta sunt destul de reduse, datorita faptului
ca legaturile de nucleu sunt extrem de stabile. Astfel, timpul de convergenta pentru BGP este de ordinul
orelor mai degraba decât minute precum în cazul unui protocol de rutare interna.

Spre deosebire de rutarea interna, rutarea inter-AS nu lasa loc pentru existenta mai multor protocoale
diferite, datorita cantitatii importante de resurse, dar si numarului relativ redus de sisteme autonome.
Câstigatorul competitiei este fara îndoiala BGPv4.

BGPv4 este deja în al 10-lea an de viata, fiind raspunsul la cresterea exploziva a Internetului de la începutul
anilor `90. BGPv4 nu aduce o optimizare a protocoalelor deja existente ci o paradigma complet noua
axata pe doua principii: scalabilitate si securitate.

În principiu BGP functioneaza la fel ca orice protocol de rutare, în sensul ca schimba tabele de rutare
cu ruterele vecine. În plus fata de un IGP, BGP mai transmite odata cu acestea si informatia de AS, precum si
o serie de alte atribute. Astfel, un ruter BGP va construi asa-numitele AS-paths, adica AS-urile prin care
trebuie sa treaca un pachet pâna la destinatie. Folosind aceste AS-paths, BGP evita buclele de rutare.

Un lucru important de precizat este ca BGP transmite mesajele încapsulate în segmente TCP, folosind un
port dedicat si anume portul 179. Drept consecinta, înainte de a putea rula o sesiune BGP, trebuie ca între
cele doua noduri sa existe rute. Cel mai adesea alimentarea initiala a tabelelor de rutare este realizata de
un IGP, dar la fel de bine conexiunea poate fi stabilita si prin precizarea unor rute statice.

Înainte de a încheia capitolul de protocoale de rutare trebuie sa disipam impresia unei ierarhii între
protocoalele de rutare. Nu exista un "cel mai bun protocol de rutare" care sa fie la fel de eficient pentru
orice retea. Deseori, tot comparând protocoale, se scapa din vedere ca solutia optima pentru un caz dat
este rutarea statica, si asta nu doar în retelele de mici dimensiuni, ci chiar si pentru interconectarea a
doua sisteme autonome diferite. BGP ofera un grad ridicat de flexibilitate, dar pentru a exploata aceasta
flexibilitate trebuie sa avem mai mult de o conexiune catre Internet. Daca avem un singur provider o
singura ruta default poate fi suficienta. 


_______________________________________
Cr3u$

pus acum 17 ani
   
Pagini: 1  

Mergi la