This project demonstrates the use of P4 and BMv2 to implement In-Band Network Telemetry (INT), with support for RTT measurement, Mininet simulation, and optional integration with Finisy.
Before running the project, ensure the following are installed on your system:
If you intend to use Finisy, you'll need to set up a Python virtual environment and install its dependencies.
python3 -m venv venv
source venv/bin/activatepip install -r requirements.txt
# before running make sure that you copy paste alrady compiled p4 to venv env or compile the protobufs mannualy.
cp -r /usr/lib/python3/dist-packages/p4 /home/sathira/SDN-INT/venv/lib/python3.12/site-packages/p4📝 This setup is only required if you are running Finisy. For core INT functionality with P4 and BMv2, this step is not needed. The example-ping-line-topology-with-digest requires this
sudo simple_switch_CLI --thrift-port 9090Replace 9090 with the appropriate port number depending on your topology (e.g., 9091, 9092...).
Example commands inside the CLI:
show_tables
register_read rtt_result 0- Move contoller logic of all to finsy
- Do Some refactoring and Re-organizing of files