Cours connexes :
- Wireless Sensor Networks - S9 - Protocoles MAC pour WSN, ZigBee
- Emerging Network Technologies - S9 - SDN et architectures reseau
- Middleware for IoT - S9 - Protocoles applicatifs IoT (MQTT, CoAP)
- Energy for Connected Objects - S9 - Gestion energetique des objets connectes
Low Power Wireless / WPAN IPv6 - Semestre 9
Annee academique : 2024-2025
Semestre : S9
Categorie : Reseaux sans fil et IoT
PART A : PRESENTATION GENERALE
Vue d'ensemble
Le cours "Low Power Wireless / WPAN IPv6" offre une exploration approfondie des principes et des applications des reseaux sans fil personnels a faible consommation (LP-WPAN). L'objectif principal est de comprendre comment integrer IPv6 dans des reseaux contraints, en utilisant des mecanismes d'adaptation tels que 6LoWPAN, afin de permettre a des dispositifs a ressources limitees de communiquer sur Internet.
Ce cours couvre l'ensemble de la pile protocolaire adaptee aux objets connectes : de la couche physique IEEE 802.15.4 jusqu'aux protocoles applicatifs comme CoAP et MQTT-SN, en passant par la couche d'adaptation 6LoWPAN, le protocole de routage RPL, et les mecanismes de compression d'en-tetes IPv6.
Objectifs pedagogiques :
- Comprendre le panorama des technologies sans fil pour l'IoT (IEEE 802.15.4, BLE, LoRa, Sigfox, NB-IoT)
- Maitriser l'architecture 6LoWPAN et ses mecanismes de compression d'en-tetes
- Configurer et analyser des reseaux IPv6 sur des dispositifs contraints
- Comprendre le protocole de routage RPL pour les reseaux a faible puissance et a pertes (LLN)
- Mettre en oeuvre des protocoles applicatifs adaptes (CoAP, MQTT-SN)
- Analyser les compromis entre consommation energetique, portee et debit dans les LP-WPAN
Position dans le cursus
Ce module s'appuie sur les bases acquises precedemment :
- Reseau (S5) : modele OSI, Ethernet, IP de base, TCP/UDP
- Interconnexion Reseau (S8) : routage IP, protocoles de transport, IPv6
- Wireless Sensor Networks (S9) : protocoles MAC pour WSN, IEEE 802.15.4, ZigBee
Il prepare a :
- Projets IoT : deploiement de reseaux de capteurs communiquant en IPv6
- Middleware for IoT : integration de protocoles applicatifs sur reseaux contraints
- Carriere professionnelle : architecte IoT, ingenieur systemes embarques connectes
PART B : EXPERIENCE ET CONTEXTE
Organisation et ressources
Le module combinait cours magistraux et travaux pratiques sur des plateformes reelles :
Cours magistraux :
- Panorama des technologies sans fil pour l'IoT (classification, comparaison)
- Architecture protocolaire pour les reseaux LP-WPAN
- Norme IEEE 802.15.4 : couches PHY et MAC
- 6LoWPAN : adaptation d'IPv6 pour les reseaux contraints
- Protocole de routage RPL (Routing Protocol for Low-Power and Lossy Networks)
- Technologies LPWAN : LoRa/LoRaWAN, Sigfox, NB-IoT
- Protocoles applicatifs : CoAP, MQTT-SN
Travaux pratiques :
- TP1 : Auto-configuration d'adresses IPv6 link-local et globales
- TP2 : Connectivite IPv6 de bout en bout avec serveur applicatif MQTT
- TP3 : Compression d'en-tetes 6LoWPAN (analyse avec Wireshark)
- TP4 : Routage RPL sur topologie multi-noeuds
Outils utilises :
- Wireshark : capture et analyse de trafic 6LoWPAN/IPv6
- tcpdump : capture de paquets en ligne de commande
- Contiki-NG / RIOT OS : systemes d'exploitation pour dispositifs contraints
- Mosquitto : broker MQTT pour distribution de donnees
- ifconfig / ip : configuration d'interfaces reseau IPv6
Environnement et contexte
Durant ce cours, j'ai travaille sur les aspects theoriques et pratiques des reseaux LP-WPAN. La partie initiale du cours couvrait les concepts fondamentaux des reseaux et des telecommunications, comme les interferences et les reseaux brouilles. Nous avons ensuite approfondi la pile protocolaire TCP/IP adaptee aux LP-WPAN, en utilisant la norme IEEE 802.15.4 pour les couches MAC et physique. Cette norme est couramment utilisee dans des protocoles comme ZigBee. Nous avons egalement explore l'utilisation d'IPv6 avec une couche intermediaire, 6LoWPAN, pour reduire la taille des paquets.
Ma fonction
Dans ce cours, j'etais responsable de :
- Comprendre les principes et l'architecture de 6LoWPAN
- Explorer les differents protocoles et leurs applications dans les reseaux sans fil a faible puissance
- Conduire des experiences pour tester l'efficacite et la scalabilite des differentes solutions LP-WPAN
- Analyser les trames 6LoWPAN avec Wireshark pour comprendre les mecanismes de compression
- Configurer le routage RPL et observer le comportement du reseau
PART C : ASPECTS TECHNIQUES
1. Panorama des technologies sans fil pour l'IoT
Le cours commence par un panorama complet des technologies sans fil disponibles pour l'IoT. L'objectif est de comprendre les criteres de choix d'une technologie selon les contraintes de l'application : portee, debit, consommation energetique, cout, et topologie de reseau.
Classification par portee et debit :
| Technologie | Portee | Debit | Consommation | Usage typique |
|---|---|---|---|---|
| IEEE 802.15.4 / ZigBee | 10-100 m | 250 kbps | Tres faible | Domotique, capteurs |
| BLE (Bluetooth Low Energy) | 10-50 m | 1-2 Mbps | Tres faible | Wearables, beacons |
| Thread | 10-30 m | 250 kbps | Tres faible | Smart home |
| LoRa / LoRaWAN | 2-15 km | 0.3-50 kbps | Tres faible | Agriculture, smart city |
| Sigfox | 10-50 km | 100-600 bps | Ultra faible | Compteurs, tracking |
| NB-IoT | 1-10 km | 200 kbps | Faible | Compteurs, industriel |
| Wi-Fi (802.11ah) | 100-1000 m | 150 kbps-8 Mbps | Moyenne | IoT domestique |
| Z-Wave | 30-100 m | 100 kbps | Tres faible | Domotique |
Distinction WPAN vs LPWAN :
Les reseaux WPAN (Wireless Personal Area Network) sont des reseaux a courte portee, comme IEEE 802.15.4 et BLE, adaptes aux applications necessitant des communications frequentes a faible distance. Les reseaux LPWAN (Low Power Wide Area Network) comme LoRa, Sigfox et NB-IoT sont conçus pour des communications longue portee avec un debit tres faible, adaptes aux applications de telemetrie et de suivi.
Criteres de selection :
Le choix d'une technologie repose sur plusieurs facteurs :
- Autonomie energetique : duree de vie souhaitee sur batterie (mois, annees)
- Portee necessaire : interieur, exterieur, urbain, rural
- Debit requis : donnees periodiques legeres vs streaming continu
- Latence : temps reel vs best-effort
- Densite de noeuds : nombre de dispositifs par zone
- Cout : licence, infrastructure, dispositifs
- Topologie : etoile, maille, arbre
2. IEEE 802.15.4 : la norme fondamentale des LP-WPAN
La norme IEEE 802.15.4 definit les couches physique (PHY) et controle d'acces au medium (MAC) pour les reseaux LP-WPAN. C'est la base sur laquelle reposent de nombreux protocoles comme ZigBee, Thread et 6LoWPAN.
Couche physique (PHY) :
- Bandes de frequences :
- 2.4 GHz (ISM mondiale) : 16 canaux, 250 kbps, modulation O-QPSK
- 868 MHz (Europe) : 1 canal, 20 kbps, modulation BPSK
- 915 MHz (Amerique) : 10 canaux, 40 kbps, modulation BPSK
- Modulation : Direct Sequence Spread Spectrum (DSSS) avec O-QPSK ou BPSK
- Puissance d'emission : typiquement -3 dBm a 10 dBm
- Sensibilite du recepteur : -85 dBm (2.4 GHz), -92 dBm (868/915 MHz)
- Taille maximale de trame : 127 octets (incluant en-tete MAC)
Couche MAC :
- Acces au canal : CSMA-CA (Carrier Sense Multiple Access with Collision Avoidance)
- Modes de fonctionnement :
- Mode beacon : le coordinateur envoie des beacons periodiques pour synchroniser les noeuds ; utilise la superframe avec periodes actives et inactives
- Mode non-beacon : acces asynchrone au canal, adapte aux topologies en etoile simples
- Types de trames : donnees, acquittement (ACK), commande MAC, beacon
- Adressage : adresses courtes (16 bits) ou etendues (64 bits IEEE EUI-64)
- GTS (Guaranteed Time Slots) : allocation de creneaux temporels garantis dans la superframe pour les applications temps reel
Types de dispositifs :
| Type | Role | Capacites |
|---|---|---|
| FFD (Full Function Device) | Coordinateur PAN, routeur | Toutes fonctions MAC, peut relayer |
| RFD (Reduced Function Device) | Noeud terminal | Fonctions limitees, ne peut pas relayer |
Topologies supportees :
- Etoile : tous les noeuds communiquent avec un coordinateur central
- Pair-a-pair (mesh) : les noeuds FFD peuvent communiquer entre eux directement
- Arbre de clusters : hierarchie de coordinateurs et sous-coordinateurs
3. IPv6 pour l'IoT : fondamentaux
IPv6 est le protocole de choix pour les reseaux IoT en raison de son espace d'adressage quasi illimite (2^128 adresses), de ses capacites d'auto-configuration, et de sa connectivite de bout en bout. Cependant, l'en-tete IPv6 standard (40 octets minimum) est trop volumineux pour les trames IEEE 802.15.4 limitees a 127 octets.
Auto-configuration des adresses link-local :
Figure : Auto-configuration d'adresses IPv6 link-local
Nous avons execute la commande ifconfig eth0 up pour activer l'interface reseau eth0. Ensuite, nous avons utilise ip -6 addr show dev eth0 pour afficher les adresses IPv6 assignees a l'interface. La sortie montrait une adresse au format inet6 fe80::527c:6fff:fe56:e8b0.
Cette adresse est une adresse IPv6 link-local, automatiquement configuree sur toutes les interfaces IPv6. Les adresses link-local utilisent le prefixe fe80::/10 et la partie restante de l'adresse est derivee de l'adresse MAC de l'interface en utilisant le format Modified EUI-64.
Processus de derivation EUI-64 :
- Prendre l'adresse MAC 48 bits (ex:
50:7C:6F:56:E8:B0) - Inserer
FF:FEau milieu :50:7C:6F:FF:FE:56:E8:B0 - Inverser le bit U/L (7eme bit du premier octet) :
52:7C:6F:FF:FE:56:E8:B0 - Resultat :
fe80::527c:6fff:fe56:e8b0
Auto-configuration des adresses unicast globales :
Figure : Capture de paquets IPv6 Router Advertisement
Nous avons explore le processus d'auto-configuration des adresses unicast globales IPv6 en utilisant les Router Advertisements (RA). Le routeur envoie periodiquement des messages ICMPv6 Router Advertisement contenant le prefixe reseau. Les noeuds terminaux derivent leur adresse globale en combinant ce prefixe avec leur identifiant d'interface (EUI-64 ou adresse aleatoire).
Messages ICMPv6 impliques :
- Router Solicitation (RS) : envoye par un noeud pour solliciter un RA du routeur local
- Router Advertisement (RA) : envoye par le routeur avec le prefixe reseau et les options de configuration
- Neighbor Solicitation (NS) : utilise pour la detection d'adresse dupliquee (DAD) et la resolution d'adresse
- Neighbor Advertisement (NA) : reponse a un NS
4. 6LoWPAN : adaptation d'IPv6 aux reseaux contraints
6LoWPAN (IPv6 over Low-Power Wireless Personal Area Networks) est la couche d'adaptation cle qui permet l'utilisation d'IPv6 sur des reseaux IEEE 802.15.4. Il resout le probleme fondamental de l'incompatibilite entre la taille de l'en-tete IPv6 (40 octets minimum) et la taille maximale de la trame IEEE 802.15.4 (127 octets, dont seulement environ 80-100 octets utiles apres en-tete MAC).
Fonctions principales de 6LoWPAN :
- Compression d'en-tetes : reduction de l'en-tete IPv6 de 40 octets a aussi peu que 2-4 octets
- Fragmentation et reassemblage : decoupe des paquets IPv6 trop grands pour la MTU IEEE 802.15.4
- Adressage mesh : acheminement au niveau couche 2 dans un reseau maille
- Support du multicast : traduction des adresses multicast IPv6
Architecture de la pile protocolaire 6LoWPAN :
+-----------------------------------+
| Application (CoAP, MQTT-SN) |
+-----------------------------------+
| Transport (UDP) |
+-----------------------------------+
| Reseau (IPv6) |
+-----------------------------------+
| Adaptation (6LoWPAN) |
| - Compression en-tetes (IPHC) |
| - Fragmentation |
| - Mesh addressing |
+-----------------------------------+
| MAC (IEEE 802.15.4) |
+-----------------------------------+
| PHY (IEEE 802.15.4) |
+-----------------------------------+
Compression d'en-tetes IPHC (IP Header Compression) :
Figure : Compression d'en-tetes IPHC 6LoWPAN
Le mecanisme IPHC permet de compresser l'en-tete IPv6 en exploitant les informations deja disponibles dans le contexte de communication ou dans l'en-tete MAC IEEE 802.15.4 :
| Champ IPv6 | Taille originale | Methode de compression | Taille compressee |
|---|---|---|---|
| Version | 4 bits | Toujours IPv6, elidee | 0 |
| Traffic Class | 8 bits | Souvent 0, elidee | 0-8 bits |
| Flow Label | 20 bits | Souvent 0, elidee | 0-20 bits |
| Payload Length | 16 bits | Deduite de la trame MAC | 0 |
| Next Header | 8 bits | Compressee via NHC | 0-8 bits |
| Hop Limit | 8 bits | Valeurs communes (1, 64, 255) | 0-8 bits |
| Adresse source | 128 bits | Derivee de l'adresse MAC | 0-128 bits |
| Adresse destination | 128 bits | Derivee de l'adresse MAC | 0-128 bits |
Modes de compression des adresses :
- Stateless : l'adresse est derivee de l'adresse MAC (EUI-64) dans l'en-tete IEEE 802.15.4
- Stateful (context-based) : le prefixe est connu via un contexte partage (identifie par un Context Identifier)
- Multicast : compression specifique des adresses multicast IPv6
Figure : Analyse Wireshark de la compression 6LoWPAN
Nous avons utilise Wireshark pour capturer et analyser des paquets ICMPv6 encapsules dans des trames 6LoWPAN. En examinant la section ICMPv6, nous pouvions voir l'en-tete IPHC (IP Header Compression), qui fournit les informations sur les champs comprimes de l'en-tete IPv6. Cette analyse nous a permis de comprendre comment 6LoWPAN reduit l'overhead des en-tetes IPv6 pour les rendre compatibles avec les reseaux a faible puissance et a pertes.
Fragmentation 6LoWPAN :
Lorsqu'un paquet IPv6 depasse la MTU de la couche IEEE 802.15.4, 6LoWPAN le fragmente en plusieurs trames :
- En-tete de fragmentation : contient la taille du datagramme original, un tag d'identification, et l'offset du fragment
- Premier fragment : contient l'en-tete compresse IPHC et le debut du payload
- Fragments suivants : contiennent le tag, l'offset et la suite du payload
- Le reassemblage est effectue au noeud destinataire
Adressage Mesh :
L'en-tete mesh de 6LoWPAN permet l'acheminement des trames au niveau couche 2 dans un reseau maille. Il contient les adresses source et destination IEEE 802.15.4 originales, permettant aux noeuds intermediaires de relayer les trames sans necessite de routage IP.
5. Technologies LPWAN : LoRa, Sigfox, NB-IoT
En complement des technologies WPAN a courte portee, le cours aborde les technologies LPWAN (Low Power Wide Area Network) pour les communications longue portee.
LoRa / LoRaWAN :
LoRa (Long Range) est une technologie de modulation radio proprietaire (Semtech) utilisant la technique CSS (Chirp Spread Spectrum) :
- Bande de frequences : 868 MHz (Europe), 915 MHz (Amerique), 433 MHz (Asie)
- Portee : 2-5 km (urbain), 10-15 km (rural)
- Debit : 0.3 a 50 kbps selon le spreading factor (SF7 a SF12)
- Spreading Factor : plus le SF est eleve, plus la portee augmente mais le debit diminue
LoRaWAN est l'architecture reseau au-dessus de LoRa :
- Topologie en etoile : les dispositifs communiquent avec des gateways
- Classes de dispositifs :
- Classe A : emission initiee par le dispositif, deux fenetres de reception apres emission (plus econome)
- Classe B : fenetres de reception programmees via beacons (latence reduite)
- Classe C : reception continue sauf pendant emission (latence minimale, consommation maximale)
- Securite : chiffrement AES-128 au niveau reseau et application
Sigfox :
- Modulation : Ultra Narrow Band (UNB), bande passante de 100 Hz par message
- Portee : 10-50 km
- Debit : 100 bps (uplink), 600 bps (downlink)
- Limitation : 140 messages/jour (uplink), 4 messages/jour (downlink)
- Modele economique : abonnement operateur, pas d'infrastructure propre
NB-IoT (Narrowband IoT) :
- Standard : 3GPP Release 13 (LTE Category NB1)
- Bande de frequences : bandes LTE licensiees (180 kHz)
- Debit : jusqu'a 200 kbps (downlink), 20 kbps (uplink)
- Portee : 1-10 km
- Avantage : utilise l'infrastructure cellulaire existante
6. ZigBee et Thread : piles protocolaires sur IEEE 802.15.4
ZigBee :
ZigBee est une pile protocolaire complete construite sur IEEE 802.15.4 :
- Couche reseau : routage par arbre ou maille, decouverte de routes AODV
- Couche application : profils standardises (ZigBee Home Automation, ZigBee Light Link)
- Securite : chiffrement AES-128, gestion de cles via Trust Center
- Topologies : etoile, arbre, maille
- Limitations : pile proprietaire (ZigBee Alliance), pas d'interoperabilite IP native
Thread :
Thread est une pile protocolaire moderne basee sur 6LoWPAN :
- Base : IEEE 802.15.4 + 6LoWPAN + IPv6
- Routage : protocole MLE (Mesh Link Establishment) pour la gestion du reseau maille
- Avantage : interoperabilite IP native, compatible avec les ecosystemes Internet
- Securite : DTLS (Datagram Transport Layer Security)
- Usage : smart home (supporte par Apple HomeKit, Google Nest)
BLE (Bluetooth Low Energy) :
- Standard : Bluetooth 4.0+ (BLE)
- Portee : 10-50 m
- Debit : 1-2 Mbps
- IPv6 sur BLE : 6LoWPAN peut etre utilise sur BLE via la specification IPSP (Internet Protocol Support Profile)
- Mesh : Bluetooth Mesh (depuis Bluetooth 5.0) pour les reseaux mailles
7. RPL : protocole de routage pour LLN
RPL (Routing Protocol for Low-Power and Lossy Networks, RFC 6550) est le protocole de routage standardise par l'IETF pour les reseaux 6LoWPAN. Il est specialement concu pour les reseaux a faible puissance et a pertes (LLN - Low-Power and Lossy Networks).
Figure : Topologie RPL - DODAG avec noeuds et routes
Principe de fonctionnement :
RPL construit un DODAG (Destination-Oriented Directed Acyclic Graph) : un graphe acyclique dirige oriente vers un noeud racine (root) qui sert de passerelle vers Internet.
Construction du DODAG :
- Le noeud racine initie la construction en emettant des messages DIO (DODAG Information Object)
- Chaque noeud recevant un DIO calcule son rang (distance au root) selon une fonction objectif (OF)
- Le noeud selectionne un parent prefere parmi les voisins offrant le meilleur rang
- Le processus se propage de proche en proche jusqu'aux feuilles
Messages RPL :
| Message | Direction | Role |
|---|---|---|
| DIO (DODAG Information Object) | Descendant (root vers feuilles) | Annonce le DODAG, transmet parametres et metriques |
| DIS (DODAG Information Solicitation) | Montant | Sollicite un DIO des voisins |
| DAO (Destination Advertisement Object) | Montant (feuilles vers root) | Annonce les routes descendantes vers les noeuds |
| DAO-ACK | Descendant | Acquittement d'un DAO |
Fonctions objectif :
La fonction objectif determine comment un noeud choisit son parent et calcule son rang :
- OF0 (Objective Function 0) : minimise le nombre de sauts
- MRHOF (Minimum Rank with Hysteresis Objective Function) : minimise l'ETX (Expected Transmission Count), prenant en compte la qualite des liens
Modes de trafic supportes :
- Multipoint-to-point (MP2P) : trafic des noeuds capteurs vers le root (collecte de donnees). C'est le mode natif de RPL, le DODAG fournit naturellement les routes vers le root.
- Point-to-multipoint (P2MP) : trafic du root vers les noeuds (commandes, mises a jour). Utilise les routes descendantes construites via les DAO.
- Point-to-point (P2P) : communication directe entre deux noeuds dans le reseau. Le trafic remonte vers un ancetre commun dans le DODAG puis redescend.
8. Protocoles MAC economes en energie
La couche MAC est determinante pour la consommation energetique des dispositifs LP-WPAN. Plusieurs protocoles ont ete concus pour optimiser cette consommation :
Sources de gaspillage energetique :
- Idle listening : ecouter le canal alors qu'il n'y a pas de donnees (principale source de consommation)
- Collisions : retransmissions necessaires apres collision
- Overhearing : recevoir des paquets destines a d'autres noeuds
- Overhead de controle : messages de synchronisation, beacons
Approches principales :
- Duty cycling : alterner entre periodes actives et inactives pour reduire l'idle listening
- Preamble sampling : emettre un long preambule avant les donnees, le recepteur echantillonne periodiquement le canal
- TDMA : allocation de creneaux temporels pour eviter collisions
Protocoles representatifs :
- IEEE 802.15.4 MAC : mode beacon avec superframe (periodes actives/inactives, GTS)
- ContikiMAC : protocole duty-cycling utilise dans Contiki OS, base sur l'echantillonnage periodique du canal
- TSCH (Time-Slotted Channel Hopping) : extension de IEEE 802.15.4e combinant TDMA et saut de frequence pour ameliorer fiabilite et consommation
9. Protocoles applicatifs pour l'IoT contraint
Connectivite IPv6 de bout en bout et MQTT :
Nous avons etabli une connectivite IPv6 de bout en bout avec un serveur applicatif et mis en place MQTT pour la distribution de donnees. Cela impliquait la configuration du broker MQTT et l'utilisation d'outils comme mosquitto_sub et mosquitto_pub pour distribuer les donnees entre les producteurs et les consommateurs de topics.
CoAP (Constrained Application Protocol) :
CoAP est un protocole applicatif concu pour les dispositifs contraints (RFC 7252) :
- Base : UDP (pas TCP, trop lourd pour les dispositifs contraints)
- Modele : REST (GET, PUT, POST, DELETE) comme HTTP mais beaucoup plus leger
- En-tete : seulement 4 octets (vs dizaines d'octets pour HTTP)
- Observation : mecanisme de souscription aux ressources (notification automatique lors de changements)
- Decouverte : mecanisme de decouverte de ressources standardise (/.well-known/core)
- Securite : DTLS pour le chiffrement
MQTT-SN (MQTT for Sensor Networks) :
MQTT-SN est une adaptation de MQTT pour les reseaux de capteurs :
- Transport : UDP au lieu de TCP
- Topic ID : identifiants numeriques courts au lieu de chaines de caracteres
- Gateway : passerelle MQTT-SN / MQTT pour la communication avec le broker
- QoS : trois niveaux de qualite de service (0, 1, 2)
- Publish/Subscribe : modele de communication asynchrone adapte aux capteurs
10. Architecture reseau pour dispositifs contraints
L'architecture reseau pour les dispositifs IoT contraints suit un modele hierarchique :
Internet / Cloud
|
Border Router (6LBR)
- Routeur de bordure 6LoWPAN
- Traduction IPv6 <-> 6LoWPAN
- Point d'acces au reseau IP
|
Reseau 6LoWPAN (maille)
- Routeurs 6LoWPAN (6LR)
- Relaient les trames dans le reseau maille
- Participent au routage RPL
|
Noeuds terminaux (6LN)
- Capteurs / actionneurs
- Dispositifs a ressources limitees
- Communiquent via 6LoWPAN
Classification des dispositifs contraints (RFC 7228) :
| Classe | RAM | Flash | Designation |
|---|---|---|---|
| Classe 0 | < 10 KB | < 100 KB | Tres contraint (pas d'IP possible) |
| Classe 1 | ~10 KB | ~100 KB | Contraint (6LoWPAN/CoAP possible) |
| Classe 2 | ~50 KB | ~250 KB | Modere (pile IP complete possible) |
Passerelle de bordure (6LBR) :
Le Border Router est un element critique de l'architecture. Il assure :
- La traduction entre le monde IPv6 standard et le reseau 6LoWPAN
- La compression/decompression des en-tetes
- Le routage RPL (racine du DODAG)
- La gestion des contextes de compression d'adresses
- L'interface avec le reseau IP global
PART D : ANALYSE ET REFLEXION
Competences acquises
Comprehension de la pile protocolaire LP-WPAN :
Maitrise de l'ensemble de la pile protocolaire, de la couche physique IEEE 802.15.4 aux protocoles applicatifs CoAP et MQTT-SN, en passant par la couche d'adaptation 6LoWPAN et le routage RPL.
Analyse de trames reseau :
Capacite a capturer et analyser des trames 6LoWPAN avec Wireshark, comprenant les mecanismes de compression d'en-tetes IPHC et la fragmentation.
Conception d'architectures IoT :
Aptitude a concevoir des architectures reseau adaptees aux contraintes des dispositifs IoT : energie, memoire, bande passante.
Comparaison technologique :
Capacite a comparer et selectionner les technologies sans fil adaptees a un cas d'usage donne (WPAN vs LPWAN, ZigBee vs Thread vs BLE).
Connaissances et competences mobilisees
- Comprendre les fondamentaux des LP-WPAN et de leur pile protocolaire TCP/IP adaptee
- Analyser les avantages et inconvenients de l'utilisation de protocoles standards bases sur IP dans les reseaux contraints
- Integrer IPv6 dans des cas d'usage a faible puissance grace a 6LoWPAN
- Comprendre la norme IEEE 802.15.4 et ses applications dans des protocoles comme ZigBee et Thread
- Maitriser le protocole de routage RPL pour les reseaux a pertes
- Configurer des reseaux IPv6 de bout en bout avec des protocoles applicatifs comme MQTT et CoAP
Auto-evaluation
J'ai trouve le cours LP-WPAN comme une introduction precieuse aux reseaux sans fil a faible puissance. J'ai particulierement apprecie travailler avec IPv6 et 6LoWPAN. Il reste des domaines ou j'ai encore des incertitudes et ou je dois approfondir mes connaissances, mais avec le temps et la pratique, je suis confiant dans ma maitrise de ces concepts.
Les travaux pratiques etaient bien guides par l'enseignant, ce qui m'a permis de mieux comprendre car le sujet etait assez complexe au depart, mais il a reussi a transmettre les competences du cours efficacement.
La partie la plus enrichissante a ete l'analyse des trames 6LoWPAN avec Wireshark : voir concretement comment les en-tetes IPv6 sont comprimes de 40 octets a quelques octets seulement est tres revelateur de l'ingenierie derriere ces protocoles.
Mon avis
C'etait un nouveau concept que j'ai apprecie travailler. Cela m'a offert une perspective nouvelle sur les possibilites des reseaux et m'a permis d'explorer des solutions innovantes dans les reseaux sans fil a faible puissance. Les experiences pratiques etaient interessantes car elles demontraient les applications concretes des technologies LP-WPAN.
Le panorama des technologies (LoRa, Sigfox, NB-IoT, BLE, Thread) m'a donne une vision globale des solutions disponibles pour l'IoT, ce qui est essentiel pour un ingenieur devant choisir la technologie adaptee a chaque projet.
La comprehension de l'architecture 6LoWPAN et du routage RPL est particulierement pertinente pour les projets IoT professionnels, ou la connectivite IP de bout en bout est de plus en plus recherchee.
Documents de Cours
Chapitre 0 : Wireless Network Survey for IoT Chapter 0: Wireless Network Survey for IoT
Panorama des technologies sans fil pour l'IoT : classification, comparaison des protocoles, criteres de selection. Overview of wireless technologies for IoT: classification, protocol comparison, selection criteria.
Chapitre 2 : 6LoWPAN - Network Architecture Chapter 2: 6LoWPAN - Network Architecture
Architecture 6LoWPAN : compression d'en-tetes, fragmentation, adressage mesh, integration IPv6. 6LoWPAN architecture: header compression, fragmentation, mesh addressing, IPv6 integration.
Rapports et Projets
Rapport de TP : LP-WPAN IPv6 Lab Report: LP-WPAN IPv6
Ouvrir le rapport complet Open the full report
Ouvrir le sujet de TP Open the lab subject
Cours suivi en 2024-2025 a l'INSA Toulouse, Departement Genie Electrique et Informatique.
Related courses:
- Wireless Sensor Networks - S9 - MAC protocols for WSN, ZigBee
- Emerging Network Technologies - S9 - SDN and network architectures
- Middleware for IoT - S9 - IoT application protocols (MQTT, CoAP)
- Energy for Connected Objects - S9 - Energy management for connected objects
Low Power Wireless / WPAN IPv6 - Semester 9
Academic year: 2024-2025
Semester: S9
Category: Wireless networks and IoT
PART A: GENERAL PRESENTATION
Overview
The "Low Power Wireless / WPAN IPv6" course provides an in-depth exploration of the principles and applications of Low-Power Wireless Personal Area Networks (LP-WPAN). The main objective is to understand how to integrate IPv6 into constrained networks, using adaptation mechanisms such as 6LoWPAN, to enable resource-limited devices to communicate over the Internet.
This course covers the entire protocol stack adapted to connected objects: from the IEEE 802.15.4 physical layer to application protocols such as CoAP and MQTT-SN, including the 6LoWPAN adaptation layer, the RPL routing protocol, and IPv6 header compression mechanisms.
Learning objectives:
- Understand the landscape of wireless technologies for IoT (IEEE 802.15.4, BLE, LoRa, Sigfox, NB-IoT)
- Master the 6LoWPAN architecture and its header compression mechanisms
- Configure and analyze IPv6 networks on constrained devices
- Understand the RPL routing protocol for Low-Power and Lossy Networks (LLN)
- Implement adapted application protocols (CoAP, MQTT-SN)
- Analyze the trade-offs between energy consumption, range and throughput in LP-WPANs
Position in the curriculum
This module builds on previously acquired foundations:
- Networking (S5): OSI model, Ethernet, basic IP, TCP/UDP
- Network Interconnection (S8): IP routing, transport protocols, IPv6
- Wireless Sensor Networks (S9): MAC protocols for WSN, IEEE 802.15.4, ZigBee
It prepares for:
- IoT Projects: deployment of sensor networks communicating via IPv6
- Middleware for IoT: integration of application protocols on constrained networks
- Professional career: IoT architect, connected embedded systems engineer
PART B: EXPERIENCE AND CONTEXT
Organization and resources
The module combined lectures and hands-on lab sessions on real platforms:
Lectures:
- Overview of wireless technologies for IoT (classification, comparison)
- Protocol architecture for LP-WPAN networks
- IEEE 802.15.4 standard: PHY and MAC layers
- 6LoWPAN: IPv6 adaptation for constrained networks
- RPL routing protocol (Routing Protocol for Low-Power and Lossy Networks)
- LPWAN technologies: LoRa/LoRaWAN, Sigfox, NB-IoT
- Application protocols: CoAP, MQTT-SN
Lab sessions:
- Lab 1: Auto-configuration of IPv6 link-local and global addresses
- Lab 2: End-to-end IPv6 connectivity with MQTT application server
- Lab 3: 6LoWPAN header compression (analysis with Wireshark)
- Lab 4: RPL routing on multi-node topology
Tools used:
- Wireshark: 6LoWPAN/IPv6 traffic capture and analysis
- tcpdump: command-line packet capture
- Contiki-NG / RIOT OS: operating systems for constrained devices
- Mosquitto: MQTT broker for data distribution
- ifconfig / ip: IPv6 network interface configuration
Environment and context
During this course, I worked on the theoretical and practical aspects of LP-WPAN networks. The initial part of the course covered fundamental networking and telecommunications concepts, such as interference and jammed networks. We then delved deeper into the TCP/IP protocol stack adapted for LP-WPANs, using the IEEE 802.15.4 standard for the MAC and physical layers. This standard is commonly used in protocols such as ZigBee. We also explored the use of IPv6 with an intermediate layer, 6LoWPAN, to reduce packet size.
My role
In this course, I was responsible for:
- Understanding the principles and architecture of 6LoWPAN
- Exploring the different protocols and their applications in low-power wireless networks
- Conducting experiments to test the efficiency and scalability of different LP-WPAN solutions
- Analyzing 6LoWPAN frames with Wireshark to understand compression mechanisms
- Configuring RPL routing and observing network behavior
PART C: TECHNICAL ASPECTS
1. Overview of wireless technologies for IoT
The course begins with a comprehensive overview of wireless technologies available for IoT. The objective is to understand the criteria for choosing a technology based on the application's constraints: range, throughput, energy consumption, cost, and network topology.
Classification by range and throughput:
| Technology | Range | Throughput | Consumption | Typical use |
|---|---|---|---|---|
| IEEE 802.15.4 / ZigBee | 10-100 m | 250 kbps | Very low | Home automation, sensors |
| BLE (Bluetooth Low Energy) | 10-50 m | 1-2 Mbps | Very low | Wearables, beacons |
| Thread | 10-30 m | 250 kbps | Very low | Smart home |
| LoRa / LoRaWAN | 2-15 km | 0.3-50 kbps | Very low | Agriculture, smart city |
| Sigfox | 10-50 km | 100-600 bps | Ultra low | Meters, tracking |
| NB-IoT | 1-10 km | 200 kbps | Low | Meters, industrial |
| Wi-Fi (802.11ah) | 100-1000 m | 150 kbps-8 Mbps | Medium | Home IoT |
| Z-Wave | 30-100 m | 100 kbps | Very low | Home automation |
WPAN vs LPWAN distinction:
WPAN (Wireless Personal Area Network) networks are short-range networks, such as IEEE 802.15.4 and BLE, suited for applications requiring frequent communications over short distances. LPWAN (Low Power Wide Area Network) networks such as LoRa, Sigfox and NB-IoT are designed for long-range communications with very low throughput, suited for telemetry and tracking applications.
Selection criteria:
The choice of technology depends on several factors:
- Energy autonomy: desired battery lifetime (months, years)
- Required range: indoor, outdoor, urban, rural
- Required throughput: light periodic data vs continuous streaming
- Latency: real-time vs best-effort
- Node density: number of devices per area
- Cost: license, infrastructure, devices
- Topology: star, mesh, tree
2. IEEE 802.15.4: the fundamental LP-WPAN standard
The IEEE 802.15.4 standard defines the physical (PHY) and medium access control (MAC) layers for LP-WPAN networks. It is the foundation upon which many protocols such as ZigBee, Thread and 6LoWPAN are built.
Physical layer (PHY):
- Frequency bands:
- 2.4 GHz (worldwide ISM): 16 channels, 250 kbps, O-QPSK modulation
- 868 MHz (Europe): 1 channel, 20 kbps, BPSK modulation
- 915 MHz (Americas): 10 channels, 40 kbps, BPSK modulation
- Modulation: Direct Sequence Spread Spectrum (DSSS) with O-QPSK or BPSK
- Transmit power: typically -3 dBm to 10 dBm
- Receiver sensitivity: -85 dBm (2.4 GHz), -92 dBm (868/915 MHz)
- Maximum frame size: 127 bytes (including MAC header)
MAC layer:
- Channel access: CSMA-CA (Carrier Sense Multiple Access with Collision Avoidance)
- Operating modes:
- Beacon mode: the coordinator sends periodic beacons to synchronize nodes; uses the superframe with active and inactive periods
- Non-beacon mode: asynchronous channel access, suited for simple star topologies
- Frame types: data, acknowledgment (ACK), MAC command, beacon
- Addressing: short addresses (16 bits) or extended addresses (64-bit IEEE EUI-64)
- GTS (Guaranteed Time Slots): allocation of guaranteed time slots in the superframe for real-time applications
Device types:
| Type | Role | Capabilities |
|---|---|---|
| FFD (Full Function Device) | PAN coordinator, router | All MAC functions, can relay |
| RFD (Reduced Function Device) | End node | Limited functions, cannot relay |
Supported topologies:
- Star: all nodes communicate with a central coordinator
- Peer-to-peer (mesh): FFD nodes can communicate directly with each other
- Cluster tree: hierarchy of coordinators and sub-coordinators
3. IPv6 for IoT: fundamentals
IPv6 is the protocol of choice for IoT networks due to its virtually unlimited address space (2^128 addresses), its auto-configuration capabilities, and its end-to-end connectivity. However, the standard IPv6 header (40 bytes minimum) is too large for IEEE 802.15.4 frames limited to 127 bytes.
Link-local address auto-configuration:
Figure: IPv6 link-local address auto-configuration
We executed the command ifconfig eth0 up to activate the eth0 network interface. Then, we used ip -6 addr show dev eth0 to display the IPv6 addresses assigned to the interface. The output showed an address in the format inet6 fe80::527c:6fff:fe56:e8b0.
This address is an IPv6 link-local address, automatically configured on all IPv6 interfaces. Link-local addresses use the fe80::/10 prefix and the remaining part of the address is derived from the interface's MAC address using the Modified EUI-64 format.
EUI-64 derivation process:
- Take the 48-bit MAC address (e.g.:
50:7C:6F:56:E8:B0) - Insert
FF:FEin the middle:50:7C:6F:FF:FE:56:E8:B0 - Invert the U/L bit (7th bit of the first byte):
52:7C:6F:FF:FE:56:E8:B0 - Result:
fe80::527c:6fff:fe56:e8b0
Global unicast address auto-configuration:
Figure: IPv6 Router Advertisement packet capture
We explored the IPv6 global unicast address auto-configuration process using Router Advertisements (RA). The router periodically sends ICMPv6 Router Advertisement messages containing the network prefix. End nodes derive their global address by combining this prefix with their interface identifier (EUI-64 or random address).
ICMPv6 messages involved:
- Router Solicitation (RS): sent by a node to solicit an RA from the local router
- Router Advertisement (RA): sent by the router with the network prefix and configuration options
- Neighbor Solicitation (NS): used for Duplicate Address Detection (DAD) and address resolution
- Neighbor Advertisement (NA): response to an NS
4. 6LoWPAN: adapting IPv6 to constrained networks
6LoWPAN (IPv6 over Low-Power Wireless Personal Area Networks) is the key adaptation layer that enables the use of IPv6 on IEEE 802.15.4 networks. It solves the fundamental problem of incompatibility between the IPv6 header size (40 bytes minimum) and the maximum IEEE 802.15.4 frame size (127 bytes, of which only about 80-100 bytes are usable after the MAC header).
Main 6LoWPAN functions:
- Header compression: reduction of the IPv6 header from 40 bytes to as few as 2-4 bytes
- Fragmentation and reassembly: splitting IPv6 packets that are too large for the IEEE 802.15.4 MTU
- Mesh addressing: layer 2 forwarding in a mesh network
- Multicast support: translation of IPv6 multicast addresses
6LoWPAN protocol stack architecture:
+-----------------------------------+
| Application (CoAP, MQTT-SN) |
+-----------------------------------+
| Transport (UDP) |
+-----------------------------------+
| Network (IPv6) |
+-----------------------------------+
| Adaptation (6LoWPAN) |
| - Header compression (IPHC) |
| - Fragmentation |
| - Mesh addressing |
+-----------------------------------+
| MAC (IEEE 802.15.4) |
+-----------------------------------+
| PHY (IEEE 802.15.4) |
+-----------------------------------+
IPHC header compression (IP Header Compression):
Figure: 6LoWPAN IPHC header compression
The IPHC mechanism compresses the IPv6 header by exploiting information already available in the communication context or in the IEEE 802.15.4 MAC header:
| IPv6 field | Original size | Compression method | Compressed size |
|---|---|---|---|
| Version | 4 bits | Always IPv6, elided | 0 |
| Traffic Class | 8 bits | Often 0, elided | 0-8 bits |
| Flow Label | 20 bits | Often 0, elided | 0-20 bits |
| Payload Length | 16 bits | Inferred from MAC frame | 0 |
| Next Header | 8 bits | Compressed via NHC | 0-8 bits |
| Hop Limit | 8 bits | Common values (1, 64, 255) | 0-8 bits |
| Source address | 128 bits | Derived from MAC address | 0-128 bits |
| Destination address | 128 bits | Derived from MAC address | 0-128 bits |
Address compression modes:
- Stateless: the address is derived from the MAC address (EUI-64) in the IEEE 802.15.4 header
- Stateful (context-based): the prefix is known via a shared context (identified by a Context Identifier)
- Multicast: specific compression of IPv6 multicast addresses
Figure: Wireshark analysis of 6LoWPAN compression
We used Wireshark to capture and analyze ICMPv6 packets encapsulated in 6LoWPAN frames. By examining the ICMPv6 section, we could see the IPHC (IP Header Compression) header, which provides information about the compressed fields of the IPv6 header. This analysis allowed us to understand how 6LoWPAN reduces IPv6 header overhead to make them compatible with low-power and lossy networks.
6LoWPAN fragmentation:
When an IPv6 packet exceeds the IEEE 802.15.4 layer MTU, 6LoWPAN fragments it into multiple frames:
- Fragmentation header: contains the original datagram size, an identification tag, and the fragment offset
- First fragment: contains the IPHC compressed header and the beginning of the payload
- Subsequent fragments: contain the tag, offset and the rest of the payload
- Reassembly is performed at the destination node
Mesh addressing:
The 6LoWPAN mesh header enables layer 2 frame forwarding in a mesh network. It contains the original IEEE 802.15.4 source and destination addresses, allowing intermediate nodes to relay frames without the need for IP routing.
5. LPWAN technologies: LoRa, Sigfox, NB-IoT
In addition to short-range WPAN technologies, the course covers LPWAN (Low Power Wide Area Network) technologies for long-range communications.
LoRa / LoRaWAN:
LoRa (Long Range) is a proprietary radio modulation technology (Semtech) using the CSS (Chirp Spread Spectrum) technique:
- Frequency band: 868 MHz (Europe), 915 MHz (Americas), 433 MHz (Asia)
- Range: 2-5 km (urban), 10-15 km (rural)
- Throughput: 0.3 to 50 kbps depending on spreading factor (SF7 to SF12)
- Spreading Factor: the higher the SF, the greater the range but the lower the throughput
LoRaWAN is the network architecture on top of LoRa:
- Star topology: devices communicate with gateways
- Device classes:
- Class A: device-initiated transmission, two receive windows after transmission (most energy-efficient)
- Class B: scheduled receive windows via beacons (reduced latency)
- Class C: continuous reception except during transmission (minimal latency, maximum consumption)
- Security: AES-128 encryption at network and application level
Sigfox:
- Modulation: Ultra Narrow Band (UNB), 100 Hz bandwidth per message
- Range: 10-50 km
- Throughput: 100 bps (uplink), 600 bps (downlink)
- Limitation: 140 messages/day (uplink), 4 messages/day (downlink)
- Business model: operator subscription, no proprietary infrastructure
NB-IoT (Narrowband IoT):
- Standard: 3GPP Release 13 (LTE Category NB1)
- Frequency band: licensed LTE bands (180 kHz)
- Throughput: up to 200 kbps (downlink), 20 kbps (uplink)
- Range: 1-10 km
- Advantage: uses existing cellular infrastructure
6. ZigBee and Thread: protocol stacks on IEEE 802.15.4
ZigBee:
ZigBee is a complete protocol stack built on IEEE 802.15.4:
- Network layer: tree or mesh routing, AODV route discovery
- Application layer: standardized profiles (ZigBee Home Automation, ZigBee Light Link)
- Security: AES-128 encryption, key management via Trust Center
- Topologies: star, tree, mesh
- Limitations: proprietary stack (ZigBee Alliance), no native IP interoperability
Thread:
Thread is a modern protocol stack based on 6LoWPAN:
- Foundation: IEEE 802.15.4 + 6LoWPAN + IPv6
- Routing: MLE protocol (Mesh Link Establishment) for mesh network management
- Advantage: native IP interoperability, compatible with Internet ecosystems
- Security: DTLS (Datagram Transport Layer Security)
- Usage: smart home (supported by Apple HomeKit, Google Nest)
BLE (Bluetooth Low Energy):
- Standard: Bluetooth 4.0+ (BLE)
- Range: 10-50 m
- Throughput: 1-2 Mbps
- IPv6 over BLE: 6LoWPAN can be used over BLE via the IPSP (Internet Protocol Support Profile) specification
- Mesh: Bluetooth Mesh (since Bluetooth 5.0) for mesh networks
7. RPL: routing protocol for LLN
RPL (Routing Protocol for Low-Power and Lossy Networks, RFC 6550) is the routing protocol standardized by the IETF for 6LoWPAN networks. It is specially designed for Low-Power and Lossy Networks (LLN).
Figure: RPL topology - DODAG with nodes and routes
Operating principle:
RPL constructs a DODAG (Destination-Oriented Directed Acyclic Graph): a directed acyclic graph oriented toward a root node that serves as a gateway to the Internet.
DODAG construction:
- The root node initiates the construction by emitting DIO (DODAG Information Object) messages
- Each node receiving a DIO calculates its rank (distance to root) according to an objective function (OF)
- The node selects a preferred parent among neighbors offering the best rank
- The process propagates hop by hop to the leaves
RPL messages:
| Message | Direction | Role |
|---|---|---|
| DIO (DODAG Information Object) | Downward (root to leaves) | Announces the DODAG, transmits parameters and metrics |
| DIS (DODAG Information Solicitation) | Upward | Solicits a DIO from neighbors |
| DAO (Destination Advertisement Object) | Upward (leaves to root) | Announces downward routes to nodes |
| DAO-ACK | Downward | Acknowledgment of a DAO |
Objective functions:
The objective function determines how a node chooses its parent and calculates its rank:
- OF0 (Objective Function 0): minimizes the number of hops
- MRHOF (Minimum Rank with Hysteresis Objective Function): minimizes the ETX (Expected Transmission Count), taking link quality into account
Supported traffic modes:
- Multipoint-to-point (MP2P): traffic from sensor nodes to the root (data collection). This is RPL's native mode; the DODAG naturally provides routes to the root.
- Point-to-multipoint (P2MP): traffic from the root to nodes (commands, updates). Uses downward routes built via DAOs.
- Point-to-point (P2P): direct communication between two nodes in the network. Traffic goes up to a common ancestor in the DODAG then back down.
8. Energy-efficient MAC protocols
The MAC layer is critical for the energy consumption of LP-WPAN devices. Several protocols have been designed to optimize this consumption:
Sources of energy waste:
- Idle listening: listening to the channel when there is no data (main source of consumption)
- Collisions: retransmissions required after collision
- Overhearing: receiving packets destined for other nodes
- Control overhead: synchronization messages, beacons
Main approaches:
- Duty cycling: alternating between active and inactive periods to reduce idle listening
- Preamble sampling: emitting a long preamble before data, the receiver periodically samples the channel
- TDMA: time slot allocation to avoid collisions
Representative protocols:
- IEEE 802.15.4 MAC: beacon mode with superframe (active/inactive periods, GTS)
- ContikiMAC: duty-cycling protocol used in Contiki OS, based on periodic channel sampling
- TSCH (Time-Slotted Channel Hopping): IEEE 802.15.4e extension combining TDMA and frequency hopping to improve reliability and consumption
9. Application protocols for constrained IoT
End-to-end IPv6 connectivity and MQTT:
We established end-to-end IPv6 connectivity with an application server and set up MQTT for data distribution. This involved configuring the MQTT broker and using tools such as mosquitto_sub and mosquitto_pub to distribute data between topic producers and consumers.
CoAP (Constrained Application Protocol):
CoAP is an application protocol designed for constrained devices (RFC 7252):
- Foundation: UDP (not TCP, too heavy for constrained devices)
- Model: REST (GET, PUT, POST, DELETE) like HTTP but much lighter
- Header: only 4 bytes (vs tens of bytes for HTTP)
- Observation: resource subscription mechanism (automatic notification on changes)
- Discovery: standardized resource discovery mechanism (/.well-known/core)
- Security: DTLS for encryption
MQTT-SN (MQTT for Sensor Networks):
MQTT-SN is an adaptation of MQTT for sensor networks:
- Transport: UDP instead of TCP
- Topic ID: short numerical identifiers instead of character strings
- Gateway: MQTT-SN / MQTT gateway for communication with the broker
- QoS: three quality of service levels (0, 1, 2)
- Publish/Subscribe: asynchronous communication model suited for sensors
10. Network architecture for constrained devices
The network architecture for constrained IoT devices follows a hierarchical model:
Internet / Cloud
|
Border Router (6LBR)
- 6LoWPAN border router
- IPv6 <-> 6LoWPAN translation
- IP network access point
|
6LoWPAN Network (mesh)
- 6LoWPAN Routers (6LR)
- Relay frames in the mesh network
- Participate in RPL routing
|
End Nodes (6LN)
- Sensors / actuators
- Resource-constrained devices
- Communicate via 6LoWPAN
Constrained device classification (RFC 7228):
| Class | RAM | Flash | Designation |
|---|---|---|---|
| Class 0 | < 10 KB | < 100 KB | Very constrained (IP not possible) |
| Class 1 | ~10 KB | ~100 KB | Constrained (6LoWPAN/CoAP possible) |
| Class 2 | ~50 KB | ~250 KB | Moderate (full IP stack possible) |
Border gateway (6LBR):
The Border Router is a critical element of the architecture. It provides:
- Translation between the standard IPv6 world and the 6LoWPAN network
- Header compression/decompression
- RPL routing (DODAG root)
- Management of address compression contexts
- Interface with the global IP network
PART D: ANALYSIS AND REFLECTION
Skills acquired
Understanding of the LP-WPAN protocol stack:
Mastery of the entire protocol stack, from the IEEE 802.15.4 physical layer to CoAP and MQTT-SN application protocols, including the 6LoWPAN adaptation layer and RPL routing.
Network frame analysis:
Ability to capture and analyze 6LoWPAN frames with Wireshark, understanding IPHC header compression mechanisms and fragmentation.
IoT architecture design:
Ability to design network architectures adapted to IoT device constraints: energy, memory, bandwidth.
Technology comparison:
Ability to compare and select wireless technologies suited to a given use case (WPAN vs LPWAN, ZigBee vs Thread vs BLE).
Knowledge and skills mobilized
- Understanding the fundamentals of LP-WPANs and their adapted TCP/IP protocol stack
- Analyzing the advantages and disadvantages of using standard IP-based protocols in constrained networks
- Integrating IPv6 in low-power use cases through 6LoWPAN
- Understanding the IEEE 802.15.4 standard and its applications in protocols such as ZigBee and Thread
- Mastering the RPL routing protocol for lossy networks
- Configuring end-to-end IPv6 networks with application protocols such as MQTT and CoAP
Self-assessment
I found the LP-WPAN course to be a valuable introduction to low-power wireless networks. I particularly enjoyed working with IPv6 and 6LoWPAN. There are still areas where I have uncertainties and where I need to deepen my knowledge, but with time and practice, I am confident in my mastery of these concepts.
The lab sessions were well guided by the instructor, which helped me better understand because the subject was quite complex at first, but he succeeded in effectively conveying the course skills.
The most enriching part was the analysis of 6LoWPAN frames with Wireshark: concretely seeing how IPv6 headers are compressed from 40 bytes to just a few bytes is very revealing of the engineering behind these protocols.
My opinion
This was a new concept that I enjoyed working on. It gave me a new perspective on networking possibilities and allowed me to explore innovative solutions in low-power wireless networks. The hands-on experiments were interesting as they demonstrated the concrete applications of LP-WPAN technologies.
The overview of technologies (LoRa, Sigfox, NB-IoT, BLE, Thread) gave me a comprehensive view of the solutions available for IoT, which is essential for an engineer who must choose the right technology for each project.
Understanding the 6LoWPAN architecture and RPL routing is particularly relevant for professional IoT projects, where end-to-end IP connectivity is increasingly sought after.
Course Documents
Chapitre 0 : Wireless Network Survey for IoT Chapter 0: Wireless Network Survey for IoT
Panorama des technologies sans fil pour l'IoT : classification, comparaison des protocoles, criteres de selection. Overview of wireless technologies for IoT: classification, protocol comparison, selection criteria.
Chapitre 2 : 6LoWPAN - Network Architecture Chapter 2: 6LoWPAN - Network Architecture
Architecture 6LoWPAN : compression d'en-tetes, fragmentation, adressage mesh, integration IPv6. 6LoWPAN architecture: header compression, fragmentation, mesh addressing, IPv6 integration.
Reports and Projects
Rapport de TP : LP-WPAN IPv6 Lab Report: LP-WPAN IPv6
Ouvrir le rapport complet Open the full report
Ouvrir le sujet de TP Open the lab subject
Course taken in 2024-2025 at INSA Toulouse, Department of Electrical and Computer Engineering.