Vous êtes sur la page 1sur 41

Département Génie Informatique

Réseau
Pr. Omar MOUSSAOUI
o.moussaoui@ump.ac.ma

Filière : GIE2, Année 2022-2023


PLAN
❑ Réseaux de communication LPWAN
❑ Les origines de LoRaWAN
❑ Caractéristiques des réseaux LoRaWAN
❑ Architecture de LoRaWAN
❑ Modèle en couches de LoRaWAN
➢ Couche physique LoRa
➢ Couche MAC LoRaWAN
❑ Format des paquets LoRaWAN
❑ Sécurité dans un réseau LoRaWAN
❑ OTAA/ABP Activations
Réseaux de communication LPWAN
❑ Les objets connectés sont des équipements limités en capacité mémoire,
en puissance de calcul et en énergie.
❑ Plus de 50% des objets connectés ont besoin d’une faible consommation.
❑ Les réseaux de communication existants ne sont pas adaptés aux applis
de l’IoT: portée, autonomie et coût.
❑ Deux grands types de réseaux de communication radio peuvent être
utilisés pour communiquer avec les objets connectés :
➢ Les réseaux à courte portée : de quelques centimètres à quelques centaines de
mètres maximum : Bluetooth, RFID, NFC, ZigBee, WiFi, etc.
➢ Les réseaux à grande portée : quelques centaines de mètres à plusieurs dizaines
de kilomètres : réseaux cellulaires traditionnels (GSM, GPRS, LTE, etc.)
Réseaux de communication LPWAN
❑ La technologie Wi-Fi offre un débit important, mais :
➢ Portée limitée,
➢ Consommation d’énergie élevée,
➢ Coût peut être élevé.
❑ La solution des réseaux cellulaires traditionnels est surdimensionnée pour
les applications IoT
➢ Coût élevé, grande infrastructure, grande puissance, débit important
❑ La solution des réseaux LPWAN (LowPower Wide Area Networks) est
une réponse adaptée au monde de l’IoT
➢ Grande portée,
➢ Faible consommation d’énergie,
➢ Débit faible.
Réseaux de communication LPWAN

Segmentation des technologies IoT


Réseaux de communication LPWAN

Positionnement des réseaux LPWAN


Réseaux de communication LPWAN
Caractéristiques des réseaux LPWAN
➢ Ce sont des réseaux sans fil, basse consommation, bas débit et longue portée,
optimisés pour les équipements ayant besoin d’une autonomie de plusieurs années
➢ Les LPWAN utilisent les bandes de fréquences à usage libre sans licence appelées
ISM (Industrial, Scientific, Medical)
➢ L’utilisation des bandes ISM implique le partage des ressources avec les
concurrents (comme SigFox) et avec les autres technologies (WiFi, Zigbee,
Bluetooth, RFID, etc.)
➢ Ces bandes de fréquences sont régulées par des autorités organisatrices et il est
tenu de respecter des règles d’utilisation.
➢ La vitesse de transmission pour LPWAN variée de 300 bps à 5 kbps (avec une
bande passante de 125 kHz)
➢ Exemples d’applications: villes intelligentes, agriculture de précision, e-santé, etc.
Réseaux de communication LPWAN

Domaines d’utilisation des réseaux LPWAN :


Les origines de LoRaWAN
❑ LoRaWAN (Long Range Wide Area Network) est un réseau LPWAN
fondé sur la technologie LoRa.

❑ LoRa est une technologie de modulation propriétaire, créée en 2009


par la start-up grenobloise Cycléo (rachetée par l’entreprise
californienne de semi-conducteurs Semtech en 2012).

❑ LoRa est la couche physique permettant de connecter des objets


nécessitant une longue autonomie de batterie (comptée en années),
dans un volume et avec un coût réduit.

❑ LoRaWAN permet de structurer un réseau étendu à basse consommation


(LPWAN), intégrant des équipements terminaux à faible consommation
électrique par l'intermédiaire de passerelles.
Les origines de LoRaWAN

LoRaAlliance: membres sponsors


Caractéristiques des réseaux LoRaWAN
Longue portée : Connecte des appareils situés jusqu'à près de 50 km de distance l'un de
l'autre dans les zones rurales, et pénètre les environnements urbains plus denses ou les
intérieurs plus impénétrables

Basse consommation : Nécessite peu d'énergie, avec une batterie dont la durée de vie est
prolongée jusqu'à 10 ans, ce qui réduit les coûts liés à son remplacement

