rutare

40
Determinarea drumului Determinarea drumului Determinarea drumului de la sursă la Determinarea drumului de la sursă la destinaţie este “datoria” nivelului destinaţie este “datoria” nivelului 3. 3. R R uterele evaluează diferite drumuri uterele evaluează diferite drumuri şi şi alege dintre acestea cel mai bun către alege dintre acestea cel mai bun către destinaţie pentru transmiterea destinaţie pentru transmiterea datelor datelor . . Informaţiile de rutare pot fi Informaţiile de rutare pot fi configurate de către configurate de către administrator administrator ( ( rute rute static static e e ) ) sau determinate dinamic sau determinate dinamic de către protocoalele de rutare de către protocoalele de rutare . .

description

protocoale de rutare

Transcript of rutare

Page 1: rutare

Determinarea drumuluiDeterminarea drumului• Determinarea drumului de la sursă la Determinarea drumului de la sursă la

destinaţie este “datoria” nivelului destinaţie este “datoria” nivelului 3.3.• RRuterele evaluează diferite drumuriuterele evaluează diferite drumuri şi şi

alege dintre acestea cel mai bun către alege dintre acestea cel mai bun către destinaţie pentru transmiterea datelordestinaţie pentru transmiterea datelor..

• Informaţiile de rutare pot fi configurate Informaţiile de rutare pot fi configurate de către de către administrator (administrator (rute rute staticstaticee) ) sau sau determinate dinamic de către determinate dinamic de către protocoalele de rutareprotocoalele de rutare..

Page 2: rutare

Comunicaţii Comunicaţii End-to-EndEnd-to-End• Adresele de reţea Adresele de reţea

reprereprezintă diverse zintă diverse drumuri între ruteredrumuri între rutere..

• Prin învăţarea Prin învăţarea drumurilor drumurilor consistente între consistente între capetecapete,, ruterele pot ruterele pot reducereduce mesajele mesajele broadcastbroadcast şi şi spospori ri eficienţaeficienţa..

Page 3: rutare

Adresarea reţelelor şi a Adresarea reţelelor şi a calculatoarelor gazdăcalculatoarelor gazdă

• Adresele de reţea Adresele de reţea permit ca datele să permit ca datele să fie direcţionate de la fie direcţionate de la o reţea la altă reţeao reţea la altă reţea..

• Adresele hAdresele host ost sunt sunt atribuite local şi atribuite local şi permit distribuirea permit distribuirea datelor către datelor către calculatoarele gazdăcalculatoarele gazdă..

Page 4: rutare

Funcţiunile unui ruterFuncţiunile unui ruter• RuterRuterele au rolul de a determina ruta şi de a ele au rolul de a determina ruta şi de a

face comutarea pachetelorface comutarea pachetelor..– Determinarea rutei implică examinarea Determinarea rutei implică examinarea

porţiunii de reţea a adresei pentru a porţiunii de reţea a adresei pentru a determina pe ce interfaţă de ieşire va determina pe ce interfaţă de ieşire va trimite datele în exteriortrimite datele în exterior..

– Comutarea pachetelor reprezintă acţiunea Comutarea pachetelor reprezintă acţiunea de intrarea unui pachet pe o anumită de intrarea unui pachet pe o anumită interfaţă şi direcţionarea lui pe o altă interfaţă şi direcţionarea lui pe o altă interfaţă (de ieşire)interfaţă (de ieşire)..

Page 5: rutare

Protocoale rutate Protocoale rutate vs. vs. Protocoale de rutareProtocoale de rutare

Page 6: rutare

Protocoale rProtocoale rututatatee• Un protocol rutat este orice protocol de

reţea ce oferă suficiente informaţii în adresa de reţea (L3) pentru a permite pachetului să fie direcţionat de la un host la altul pe baza unei scheme de adresare.

• Exemple de protocoale rutate:– IP– IPX– Apple Talk

Page 7: rutare

Protocoale de rutareProtocoale de rutare• Protocoalele de rutare oferă suport pentru un

protocol rutat prin oferirea unor mecanisme de partajare a informaţiilor legate de rutare. Mesajele protocoalelor de rutare se schimbă între rutere. Un protocol de rutare permite ruterelor să comunice între ele pentru a actualiza şi a administra tabelele de rutare.

