30 / L’EMBARQUÉ / N°10 / 2015
A P P L I C A T I O N
Développement
Bâtir lInternet des objets avec
de la simulation de systèmes
velopper des applications pour lInternet des objets (IdO) implique de relever des défis
importants. Il nest pas simple de regrouper des centaines de nœuds au sein d’un
laboratoire pour les tester, ni d’alimenter lensemble 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 architec-
ture à trois niveaux : un grand nombre
de petits nœuds sont connectés les
uns aux autres ainsi qu’à des passe-
relles à l’aide de réseaux sans fil mail-
lé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 ther-
mostats, de lampes et de verrous de
portes. Les passerelles ou les concen-
trateurs gèrent la connexion vers le
monde extérieur et soccupent de la
sécurité. Le serveur principal, sou-
vent situé dans le cloud, est char
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 main-
d’œ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-
bilité sans fil entre les nœuds. Au lieu
de s’occuper manuellement de cen-
taines 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 minu-
teurs, 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 configu-
ration 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 per-
met 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 connecti-
vité sécurisée, la sécurité des passe-
relles et des nœuds, et enfin l’évolu-
tivité du système de gestion des
données afin de faire face à la crois-
sance du nombre de nœuds.
La simulation est aussi particulière-
ment bien adaptée au test du com-
Jakob Engblom,
responsable
des produits
Simics, Wind
River.
AUTEUR
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.
Serveur
Gestion sécurité,
configuration
OS temps réel
ou Linux
Matériel simulé
LAN
Passerelle
Passerelle
RADIO
RADIO Interface
Réseau maillé sans fil
Outils Simics
Système d’exploitation hôte
Matériel
Réseau sans fil
Capteurs/
Actuateur
OS à empreinte
réduite
Matériel simulé Simulation
du monde
extérieur
Simulation
de conditions
du réseau
L’EMBARQUÉ / N°10 / 2015 / 31
Développement
A P P L I C A T I O N
portement de systèmes et de logiciels
lors d’une mise à l’échelle. Elle per-
met notamment de créer des sys-
tèmes de n’importe quelle taille, des
plus petits aux plus étendus. Ce
qui signifie que le comportement du
système peut être testé à plusieurs
niveaux d’échelle, des configurations
réduites jusqu’à des configurations
très étendues. Souvent, chaque
échelle de test révèlera des problé-
matiques différentes au sein du sys-
tème. Il ne s’agit pas juste de tester
les configurations les plus étendues,
mais aussi de s’assurer également
que tout fonctionne de manière effi-
cace au niveau des systèmes inter-
médiaires (figure 2).
Dans l’optique d’une simulation, le
comportement de l’envi-
ronnement au sein duquel
évolue le système de l’In-
ternet des objets est aussi
pris en compte. En effet,
généralement, chaque
nœud ou chaque capteur
s’adapte à une simulation
du monde qui l’entoure,
de sorte qu’il puisse ren-
voyer des données à la
passerelle et au serveur.
Un nœud de l’IdO sans
environnement autour de
lui n’est pas d’une grande
utilité. Les tests de système
impliqueront donc de
varier les conditions de
réseau de communication
radio simulées. Dans un
simulateur, pas besoin
d’imposer des puissances
de signal radio précises
entre deux nœuds donnés, ni de
mettre en place des règles provoquant
des pertes de paquets aléatoires à
mesure que le signal baisse en puis-
sance. En effet, la configuration peut
être modifiée au cours d’un test afin
de contrôler la façon dont les nœuds
se comportent lors de changements
de conditions, comme lorsqu’un train
passe entre deux nœuds et interrompt
la radiocommunication un court ins-
tant. De plus, ces tests peuvent être
contrôlés et rejoués de manière fiable,
contrairement au monde réel où il est
difficile d’imposer des conditions de
radiocommunication.
Ces tests peuvent également être
étendus horizontalement. Il est alors
facile de créer un grand nombre de
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
Mais, en pratique, cette simulation
de centaines ou de milliers de nœuds
sur un seul ordinateur hôte peut-elle
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
sur le monde qui les entoure en per-
manence, mais sortent régulièrement
d’un état de veille afin d’en relever
des échantillons et de les transmettre.
Chaque prise d’échantillon peut
prendre une seconde ou juste
quelques millièmes de seconde. Puis
le système peut rester inactif pendant
plusieurs minutes, voire plusieurs
heures. Grâce à cette méthode, on
peut économiser de l’énergie et avoir
des nœuds déployés dans le monde
réel pour des périodes étendues,
limitant l’entretien et le remplace-
ment des batteries. De ce fait, le
système possède ainsi des cycles
d’inactivité étendus. Ces derniers
peuvent être exploités afin d’accélé-
rer la simulation en uti-
lisation une technique
d’« hypersimulation ».
Ici, plutôt que d’obser-
ver une succession de
cycles d’inactivité, une
solution de simulation
telle que Simics permet
de passer directement
au prochain événement
faisant sortir un nœud
du mode veille. Ce
qui signifie qu’un sys-
tème inactif la plupart
du temps peut être
simulé bien plus rapi-
dement qu’en temps
réel, et cette propriété
est exploitée dans le
cadre de simulations
d’applications de l’In-
ternet des objets à
grande échelle. n
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
Passerelle
Serveur
SetUp 3
SetUp 2
3 ALISER DES TESTS DE VARIANTES EN PARALLÈLE
AVEC UNE SIMULATION
La simulation permet de créer un grand nombre de configurations réseau, afin
de tester le logiciel de différentes façons, avec diverses configurations en termes
de nœuds ou de passerelles et différentes topologies réseau.
Outils Simics
Système d’exploitation
hôte
Serveur
Système d’exploitation
hôte
Serveur
Scénario 2
Scénario 2
Outils Simics
Système d’exploitation
hôte
Serveur
Scénario 1
Outils Simics
1 / 2 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !