Requirements
- Ubuntu LTS +20.04 (22.04 - preferable)
- Containernet - https://github.com/ramonfontes/containernet
- +6.0.0 kernel
It's possible to generate the PCAP files automatically by running the script run_topologies.sh:
sudo ./run_topologies.shIt will run 10 iterations for each topology and scenario, generating the PCAP files in the pcap folder. The script will take a while to finish, as it runs all topologies and scenarios.
To generate the PCAP files manually, the commands may take these arguments:
-
-tfor topology ID (It can be a number between 1 and 12 and is respective to the topologies in thetopologies.pyfile. 1 by default) -
-ifor the iteration number (It can be a number between 1 and 10. 1 by default) -
-sfor the scenario (It can bersa,kyber, orno_cryptography.no_cryptographyby default)
Execute the network.py file as follows:
sudo python network.py -t <topo_id> -b
Execute the network.py file as follows:
sudo python network.py -s rsa -t <topo_id> -b
Execute the network.py file as follows:
sudo python network.py -s kyber -t <topo_id> -b
There are two scripts to generate the results from the PCAP files:
compare_key_exchange.py- This script compares the key exchange times between the RSA and Kyber up to 10 scenarios, generating a graph in the output folder. Graph example:
packet_size_symmetric.py- This script compares the bandwidth between the RSA and Kyber scenarios, generating a graph in the output folder. Graph example:

