Par Matt Hatton, associé fondateur, Transforma Insights.
Transforma Insights a publié en juillet 2023 un document de synthèse intitulé ‘Connected-by-Design : Optimising Device-to-Cloud Connectivity' (Optimiser la connectivité entre les appareils et le cloud). Le rapport examine les façons dont le processus de développement de solutions IoT nécessite une nouvelle approche selon laquelle les considérations relatives à la connectivité imprègnent l'ensemble du processus de conception.
Dans cet article, nous examinons un aspect du sujet : la complexité liée à l'élaboration de solutions IoT et la raison pour laquelle la connectivité est le ciment de l'ensemble.
Si l'on pense à l'intégralité d'un cas d'utilisation de l'Internet des objets, la ” pile complète ” qui pourrait devoir être prise en compte par un développeur, elle est complexe et comprend huit couches principales : capteurs et actionneurs, systèmes d'exploitation et conteneurs, calcul et stockage, applications et données, intégration des activités et des processus, sécurité, gestion et connectivité. Chacune d'entre elles doit faire l'objet d'un examen attentif.
Appareils : le calcul à la périphérie
Les capteurs et les actionneurs sont l'endroit où le “caoutchouc touche la route” en ce qui concerne l'activité première de l'IdO : agir en tant qu'interface entre les mondes physique et numérique. Les capteurs font presque inévitablement partie d'un appareil, qui intègre tous les divers autres éléments matériels, notamment l'alimentation, le processeur, la mémoire et le module de connectivité. Les appareils comprennent également un élément de logiciel/informatique. L'un des aspects est le système d'exploitation (OS) embarqué, pour lequel il existe plusieurs approches. Dans certains cas, les appareils s'appuieront sur un système d'exploitation complet tel que Linux ou Windows pour prendre en charge un appareil IoT, bien que cette approche soit intrinsèquement inefficace car elle prend en charge des fonctionnalités qui ne seront pas nécessaires. Comme alternative, il existe un ensemble de systèmes d'exploitation embarqués contraints pour l'IoT, notamment FreeRTOS d'Amazon, RIOT, TinyOS et Zephyr. La disponibilité de tels systèmes d'exploitation avec des exigences minimales en matière de traitement et de mémoire favorise la réduction des prix du matériel pour les composants de mémoire et de traitement.
L'autre aspect de l'appareil IoT est le ” edge compute “. Celui-ci doit être considéré dans le contexte de l'architecture informatique/stockage plus large du cas d'utilisation de l'IdO. La prévalence croissante de l'informatique en nuage, y compris dans le contexte du déploiement de l'IdO, a été bien documentée. Une grande partie des applications IoT sont hébergées dans le cloud et tirent parti de capacités de plus en plus sophistiquées et flexibles, notamment des ressources de calcul spécialisées et puissantes, telles que GPU et FPGA pour gérer le transcodage de médias plus riches, l'analytique et l'IA/ML, ainsi qu'une architecture distribuée intégrant des approches telles que les conteneurs, Kubernetes et l'informatique sans serveur. Parallèlement à cela, nous constatons l'importance croissante de l'edge computing. Pour les applications IoT, qui sont par nature décentralisées, l'idée de placer une intelligence croissante sur l'appareil ou plus proche d'une manière ou d'une autre de celui-ci (par exemple à la périphérie d'un campus ou d'un réseau) est logique. Cela est intrinsèquement plus efficace, réduit la charge sur les ressources du réseau et le temps de réponse.
Un rôle de plus en plus critique consistera à gérer la relation entre toutes ces ressources de calcul complexes, spécialisées, distribuées et puissantes, de manière à optimiser l'application. La capacité à orchestrer l'endroit où le stockage et le traitement des données de l'IdO se produisent, ainsi qu'à fournir efficacement des données entre l'appareil, la périphérie et le nuage, est une exigence évidente pour l'IdO du futur.
Données d'application et sécurité/gestion de bout en bout.
L'élément suivant de la pile IoT est l'application/les données, qui sera très spécifique au cas d'utilisation dans lequel le déploiement a lieu. Ce qui est essentiel, c'est que les choix faits en matière de logique applicative auront des répercussions importantes sur d'autres aspects du déploiement, et vice versa. Les déploiements dans des environnements très contraignants (par exemple, latence élevée, faible bande passante, couverture médiocre ou alimentation limitée) devront être architecturés d'une manière adaptée à ces contraintes, alors que ceux qui sont déployés sans de telles contraintes fonctionneraient très différemment. En plus des données de l'application, il est également nécessaire de s'intégrer aux systèmes de gestion de la relation client (CRM) et de gestion intégrée (ERP).
Il existe deux autres “couches” qui, en réalité, s'appliquent à l'ensemble de la pile. La sécurité ne doit pas être considérée comme une couche à part entière, mais comme imprégnant toutes les autres couches. Par exemple, dans le durcissement de l'appareil pour empêcher la falsification, les fonctions de la couche réseau (y compris l'authentification SIM, les APN privés et les diagnostics et dépannages réseau), la sécurité de la couche transport (y compris PKI, TLS et IPSec VPN), le stockage dans le nuage (par exemple, le stockage des données et la sécurisation des interfaces), et la couche application, qui est généralement la moins sûre, car elle est la plus exposée aux utilisateurs finaux. Il existe également une forte exigence de sécurité de bout en bout, intégrant toutes les couches précédemment mentionnées, sur la base des principes de “sécurité par conception”. L'autre élément de la pile complète est la gestion. L'entreprise doit disposer d'une transparence totale et d'un contrôle de gestion sur tous les aspects du déploiement de l'IdO, en intégrant la gestion des appareils, la gestion de la connectivité et la gestion des données.
Connectivité : la couche la plus critique
La seule couche qui n'a pas encore été abordée est la connectivité (ou mise en réseau). Celle-ci fournit le mécanisme de livraison des données entre les autres éléments de la pile. En tant que telle, c'est la considération la plus critique lors de l'architecture d'un déploiement IoT. Il s'agit généralement de l'élément sur lequel le développeur a le moins de contrôle, en termes d'options disponibles, et qui doit donc occuper une place prépondérante dans la réflexion du développeur. En raison de la nature intrinsèquement distribuée de l'IdO, la priorité numéro un pour tout développement complet de l'IdO est de s'assurer que la “colle” de la connectivité est faite correctement. Alors que les contraintes de chaque cas d'utilisation en matière d'application, de données, de système d'exploitation, de calcul, de stockage et d'alimentation dévient de manière significative, la variabilité la plus spectaculaire se trouve peut-être dans leur connectivité – la chose même qui classifie l'appareil comme un appareil de l'”Internet” des objets.
La nécessité d'être “connecté dès la conception
En raison de la criticité de la connectivité en tant qu'élément de la pile complète de l'IdO, Transforma Insights estime qu'il est essentiel que les considérations relatives à la connectivité imprègnent l'ensemble du processus de développement. De la même manière que les principes de ” sécurité dès la conception ” exigent que les développeurs prennent en compte la sécurité tout au long du processus de développement, plutôt que de la superposer après coup, les considérations relatives à la connectivité doivent elles aussi être prises en compte. Les choix relatifs à la technologie, aux protocoles et à l'architecture de la connectivité auront d'énormes répercussions sur les autres éléments de la pile, ce qui signifie que la connectivité ne peut pas être simplement boulonnée à la fin, comme une réflexion après coup. Les développeurs IoT doivent également adopter une approche ” connectée par conception “, selon laquelle les décisions relatives à la technologie de connectivité imprègnent l'ensemble du processus de développement.