Sécurité : Comprend le chiffrement AES128, l'authentification mutuelle, la protection de


l'intégration et la confidentialité de bout en bout

Normalisée : Offre l'interopérabilité entre appareils et la disponibilité internationale des


réseaux LoRaWAN pour un déploiement rapide des applications IoT partout dans le monde

Géolocalisation : Soutient les applications de suivi sans GPS, offrant des avantages uniques
avec sa basse consommation dont d'autres technologies ne peuvent se vanter

Mobile : Maintient la communication avec des dispositifs en mouvement sans porter atteinte à
la consommation d'énergie

Capacité élevée : Prend en charge des millions de messages par station de base radio,
répondant aux besoins des opérateurs réseaux publics desservant des marchés significatifs

Bas coût : Réduit l'investissement dans des infrastructures, les frais liés aux remplacements de
batteries et, à terme, les frais d'exploitation
Caractéristiques des réseaux LoRaWAN
❑ LoRaWAN est un réseau basse consommation d’énergie, longue portée,
adaptés aux objets connectés dont l’application requiert une autonomie
importante
❑ Nécessite le respect des règles d’utilisation (puissance d’émission,
rapport cyclique et bande passante)
❑ LoRa est la couche physique qui permet des communications sans fil longue
distance
❑ LoRaWAN définit le protocole de communication et l’architecture réseau
❑ LoRa utilise les bandes de fréquences ISM (433MHz/868MHz en Europe,
915MHz aux USA)
❑ Une portée comprise entre 3 – 5 km dans les zones urbaines, entre
15 – 20km dans les zones rurales et supérieure à 50km en vue directe,
❑ LoRa utilise la modulation à étalement de spectre
❑ Débit faible entre 300bps – 50Kbps selon le facteur d’étalement de
spectre SF (Spreading Factor) et la bande passante 125KHz/250KHz
Architecture LoRaWAN
L'architecture LoRaWAN se compose principalement de 4 parties :
➢ Des End-Devices communiquent en modulation LoRa avec les passerelles
➢ Les passerelles envoient les données vers le serveur réseau via l’IP
➢ Un serveur réseau au centre (Topologie «star-of-stars»)
➢ Des serveurs applicatifs
Architecture LoRaWAN
❑ Les nœuds extrémités utilisent le protocole LoRa pour communiquer en
un seul saut avec l’ensemble des passerelles qui les couvrent (non pas
exclusivement avec une passerelle définie).
❑ Les transmissions entre End-Devices et passerelles doivent respecter les
règles suivantes :
➢ L’End-Device change de canal de manière pseudo-aléatoire à chaque
transmission.
➢ Respect du rapport cyclique autorisé (1% en Europe, soit 36 secondes par heure).
➢ Respect de la puissance maximale d’émission autorisée (25mW en Europe).
❑ Les passerelles jouent le rôle d’un pont entre les End-Devices et le serveur
réseau.
❑ Le serveur réseau gère la sécurité, le débit adaptatif et la redondance.
❑ Les serveurs applicatifs exploitent les données en provenance des End-
Devices.
Modèle en couches de LoRaWAN
Couche physique : Modulation LoRa
Deux types de modulation en LPWAN:
❑ SigFox – Ultra Narrow Band
➢ Emettre un signal sur une bande de fréquence la plus étroite possible pour maximiser la
puissance en un point et passer au dessus du bruit

❑ LoRa – étalement du spectre


➢ Émettre le même signal sur plusieurs fréquences pour contourner le bruit
➢ Étalement de spectre : Chirp Spread Spectrum
Couche physique : Modulation LoRa
❑ La portée d’une communication LoRa dépend :
➢ De la bande passante
➢ De la puissance du signal
➢ Du facteur d’étalement
❑ Si l’étalement du signal augmente alors :
➢ la portée augmente
➢ le débit est réduit
➢ avec une transmission plus longue, la consommation d’énergie est
plus élevée.
Couche physique : Modulation LoRa

