Bâtir l`Internet des objets avec de la simulation de

publicité
A P P L I C A T I O N
Développement
Bâtir l’Internet des objets avec
de la simulation de systèmes
Développer des applications pour l’Internet des objets (IdO) implique de relever des défis
importants. Il n’est pas simple de regrouper des centaines de nœuds au sein d’un
laboratoire pour les tester, ni d’alimenter l’ensemble de ces nœuds en données réalistes.
Dans ces conditions, comment en effet tester un logiciel qui tournera sur des centaines,
voire des milliers de nœuds IdO ? La simulation est une réponse ad hoc à cette question.
L
es systèmes et applications
de l’Internet des objets créés
aujourd’hui comportent
généralement une architecture à trois niveaux : un grand nombre
de petits nœuds sont connectés les
uns aux autres ainsi qu’à des passerelles à l’aide de réseaux sans fil maillés, tandis que les passerelles se
connectent elles-mêmes à un serveur
de gestion ou au cloud. Les nœuds
de l’IdO peuvent être des capteurs :
capteurs de température, capteurs
d’électricité, caméras, interrupteurs
ou mécanismes actifs au sein de thermostats, de lampes et de verrous de
portes. Les passerelles ou les concentrateurs gèrent la connexion vers le
monde extérieur et s’occupent de la
sécurité. Le serveur principal, souvent situé dans le cloud, est chargé
AUTEUR
Jakob Engblom,
responsable
des produits
Simics, Wind
River.
du fonctionnement et du contrôle du
système IdO (figure 1).
Pour tester ce type de système, il faut
que les nœuds sans fil soient répartis
sur une zone étendue afin qu’ils ne
soient pas tous en contact les uns
avec les autres en raison des interférences. Pour éviter cela, il faut se
servir de bâtiments tout entiers ou de
campus comme « laboratoires de
test ». Configurer et maintenir un tel
réseau représente une quantité de
travail importante, les coûts de maind’œuvre supplantant rapidement
ceux des nœuds eux-mêmes.
Avec un simulateur, il est très facile de
configurer un réseau étendu. Il suffit
d’écrire un programme afin de
déployer et de répartir virtuellement
les nœuds sur l’espace virtuel dont on
a besoin, puis de modéliser l’accessi-
1 SIMULATION DE L’INTERNET DES OBJETS
Les systèmes et applications de l’Internet des objets comportent généralement une architecture
à trois niveaux. Le premier niveau est constitué d’un grand nombre de nœuds connectés les
uns aux autres (capteurs de température, d’électricité, caméras, interrupteurs, thermostats,
lampes…). Le deuxième niveau est formé par les passerelles ou concentrateurs qui gèrent la
connexion vers le monde extérieur et s’occupent de la sécurité. Au troisième niveau, le serveur
principal, souvent situé dans le cloud, est chargé du fonctionnement et du contrôle du système
de l’Internet des objets.
Passerelle
Serveur
Capteurs/
Actuateur
OS à empreinte
réduite
Matériel simulé
RADIO Interface
Simulation
du monde
extérieur
Réseau sans fil
Passerelle
Gestion sécurité,
configuration
OS temps réel
ou Linux
Matériel simulé
LAN
RADIO
Réseau maillé sans fil
Outils Simics
Système d’exploitation hôte
Matériel
30 / L’EMBARQUÉ / N°10 / 2015
Simulation
de conditions
du réseau
bilité sans fil entre les nœuds. Au lieu
de s’occuper manuellement de centaines d’objets physiques, on ne gère
qu’un seul script ou programme. Avec
une solution telle que Wind River
Simics, on peut simuler le matériel au
niveau de chaque nœud en incluant
les processeurs, la mémoire, les minuteurs, les LED, les systèmes d’émission
radio sans fil, etc. Les nœuds simulés
utilisent le système d’exploitation et
les applications finales de la cible,
exécutent les mêmes binaires que le
matériel physique. Les différents types
de nœuds sont simulés fidèlement et
tournent au sein de la même configuration de simulation.
Simuler pour tester
les logiciels embarqués
En simulant le système IdO tout
entier de cette façon, on peut alors
tester le logiciel sous tous ses
aspects : la pile de communication
sans fil et son comportement en cas
de problèmes au niveau du réseau,
le code logiciel du capteur et la
façon dont il réagit en fonction de
l’environnement, la gestion de
l’énergie entre modes veille et actif
sur les nœuds et la capacité de ces
modes à économiser de l’énergie,
l’émission de rapports depuis les
capteurs vers les passerelles et sur le
serveur. Au-delà, cette approche permet aussi d’analyser le logiciel gérant
les nœuds du réseau et mettant à jour
le logiciel sur les nœuds, y compris
les mises à jour de type OTA (Over
The Air), l’intégration et la connectivité sécurisée, la sécurité des passerelles et des nœuds, et enfin l’évolutivité du système de gestion des
données afin de faire face à la croissance du nombre de nœuds.
La simulation est aussi particulièrement bien adaptée au test du com-
A P P L I C A T I O N
Développement
2 MISE À L’ÉCHELLE LORS D’UNE SIMULATION
La simulation permet de tester un système à plusieurs niveaux d’échelle, des configurations
réduites jusqu’à des configurations très étendues avec, à chaque échelle de test, des
problématiques différentes au sein du système.
Passerelle
Serveur
configurations réseau, afin de tester
le logiciel de différentes façons pour
déployer ensuite le même nombre
de nœuds. On peut essayer et tester
diverses configurations en termes de
nœuds ou de passerelles, ainsi que
différentes topologies réseau. La
simulation permet dans le même
temps d’effectuer différents tests en
parallèle (figure 3).
La simulation pour accélérer
l’analyse de systèmes
complexes
Passerelle
Mais, en pratique, cette simulation
de centaines ou de milliers de nœuds
sur un seul ordinateur hôte peut-elle
SetUp 3
réellement fonctionner ? La réponse
est oui. Les nœuds de capteurs IdO
possèdent généralement un cycle
d’activité très court. Les capteurs
n’enregistrent pas des informations
portement de systèmes et de logiciels entre deux nœuds donnés, ni de
sur le monde qui les entoure en perlors d’une mise à l’échelle. Elle per- mettre en place des règles provoquant
manence, mais sortent régulièrement
met notamment de créer des sys- des pertes de paquets aléatoires à
d’un état de veille afin d’en relever
tèmes de n’importe quelle taille, des mesure que le signal baisse en puisdes échantillons et de les transmettre.
plus petits aux plus étendus. Ce sance. En effet, la configuration peut
Chaque prise d’échantillon peut
qui signifie que le comportement du être modifiée au cours d’un test afin
prendre une seconde ou juste
système peut être testé à plusieurs de contrôler la façon dont les nœuds
quelques millièmes de seconde. Puis
niveaux d’échelle, des configurations se comportent lors de changements
le système peut rester inactif pendant
réduites jusqu’à des configurations de conditions, comme lorsqu’un train
plusieurs minutes, voire plusieurs
très étendues. Souvent, chaque passe entre deux nœuds et interrompt
heures. Grâce à cette méthode, on
échelle de test révèlera des problé- la radiocommunication un court inspeut économiser de l’énergie et avoir
matiques différentes au sein du sys- tant. De plus, ces tests peuvent être
des nœuds déployés dans le monde
tème. Il ne s’agit pas juste de tester contrôlés et rejoués de manière fiable,
réel pour des périodes étendues,
les configurations les plus étendues, contrairement au monde réel où il est
limitant l’entretien et le remplacemais aussi de s’assurer également difficile d’imposer des conditions de
ment des batteries. De ce fait, le
que tout fonctionne de manière effi- radiocommunication.
système possède ainsi des cycles
cace au niveau des systèmes inter- Ces tests peuvent également être
étendus horizontalement. Il est alors
d’inactivité étendus. Ces derniers
médiaires (figure 2).
peuvent être exploités afin d’accéléDans l’optique d’une simulation, le facile de créer un grand nombre de
rer la simulation en uticomportement de l’envilisation une technique
ronnement au sein duquel
3 RÉALISER DES TESTS DE VARIANTES EN PARALLÈLE
AVEC UNE SIMULATION
d’« hypersimulation ».
évolue le système de l’InIci, plutôt que d’obserternet des objets est aussi La simulation permet de créer un grand nombre de configurations réseau, afin
pris en compte. En effet, de tester le logiciel de différentes façons, avec diverses configurations en termes ver une succession de
cycles d’inactivité, une
généralement, chaque de nœuds ou de passerelles et différentes topologies réseau.
solution de simulation
nœud ou chaque capteur
telle que Simics permet
s’adapte à une simulation
de passer directement
du monde qui l’entoure,
au prochain événement
de sorte qu’il puisse renfaisant sortir un nœud
voyer des données à la
du mode veille. Ce
passerelle et au serveur.
qui signifie qu’un sysUn nœud de l’IdO sans
tème inactif la plupart
environnement autour de
du temps peut être
lui n’est pas d’une grande
simulé bien plus rapiutilité. Les tests de système
Outils Simics
dement qu’en temps
impliqueront donc de
Système d’exploitation
Outils Simics
hôte
réel, et cette propriété
varier les conditions de
Outils Simics
Système d’exploitation
est exploitée dans le
réseau de communication
Serveur
hôte
Système d’exploitation
cadre de simulations
radio simulées. Dans un
hôte
Serveur
d’applications de l’Insimulateur, pas besoin
Serveur
ternet des objets à
d’imposer des puissances
grande échelle. n
de signal radio précises
Scé
na
rio
2
2
Scé
na
rio
Scé
na
rio
1
SetUp 2
L’EMBARQUÉ / N°10 / 2015 /
31
Téléchargement