1 / 54

Fabien Michaut fabien.michaut@cran.uhp-nancy.fr

Adaptation des applications distribuées à la Qualité de Service fournie par le réseau de communication. Fabien Michaut fabien.michaut@cran.uhp-nancy.fr. Centre de Recherche en Automatique de Nancy CRAN - CNRS UMR 7039 Université Henri Poincaré - Nancy I. Dispositif échographique. Poste de

zandra
Download Presentation

Fabien Michaut fabien.michaut@cran.uhp-nancy.fr

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Adaptation des applications distribuées à la Qualité de Service fournie par le réseau de communication Fabien Michaut fabien.michaut@cran.uhp-nancy.fr Centre de Recherche en Automatique de NancyCRAN - CNRS UMR 7039 Université Henri Poincaré - Nancy I

  2. Dispositif échographique Poste de commande Exemple de télé-opération Echographie à distance Réseau • Trafics "complexes": contrôle, vidéo • Trafics contraints • Fonctionnement de l'application dépendant de la Qualité de Service (QdS) fournie par le réseau de communication • Prise en compte de la QdS du réseau indispensable

  3. Approches possibles • Réservation de ressources • [IntServ95], [Nahrstedt95], etc. • Garantie stricte de QdS • Performances optimales de l'application • Maîtrise des ressources pas totale ou impossible • Réseaux hétérogènes (Ex: Internet) • Adaptation des applications aux ressources disponibles • "Multimedia applications should be adaptive" [Diot95]

  4. Besoin d'un cadre pour l'adaptation: Architecture de QdS Adapter les applications à la QdS disponible? Spécification QdS? Utilisateur Interactions? Mécanisme d'adaptation Mécanisme d'adaptation Générique? Spécification QdS? Mesurer la QdS Stabilité?

  5. Principes • Transparence et séparation [Campbell96] • Mécanismes de gestion de QdS transparents pour l'application • Nombre limité de fonctionnalités "QdS" à implanter dans l'application • Complexité de la gestion de la QdS déléguée à l'architecture • Séparation des tâches de gestion de la QdS et de traitement des flux applicatifs • Ex. d'une application vidéo: Signalisation <-> Flux vidéo • Facilite le travail du développeur d'applications • Permet une vision / gestion globale de toutes les applications

  6. Spécification/Traduction de QdS [Cheong99] • Spécification de la QdS • Utilisateur, application, système d'exploitation, système de communication • Exemple d'une application vidéo Utilisateur Qualité vidéo subjective Application Codec vidéo, taille de l'image, etc. Système d'exploitation Mémoire, etc. Système de communication Bande passante, etc. • Traduction (translation) de la QdS • Conversion de la spécification de la QdS

  7. Mécanismes d'adaptation existants • Adaptation du débit de la source • Flux audio/vidéo • Taux de compression / choix du codec (Ex: [Fry99]) • Dimensionnement dynamique de mémoires-tampon • Compensation de gigue • Flux audio (Ex: [Benaissa02]) • Techniques plus génériques • Librairies de composants adaptables [Chang99][Ott98] • Implique de prévoir tous les composants possibles • Modèle Prayer [Bharghavan97] • Exécution d'un code différent selon la QdS • L'application spécifie comment réagir lorsque la QdS varie • Un superviseur extérieur pilote l'adaptation • Transparence/Séparation

  8.  Oui Incomplet Non Modèles existants

  9. Problématique Adapter les applications en ligne à la QdS mesurée Architecture de QdS Spécification QdS Préférences Utilisateur Générique Transparent Traduction QdS Mécanisme d'adaptation Stabilité Spécification QdS Métrologie de la QdS Multi-application

  10. Suite de l'exposé: • "QdS-Adapt": Une architecture pour l'adaptation en ligne des applications • Mécanisme d'adaptation des applications • Service de métrologie de la QdS • Architecture "QdS-Adapt" • Expérimentations • Télé-pilotage d'un robot mobile • Télé-asservissement en position d'un robot mobile • Conclusions & Perspectives

  11. "QdS–Adapt"Une architecture pour l'adaptation en ligne des applications 1. Mécanisme d'adaptation des applications 2. Service de métrologie de la QdS 3. Architecture "QdS-Adapt"

  12. Architecture de QdS Spécification QdS Préférences Utilisateur Générique Transparent Traduction QdS Mécanisme d'adaptation Stabilité Spécification QdS Métrologie de la QdS Multi-application

  13. Exemple + Classe de QdS 1 Classe de QdS 2 Classe de QdS 3 - Mécanisme d'adaptation en ligne • Basé sur des concepts issus du modèle Prayer [Bharghavan97] • Classes de QdS • "Niveaux" de QdS • Séquences d'exécution • Associées aux classes de QdS • Exécution d'un code différent selon la classe de QdS disponible

  14. Mécanisme d'adaptation: exemple Choix de la séquence

  15. Mécanisme d'adaptation

  16. Adaptation en ligne: exemple QdS t

  17. Actions d'adaptation QdS t • Actions "Bas" • Initiées lorsque la classe de QdS courante plus disponible • BLOCK, BEST_EFFORT, ROLLBACK, ABORT, SWITCH() • Actions "Haut" • Initiées lorsque une (des) classe(s) de QdS supérieure(s) disponible(s) • BEST_EFFORT, ROLLBACK, SWITCH() • Un couple (Action Haut, Action Bas) associé à chaque séquence • Application informée de l'initiation nécessaire d'une action d'adaptation

  18. Blocs d'adaptation

  19. Architecture de QdS  Spécification QdS Préférences Utilisateurs Générique   Transparent Traduction QdS Mécanisme d'adaptation Stabilité Spécification QdS Métrologie de la QdS Multi-application

  20. Métrologie de la QdS réseau • Mesurer la QdS telle qu'elle est perçue par l'application • Mettre en œuvre une politique de métrologie

  21. Métrologie de la QdS réseau Mesurer la QdS telle qu'elle est ressentie par l'application Mesures actives: Effectuées en envoyant des paquets-sonde Réseau Système A Système B

  22. Paramètres retenus et outils de mesures

  23. Analyse • Outils inutilisables pour mettre en œuvre une politique de métrologie

  24. Service de métrologie • Cadre générique pour l'implantation de techniques de mesure • Dont les techniques des outils précédents • Mesures actives • Réalisées par des couples d'émetteur-récepteur de paquets-sonde: Capteurs • Structure modulaire • Ajout de couples de capteurs

  25. Service de Métrologie Canal de contrôle Coordinateur Capteur Capteur Service de métrologie: principe Système B Système A Gère la politique de métrologie: paramètres à mesurer, période de mesure (caractéristiques de capteurs) Application Application Agent de Surveillance Service de Métrologie Coordinateur Capteur Capteur

  26. Modélisation UML - Diagramme de Classes Système A Application Agent de Surveillance Service de Métrologie Coordinateur Capteur Capteur

  27. Modélisation UML – Diagramme de Séquence

  28. Fonctionnalités du service de métrologie

  29. Implantation: QoSMet One-way delay(RFC2679) Type-P-One-way-Delay Type-P-One-way-Delay-Poisson-Stream Type-P-One-way-Delay-Percentile Type-P-One-way-Delay-Median Type-P-One-way-Delay-Minimum One-way delay variation(RFC3393) Type-P-One-way-ipdv Type-P-One-way-ipdv-Poisson-Stream Type-P-One-way-ipdv-jitter Type-P-One-way-peak-to-peak-ipdv Packet loss(RFC2680) Type-P-One-way-Packet-Loss Type-P-One-way-Packet-Loss-Poisson-Stream Type-P-One-way-Packet-Loss-Average Type-P-One-way-Packet-Loss Packet loss pattern sample metrics(RFC3357) Type-P-One-way-Loss-Distance-Stream Type-P-One-way-Loss-Period-Stream Type-P-One-way-Loss-Noticeable-Rate Packet reordering (draft) Type-P-Reordered-Ratio-Stream En cours d'implantation Bande passante disponible selon l'algorithme "Spruce" [Strauss03] • Compatible One-Way Active Measurement Protocol [IETF] Paramètres mesurés selon les recommandations de l'IETF (métriques conformes aux RFCs)

  30. Architecture de QdS  Spécification QdS Préférences Utilisateurs Générique   Transparent Traduction QdS Mécanisme d'adaptation Stabilité  Spécification QdS Métrologie de la QdS Multi-application

  31. Architecture "QdS-Adapt" Application Gestion Ressources Processeur Mémoire Réseaux

  32. Modélisation UML - Diagramme de Classes

  33. Pendant l'exécution de l'application -Détermination périodique de la classe de QdS la plus adaptée -Choix de la séquence d'exécution associée / Activation des actions d'adaptation -Enregistrement de l'application auprès de l'interface inter-applications -Création de l'interface utilisateur propre -Saisie des préférences de l'utilisateur -Enregistrement de l'application auprès du superviseur et exportation des classes de QdS "application" -Traduction des classes de QdS en classes "métriques" -Création d'un agent de surveillance -Démarrage de la métrologie Fonctionnement

  34. Calcul de la classe de QdS la plus adaptée Principe 1. Parmi toutes les classes du bloc en cours, déterminer les classes disponibles selon la QdS courante 2. Trier l'ensemble obtenu selon l'ordre indiqué par l'utilisateur Soit A l'ensemble des couples (classes de QdS de l'application, préférence de l'utilisateur): Soit B l'ensemble des classes de QdS du bloc, Soit D l'ensemble des classes de QdS de l'application disponibles en fonction de la QdS courante, L'ensemble des classes de QdS disponibles pour le bloc est La classe de QdS la plus adaptée est

  35. Architecture QdS-Adapt    Spécification QdS Préférences Utilisateurs Générique    Transparent Traduction QdS Mécanisme d'adaptation  Stabilité    Spécification QdS Métrologie de la QdS Multi-application

  36. Expérimentations Télé-pilotage d'un robot mobile Télé-asservissement en position d'un robot mobile

  37. Serveur vidéo http Point d’accès 802.11b Système mobile Poste de commande Ordinateur embarqué Carte réseau sans-fil 802.11b Robot et caméra embarquée Plate-forme d'expérimentation Emulateur Internet [Lecuire01] Délai, pertes

  38. Application de télé-pilotage • Application démonstrative • Suivre le trajet de A à E

  39. Délai aller-retour (s)  0 0,10 0,25 1,00 Stratégie d'adaptation / Classes de QdS • Degré d’autonomie du robot variable selon l’importance des perturbations [Lin96] • Modes de pilotage • Mode "joystick" • Maîtrise complète du robot par l'opérateur (pilotage interactif) • Mode "rail" • Déplacement le long d'un rail virtuel • Maîtrise des degrés de liberté du robot partagée entre le robot et l’opérateur • Mode "point à point" • Maîtrise de la trajectoire par le robot (interactivité quasi-nulle) Interactivité opérateur-robot - +

  40. Aller de A à B (B_E / SW) Aller de A à B (B_E / BL) Aller de A à B (- / SW) Aller de B à C (B_E / BL) Aller de B à C (- / SW) Aller de C à D (B_E / BL) Aller de C à D (- / SW) Aller de D à E (B_E / SW) Aller de D à E (B_E / BL) Aller de D à E (- / SW) Blocs – Séquences – Actions d'adaptation A B Trajet C D E

  41. Exemple: Bloc B-C

  42. Correcteur Robot Application de télé-asservissement • Asservir la position du robot • Commande en vitesse consigne vitesse position Réseau • Hypothèses • Délais identiques à l'aller et au retour • Pas de perte de paquets • Correcteur proportionnel

  43. Correcteur proportionnel Fonction de transfert du robot Délai Boucle de commande • Identification du robot • CONTSID [Garnier02] • Fonction de transfert en boucle fermée AR AR

  44. Etude en simulation: Impact du réseau • Introduction de délai dans la boucle • Provoque des dépassements Simulation Matlab

  45. Comment supprimer le dépassement? • Calcul d'un gain pour délaiAR max tel que dépassement nul • Pas satisfaisant • Système inutilement lent lorsque le retard est très inférieur au retard max Simulation Matlab

  46. Stratégie d'adaptation / Classes de QdS • Choix du gain du correcteur en fonction du délaiAR • Dépassement au détriment de la rapidité du système

  47. Bloc – Séquences – Actions d'adaptation Réguler (B_E / BL) Gain=0,3 Réguler (- / SW) Gain=0,9 Réguler (B_E / SW) Gain=0,7 Réguler (B_E / SW) Gain=0,5 • Périodes • Choisies en fonction de la dynamique du système • Période du bloc: 2s • Période du calcul de la classe de QdS la plus adaptée: 0,5s

  48. Modélisation

  49. 1,10 0,50 0,30 0,7 0,5 0,3 0 Résultats Expérimentaux délai A-R(s) Mesure du délai aller-retour (secondes) k Gain temps (s)

  50. position (mm) 600 400 200 100 0 1,10 0,50 0,30 Résultats Expérimentaux (2) Consigne / Réponse (mm) délai A-R(s) Mesure du délai aller-retour (secondes) temps (s)

More Related