## 5 Implemented Scenarios and Experimental Results
An Ansible playbook to manage network tunnels on Linux works by defining a series of steps to be executed on one or more Linux systems to configure the desired network tunnels. These steps typically include:

* Installing necessary packages to support network tunnels, such as OpenVPN, IPSec, or using the scripts to deploy needed configurations. * Configuring the specific tunnel configuration files, such as OpenVPN (\"*.conf\") or LibreSwan (\"*.conf\") configuration files. * Enabling and starting the necessary services to manage the network tunnels. * Configuring firewall rules, if necessary, to allow traffic through the network tunnels. * Verifying the status of network tunnels to ensure they are active and functioning correctly. The Ansible playbook defines the actions to configure and manage network tunnels on the target Linux system. It allows administrators to automate this process through a series of declaratively defined steps in the YAML playbook file. ### Considered VPN/Overlay Deployed Topology

This paper describes deployments utilized in the _COGITO_ (_COGITO project_, [[https://www.icar.cnr.it/progetti/cogito-sistema-dinamico-e-cognitive-per-consentire-agli-edifici-di-apprendere-ed-adattarsi/](https://www.icar.cnr.it/progetti/cogito-sistema-dinamico-e-cognitive-per-consentire-agli-edifici-di-apprendere-ed-adattarsi/)]([https://www.icar.cnr.it/progetti/cogito-sistema-dinamico-e-cognitive-per-consentire-agli-edifici-di-apprendere-ed-adattarsi/](https://www.icar.cnr.it/progetti/cogito-sistema-dinamico-e-cognitive-per-consentire-agli-edifici-di-apprendere-ed-adattarsi/)) accessed on 23 June 2024) project, adaptable to any environment, employing selected hardware to measure component performance and ensure backward compatibility. Figure 6 illustrates the basic network topology with example IP address ranges. In Site-to-Site scenarios, the right endpoint is periodically swapped, establishing connections as depicted. Wi-Fi-only devices acting as VPN clients connect via the left endpoint, initially linked to a dummy WAN mimicking a public network (ISP sites 1, 2, and 3) with a router (IP 192.168.21.254) on the 192.168.21.0/24 segment, facilitating communication between VPN endpoints (wired/wireless clients connected to the router or switch). _Ansible_ facilitated deployment scenarios administration, while throughput results were obtained using _Iperf2_ (version 2.2, included in Debian 12 Repository) and _Nterperf_ (version 2.7, included in Debian 12 Repository), and RTT data using _ping_. Graphics were generated based on the output results from Iperf and Netperf. ### Throughput Performance Analysis

Iperf, available in both Iperf2 and Iperf3 versions as open-source software, is utilized for bandwidth measurement across IP networks. Its compatibility spans major operating systems, including Android and iOS, and its configurable parameters make

Figure 6: Generic VPN deploy topology. it essential for analyzing network performance across diverse protocols, establishing its prominence in network diagnostics. Netperf supports various performance tests, including TCP and UDP, single-stream and multi-stream, burst, and latency tests. It is a flexible and widely used tool in the industry for evaluating network performance and identifying performance issues. Figure 7 shows the trend of the average RTT for different connections based on pure IP and tunneling (for a Maximum Transfer Unit--MTU equal to 1500B on the left and 9000B on the right). Connections have been sorted in increasing order, and it can be noticed that the performances are quite acceptable for all connections (always under 5 ms). On both sides of the figures, some nearly comparable values are observed, so to better understand how the RTT evaluations are related in function of time, their pdfs have been considered. Figure 8 shows how the instantaneous RTT is distributed over 10 min of simulations for the first seven tunnels of Figure 7. Their distributions can be perfectly comparable in terms of both means and standard deviations.