Le pseudo-code du projet est donc affiché à l'écran.
Ce pseudo-code vous aidera à démarrer la mise en œuvre de votre projet.
Ce pseudo-code reprend en fait toute la logique de votre projet, mais à un niveau légèrement supérieur.
Chaque fois que vous démarrez votre processus dans un terminal pour un nœud donné, le nœud doit créer un descripteur de fichier de socket principal
TCP et un descripteur de fichier de socket principal UDP.
C'est vrai.
Et à la lecture de Fdset, le nœud doit ajouter les descripteurs de fichiers UDP et TCP qu'il a créés.
En outre, le nœud doit également ajouter zéro à ce jeu de descripteurs de fichiers.
Le descripteur de fichier zéro est une valeur spéciale, qui signifie votre console.
Parce que l'utilisateur doit interagir avec votre application pour fournir, placer ou obtenir une requête.
Votre projet ou votre application doit donc non seulement surveiller le descripteur de fichier TCP et
le descripteur de fichier UDP, mais aussi la console.
L'appel système select sera donc invoqué sur ce descripteur de fichier read, ce qui signifie que vous
surveillez ces trois descripteurs de fichier en même temps.
Vous pouvez donc voir que votre application surveille le descripteur de fichier TCP et le descripteur de fichier UDP
en même temps.
Cela signifie que votre application se comporte à la fois comme un serveur TCP et comme un serveur UDP.
Maintenant, lorsque l'appel système sélectionné se débloque, vous devez vérifier quel descripteur de fichier a été activé.
Si le descripteur de fichier TCP a été activé, cela signifie que vous avez reçu une demande d'établissement
de connexion de la part d'un autre nœud de la topologie.
Et, conformément à notre projet, vous allez recevoir ce message x, obtenir une réponse x ou mettre une réponse X sur une connexion TCP à partir
d'un nœud distant dans la topologie de l'anneau.
De même, si c'est le descripteur de fichier UDP qui est activé, cela signifie que votre nœud doit traiter,
transmettre un message ou recevoir un message qu'il a reçu du nœud précédent de la topologie en
anneau.
En revanche, si le descripteur de fichier de votre console est activé, cela signifie que l'utilisateur a émis une requête
put ou get sur ce nœud particulier.
Voici donc le pseudo-code que vous devez garder à l'esprit et commencer à mettre en œuvre votre projet
sur la base de ce pseudo-code.
Et vous pouvez voir que toute cette logique est encapsulée dans une boucle infinie.