Rutare prin difuzare

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

Rutare prin difuzare

Pentru unele aplicații, gazdele trebuie să trimită mesaje către multe sau chiar pe toate celelalte gazde. De exemplu, un serviciu care distribuie rapoarte meteo, actualizări ale pieței mărfurilor sau programe radio live poate funcționa cel mai bine prin transmiterea către toate gazdele și permițând celor interesați să citească datele.

Trimiterea simultană a unui pachet către toate destinațiile se numește difuzare : s-au propus multe metode pentru a realiza acest lucru.

O metodă de difuzare care nu necesită anumite caracteristici către rețea necesită ca sursa să trimită un pachet către toate destinațiile. Această metodă nu numai că risipește lățimea de bandă disponibilă enorm, ci necesită și ca sursa să aibă o listă completă a tuturor destinațiilor. În practică, aceasta poate fi singura opțiune, dar este cea mai puțin dorită metodă.

Un alt candidat evident este inundațiile . Deși inundațiile sunt slab potrivite pentru comunicațiile obișnuite punct-la-punct, există considerente serioase în favoarea sa în cazul difuzării, mai ales dacă niciuna dintre celelalte metode descrise mai jos nu este aplicabilă. Problema inundațiilor ca tehnică de difuzare este aceeași ca și în cazul comunicațiilor punct la punct: generează prea multe pachete și consumă prea multă lățime de bandă.

Un al treilea algoritm este rutare multi-destinație . Dacă se folosește această metodă, fiecare pachet conține fie o listă de destinații, fie o hartă de biți care indică destinațiile dorite. Când un pachet ajunge la un router, acesta verifică toate destinațiile pentru a determina setul de linii de ieșire care ar trebui utilizate (este necesară o linie de ieșire dacă aparține celei mai bune rute către cel puțin una dintre destinații). Routerul generează o nouă copie a pachetului pentru fiecare linie de ieșire și include în fiecare pachet doar destinațiile care urmează să utilizeze acea linie. De fapt, setul de destinații este împărțit între liniile de ieșire. După un număr suficient de hamei, fiecare pachet va conține o singură destinație și poate fi tratat ca un pachet normal.

Rutare multidirecțională este similară cu trimiterea pachetelor adresate separat, cu excepția faptului că atunci când multe pachete trebuie să urmeze același traseu, unul dintre ei plătește biletul complet, iar celelalte urmează gratuit.

Un al patrulea algoritm de difuzare face explicită utilizarea arborelui chiuvetei în raport cu routerul care pornește difuzarea sau a oricărui alt arbore de întindere convenabil. Un copac de întindere este un subset al rețelei care include toate routerele, dar nu conține bucle. Dacă fiecare router știe care dintre liniile sale aparțin arborelui de întindere, acesta poate copia un pachet de transmisie de intrare pe toate liniile aparținând arborelui de întindere, cu excepția celei de intrare. Această metodă folosește foarte bine lățimea de bandă, generând cel mai mic număr de pachete necesare pentru a face treaba. Singura problemă este că fiecare router trebuie să cunoască un anumit arbore de întindere pentru ca acesta să fie aplicabil. Uneori aceste informații sunt disponibile (de exemplu, cu rutare de stare a legăturii), dar uneori nu (de exemplu, cu rutare vector distanță).

Ultimul nostru algoritm de difuzare este o încercare de a aproxima comportamentul precedentului, chiar și atunci când routerele nu știu nimic despre întinderea copacilor. Când un pachet de difuzare ajunge la un router, acesta verifică dacă pachetul a ajuns pe linia utilizată în mod normal pentru a trimite pachete la sursa de difuzare. Dacă da, există șanse mari ca același pachet de difuzare să fi urmat cel mai bun traseu de la router și, prin urmare, este primul exemplar care ajunge la router. Dacă acesta este cazul, routerul transmite copii ale acestuia pe toate liniile, cu excepția celei primite. Dacă, pe de altă parte, pachetul de difuzare a sosit de pe o altă linie decât cea mai bună pentru a ajunge la sursă, pachetul este aruncat ca un duplicat probabil.

Un exemplu este redirecționarea traseului invers . Principalul avantaj este că este rezonabil de eficient și ușor de implementat. Nu este nevoie ca routerele să cunoască arborii de întindere și nici încărcarea suplimentară a listei de destinație sau a bitmap-ului în fiecare pachet de difuzare ca în adresarea multi-destinație. Nici măcar nu necesită un mecanism special pentru a opri procesul, cum ar fi inundațiile (sau un contor de salt în fiecare pachet și o cunoaștere a priori a diametrului rețelei sau o listă de pachete deja văzute pentru fiecare sursă).

Informatică Portal IT : accesați intrările Wikipedia care se ocupă cu IT