Master 1 network course project
|
||
---|---|---|
utils | ||
.gitignore | ||
Bytes.cpp | ||
Bytes.h | ||
configFile.cpp | ||
configFile.h | ||
data.h | ||
dataStore.cpp | ||
dataStore.h | ||
flooder.cpp | ||
flooder.h | ||
headcomment.txt | ||
main.cpp | ||
Makefile | ||
neighbours.cpp | ||
neighbours.h | ||
nw_constants.h | ||
packetParser.cpp | ||
packetParser.h | ||
protocol.cpp | ||
protocol.h | ||
README.md |
M1-nw-project
Projet de cours "réseau", M1 https://tobast.fr/m1/nw-project.pdf
Dépendances
g++
(version supportant c++14) ou tout autre compilateur c++ (éditer le Makefile pour changerCXX
)- Bibliothèques standard POSIX
Compiler
Lancer simplement make
.
Lancer
Le programme fourni prend en argument le chemin vers un fichier de configuration, dont chaque ligne commence par un mot-clé suivi de ses arguments.
id [ID du programme]
: laisser vide par défaut, sera généré automatiquement.bootstrap [ID du nœud] [adresse IPv6 du nœud] [port]
: déclare le nœud comme nœud de bootstrap. L'adresse peut être IPv4-mapped, eg.::FFFF:42.42.42.42
.data [id de donnée] [donnée]
: déclare une donnée à propager. Si l'id est 0, il sera tiré au hasard puis enregistré. La donnée peut contenir des espaces, et s'étend jusqu'à la fin de la ligne.
Le programme, à l'initialisation, lit le fichier puis le réécrit avec éventuellement des données tirées au hasard si nécessaire (eg. ID du nœud, des données).
Le programme produit des logs verbeux mais humainement lisibles sur sa sortie d'erreur (stderr).
Le programme affiche son état actuel (voisins + infos sur eux, données + infos sur elles) lors d'un appui sur RETURN.