• Aucun résultat trouvé

Chapitre 2 – Internet des objets : Généralités

2.3. Définitions et architectures de l’Internet des objets

2.3.2. Architectures de l’IoT

Architectures des organismes de standardisation

Différentes architectures pour l’Internet des objets ont été présentées par des organismes de normalisation. Dans ce qui suit, nous décrivons plusieurs exemples d’architectures proposées pour l’IoT. Ainsi, l’UIT-T a proposé un modèle de référence pour l’Internet des objets basé sur plusieurs couches [12]. Ce modèle de référence (voir Figure 2.1) spécifie 4 couches horizontales (Application, Support, Réseau et Dispositifs) et 2 couches verticales (Gestion et Sécurité).

Figure 2.1 : Architecture de l’Internet des objets de l’UIT-T [12]

La couche Application (Application Layer) comprend les applications et les services IoT. Ensuite, la couche Support (Service Support et Application Support Layer) définit les capacités de support génériques communes à toutes les applications comme le traitement et le stockage des données. Elle comprend aussi les capacités de support spécifiques qui répondent aux besoins d’une

2.3. Définitions et architectures de l’Internet des objets

12

application particulière. La couche Réseau (Network Layer) offre deux services. D’une part, les capacités réseaux qui assurent le contrôle de la connectivité, la gestion de la mobilité et la comptabilité au niveau de cette couche. D’autre part, les capacités de transport qui permettent l’acheminement des données provenant des applications ou encore des informations de contrôle et de gestion de l’environnement. La couche Dispositifs (Device Layer) spécifie les capacités propres aux objets et aux dispositifs connectés ainsi que les capacités des passerelles. Quant aux deux couches verticales, elles définissent les capacités génériques de gestion (gestion des objets, du réseau, du trafic et de la congestion) et de sécurité génériques à toutes les couches (autorisation, authentification, intégrité et protection de la vie privée). De plus, ces deux couches verticales présentent des capacités spécifiques qui dépendent du type d’application IoT considérée telles que les exigences de sécurité de paiement mobile.

De plus, le consortium IIC propose à travers le rapport « Industrial Internet Reference Architecture » [33] une architecture système applicable pour l’Internet des objets. Cette architecture trois tiers est basée sur 3 couches verticales ou encore trois niveaux (voir Figure 2.2.). La couche de Bord (Edge Tier) correspond à l’ensemble des nœuds qui collectent les données à travers des réseaux de proximité. Elle permet d’implémenter toutes les fonctions de contrôle. Ensuite, la couche Plateforme (Platform Tier) reçoit, traite et transmet les commandes de contrôle vers la couche de Bord. Elle permet aussi le traitement, l’analyse et l’exécution des opérations sur les données récoltées des objets avant de les transmettre dans l’autre sens vers la couche Entreprise (Entreprise Tier). Ainsi, la couche Entreprise prend les décisions et assure le rôle d’interface pour les utilisateurs finaux. Cette dernière comprend alors les applications qui permettent de générer les commandes de contrôle à envoyer à la couche Plateforme. Les différentes couches de cette architecture sont interconnectées via des réseaux d’accès et des réseaux de services.

Figure 2.2 : Architecture de l’Internet des Objets de l’IIC [33]

L’IEEE, à travers le Webinaire « Integrating the IoT and Cultural Heritage in the Smart City», a proposé une architecture (voir Figure 2.3) pour l’IoT basée sur 4 couches (couche Interface, couche

Chapitre 2 - Internet des objets : Généralités

13 Logique de service, couche Données et couche Ressources) [34]. Chaque couche comprend des entités et des éléments spécifiques permettant de fournir diverses fonctionnalités. Ainsi, la couche Interface (Interface Layer) comprend tous types d’interfaces permettant l’interaction entre les utilisateurs et les applications IoT. La couche Logique de service (Service Logic Layer) permet de définir le contexte de l’application à travers l’entité de contexte et l’entité logique de l’application. Elle permet aussi de fournir des descriptifs concernant les ressources et les services. La couche de Données (Data Layer) comprend les données brutes récoltées de la couche directement inférieure (i.e., la couche Ressource) et des entités permettant de restructurer ces données et de les agréger pour les remonter aux couches supérieures. Finalement, la couche Ressources (Ressource Layer) comprend tous les objets connectés ainsi que différentes capacités (i.e., calcul et stockage au niveau de cette couche). Les objets permettent de capter les informations, d’appliquer les requêtes envoyées par l’application, de faire du stockage et du traitement près de la source pour les données récoltées. La

communication inter-couches dans cette architecture se fait à travers des API (Application Program

Interface) bien spécifiques.

……… I/F Social I/F Terminal Spec I/F Virtual Reality I/F Aug Reality I/F Web Based I/F Context Engine Dynamic Service Creation Capabilities Application Logic Session and Resources Logic

User Centric Services GIS 3D Services Ontology Services Semantic Services

Knowledge Engine

User Generated Meta Formatting …….. (Real Time) Indexing

Personal

Profiles Raw Data Raw Data Raw Data Raw Data Raw Data

……… Comm Resources Terminals Storage Processing Sensor/Actuators / Smart Objects

Simple Data APIs Aggregated Data APIs Service Layer APIs

Data Layer APIs

Resource Layer APIs

In te rf a ce La ye r Se rvi ce L o g ic La ye r D a ta L a ye r R es o u rce La ye r

Figure 2.3 : Architecture IEEE [30] Autres architectures de l’IoT