Paramètres régionaux
Couche physique : Adaptation du débit LoRa
❑ Les end-devices transmettent sur n’importe quel canal disponible à un instant donné
❑ LoRa adapte le débit de données en fonction du débit demandé
❑ Le débit de données est optimisé en minimisant le temps d’une trame et la consommation
énergétique des nœuds
❑ SF (Spreading Factor) est le facteur d'étalement du spectre
➢ SF = Log2 (Rc/Rs), avec Rc est le débit du message transmis et Rs est le débit du
symbole à transmettre
❑ ADR (Adaptative Data Rate)
➢ permet aux end-devices de changer individuellement leur débit de transmission
➢ optimise les communications des end-devices en utilisant le débit le plus rapide
possible
➢ Avec un débit rapide
• Le temps de transmission est réduit
• la consommation d’énergie est diminuée
• la capacité du réseau augmente
Couche physique : Adaptation du débit LoRa

Spreading Factor Bitrate Range Time on Air (ms)


(Indicative value, depending on For 10 Bytes app payload
(at 125 khz) propagation conditions)

SF7 5470 bps 2 km 56 ms

SF8 3125 bps 4 km 100 ms

SF9 1760 bps 6 km 200 ms

SF10 980 bps 8 km 370 ms

SF11 440 bps 11 km 740 ms

SF12 290 bps 14 km 1400 ms

With coding rate 4/5; bandwidth 125khz; Packet Error Rate (PER) 1%
Couche physique : Les facteurs d’étalement SF

LoRaWAN supporte 6 facteurs d’étalements : de SF7 à SF12

Le débit utile et la portée en fonction du facteur d’étalement


Couche physique : Les facteurs d’étalement SF
Une passerelle LoRaWAN doit au minimum proposer trois canaux de
fréquence : 868.10, 868.30 et 868.50 avec une bande passante de 125KHz
Couche MAC LoRaWAN

Communication
Uplink

Communication
Downlink
Couche MAC LoRaWAN
La couche MAC du protocole LoRaWAN définit 3 classes d'équipements :
• Classe A «All» : offre une communication bidirectionnelle dans
laquelle une transmission montante (uplink) est suivie par deux
courtes fenêtres de réception (downlink) définies aléatoirement
(ALOHA).
• Classe B «Beacon» : Le fonctionnement est le même que pour la
classe A avec l’ajout d’un slot de réception programmé en plus des
deux fenêtres aléatoires. La planification est permise par l’envoi
d’un beacon de synchronisation par la passerelle.
• Classe C «Continuous» : concerne les end-devices qui écoutent le
réseau continuellement. Ce mode de fonctionnement est réservé
aux périphériques qui n’ont pas de contraintes d’énergie.
NB: Un équipement peut changer de classe en cours de
fonctionnement.
Couche MAC LoRaWAN
Classe A «All»
➢ La classe A doit être implémentée dans tous les équipements par souci de compatibilité.
➢ Cette classe a la consommation énergétique la plus faible.
➢ Lorsque l'équipement a des données à envoyer il le fait sans contrôle puis il ouvre 2
fenêtres d'écoute successives pour des éventuels messages provenant du serveur, les
durées recommandées sont de 1 puis 2 secondes. Ces 2 fenêtres sont les seules durant
lesquelles le serveur peut envoyer à l'équipement les données qu'il a précédemment
stockées à son attention.
Couche MAC LoRaWAN
Classe A «All» : Transmission
❑ Après chaque transmission, l’end-device ouvre deux fenêtres de
réception :
➢ La première après un temps (receive-delay1) de la fin de la
transmission montante. Cette fenêtre utilise le même canal que la
transmission montante
➢ La deuxième fenêtre utilise une fréquence et un débit fixes
configurés, et commence après un temps (receive-delay2)
❑ La durée de la fenêtre de réception doit correspondre au moins au
temps nécessaire à l’interface radio du nœud extrémité pour détecter le
préambule
❑ Une fois le préambule détecté, le nœud récepteur reste actif jusqu’à la
démodulation de la trame envoyée en downlink
❑ Un nœud émetteur ne peut commencer une nouvelle transmission que s’il
reçoit un message en downlink dans la première ou deuxième fenêtre
Couche MAC LoRaWAN
Classe B «Beacon»
❑ Cette classe permet un compromis entre la consommation énergétique et
le besoin en communication bidirectionnelle.
➢ La consommation en énergie est plus importante en classe B qu’en
classe A.
❑ Les équipements de classe B ouvrent des fenêtres de réception à des
intervalles programmés par des messages périodiques envoyés par le
serveur.
Couche MAC LoRaWAN
Classe C «Continuous»
➢ Cette classe a la plus forte consommation énergétique mais permet
des communications bidirectionnelles n'étant pas programmées.
➢ Les équipements de classe C ont des fenêtres d'écoute permanentes qui
ne sont fermées que lorsque l'appareil transmet.
➢ De cette façon, ils peuvent recevoir des messages provenant du serveur
dans la fenêtre Rx2 à tout moment.
➢ Ces équipements n’ont pas de contraintes de consommation d’énergie et
offre la latence la plus faible.
Format des paquets LoRaWAN
➢ On retrouve 2 types de paquets LoRaWAN: les messages de données et d’appairage.
➢ Les JoinRequest et JoinAccept sont ceux d’appairage et le reste de données.
➢ Un message de données peut être uplink ou downlink.
➢ Dans un message de données on retrouve l’identifiant de l’appareil (DevAddr), de quoi
gérer le contrôle de flux (FCtrl), un compteur de paquets FCnt, les données chiffrées dans
FRMPayload et une signature (MIC).
Format des paquets LoRaWAN
Champ Description
Mtype Ce champ indique le type du message (montant ou descendant).
RFU Ce champ est réservé pour usage futur.
Major Ce champ indique la version du protocole utilisée.

