Vous êtes sur la page 1sur 39

Stage de troisième année du cycle d’ingénieur

Rapport de Stage de fin d’étude


Capgemini
GI3 VISUAL
Tuteur école: Stefan Bornhofen
Tuteur entreprise: Johann Anneville-Constance

Tanguy Lépine

14 mai 2023

1
Table des matières

Remerciement 4

Introduction 5

1 Présentation de l’entreprise 6
1.1 Capgemini . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2 Capgemini Engineering . . . . . . . . . . . . . . . . . . . . 7
1.3 L’équipe Andy 3D et cadre de stage . . . . . . . . . . . . . 8

2 Mon sujet de stage 9


2.1 Le produit Andy 3D . . . . . . . . . . . . . . . . . . . . . 9
2.1.1 Fonctionnement d’Andy 3D . . . . . . . . . . . . . 10
2.2 Problématique . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.3 Travail à accomplir . . . . . . . . . . . . . . . . . . . . . . 12

3 Première Mission : État de l’art du Edge Computing 13


3.1 Définition de certains termes importants . . . . . . . . . . 13
3.1.1 IOT et IIOT . . . . . . . . . . . . . . . . . . . . . . 13
3.1.2 Cloud Computing . . . . . . . . . . . . . . . . . . . 14
3.1.3 Data Center . . . . . . . . . . . . . . . . . . . . . . 14
3.2 Définition du Edge Computing . . . . . . . . . . . . . . . . 15
3.3 Comparaison du Edge Computing au Cloud Computing . . 16
3.3.1 Quels sont les risques et les avantages du Edge et du
Cloud Computing ? . . . . . . . . . . . . . . . . . . 17
3.4 Cas d’usage du Edge Computing . . . . . . . . . . . . . . 19
3.4.1 IoT Gateways . . . . . . . . . . . . . . . . . . . . . 19
3.4.2 Les fonctions réseaux . . . . . . . . . . . . . . . . . 20
3.4.3 Le Cloud Gaming . . . . . . . . . . . . . . . . . . . 21
3.4.4 Les bureaux virtuels . . . . . . . . . . . . . . . . . 21
3.4.5 Les vidéo-conférences . . . . . . . . . . . . . . . . . 22
3.4.6 Les véhicules autonomes . . . . . . . . . . . . . . . 22
3.4.7 La réalité augmentée . . . . . . . . . . . . . . . . . 22
3.5 Edge-AI et Fog Computing . . . . . . . . . . . . . . . . . . 24

2
3.5.1 Edge-AI . . . . . . . . . . . . . . . . . . . . . . . . 24
3.5.2 Fog Computing . . . . . . . . . . . . . . . . . . . . 25
3.6 Conclusion de l’état de l’art . . . . . . . . . . . . . . . . . 27

4 Ma réalisation 28
4.1 Mission : permettre aux caméras de fonctionner sur le modèle
du Edge Computing . . . . . . . . . . . . . . . . . . . . . 28
4.1.1 Fonctionnement des caméras IP sous Andy 3D . . . 28
4.1.2 Configuration du PC utilisateur et du serveur . . . 30
4.1.3 Création du serveur Node en local . . . . . . . . . . 31
4.1.4 L’invitation de multiple caméras différentes . . . . . 33

5 Mes résultats 34
5.1 Résultats côté utilisateur . . . . . . . . . . . . . . . . . . . 34
5.2 Résultats côté serveur . . . . . . . . . . . . . . . . . . . . 35

6 Ce qu’il me reste à faire 37

Bilan 38

Annexes 39
Bibliographie . . . . . . . . . . . . . . . . . . . . . . . . . 39

3
Remerciement
Mon accueil au sein de la société Capgemini lors de mon stage fut
convivial, cordial, et facilité par plusieurs salariés qui m’ont consacré de
leurs temps. Ces personnes m’ont aidé à m’intégrer, à découvrir le monde
professionnel dans les meilleures conditions possibles et à atteindre l’ob-
jectif de mes différentes missions. Je tiens à leur adresser mes chaleureux
remerciements.

Je tiens à exprimer ma gratitude à Johann Anneville-Constance et Jean


Rouquet, mes tuteurs de stage, ainsi que tous les membres de l’équipe Andy
3D m’ayant aidé au cours de ce stage. Je tiens également à remercier Nicolas
Moreau pour m’avoir accueilli dans son équipe dans laquelle j’ai pu faire
toutes ces rencontres. Je remercie bien sur mon professeur, M. Bornhoffen
pour son suivi attentif à chaque étape de mon stage.

Pour terminer, je remercie également mon école, CY TECH, pour


m’avoir permis de constater l’utilité de cet apprentissage qui justifie le
volume d’heures prévu lors de la formation.

Je remercie également toutes les personnes qui ont contribué de près ou


de loin à la réalisation de mon stage.

4
Introduction
J’ai effectué cette année un stage de 24 semaines dans le cadre de ma
dernière année du cycle ingénieur.

