User Tools

Site Tools


proiecte:a-mac-protocol-for-wsn

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
proiecte:a-mac-protocol-for-wsn [2014/01/31 12:30]
alexandru.copot [Adresare si rutare]
proiecte:a-mac-protocol-for-wsn [2014/02/06 23:03] (current)
alexandru.copot [Rezultate]
Line 63: Line 63:
 unui sistem Network Time Protocol. Avand un ceas sincronizat absolut face ca toate operatiile unui sistem Network Time Protocol. Avand un ceas sincronizat absolut face ca toate operatiile
 cu durate relative sa aiba un comportament asemanator pe orice nod. cu durate relative sa aiba un comportament asemanator pe orice nod.
 +
 +Pentru determinarea perioadelor de sleep/momentelor de wake-up se folosesc urmatoarele formule:
 +<latex>
 + \[
 +   S = \sum_{n \in neighbours}^{} (n.local\_time + n.wakeup - n.sync\_rcv\_time)
 +  \]
 +
 +  \[
 +  next\_sleep =  \frac{old\_sleep + S}{N + 1} 
 +  \]
 +</latex>
 +===== Implementare =====
 +Toate mesajele transmise in retea au in format generic descris de:
 +<code C>
 + struct frame {
 +   uint8_t ll_src;
 +   uint8_t ll_dst;
 +   uint8_t src;
 +   uint8_t dst;
 +   uint8_t flags;
 +   uint8_t ttl;
 +   uint8_t data[];
 + };
 +</code>
 +Pachetele de control au setat unul din flag-urile: FLAG_RTS, FLAG_CTS, FLAG_TIME.
 +
 +Tabela de rutare ofera practic atat informatii despre rutare cat si despre ceasurile
 +nodurilor. O intrare in tabela de rutare:
 +<code C>
 + struct route {
 +   uint8_t  dst;
 +   uint8_t  next;
 +   uint8_t  hops;
 +   uint32_t this_time;
 +   uint32_t dst_time;
 +   uint16_t dst_sleep;
 +   uint8_t  used;
 + };
 +</code>
 +
 +
 +
 ===== Rezultate ===== ===== Rezultate =====
 +Am implementat functionalitatile prezentate anterior. Acestea au fost testate pe diverse topologii
 +folosind Avrora. 
 +
 +Algoritmii de sincronizat ceasul au fost testati si separat, in afara protocolului
 +de comunicatie, pentru a vedea cum se comporta la aparitia decalajelor de timp. Rezultatele au
 +aratat ca dupa sute si mii de iteratii, ceasurile nu s-au desincronizat mai mult decat erau
 +la pornire.
 +
 +{{:proiecte:mac:paper.pdf|}}
  
 +{{:proiecte:mac:mac.zip|}}
 ===== Bibliografie/Resurse ===== ===== Bibliografie/Resurse =====
  
  
proiecte/a-mac-protocol-for-wsn.1391164242.txt.gz · Last modified: 2014/01/31 12:30 by alexandru.copot