MIC Ce champ permet le calcul d'intégrité du paquet afin de détecter s'il a été altéré
durant son transport.
DevAddr Ce champ contient l'adresse de l'équipement.
FCtrl Ce champ permet l'adaptation du débit et les acquittements. Il indique la
présence de paquets supplémentaires ainsi que la longueur du champ FOpts.
FCnt Ce champ est un compteur de trame (incrémenté à chaque envoi).
FOpts Ce champ permet de passer des commandes MAC. La commande LinkCheckReq
permet à un équipement d'extrémité de tester sa connectivité. Le reste des
commandes est utilisé par le serveur pour fixer les paramètres radio des
équipements comme le Data Rate ou le canal par exemple. D'autres commandes
permettent de contrôler leur niveau de batterie ou leur qualité de réception
FPort Ce champ contient le port de l'application ou du service auquel est adressé le
paquet.
Identifiants dans LoRaWAN
➢ LoRaWAN identifie les entités suivantes :
➢ DevEUI : Identifie le end-device, format EUI-64 (unique)
➢ AppEUI : Identifie l’application, EUI-64 (unique)
➢ GatewayEUI : Identifie la passerelle, format EUI-64 (unique)
➢ DevAddr : Adresse du device sur le réseau sur 32 bits (non unique)

Format EUI (Extended Unique


Identifier) est un format IPv6
qui s’obtient à partir d’une
adresse MAC
Sécurité dans un réseau LoRaWAN
En matière de sécurité, la norme LoRaWAN spécifie trois clefs AES-128 :
❑ NwkSKey: clef de session réseau, qui est utilisée lors des échanges entre l’end-device et
le cœur de réseau. Elle assure l'authenticité des devices en calculant et vérifiant un MIC
(Message Integrity Code) à partir du Header et du Payload chiffré.
❑ AppSKey: clef de session applicative, spécifique à un end-device est utilisée pour chiffrer
et déchiffrer le payload.
➔La clé de session applicative est connue uniquement par le fournisseur d'application et l’end-
device. Il est donc impossible pour un tiers, y compris l'opérateur, de consulter les données.
❑ AppKey: clef applicative connue seulement par l'application et l’end-device et qui permet
de déduire les deux clefs : NwkSKey et AppSKey.

NB. On utilise également un frame counter pour se protéger contre les attaques par rejeu, qui consistent à répéter
une transmission malicieusement interceptée. Le compteur est incrémenté à chaque transmission. La passerelle et les
end-devices rejettent les transmissions dont la valeur de compteur est inférieure à celle attendue.
Sécurité dans un réseau LoRaWAN
LoRaWAN utilise 2 clés de chiffrement symétrique AES partagées entre
l’appareil et les serveurs :
❑ NwkSKey : assure intégrité et authenticité du paquet LoRaWAN jusqu’au serveur
réseau via une signature AES CMAC retrouvée dans le champ MIC.
➢ Le MIC est calculé sur le MHDR, FHDR, FPort et FRMPayload.
➢ Cette clé est utilisée pour établir un canal sécurisé entre l’appareil et le
serveur réseau.

Signature du paquet
Sécurité dans un réseau LoRaWAN
LoRaWAN utilise 2 clés de chiffrement symétrique AES partagées entre
l’appareil et les serveurs :
➢ AppSKey : chiffre les données pour constituer le champ FRMPayload à destination
du serveur applicatif. Cela garantie la confidentialité en établissant un canal
sécurisé entre l’appareil et le serveur applicatif car le serveur réseau n’est pas
censé avoir accès à cette clé.