• Exemple de protocoale de rutare din TCP/IP sunt: RIP (Routing Information Protocol) IGRP (Interior Gateway Routing Protocol) EIGRP (Enhanced Interior Gateway Routing Protocol) OSPF (Open Shortest Path First)

Page 8: rutare

Rutare mRutare multi-protocolulti-protocol

Page 9: rutare

Rutare mRutare multi-protocolulti-protocol• Ruterele sunt capabile să ofere suport

pentru mai multe protocoale de rutare diferite şi să administreze tabele de rutare pentru diverse protocoale rutate. Această capacitate permite unui ruter să transmită pachete provenite de la diverse protocoale rutate de-a lungul aceleiaşi legături fizice.

Page 10: rutare

Rutare sRutare statictaticăă vs. vs. dinamicădinamică

• Rutarea dinamică acţionează diferit faţă de cea statică.

• Adiministratorul de reţea utilizează comenzi de configurare pentru a porni rutarea dinamică.

• Procesul de rutare actualizezază automat informaţiile pe care le posedă ruterul ori de câte ori apar noi informaţii din inter-reţea.

• Modificările făcute în tabelele de rutare dinamice sunt schimbate între rutere în cadrul procesului de actualizare.

Page 11: rutare

Rutare sRutare statictaticăă vs. vs. dinamicădinamică

• Informaţiile legate de rutele statice sunt administrate manual de către administratorul de reţea care introduce aceste informaţii în configuraţia ruterului.

• Administratorul trebuie să actualizeze manual rutele statice ori de câte ori topologia inter-reţelei se modifică.

Page 12: rutare

Rutarea sRutarea statictaticăă• Rutarea statică permite Rutarea statică permite

selectarea informaţiilor selectarea informaţiilor pe care le oferim legate pe care le oferim legate de reţea (reţea de reţea (reţea securizată). Rutarea securizată). Rutarea dinamică oferă toate dinamică oferă toate informaţiile legate de informaţiile legate de reţeareţea..

• Atunci când o reţea este Atunci când o reţea este accesibilă printr-o accesibilă printr-o singură rută, rutarea singură rută, rutarea statică elimină traficul statică elimină traficul nedorit ce poate bloca nedorit ce poate bloca reţeaua. reţeaua.

Page 13: rutare

Rute impliciteRute implicite• Rutele implicite sunt utilizate de Rutele implicite sunt utilizate de

către un ruter pentru a fi folosite către un ruter pentru a fi folosite în cazul destinaţiilor necunoscute. în cazul destinaţiilor necunoscute. Aceste rute sunt determinate în Aceste rute sunt determinate în mod staticmod static. .

Page 14: rutare

Avantajele rutării Avantajele rutării dinamicedinamice

• Dacă ruta dintre Dacă ruta dintre A A şişi D D ar ar fi fost statică, nu s-ar fi fi fost statică, nu s-ar fi produs nici un flux de dateprodus nici un flux de date..

• Rutarea diRutarea dinamicnamică permite ă permite lui lui A A să descopere să descopere defecţiunea rutei şi să facă defecţiunea rutei şi să facă reconfigurarea către reconfigurarea către B.B.

• Atunci când rutaAtunci când ruta A-D A-D este este ok,ok, A A vava reconfigur reconfigura ruta, a ruta, aducând-o la starea aducând-o la starea iniţialăiniţială..

Page 15: rutare

Rutarea dinamicăRutarea dinamică• Succesul rutării dinamice

depinde de două funcţii de bază ale unui ruter:– Administrarea tabelei de

rutare– Distribuirea, la diferite

intervale de timp, a tabelei de rutare (sub formă de actualizare a rutării) către ruterele adiacente

Page 16: rutare

Rutarea dinamicăRutarea dinamică• Rutarea dinamică se

bazează pe un protocol de rutare pentru a putea partaja informaţiile cu alte rutere.

• Un protocol de rutare defineşte un set de reguli utilizate de către un ruter atunci când comunică cu ruterele adiacente.

Page 17: rutare

Rutarea dinamicăRutarea dinamică• De exemplu, un protocol

de rutare poate descrie: Modul de trimitere a

actualizărilor Informaţiile ce sunt

conţinute în aceste actualizări

Momentul în care sunt trimise informaţiile

Modul de localizare a destinatarilor

Page 18: rutare

Modul de alegere a Modul de alegere a rutelor dinamicerutelor dinamice

