Projet MARVEL
Compte-rendu de la réunion du 11 Novembre
1998
Issy les Moulineaux
1. Participants
ENST : Elie Najm, Arnaud Bailly
CNET : Jean-Bernard Stefani , Pascal Brisset , Bruno Dumant, Florence
Germain, Marc Lacoste, Kathleen Milsted, Jean-Francois Monin,
Fabien Delpiano, Francois Rene Rideau, P. Chavin
INRIA : Georges Gonthier, Fabrice Le Fessant, Jean-Jacques Levy,
Luc Maranget, Roberto Amadio, Davide Sangiorgi, Gerard Boudol,
Sylvain Ponchon, Sylvain Dal-Zilio
2. Objectif de la réunion
Réunion de lancement du projet. Rappel des objectifs et
ambitions du projet. Examen de l'état de l'art en matière
de calculs de processus/objets mobiles et systèmes de types
associés.
3. Interventions
3.1 Rappel des objectifs et ambitions du projet (J.B.Stefani)
- Modèle de programmation et machine virtuelle : un point
sur les différentes caractéristiques souhaitables
dans le contexte d'une programmation répartie mobile.
Programmation répartie mobile:
- Enjeux
- Sûreté de fonctionnement
- Sécurité
- Mobilité de code
- Caractéristiques spécifiques aux télécoms:
- Passage à l'échelle
- Prise en compte de l'hétérogénéité
- Caractère ouvert du système
Ouverture
- Sens 1 : Cohabitation MARVEL/autres systèmes (non-MARVEL)
- Sens 2 : Flexibilité (réflexion des ressources
système, caractère paramètrable d'une machine
MARVEL)
Mobilité
- Sens 1 : Mobilité des connexions (caractère
reconfigurable de la topologie)
- Sens 2 : Mobilité du code (gestion du compromis espace/temps
entre appel de procédure et transfert de code)
Répartition des processus/objets
- Asynchronisme (traitements et communications)
- Défaillances partielles
- Domaines multiples
- Compromis entre cohérence et performance (=> Privilégier
une réalisation à faible coût)
Modèle de programmation (Calcul)
- Point de vue " interface de machine virtuelle "
: niveau de cohérence minimum vis-à-vis de l'extérieur,
réflexion des éléments de système
support, abstraction de ce qu'offre la MV
- Point de vue " calcul abstrait " : minimalité,
universalité, répartition, indépendance par
rapport au langage.
Machine virtuelle (MV)
- Approche micro-noyau (minimalité, indépendance
par rapport au langage)
- Noyau : gestion des références + communication
- Implémentation par machines virtuelles répliquées
communicantes
- Réflexion vers l'application: ressources systèmes,
paramétrage du contrôle d'exécution
Gestion des noms
- Modèle de noms abritant plusieurs contextes de désignation
distincts (domaines de nom : internet, téléphonie,
X25, ...)
- Gestion explicite des domaines de noms comme objets d'un calcul.
Localité
- Localité en temps que groupes d'objets qui partagent
une propriété de façon indivisible (localité
au sens d'une unité de désignation, et/ou de mobilité,
et/ou de sécurité, ...)
- Programmation des localités en temps qu'objets du modèle
de programmation.
- Vers une théorie des localités: élaboration
d'un concept générique de localité dont des
instances particulières pourraient être implémentées.
Communication et liaison
- Caractère universel de la communication (tout type
de communication, tout type de liaison)
- Mode de communication par défaut: envoi de messages
asynchrone.
Ressources
- Ressources vues comme des localités ? comme des types
?
- Partage de ressources formalisé dans le calcul
- Domaines d'application: temps-réel, tenue en charge,
tolérance aux fautes.
Objets
- Notion d'objet primitive dans le calcul
- Quelles caractéristiques objet pertinentes (identité,
encapsulation, composition, substitution,...) ?
Conclusion
- Calcul:
- Sorte de pi-calcul hybride avec localité,
- Gestion explicite de noms,
- Propriété d'observabilité
- (+ Typage minimum)
- MV:
- Sémantique opérationnelle directe du calcul,
- Gestion des erreurs,
- Noyau pour la gestion des noms et la communication
- Stratégie d'exécution programmable
- (+ Réflexivité)
3.2 Points techniques
Techniques de preuves pour langages avec mobilité (D.
Sangiorgi)
- Preuves pour la bisimulation
- Systèmes de types (utilité, typage spécifique
aux processus, application à des langages à objets)
- Sous-calculs du pi-calcul (exemple du pi1-calcul)
Problèmes des appels aux objets distants (R.Amadio)
- Problème de la mobilité des destinataires (transparence
à la migration)
- Problème de la prise en compte des échecs (transparence
à la défaillance)
Quelle sémantique exacte ? Quelle incidence au niveau du
calcul ? Quelle solution ? (en particulier, existe-t-il une solution
distribuée ?)
Typage (E. Najm)
Typage pour l'admission d'un nouvel objet dans une configuration.
Le problème est de définir un système de
types tel que la vérification du type d'un objet permette,
à son entrée dans une configuration, de garantir
le bon interfonctionnement.
Sécurité (P.Brisset)
Sécurité CIDR (Confidentialité, Intégrité,
Disponibilité, Responsabilité)
4 niveaux de confiance : application distribuée sur réseau
propriétaire, réseau ouvert (méfiance vis
à vis du réseau), application ouverte (méfiance
vis à vis des autres processus), code mobile (méfiance
vis à vis du code que l'on reçoit) (cf papier de
Sander et Tschudin ( ?))
Join-calcul (L.Maranget)
Présentation du join-calcul
Différence entre join-calcul et pi-calcul du point de vue
de l'implémentation : le pi-calcul ne supporte pas une
implémentation par MV distribuée, contrairement
au join-calcul (caractère local de la règle de réduction
du join-calcul).
Join-calcul : implémentation (F.Le Fessant)
A compléter ( ?)
4. Point d'organisation
4.1 Notification
Date probable : le 15 Décembre 1998
4.2 Groupes de travail
- A priori on conserve le découpage en sous-projets tel
que présenté dans la proposition RNRT. Chaque responsable
de tâche constitue un groupe de travail et regroupe un fond
documentaire.
4.3 Site Web
- Création d'un site web MARVEL : rien d'arrêté
(voir avec Fabien D ( ?))
4.4 Prochaine réunion
Le 11 Janvier 1999 à Issy les Moulineaux
Coordonateur technique : G.Boudol
Ordre du jour prévu:
- Exemples typiques d'applications Télécom pour
Marvel (CNET et ENST)
- Eléments de comparaison critiques de formalismes (calculs
+ MV) existants (INRIA, ENST ? CNET ?)