fr
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0-9
  • FR

Faire carrière chez EXFO

Retour

Stagiaire

France

Rennes

EXFO propose des solutions intelligentes de test, de monitoring et d’analyse de réseaux aux plus grands fournisseurs de service de télécommunications, fabricants d’équipements de réseau et de services Web, et cette mission nous passionne!  Avec au-delà de 2000 employés dans plus de 25 pays, EXFO est le no.1 mondial des tests de fibre optique, possède le plus imposant déploiement d’assurance de services actifs et fournit une vue d’ensemble inégalée de l’expérience des abonnés. Notre vaste gamme de solutions matérielles, logicielles et de services professionnels permet à nos clients de suivre les transformations technologiques en lien avec la fibre optique, la 5G et 4G/LTE, la virtualisation, l’internet des objets et l’analytique des mégadonnées. Toujours à la recherche des meilleurs talents, joignez-vous à nous et participez à l’avancement d’une industrie en pleine expansion. 


Sujet d’études du stage
QUIC [RFC9000] est un protocole de transport récemment standardisé par l’IETF. Du fait de sa jeunesse et de son fonctionnement, le protocole est implémenté par une librairie logicielle plutôt que par un noyau de système d’opération. Plusieurs implémentations open source du protocole sont en cours de développement. Dans le cadre du développement d'un agent et d’un serveur de test de débit réseau, EXFO cherche à évaluer les performances d’une de ces implémentations et à identifier les optimisations protocolaires ou logicielles permettant d’atteindre un débit maximal.

 

En partant d’une implémentation existante du protocole, vous aurez tout d’abord à mettre en place un environnement d’évaluation des performances. Votre premier objectif sera de collecter des mesures d’utilisation mémoire, d’utilisation CPU, et de débit maximal réseau dans différents scénarios d’utilisation. Vous devrez ensuite identifier et mettre en œuvre les approches permettant d’optimiser ces performances. Dans certains scénarios de perturbation réseau ces solutions pourraient provoquer des contre-performances. Votre méthodologie d’analyse devra permettre d’identifier ces scénarios. Vous produirez un comparatif des performances permettant d’orienter le choix des paramètres du protocole QUIC à mettre en œuvre.

 

Une fois cette première évaluation accomplie, vous interviendrez sur le serveur de test de débit utilisant la librairie QUIC. Ce serveur répond aux requêtes des agents de test en générant une importante quantité de trafic QUIC afin de saturer le chemin réseau. Le serveur est actuellement implémenté dans une architecture mono-thread imposant potentiellement une limite sur le nombre de client de test pouvant être servi en parallèle. Vous aurez à concevoir et implémenter une évolution multi-threadé du serveur de test en utilisant le langage Rust et une approche par transfert de messages. Une bonne compréhension des problématiques de la programmation multi-threadé est requise. La connaissance du langage Rust ou de QUIC n’est pas un préalable, mais il sera nécessaire d’apprendre à les utiliser. Nous recherchons une ou un stagiaire motivé par cette opportunité.

 

https://www.fastly.com/blog/measuring-quic-vs-tcp-computational-efficiency

https://www.rfc-editor.org/rfc/rfc9000.html

https://www.ietf.org/archive/id/draft-ietf-quic-ack-frequency-00.html

https://www.ietf.org/archive/id/draft-corre-quic-throughput-testing-00.html

 

Votre rôle

  • Monter en compétence sur les technologies utilisées (QUIC, Rust) 
  • Mettre en place un environnement d’évaluation des performances d’un logiciel existant
  • Concevoir et implémenter une évolution multi-threadé d’un server QUIC développé en Rust et utilisant une librairie open source en C

 

Ce que nous recherchons  
Compétences techniques :

  • Compréhension des protocoles réseau de la couche transport
  • Maitrise d’un langage de programmation généraliste (Rust, C, C++, Scala, Java …)
  • Compréhension des problématiques de la programmation multi-threadé
  • Connaissance de GIT et des outils du développeur (Bash, Linux, un IDE, …)

Aptitudes requises:

  • Travail en autonomie et curiosité technique
  • Esprit de synthèse et méthodologie


Exigences

  • Exigence linguistique :  Français oral/écrit, Une bonne capacité de lecture et de rédaction de l’anglais technique est requise.
  • Domaine de formation :   Ingénierie logicielle, 
  • Niveau d’études souhaité : Master informatique / Ingénieur informatique
Stagiaire Rennes, France | Publié le 26 octobre 2021

Gardons le contact!

Tests, monitoring et analyse de réseaux : soyez à l’affût de l’actualité!

Ce site est protégé par reCAPTCHA et les règles de confidentialité et les modalités de service de Google s’appliquent. 

Thank you.