From c45cdd3ec6731867474c982d87c7e8e7a75612ab Mon Sep 17 00:00:00 2001 From: Bertrand Benjamin Date: Tue, 2 Feb 2021 12:18:51 +0100 Subject: [PATCH] Feat: topo mesh et mesh dns --- SNT/03_Internet/Simulation/build.py | 5 +- SNT/03_Internet/Simulation/roles.yml | 160 +++++++++++++++++++++++++-- 2 files changed, 157 insertions(+), 8 deletions(-) diff --git a/SNT/03_Internet/Simulation/build.py b/SNT/03_Internet/Simulation/build.py index b734e3e..fd07463 100644 --- a/SNT/03_Internet/Simulation/build.py +++ b/SNT/03_Internet/Simulation/build.py @@ -21,6 +21,7 @@ def build_topo(topo, roles): #ax.set_title(f"Forme du réseau: {topo}") g = graph(roles) nx.draw(g, + with_labels=True, node_color='white', node_size=100, ax=ax) @@ -34,7 +35,6 @@ def build_topo(topo, roles): def role_card(role, topo, template, css): card = template.render(topo=topo, **role) - Path(topo).mkdir(exist_ok=True) dest = f"{topo}/role{role['num']}.html" with open(dest, "w") as f: f.write(card) @@ -49,6 +49,9 @@ with open("role.html", "r") as f: css = CSS("role.css") for topo, desc in topos.items(): + + Path(topo).mkdir(exist_ok=True) + build_topo(topo, desc["roles"]) for role in desc["roles"]: diff --git a/SNT/03_Internet/Simulation/roles.yml b/SNT/03_Internet/Simulation/roles.yml index 48021a3..bdb5e5b 100644 --- a/SNT/03_Internet/Simulation/roles.yml +++ b/SNT/03_Internet/Simulation/roles.yml @@ -1,5 +1,5 @@ --- -lineaire: +linéaire: roles: - num: 1 IP: 192.168.0.1 @@ -49,6 +49,7 @@ lineaire: - Ne marche plus après avoir transmis 3 messages liens: - 5: 192.168.4.1 + anneau: roles: - num: 1 @@ -101,12 +102,14 @@ anneau: - 5: 10.10.4.1 - 1: 10.10.0.1 -etoile: +étoile: roles: - num: 1 IP: 77.82.0.1 objectifs: particularites: + - Après 10 transmissions, ne marche plus. + - (*) Ouvrir et noter tous les messages transmis. liens: - 2: 77.82.1.1 - 3: 77.82.2.1 @@ -116,36 +119,179 @@ etoile: - num: 2 IP: 77.82.1.1 objectifs: - - Envoyer un message à 77.82.5.1 + - Envoyer un message à 77.82.10.1 + - Envoyer un message à 77.82.5.1 et demander une réponse particularites: liens: - 1: 77.82.0.1 - num: 3 IP: 77.82.2.1 objectifs: - - Envoyer un message à 77.82.4.1 + - Envoyer un message à 77.82.3.1 particularites: liens: - 1: 77.82.0.1 - num: 4 IP: 77.82.3.1 objectifs: - - Envoyer un message à 77.82.0.1 + - Envoyer un message à 77.82.4.1 + - Envoyer un message à 77.82.2.1 et demander une réponse particularites: liens: - 1: 77.82.0.1 - num: 5 IP: 77.82.4.1 objectifs: - - Envoyer un message à 77.82.1.1 + - Envoyer un message à 77.82.5.1 particularites: liens: - 1: 77.82.0.1 - num: 6 IP: 77.82.5.1 objectifs: - - Envoyer un message à 77.82.3.1 + - Envoyer un message à 77.82.1.1 + - Envoyer un message à 77.82.4.1 et demander une réponse particularites: liens: - 1: 77.82.0.1 + +mesh: + roles: + - num: 1 + IP: 77.82.1.1 + objectifs: + particularites: + - Envoyer message à 131.240.1.1 et demander une réponse. + liens: + - 2: 77.82.0.1 + - num: 2 + IP: 77.82.0.1 + objectifs: + particularites: + - À partir du 2e message transmis, ouvre les messages, barre ce qui est écrit et écrit quelque chose d'autre. + liens: + - 1: 77.82.1.1 + - 3: 131.240.0.1 + - 7: 51.12.0.1 + - num: 3 + IP: 131.240.0.1 + objectifs: + - Après 5 messages transmis, arrête de transmettre les messages. + particularites: + liens: + - 4: 131.240.1.1 + - 2: 77.82.0.1 + - 5: 151.10.0.1 + - 7: 51.12.0.1 + - num: 4 + IP: 131.240.1.1 + objectifs: + - Envoyer message à 151.10.1.1 et demander une réponse. + particularites: + liens: + - 3: 131.240.0.1 + - num: 5 + IP: 151.10.0.1 + objectifs: + particularites: + liens: + - 6: 151.10.1.1 + - 3: 131.240.0.1 + - 7: 51.12.0.1 + - num: 6 + IP: 151.10.1.1 + objectifs: + - Envoyer message à 51.12.1.1 et demander une réponse. + particularites: + liens: + - 5: 151.10.0.1 + - num: 7 + IP: 51.12.0.1 + objectifs: + - Après 3 messages transmis, enregistre tous les messages qu'il transmet. + particularites: + liens: + - 8: 51.12.1.1 + - 2: 77.82.0.1 + - 3: 131.240.0.1 + - 5: 151.10.0.1 + - num: 8 + IP: 51.12.1.1 + objectifs: + - Envoyer message à 77.81.1.1 et demander une réponse. + particularites: + liens: + - 7: 51.12.0.1 + +mesh_dns: + roles: + - num: 1 + IP: 77.82.1.1 + objectifs: + - Se connecter à 2gt1.stex pour demander la page HTML + particularites: + - Utilisateur du web. + - Connaît le serveur DNS à l'adresse 131.82.0.1 + liens: + - 2: 77.82.0.1 + - num: 2 + IP: 77.82.0.1 + objectifs: + particularites: + liens: + - 1: 77.82.1.1 + - 3: 131.240.0.1 + - 7: 51.12.0.1 + - num: 3 + IP: 131.240.0.1 + objectifs: + particularites: + liens: + - 4: 131.240.1.1 + - 2: 77.82.0.1 + - 5: 151.10.0.1 + - 7: 51.12.0.1 + - num: 4 + IP: 131.240.1.1 + objectifs: + - Répondre aux requêtes DNS. + particularites: + - Serveur DNS, connait les noms de domaine suivants + - SNT.stex à l'adresse 131..240.1.1 + - 2gt1.stex à l'adresse 151.10.1.1 + liens: + - 3: 131.240.0.1 + - num: 5 + IP: 151.10.0.1 + objectifs: + particularites: + liens: + - 6: 151.10.1.1 + - 3: 131.240.0.1 + - 7: 51.12.0.1 + - num: 6 + IP: 151.10.1.1 + objectifs: + - Renvoyer une page HTML quand on nous le demande. + particularites: + - Serveur Web connu sous le nom de domaine 2gt1.stex + liens: + - 5: 151.10.0.1 + - num: 7 + IP: 51.12.0.1 + objectifs: + particularites: + liens: + - 8: 51.12.1.1 + - 2: 77.82.0.1 + - 3: 131.240.0.1 + - 5: 151.10.0.1 + - num: 8 + IP: 51.12.1.1 + objectifs: + - Renvoyer une page HTML quand on nous le demande. + particularites: + - Serveur Web connu sous le nom de domaine SNT.stex + liens: + - 7: 51.12.0.1