OLSR

Versiunea actuală a paginii nu a fost încă revizuită de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită la 28 decembrie 2016; verificările necesită 9 modificări .

OLSR ( Optimized Link-State Routing ) este un  protocol de rutare pentru MANET care poate fi folosit și în alte rețele wireless. OLSR este un protocol de rutare proactiv care utilizează mesageria de control al topologiei și salut pentru a obține informații despre topologia rețelei. Nodurile folosesc aceste informații pentru a determina următorul hop din calea pachetului rutat. Este unul dintre cele mai populare protocoale utilizate pentru rutarea în rețelele fără fir MANET [1] .

Cum funcționează

OLSR se bazează pe un mecanism de difuzare pentru actualizarea informațiilor despre topologia rețelei . O caracteristică a protocolului este că această informație este cunoscută de fiecare nod din rețea. În OLSR, gazda trimite un așa-numit mesaj HELLO. Modificările în topologia rețelei sunt detectate de noduri folosind mesajele HELLO primite de la vecini. Aceste mesaje conțin adresa proprie a nodului care a trimis această notificare, precum și o listă cu toți vecinii săi disponibili, adresele acestora, indicând tipul de conexiune (simetrică sau asimetrică). Astfel, nodul își informează vecinii despre conexiunile de care dispune. Fiecare abonat stochează informații despre vecinii săi cu unul (vecini) [2] și cu doi hop (vecini cu doi hop) [3] . Mesajele HELLO sunt trimise la un interval specificat. Dacă într-un anumit timp nodul nu primește un mesaj HELLO de la un vecin, atunci conexiunea cu acesta este considerată întreruptă. Modificarea corespunzătoare se face în tabelul de topologie a rețelei abonatului.

În plus față de orice altceva din rețea, nodurile difuzează periodic un mesaj TC (control topologie). Acest mesaj conține informații despre conexiunea abonatului cu vecinii one-hop. Pe baza informațiilor primite din mesajele TS și HELLO, nodul construiește un grafic care descrie ideea de a construi o rețea pentru acest nod. Folosind acest grafic, este construit un tabel cu cele mai scurte căi pentru transferul de informații către fiecare nod.

Evident, există un dezavantaj semnificativ în această metodă de organizare a comunicării între noduri. O situație naturală este atunci când un vecin cu două salturi poate fi un singur salt pentru doi sau mai mulți vecini cu un singur salt ai nodului de transmisie. Apoi va fi creată o situație în care vecinul cu două hop va primi același mesaj HELLO de mai multe ori. Pentru a face față unor astfel de situații, OLSR oferă o metodă de optimizare a distribuirii informațiilor despre starea rețelei Multipoint Relay (MPR). Conform tabelului de topologie a rețelei, nodul selectează astfel de vecini cu un singur salt cu o conexiune simetrică care sunt vecini cu un singur salt a cel puțin unui vecin cu două salturi ale acestui nod. Această metodă vă permite să reduceți traficul de difuzare [4] .

Format pachet

Antetul pachetului

În schemă, anteturile IP și UDP au fost omise.

0 unu 2 3 patru 5 6 7 opt 9 zece unsprezece 12 13 paisprezece cincisprezece 16 17 optsprezece 19 douăzeci 21 22 23 24 25 26 27 28 29 treizeci 31
lungimea pachetului numărul secvenței pachetului
titlul mesajului
Mesaj
titlul mesajului
Mesaj
lungimea pachetului Dimensiunea pachetului în octeți. Numărul secvenței pachetului Numărul de ordine al pachetului. Ar trebui să crească cu unul de fiecare dată când este trimis unul nou.

Mesaje

Subiectul postării

