# La-CTP: Loop-Aware Routing for Energy-Harvesting Wireless Sensor Networks
## 6 Evaluation
### Experimental Settings and Methodologies  
Figure 7 shows the node deployment of our testbed, in which 100 nodes are placed in the grid with the interval of about 20 cm and all of them transmit data with a low power (\(-15\) dBm) for the purpose of forming a multihop network. All the nodes are connected, through their on-board USB interfaces, to a USB hub that is powered by the alternating current (AC) of 220 V. By connecting this hub with a PC, furthermore, we can make each node send its runtime information to the PC for storage and subsequent analysis. Besides of transferring the data from the nodes to the PC, the AC-powered USB hub can supply energy source for all the nodes such that they can keep working or need no recharging at all. To simulate the operation of EH-WSNs, therefore, we pick out part nodes (called the EH-nodes) and let them work with two alternate statuses: the _working status_ and the _recharging status_. In the working status, the EH-node can participate into the network operation, including the packet generation, the packet reception, and the packet forwarding. In addition, it can record its runtime debugging logs and send them to the PC. In the recharging status, however, the EH-node does nothing except maintaining an alarm clock; when the alarm clock goes off, this EH-node will switch into the working status immediately. The nodes other than EH-node are called normal nodes, which are always in working status. We added customized debugging codes in both the source files of CTP and La-CTP. Therefore, we can record every critical operation (debugging information) of these two protocols we were concerned with, and then we can precisely know what happened, though after experiments. Our experiments were carried out under three types of network deployments, which are denoted and explained below. For each scenario, the node numbered 1 was the sink that collected the packets from all the other nodes and transmitted them to the PC for storage. * noEH: this experiment included 50 nodes with numbers from 1, 2, and up to 50, and all the nodes in use were normal nodes, i.e., without any EH-nodes involved. All noEH nodes were powered by the USB wire. * EH1: this experiment included 50 nodes with numbers from 1, 2, and up to 50, and only the nodes within region I of Figure 7 were EH-nodes. All EH1 nodes were powered by the USB wire. * EH2: this experiment included all the 100 nodes and the nodes within regions II, III, and IV of Figure 7 were all EH-nodes. All EH2 nodes were powered by the USB wire. * AllEH: this experiment included all the 100 nodes and node 1 still served as the sink. Specially, each of the nodes except node 1 was powered by two AA batteries. Figure 7: Deployment of the testbed involving 100 TelosB nodes. Node 1 is the sink node that collects the data generated by the other nodes. In EH1 and EH2, we placed the EH-nodes in the middle part of the network area, in order to form such a network topology: it is close to be physically separate due to the existence of energy-harvesting nodes, while being able to keep connected for those normal nodes. By doing so, we can examine the performance that the routing protocol deals with the loops in relatively extreme cases. In experiments of EH1 and EH2, after the EH-node wakes up, it will stay in working status for 120 s and then enter the recharging status. The communication module and sensors of EH-node will be shut down for a period randomly chosen from 120 s to 150 s, in order to mimic the actual recharging process with uncertain powers. In scenarios noEH, EH1, and EH2, the packet generation rate was set to be 0.1 Hz and each experiment ran 30 min. Different from scenarios EH1 and EH2, scenario AllEH was designed to simulate an EH-WSN topology that might be transiently partitioned at runtime because of the existence of too many EH-nodes. We conducted the AllEH experiments with following configurations.