• Aucun résultat trouvé

Services proactifs dans ProAN

Il existe d´ej`a certains travaux dans lesquels les auteurs sugg`erent la n´ecessit´e d’une r´eactivit´e aux conditions : les applications puissent r´eagir efficacement aux variations des conditions dans le r´eseau sans fil grˆace `a l’aide des services actifs dans les passerelles actives. Par exemple, Boulis et al [46] ont mis en application un service actif plac´e dans une station de base active. Ce service fragmente les paquets audio de grande taille en plusieurs paquets plus petits. Sans ce service, dans le cas d’une mauvaise connexion sans fil, plusieurs paquets longs sont perdus. La qualit´e de l’audio est alors m´ediocre. Si ce service est activ´e, seule une petite fraction des paquets sont perdus et la qualit´e sonore est am´elior´ee.

Mais nous pensons qu’inversement les services actifs ont ´egalement besoin de l’aide des applications et d’autres ´equipements du r´eseau tels que des routeurs et des passerelles pour r´eagir plus efficacement. En particulier les services actifs doivent tenir compte de

l’informa-5.2. SERVICES PROACTIFS DANS PROAN 85 tion sur l’´etat des passerelles, nœuds actifs, r´eseaux, applications et si possible sur l’´etat de l’utilisateur afin de r´eagir au mieux `a ce qui se produit avec ces entit´es et ils doivent avoir la libert´e de choisir le bon moment d’intercepter des paquets pour le traitement. La raison est que par exemple, dans le cas du service qui fragmente des paquets d’audio longs en paquets plus courts d´ecrits ci-dessus, si la connexion sans fil est bonne, avec l’activation de ce service la qualit´e d’audio est aussi d´egrad´ee parce que le d´elai caus´e par le service augmente la gigue. Cela demande que ce service ne fonctionne que quand l’´etat de la connexion est mauvais. La figure 5.2 illustre un tel comportement.

network state

Flot de données Nœud actif

État du

serveur État du client

État du nœud actif État du réseau

Serveur Client

Service proactif

Fig. 5.2 – Service proactif

Le mod`ele proactif fonctionne diff´eremment du mod`ele r´eactif. Nous rencontrons souvent des services r´eactifs o`u l’utilisateur doit explicitement demander au service ou au syst`eme de faire quelques choses en envoyant des requˆetes ou des commandes. Dans le mod`ele proac-tif, c’est le service qui d´etecte et qui sugg`ere les choses que l’utilisateur veut faire et les fait pour lui. L’interaction entre l’utilisateur et le service se r´eduit au minimum possible, voire `a la situation o`u les services proactifs agissent automatiquement sans l’intervention de l’utilisateur.

La figure 5.3 illustre un exemple d’un service proactif dans une passerelle active. Un utilisateur mobile re¸coit un flot de vid´eo sur son ordinateur portable (ou son PDA) au travers du r´eseau local sans fil IEEE 802.11b(WLAN). Son ordinateur portable a aussi une carte Bluetooth [97]. Quand il se d´eplace dans un bureau o`u le d´ebit du WLAN se d´egrade (loin du point d’acc`es) il peut arriver que, `a cˆot´e, se trouve un PC fixe qui a lui aussi une carte Bluetooth, l’ordinateur portable de l’utilisateur peut alors profiter de la connexion via Bluetooth avec le PC fixe pour se connecter au r´eseau afin de recevoir la vid´eo au lieu d’utiliser la connexion WLAN. Le PC devient un routeur temporaire pour ce portable. Le service proactif doit d´etecter la d´egradation du lien sans fil WLAN, configurer le PC comme

un routeur, ainsi que la passerelle active, pour que le flot de vid´eo traverse le PC fixe avant l’arriv´ee au portable.

Bluetooth

Ethernet

Passerelle active

WLAN (802.11b) PC Vidéo WLAN (802.11b) Vidéo Vidéo WLAN (802.11b) Bluetooth

Fig. 5.3 – Utilisation d’un autre dispositif

Afin de permettre `a un service proactif de coop´erer avec d’autres services, nous pensons qu’il sera plus simple que chaque service fournisse une interface de contrˆole et un proxy qui permette `a d’autres services proactifs de communiquer avec lui. De cette fa¸con un ser-vice proactif ne se soucie plus du protocole de communication avec d’autres serser-vices. Par cons´equent chaque type de service proactif doit se conformer `a une interface commune de contrˆole et est libre de fournir le proxy correspondant. Nous proposons par exemple que tous les modules de contrˆole des passerelles actives offrent une interface commune de contrˆole, car les passerelles actives peuvent ˆetre vues comme des services. Et chaque type de passerelle active peut fournir le proxy correspondant.

De mˆeme, chaque service de transcodage de vid´eo, quelque soit son impl´ementation et sa plate-forme, peut fournir un proxy repr´esentant l’interface commune de contrˆole de tous les types de service de transcodage de vid´eo.

La figure 5.4 illustre l’interaction entre les services proactifs par l’interm´ediaire de leurs proxies dans ProAN. Le service de d´ecouverte joue un rˆole important pour les services proac-tifs. Il leur permet de d´ecouvrir les autres services (Ceci inclut aussi les moniteurs de l’envi-ronnement et les autres passerelles actives) dans le r´eseau.

5.2. SERVICES PROACTIFS DANS PROAN 87

Module d’interception des paquets de ProAN

paquets paquets Service proactif Service proactif Service proactif moniteur Service de découverte Passerelle active-ProAN proxy événement control donnée requête

Fig. 5.4 – Interaction entre les services proactifs

Nous avons choisi Jini [91] comme service de d´ecouverte dans ProAN pour impl´ementer des sc´enarios d’application montr´es plus loin dans la section 5.4. Quand chaque service proactif ou chaque module de contrˆole d’une passerelle active est activ´e, il doit enregistrer son proxy aupr`es du service de d´ecouverte pour que les autres services puissent le d´ecouvrir. Toutes les entit´es qui veulent se rendre d´ecouvrables fournissent une interface de contrˆole et un proxy (stub) qui impl´emente cette interface et cache le protocole d’acc`es. Son rˆole est d’amorcer la communication entre les services sans qu’il soit n´ecessaire de connaˆıtre un protocole d’acc`es particulier exig´e par un service. Des stubs sont enregistr´es aupr`es du service de d´ecouverte, de sorte que d’autres services puissent les d´ecouvrir et les t´el´echarger. L’interface de contrˆole peut fournir des m´ethodes pour obtenir la description du service ou son ´etat actuel.