Vous êtes sur la page 1sur 11

Examen 1re session 2008-2009

page 1

IPST-CNAM
Systmes rpartis
NFP 214
Jeudi 12 Fvrier 2009

NFP 214 - Systmes rpartis

Sans document
Dure : 2 heures
Enseignants : LAFORGUE Jacques

1re Session NFP 214


(COURS)
CORRECTION

1. QCM (60 points)


Mode d'emploi :
Ce sujet est un QCM dont les questions sont de 3 natures :

les questions 2 propositions: dans ce cas une seule des 2 propositions est bonne.
 +1 pour la rponse bonne
 1 pour la rponse fausse

les questions 3 propositions dont 1 seule proposition est bonne


 + 1 pour la rponse bonne
 pour chaque rponse fausse

les questions 3 propositions dont 1 seule proposition est fausse


 + pour chaque rponse bonne
 1 pour la rponse fausse

Il s'agit de faire une croix dans les cases de droite en face des propositions.
On peut remarquer que cocher toutes les propositions d'une question revient ne rien cocher
du tout (gal 0).
Si vous devez raturer une croix, faites-le correctement afin qu'il n'y ait aucune ambigut.
N'oubliez pas d'inscrire en en-tte du QCM, votre nom et prnom.
Vous avez droit 10% de points ngatifs sans pnalit.

page 1

Examen 1re session 2008-2009

NOM:

page 2

NFP 214 - Systmes rpartis

PRENOM:

Un Middleware est :
1
un framework de dveloppement de solution client/serveur
2
un intermdiaire de communication entre un client et un serveur
3
un ensemble de composants logiciels assurant les interfaces de communication des donnes et
l'appel aux traitements

Q1

Dans une architecture serveur/client non rpartie, le rle d'un serveur est de centraliser l'information
1
OUI
2
NON

Q2
X

X
X

La communication logique entre les clients et le serveur


Q3
1
permet l'change d'informations logiques (au sens de la comprhension mutuelle des changes)
2
d'abstraire au maximum les mcanismes d'change des informations
X
Le schma ci-dessous est une reprsentation d'une architecture 3-Tiers:

1
2

OUI
NON

Q4

Une architecture distribue est :


1
une architecture dans laquelle toutes les ressources sont centralises dans un "chef d'orchestre"
(lment central indispensable)
2
une architecture dans laquelle les ressources sont rparties sur le rseau
3
une architecture dans laquelle certaines ressources sont rparties dans des factorys

Q5

X
X

On oppose habituellement le systme rparti au systme centralis.


Y a t-il un avantage qu'un systme rparti se comporte comme un systme centralis ?
1
OUI
2
NON

Q6

Un objet distribu est une donne informatique qui est change entre un client et son serveur
1
OUI
2
NON

Q7

page 2

Examen 1re session 2008-2009

page 3

NFP 214 - Systmes rpartis

RMI (Remote Mthod Invocation) est un standard de communication entre des composants Java
1
OUI
2
NON

Q8
X

CORBA (Common Object Request Broker Architecture) est


1
une API exclusivement Java permettant la communication de donnes travers un rseau
2
une norme de Middleware ddi la communication de donnes travers un rseau
3
un Framework Java et C++ de dveloppement de solution informatique oriente serveur/client

Q9

Un Factory est
1
une usine de fabrication d'objets distribus
2
une usine de fabrication de liens de persistance entre les objets et leurs reprsentations en base
de donnes
3
une usine de fabrication de servant (CORBA)

Q 10
X

Un objet distribu est toujours nomm et enregistr dans un annuaire (ou adaptateur).
1
OUI
2
NON

Q 11

Soit, un IDL qui contient une interface de nom InterfaceDeviseOD. Cette interface gnre, en Java, une Q 12
classe utilise par hritage pour crer les servants. Le nom de cette classe est :
1
InterfaceDeviseODOperations
2
InterfaceDeviseODPOA
X
3
InterfaceDeviseODHolder
Soit, un IDL qui contient une interface de nom InterfaceDeviseOD. Cet IDL gnre, en Java, une
interface utilise pour implmenter les mthodes distantes. Le nom de cette interface est :
1
InterfaceDeviseODOperations
2
InterfaceDeviseODPOA
3
InterfaceDeviseODHolder