• Protocoalele de rutare utilizează algoritmi Protocoalele de rutare utilizează algoritmi pentru a alege cea mai bună rută către pentru a alege cea mai bună rută către destinaţiedestinaţie..

• Tabelele de rutare sunt actualizate pentru a se Tabelele de rutare sunt actualizate pentru a se putea alege cea mai bună rută către destinaţieputea alege cea mai bună rută către destinaţie..

• Algoritmul generează un număr denumit Algoritmul generează un număr denumit metricămetrică pentru a determina cea mai bună rută pentru a determina cea mai bună rută..

• Cu cât metrica este mai mică, cu atât ruta este Cu cât metrica este mai mică, cu atât ruta este mai bunămai bună..

Page 19: rutare

Metrici de rutareMetrici de rutare• MetricMetricile pot fi ile pot fi

determinate de o determinate de o singură singură caracteristică sau caracteristică sau pot fi determinate pot fi determinate prin combinarea prin combinarea unor caracteristici unor caracteristici diverse.diverse.

Page 20: rutare

Metrici de rutareMetrici de rutare• Metrici Metrici utilizate în mod utilizate în mod

obiobişnuitşnuit::– Lăţimea de bandăLăţimea de bandă– ÎntârzierileÎntârzierile– Încărcarea reţeleiÎncărcarea reţelei– FiabilitateaFiabilitatea– Numărul de hNumărul de hopop-uri-uri– CostCostulul

Page 21: rutare

Clase de protocoale de Clase de protocoale de rutarerutare• Toate protocoalele de rutare sunt Toate protocoalele de rutare sunt

clasificlasificate astfelcate astfel::– Bazate pe “Bazate pe “Distance VectorDistance Vector””– Bazate pe “Bazate pe “Link-StateLink-State””– HHiibridbridee

Page 22: rutare

Protocoale de rutare bazate pe Protocoale de rutare bazate pe vectorul distanţăvectorul distanţă

• Abordarea bazată pe vectorul distanţă determină direcţia (vectorul) şi distanţa către orice legătură în inter-reţea.

Page 23: rutare

Protocoale de rutare bazateProtocoale de rutare bazate starea legăturiistarea legăturii

• Abordarea “link state” reface topologia precisă a întregii inter-reţele (sau cel puţin a porţiunii de reţea în care ruterul este situat). Acest tip de abordare mai poartă numele şi de SPF(“shortest path first”).

Page 24: rutare

Protocoale de rutare hibrideProtocoale de rutare hibride

• Abordarea hibridă combină aspecte legate de starea legăturii cu cele legate de algoritmii vectorilor distanţă.

Page 25: rutare

ConvergeConvergenţănţă• Ori de câte ori se modifică

topologia de reţea din cauza creşterii, reconfigurării sau căderilor, baza de cunoaştere a reţelei trebuie, de asemenea, să se modifice.

• Baza de cunoaştere trebuie să reflecte o vedere clară şi consistentă a noii topologii. Această abordare se numeşte convergenţă.

Page 26: rutare

ConvergeConvergenţănţă• Atunci când toate ruterele dintr-o

inter-reţea operează pe baza aceleiaşi baze de cunoaştere, se spune că inter-reţeaua este convergentă.

• Cu cât convergenţa este mai rapidă, cu atât este mai bine pentru reţea; se reduce astfel perioada de timp în care ruterele ar putea lua decizii greşite privind procesul de rutare.

Page 27: rutare

Rutarea bazată pe Rutarea bazată pe vectorul distanţăvectorul distanţă• Algoritmii de rutare bazaţi pe Algoritmii de rutare bazaţi pe

vectorul distanţă transmit periodic vectorul distanţă transmit periodic copii ale tabelelor de rutare de la copii ale tabelelor de rutare de la ruter la ruterruter la ruter. .

• Aceste actualizări periodice între Aceste actualizări periodice între rutere asigură transmiterea rutere asigură transmiterea modificărilor de topologiemodificărilor de topologie..

Page 28: rutare

Rutarea bazată pe Rutarea bazată pe vectorul distanţăvectorul distanţă

• Fiecare ruter Fiecare ruter recepţionează o tabelă recepţionează o tabelă de rutare din partea de rutare din partea vecinului conectat directvecinului conectat direct..

• Fiecare Fiecare ruterruter calculează calculează “vectorul distanţ㔓vectorul distanţă” (num(numărulărul de de hophopuriuri, etc.) , etc.) pentru fiecare locaţiepentru fiecare locaţie..