J’ai débuté mon stage le 5 juillet 2021 et ai été à plusieurs postes diffé-
rents. J’ai pu participer à l’évolution du logiciel Andy3D et découvrir une
nouvelle organisation de travail.

Ce stage aura été pour moi l’occasion de mettre en pratique les connais-
sances acquises au cours de ma dernière année du cycle ingénieur.
J’ai eu la possibilité de réaliser ce stage au sein de l’entreprise Capgemini
Engineering dans l’équipe Andy3D.

Ce rapport est composé de trois parties distinctes : Dans un premier


temps, je présenterai l’entreprise qui m’aura accueilli, Capgemini. Dans un
second temps, je décrirai et expliquerai les différentes missions auxquelles
j’aurais eu l’occasion de participer. Je terminerai enfin par un bilan de ce
stage.

5
1 Présentation de l’entreprise
1.1 Capgemini
Capgemini est une entreprise de services du numérique française créée
par Serge Kampf en 1967 à Grenoble, sous le nom de Sogeti. Il s’agit du
cabinet de conseil qui a le plus gros chiffre d’affaires du pays et elle figure
parmi les dix plus grosses du secteur mondialement.

Capgemini est un leader mondial, responsable et multiculturel, regrou-


pant 290 000 personnes dans près de 50 pays. Partenaire stratégique des
entreprises pour la transformation de leurs activités en tirant profit de
toute la puissance de la technologie, le Groupe est guidé au quotidien par
sa raison d’être : libérer les énergies humaines par la technologie pour un
avenir inclusif et durable. Fort de plus de 50 ans d’expérience et d’une
grande expertise des différents secteurs d’activité, Capgemini est reconnu
par ses clients pour répondre à l’ensemble de leurs besoins, de la stratégie
et du design jusqu’au management des opérations, en tirant parti des inno-
vations dans les domaines en perpétuelle évolution du Cloud, de la data,
de l’Intelligence Artificielle, de la connectivité, des logiciels, de l’ingénierie
digitale et des plateformes. Le Groupe a réalisé un chiffre d’affaires de 16
milliards d’euros en 2020.

6
1.2 Capgemini Engineering
Capgemini Engineering est la marque du groupe Capgemini réunissant
les services d’ingénierie et de RD de Capgemini Engineering, leader mondial
du secteur dont Capgemini a finalisé l’acquisition en 2020, et l’expertise de
Capgemini dans le domaine du digital manufacturing. Grâce à une connais-
sance sectorielle approfondie et à la maîtrise des technologies digitales et
logicielles de pointe, Capgemini Engineering accompagne la convergence des
mondes physique et numérique. Conjuguée avec l’ensemble des capacités du
Groupe, elle aide les entreprises à accélérer leur transformation vers l’Intel-
ligent Industry. Capgemini Engineering compte plus de 52 000 ingénieurs et
scientifiques dans plus de 30 pays, dans des secteurs tels que l’aéronautique,
l’automobile, le ferroviaire, les communications, l’énergie, les sciences de
la vie, les semi-conducteurs, les logiciels et l’Internet, l’aérospatial et la
défense, et les biens de consommation.

7
1.3 L’équipe Andy 3D et cadre de stage
J’ai effectué mon stage au sein de l’équipe Andy 3D sur le site de Cap-
gemini Aeropark. J’ai travaillé 3 jours en distanciel et 2 jours en présentiel.

Dans cette équipe, nous suivions la méthode Agile et avions un DSTUM


tous les matins à 9h15 ou 9h30m. Cette réunion a pour but de définir pour
chaque acteur qu’est ce qui a été fait la veille, quels sont les éventuels points
de blocage et sur quoi nous allons travailler aujourd’hui. De plus, une partie
de l’équipe travaillant en Inde, j’ai pu pratiquer mon anglais pendant ces
DSTUM.

8
2 Mon sujet de stage
2.1 Le produit Andy 3D

Andy 3D est une solution immersive tout-en-un, basée sur de multiples


flux vidéo et utilisateurs réunis sur une même conférence ou se partage des
annotations et des capacités de contrôle à distance.

Capgemini offre cette solution intuitive et conviviale, dédiée à une


coopération harmonieuse entre les techniciens terrain, où qu’ils soient, et
des experts à distance, des inspecteurs, des clients ou des fournisseurs pour
une inspection rapide de l’équipement en suivant le même procédé qui s’ils
étaient directement sur site.

9
2.1.1 Fonctionnement d’Andy 3D
Avant de pouvoir rentrer dans une conférence, il faut d’abord se connecter
pour accéder au lobby.

Figure 1 – Connexion

Une fois arrivé sur le lobby, pour appeler quelqu’un, il faut cliquer sur
le bouton d’appel.

Figure 2 – Lobby

10
Une petite pop-up apparaît pour signifier que l’appel est bien passé
avant de nous rediriger vers l’écran d’appel.

