Passa al contenuto principale

1. Introduzione (Introduction)

1. Introduzione (Introduction)

Il documento IPv6-over-IEEE 802.15.4 [RFC4944] specifica come IPv6 venga trasportato su una rete IEEE 802.15.4 con l’aiuto di un livello di adattamento che si trova tra il livello Media Access Control (MAC) e il livello di rete IP. Un collegamento in un Low-power Wireless Personal Area Network (LoWPAN) è caratterizzato come lossy, a bassa potenza, a basso bit-rate, a corto raggio; con molti nodi che risparmiano energia tramite lunghi periodi di sleep. Il multicast, come usato in IPv6 Neighbor Discovery (ND) [RFC4861], non è desiderabile in una rete wireless a bassa potenza e con perdite. Inoltre, i collegamenti LoWPAN sono asimmetrici e non transitivi per natura. Un LoWPAN è potenzialmente composto da un grande numero di portate radio sovrapposte. Sebbene una data portata radio abbia capacità di broadcast, l’aggregazione di tali portate è una complessa struttura Non-Broadcast Multiple Access (NBMA) [RFC2491] con generalmente nessuna capacità di multicast a livello LoWPAN. L’ambito link-local è in realtà definito dalla raggiungibilità e dalla potenza radio. Pertanto, possiamo considerare un LoWPAN come composto da collegamenti con undetermined connectivity properties (proprietà di connettività indeterminate) come in [RFC5889], insieme alle corrispondenti address model assumptions (ipotesi del modello di indirizzamento) definite in tale documento.

Questa specifica introduce le seguenti ottimizzazioni a IPv6 Neighbor Discovery [RFC4861] specificamente mirate a reti a bassa potenza e con perdite come i LoWPAN:

  • Interazioni iniziate dall’host per consentire host in sleep.
  • Eliminazione della risoluzione degli indirizzi basata su multicast per gli host.
  • Funzionalità di registrazione dell’indirizzo dell’host usando una nuova opzione nei messaggi Neighbor Solicitation (NS) e Neighbor Advertisement (NA) in unicast.
  • Una nuova opzione Neighbor Discovery per distribuire agli host il contesto di compressione dell’intestazione 6LoWPAN.
  • Distribuzione multi-hop di prefissi e del contesto di compressione dell’intestazione 6LoWPAN.
  • Duplicate Address Detection (DAD) multi-hop, che usa due nuovi tipi di messaggi ICMPv6.

I due elementi multi-hop possono essere sostituiti da un meccanismo di protocollo di routing se lo si desidera; vedere la Sezione 1.4.

Il documento definisce tre nuove opzioni di messaggio ICMPv6: l’Address Registration Option (ARO), l’Authoritative Border Router Option (ABRO) e la 6LoWPAN Context Option (6CO). Definisce inoltre due nuovi tipi di messaggi ICMPv6: la Duplicate Address Request (DAR) e la Duplicate Address Confirmation (DAC).

1.1. Limiti di IPv6 Neighbor Discovery (The Shortcomings of IPv6 Neighbor Discovery)

IPv6 Neighbor Discovery [RFC4861] fornisce diversi meccanismi importanti usati per la scoperta dei router, la risoluzione degli indirizzi, la Duplicate Address Detection e i messaggi Redirect, insieme alla scoperta di prefissi e parametri.

Dopo l’accensione e l’inizializzazione della rete nelle reti IPv6 Ethernet, un nodo si unisce all’indirizzo multicast solicited-node sull’interfaccia e poi esegue la Duplicate Address Detection (DAD) per l’indirizzo link-local acquisito inviando un messaggio multicast solicited-node sul collegamento. Dopodiché invia messaggi multicast all’indirizzo multicast all-routers per sollecitare Router Advertisements (RAs). Se l’host riceve un RA valido con il flag A (autonomous address configuration), il autoconfigura l’indirizzo IPv6 con il prefisso annunciato nel messaggio RA. Inoltre, i router IPv6 di solito inviano periodicamente RA sulla rete. I RA vengono inviati all’indirizzo multicast all-nodes. I nodi inviano messaggi Neighbor Solicitation/Neighbor Advertisement per risolvere l’indirizzo IPv6 della destinazione sul collegamento. I messaggi Neighbor Solicitation usati per la risoluzione degli indirizzi sono in multicast. La procedura di Duplicate Address Detection e l’uso di messaggi Router Advertisement periodici assumono che i nodi siano accesi e raggiungibili per la maggior parte del tempo.

