Software Defined Communication Infrastructure
Launch this command before launching sdci.py:
pip install -r requirements.txtUsing a Docker container with only Alpine and Nodejs. For VIM-EMU instances on the data center we will use a specific Xenial instance with the help of this requirement.
docker build . --file <filename> -t mondocker:latest
docker run -env VAR=... -i mondocker:latest
docker exec -it <instance> bashWe will need to create separated containers in our topology with the following scripts:
Run the following command:
npm list expressGeneral Controler qui fonctionne avec une API rest, qui communique avce le SDN Controller et Vim-Emu.
curl http://127.0.0.1:8080/stats/port/1
Menu contoller:
- Provoquer un incident (API Docker) (lancer un second device par ex.)
- Démarrer le monitoring (API Ryu) (tx_bytes, port_no=4)
- Arrêter le monintoring
- Activer l'Ordonnanceur (API VIM-EMU pour lancer la VNF, Ryu pour les redirections)
- Désactiver
- Mode Auto (démarre monitoring -> vérifie si un seuil est dépassé : active l'use case)
Il existe plusieurs commande dans containernet pour observer la topologie:
links
sh ovs-vsctl show
sh ovs-vsctl get Bridge s1 datapath_id
Observer les flow crées avec l'API de ryu:
curl http://localhost:8080/stats/flow/1
Nous en avons déduit que chaque port était associé au suivant:
- 3 (port 1): Z1
- 4 (port 2): Z2
- 5 (port 3): Z3
nodejs vim emu