Figure 3 – pop-up d’appel

A partir de cet écran, nous avons accès à beaucoup d’options comme


le partage d’écran, l’importation et l’utilisation d’objet 3D, la mise en
pause de l’écran lorsqu’il y a une caméra et les annotations sur l’écran, la
capture d’écran et, pour finir, ce qui nous intéresse le plus pour ce stage :
la connexions à des caméras IP.

Figure 4 – Écran d’appel

11
2.2 Problématique
En effet, malheureusement, sur Andy3D, le partage de caméras IP est
trop coûteux en ressources sur un PC lambda, on ne peut lancer qu’une
voire deux caméras sur l’ordinateur.

Schneider, un client, souhaitait utiliser davantage les caméras IP avec


notre solution, il voudrait en lancer entre 4 et 6. Il n’a malheureusement
pas un ordinateur assez puissant pour lancer autant de caméra avec Andy3D.

Comment faire alors pour que le client puisse utiliser autant de caméras
qu’il le souhaite sans avoir besoin d’un PC plus puissant ? En faisant un
peu de recherche, il a été découvert que l’Edge Computing pourrait être une
solution envisageable pour le faire mais comme il s’agit d’une technologie
assez récente, il faudrait l’étudier davantage afin de voir s’il s’agit de LA
solution.

2.3 Travail à accomplir


Pour ce faire, j’ai d’abord eu à faire un état de l’art du Edge Computing
afin de voir s’il s’agissait de la bonne solution. J’ai ensuite du essayer de
faire fonctionner les caméras selon le modèle du Edge Computing puis j’ai
obtenu des résultats me permettant de confirmer qu’il s’agissait bien de la
bonne solution.

12
3 Première Mission : État de l’art du Edge Com-
puting
3.1 Définition de certains termes importants
3.1.1 IOT et IIOT

Figure 5 – Internet of Things


D’un point de vue conceptuel, l’Internet des objets ou IOT (Internet
Of Things) caractérise des objets physiques connectés ayant leur propre
identité numérique et capables de communiquer les uns avec les autres. Ce
réseau crée en quelque sorte une passerelle entre le monde physique et le
monde virtuel.

D’un point de vue technique, l’IoT consiste en l’identification numé-


rique directe et normalisée (adresse IP, protocoles smtp, http...) d’un objet
physique grâce à un système de communication sans fil qui peut être une
puce RFID, Bluetooth ou Wi-Fi.

13
L’ IIOT signifie Industrial Internet of Things et permet de caractériser
toutes les applications industriels concernant les IOT.

3.1.2 Cloud Computing


Le Cloud Computing correspond à l’accès à des services informatiques
(serveurs, stockage, mise en réseau, logiciels) via Internet (le « Cloud » ou
« nuage ») à partir d’un fournisseur.

3.1.3 Data Center


Un data center ou centre de données est un site physique regroupant
des installations informatiques (serveurs, routeurs, commutateurs, disques
durs...) chargées de stocker et de distribuer des données (data en anglais) à
travers un réseau interne ou via un accès Internet.

14
3.2 Définition du Edge Computing
L’Edge Computing est une architecture informatique distribuée ouverte
qui présente une puissance de traitement décentralisée permettant le dé-
ploiement des technologies de l’informatique mobile et de l’internet des
objets (IoT). Au lieu d’être transmises à un datacenter, les données sont
traitées par le device lui-même ou par un ordinateur ou serveur local.

L’Edge Computing permet l’accélération des flux de données, voire le


traitement de données en temps réel sans latence. Il permet aux applications
et aux devices intelligents de répondre aux données de manière quasi
instantanée lors de leur création, éliminant ainsi tout décalage. Il s’agit d’un
atout essentiel pour des technologies telles que la voiture sans chauffeur, mais
aussi d’une source d’avantages tout aussi considérables pour les entreprises.
L’Edge Computing permet un traitement efficace des données dans la
mesure où il permet de traiter de grandes quantités de données près de
la source, réduisant ainsi l’utilisation de bande passante internet. Cela
supprime les coûts et garantit que les applications peuvent être utilisées
efficacement dans des endroits isolés. De plus, la capacité de traiter les
données sans les placer dans un Cloud public ajoute une couche de sécurité
utile pour les données sensibles.

Figure 6 – Schéma du Edge Computing

15
3.3 Comparaison du Edge Computing au Cloud Computing

Figure 7 – Comparaison entre le Cloud Computing et l’Edge Computing


La différence majeure entre le Cloud Computing et l’Edge Computing se
trouve dans l’endroit où ces deux modèles traitent leurs données. En effet,
avec le Cloud Computing, on traite ces données dans le Cloud directement
tandis que, pour l’Edge Computing, on collecte et on traite ces données
directement dans la périphérie du réseau, c’est-à-dire au niveau des appareils
eux-même.

Grâce à cette différence, on retrouve un temps de latence bien moins


