## 5 Performance Evaluation
### Experimental Results  
In order to precisely quantify the advantages obtainable through the proposed architecture, compared to a more classic virtualization solution, we implemented a testbed, \begin{table}
\begin{tabular}{p{113.8 pt} p{113.8 pt} p{113.8 pt} p{113.8 pt} p{113.8 pt}} \hline \hline
**Architecture** & **Load Balancer** & **C-V2X Server** & **Vifeo Streaming Server** & **Firewall** \\ \hline \multirow{3}{*}{NetBricks} & Limited memory overhead and optimized network functions & High processing rate (\(>\)25 Mbps) [38] & High processing rate (\(>\)25 Mbps) [38] & Memory and packet isolation and optimized network functions \\ \cline{1-1} \cline{3-4} \multirow{3}{*}{Kata Containers} & Reduced agent and VMM overhead (1 MB, 10 MB) [42] & VM-like isolation, reduced agent and VMM overhead (1 MB, 10 MB) [42] & Reduced agent and VMM overhead (1 MB, 10 MB) [42] & Reduced agent and VMM overhead (1 MB, 10 MB) [42] & \multirow{2}{*}{VM-like isolation} \\ \cline{1-1} \cline{3-4} \multirow{3}{*}{Firecracker} & High density creation rate (150 microVM/s) [37] & Fast scaling and fast startup time (125 ms) [37] & Fast startup time (125 ms) [37] & Minimal attack surface \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Impact of proposed techniques on VNF application examples in the IoT domain. based on two Dell rack servers hosting the Linux kernel 5.4.0-42 and Ubuntu Server 20.04 Long Term Support. The full set of features is reported in Table 3. This hardware configuration can be considered representative of an edge computing infrastructure and is therefore suitable for carrying out our experiments. All used software is open source, without licensing costs. First of all, in line with principle, we point out that the experimental comparison should not include the implementation of VNFs in classic always-active VMs, since this comparison would be not fair. In fact, keeping a VNF always active would clearly avoid the startup latency, at the cost of increasing the used resources significantly, but also leaves them practically unused. The procedure for scaling VMs, used to implement and replicate a given set of VNFs, up and down has a temporal timescale in the order of minutes, which is typically not compliant with intermittent services. This is what we want to avoid by using a serverless approach. As discussed in Section 2.1, in the case of serverless technologies, the startup latency of containers is also a well-known problem, which is termed a cold start [7]. Even if approaches based on AI can mitigate this issue, since they are based on statistical properties, they may either overestimate or underestimate the number of idle instances to be spawned in order to serve hypothetical future requests. In the first case, resources are over-provisioned, while in the second case, they would generate cold start events, with startup times in the order of several seconds (some experimental data are reported in Table 2 of Ref. [20], which refers to large scale measurements). In addition, containers have well-known security issues, and, to mitigate these, containers themselves are sometimes used within VMs (as in Figure 4). For these reasons, in this section, we will explore the performance of an alternative yet complementary solution, capable of limiting not only the resource footprint--and, thus, increasing the function density per node--but also reducing the start up time, thus making the cold start problem less critical. For this solution, it is important to evaluate whether its performance on traffic management capacity (measured using data plane key performance indicators, KPIs; that is, latency and packet losses) is in line with the typical requirements of IoT services. For completeness, we provide some comparative results in terms of data plane KPIs compared to either the same VNF implemented with a VM or a container in a VM, in order to show that our solution is not only comparable, but also more efficient than the state-of-the-art solutions. To accomplish these tasks, in our tests, we carried out two experiments.