Per costruire una rete di sensori è necessario che i nodi della rete, che potrebbe essere utilizzata ad esempio in ambito domotico, comunichino tra loro e con un’eventuale stazione base. È dunque utile prevedere meccanismi di gestione dei messaggi e opportuni protocolli di comunicazione.
Per quanto riguarda la trasmissione dati tra i nodi della rete, si sceglie generalmente di scomporre il messaggio in pacchetti, di lunghezza e caratteristiche prefissate. I primi byte di ogni pacchetto compongono l’header, e forniscono informazioni riguardo la natura stessa del messaggio, ad esempio il nodo sorgente, il nodo destinazione, la lunghezza del dato. Ad ogni invio o ricezione di messaggi, inoltre, i nodi seguono una procedura particolare detta di handshaking, letteralmente “stringersi la mano”.
I nodi infatti si “salutano” attraverso una sequenza predefinita che, se non completata, è indice di errore e manifesta la necessità di ritrasmissione. Un tipico esempio di sequenza di handshaking ricalca i seguenti passaggi logici: richiesta di invio, pronto a ricevere, messaggio inviato, messaggio ricevuto.
Una volta ricevuto un messaggio però, il nodo potrebbe trovarsi nella situazione di doverlo ritrasmettere, nel caso si renda conto tramite un confronto di non essere il nodo destinazione, ma soltanto un intermediario tra la sorgente e la destinazione del messaggio.
La tecnica più semplice per la ritrasmissione del messaggio è detta di “store and forward”: ogni pacchetto viene completamente memorizzato in una memoria buffer (cioè “tampone”) interna al nodo e ritrasmesso per intero.