élevé avec l’Edge Computing nous permettant alors de traiter les données en
temps réel. Cependant, ces deux modèles ont tout de même des avantages
et des inconvénients que je vais expliquer ensuite.

16
3.3.1 Quels sont les risques et les avantages du Edge et du Cloud Com-
puting ?
3.3.1.1 Avantages du Edge Computing

• Bande passante faible : Les décisions sont prises à la périphérie,


nécessitant une faible bande passante.

• Haute sécurité : les données ne sont pas transférées sur le Cloud ;


c’est pourquoi les chances de vol d’informations sont considérablement
moindres et augmentent la sécurité.

• Prise de décision rapide : la décision a été prise à la périphérie en


quelques millisecondes.

• Meilleure expérience d’application : des applications telles que Siri,


Google Maps, Alexa donnent des réponses rapides à l’utilisateur ; c’est
pourquoi les utilisateurs bénéficient d’une meilleure expérience.

3.3.1.2 Risques du Edge Computing

• Contrôle et fiabilité : comme l’informatique de pointe est un système


décentralisé, certains sont moins fiables et nécessitent l’attention
appropriée de l’utilisateur.

• Sécurité et conformité : dans ce cas, le traitement des données est


effectué à la périphérie externe du réseau, il peut donc y avoir des
risques d’usurpation d’identité.

• Compatibilité : certains appareils IoT ont généré une grande quantité


de données chaque seconde, ce qui est difficile à gérer en périphérie.

3.3.1.3 Avantages du Cloud Computing

17
• Productivité n’importe où : les données étant centralisées, elles seront
productives n’importe où, quel que soit l’emplacement de l’utilisateur.

• Faible coût de possession : le coût du Cloud Computing est très


inférieur et les utilisateurs peuvent s’en approprier en fonction des
besoins.

• Travail à distance : les utilisateurs peuvent travailler à distance via


des machines virtuelles.

• Plus puissant : comme une grande quantité de données est générée,


cela aide à prendre de meilleures décisions pour des technologies telles
que les feux de circulation intelligents.

• Facilement mis à niveau : l’utilisateur qui travaille sur le Cloud peut


mettre à niveau ses versions.

3.3.1.4 Risques du Cloud Computing

• Risque élevé : comme les données sont stockées de manière centralisée


lorsque les informations sont transférées de la périphérie vers le Cloud,
les risques d’attaques sont plus importants.

• Perte potentielle : en raison de l’augmentation des données d’infra-


structure Cloud, les risques de menaces augmentent également.

• Temps de panne plus long : comme les données sont transférées de la


périphérie vers le Cloud, cela prend plus de temps que l’informatique
de périphérie.

• Sécurité : en utilisant un système de Cloud Computing, nous ne


pouvons pas faire confiance à la sécurité et les entreprises doivent
compromettre la confidentialité des données.

18
3.4 Cas d’usage du Edge Computing
3.4.1 IoT Gateways

Figure 8 – Cas d’usage : IoT

Edge Computing et Internet of Things (IoT) vont de pair. Avec l’ex-


plosion des nouveaux appareils connectés, tout, de votre voiture à votre
grille-pain, a désormais une adresse IP. Ces nouveaux appareils produisent
beaucoup de données. Tant de données que votre liaison montante Internet
limitée ne peut pas suivre.

Les appareils connectés peuvent consommer moins de bande passante


de liaison en traitant la majorité de ces données à la périphérie dans une
passerelle IoT proche de la source, plutôt que dans le Cloud. Et si la liaison
montante tombe en panne, la passerelle IoT peut continuer à fonctionner
afin que vous ne soyez pas coincé dans le noir lorsque votre interrupteur
d’éclairage connecté et votre ampoule connectée perdent leurs connexions

19
au Cloud et entre eux.

L’IoT industriel (IIoT) transpose ces concepts à l’échelle industrielle.


De nombreux appareils industriels existants exposent une télémétrie qui est
ignorée ou perdue au fil du temps (jusqu’à 97 % en fait). En collectant et
en rationalisant ces données à la périphérie, les passerelles IoT industrielles
peuvent améliorer l’efficacité et l’efficience de l’automatisation industrielle.

L’IoT et l’IIoT servent également de fourre-tout pour plusieurs cas d’uti-


lisation de l’Edge Computing faiblement corrélés, notamment les voitures
connectées, les transports et l’énergie. Ces cas d’utilisation partagent les
fonctions IoT d’analyse de télémétrie et d’activation localisée à la périphérie.

3.4.2 Les fonctions réseaux