• Acest lucru continuă Acest lucru continuă până când toate ruterele până când toate ruterele partajează aceeaşi bază partajează aceeaşi bază de cunoaştere (aceleaşi de cunoaştere (aceleaşi informaţii). Acest lucru informaţii). Acest lucru poartă numele de poartă numele de convergenţă.convergenţă.

Page 29: rutare

Rutarea bazată pe Rutarea bazată pe vectorul distanţăvectorul distanţă

• Ruterele direct conectate au un Ruterele direct conectate au un vector distanţă în valoare devector distanţă în valoare de 0. 0.

• A->B=0, A->D=0A->B=0, A->D=0• RRuteruluterul B r B raaportportează ruteruluiează ruterului A A

existenţa unei rute către ruterul existenţa unei rute către ruterul C.C.

• A->C=1A->C=1• RuterRuterulul C r C raaportporteazăează rruteruteruluiului B B

existenţa unei rute către rexistenţa unei rute către ruteruterulul D.D.

• B->D=1B->D=1• RuterRuterulul B r B raaportportează ruteruluiează ruterului A A

de existenţa unei rute către de existenţa unei rute către ruterulruterul D. D.

• A->D=2A->D=2

Page 30: rutare

Rutarea bazată pe Rutarea bazată pe vectorul distanţăvectorul distanţă

Page 31: rutare

Rutarea bazată pe vectorul Rutarea bazată pe vectorul distanţădistanţă -Modificări de -Modificări de topologietopologie

• Fiecare ruter va trimite Fiecare ruter va trimite periodicperiodic propria tabelă propria tabelă de rutere către ruterele de rutere către ruterele adiacente (vecine)adiacente (vecine)..

• În momentul în care apar În momentul în care apar modificări de topologiemodificări de topologie, , ruterele afectate ruterele afectate actualizează propriile actualizează propriile tabele de rutare şi apoi tabele de rutare şi apoi direcţionează modificăriledirecţionează modificările către ruterele direct către ruterele direct conectateconectate..

Page 32: rutare

Cicluri infinite de rutareCicluri infinite de rutare• Ciclurile infinite de rutare pot Ciclurile infinite de rutare pot

apărea în cazul unei slabe apărea în cazul unei slabe convergenţe pe care o poate convergenţe pe care o poate induce apariţia unei noi induce apariţia unei noi configuraţii ce produce informaţii configuraţii ce produce informaţii inconsistente în tabelele de rutareinconsistente în tabelele de rutare

Page 33: rutare

Cicluri infinite de rutareCicluri infinite de rutare• Înainte de căderea reţelei Înainte de căderea reţelei

1, toate ruterele posedă 1, toate ruterele posedă informaţii corecte de informaţii corecte de rutarerutare.. Reţeaua este Reţeaua este convergentă. Presupunem convergentă. Presupunem în continuare că în continuare că ruta ruta preferată a ruteruluipreferată a ruterului C C către reţeaua 1 se face către reţeaua 1 se face prin ruterul Bprin ruterul B iar vectorul iar vectorul distanţă de la ruterul distanţă de la ruterul C C la la reţeaua reţeaua 1 1 eesstete 3. 3.

Page 34: rutare

Cicluri infinite de rutareCicluri infinite de rutare• Atunci când reţeaua 1 cade,

ruterul E trimite o actualizare către ruterul A.

• În acest moment, ruterul A blochează rutarea pachetelor către reţeaua 1. Totuşi, ruterele B, C şi D pot continua să facă acest lucru deoarece ele nu au fost încă informate despre căderea reţelei.

• Atunci când ruterul A trimite actualizarea, ruterele B şi D blochează rutarea către reţeaua 1.

• Cu toate acestea, ruterul C nu a recepţionat actualizarea. Pentru ruterul C, reţeaua 1 este încă disponibilă prin intermediul ruterului B.

Page 35: rutare

Cicluri infinite de rutareCicluri infinite de rutare• Ruterul C trimite o actualizare Ruterul C trimite o actualizare

periodicperiodică către ruterul Dă către ruterul D,, indicând o rută către reţeaua indicând o rută către reţeaua 1 prin intermediul ruterului B.1 prin intermediul ruterului B.

