This is a demo for overlay network monitoring with INT.
The program includes five folders: p4src, DFSPathPlan, packet_DFS, topo and experiment.
The P4 and json file which defines the packet processing logic of the switches.
Process the DFS path planning for lightweight INT (LINT).
The python files used to send, receive, decode and upload INT information to the database.
The python files to build the network topology and down flow table.
Some scripts for drawing pictures of experimental results.
- Install dependences:
- Compile code:
sudo p4c-bm2-ss --p4v 16 -o json/int_vxlan.json p4src/int_vxlan.p4
This will produce int_vxlan.json
file needed for BMv2.
- Setting up test network:
sudo python topo/FattreeTopo.py --json int_vxlan.json
This will bring up mininet with the constructed fat-tree topology.
In other terminal set up forwarding rules:
sh topo/FattreeCommands.sh
Now you can use the standard mininet CLI in the first terminal.
- Open xterm for hosts on mininet cli, for example:
xterm h1 h8
now in h8:
python receive.py 10.0.1.10-10.0.8.10
Now h8 is ready to receive a packet from h1, decode and upload the INT information to database which is set up in advance.
In h1:
python send.py 10.0.8.10
Now h1 sends a packet to h8.