Outil d’IA de Surveillance des Réseaux Télécoms
Outil d’IA de Surveillance des Réseaux Télécoms
Information
Région:
Mondial
Secteur:
Télécom
Type:
Web
Modèle d'engagement:
Équipe Dédiée
Durée:
Plus de 12 Ans; Projet en Cours
Équipe:
Plus de 70 Développeurs, 19 Ingénieurs de l'Assurance Qualité
ID:
705
Technologies utilisées
Java
JMS
Spring
hibernate
PHP
React
MFC
C/C++
Front-end
MySQL
Ajax
Motif
Oracle
Perl
PostgreSQL
Apache

Client

Un grand fournisseur de logiciels et de matériel de télécommunications a utilisé Elinext pour créer une application permettant de surveiller en temps réel les composants de réseau physique et virtuel.

Description du Projet

Au cours des dernières décennies, l'économie numérique a été en plein essor. La demande de services en ligne augmente, tout comme la pression sur les réseaux de télécommunication. Les fournisseurs ont réagi en ajoutant de nouvelles technologies de pointe à leurs systèmes, mais cela a eu un coût.

À un moment donné, les entreprises de télécommunications ont dû exploiter des infrastructures hybrides dans lesquelles une variété de logiciels avancés complétaient le matériel (qui était parfois à l'ancienne). La surveillance de telles infrastructures était de plus en plus difficile et coûtait beaucoup d'argent aux entreprises.

Notre client, un fournisseur multinational de logiciels et de matériel de télécommunications, a abordé ce défi avec avec l'idée de mettre à jour le produit. Il s'agissait d'un module complémentaire de passerelle qui permettrait aux entreprises de télécommunications de surveiller la mise en réseau définie par logiciel (SDN) et la virtualisation des fonctions réseau (NFV). En d'autres termes, une solution qui met du métal nu et des composants numériques sur un seul écran.

Dans le cadre d'un vaste projet international avec des équipes réparties dans le monde entier, les spécialistes d'Elinext ont développé un logiciel complexe et sophistiqué de surveillance de réseau et de gestion d'infrastructure. Depuis plus de 10 ans, les développeurs et les Ingénieurs QA d'Elinext ont été impliqués dans une refonte et une refactorisation sérieuses des approches de l'interface utilisateur, mettant en œuvre l'intégration avec environ 15 produits tiers, adoptant des processus et des normes de contrôle de la qualité sérieux, et développant et améliorant un grand nombre d'algorithmes et d'applications complexes.

Défi

Le projet a été associé à un certain nombre de défis:

  • Vaste échelle de projet couvrant un grand nombre d'équipes internationales de développeurs, de testeurs, de designers UI; un large éventail de technologies; divers domaines;
  • Communication active avec les équipes dans d'autres pays et le client: différents fuseaux horaires, différentes langues, différents styles de communication;
  • Apprentissage rapide de la longue histoire du projet et de l'énorme quantité de code source qui avait été créée auparavant, aggravée par le manque de documentation pour les développeurs;
  • Technologies complexes, diverses formes de clusters;
  • Développement d’un logiciel pour des équipements très coûteux et rares dans les grands centres de données des fournisseurs de télécommunications;
  • Support multiplateforme;
  • Mise à jour majeure de l'interface utilisateur;
  • Refactorisation de l'architecture logicielle;
  • Traitement de grandes quantités de données (nécessitant plus d'espace que celui disponible sur les disques durs classiques) avec l'optimisation des diagnostics, mise en œuvre de filtres de diagnostic spéciaux et la création de ses propres outils de diagnostic.

Processus

Pour faire face aux défis du projet qui comprenaient la découverte de nouvelles technologies, la mise en œuvre en fonction des besoins spécifiques du client, le test et la visualisation des données d'une nouvelle manière, il a été décidé de créer plusieurs équipes indépendantes. En quelques années, le nombre d'équipes d’Elinext dédiées à ce projet est passé à 5. Tous travaillent en étroite collaboration avec un grand nombre d'équipes, tant du côté du client qu'avec d'autres unités à travers le monde. Des réunions en ligne avec des collègues étrangers et des clients finaux ont lieu à des moments qui se chevauchent, parfois également avec un support client final sur site. Nous avons abordé la mise à jour du produit avec un développement agile divisé en itérations trimestrielles pour chaque fonctionnalité.

Les spécialistes d'Elinext ont suivi de nombreuses formations internes et externes et ont déployé des efforts considérables pour comprendre divers domaines, technologies et exigences spécifiques du client. De plus, ils ont participé à la mise à jour du portail de développement interne et de la documentation pour les développeurs.

L'équipe principale du projet a été engagée dans le développement du cœur du programme, ainsi qu'au stockage, à la transformation, à l'analyse, au traitement parallèle et aux algorithmes de convolution des données.

Afin de réduire les coûts d'achat d'équipements très coûteux pour les fournisseurs de communications Internet et sans fil, de nombreux tests de simulation et de laboratoire ont été effectués. Pour optimiser l'utilisation des données à l'aide du langage de traitement de données intégré, nous avons créé une API qui implémente la logique des données et les opérations de données et optimise l'utilisation des bases de données.

Découverte de Nouvelles Technologies

Les composants du réseau hybride sont interconnectés au niveau de l'hôte. Et c'est différent de la valeur par défaut moderne, où les unités système interagissent via l'API Docker REST. Par conséquent, nous avons donc dû étudier le fonctionnement des connexions basées sur l'hôte, comment en tirer des données et comment visualiser ces données.

Cette demande nous a amenés à en savoir plus sur VMware NSX-T. Cette plate-forme a été utilisée par de nombreux fournisseurs de télécommunications pour créer des réseaux définis par logiciel (SDN), pour lesquels un addon a été affecté à la surveillance. Nous devions donc comprendre comment nous pouvions connecter le NSX-T au système existant et à son modèle de traitement de données.

Nous avons dû parcourir les montagnes de documentation pour comprendre la technologie essentielle. Mais c'était une première étape cruciale qui a jeté les bases de la personnalisation du produit pour chaque client final à l'avenir. Sans cette base, nous passerions beaucoup plus de temps à étudier les réseaux des fournisseurs de télécommunications aujourd'hui.

Mise en Œuvre et Test

La mise à niveau a nécessité quelques modifications apportées au noyau de la pile technologique d'origine. Le changement majeur a été la migration d'Oracle vers Vertica, et c'est à peu près là que les mises à jour ponctuelles se terminent.

La mise en œuvre du produit n'est pas une étape que vous faites une seule fois. Chaque entreprise de télécommunication est différente en ce qui concerne les spécificités et les exigences de son réseau. Cela signifie que nous devons utiliser les bases que nous avons posées avec le produit pour le reconstruire pour chaque client final. Ce processus prend généralement 1,5 mois.

Une autre chose que nous avons développée pour utiliser dans les personnalisations futures est les tests automatisés. Nous les modifions et les exécutons dans un simulateur de surveillance du réseau pour nous assurer que toutes les connexions au sein du réseau fonctionnent comme prévu.

Visualisation de Données d'une Nouvelle Manière

Le client produit de nombreux appareils. Et les commutateurs réseau sont les plus importants car ils garantissent des expériences ininterrompues pour chaque homologue du réseau.

Chaque commutateur de ce type a une puce en son cœur, où ses fonctionnalités sont codées. Et déterrer ce code de fonctionnalité pour surveiller les commutateurs n'était pas une tâche facile.

Tout d'abord, nous avons dû déchiffrer le code fourni avec les nouveaux types de commutateurs. Ces commutateurs envoyaient des données via l'API REST que le système d'origine ne pouvait pas traiter. Nous avons donc travaillé en étroite collaboration avec les administrateurs et les ingénieurs du client pour trouver un moyen de transformer ces données et de les rendre utilisables.

La visualisation des données d'une nouvelle manière nécessitait de mettre à jour le frontend. Et le frontend d'origine fonctionnait sur un framework personnalisé obsolète qui était conçu comme une seule page Web. Bien que nous ne puissions pas nous permettre de réécrire le framework, nous pouvions toujours développer de nouveaux composants React et les intégrer à l'ancienne architecture. Nous avons construit un nouveau front-end en plus de ce qui s'était avéré indispensable à maintes reprises.

Maintenant, cela peut sembler facile, mais c'est loin d'être ce qui s'est réellement passé. En fait, l'ajout de contrôleurs contemporains au système obsolète a mis notre expertise au défi comme jamais auparavant. Mais cela en valait la peine: nous avons essentiellement construit un nouveau frontend en plus de ce qui existait depuis longtemps et qui s'est déjà avéré indispensable.

Intégration et Personnalisation

Chaque fois qu'un client final souhaite utiliser le produit avec son système, nous commençons par examiner le problème et définir la tâche. Dans le cadre de cette enquête, nous analysons le réseau du client. Et cela signifie comprendre comment des composants spécifiques fonctionnent, comment les intégrer et comment en tirer des données dans un format digeste.

Ensuite, comme mentionné précédemment, nous construisons un produit personnalisé basé sur ce que nous avons décrit précédemment.

Produit

Le matériel et les logiciels que notre client fournit à partir de dorsale du réseau pour de nombreux fournisseurs de télécommunications. Si quelque chose tombe en panne, l'utilisateur final subira des interruptions dans le streaming, les jeux ou des processus plus critiques. Et le produit que nous avons aidé à créer permet aux fournisseurs de repérer les problèmes à l'avance, dans toutes les dimensions physiques et numériques.

Commutateurs Virtuels

La plupart des problèmes surviennent au niveau physique ou au niveau de la sous-couche - sur des puces intégrées dans des boîtiers agissant comme des commutateurs physiques. Et ces problèmes ont un impact sur le niveau de superposition représentée par les commutateurs virtuels s'exécutant dans le cloud et recevant des données à partir de machines virtuelles et de conteneurs.

Habituellement, les administrateurs réseau ne remarquent l'erreur qu'au niveau de la superposition et ne peuvent pas retrouver sa source au niveau de sous-couche. Mais le produit que nous avons construit change cela.

Nous avons établi un échange de données entre les composants physiques et virtuels où les administrateurs peuvent localiser les problèmes. Une fois la source d'un problème découverte, le fournisseur peut envoyer un technicien pour réparer le commutateur physique à l'origine de l'interruption. Habituellement, les administrateurs réseau ne peuvent pas détecter les problèmes physiques à l'origine des interruptions. Le produit que nous avons construit change cela.

Il faut noter que VMware ne produit ni ne prend en charge le matériel. Néanmoins, nous avons réussi à visualiser des réseaux définis par logiciel construits à l'aide de VMware NSX-T et les indicateurs matériels dans une seule interface.

Interface Web

Nous avons établi une connexion significative entre les composants physiques et virtuels. Pour visualiser cette connexion, nous avons développé une interface Web.

L'interface Web est la partie la plus importante du produit. Il comprend des centaines de métriques que les administrateurs réseau peuvent suivre, ainsi que des graphiques et des analyses avancées. Essentiellement, nous avons construit une topologie holistique des composants virtuels en les affichant dans l'interface aux côtés des composants physiques.

En plus des commutateurs simples, les administrateurs peuvent utiliser l'application pour surveiller les ordinateurs et les routeurs qui forment le réseau à partir d'une console conviviale. Si un composant réseau est désactivé en raison d'une erreur (par exemple, lorsqu'un processeur de commutateur meurt), les ingénieurs système recevront immédiatement une notification.

Simulateur de Surveillance de Réseau

La personnalisation est au cœur du produit. Et il faut beaucoup de tests pour s'assurer que l'addon fonctionne correctement avec le réseau du client final. Une façon d'assurer cela est de harceler le client final en demandant des commentaires, ce qui peut être frustrant pour les deux parties. Mais nous avons trouvé une meilleure solution: un simulateur de surveillance de réseau.

Nous envoyons à chaque client final un programme utilitaire qu'il installe dans son système. Et c'est tout ce que le fournisseur de télécommunications doit faire. Le programme crée une copie de leur réseau virtuel, et nous pouvons utiliser cette copie pour des tests autonomes. Nous créons une copie du réseau virtuel d'un client final et l'utilisons pour des tests autonomes.

Une fois que nous avons personnalisé le produit pour le client final, nous déployons l'environnement émulé. Cela nous permet d'exécuter des tests d'intégration automatisés pour nous assurer que les connexions entre les composants du réseau fonctionnent correctement. Et le client final peut vaquer à ses occupations comme nous le faisons.

Résultat

Notre équipe a contribué à la création d'une application unique en son genre associant des commutateurs réseau purement virtuels et purement physiques dans la même interface. Le résultat du projet est un système logiciel robuste qui aide des milliers de clients finaux à travers le monde à maintenir efficacement une infrastructure informatique complexe et à répondre rapidement à l'évolution des besoins opérationnels. Le logiciel créé fournit des informations en temps réel sur les objets de l'infrastructure informatique, collecte des statistiques de performance sur le matériel et permet de prendre le contrôle de leur fonctionnement. Et les fournisseurs de télécommunications en bénéficient en sécurisant des expériences en ligne ininterrompues pour leurs clients dont la demande ne cesse de croître.

ai-tool-1
ai-tool-2
ai-tool-3
ai-tool-4
ai-tool-5
ai-tool-6
ai-tool-7
ai-tool-8
ai-tool-9
Voulez-vous le même projet?
Vous Avez une Idée de Projet? Discutons-en Ensemble
Contactez-Nous