Exercice 1 (5 points)
On suppose que l’algorithme Test_Connectivity est implémenté en utilisant les sockets. Quel est le
nombre de sockets maximum qui peuvent être ouverts en même temps (en parallèle) par un nœud du
réseau qui exécute cet algorithme ? Expliquez l’utilité des sockets utilisées. Sans explication, la
réponse est considérée comme fausse.
Chaque nœud i reçoit un message msgj de la part d’un nœud voisin émetteur. Lorsque ce
message est reçu la première fois, le nœud i l’envoie à tous ses voisins sauf au nœud j. Ce
dernier ne reçoit de message du nœud i que lorsque i reçoit des messages de la part de tous
les voisins concernés par le premier envoi.
Dans l’algorithme Test_Connectivity, |N0| nœuds diffusent leurs messages. Le nombre de
messages qui peuvent donc être envoyés, en même temps par le nœud i est égal à : |N0| * (vi-1).
Comme serveur, un nœud doit aussi avoir une socket d’écoute.
Le nombre de sockets maximum qui pourraient être ouverts/utilisés par un nœud i du réseau
est donc égal à : |N0| * (vi-1) + 1
Cette réponse parait en contradiction avec le cours. Mais ce n’est pas le cas. Dans le cours, il
est bien précisé que le traitement des messages reçus ne peut pas se faire en parallèle. Ici, le
serveur socket réagit aux messages. Cette réaction consiste à créer un processus fils ou un
thread qui s’occupe du traitement du message. Le serveur socket s’occupe de la réception du
reste des messages.
2 points : s’il y a explication du nombre de sockets maximum ouverts par un algorithme broadcast
avec accusé de réception
2 points : s’il y a explication que l’algorithme Test_Connectivity appelle |N0| fois l’algorithme broadcast
avec accusé de réception.
1 point : S’il y a explication de la socket d’écoute.
Exercice 2 (5 points)
On suppose que l’algorithme de génération d’arbres de recouvrement sans racine a priori est
implémenté en utilisant les sockets. Quel est le nombre de sockets maximum qui peuvent être ouverts
en même temps (en parallèle) par un nœud du réseau qui exécute cet algorithme ? Expliquez l’utilité
des sockets utilisées. Sans explication, la réponse est considérée comme fausse.
Suivre le même raisonnement que l’exercice précédent. Le nombre de sockets maximum
ouverts/utilisés par un nœud du réseau est donc égal à 2 : une socket d’écoute et une socket
pour transmettre les demandes d’adoption Rappelons ici qu’un nœud envoie les demandes
d’adoption en séquentielle (arbre en profondeur d’abord).
4 points : s’il y a explication du nombre de sockets maximum ouverts par l’algorithme de génération
d’arbres de recouvrement sans racine a priori. La réponse doit bien préciser pourquoi ce nombre est
égal à 1.
1 point : S’il y a explication de la socket d’écoute.