Les routeurs, les commutateurs et les pares-feux évoquent généralement
des images de grandes boîtes métalliques. Alors que les fonctions réseau
s’exécutaient traditionnellement sur des systèmes spécialement conçus, la
virtualisation des fonctions réseau (NFV) a pris ces systèmes fermés et les
a transformés en logiciels pouvant s’exécuter dans une machine virtuelle
ou même un conteneur Docker. Contrairement aux autres cas d’utilisation
de cette page, les fonctions réseau doivent s’exécuter à la périphérie. Les
fonctions de transfert de paquets et de sécurité ne peuvent tout simplement
pas être externalisées vers le Cloud tout en maintenant des performances
en temps réel.

Heureusement, la combinaison de NFV et d’Edge Computing facilite


plus que jamais la gestion du cycle de vie et de la configuration de ces
nouvelles fonctions réseau virtualisées. Les fournisseurs de services réseau
envisagent déjà le passage à la NFV comme une opportunité pour déployer
des plates-formes d’Edge Computing à usage général telles que Multi-access
/ Mobile Edge Computing (MEC).

20
3.4.3 Le Cloud Gaming
Le Cloud Gaming, un nouveau type de jeu qui diffuse un flux en direct
du jeu directement sur les appareils (le jeu lui-même est traité et hébergé
dans des centres de données), dépend fortement de la latence.

Figure 9 – Cas d’usage : le Cloud Gaming

Les sociétés de jeux en Cloud cherchent à créer des serveurs de périphérie


aussi proches que possible des joueurs afin de réduire la latence et de fournir
une expérience de jeu entièrement réactive et immersive.

3.4.4 Les bureaux virtuels


Alors que le logiciel Cloud est l’avenir des applications d’entreprise,
beaucoup comptent encore sur le bureau virtuel pour faire avancer les
choses. Que ces environnements de bureau virtuels soient hébergés dans un
centre de données d’entreprise ou exécutés dans le Cloud public, ils peuvent
être lents pour les travailleurs distants et peuvent même interrompre la
productivité dans de mauvaises conditions de réseau.
Edge Computing a le potentiel de libérer les environnements de bureau
virtuel du centre de données et de permettre un accès hautement contrôlé
mais localisé pour les travailleurs distants via la migration de la machine
virtuelle. Imaginez que vous travaillez sur votre environnement de bureau
virtuel au bureau, puis que cette instance de bureau virtuel vous suive

21
jusqu’à votre site Edge le plus proche. Comme dans le cas d’utilisation du
Cloud Gaming, une latence plus faible fait toute la différence.

3.4.5 Les vidéo-conférences


Que vous assistiez à des réunions tous les jours ou une fois par trimestre,
la plupart d’entre nous ont connu les logiciels de conférence et leurs lacunes
occasionnelles. Les retards vocaux, la mauvaise qualité vidéo et les par-
tages d’écran gelés ne sont pas inhabituels. Ces problèmes peuvent être le
résultat d’un lien lent vers le Cloud, où plusieurs flux vocaux et vidéo sont
multiplexés ensemble.

En plaçant le côté serveur du logiciel de conférence vocale et vidéo


plus près des participants, ces types de problèmes de qualité peuvent
être considérablement réduits. Un tissu Edge de serveurs vocaux et vidéo
distribué à l’échelle mondiale permet une expérience utilisateur beaucoup
plus résiliente et réactive pour les participants à la conférence.

3.4.6 Les véhicules autonomes


Le peloton autonome de convois de camions sera probablement l’un
des premiers cas d’utilisation des véhicules autonomes. Ici, un groupe de
camions se déplace les uns derrière les autres en convoi, ce qui permet de
réduire les coûts de carburant et de réduire les embouteillages. Avec l’Edge
Computing, il sera possible de supprimer le besoin de chauffeurs dans tous
les camions, sauf celui de l’avant, car les camions pourront communiquer
entre eux avec une latence ultra-faible.

3.4.7 La réalité augmentée


En réalité, la réalité augmentée (RA) est un moteur improbable de
l’adoption de l’Edge Computing. Bien qu’il soit possible de décharger le
calcul des casques de réalité augmentée légers, les compromis de puissance
et les dépendances actuelles vis-à-vis du matériel spécialisé rendent difficile
la justification de la RA comme cas d’utilisation pour une plate-forme
Edge Computing à usage général aujourd’hui. Cela dit, la réalité augmentée

22
correspond certainement au moule du cas d’utilisation prototype Edge :
gourmand en bande passante et sensible à la latence. Au fur et à mesure
que cette technologie progresse, la réalité augmentée bénéficiera sans aucun
doute du calcul augmenté de l’Edge.

Figure 10 – Cas d’usage : la réalité augmentée/virtuelle

23
3.5 Edge-AI et Fog Computing
3.5.1 Edge-AI
L’Edge AI (ou Edge intelligent) est apparu dans une volonté d’intégrer
l’intelligence artificielle au plus près des capteurs ou des objets connectés
(IoT). Les avantages sont multiples : absence de prérequis d’une connectivité
internet permanente, confidentialité des données, réduction de la latence.

L’Edge AI permet de déplacer une partie du flux de traitement informa-


