# CONE: A Connected Dominating Set-Based Flooding Protocol for Wireless Sensor Networks
## 3 Design and Implementation of CONE
### Flooding Protocol
The maximal hop distance of a network is the minimal number of hops needed to distribute packets from the initiator (source of information) to all other nodes in the network (i.e., covering the whole network). Each test runs for ten minutes. During those ten minutes, an initiator broadcasts one packet in every 15 seconds. CONE uses the first 90 seconds to construct a CDS. #### 4.1.2 Results

Figure 12 illustrates the CDSs which have been constructed by CONE during our simulations. The green nodes represent the dominators. Due to the arrangement of nodes, the network contains several nodes that have similar sets of neighbors with the highest degree in their local neighborhood. Since nodes elect dominators with the lowest known ID, the intersection of two or more similar sets of neighbors does not collectively elect one dominator. This causes a larger set size for the constructed CDSs in all three scenarios. As shown in the figure, with a lower network density (see Figure 12a), CONE requires 55 dominator nodes so as to cover the whole network. While with a higher network density (see Figure 12b,c), CONE needs much fewer dominators, i.e., 23 and 19, respectively. This indicates that CONE is able to decrease the number of nodes (dominators) that are responsible for broadcasting, in order to reduce broadcast redundancy and improve energy efficiency accordingly. The 9-hop scenario in Figure 12a has overall the largest number of dominators, since the network diameter is the largest one. Furthermore, the number of dominators of the 3-hop scenario in Figure 12c is larger than in the one of the 5-hop scenario in Figure 12b. The larger number of dominators in the 3-hop scenario occurs because we limit the degree of nodes in our implementation. Otherwise, nodes would spend too much time in order to exchange their degrees. The degree limit causes a larger number of nodes with the highest degree in their local neighborhood that also have similar sets of neighbors. Figure 12: Constructed CDSs of three different network densities in simulations. The dominators are colored in green. Links between nodes are not illustrated due to their large number. A larger hop distance represents a smaller density of the network. Therefore, a network with a larger hop distance is required to have more dominators to cover the whole network. (**a**) Maximal hop distance: 9 hops. (**b**) Maximal hop distance: 5 hops. (**c**) Maximal hop distance: 3 hops. CONE, in all scenarios, on average causes a smaller RDC and less packet loss compared to the baseline protocol (see Figures 13 and 14). This means that CONE is able to effectively decrease packet loss by exploiting a CDS for network flooding. The nodes with the highest RDC in the scenarios from Figure 12b,c also have a smaller RDC, if we compare CONE and Trickle (see Figure 13). However, the node with the highest RDC in the scenario from Figure 12a has a slightly higher RDC for CONE. However, higher RDCs occur only for dominators. Due to the lower number of nodes broadcasting packets in CONE, dominators receive packets more often compared to nodes in Trickle. This is shown in Figure 14. Additionally, dominators have to rebroadcast packets more often, which results in higher RDCs. However, the average RDC for CONE is still smaller compared to Trickle in the scenario of Figure 12a. ### Experiments in the Testbed

To evaluate the energy consumption of CONE in a real-world scenario, we employ the FlockLab testbed introduced in [12]. The topology of sensor nodes in FlockLab is shown in Figure 15. FlockLab provides us with the average current consumption (in milliampere (mA)) of each individual node. Figure 14: Comparison of average packet loss of nodes due to MAC contention. Figure 13: Comparison of average (radio) duty cycles in simulations. #### 4.2.1 Setup

Our experiments in FlockLab use 22 nodes, since we observed that only 22 of the 25 nodes were available during all experiments. Each test runs for ten minutes.