## 4 Evaluation and Benchmarking
### Edge Data Processing Evaluation  
The data packets were now delivered to the Tergo nodes, the second part of the edge processing layer (EPL-B). First, we were interested in evaluating the overall performance of the layer to reduce effectively the volumes of data collected from the sensors and thus reduce the overall dependence on the cloud back-end services. We measured the volume of data in terms of Input/Output (I/O) operations induced for each part of the processing, as described in Section 3.3. We measured the latency of the processing pipeline and the resulting processing rate in terms of time required to process each individual data packet. We used these measurements to identify the minimum processing capabilities required in the real-world deployment. Three different hardware platforms were used to evaluate the performance of the Tethys fog computing hierarchy. For the edge-based processing Sub-layer B, we used two different off-the-shelf single-board devices. We also included a standard Intel-based processor that is commonly available in cloud provider infrastructures in order to compare the performance of the edge-based processing layer, if it was reallocated to the cloud processing layer. The available computational, memory and storage capabilities of the three different units are described in detail in Table 3. We bundled the software components using different Docker containers so that the same configuration parameters and software versions were deployed on each device. As indicated in Table 3, the Raspberry PI Tergo node provided a single core for execution. For this reason, we configured the Docker containers to use only one core throughout all three platforms. In the pilot deployment, a total of 21 smart metering devices was installed with an average of two devices per building [40]. For each building, we deployed one Mox node controlling the devices of the corresponding building. Each smart metering device transmitted every 60 min several sensor readings. Throughout the duration of the pilot operation, a total of 164,343 messages containing sensor readings was generated. All the messages containing sensor readings that were collected during the pilot operation were stored in a way that allowed us to replay the network traffic. Such network traffic replay allowed us to evaluate the performance of the system under different operating parameters. In particular, we could inject into each Mox node those messages that corresponded to the smart metering devices located on the same building. We could, therefore, evaluate the overall performance of the system by examining different message generation rates. For example, we increased the message generation rate of each device to 12 messages per second, about 20 times higher than the actual requirements of the real-world \begin{table}
\begin{tabular}{c c c c} \hline \hline \multirow{2}{*}{**Location**} & **Expected** & **Received** & **(\%)** \\  & **Packets** & **Packets** & **(\%)** \\ \hline
1 & 69,120 & 67,456 & 98 \\
2 & 69,120 & 61,367 & 89 \\
3 & 69,120 & 67,162 & 97 \\
4 & 69,120 & 65,954 & 95 \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Percentage of received packets based on the manufacturer’s setting for hourly broadcasts. \begin{table}
\begin{tabular}{c c c c} \hline \hline  & **Tergo** & **Tergo** & **Tethys** \\  & **Raspberry** & **Zotac** & **Tethys** \\ \hline Processor & BCM2836 Arm7 & Intel i3-3120M & Intel E5-2630V4 \\ Frequency & 900 MHz & 2.2 GHz & 2.2 GHz \\ Cores & 1 & 2 & 6 \\ Memory & 736 MB & 8 GB & 24 GB \\ Disk & 64 GB & 120 GB & 600 GB \\ Type & SD Card class10 & SSD & SSD \\ \hline \hline \end{tabular}
\end{table} 
Table 3: Technical specifications of edge devices. deployment. In this way, we could evaluate the performance of each different type of edge-based processing device under increased load. We started the experimentation by measuring the network performance of the fog computing-based deployment.