# DTN Trustworthiness for Permafrost Telemetry IoT Network
## 6 Results  
After performing all the simulations, the average value of the \(STR\) was calculated for every set of 30 runs per test. The results obtained have a maximum error deviation of 0.68% with a confidence interval of 99%. Three different operational modes for the telemetry service can be identified: the standard mode, the redundancy mode with social trustworthiness layer, and the redundancy mode with consensus layer. For every mode, an N \(\times\) M-dimension grid with all the possible combinations of stimulation parameters is formed, where M is the number of different \(Pb_{0}\) values, and N is the number of different GTN-P node combinations per gateway. For every point in this grid and for every transport protocol, the average value of the trustworthiness \(STR\) metric is computed. If we link all the \(STR\) values for every neighboring point in the grid, a mesh with all the \(STR\) values for each transport protocol is formed. We call this mesh the trustworthiness mesh. Given that it is complex to understand the trustworthiness mesh results, we first use an example to describe how the results are visualized. If we wanted to represent the results for only one transport protocol, when the number of redundant sensors per cluster is 1, and the number of clusters varies from 8 to 4096 (Table 2, row 9) we could obtain a mesh similar to Figure 7a. The \"Byzantine Fault Probability\" axis has nine discrete points, corresponding to the nine different \(Pb_{0}\) values shown in Table 2, row 4. The \"Redundant Sensors \(\times\) Sensor Clusters\" axis has 10 discrete points, which are 1 \(\times\) 2N, where N = [3, 4,..., 12], according to the values shown in Table 2, row 9. Figure 7a shows the general behavior that \(STR\) values will follow in the actual results. On the one hand, across the \"Byzantine Fault Probability\" axis, the \(STR\) decreases as the \(Pb_{0}\) increases, given that more values are faulty sensed when the \(Pb_{0}\) is higher. On the other hand, across the \"Redundant Sensors \(\times\) Sensor Clusters\" axis, the \(STR\) decreases as the number of clusters increases, given that more devices are introduced to the network, provoking more packet losses caused by network congestion. Similarly, suppose we wanted to show, in a single mesh, the results from the same scenario, but the number of redundant sensors per cluster varied between 1 and 2. In that case, we could obtain a mesh similar to Figure 7b. In this case, the \"Byzantine Fault Probability\" axis remains the same. In contrast, now the \"Redundant Sensors \(\times\) Sensor Clusters\" axis has 20 discrete points, which are [1 \(\times\) 2N, 2 \(\times\) 2N] where N = [3, 4,..., 12]. If all the discrete points of this axis were labeled, it could be too congested. For this reason, we only label the beginning of each \"redundant sensors\" series, i.e., the \"1 \(\times\) 8\" and the \"2 \(\times\) 8\" discrete points. The same behavior as before is observed, but now the \(STR\) values recover when we jump from the \"1 \(\times\) 4096\" to the \"2 \(\times\) 8\" discrete point, given that much fewer nodes are introduced to the network, i.e., fewer packets are dropped due to network congestion. Analogously, Figure 7c shows the trustworthiness mesh if we wanted to visualize all the results simultaneously, varying the number of redundant sensors from 1 to 10 (Table 2, row 10). In this case, the \"Redundant Sensors \(\times\) Sensor Clusters\" axis has 100 discrete points, which are [1 \(\times\) 2N, 2 \(\times\) 2N,..., 10 \(\times\) 2N] where N = [3, 4,..., 12]. In this case, we observe the same general behavior again. However, now we can also detect that, if we compare the discrete points with the same number of clusters, the _STR_ also decreases as the number of redundant sensors per each cluster increases, i.e., more packet losses are caused by network congestion as more nodes are introduced to the network.