• Aucun résultat trouvé

Administration proactive ` a l’aide d’agents mobiles

3.2 Application aux syst` emes distribu´ es

♦ Au lieu d’ˆetre con¸cu dans une d´emarche descendante, la plupart des ph´enom`enes

´

emergents apparaissent du bas vers le haut.

♦ Les structures ´emergentes persistantes peuvent servir de base pour des structures

´

emergentes de plus haut niveau. C’est-`a-dire que des hi´erarchies d’agr´egation de structures ´emergentes peuvent se former.

♦ Les agents et les structures ´emergentes peuvent s’influencer mutuellement. En effet, ce sont les interactions entre les agents qui permettent l’´emergence de structures, mais en retour les structures ´emergentes peuvent elles-aussi influencer les agents.

♦ Les ph´enom`enes ´emergents sont typiquement des structures persistantes avec des composants qui changent (les voitures dans un embouteillage peuvent changer, mais l’embouteillage reste l`a).

♦ L’ensemble des agents peut ˆetre homog`ene ou h´et´erog`ene, et l’´emergence peut ap-paraˆıtre suite `a l’interaction d’agents similaires. Le plus souvent, l’´emergence ap-paraˆıt comme l’interaction de diff´erentes sortes d’agents qui ´evoluent en soci´et´e ou en ´ecosyst`eme.

3.2 Application aux syst` emes distribu´ es

Les agents mobiles sont incarn´es par des portions de code ind´ependantes les unes des autres et capables d’utiliser des primitives de migration afin de se d´eplacer physiquement sur le r´eseau. Le concept d’agent logiciel a initialement ´et´e propos´e par Kahn et Cerf [KC88]. Pendant plusieurs ann´ees, une ´evolution parall`ele s’est effectu´ee entre le paradigme d’agent propos´e par [GK94] [EW94] [Mae97], et le paradigme d’ex´ecution distante tel que d´ecrit par [BN84]. Finalement, White proposa Telescript [Whi97], un produit `a la convergence des deux concepts permettant de cr´eer des programmes capables de migrer d’une machine `a une autre `a l’int´erieur d’un r´eseau h´et´erog`ene et d’interagir avec les hˆotes qui les re¸coivent. Ce sont les agents mobiles. Aujourd’hui plusieurs plates-formes d’agents mobiles existent, mais cette technologie n’est pas tr`es r´epandue pour plusieurs raisons :

♦ Les avantages des agents mobiles n’apparaissent qu’au sein d’un environnement distribu´e et tr`es dynamique (par ex. les r´eseaux informatiques).

♦ La plupart des plates-formes d’agents mobiles actuelles sont `a l’´etat de prototypes, et aucune ne pr´esente toutes les fonctionnalit´es n´ecessaires `a la cr´eation d’une ap-plication commerciale. De plus, de nombreux probl`emes de s´ecurit´e doivent encore ˆ

etre r´esolus.

♦ Aucune application centralis´ee ne requiert de mani`ere obligatoire les caract´eristiques exhib´ees par les codes mobiles. Cependant, lorsqu’on consid`ere soit un groupe d’ap-plications, soit une application distribu´ee, les avantages des codes mobiles deviennent

´

evidents.

Plusieurs applications r´ealisant des traitements d´ej`a effectu´es de mani`ere classique (par exemple le routage dans les r´eseaux informatiques, ou la d´etection d’intrusion [Fen01]) ont

´

et´e impl´ement´ees, et les r´esultats sont plus qu’encourageant. Deux exemples d’utilisation des agents mobiles sont expos´es ci-apr`es qui illustrent l’int´erˆet des agents mobiles pour

la r´esolution de probl`emes complexes apparaissant dans des infrastructures distribu´ees.

Un premier probl`eme important concerne le routage des paquets dans un r´eseau informa-tique. L’objectif dans ce cadre est de s’adapter `a une topologie changeante, et d’essayer d’optimiser le routage des paquets par rapport `a la topologie existante. Il s’agit d’un probl`eme colossal qui fait l’objet de recherches actives depuis l’av`enement des r´eseaux.

Des chercheurs italiens ont mis en ´evidence qu’il ´etait possible d’obtenir une solution re-lativement optimale de mani`ere assez simple grˆace au paradigme des agents mobiles. Le second probl`eme int´eressant qui est trait´e `a l’aide d’agents mobiles est li´e `a la produc-tique et concerne la gestion de workflow. Il s’agit d’un probl`eme de taille dont les enjeux sont capitaux pour le succ`es des entreprises. Le probl`eme de gestion de workflow consiste

`

