# Whisper: Programmable and Flexible Control on Industrial IoT Networks
## 6 Evaluation
### Results
The number of messages of each solutions is shown in Figure 8a as the overall messages transmitted in both Test 1 and Test 2. For both SDN-WISE and IT-SDN, it is not possible to apply policies related with the scheduling (e.g., reliability, latency, etc.) since they cannot manage the MAC layer. For this reason, only routing related messages are considered for the three technologies. Figure 7: Latency when \(t\) changes its parent. (**a**) Test 1; (**b**) Test 2. In order to give an overview of the meaning of this overhead, we translate these values to charge consumed in the node's batteries (without counting the root). For Whisper, we use an accurate 6 TiSCH energy model [71] to calculate the energy consumed for both sending (139.57 \(\upmu\)C) and receiving (152.97 \(\upmu\)C) a packet in each node. For Contiki, we use simulations (2000 samples) to obtain the average consumption per packet for transmitting (419.12 \(\upmu\)C) and receiving (130.1 \(\upmu\)C) a packet. In order to illustrate these figures, each solution would consume the equivalent of two AA batteries (2000 mAh) only in signalling traffic in around 1 year (IT-SDN), 1.5 days (SDN-WISE) and 7.2 years (Whisper) when performing one switch as that described in Test 1 per minute. Finally, in order to analyze the scalability of Whisper's algorithms, we also simulate its application in a number of random topologies, with size ranging from 10 to 200. The networks are built and classified in two groups, one group \"_sparse networks_\" in which each node has at least one stable neighbor (PDR \(>\) 0.86) and a second group \"_dense networks_\" with at least three stable neighbors. This means that the \"_sparse networks_\" have a higher average hop count than the \"_dense networks_\" for all network sizes. Consequently, the average number of neighbors per node in the \"_dense networks_\" is higher. For every size, 100 different networks are tested; for every network, the Whisper's algorithms are run 10,000 times. In each test, we ask Whisper to change the parent of a randomly picked node from its current parent to a randomly picked new one. Results in Tables 4 and 5 show that switches can be performed without the need of a Whisper node in at least the 50% of all the cases considered. This percentage varies regarding the size of the network and its density. The smaller and denser the network, the less probable it is that a Whisper node is needed in order to perform the switch. On the other hand, larger networks with less density are more prone to needing a Whisper node. This is because the parent switches are most effectively performed when nodes have a higher number of neighbors since Whisper can better control the rank perceived in the target node. However, succeeding in triggering the parent switches without Whisper nodes comes at the cost of the signaling. The number of Primitives issued by Whisper per switch is between 1.5 and 3.8 on average in the _sparse networks_ and between 2.8 and 10 in the _dense networks_. This means that there is a trade-off between not using Whisper nodes (and hence having a higher signaling overhead) and using them (and reducing the Whisper signaling). The percentage of Primitive 1 messages are higher than Primitive 2 ones for small network sizes, and vice versa for larger networks. This is because the larger the network, the higher the coupling is between branches, so that more Primitive 2s have to be issued in order to enforce or stabilize the switch triggered by a Primitive 1. Finally, we note that the execution time of the algorithm is from a few microseconds to a few milliseconds for networks lower than 200 nodes. Higher computing times are expected in denser scenarios since more stack operations have to performed for identifying the constrain nodes. As a side note, computing time can vary significantly if optimization algorithms are used to calculate the primitives. Figure 8: Overall signalling messages sent and charge consumed only for signalling related with routing in each of the compared solutions.