You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

1.9 KiB

Conception de protocole 

1. Compilation

La cible « debug » permet d'activer l'affichage de l'état du protocole lors du déroulement du programme.

2. Exécution

Pour exécuter le programme, les arguments à utiliser sont :
parms: <next node IP> <next node port> <our node port> <our ID> <subscribe port>

<next node IP> : adresse IP de la machine à laquelle on va envoyer la trame (la machine suivante dans l'anneau).
<next node port> : le port UDP de la machine à laquelle on va envoyer la trame.
<our node port> : notre port UDP sur lequel on va se mettre en écoute pour recevoir la trame
<our ID> : notre adresse dans le protocole (en hexadécimal ; au maximum 8 caractères)
<subscribe port> : port local sur lequel on va se connecter (en local) pour envoyer les commandes. Les commandes permettent notamment de paramétrer un port (local lui aussi) de la machine afin que les messages envoyés à ce port soit transmis à une machine de
l'anneau.

3. Utilisation

1. Exemple d'utilisation
On exécute le programme avec par exemple la commande
./node 89.234.129.131 4242 4243 c0de 1300

ainsi on enverra la trame à la machine testlns.vm.gixe.net(89.234.129.131) sur le port 4242. On recevra la trame sur le port 4243.
Notre adresse dans l'anneau est «c0de». Enfin le port de commande est le port 1300.

Une fois l'anneau formé, on peut associer un port local à une machine de l'anneau. Par exemple pour associer la machine « cafe » au port 1200, on doit envoyer la commande
« echo 'subscribe cafe 1200' | nc localhost 1300 ».
À partir de là, tout ce qu'on envoie dans le port local 1200, sera transmis via l'annea à la machine « cafe »

2. Liste des commandes
Les commandes que l'on peut envoyer sur le port de commande sont
« subscribe <ID> <local port> » qui associe l'hote d'adresse <ID> sur le port <local port>.
et « unsubscribe <ID> » qui permet défaire l'association.