tique directement dans les objets connectés, et donc de réduire au maximum
l’usage du Cloud pour les tâches liées au traitement.

3.5.1.1 Les avantages du Edge-AI


Le potentiel de l’Edge AI est très important. Voici une liste non exhaustive
d’avantages que l’on peut tirer de cette technologie :

• Facilité de gestion : L’utilisation des appareils exploitant l’Edge AI


est simple puisque les objets sont totalement autonomes.

• Temps de latence réduit : L’IA se trouve au plus proche des objets


et n’est pas soumise à des problématiques de congestion des réseaux.

• Sécurité et la confidentialité : L’Edge AI permet de filtrer les données


à faire remonter dans le Cloud si nécessaire. Seules les informations
souhaitées sont transmises, après avoir été par exemple anonymisées.
L’enjeu de la confidentialité des données et de la protection de la vie
privée sont deux problématiques importantes auxquelles l’Edge AI
peut apporter une solution puisque cette approche renverse complète-
ment le paradigme par rapport à l’IA dans le Cloud, qui nécessite une
transmission systématique de l’ensemble des données avant analyse
par l’IA.

• Déploiement “sur le terrain” : L’Edge-AI se prête par définition très


bien aux usages IoT, mais également dans l’ensemble des appareils
mobiles, à commencer par les voitures autonomes.

24
• Réduction des coûts : Les coûts liés à la bande passante et à l’échange
de données sont réduits, car la quantité de données transmises est
minimale.

3.5.1.2 Une technologie dont le marché est en pleine croissance


L’Edge-AI peut être exploité pour plusieurs usages comme la surveillance
vidéo où des caméras intelligentes qui utilisent cette technologie peuvent
traiter localement les vidéos afin d’identifier des personnes ou des objets en
mouvement. Son exploitation dans les voitures autonomes est très attendue :
la puissance de calcul que requièrent ce genre de systèmes nécessite des
composantes comme l’Edge-AI pour traiter localement et en temps réel
l’ensemble des données nécessaires au fonctionnement du véhicule : on ne
pourrait pas imaginer qu’une voiture soit pilotée par le Cloud, pour des
questions de latence et de connectivité.

Les serveurs Edge et la technologie d’Edge intelligent sont déployés dans


des usines, des magasins, des hôpitaux, des établissements financiers, etc. à
de nombreuses fins. Dans la surveillance vidéo comme évoquée auparavant,
mais également dans la gestion des inventaires ou de dossiers administratifs,
la robotique, l’imagerie médicale ou la maintenance industrielle.

3.5.2 Fog Computing


Le Fog Computing, aussi appelé "informatique dans le brouillard", définit
une infrastructure chargée de stocker et de traiter des données issues d’objets
connectés. Concurrent direct, alternative ou solution complémentaire au
Cloud Computing, le Fog Computing a comme particularité de stocker
et de traiter les données via le recours à des équipements implantés à la
périphérie du réseau. Il permet donc de réaliser ces deux actions en local,
sans avoir à solliciter un datacenter situé à plusieurs centaines de kilomètres
ou un Cloud. Dans ce domaine du stockage et du traitement des données
et de l’IoT, le Fog Computing crée une interface supplémentaire que l’on
peut situer entre le Edge Computing et le Cloud Computing.

25
3.5.2.1 Fog Computing VS Edge Computing
Le Fog Computing et le Edge Computing sont deux infrastructures assez
similaires. Toutes deux sont basées sur le traitement des données produites
directement par les objets connectés en périphérie de réseau. Cette proximité
avec le point d’origine mène à une réduction importante du temps de latence
(plus de trajet entre l’objet connecté et le Cloud). La différence entre Fog et
Edge Computing se trouve les équipements informatiques impliqués : selon
l’OpenFog Consortium, l’Edge fait référence aux terminaux de traitement
tandis que le Fog Computing renvoie à l’architecture IT. Par ailleurs, on
parle d’Edge Computing quand les ressources de calcul se trouvent dans
l’objet connecté, et de Fog Computing quand elles sont dans un nœud de
réseau séparé, comme une passerelle IoT.

Le Fog Computing participe activement à décongestionner le trafic


réseau (seules les informations les plus importantes sont transmises aux
serveurs de l’entreprise) et à augmenter ses performances (en diminuant
notamment la consommation de bande passante). À noter enfin que le
Fog Computing a également vocation à renforcer la sécurité des données.
En stockant ces dernières de façon sécurisée sur le plan local, il limite les
éventuelles tentatives d’intrusion et évite les cyber-attaques contre le Cloud
ou les datacenters.

