LOADng-IoT: An Enhanced Routing Protocol for Internet of Things Applications over Low Power Networks
Abstract
:1. Introduction
- LOADng-IoT improves network QoS and reliability by increasing the packet delivery ratio and the reduction of end-to-end latency for the different message types exchanged by nodes in both dense and sparse IoT scenarios.
- It reduces the number of control messages required to construct routes among nodes, contributing to a more efficient network with lower overhead.
- LOADng-IoT reduces the amount of energy required to both build paths and route data messages, making the network more power efficient.
- It dispenses with the use of predefined Internet gateways since the Internet-connected nodes are sought on demand and can change according to their connection availability. This feature also removes the existence of a single point of failure (SPOF) for the connection of IoT devices with external Internet services.
- It presents a flexible solution, whereby parts of the proposal can be adopted according to the hardware capacities of the nodes.
2. Related Work
3. LOADng Protocol Overview
3.1. LOADng Functioning in Brief
3.2. LOAng Control Messages and Information Base
3.3. LOADng Route Discovery
3.4. LOADng Data Message Forwarding
3.5. SmartRREQ Enhancement for LOADng
4. Proposed LOADng Enhancement for IoT Networks
4.1. Considered IoT Applications and Network Model
4.2. Proposal Overview
4.3. LOADng-IoT Required Increments and New Features
4.4. Internet Route Discovery Process
4.5. Internet Route Cache for LOADng-IoT
4.6. Internet Lost Error Code for LOADng-IoT
4.7. LOADng-IoT Data Message Forwarding
5. Performance Evaluation and Results Analysis
- Grid Sparse Scenarios: the network nodes were organized in linear grids of nxn nodes. The simulated area grew together with the number of nodes. Thus, a fixed network density was maintained where the nodes had between two and four neighbors.
- Random Dense Scenarios: the different quantity of nodes was randomly deployed in an area of 200 square meters just once. Thus, the random deployments were the same for all compared proposals. The simulated area was the same for the different quantities of nodes. Hence, the network density grew with the increase in the number of nodes.
- Mobility Dense Scenarios: the nodes were deployed with the same positions of random dense scenarios in an area of 200 square meters. However, the nodes with an Internet connection was able to move in the whole area of the studied environment.
5.1. Packet Delivery Ratio
5.2. Average Energy Spent per Delivered Data Bit
5.3. Control Message Overhead per Delivered Data Message
5.4. Percentage of Packets with Low Latency
6. Conclusions and Future Works
Author Contributions
Acknowledgments
Conflicts of Interest
References
- Musaddiq, A.; Zikria, Y.B.; Hahm, O.; Yu, H.; Bashir, A.K.; Kim, S.W. A Survey on Resource Management in IoT Operating Systems. IEEE Access 2018, 6, 8459–8482. [Google Scholar] [CrossRef]
- Al-Fuqaha, A.; Guizani, M.; Mohammadi, M.; Aledhari, M.; Ayyash, M. Internet of things: A survey on enabling technologies, protocols, and applications. IEEE Commun. Surv. Tutor. 2015, 17, 2347–2376. [Google Scholar] [CrossRef]
- Hui, T.K.; Sherratt, R.S.; Sánchez, D.D. Major requirements for building Smart Homes in Smart Cities based on Internet of Things technologies. Future Gener. Comput. Syst. 2017, 76, 358–369. [Google Scholar] [CrossRef]
- Wollschlaeger, M.; Sauter, T.; Jasperneite, J. The Future of Industrial Communication: Automation Networks in the Era of the Internet of Things and Industry 4.0. IEEE Ind. Electron. Mag. 2017, 11, 17–27. [Google Scholar] [CrossRef]
- Kim, H.; Ko, J.; Bahk, S. Smarter Markets for Smarter Life: Applications, Challenges, and Deployment Experiences. IEEE Commun. Mag. 2017, 55, 34–41. [Google Scholar] [CrossRef]
- Catarinucci, L.; de Donno, D.; Mainetti, L.; Palano, L.; Patrono, L.; Stefanizzi, M.L.; Tarricone, L. An IoT-Aware Architecture for Smart Healthcare Systems. IEEE Internet Things J. 2015, 2, 515–526. [Google Scholar] [CrossRef]
- Díaz, M.; Martín, C.; Rubio, B. State-of-the-art, challenges, and open issues in the integration of Internet of things and cloud computing. J. Netw. Comput. Appl. 2016, 67, 99–117. [Google Scholar] [CrossRef]
- Tripathi, J.; De Oliveira, J.C.; Vasseur, J.P. Proactive versus reactive routing in low power and lossy networks: Performance analysis and scalability improvements. Ad Hoc Netw. 2014, 23, 121–144. [Google Scholar] [CrossRef]
- Alexander, R.; Brandt, A.; Vasseur, J.; Hui, J.; Pister, K.; Thubert, P.; Levis, P.; Struik, R.; Kelsey, R.; Winter, T. RPL: IPv6 Routing Protocol for Low-Power and Lossy Networks; Internet Engineering Task Force (IETF): Fremont, CA, USA, 2012. [Google Scholar]
- Clausen, T.; Yi, J.; Niktash, A.; Igarashi, Y.; Satoh, H.; Herberg, U.; Lavenu, C.; Lys, T.; Dean, J. The Lightweight on-Demand ad hoc Distance-Vector Routing pRotocol-Next Generation (LOADng); Internet-Draft draft-clausen-lln-loadng-15.txt; IETF Secretariat: Fremont, CA, USA, 2016. [Google Scholar]
- Clausen, T.; Yi, J.; Lavenu, C.; Lys, A.; Niktash, A.; Igarashi, Y.; Satoh, H. The LLN On-Demand Ad Hoc Distance-Vector Routing Protocol-Next Generation (LOADng); Internet-Draft draft-clausen-lln-loadng-00.txt; IETF Secretariat: Fremont, CA, USA, 2011. [Google Scholar]
- Yi, J.; Clausen, T.; Igarashi, Y. Evaluation of routing protocol for low power and Lossy Networks: LOADng and RPL. In Proceedings of the 2013 IEEE Conference on Wireless Sensor (ICWISE), Kuching, Malaysia, 2–4 December 2013; pp. 19–24. [Google Scholar]
- Sobral, J.V.V.; Rodrigues, J.J.P.C.; Saleem, K.; Al-Muhtadi, J. Performance evaluation of LOADng routing protocol in IoT P2P and MP2P applications. In Proceedings of the 2016 International Multidisciplinary Conference on Computer and Energy Science (SpliTech), Split, Croatia, 13–15 July 2016; pp. 1–6. [Google Scholar]
- Yi, J.; Clausen, T. Collection Tree Extension of Reactive Routing Protocol for Low-Power and Lossy Networks. Int. J. Distrib. Sens. Netw. 2014, 10, 352421. [Google Scholar] [CrossRef]
- Sasidharan, D.; Jacob, L. Improving network lifetime and reliability for machine type communications based on LOADng routing protocol. Ad Hoc Netw. 2018, 73, 27–39. [Google Scholar] [CrossRef]
- Sobral, J.V.; Rodrigues, J.J.; Kumar, N.; Zhu, C.; Ahmad, R.W. Performance Evaluation of Routing Metrics in the LOADng Routing Protocol. J. Commun. Softw. Syst. 2017, 13, 87–95. [Google Scholar] [CrossRef]
- Sobral, J.V.V.; Rodrigues, J.J.P.C.; Neto, A. Performance Assessment of the LOADng Routing Protocol in Smart City Scenarios. In Proceedings of the 2017 IEEE First Summer School on Smart Cities (S3C), Natal, Brazil, 6–11 August 2017; pp. 49–54. [Google Scholar]
- Hossain, A.K.M.M.; Sreenan, C.J.; Alberola, R.D.P. Neighbour-Disjoint Multipath for Low-Power and Lossy Networks. ACM Trans. Sen. Netw. 2016, 12, 1–25. [Google Scholar] [CrossRef] [Green Version]
- Araújo, H.d.S.; Filho, R.H.; Rodrigues, J.J.P.C.; Rabelo, R.d.A.L.; Sousa, N.d.C.; Filho, J.C.C.L.S.; Sobral, J.V.V. A Proposal for IoT Dynamic Routes Selection Based on Contextual Information. Sensors 2018, 18, 353. [Google Scholar] [CrossRef] [PubMed]
- Machado, K.; Rosário, D.; Cerqueira, E.; Loureiro, A.A.; Neto, A.; de Souza, J.N. A routing protocol based on energy and link quality for internet of things applications. Sensors 2013, 13, 1942–1964. [Google Scholar] [CrossRef] [PubMed]
- Aloi, G.; Caliciuri, G.; Fortino, G.; Gravina, R.; Pace, P.; Russo, W.; Savaglio, C. Enabling IoT interoperability through opportunistic smartphone-based mobile gateways. J. Netw. Comput. Appl. 2017, 81, 74–84. [Google Scholar] [CrossRef]
- Javaid, U.; Rasheed, T.; Meddour, D.; Ahmed, T. Adaptive Distributed Gateway Discovery in Hybrid Wireless Networks. In Proceedings of the 2008 IEEE Wireless Communications and Networking Conference, Las Vegas, NV, USA, 31 March–3 April 2008; pp. 2735–2740. [Google Scholar]
- Singh, D.; Kim, D. Performance Analysis of Gateway Discovery Techniques: IPv6-Based Wireless Sensor Networks. In Proceedings of the 2010 2nd International Conference on Evolving Internet, Valencia, Spain, 20–25 September 2010; pp. 142–146. [Google Scholar]
- Das, S.R.; Perkins, C.E.; Belding-Royer, E.M. Ad hoc On-Demand Distance Vector (AODV) Routing; Internet Engineering Task Force (IETF): Fremont, CA, USA, 2003. [Google Scholar]
- Clausen, T.; Yi, J.; Herberg, U. Lightweight On-demand Ad hoc Distance-vector Routing - Next Generation (LOADng): Protocol, extension, and applicability. Comput. Netw. 2017, 126, 125–140. [Google Scholar] [CrossRef]
- Yi, J.; Clausen, T.; Bas, A. Smart Route Request for on-demand route discovery in constrained environments. In Proceedings of the 2012 IEEE International Conference on Wireless Information Technology and Systems (ICWITS), Maui, HI, USA, 11–16 November 2012; pp. 1–4. [Google Scholar]
- Dunkels, A.; Gronvall, B.; Voigt, T. Contiki-a lightweight and flexible operating system for tiny networked sensors. In Proceedings of the 29th Annual IEEE International Conference on Local Computer Networks, Tampa, FL, USA, 16–18 November 2004; pp. 455–462. [Google Scholar]
- Bettstetter, C.; Santi, P.; Resta, G. The Node Distribution of the Random Waypoint Mobility Model for Wireless Ad Hoc Networks. IEEE Trans. Mob. Comput. 2003, 2, 257–269. [Google Scholar] [CrossRef]
- Aschenbruck, N.; Ernst, R.; Gerhards-Padilla, E.; Schwamborn, M. BonnMotion: A Mobility Scenario Generation and Analysis Tool. In Proceedings of the 3rd International ICST Conference on Simulation Tools and Techniques, Malaga, Spain, 16–18 March 2010; ICST (Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering): Brussels, Belgium, 2010; pp. 1–10. [Google Scholar]
- Kim, Y.; Shin, H.; Cha, H. Y-MAC: An Energy-Efficient Multi-channel MAC Protocol for Dense Wireless Sensor Networks. In Proceedings of the 2008 International Conference on Information Processing in Sensor Networks (IPSN 2008), St. Louis, MO, USA, 22–24 April 2008; pp. 53–63. [Google Scholar]
RREQ Message | |
---|---|
Field | Description |
addr-length | Defines the length of the addresses used by originator and destination nodes |
seq-num | Indicates the sequence number that uniquely identifies each message generated by the originator node |
metric-type | Determines the type of metric used by the message originator node |
route-metric | Defines the value of the route metric of the path |
hop-count | Indicates the number of hops that the message has traversed |
hop-limit | Indicates the maximum number of times that a message can be forwarded |
originator | Specifies the address of the message originator |
destination | Specifies the address of the message destination |
RREP Message (contains the same fields as RREQ plus the above) | |
Field | Description |
ackrequired | Indicates the necessity of generating an RREP_ACK when be received |
RREP_ACK Message | |
Field | Description |
addr-length | Defines the length of the addresses used by originator and destination nodes |
seq-num | Indicates the sequence number of the RREP messages that was triggered the generation of the RREP_ACK |
destination | Specifies the address of the message destination |
RERR Message | |
Field | Description |
addr-length | Defines the length of the addresses used by originator and destination nodes |
errorcode | Indicates the error code of the message |
unreachableAddress | Specifies the address of the node unable to be reached |
originator | Specifies the address of the message originator |
destination | Specifies the address of the message destination |
hop-limit | Indicates the maximum number of times that a message can be forwarded |
Routing Set | |
---|---|
Field | Description |
R_dest_addr | Indicates the address of the route destination |
R_next_addr | Indicates the address of the next hop in the path to the route destination |
R_metric | Specifies the value of the metric computed for the path to the destination nodes |
R_metric_type | Determines the route metric used to compute the metric value |
R_hop_count | Specifies the number of hops to the route destination |
R_seq_num | Indicates the sequence number of the control message used to generate the entry in the set |
R_bidirectional | Indicates if the message is bidirectional |
R_local_iface_addr | Specifies the communication interface used to reach the route destination (used only when a node has more than one interface) |
R_valid_time | Specifies the length of time the entry is considered valid in the set |
Blacklisted Neighbor Set | |
Field | Description |
B_neighbor_address | Indicates the address of the blacklisted neighbor |
B_valid_time | Specifies the length of time the entry is considered valid in the set |
Pending Acknowledgement Set | |
Field | Description |
P_next_hop | Indicates the address of the node that the RREP was sent |
P_originator | Indicates the address of the RREP originator |
P_seq_num | Defines the sequence number of the sent RREP |
P_ack_received | Determines whether the pending RREP_ACK was received |
P_ack_timeout | Specifies the length of time the entry is considered valid in the set |
RREQ and RREP | |
---|---|
Field | Description |
iot | Indicates that the RREQ or RREP message is *-IoT; when used in RREQ, indicates that the originator is searching for an Internet node; when used in RREP, indicates that the originator has an Internet connection. |
Routing Set | |
Field | Description |
R_Internet_conn | Indicates the address of the blacklisted neighbor |
Internet Route Cache | |
---|---|
Field | Description |
RC_dest_addr | Specifies the address of the destination removed from the Routing Set |
RC_next_hop_addr | Specifies the address of the next hop to reach the destination removed from the Routing Set |
Configuration Parameters | |
Field | Description |
R_INTERNET_HOLD_TIME | Defines a valid time to an Internet route entry in the Routing Set |
USE_INTERNET_ROUTE_CACHE | Specifies if the node uses the IRC mechanism |
NUM_ROUTE_CACHE_ENTRIES | Indicates the number of entries supported in the IRC |
Error Code | |
Field | Description |
INTERNET_CONN_LOST | Indicates the impossibility of forwarding a data message to the Internet due to lost; the error code is 253. |
Parameter | Value |
---|---|
Network Area | 150∼280 m2 |
Number of Nodes | 16∼64 |
Num. of Internet-connected Nodes | 2∼6 |
Simulation Time | 600 s |
Radio Environment | Unit Disk Graph Model (UDGM)-Distance Loss |
Transmission Range | 50 m |
Interference Range | 50 m |
TX and RX Chance | 90% |
Data Message Frequency | 10 s∼15 s |
Data Message Length | 512 bits |
Traffic Pattern | P2P and MP2P |
Medium Access Control (MAC) Protocol | Carrier Sense Multiple Access (CSMA) |
Radio Duty Cycle (RDC) Protocol | ContikiMAC |
Check Channel Rate (CCR) | 16 Hz |
Parameter | Value |
---|---|
Mote Type | Tmote Sky |
Radio | CC2420 |
Max. Transmission Power | 31 dBm |
Supply Voltage | 3.6 v |
TX Current Consumption | 21.0 mW |
RX Current Consumption | 23.0 mW |
Low Power Mode (LPM) Current Consumption | 1.2 mW |
CPU Current Consumption | 2.4 mW |
Parameter | Value |
---|---|
Mobility Model | Random Waypoint |
Mobility Area | 200 m2 |
Max. Speed | 3 m/s |
Min. Speed | 1 m/s |
Max. Pause Time | 60 s |
Min. Pause Time | 0 s |
Parameter | Value |
---|---|
NET_TRANSVERAL_TIME | 2 |
RREQ_RETRIES | 1 |
RREQ_MIN_INTERVAL | 2 |
R_HOLD_TIME | 60 |
MAX_DIST | 65,535 |
B_HOLD_TIME | 4 |
MAX_HOP_LIMIT | 255 |
RREQ_MAX_JITTER | 1 |
RREP_ACK_REQUIRED | FALSE |
USE_BIDIRECTIONAL_LINK_ONLY | FALSE |
RREP_ACK_TIMEOUT | 2 |
MAX_HOP_COUNT | 255 |
NUM_RS_ENTRIES | 8 |
NUM_BLACKLIST_ENTRIES | 16 |
METRIC_TYPE | HOP_COUNT |
Parameter | Value |
---|---|
R_INTERNET_HOLD_TIME | 120 |
USE_INTERNET_ROUTE_CAHCE | TRUE |
NUM_ROUTE_CACHE_ENTRIES | 2 |
© 2019 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Sobral, J.V.V.; Rodrigues, J.J.P.C.; Rabêlo, R.A.L.; Saleem, K.; Furtado, V. LOADng-IoT: An Enhanced Routing Protocol for Internet of Things Applications over Low Power Networks. Sensors 2019, 19, 150. https://doi.org/10.3390/s19010150
Sobral JVV, Rodrigues JJPC, Rabêlo RAL, Saleem K, Furtado V. LOADng-IoT: An Enhanced Routing Protocol for Internet of Things Applications over Low Power Networks. Sensors. 2019; 19(1):150. https://doi.org/10.3390/s19010150
Chicago/Turabian StyleSobral, José V. V., Joel J. P. C. Rodrigues, Ricardo A. L. Rabêlo, Kashif Saleem, and Vasco Furtado. 2019. "LOADng-IoT: An Enhanced Routing Protocol for Internet of Things Applications over Low Power Networks" Sensors 19, no. 1: 150. https://doi.org/10.3390/s19010150