0 unu 2 3 patru 5 6 7 opt 9 zece unsprezece 12 13 paisprezece cincisprezece 16 17 optsprezece 19 douăzeci 21 22 23 24 25 26 27 28 29 treizeci 31
tipul mesajului Vtime dimensiunea mesajului
Adresa inițiatorului
Timpul sa traiesti Hop Count Numărul secvenței mesajului
Mesaj
tipul mesajului Tipul de mesaj trimis. Valorile de la 0 la 127 sunt rezervate. Vtime ( timp de valabilitate ) Perioada pentru care un mesaj este considerat actualizat până la primirea unui nou mesaj. dimensiunea mesajului Dimensiunea mesajului. Adresa inițiatorului Adresa creatorului mesajului. Timpul sa traiesti Numărul maxim de „hopuri” ( hops în engleză ) pe care trebuie să le facă mesajul. Dacă este 0 sau 1, atunci mesajul nu trebuie transmis. Fiecare salt ar trebui să scadă cu unul. Hop Count Numărul de „sărituri” pe care le-a făcut mesajul. Ar trebui să crească cu 1 cu fiecare „săritură”. Numărul secvenței mesajului Numărul de ordine al mesajului. Ar trebui să fie crescut cu unul de fiecare dată când este compus un mesaj nou. Folosit pentru a preveni retrimiterea aceluiași mesaj.

HELLO_MESSAGE

Mesajele HELLO sunt folosite pentru a clarifica configurația curentă a rețelei. Expediat periodic.

0 unu 2 3 patru 5 6 7 opt 9 zece unsprezece 12 13 paisprezece cincisprezece 16 17 optsprezece 19 douăzeci 21 22 23 24 25 26 27 28 29 treizeci 31
rezervat Htime Disponibilitate
Cod de legătură rezervat Dimensiunea mesajului link
Adresa vecinului
rezervat Htime Disponibilitate
Cod de legătură rezervat Dimensiunea mesajului link
Adresa vecinului
Adresa vecinului

Biții rezervați trebuie să fie 0 pentru a respecta specificația.

Htime ( Interval de emisie Hello ) Frecvența trimiterii mesajelor HELLO. Disponibilitate Disponibilitatea nodului de a redirecționa mai departe mesajele primite. Poate lua o valoare de la 0 (WILL_NEVER, nu va transmite) la 7 (WILL_ALLWAYS, va transmite întotdeauna), inclusiv. Valoarea se poate modifica în funcție de starea nodului, adică dacă dispozitivul funcționează pe baterie, acesta poate scădea nivelul de disponibilitate pe măsură ce bateria scade. Cod de legătură Caracterizează lista ulterioară de vecini ai acestui nod. Conform specificației, acesta trebuie să fie mai mic de 16 și trebuie să conțină două câmpuri a câte doi biți fiecare
7 6 5 patru 3 2 unu 0
0 0 0 0 Tipul de vecin Tip link
Dimensiunea mesajului link Mărimea mesajului în octeți de la câmpul Cod de legătură până la următorul câmp Cod de legătură sau până la sfârșitul mesajului.

TC_MESSAGE

Folosit pentru a transmite informații despre vecinii MPR ai nodului.

0 unu 2 3 patru 5 6 7 opt 9 zece unsprezece 12 13 paisprezece cincisprezece 16 17 optsprezece 19 douăzeci 21 22 23 24 25 26 27 28 29 treizeci 31
ANSN rezervat
Adresa vecinului
Adresa vecinului
ANSN (Numărul de secvență de vecin anunțat) Numărul de ordine al mesajului. Ar trebui să fie crescut cu unul de fiecare dată când este compus un mesaj nou. Caracterizează prospețimea informațiilor din mesaj.

Note

  1. Kiryanov A., Safonov A., Khorov E. Metode pentru studierea caracteristicilor tranzitorii ale protocolului OLSR atunci când nodul de comunicație este pornit / oprit  // Procesele celei de-a 33-a conferințe a IPTP RAS „Tehnologii și sisteme informaționale (ITiS) ". — 2010.
  2. Detectarea vecinilor
  3. Detectarea vecinilor cu două hop
  4. T. H. Clausen, G. Hansen, L. Christensen și G. Behrmann. Protocolul optimizat de rutare a stării legăturilor, evaluare prin experimente și simulare  // Proceedings of the IEEE Conference on Wireless Personal Multimedia Communications (WPMC). — octombrie 2001.

Link -uri