Différents travaux de recherches internationaux et européens mais aussi des industriels du domaine des technologies de l’information ont proposé d’autres architectures pour l’environnement IoT. Dans ce qui suit, nous présentons certaines de ces architectures avec des caractéristiques différentes.

2.3. Définitions et architectures de l’Internet des objets

14

Le projet européen IoT-A (IoT-Architecture), financé par FP7-ICT de septembre 2010 à novembre 2013, a proposé un modèle de référence pour l’architecture IoT nommé « Architectural Reference Model – ARM » [35]. Ce modèle (voir Figure 2.4) est basé sur 5 couches horizontales (i.e., Application, Exécution de Processus et Orchestration de Service, etc.) et 2 couches transversales (i.e., Gestion et Sécurité) pour répondre aux besoins de l’environnement IoT. Chacune des couches représente un groupe de fonctionnalités formé de composants fonctionnels afin d’offrir les ressources, de maintenir et d’organiser les informations reçus et offrir les services.

Figure 2.4 : Modèle de référence architectural d’IoT-A [35]

La couche Application (Applications layer) de ce modèle décrit les fonctionnalités assurées par les applications déployées sur une instance de cette architecture. Ensuite, la couche Exécution de Processus et Orchestration de Service (Process Execution and Service Orchestration layer) permet d’instancier les services en déployant les modèles de processus. Les services seront décomposés en processus et les processus seront déployés au niveau de cette couche. L’exécution des processus demandés par l’application assure une amélioration de la qualité de l’information. La couche Entités Virtuelles et Informations (Virtual Entity and Information layer) maintient et organise les liaisons entre les entités virtuelles, créées à partir des ressources disponibles, les ressources et les services. La couche Services et Ressources IoT (IoT Services and Ressources) décrit les services et fournit un lien aux ressources exposées et aux fonctionnalités requises par les services IoT pour le traitement des

Chapitre 2 - Internet des objets : Généralités

15 données. Cette couche permet aussi de récupérer les descriptions des ressources et des services. Enfin la dernière couche horizontale, à savoir la couche Connectivité et Communication des Dispositifs (Device Connectivity and Communications) assure un ensemble de méthodes et de primitives pour la connectivité des objets. Au niveau de cette couche, différentes technologies de communication

inter-objets sont disponibles comme RFID, QR-Code, ZigBee, et les technologies WSN (Wireless

Sensor Network) d’une façon générale.

Les 2 couches transversales, qui sont utilisées dans l’architecture du projet IoT-A, communiquent avec les 5 couches horizontales. Ainsi, la première couche transversale, à savoir la couche Gestion, permet de gérer les ressources, les objets et la qualité de service. Quant à la couche Sécurité, elle permet d’empêcher les applications non autorisées d’obtenir un accès aux ressources et elle permet aussi d’assurer la protection de la vie privée des utilisateurs en ce qui concerne les données échangées. La communication inter-couches (verticales et transversales) dans cette architecture se fait à travers des interfaces bien spécifiques.

En plus des projets de recherche, les industriels du domaine ont aussi proposé des architectures pour l’environnement IoT. A ce titre, CISCO, industriel connu dans le monde des réseaux et des systèmes informatiques, adopte la nomenclature « Internet of Everything (IoE) » à la place de « Internet of Things » et propose une architecture pour l’IoE représentée par la Figure 2.5 [36].

2.3. Définitions et architectures de l’Internet des objets

16

Cette architecture est basée sur 4 couches horizontales. Premièrement, la couche Systèmes embarqués et Capteurs (Embedded Systems and Sensors layer) permet de récolter les données et de capter les événements qui se produisent dans l’environnement IoE. Ensuite, la couche Multi-Services (Multi-Service Edge layer) permet de gérer le réseau interconnectant les objets aux centres de calcul. Cette couche permet aussi d’assurer des capacités de type « Fog computing » pour répondre exigences des applications sensibles au délai en effectuant le traitement des données près des objets. Les termes Fog Computing ou Edge Computing désignent l'extension du cloud au bord du réseau afin de faciliter le fonctionnement des services de calcul, de stockage et de mise en réseau entre les périphériques et les centres de calcul cloud. La troisième couche de l’architecture proposée par CISCO, à savoir la couche Cœur (Core layer) spécifie différentes fonctionnalités comme l’analyse des performances des réseaux, la détection d’intrusion, le monitoring de l’environnement et la surveillance. Finalement, la couche Data Center Cloud (Data Center Cloud layer) permet de centraliser l’intelligence et d’assurer les capacités de calcul requises pour les applications IoE. A travers cette architecture, CISCO présente aussi les différentes technologies qui peuvent être utilisées au niveau de chaque couche.

Intel, un autre acteur dans le domaine des technologies de l’information, a proposé une architecture pour l’IoT représentée par Figure 2.6 [37]. Cette architecture repose sur 3 couches : Objets (Things), Réseau (Network) et Cloud. La couche Objets consiste en une collection d’objets connectés directement à Internet ou non. Cette couche inclut aussi des capacités de sécurité, de gestion et des API. La couche Réseau comprend des passerelles qui collectent les données des objets et assurent une agrégation et un filtrage des données. Les passerelles gèrent aussi les différents objets en assurant leurs configurations et leur surveillance. La connexion des passerelles vers le cloud est assurée par des fournisseurs de services réseaux pour acheminer le trafic jusqu’à l’infrastructure cloud du fournisseur de service IoT ou bien vers une infrastructure cloud d’une tierce partie. La couche Cloud permet le stockage de données, l’application de la sécurité au niveau des serveurs de stockage et de traitement, la gestion et les capacités de calcul, etc.

Chapitre 2 - Internet des objets : Généralités

17