Chiffrement des données


Sécurité dans un réseau LoRaWAN
❑ La confidentialité est garantie de l’appareil jusqu’à l’application tandis
que l’intégrité et l’authenticité le sont jusqu’au serveur réseau.
➢ La gestion d’intégrité et d’authenticité sur le lien serveur réseau / serveur applicatif est laissée à
l’opérateur et son client.
➢ Le MIC permet seulement de garantir que le serveur réseau communique bien avec le bon appareil
avant d’exécuter les commandes MAC et de router les données à son serveur applicatif.
Sécurité dans un réseau LoRaWAN
Processus de signature/chiffrement LoRaWAN :

Pour faire partie d'un réseau LoRaWAN, chaque device doit obtenir les deux clefs de session. Cette
étape d'activation peut s'effectuer de deux manières : Over-The-Air Activation (OTAA) ou Activation
By Personalization (APB).
OTAA/ABP Activations
➢ Afin de pouvoir fonctionner sur le réseau, un équipement doit avoir été activé. Deux
procédures d'activation sont possibles :
➢ Activation By Personalization (ABP) : Les clefs de chiffrement sont stockées dans les
équipements;
➢ Over The Air Activation (OTAA) : Les clefs de chiffrement sont obtenues par un échange avec
le réseau.

Identifiant Propriété Obtention

DevAddr Identité de l’équipement d’extrémité (32bits) Générée en OTAA/


Configurée en ABP
DevEUI Identité de l’équipement d’extrémité (64bits) Configurée en ABP

AppEUI Identité de l'application (rend unique le propriétaire de Configurée en ABP


l’équipement d’extrémité)
NwkSKey Clef utilisée par le serveur réseau et l’équipement Générée en OTAA/
d’extrémité pour calculer et vérifier le champ MIC Configurée en ABP
AppSKey Clef utilisée par le serveur et l’équipement d’extrémité Générée en OTAA/
pour chiffrer et déchiffrer les données des paquets Configurée en ABP
AppKey Clef utilisée par l’équipement d’extrémité lors de la Générée en OTAA
procédure OTAA
OTAA/ABP Activations
➢ En OTAA, l’end-device doit transmettre au serveur réseau une demande d'accès, appelée
join-request et composée de trois paramètres : DevEUI, AppEUI, un MIC applicatif calculé
avec AppKey
➢ Le serveur d'enregistrement dispose également de l'AppKey qu'il utilise pour vérifier le MIC
réceptionné. Le serveur répond ensuite avec un message join-accept qui contient l'adresse
de l’end-device sur le réseau DevAddr et AppNonce (un application nonce de 3 octets qui
permet au end-device de dériver les clefs de session NwkSKey, AppSKey).
Piles de communication logicielles
➢ Pile Semtech : Il s'agit de la pile officielle LoRaWAN écrite en C par
Semtech. Disponible pour les passerelles et pour les end-devices, c'est
l'implémentation la plus complète du protocole, à jour avec la spécification.

➢ RadioHead : libraire de communication radio pour microcontrôleur. Elle


supporte notamment le tranceiver HopeRF RFM95 et la modulation LoRa. Le
protocole LoRaWAN n'est pas supporté.

➢ IBM LMIC : pile en C implémentant le protocole LoRaWAN. Plutôt légère,


elle se destine principalement aux microcontrôleurs. Elle est portée pour
l'environnement Arduino mais aussi pour ARM, notamment pour les STM32 et
pour Linux.
Piles de communication logicielles
➢ Pile Semtech : Il s'agit de la pile officielle LoRaWAN écrite en C par
Semtech. Disponible pour les passerelles et pour les capteurs, c'est
l'implémentation la plus complète du protocole, à jour avec la spécification.

➢ RadioHead : libraire de communication radio pour microcontrôleur. Elle


supporte notamment le tranceiver HopeRF RFM95 et la modulation LoRa. Le
protocole LoRaWAN n'est pas supporté.

➢ IBM LMIC : pile en C implémentant le protocole LoRaWAN. Plutôt légère,


elle se destine principalement aux microcontrôleurs. Elle est portée pour
l'environnement Arduino mais aussi pour ARM, notamment pour les STM32 et
pour Linux.
Comparaison entre technologies LPWAN

Vous aimerez peut-être aussi