In Neighbor Discovery, i router trovano gli host assumendo che un prefisso di sottorete mappi a un dominio di broadcast e poi multicasta messaggi Neighbor Solicitation per trovare l’host e il suo indirizzo di livello link. Inoltre, l’uso del multicast per la DAD assume che tutti gli host che autoconfigurano indirizzi IPv6 dallo stesso prefisso possano essere raggiunti usando messaggi multicast link-local.

Si noti che il bit L (on-link) nella Prefix Information Option (PIO) può essere impostato a zero in Neighbor Discovery, il che fa sì che l’host non usi messaggi multicast Neighbor Solicitation (NS) per la risoluzione degli indirizzi di altri host, ma i router usano ancora messaggi multicast NS per trovare gli host.

A causa della natura lossy della comunicazione wireless e di un ambiente radio in cambiamento, l’insieme di nodi su un link IPv6 può cambiare a causa di fattori fisici esterni. Pertanto il collegamento è spesso instabile e i nodi appaiono in movimento senza necessariamente muoversi fisicamente.

Un LoWPAN può usare due tipi di indirizzi di livello link: indirizzi corti a 16 bit e indirizzi unici a 64 bit come definito in [RFC4944]. Inoltre, la dimensione del payload disponibile a livello link è dell’ordine di meno di 100 byte; pertanto la compressione dell’intestazione è molto utile.

Considerando le caratteristiche di un LoWPAN e la progettazione del protocollo IPv6 Neighbor Discovery [RFC4861], alcune ottimizzazioni ed estensioni a Neighbor Discovery sono utili per l’ampia diffusione di IPv6 su reti a bassa potenza e con perdite (esempio: 6LoWPAN e altre reti omogenee a bassa potenza).

1.2. Applicabilità (Applicability)

Nella sua Sezione 1, [RFC4861] prevede un documento che copra l’esecuzione di IP su un particolare tipo di collegamento e definisca un’eccezione all’applicabilità generale di [RFC4861] non modificato. La presente specifica migliora l’uso di IPv6 Neighbor Discovery per i LoWPAN al fine di risparmiare energia e potenza di elaborazione di tali nodi. Questo documento aggiorna quindi [RFC4944] per specificare l’uso delle ottimizzazioni definite qui.

L’applicabilità di questa specifica è limitata ai LoWPAN in cui tutti i nodi sulla sottorete implementano queste ottimizzazioni in modo omogeneo. Sebbene si noti che alcune di queste ottimizzazioni possano essere utili al di fuori dei 6LoWPAN, ad esempio nelle reti IPv6 a bassa potenza e con perdite in generale e possibilmente anche in combinazione con [RFC4861], l’uso di tali combinazioni è fuori dall’ambito di questo documento.

In questo documento, specifichiamo un insieme di comportamenti tra host e router nei LoWPAN. Un’implementazione che aderisce a questo documento MUST implementare tali comportamenti. Il documento specifica anche un insieme di comportamenti (disseminazione multi-hop di prefissi o contesto e, separatamente, Duplicate Address Detection multi-hop) che sono necessari in configurazioni route-over. Un’implementazione di questa specifica MUST supportare tali parti, a meno che l’implementazione non supporti un’alternativa ("substitute") proveniente da un’altra specifica.

Le ottimizzazioni descritte in questo documento si applicano a diverse topologie. Sono più utili per configurazioni route-over e mesh-under in topologie Mesh. Tuttavia, anche configurazioni in topologia Star beneficeranno delle ottimizzazioni grazie alla riduzione della segnalazione, alla gestione robusta del collegamento non transitivo e alle informazioni di contesto di compressione dell’intestazione.

1.3. Obiettivi e assunzioni (Goals and Assumptions)

Il documento ha i seguenti principali obiettivi e assunzioni.

Obiettivi (Goals):

  • Ottimizzare Neighbor Discovery con un meccanismo minimale ma sufficiente per l’operatività in configurazioni mesh-under e route-over.
  • Minimizzare la segnalazione evitando il flooding multicast e riducendo l’uso di messaggi multicast a portata link.
  • Ottimizzare le interfacce tra gli host e i loro router predefiniti.
  • Fornire supporto per host in sleep.
  • Disseminare agli host le informazioni di contesto necessarie per 6LoWPAN header compression [RFC6282].
  • Disseminare le informazioni di contesto e di prefisso dal confine a tutti i router in un LoWPAN.
  • Fornire un meccanismo di Duplicate Address Detection multi-hop adatto ai LoWPAN route-over.

