## 4 Experimental Materials
### Description of IoT-LAB testbed  
We used a set of 140 M3 nodes from IOT-LAB wireless sensor testbed to conduct experiments by introducing a static multi-hop AMI network, which consists of n smart meter nodes and one gateway node. The root node was chosen to be in the middle of the network, as the nodes positions affect the total time consumed by all nodes to join the RPL DODAG. During experiments, the Contiki operating system is used to program the wireless sensor nodes as it's designed for low power and lossy networks. Monitoring and controlling nodes are done using Foren6 [29] that is considered as the network monitoring tool developed specially for IOT-LAB testbed. IoT-LAB is a very large-scale testbed suitable for experiment and tests tiny wireless sensor nodes and communicating objects. IoT-LAB infrastructure is located at six sites in France and allows controlling access to 2728 sensor nodes. In this paper, a subset of 140 nodes of Lille-Nord Europe site was used. Lille-Nord Europe is consisting of 332 Cortex-M3 open nodes uniformly deployed over a 225 m2 area as nodes dispatched on wooden poles and ceiling. Lille testbed is deployed over the three floors of Inria building, through corridors, offices, storage or meeting rooms. In Figure 4 Lille physical topology over the ceiling and wooden pools are expressed as nodes deployed on the ceiling over a 1.20 m \(\times\) 1.20 m grid, at 9.6 m high and hanged vertically on the poles at an overall height of 7.60, 8.50 and 9.40 m. In IoT-LAB testbed there are various node types like an open node, a gateway node, and control node. Both control and gateway are used to monitor and control the open node by monitoring the power consumption and select the power supply during experiments. While the open node is totally open and fully accessed by the user (e.g., any operating system can be loaded, compiled and debugged). The gateway node can handle, control and gather open node sensors' information through a serial link. In this study, a new generation of open nodes called M3 is used with the addition of a combination of the control node and gateway node on the same ship called the host node. Table 1 summarizes components of M3 open node and host node for more details consults M3 cortex node datasheet [30]. The IoT-LAB testbed experiment steps are summarized as follows:  
* Flash up sensors nodes with the Contiki binary images and control nodes using their serial lines. In this study, three types of firmware have been compiled to flash the nodes up (e.g., Root node, Collector node, and Client); all of them are compiled with the appropriate parameters and saved to binary images which can be uploaded to the nodes. * The position of nodes is very important as the border router should be in the middle of the experiment area and the collector nodes (sniffing nodes) must be positioned to have the ability to sniff and monitor all nodes traffic. * Sensor nodes are accessed directly using web access over IPv6 from the local machine by using a local Contiki Tunslip6. * Tunneling process is very important to access the IPv6 network of IoT-LAB testbed within internet and other IPv4 networks
* Tunslip6 is used to bridge IPv6 network into IPv4 network and vice versa by creating a virtual interface (TUN) and uses a Serial Line Internet Protocol (SLIP) to encapsulate and pass the IP traffic to the other side of the serial line. Figure 5 shows the IoT-LAB testbed experiments steps. * This testbed study is limited to use fixed nodes with only one border router and one RPL instance. * IOT-LAB testbed allows users to control and monitor the running experiments through serial lines of nodes with the addition to diagnostic tool Foren6. * Foren6 is a 6 LowPan network analysis tool provided by the Belgian research center CETIC to capture RPL traffic and render the network state in a graphical user interface.