Il est aujourd’hui accepté de dire que l’on doit le concept de Fog Com-
puting à un ingénieur de chez Cisco Systems, une entreprise informatique
américaine spécialisée dans les serveurs. Depuis 2015, il existe par ailleurs
le consortium OpenFog (qui réunit des entreprises telles que Cisco, Dell,
Microsoft ou encore ARM) chargé de définir les protocoles réseau et les stan-
dards technologiques utiles à la normalisation du marché. L’objectif : réussir
à donner une définition de l’architecture distribuée qui puisse être en mesure
de s’adapter au très fort développement de l’IoT. Sur le plan technique,
l’infrastructure du Fog Computing se compose de plusieurs couches, avec le
respect de la logique d’empilement que l’on retrouve déjà dans le Cloud,
auxquelles s’intègrent ensuite ses éléments propres, comme la collecte de
données issues d’objets connectés ou des services d’interconnexion entre
réseaux.

26
3.6 Conclusion de l’état de l’art
Tout cet état de l’art m’a prouvé que l’Edge Computing était plus inté-
ressant que le Cloud Computing ou les autres dérivés que j’ai pu découvrir.
En effet, la capacité du Edge Computing à traiter de manière locale afin
de réduire la latence et effectuer les calculs ailleurs est parfait pour notre
propre cas d’usage.

Je vais désormais expliquer comment faire fonctionner notre cas d’usage


en Edge Computing.

27
4 Ma réalisation
4.1 Mission : permettre aux caméras de fonctionner sur le
modèle du Edge Computing
4.1.1 Fonctionnement des caméras IP sous Andy 3D
Pour lancer des Caméras IP, il faut tout d’abord se trouver sur le même
réseau qu’elles. Pendant une conférence, il faut aller sur la liste de caméra
et en choisir une.

Figure 11 – Liste de caméras

La caméra IP choisie est alors "invitée" à rejoindre la conférence et est


visible par tous une fois qu’elle s’est connectée.

Au niveau du fonctionnement technique, lorsque la caméra est invitée, on


exécute une fonction pour lancer un headless unity. Ce dernier créera ensuite
une instance de caméra ayant pour seul but de rejoindre la conférence en
tant que Caméra IP.

Figure 12 – Schéma du fonctionnement des caméras IP sans Edge Com-


puting

28
Mon objectif sera donc de faire en sorte que le PC principal n’ait pas
lancer la caméra par lui afin de décharger les calculs qu’il aurait du faire
pour lancer des caméras IP. On fera ceci en passant par un serveur local
comme montré ci-dessous dans ce schéma.

Figure 13 – Schéma du fonctionnement des caméras IP avec Edge Com-


puting

29
4.1.2 Configuration du PC utilisateur et du serveur
Pour réaliser cette mission, j’avais un ordinateur portable (utilisateur)
et un ordinateur fixe Lenovo Tiny PC (serveur) dont voici les configurations.

Figure 14 – Configuration du PC utilisateur

Figure 15 – Configuration du serveur (Lenovo Tiny PC)

Nous nous intéresserons particulièrement à la RAM et au processeur


pour ce que l’on va faire.

30
4.1.3 Création du serveur Node en local
Afin de réussir ma mission, j’ai tout d’abord "jouer" avec le logiciel afin
de mieux le comprendre. J’ai ainsi pu voir par moi-même que l’ordinateur
n’arrivait pas à faire fonctionner correctement les Caméras IP.

En effet, le logiciel étant de base très gourmand en RAM, l’ajout de


Caméras IP en rajoute et utilise également énormément de processeur. Pour
réussir à faire fonctionner les Caméras IP en Edge, j’ai donc du passer
par un test en local afin de voir si cela pouvait fonctionner. Sous Unity,
j’ai utilisé la classe UnityWebRequest afin de faire des requêtes HTTP en
envoyant un formulaire. Ce dernier contenait les informations concernant
l’ID de la conférence (confId), le nom d’utilisateur (mail) et le mot de passe
(pwd).

Figure 16 – formulaire de la requete

Une fois la requête envoyée par Unity, le serveur node prend le relais
et lance à son tour le Headless avec les informations du formulaire afin de
sélectionner la bonne caméra.

Figure 17 – Code du serveur node

31
Pour finir, le Headless se servira ensuite d’un fichier de configuration
pour récupérer la bonne caméra IP à l’aide des champs "cameraIp" et
"cameraPort".

Figure 18 – Fichier de configuration de caméra IP

Figure 19 – Affichage d’une caméra IP sur la conférence

Il faut savoir que je n’ai eu aucun problème à faire fonctionner le


Headless quand tout était sur le même ordinateur en local mais que ce
dernier n’arrivait pas à se lancer lorsque j’utilisais le Tiny PC. J’ai résolu ces
problèmes après avoir discuté avec mon tuteur de stage où on a découvert
que la caméra avait besoin d’un micro pour se lancer. Pour pallier à ce
problème, j’ai du installer un micro sur le serveur pour le simuler.

