The Internet of Things (IoT) is shaping the future of Computer Networks and Computing in general, and it is gaining ground very rapidly. The whole idea has originated from the pervasive presence of a variety of things or objects equipped with the internet connectivity. These devices are becoming cheap and ubiquitous, at the same time more powerful and smaller with a variety of onboard sensors. All these factors with the availability of unique addressing, provided by the IPv6, has made these devices capable of collaborating with each other to accomplish common tasks. Mobile AdHoc Networks (MANETS) and Wireless Sensor Networks (WSN) in particular play a major role in the backbone of IoT.
Routing in Wireless Sensor Networks (WSN) has been a challenging task for researchers in the last several years because the conventional routing algorithms, such as the ones used in IP-based networks, are not well suited for WSNs because these conventional routing algorithms heavily rely on large routing tables that need to be updated periodically. The size of a WSN could range from hundreds to tens of thousands of nodes, which will make routing tables size very large. Managing large routing tables is not feasible in WSNs due to the limitations of resources. The directed diffusion algorithm is a well-known routing algorithm for Wireless Sensor Networks (WSNs).
The directed diffusion algorithm saves energy by sending data packets hop by hop and by enforcing paths to avoid flooding. The directed diffusion algorithm does not attempt to find the best or healthier paths (healthier paths are paths that use less total energy than others and avoid critical nodes). Hence the directed diffusion algorithm could be improved by enforcing the use of healthier paths, which will result in less power consumption. We propose an efficient routing protocol for WSNs that gives preference to the healthier paths based on the criteria of the total energy available on the path, the path length, and the avoidance of critical nodes. This preference is achieved by collecting information about the available paths and then using non-incremental machine learning to enforce path(s) that meet our criteria.
In addition to preferring healthier paths, our protocol provides Quality of Service (QoS) features through the implementation of differentiated services, where packets are classified as critical, urgent, and normal, as defined later in this work. Based on this classification, different packets are assigned different priority and resources. This process results in higher reliability for the delivery of data, and shorter delivery delay for the urgent and critical packets.
This research includes the implementation of our protocol using a Castalia Simulator. Our simulation compares the performance of our protocol with that of the directed diffusion algorithm. The comparison was made on the following aspects:
1. Energy consumption
2. Reliable delivery
3. Load balancing
4. Network lifetime
5. Quality of service
Simulation results did not point out a significant difference in performance between the proposed protocol and the directed diffusion algorithm in smaller networks. However, when the network’s size started to increase the results showed better performance by the proposed protocol.
INTERNET OF THINGS
Figure 1 shows the general components of the IoT system. Things could be identified through scanning their tag IDs, thus communicating the location of the thing. Networked things fitted with sensors and an actuator can interact with the environment, sending data to higher services. Smart things can sense activities and collect data, linking them to the IoT.
WIRELESS SENSOR NETWORKS
Sensing is the process of collecting data from the physical world (like temperature) by using sensors. Figure 2 shows the details of the sensing process.
The design goal in WSNs is to develop small, cheap, and energy efficient nodes. These design goals will limit the hardware capabilities of the nodes. For example, the nodes cannot have GPS systems that will force the designers to use alternative approaches to determining nodes position. Also, the memory size will be modest, which will not allow storing huge routing tables, thus affecting the design of routing protocols.
Figure 6 shows an example of a cross-layer design framework with information exchange between layers. The link layer transmits the links status to the MAC layer. The MAC layer, based on the information passed to it from the link layer, assigns time slots among nodes. The links capacities are shared from the MAC layer to the network layer, which uses this information to make routing decisions that minimize congestion.
As shown in Figure 11, a shared database could be used to exchange information between layers instead of direct communications. The shared database acts as a new layer that provides storage services to all other layers. Although this approach elevates the extra packets design, it adds the overhead of managing the database.
Once an application has been described by using this naming approach, the interest must be diffused through the sensor network. This process is shown in Figure 13. A sink node periodically broadcasts an interest message to its neighbors, which continue to broadcast the message throughout the network. Each node establishes a gradient toward the sink node, where a gradient is a reply link toward the neighbor from which the interest was received.
This algorithm is based on a fixed topology, namely the hexagonal-mesh. This choice was made based on the assumption that nodes have low-mobility in the network. As a result, this algorithm is not suitable for networks with mobile nodes. To be able to build the hexagonal-mesh, sensor nodes must have a fully-functional Global Position System (GPS) receiver, to logically determine the coordinate position.
Understanding the mechanism of solar cells and their rechargeable cycles could be an important factor in improving routing decisions. A photo voltaic cell is a solar device that converts light into electrical energy through the photo voltaic reaction as shown in Figure 20. Most solar cells are made from silicon with high efficiency and low cost.
As can be seen in Figure 21, manufacturing small devices in the size of sensor nodes became reality. A example of that reality is cell phones. Additionally, the latest advances in solar cell technology allow a charging efficiency of 70%. As mentioned in the “Photonics Spectra” magazine in the May 2012 issue: “With a slightly more complex solar cell, it becomes possible to convert all colors of the light from the sun to electricity, and an efficiency of up to 70 percent is achievable”.
QUALITY OF SERVICE (QOS)
QoS is the overall performance experienced by users when using a networking system. To be able to measure the quality of service, several characteristics are usually measured, such as error rates, bit rate, throughput, delay, availability, and more.
In this example, the energy levels of all the nodes are close to each other so preference will be given to the shortest path available.
In this example, the energy levels of all the nodes are not close to each other where node D has a very low level of energy compared with the rest of the nodes (so it is a critical node) so preference will be given to paths not containing node D.
SIMULATION AND RESULTS
Figure 38 shows the simulation results comparing the total energy consumption for both directed diffusion and the proposed protocol.
Figure 49 shows the simulation results comparing the average arrival delay of urgent packets once using single service and again using differentiated services.
Designing routing algorithms for Wireless Sensor Networks (WSNs) is a challenging task due to the nature of WSNs. WSNs nodes are generally limited in energy and computation power beside the instability of wireless links. In this research, a routing protocol was presented that falls under the flat-structure category. The protocol uses a non-incremental machine learning technique to give preference to healthier and shorter paths, which will result in less energy consumption, more reliable delivery of data, better load balancing, and longer network life.
In addition to preferring healthier paths, our protocol provides QoS features through implementing differentiated services, where packets are classified as critical, urgent, and normal. Based on this classification, different packets are assigned different priorities and resources. This results in a more reliable delivery and less delay for urgent and critical packets. The proposed protocol achieves its objectives by collecting data about the available paths through a special data collection stage. The collected data are used to choose the best path using a mathematical formula based on merit criteria.
Source: University of Wisconsin-Milwaukee
Author: Kamil Samara