« LoRaWAN » : différence entre les versions
(29 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
== L'essentiel à savoir sur LoRaWAN == | LoRaWAN<sup>®</sup> est une technologie de télécommunication permettant de faire communiquer des objets (bien souvent des capteurs) grâce à une liaison radio (donc sans fil). | ||
== L'essentiel à savoir sur LoRaWAN<sup>®</sup> == | |||
* Technologie de communication sans fil basse consommation | * 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 | * 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 [[Bande de fréquences ISM|bandes de fréquences ISM]] | ||
* Permet de construire et d'exploiter un réseau privé | * 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 | * 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 == | == A propos de la technologie LoRaWAN<sup>®</sup> == | ||
Basée sur l'exploitation des [[Bande de fréquences ISM|bandes ISM]] (libres), LoRaWAN<sup>®</sup> 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<sup>®</sup> == | |||
=== Réseaux opérés === | === Réseaux opérés === | ||
Partout dans le monde, des opérateurs propose des réseaux LoRaWAN dits "opérés" (par exemple [https://www.orange-business.com/fr/reseau-iot 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. | Partout dans le monde, des opérateurs propose des réseaux LoRaWAN<sup>®</sup> dits "opérés" (par exemple [https://www.orange-business.com/fr/reseau-iot 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 === | === 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, et des coûts d'exploitation informatique du réseau (maintenance des gateways, hébergement et infogérance du network server...). | Il est possible de construire un réseau LoRaWAN<sup>®</sup> privé (c'est à dire indépendant de tout opérateur) en achetant ses propres antennes (appelées [[Gateway LoRaWAN|Gateways]]). Les coûts sont alors ceux liés à l'achat du matériel, de l'éventuelle licence du [[Network server LoRaWAN|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é ? === | === 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 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<sup>®</sup> 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. | 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<sup>®</sup> 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<sup>®</sup>, 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<sup>®</sup> 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). | |||
==== Dans quel cas utiliser l'ADR ? ==== | |||
L'ADR ne doit être utilisé que pour les capteurs et objets qui sont statiques, c'est à dire qui n'ont pas vocation à changer d'emplacement dans le temps. Si un device a fait son Join à un emplacement donné et qu'il communique en SF7 (DR5), il pourrait ne plus être capté par le réseau si on l'éloigne de l'antenne. Pour cette même raison, on évitera de faire un Join à un endroit différent de l'endroit d'installation définitive du capteur ou de l'objet. | |||
Lorsqu'un objet est mobile, on désactivera l'ADR, et c'est le capteur lui-même qui déterminera le Spreading Factor avec lequel il enverra ses données. | |||
=== Bidirectionnalité === | |||
LoRaWAN<sup>®</sup> 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 B ==== | |||
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, mais également pendant des fenêtre de temps définies à intervalles réguliers. | |||
==== 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 == | == Sécurité des données == | ||
LoRaWAN offre des caractéristiques | LoRaWAN<sup>®</sup> 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 [[Attaque par déni de service|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). | ||
== Composants d'un réseau LoRaWAN == | Les échanges de données entre les objets et le network server sont cryptées en [[AES128]]. | ||
Un réseau LoRaWAN est composé de plusieurs composants logiciels et matériel : | |||
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<sup>®</sup> == | |||
Un réseau LoRaWAN<sup>®</sup> 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 | * 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 | * 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 | ||
== Capteurs et objets LoRaWAN<sup>®</sup> == | |||
Tout capteur affirmant être compatible avec la technologie peut fonctionner sur le réseau. Les capteurs et objets LoRaWAN<sup>®</sup> vont recevoir certains paramètres de fonctionnement de la part du réseau. | |||
Toutefois, les capteurs peuvent eux-même définir certains paramètres qui vont leur permettre d'économiser de l'énergie ou de sécuriser l'envoi de données. | |||
Voir cet article : [[Comment bien configurer un capteur LoRaWAN selon son cas d'usage ?|comment bien configurer un capteur LoRaWAN<sup>®</sup> selon son cas d'usage ?]] | |||
== Cas d'usage de la technologie LoRaWAN<sup>®</sup> == | |||
Les cas d'usage de la technologie LoRaWAN<sup>®</sup> sont très larges. | |||
On peut citer notamment : | |||
* Le bâtiment intelligent ([[Smart Building]]) | |||
* La sécurité des personnes | |||
* La sécurité des biens | |||
* Le retail | |||
== Capteurs LoRaWAN == | |||
* [[Capteurs de température et d'hygrométrie LoRaWAN|Capteurs de température et d'hygrométrie]] | |||
== Limitations de LoRaWAN (Europe) == | |||
Les principales limitations de LoRaWAN sont les conséquences de la réglementation en vigueur sur les bandes de fréquence ISM. Elles peuvent varier d'un pays à l'autre. Les limitation indiquées ci-dessous sont valables pour les pays de la zone EU868. | |||
Les 2 règles principales qui s'appliquent sont les suivantes : | |||
* La puissance d'émission est limitée à 14dBm (soit 25mW). | |||
* Le temps dans l'air (duty cycle) est limité à 1% pour les capteurs et objets, et 10% pour les gateways (calculé sur une heure). | |||
{| class="wikitable" | |||
|+ | |||
!Spreading Factor | |||
!Data Rate | |||
!Taille maximum des messages | |||
!Temps dans l'air | |||
par message de 12 bytes | |||
!Fréquence d'envoi maximum | |||
pour des messages de 12 bytes | |||
|- | |||
|SF7 | |||
|DR5 | |||
|222 bytes | |||
|61ms | |||
|590 msg / heure | |||
|- | |||
|SF8 | |||
|DR4 | |||
|222 bytes | |||
|113ms | |||
|318 msg / heure (1 rep) | |||
|- | |||
|SF9 | |||
|DR3 | |||
|115 bytes | |||
|206ms | |||
|174 msg / heure (1rep) | |||
|- | |||
|SF10 | |||
|DR2 | |||
|51 bytes | |||
|411ms | |||
|87 msg / heure (1 rep) | |||
|- | |||
|SF11 | |||
|DR1 | |||
|51 bytes | |||
|823ms | |||
|43 msg / heure (1 rep) | |||
|- | |||
|SF12 | |||
|DR0 | |||
|51 bytes | |||
|1483ms | |||
|24 msg / heure (1 rep) | |||
|} | |||
Calculateur de temps dans l'air : https://www.thethingsnetwork.org/airtime-calculator/ | |||
Les capteurs et les gateways de qualité intègrent tous des mécanismes permettant de respecter les réglementations en vigueur, et certains sont capables de décaler des messages pour se conformer aux règles. | |||
[[Category:Internet des Objets]] | |||
[[Category:Télécommunications]] |
Version actuelle datée du 14 octobre 2023 à 17:51
LoRaWAN® est une technologie de télécommunication permettant de faire communiquer des objets (bien souvent des capteurs) grâce à une liaison radio (donc sans fil).
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équences 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®
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).
Dans quel cas utiliser l'ADR ?
L'ADR ne doit être utilisé que pour les capteurs et objets qui sont statiques, c'est à dire qui n'ont pas vocation à changer d'emplacement dans le temps. Si un device a fait son Join à un emplacement donné et qu'il communique en SF7 (DR5), il pourrait ne plus être capté par le réseau si on l'éloigne de l'antenne. Pour cette même raison, on évitera de faire un Join à un endroit différent de l'endroit d'installation définitive du capteur ou de l'objet.
Lorsqu'un objet est mobile, on désactivera l'ADR, et c'est le capteur lui-même qui déterminera le Spreading Factor avec lequel il enverra ses données.
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 B
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, mais également pendant des fenêtre de temps définies à intervalles réguliers.
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
Capteurs et objets LoRaWAN®
Tout capteur affirmant être compatible avec la technologie peut fonctionner sur le réseau. Les capteurs et objets LoRaWAN® vont recevoir certains paramètres de fonctionnement de la part du réseau.
Toutefois, les capteurs peuvent eux-même définir certains paramètres qui vont leur permettre d'économiser de l'énergie ou de sécuriser l'envoi de données.
Voir cet article : comment bien configurer un capteur LoRaWAN® selon son cas d'usage ?
Cas d'usage de la technologie LoRaWAN®
Les cas d'usage de la technologie LoRaWAN® sont très larges.
On peut citer notamment :
- Le bâtiment intelligent (Smart Building)
- La sécurité des personnes
- La sécurité des biens
- Le retail
Capteurs LoRaWAN
Limitations de LoRaWAN (Europe)
Les principales limitations de LoRaWAN sont les conséquences de la réglementation en vigueur sur les bandes de fréquence ISM. Elles peuvent varier d'un pays à l'autre. Les limitation indiquées ci-dessous sont valables pour les pays de la zone EU868.
Les 2 règles principales qui s'appliquent sont les suivantes :
- La puissance d'émission est limitée à 14dBm (soit 25mW).
- Le temps dans l'air (duty cycle) est limité à 1% pour les capteurs et objets, et 10% pour les gateways (calculé sur une heure).
Spreading Factor | Data Rate | Taille maximum des messages | Temps dans l'air
par message de 12 bytes |
Fréquence d'envoi maximum
pour des messages de 12 bytes |
---|---|---|---|---|
SF7 | DR5 | 222 bytes | 61ms | 590 msg / heure |
SF8 | DR4 | 222 bytes | 113ms | 318 msg / heure (1 rep) |
SF9 | DR3 | 115 bytes | 206ms | 174 msg / heure (1rep) |
SF10 | DR2 | 51 bytes | 411ms | 87 msg / heure (1 rep) |
SF11 | DR1 | 51 bytes | 823ms | 43 msg / heure (1 rep) |
SF12 | DR0 | 51 bytes | 1483ms | 24 msg / heure (1 rep) |
Calculateur de temps dans l'air : https://www.thethingsnetwork.org/airtime-calculator/
Les capteurs et les gateways de qualité intègrent tous des mécanismes permettant de respecter les réglementations en vigueur, et certains sont capables de décaler des messages pour se conformer aux règles.