LoRaWAN
L'essentiel à savoir sur LoRaWAN
- Technologie de communication sans fil basse consommation
- Pas de coût de licence (mais coût d'abonnement si utilisation d'un réseau opéré) du fait de l'utilisation des bandes de fréquence ISM
- Permet de construire et d'exploiter un réseau privé
- Peu vulnérable aux attaques classiques inhérentes aux objets IP
- Basé sur des technologies propriétaires et est une marque déposée de la société américaine Semtech
A propos de la technologie LoRaWAN
LoRaWAN est une technologie permettant de faire communiquer des objets (bien souvent des capteurs) grâce à une liaison radio (donc sans fil).
Basée sur l'exploitation des bandes ISM (libres), LoRaWAN consomme peu d'énergie et ne requiret aucun coût de licence pour fonctionner, ce qui la rend en théorie plus économique que d'autres technologies comme la 4G ou LTE-M.
Mode d'exploitation des réseaux LoRaWAN
Réseaux opérés
Partout dans le monde, des opérateurs propose des réseaux LoRaWAN dits "opérés" (par exemple Orange en France), c'est à dire gérés par ces opérateurs eux-même. Les capteurs qui fonctionnent sur ces réseaux devront donc payer un abonnement.
Réseaux privés
Il est possible de construire un réseau LoRaWAN privé (c'est à dire indépendant de tout opérateur) en achetant ses propres antennes (appelées Gateways). Les coûts sont alors ceux liés à l'achat du matériel, de l'éventuelle licence du network server (non applicable en utilisant des outils open source comme Chirpstack), et des coûts d'exploitation informatique du réseau (maintenance des gateways, hébergement et infogérance du network server...).
Quand choisir un réseau privé ?
Lorsque peu d'objets sont déployés dans plusieurs endroit sur une large zone géographique (par exemple des compteurs d'eau sur des sites industriels), il est bien souvent plus avantageux d'utiliser un réseau LoRaWAN opéré.
Lorsque beaucoup d'objets sont concentrés dans une zone géographique restreinte, le réseau privé peut devenir une option plus avantageuse, aussi bien en termes de coûts de déploiement que d'optimisation de la couverture, en particulier à l'intérieur des bâtiments.
Fonctionnement du réseau
LoRaWAN est un protocole qui définit comment les objets communiquent.
Provisionning des objets sur le réseau
Pour qu'un objet puisse communiquer sur un réseau LoRaWAN, il faut qu'il soit "provisionné" (déclaré) sur ce réseau. Cette déclaration nécessite à minima un idendifiant (DevEUI) et une clef (AppKey).
Note : le mode dit "OTAA" est à privilégier : c'est celui que nous décrivons ici. Le mode "ABP" doit être évité.
Lors de la phase dite de Join (qui se lance notamment la première fois que l'objet est mis sous tension), le Network Server va échanger avec le device des clefs dites de session afin de communiquer ensuite de manière cryptée avec l'objet. Pendant cette phase de join, d'autres informations spécifiques au réseau vont être échangées. Le stockage de ces clefs de session et leur accès est donc :
- Un élément majeur de sécurité
- Essentiel pour anticiper une reprise après sinistre sans devoir forcer les capteurs ou les objets à refaire un join
Adaptative Data Rate (ADR)
LoRaWAN intègre la possibilité de moduler la façon dont les capteurs communiquent afin d'économiser de l'énergie tout en gardant une bonne qualité de transmission.
Pour cela, le network server peut se baser sur plusieurs indicateurs :
- Le niveau du signal radio (RSSI)
- Le rapport Signal / Bruit (SNR)
- Les éventuels sauts de trames
En fonction de ces indicateurs, il pourra demander au capteur ou à l'objet (via ce qu'on appelle des commandes MAC) :
- D'augmenter ou de réduire son temps dans l'air (Spreading Factor ou Data Rate)
- De répéter plusieurs fois les trames à chaque envoi
Plus le Spreading Factor est élevé, plus le temps dans l'air est long, et plus le device va consommer d'énergie à chaque envoi (va de SF7 à SF12, qui correspond à DR5 à DR0, l'échelle étant inversée).
Bidirectionnalité
LoRaWAN est naturellement bien adapté aux transmissions dites montantes (uplinks), c'est à dire partant du capteur et remontant vers le réseau. Le protocole permet également des liaisons dites descendantes, c'est à dire qu'il est possible d'envoyer des commandes aux capteurs ou aux objets.
La façon dont ces commandes sont reçues dépend essentiellement de la classe de l'appareil.
Classe A
L'appareil écoute si des commandes lui sont destinées après chaque envoi, dans un intervalle de temps défini par le réseau lors de la phase de Join.
Classe C
L'appareil est en phase d'écoute permanente, et peut donc recevoir les commandes en temps réel. Ce mode nécessite une énergie importante, et est donc souvent réservé aux appareils branchés.
Sécurité des données
LoRaWAN offre des caractéristiques intéressantes sur le plan de la sécurité. En effet, les objets connectés par cette technologie ne sont pas directement connectés à Internet, et ont une capacité très limitée d'envoi de données. Cela rend les capteurs ainsi connectés nativement protégés contre les attaques par déni de service ou les malwares qui colonisent leur hôte pour canibaliser leurs ressources (par exemple en minant de la cryptomonnaie).
Les échanges de données entre les objets et le network server sont cryptées en AES128.
Les principaux risques en termes de sécurité sont les suivants :
- Risque de rejeu : quelqu'un "snif" une trame et la renvoie. Ce risque peut être mitigé par l'utilisation de compteurs (DevNonce)
Composants d'un réseau LoRaWAN
Un réseau LoRaWAN est composé de plusieurs composants logiciels et matériel :
- Des antennes, ou gateways, qui vont capter le signal radio et transmettre le contenu du message par Internet
- Un network server (le coeur du réseau), c'est à dire un logiciel qui va recevoir, gérer et décoder les messages issus des capteurs au travers des gateways