32
4.1.4 L’invitation de multiple caméras différentes
Pour avoir des caméras différentes, il y avait plusieurs façon différentes
de le faire mais j’ai décidé de faire en sorte que chaque caméra IP soit
lié à un fichier de configuration plutôt que d’avoir toutes les caméras sur
un seul fichier. Pour ce faire, j’ai récupéré le nom d’utilisateur à partir
du paramètre enregistré lors de la requête HTML afin d’utiliser celui-ci
pour créer le nom de fichier de configuration. Ainsi, on se retrouve avec des
fichiers de configuration personnalisés pour chaque caméra permettant de
les retrouver plus facilement.

Figure 20 – Code de la récupération de fichier de configuration de caméra

Figure 21 – Affichage de plusieurs caméras IP différentes sur la conférence

33
5 Mes résultats
En utilisant le serveur node sur le PC principal en même temps que
l’instance Windows de Andy3D, le processeur et la RAM sont toujours à
100%. Cependant, lorsque l’on sépare les deux, on retrouve des résultats
bien différents.

5.1 Résultats côté utilisateur


Du côté du PC utilisateur, on peut voir que cela ne change pas beaucoup
au niveau de la ram et du processeur si l’on a pas de caméra IP de connectée
ou si on en a plusieurs.

Figure 22 – Utilisation du processeur et de la mémoire sans caméra sur le


PC Principal

Figure 23 – Utilisation du processeur et de la mémoire avec 4 caméras


sur le PC Principal

Cela veut dire que l’on a réussi à accomplir ce que l’on souhaitait en
déportant les caméras sur le serveur. Cependant, à partir de 3 caméras, on
commence à avoir des mini-freezes au niveau de la vidéo qui, deviennent de
pire en pire si, on commence à rajouter des caméras

34
5.2 Résultats côté serveur
Sur le PC serveur, on peut voir que les caméras utilise tout le processeur,
surtout à partir de 3 caméras. Le gestionnaire des tâches nous montre éga-
lement qu’une caméra utilise environ 22% du processeur en temps normal.

Figure 24 – Utilisation du processeur et de la mémoire sur le serveur avec


1 caméra

Lorsque l’on utilise 2 caméras, on a sensiblement la même chose qu’une


seule

Figure 25 – Utilisation du processeur et de la mémoire sur le serveur avec


2 caméras

35
De plus, à partir de 3 caméras, on commence à voir que le processeur
arrive à sa limite qui sera définitivement atteinte avec une quatrième caméra
IP. Si l’on voulait rajouter plus de caméra, il faudrait alors prendre un
processeur plus puissant que celui que j’ai actuellement.

Figure 26 – Utilisation du processeur et de la mémoire sur le serveur avec


3 caméras

Figure 27 – Utilisation du processeur et de la mémoire sur le serveur avec


4 caméras

36
6 Ce qu’il me reste à faire
J’avais originellement prévu de faire du vrai Edge Computing en uti-
lisant des Raspberry Pi en tant que serveur afin que chaque caméra ait
son serveur dédié. En en discutant un peu avec Nicolas Moreau, je ne suis
pas allé plus loin car il était plus intéressant d’un point de vue industriel
d’avoir un gros serveur qui gère plusieurs caméra plutôt que plusieurs petit
serveur gérant chacun une caméra.

Le projet en l’état est donc industrialisable, il faudra bien sur le modifier


afin qu’il soit aux normes.

Il faudrait également régler le problème du micro sur le serveur en


faisant en sorte de ne pas en avoir besoin ou de faire en sorte qu’il soit
virtuellement toujours présent.

37
Bilan
Ce stage a été de loin une expérience personnelle et professionnelle
des plus enrichissante. En effet, cela m’a permis d’apprendre énormément
car c’était très différent de ce que l’on faisait en cours. De plus, j’ai pu
approfondir mes connaissances sur UNITY en C et en javascript (node)
au cours de ce stage. Ce stage aura été pour moi une expérience vraiment
enrichissante où j’aurais eu l’occasion de beaucoup y apprendre. De plus,
toutes ces connaissances pourront être réutilisé à l’avenir dans d’autres
projets. J’ai également pu expérimenter le télétravail et ai pu apprécier de
travailler de manière hybride avec quelques jours de télétravail.

Humainement, j’ai pu rencontrer de nombreux acteurs qui m’ont fait


découvrir comment fonctionnait l’entreprise. J’en ai ainsi appris plus sur le
fonctionnement des divers services de l’entreprise et les fonctions qu’avaient
les divers employés dans ces services.

38
Annexes
Bibliographie
• STL: Définition du Edge Computing

• Comment la 5G et le Edge Computing vont transformer les cas


d’usages de réalité augmentée

• Wikipédia: Edge Computing

• Red Hat: Qu’est ce que c’est l’Edge Computing

• Cas d’usage Edge Computing

• Cas d’usage Edge Computing

• Cas d’usage Edge Computing

• Cas d’usage Edge Computing

• Cas d’usage Edge Computing

• Edge-AI

• Fog Computing

• Fog Computing ou Edge Computing

• Différence entre Cloud, Edge et Fog Computing

39

Vous aimerez peut-être aussi