• RuterRuterulul D D îşi modifică tabela îşi modifică tabela de rutare pentru a reflecta de rutare pentru a reflecta această informaţie incorectă această informaţie incorectă transmiţând-o mai departe transmiţând-o mai departe către ruterulcătre ruterul A. A.

• RuterRuterulul A A trimite informaţia trimite informaţia către ruterele B şi Ecătre ruterele B şi E ş.a.m.dş.a.m.d. . Orice pachet destinat reţelei Orice pachet destinat reţelei 11 va produce un ciclu infinit de va produce un ciclu infinit de la ruterulla ruterul C C cătrecătre B B cătrecătre A A cătrecătre D D şi înapoi cătreşi înapoi către C. C.

Page 36: rutare

Cicluri infinite de rutareCicluri infinite de rutare

• Dacă nu se iau alte Dacă nu se iau alte măsuri, acest proces va măsuri, acest proces va continua până în continua până în momentul în care un momentul în care un anumit proces va opri anumit proces va opri această acţiuneaceastă acţiune..

• Acest fenomen se Acest fenomen se numeşte “numeşte “count to count to infinityinfinity””..

Page 37: rutare

SoluSoluţii pentru ciclurile ţii pentru ciclurile infinite infinite –– DefinDefinirea unuiirea unui maximmaxim

• OO soluţie pentru soluţie pentru ciclurile infinite este ciclurile infinite este aceea de a seta o aceea de a seta o valoare maximă pentru valoare maximă pentru o metrică (de exemplu o metrică (de exemplu numărul de hopuri numărul de hopuri <16)<16)

• Dacă vectorul distanţă Dacă vectorul distanţă depăşeşte acest număr depăşeşte acest număr maxim, ruta este maxim, ruta este înlăturatăînlăturată..

Page 38: rutare

SoluSoluţii pentru ciclurile ţii pentru ciclurile infinite infinite –– “ “Split horizonSplit horizon””

• ““Split horizonSplit horizon” specifică ” specifică faptul că nu este recomandat faptul că nu este recomandat să se trimită informaţii să se trimită informaţii despre o rută de la care a despre o rută de la care a provenit înainte o provenit înainte o actualizareactualizare..

• Atunci când ruterulAtunci când ruterul A A iniţiază o actualizare în iniţiază o actualizare în momentul căderii reţeleimomentul căderii reţelei 1 1, , nici un alt ruter nu poate nici un alt ruter nu poate transmite ruterului transmite ruterului A A că are că are o ruta validă către reţeaua o ruta validă către reţeaua 1.1.

Page 39: rutare

SoluSoluţii pentru ciclurile ţii pentru ciclurile infinite infinite –– “Hold down timers” “Hold down timers”

• Atunci când apare o nouă Atunci când apare o nouă actualizare datorită actualizare datorită căderii unei rute, ruterul căderii unei rute, ruterul porneşte un porneşte un hold-down hold-down timer pentru acea rutătimer pentru acea rută..

• Rutele actualizate cu Rutele actualizate cu metrici mai bune sunt metrici mai bune sunt permise iar rutele cu o permise iar rutele cu o valoare mai mare a valoare mai mare a metricii sunt ignorate în metricii sunt ignorate în timpul acestui “timpul acestui “hold-down hold-down timetime””..

Page 40: rutare

Algoritmi “Algoritmi “Distance VectorDistance Vector””

• BaBazaţi pe algoritmizaţi pe algoritmi• Se atribuie numere Se atribuie numere

“d“distance vectoristance vector” ” fiecărei rutefiecărei rute

• PeriodicPeriodic se actualizează se actualizează întreaga tabelă de întreaga tabelă de rutarerutare

• RuterRuterele actualizeză ele actualizeză doar vecinii direct doar vecinii direct conectaţiconectaţi

• Ciclurile infinite de Ciclurile infinite de rutare sunt cauzate de rutare sunt cauzate de slaba convergenţăslaba convergenţă

• Exemplu de ciclu infinit – Exemplu de ciclu infinit – “c“count to ount to iinfinitynfinity””

• Ciclurile infinite sunt Ciclurile infinite sunt rezolvate prin setarea rezolvate prin setarea unei valori maxime a unei valori maxime a metricii iar cele “splitmetricii iar cele “split horizonhorizon” folosesc” folosesc ““hold-hold-down timersdown timers””

• RIP & IGRP RIP & IGRP sunt exemple sunt exemple de protocoale de rutare de protocoale de rutare ““distance vectordistance vector””