Q 13

Les systmes rpartis sont tout naturellement des systmes hautement scuriss aux intrusions
extrieures.
1
OUI
2
NON

Q 14

L'indpendance de la situation gographique d'un objet distribu passe par la mise en place d'un "chef
d'orchestre" qui mmorise les paramtres de connexion de cet objet distribu.
1
OUI
2
NON

Q 15

La tolrance aux pannes d'un servant dans une architecture rpartie passe, notamment, par
1
la mise en place du doublement du rseau
2
la mise en place de l'indpendance gographique du servant pour les utilisateurs
3
la mise en place de liens de rplication des ressources critiques du servant sur un autre servant

page 3

Q 16
X
X

Examen 1re session 2008-2009

page 4

NFP 214 - Systmes rpartis

Q 17

Cette reprsentation UML est celle de l'atelier 16 dans le cas d'une solution RMI. Elle dcrit la
dpendance des classes et des interfaces entre un client IHM et un serveur RMI.
Le rle de la classe IhmXXXRmiImp est essentiel car :
1
Elle encapsule l'applicatif permettant ainsi l'IHM d'utiliser les mthodes de l'applicatif
2
Elle implmente l'interface AppXXXInt permettant ainsi l'IHM d'utiliser les mthodes de
l'applicatif comme si elles taient distantes via une communication RMI
3
Elle utilise l'interface AppXXXODInt qui communique avec le serveur via l'amorce du bus
RMI.
Les rles d'un ORB sont notamment :
1
de ne pas rendre transparente la localisation des objets distribus
2
de faciliter le passage des paramtres dans les appels de mthodes distantes
3
de permettre l'change de rfrence d'objet distant (ou proxy)

X
X

Q 18
X
X

Pour utiliser les mthodes distantes d'un objet distribu :


1
on demande un adaptateur le proxy de connexion de l'objet distribu
2
on demande un factory le proxy de connexion de l'objet distribu
3
on demande un IDL le proxy de connexion de l'objet distribu

Q 19
X
X