Assunzioni (Assumptions):

  • Gli indirizzi 64-bit Extended Unique Identifier (EUI-64) [EUI64] sono globalmente unici e il LoWPAN è omogeneo.
  • Tutti i nodi nella rete hanno un EUI-64 Interface ID per eseguire l’autoconfigurazione degli indirizzi e rilevare indirizzi duplicati.
  • La tecnologia di livello link è assunta a bassa potenza e con perdite, mostrando undetermined connectivity, come IEEE 802.15.4 [RFC4944]. Tuttavia, il meccanismo di registrazione dell’indirizzo potrebbe essere utile per altre tecnologie di livello link.
  • Un 6LoWPAN è configurato per condividere uno o più prefissi di indirizzi IPv6 globali per consentire agli host di spostarsi tra router nel LoWPAN senza cambiare i propri indirizzi IPv6.
  • Quando si usa il meccanismo DAD multi-hop (Sezione 8.2), ciascun 6LoWPAN Router (6LR) si registra con tutti i 6LoWPAN Border Routers (6LBRs) disponibili nel LoWPAN.
  • Se vengono usati indirizzi corti IEEE 802.15.4 a 16 bit, allora viene usata una tecnica per garantire l’unicità di tali indirizzi di livello link. Ciò potrebbe essere fatto usando DHCPv6, Duplicate Address Detection basata su Address Registration Option (specificata nella Sezione 8.2) o altre tecniche fuori dall’ambito di questo documento.
  • Per preservare l’unicità degli indirizzi (vedere la Sezione 5.4 di [RFC4862]) non derivati da un EUI-64, essi devono essere assegnati o verificati per duplicati nello stesso modo in tutto il LoWPAN. Ciò può essere fatto usando DHCPv6 per l’assegnazione e/o usando il meccanismo di Duplicate Address Detection specificato nella Sezione 8.2 (o qualsiasi altro protocollo sviluppato a tale scopo).
  • Affinché 6LoWPAN header compression [RFC6282] operi correttamente, il contesto di compressione deve corrispondere per tutti gli host, 6LR e 6LBR che possono inviare, ricevere o inoltrare un dato pacchetto. Se la Sezione 8.1 è usata per distribuire le informazioni di contesto, ciò implica che tutti i 6LBR debbano coordinare le informazioni di contesto che distribuiscono all’interno di un singolo LoWPAN.
  • Questa specifica descrive l’operazione di ND all’interno di un singolo LoWPAN. La partecipazione di un nodo a più LoWPAN simultaneamente può essere possibile ma è fuori dall’ambito di questo documento.
  • Poiché il LoWPAN condivide i propri prefissi attraverso la rete, la mobilità dei nodi all’interno del LoWPAN è trasparente. La mobilità inter-LoWPAN è fuori dall’ambito di questo documento.

1.4. Funzionalità sostituibili (Substitutable Features)

Questo documento definisce l’ottimizzazione dei messaggi Neighbor Discovery per l’interfaccia host-router e introduce due nuovi meccanismi in una topologia route-over.

Salvo diversa specifica (in un documento che definisce un protocollo di routing usato in un 6LoWPAN), questo documento si applica a reti con qualsiasi protocollo di routing. Tuttavia, poiché il protocollo di routing può fornire buoni meccanismi alternativi, questo documento definisce alcune funzionalità come "substitutable", cioè sostituibili da una specifica di protocollo di routing che fornisce meccanismi che raggiungono lo stesso effetto complessivo.

Le funzionalità che sono sostituibili (singolarmente o in gruppo):

  • Distribuzione multi-hop di prefissi e del contesto di compressione dell’intestazione 6LoWPAN
  • Duplicate Address Detection multi-hop

Pertanto, la distribuzione multi-hop dei prefissi (l’ABRO) e la 6LoWPAN Context Option (6CO) per la distribuzione dei contesti di compressione dell’intestazione vanno di pari passo. Se si intende sostituirne una, allora entrambe MUST essere sostituite.

Linee guida per l’implementazione e il deployment delle funzionalità sono fornite nella Sezione 14.