a g´erer des contraintes sur les tˆaches des processus de l’entreprise dans des environne-ments distribu´es (contraintes de partage sur les ressources d’un syst`eme de production, contraintes de pr´ec´edence...). L`a aussi, des mod`eles int´eressants ont ´et´e d´evelopp´es, mˆeme si pour la plupart on en est encore au stade th´eorique.

Application `a un probl`eme typiquement distribu´e : le routage dans les r´eseaux informatiques

Une description du routage bas´ee sur des agents r´eactifs `a l’int´erieur d’une mˆeme zone a d´ej`a ´et´e d´ecrite par Schoonderwoerd et al. dans [SHBR96]. Ils utilisent des ”fourmis”, ou ”ants”, pour mettre `a jour les tables de routage de chaque nœud. Un syst`eme de ph´eromone guide les fourmis de nœud en nœud. Ce syst`eme donne de bons r´esultats en simulation par rapport `a un routage de type statique. Par ailleurs, le syst`eme AntNet, d´evelopp´e par Caro et Dorigo dans [CD98] utilise le mˆeme concept, c’est-`a-dire la commu-nication indirecte et asynchrone entre les ”ants” (appel´e aussi stimergie) pour mettre `a jour les tables de routage des nœuds du r´eseau. La simulation donne de meilleurs r´esultats qu’avec les m´ethodes de routage classiques (OSPF, SPF, BF, Q-R, PQ-R ou Daemon).

Les tables de routage sur les diff´erents nœuds sont remplac´es par des tables de probabi-lit´e, qu’on appelle tables de ph´eromones. Les intensit´es des ph´eromones sont repr´esent´ees par ces probabilit´es. Chaque nœud poss`ede une table de ph´eromone pour chaque destina-tion possible dans une mˆeme zone, et chaque table a une entr´ee pour chaque voisin. Par exemple, un nœud avec quatre voisins dans une zone de 30 nœuds poss`ede 29 tables de ph´eromones avec quatre entr´ees chacune. Les entr´ees dans les tables sont les probabilit´es qui influenceront la s´election des fourmis en fonction du nœud de destination.

La figure 3.2 donne un exemple de table de ph´eromones pour le nœud 1 du maillage de la figure 3.1. La m´ethode pour mettre `a jour les probabilit´es est assez simple : quand une fourmi arrive `a un nœud, l’entr´ee dans la table de ph´eromones correspondante au nœud duquel elle provient est renforc´ee, tandis que les autres entr´ees dans la table sont diminu´ees.

Les agents mobiles apparaissent comme un nouveau paradigme prometteur pour l’opti-misation d’infrastructures r´eseau complexes. Cependant, s´ecuriser des applications `a base d’agents mobiles n’est pas trivial, et on ne pourra pas utiliser ce type d’application de mani`ere courante tant qu’on aura pas atteint un niveau de s´ecurit´e satisfaisant.

3.2. Application aux syst`emes distribu´es

3 4

1

2

Fig. 3.1 – Exemple de maillage

2 4

2 3 4

0.95 0.49 0.05

0.05 0.51 0.95

Voisins Destinations

Fig. 3.2 – Exemple de table de ph´eromones pour le nœud 1

Application `a la gestion de production : le management de workflow

Utiliser le syst`eme de management de workflow est une tendance r´ecente et actuelle pour mod´eliser et impl´ementer les flux d’informations et les Business de process (BP) dans une entreprise [Deb98]. Il est vite apparu que les approches centralis´ees pour le manage-ment de workflow pr´esentent un certain nombre d’inconv´enients, notamment concernant la robustesse, l’´evolutivit´e, la flexibilit´e... Un certain nombre de syst`emes de manage-ment de workflow et de BP bas´es sur les agents, et plus particuli`erement sur les agents mobiles autonomes (car les workflows sont intrins`equement distribu´es) ont ´et´e propos´es ([BIP99],[LZ01], [SNYL01]...). Ces mod`eles permettent de n´egocier les contraintes agissant sur les tˆaches du workflow (pr´ec´edence, conditions d’ex´ecution...) `a l’aide d’agents mobiles.

Cependant, la plupart de ces mod`eles restent th´eoriques et ne sont pas impl´ement´es, ou alors sur des exemples extrˆemement simples qui n’ont pour l’instant que peu de rapports avec la r´ealit´e. Ceci vient du fait que la technologie des agents mobiles n’est pas encore arriv´ee tout `a fait `a maturit´e.

Une approche plus op´erationnelle a ´et´e adopt´ee dans le domaine du management des r´eseaux informatiques. Pour les mˆemes raisons que le management de workflow, les agents mobiles sont assez r´evolutionnaires dans la mani`ere d’envisager le management des r´eseaux informatiques. Des projets pilotes ont ´et´e initi´es par [LH02] ou par [RB02]. La plupart du temps, il s’agit de code Java ex´ecut´e sur les nœuds distants, et qui permettent d’effectuer des traitements de mani`ere centralis´ee. Cependant, et depuis peu, il existe des plates-formes d’agents mobiles relativement compl`etes comme Aglets ([Ope]) ou Grasshopper ([IKV]) qui ont permis de d´evelopper des plates-formes de management de r´eseaux in-formatiques, notamment [CSTK04], qui offrent des possibilit´es int´eressantes et compl`etes par rapport au panel des tˆaches `a effectuer dans le management des r´eseaux. Ces plates-formes n’ont pas encore ´et´e mise en œuvre pour proposer des solutions concernant le management de workflow.