BATMAN

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare
BATMAN
software
Siglă
Tip protocol de rutare (nu este listat )
Dezvoltator Freifunk
Ultima versiune Batman-adv 2017.1 (23 mai 2017)
Sistem de operare Unix-like
Limba C.
Licență GNU GPL
( licență gratuită )
Site-ul web www.open-mesh.org

BATMAN ( Better Approach To Mobile Adhoc Networking ) este un protocol de rutare pentru rețele mesh adhoc multi-hop.

Dezvoltarea este gestionată de comunitatea Freifunk și este destinată să înlocuiască protocolul OLSR .

Ideea cheie din spatele BATMAN este descentralizarea cunoștințelor despre cea mai bună rută de rutare dintr-o rețea: niciun nod unic nu deține toate datele.

Această tehnică elimină necesitatea diseminării informațiilor despre modificările topologiei către fiecare nod din rețea. Fiecare nod unic stochează pur și simplu informații despre direcția din care și către care primește și respectiv trimite date.

În acest fel, datele sunt transmise de la nod la nod și pachetele urmează rute individuale create dinamic. Procedând astfel, se creează o rețea colectivă de informații .

La începutul anului 2007, dezvoltatorii BATMAN au început să experimenteze un sistem de rutare layer 2 (layer Ethernet) în locul unui layer 3. Pentru a-l diferenția de demonul de rutare layer 3, a fost adăugat sufixul „adv” (avansat).

În loc să trimită pachete UDP și să manipuleze tabele de rutare, oferă o interfață de rețea virtuală și gestionează transportul de pachete în mod transparent și autonom. Modulul batman-adv face parte din kernel-ul oficial Linux de la versiunea 2.6.38 [1] .

Operațiune

BATMAN are elementele protocoalelor de rutare clasice: detectează alte noduri BATMAN și identifică cea mai bună rută. De asemenea, ține evidența noilor noduri, notificând vecinii despre existența lor. În rețelele statice, administratorul de rețea decide ce rută face accesibil fiecare computer individual. Deoarece modificările topologice sunt constante în rețelele fără fir și pragurile de participare sunt scăzute, acest lucru trebuie automatizat cât mai mult posibil.

La intervale regulate, fiecare nod trimite o transmisie (mesaj generic adresat tuturor dispozitivelor) pentru a notifica vecinii despre prezența sa, aceste mesaje se numesc mesaje inițiator.

La rândul lor, vecinii vor transmite acest mesaj vecinilor lor, care vor face la fel.

Această metodă permite informațiilor să ajungă la fiecare nod din rețea. Pentru a găsi cea mai bună rută către un anumit nod, BATMAN numără mesajele inițiator primite și memorează de la ce vecin au fost redirecționați.

În mod similar cu protocoalele bazate pe vector distanță, dar spre deosebire de alte protocoale de stare de legătură, BATMAN nu încearcă să determine întreaga rută, ci folosind expeditorii de mesaje difuzate, doar primul pas în cea mai bună direcție. Datele sunt apoi transmise următorului vecin în acea direcție, care la rândul său va utiliza același mecanism. Acest proces se repetă până când datele ajung la destinație.

În plus față de rețelele fără fir, protocolul BATMAN poate fi implementat în rețele comune cu fir, cum ar fi Ethernet .

Istorie

Scopul a fost de a crea un protocol cât mai simplu, mai mic și mai rapid posibil, prin urmare părea rezonabil să împărțim dezvoltarea în mai multe faze prin implementarea funcțiilor mai complexe conform unui proces iterativ:

Prima versiune

În această fază a fost implementat algoritmul, testându-i practicitatea și adecvarea în acest scop. Portul UDP 1966 a fost ales pentru trimiterea și primirea mesajelor inițiator (mesaje de existență a nodului).

A doua versiune

Prima versiune a algoritmului a făcut o presupunere importantă: cu cât un nod primește mai repede mesaje inițiator de la altul, cu atât mai repede poate transmite un răspuns. Cu toate acestea, în rețelele fără fir, comunicarea unidirecțională poate avea loc foarte bine, de aceea a fost încorporat un protocol în protocolul care a conceput astfel de situații pentru a rezolva problemele apărute. Mecanismul permite nodului să determine dacă un vecin furnizează comunicații bidirecționale. Numai un nod bidirecțional este considerat parte a rețelei, celelalte fiind parțial excluse.

A treia versiune

Inovația majoră în această versiune este suportul pentru mai multe dispozitive de rețea, acest lucru permite poziționarea unui computer pe care rulează demonul BATMAN într-un punct central, fiind capabil să gestioneze simultan mai multe interfețe de rețea (fie cu fir, fie fără fir). Când se întâmplă acest lucru, BATMAN poate redirecționa pachetele în mai multe direcții fără întârzieri de retransmisie.

Circumstanțele speciale și fenomenele neobișnuite au fost abordate și contracarate în faza de determinare a celei mai bune rute pentru a preveni situațiile de rutare circulară care pot împiedica datele să ajungă la destinație.

Mai mult, orice nod capabil să ofere acces la Internet poate acum să notifice rețeaua. Alte noduri pot utiliza aceste informații pentru a evalua când există o conexiune la internet în apropierea lor și ce lățime de bandă este disponibilă, pot utiliza, de asemenea, un gateway specific sau permit BATMAN să determine, prin criterii precum viteza conexiunii, ce gateway să utilizeze.

Această versiune include, de asemenea, posibilitatea de a notifica dispozitivele fără daemonul BATMAN, o caracteristică utilă pentru conectarea unei rețele de acasă la rețeaua mesh. O antenă instalată pe acoperișul casei se va conecta la rețeaua fără fir prin BATMAN și restul dispozitivelor din casă vor fi anunțate ca fiind accesibile.

După cum este confirmat de analizele teoretice [2] , în condiții reale, această versiune a BATMAN a demonstrat niveluri ridicate de stabilitate în fața timpilor de convergență relativ lente [3] .

Notă

  1. ^ ( RO ) [1]
  2. ^ J. Chroboczek, Câteva comentarii despre protocolul de rutare BATMAN , pe lists.alioth.debian.org .
  3. ^ M. Abolhasan, B. Hagelstein, JC-P. Wang, Performanța reală a protocoalelor proactive actuale de plasă multi-hop , 2009.

Elemente conexe

Alte proiecte

linkuri externe

Software gratuit Free Software Portal : accesați intrările Wikipedia care se ocupă de software gratuit