Un proxy de connexion (ou rfrence d'un objet distribu) est un pointeur sur un objet distribu
1
OUI
2
NON

Q 20

Un proxy de connexion (ou rfrence d'un objet distribu) est un pointeur sur l'amorce (ou stub)
1
OUI
2
NON

Q 21
X

Deux clients peuvent utiliser en mme temps une mthode distante d'un objet distribu
1
OUI
2
NON

Q 22
X

On peut interdire que deux clients puisent utiliser en mme temps une mthode distante d'un objet
distribu
1
OUI
2
NON

Q 23

page 4

Examen 1re session 2008-2009

page 5

NFP 214 - Systmes rpartis

En CORBA, l'IOR est cr par le client, la premire fois, lors de sa connexion au serveur
1
OUI
2
NON

Q 24

Il existe 4 niveaux hirarchiques de couche de communication dans un systme rparti


1
Envoi de message, Appel de fonction, Appel de mthode, Appel dun service
2
POA, Servant, Thread, Socket
3
Serveur, Agent, Thread, Socket

Q 25
X

En RMI, le client dcide de la manire de communiquer avec le serveur (choix de la connexion socket) Q 26
1
OUI
2
NON
X
En RMI, le Socket Factory est gr par la classe UnicastRemoteObject
1
OUI
2
NON

Q 27
X

Q 28

bin
d

n
bi

bi
nd

Ce schma reprsente le fonctionnement des "Sockets factorys" des classes UnicastRemoteObject


utilises dans des programmes Java RMI.
1
Les ports des Sockets Factorys sont ici dtermins par le systme
2
Les ports des Sockets Factorys sont ici imposs par le dveloppeur
3
Dans la JVM2 du schma, on pourrait crer un nouvel objet distribu RMI sur le port 9102

X
X

Une communication de l'appel d'une mthode distante, entre un client et un objet distribu RMI se fait : Q 29
1
directement entre le client et l'objet distribu
2
entre le client er l'objet distribu en utilisant un stub et un skeleton mais sans passer par
X
l'adaptateur
3
entre le client er l'objet distribu en passant par l'adaptateur
En CORBA, le POA est le composant qui permet d'enregistrer un servant dans le service de nommage
1
OUI
2
NON
En CORBA, le service de nommage est cr sur chaque machine du rseau
1
OUI
2
NON
Cette instruction :
POA poa = POAHelper.narrow( orb.resolve_initial_references( "RootPOA" ));
consiste rcuprer une interface de connexion avec le POA par dfaut d'un bus CORBA
1
OUI
2
NON

page 5

Q 30
X
Q 31
X
Q 32

Examen 1re session 2008-2009

Client
Souche

page 6

Contrat IDL
BUS CORBA

NFP 214 - Systmes rpartis

Fournisseur

Q 33

Squelette

En CORBA, le contrat IDL d'un bus CORBA :


1
est un programme IDL contenant la description des interfaces qui prcisent les mthodes
distantes du Fournisseur, utilises par le Client
2
est l'ensemble de classes Java, C++, ... gnres par les pr-compilateurs Idl vers Java, Idl vers
C++, ....qui contiennent la souche et le squelette
3
est un programme d'interface entre le Client et le Fournisseur, enregistr dans le service de
nommage

X
X

En Java RMI, linstruction lookup :


1
retourne un stub
2
retourne un skeleton

Q 34
X

En Java RMI, linstruction bind :


1
permet de crer un objet distribu
2
alloue un port de communication pour l'objet distribu
3
permet d'enregistrer un objet distribu dans un adaptateur

Q 35

Toutes les mthodes distantes d'un objet distribu RMI


1
doivent appartenir la mme interface
2
peuvent appartenir plusieurs interfaces
3
doivent toutes tre implmentes dans le mme objet distribu

Q 36

X
X

On peut passer en paramtre d'une mthode distante, un objet distribu afin que le client puisse
l'utiliser pour ensuite utiliser les mthodes distantes de cet objet distribu
1
OUI
2
NON

Q 37

Les missions du Middleware est de :


1
implmenter la couche de transport (couche 5, 6 et 7)
2
grer l'interface de communication entre le serveur et la couche de transport
3
grer les appels distants et la mise en forme des donnes

Q 38

X
X

Le Domain Name System (DNS) n'est pas un systme rparti mais un systme plat de l'ensemble des
adresses des domaines et centralis sur un serveur unique appele DNSS (Domain Name System
Server)
1
OUI
2
NON

Q 39

Une architecture 3-Tiers est une architecture 3 Couches (ou Niveaux) constitu des couches de
Prsentation, de Traitement et d'Accs aux donnes
1
OUI
2
NON

Q 40

En CORBA, sur l'appel d'une mthode distante, il est possible de faire passer en paramtre un objet
contenant du code.
1
OUI
2
NON

Q 41

page 6

Examen 1re session 2008-2009

page 7

NFP 214 - Systmes rpartis

Au sujet de lutilisation dun objet distribu (OD) sur Internet :


1
Rien ninterdit quun OD puisse tre utilis par des clients connects sur Internet.
2
Pour utiliser un OD sur Internet, il faut scuriser les ports grs par lOD et ladaptateur
3
Il est impossible quun OD puisse tre utilis par des clients connects sur Internet.

Q 42
X
X

Pour utiliser un OD sur Internet, il vaut mieux les intgrer dans une architecture 4-Tiers (exemple :
Internet Explorer / Tomcat / EJB RMI / BD)
1
OUI
2
NON

Q 43

Une application rpartie est une application asynchrone


1
OUI
2
NON

Q 44
X

Pour mette en place une redondance chaude d'un nud d'un systme rparti RMI, il faut :
1
Une fois que les clients ont rcupr (lookup) la connexion au nud, enregistrer le nud
redondant sous le mme nom.
En cas de perte de connexion, les clients doivent refaire le lookup sur le mme nom.
Un lien de rplication doit tre tabli entre le nud matre et le nud esclave
2
Ds la cration du nud maitre, il faut l'enregistrer dans l'adaptateur et le re-enregistrer afin
que l'adaptateur en garde une copie et maintienne le lien de rplication entre le nud matre et
le nud esclave

Q 45
X

Les modles informatiques suivants sont des modles d'architecture rpartie :


1
DNS (Domain Name System)
2
Sockets
3
Systmes multicouches

Q 46
X

En RMI, le code suivant est un exemple de cration d'un objet distribu :


HelloOD od = new HelloOD("Pierre","DUPONT");
UnicastRemoteObject.exportObject(od);
Naming.rebind("rmi://localhost:9999/HELLO",od);
1
OUI
2
NON

Q 47

Une interface RMI hrite de l'interface RemoteException


1
OUI
2
NON

Q 48

Dans le protocole RMI la communication entre deux objets distribus se fait en utilisant la technologie
des sockets
1
OUI
2
NON

Q 49

Un objet pass en paramtre d'une mthode distante est reu par l'appelant :
1
sous la forme d'un nouvel objet qui est une copie du paramtre
2
sous la forme d'une rfrence dun objet distant

Q 50
X

Pour pouvoir faire communiquer un composant Java et un composant C++ sur un bus CORBA
1
on doit excuter les deux composants sur deux machines diffrentes
2
on doit crer un socket de communication entre les deux composants
3
on doit dfinir un IDL

Q 51
X
X

En JAVA, la persistance des objets en base de donnes se fait en utilisant la rflexivit du langage
1
OUI

Q 52
X

page 7

Examen 1re session 2008-2009

page 8

NFP 214 - Systmes rpartis

NON

Les IOR sont des chanes de caractre uniques sur un rseau donn permettant de crer une rfrence
CORBA
1
OUI
2
NON

Q 53

En RMI, un client accde au contenu de certains attributs d'un objet distribus.


Pour y accder :
1
les attributs doivent tre publics
2
les attributs doivent tre privs
3
les attributs sont accessibles via des mthodes distantes

Q 54

Une mthode distante d'un objet distribu RMI peut tre static
1
OUI
2
NON

Q 55

La srialisation est le seul moyen pour passer des paramtres dans les appels des mthodes distantes
d'un objet distribu
1
OUI
2
NON

Q 56

La srialisation est utilise, notamment, pour :


1
transporter les donnes entre un client et un serveur
2
faire la sauvegarde de donnes sur disque
3
structurer les donnes de l'interface IDL qui dfinie les donnes changes entre le client et le
serveur

Q 57
X
X

L'IDL est un langage informatique permettant de dcrire le contrat d'change (donnes et traitements)
entre les clients et leur serveur
1
OUI
2
NON

Q 58

Un client qui appelle une mthode distantes synchronise, interdit tout autre client d'utiliser l'objet
distribu tant qu'il n'a pas fini d'excuter la mthode
1
OUI
2
NON

Q 59

Un adaptateur ou service de nommage utilise un port de la machine sur lequel il se met en attente de
demande de connexion des clients de lobjet distribu qui s'y est enregistr.
1
OUI
2
NON

Q 60

page 8

X
X

Examen 1re session 2008-2009

page 9

NFP 214 - Systmes rpartis

2. Questions libres (20 points)


Chaque question est note sur 4 points.
Vous rpondez ces questions sur une copie vierge en mettant bien le numro de la question, sans oublier votre
nom et prnom.
Q1
Les proprits de transparence d'un systme rparti sont:
transparence d'accs et de localisation
transparence entre l'accs local et distant d'un objet distribu
indpendant de la localisation physique de l'objet distribu sur le rseau grce l'utilisation
d'un annuaire
transparence du partage des ressources
partage de la ressource par plusieurs clients, synchronisation des mthodes, exclusivit
d'accs
transparence de la rplication
l'accs aux ressources d'une donne rpartie est indpendant que la donne soit rplique ou
pas, le basculement sur la donne rplique est transparent pour le client
transparence des fautes
pallier la dfaillance des noeuds d'un systme rparti de manire transparente pour les
clients, robustesse face la panne de certains noeuds, peut impacter par contre les
performances
transparence de la migration
migration d'une ressource d'un noeud un autre
transparence de charge
par la mise en place d'une stratgie de la migration des ressources et par la dlgation des
tches, rpartir sur le rseau les objets distribus en rpartissant la charge sur l'ensemble des
ressources systmes du rseau
transparence d'chelle
transparence du nombre de noeuds du systme rparti pour les utilisateurs (avec souvent une
amlioration des performances)
croissance dynamique et transparente pour les clients

Q2
1/Les ORB btis sur le modle d'objet distribu tel que RMI ou CORBA, sont mal adapts Internet car ils
impliquent l'utilisation de nombreux ports de la machine (autant que de serveur ou POA, autant que
d'adaptateur sur le rseau) et permettent plusieurs points d'entre sur l'application rpartie sur le rseau.
Or l'utilisation de internet implique une normalisation d'un port unique utilis par les serveurs HTTP, seul point
d'accs un site serveur. Les pare-feux tablis sur les serveurs empchent l'usage de ces nombreux ports.
2/ La solution consiste convertir toutes les requtes d'appel des mthodes distantes d'OD, en des requtes
HTTP. Le serveur HTTP aiguille ces requtes sur les composants rpartis du rseau dont il est le seul
connatre les ports et les adresses IP des servers rpartis.
Le schma suivant correspond ce type d'architecture.

page 9

Examen 1re session 2008-2009

page 10

NFP 214 - Systmes rpartis

Q3
Ce schma est la description statique UML des classes et interfaces mise en uvre pour la conception d'un
client avec son serveur RMI compos dun objet distribu.

Indiquez le rle de chacune de ces classes et/ou interfaces Java. (Prcisez bien quand c'est une classe ou une
Interface).
ImmXXXClient : classe du programme principal du client qui est une IHM.
IhmXXX : classe de cration et d'affichage de l'IHM
AppXXXInt : Interface des mthodes de l'applicatif que l'IHM peut utiliser
IhmXXXRmiImp : classe d'implmentation de l'interface AppXXXInt dont les mthodes ralisent les appels
aux mthodes distantes de l'OD
AppXXXODInt : Interface RMI des mthodes distantes de l'OD
AppXXXServeur : classe du programme principal du serveur
AppXXXOD : classe de cration de l'OD qui encapsule l'applicatif et qui hrite de UnicastRemoteObjet et qui
implmente l'interface AppXXXODInt
AppXXX : classe de cration de l'applicatif
(Tourner la page)

page 10

Examen 1re session 2008-2009

page 11

NFP 214 - Systmes rpartis

Q4
Des avantages de l'utilisation de la norme CORBA :
interoprabilit des composants crits en diffrents langages (Java, C++, ...)
existe en de nombreux middleware du march, certains gratuits et performants
contient de nombreux service (nommages, persistance, vnements, transactions, ...) facilitant la mise
en uvre de systmes d'information
service de nommage unique sur le rseau
utilisation facilit des factorys
facilit de la transmission des informations d'accs aux servants via l'usage des IOR
Q5
Ce schma est la description de l'architecture dynamique de la mise en oeuvre de la communication d'un client
avec un Objet Distribu.
host A
host B

NomOD

5
call

Stub

Serveur socket
Port 9101

7
6

Skelton
OD : NomOD
Skelton

localisation (lookup)
Enregistrement (bind)

Port 9100

NomOD, host, 9101

ADAPTATEUR

Point 1: Le serveur enregistre l'OD dans l'annuaire


Point 2 : le client rcupre le stub de l'OD via la connexion l'annuaire sur le port 9100. Le stub contient l
rfrence du port 9101 pour se connecter l'OD
Point 3: les appels aux mthodes distantes sont raliss par le stub
Point 4: les appels ces mthodes sont autant de requtes qui transitent vers l'OD via le port 9101
Point 5: le serveur de socket sur le port 9101 traite les requte reues
Point 6 : Chacune de ces requtes sont prises en charge par les skeltons afin d'appeler les mthodes de l'OD
Point 7: Les skeltons appellent les mthodes de l'OD.

(Fin du sujet)

page 11