Conception d’une application interactive pour le MOOC Internet Measurements a Hands-on Introduction

Conception d’une application interactive pour le MOOC Internet Measurements a Hands-on Introduction

Une application interactive pédagogique de mesures a été développée pour les besoins d’un MOOC d’introduction aux  mesures d’internet. Il s’agit d’une application web qui permet aux apprenants de soumettre ou consulter des expériences sur un  sous‐réseau  de  serveurs  dédiés,  nommé  plateforme  PlanetLab  Europe.  Ces  expériences  sont  de  simples  commandes  réseaux  Unix, exécutées à distance sur un serveur donné de ladite plateforme, choisi par l’apprenant. Ce service web est conçu pour être  facile  d’usage,  et  également  pour  solliciter  au  minimum  la  plateforme  en  cas  de  montée  en  charge.  Il  communique  avec  le  serveur vitrine de la plateforme via une API REST, et est basé sur le framework Python Django. Le cœur de l’application est une  base  de  données  stockant  les  correspondances  entre  les  apprenants  et  leurs  expériences  ;  et  dont  l’état  est  régulièrement  actualisé afin de soumettre les nouvelles expériences à la plateforme et d’y récupérer celles qui sont achevées. Ce processus  d’actualisation est confié à un processus indépendant du serveur web (Celery).    Timur FRIEDMAN et Renata TEIXEIRA ont conçu le MOOC « Internet Measurements: a Hands‐on Introduction » [1] lancé  en  mai  2016  sur  la  plateforme  France  Université  Numérique  (FUN).  Ce  cours,  en  anglais,  s’adresse  en  priorité  à  des  opérateurs  et  concepteurs  de  réseaux  de  niveau  Master.  Y  sont  abordés  différents  concepts  tels  que  la  topologie  des  réseaux  et  le  routage,  les  pertes,  la  latence,  la  géolocalisation,  la  bande  passante  et  les  mesures  de  trafic.  Dans  une  approche  pédagogique  pratique  basée  sur  des  expérimentations  réelles,  les  auteurs  souhaitaient  permettre  aux  apprenants à la fois de consulter des expériences et de réaliser leurs propres mesures à partir d’une plateforme de tests  existante.

 PlanetLab est un réseau d’ordinateurs connectés au niveau mondial et disponibles en tant que plateforme de tests dans  le cadre de projets de recherche sur les réseaux informatiques et les systèmes distribués.  Timur Friedman dirige la  branche  européenne, la  plateforme PlanetLab Europe  [2].  Il  s’agit  d’une  plateforme de tests  composée d’un réseau de serveurs (nodes) connectés à internet  et  mis à disposition par plusieurs dizaines d’instituts  académiques. Elle permet de créer des expériences telles que des mesures de réseaux. Les nodes concernés se comptent  actuellement en quelques centaines et sont répartis sur environ 200 sites géographiques européens.   Cependant,  cette  plateforme  est  utilisable  uniquement  via  authentification  par  des  utilisateurs  rattachés  à  une  institution membre de PlanetLab Europe. Elle nécessite en outre d’être capable de solliciter des machines virtuelles, de  s’y  connecter  et  de  les  configurer  pour  pouvoir  lancer  des  expériences.  Les  auteurs  du  MOOC  souhaitaient  que  les  apprenants  puissent  accéder  à  une  interface  connectée  à  PlanetLab  Europe  et  directement  intégrée  au  sein  de  la  plateforme de formation et ce, sans besoin de s’identifier sur une autre plateforme.   Le projet européen FORGE (Forging Online Education through Future Internet Research and Experimentation) [3] visait  à promouvoir des actions de formation en ligne dans le domaine de l’internet du futur via des expérimentations réelles.  UPMC, l’université où travaille Timur Friedman, étaient partenaires de ce projet, dont le porteur à l’UPMC était Olivier  FOURMAUX.

Dans le cadre d’un Open Call, FORGE a permis à un ingénieur de l’UPMC, Mohammed Yasin RAHMAN, de  développer un service connecté à PlanetLab Europe capable, avec un identifiant unique, de recevoir des demandes de  mesures, de les envoyer aux nodes et de récupérer les résultats. Il nous a fourni une API REST.  Le contexte d’implémentation était le suivant :droite)  pour  effectuer  une  mise  à  jour.  L’apprenant  peut  soumettre  de  nouvelles  expériences  en  cliquant  sur  l’onglet  « new experiment » (Fig. 5). Une nouvelle expérience doit avoir un nom, un serveur sur lequel elle sera exécutée, et une  commande réseau Unix (seulement ping ou traceroute dans la première version du service) avec optionnellement une  URL de destination (ex : ping www.inria.fr) ainsi que des arguments optionnels. L’apprenant peut également supprimer  ou consulter via des boutons une expérience de la liste.Le  framework  Bootstrap  de  Twitter  (version  3)  a  été  choisi  car  parfaitement  adapté  pour  concevoir  rapidement  une  interface conviviale (apparence des boutons, jeu d’icônes, responsive design). L’interface de base présente un système  de deux onglets permettant de naviguer entre la liste des expériences déjà soumises (Fig. 4) et le panneau de soumission  de nouvelles expériences (Fig. 5). Comme  précisé  dans  la  partie  architecture,  l’interface  fait  usage  du  JavaScript,  ce  qui  permet  également  d’offrir  une  meilleure expérience utilisateur lors de l’affichage des détails d’une expérience (Fig. 6), de sa suppression de la liste, ou  encore lors du filtrage des nodes opérationnels sur la plateforme PlanetLab Europe (Fig. 7) [3].

 

Cours gratuitTélécharger le document complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *