Mobility Aware Duty Cycling Algorithm (MADCAL) A Dynamic Communication Threshold for Mobile Sink in Wireless Sensor Network †
Abstract
:1. Introduction
- Methodology. An adaptive communication threshold has been proposed in this new version to provide self-adaption to the changes of other network parameters.
- Algorithm. Both algorithms for the determination of a communication threshold are now described line by line in detail. Improvements, including new functionality, have been added to and highlighted in the second part of the MADCAL algorithm.
- Test scenarios. In this journal version we utilise both a random topology and the one grid topology involved in the conference paper to demonstrate the effectiveness of MADCAL even when the topology is not controlled. As such a more comprehensive evaluation is now delivered and test results are doubled in comparison with that of the conference paper. In addition, related work has been reviewed and classified in Section 2.
2. Related Work
2.1. Network Improvements with Sink Mobility
2.2. Mobile Sink Node Optimal Path
2.3. Mobile Sink Nodes and Delay
3. Mobility-Aware Duty Cycling
3.1. Beacon Messaging
3.2. Significant Nodes
3.3. Mobility Pattern
3.4. Network Topology
3.5. MAC Implementation
3.6. Network Properties
- Static node positions are constant throughout.
- Static nodes are aware of their own location.
- Static nodes are unaware of the location of neighbouring nodes, each node implements the MADCAL algorithm independently.
- Node power levels are consistent.
- Interference ranges, though variable across tests, are consistent across static nodes and the MSN.
- Sink speed shall not be less than 2 mps or greater than 40 mps.
3.7. Simulation Parameters
3.8. Network Layer
4. Mobility Aware Duty Cycling Algorithm (MADCAL)
4.1. The Communication Threshold
Algorithm 1 Communication threshold. |
|
- Lines 1–3—initialisation. The MSN speed is set from input (2, 10, 20, or 40 mps), significant node not established yet.
- Line 4—the interference distance, interDist, of the node is calculated as per the algorithm previously stated.
- Lines 5–7—the circumference of the circular path of the MSN is calculated, with the coordinates of the start point of the MSN set from input as firstSinkPos. Based on the sink start point, the quartile of the circle the sink initially resides in is calculated as firstSinkQuartile. These quartiles can be described as north–west, north–east, south–west, or south–east.
- Line 8—the shortest distance from the node to the circular path of the MSN is calculated as distToCircle.
- Lines 9–11—if the distance to the circular path is less than the node interference distance, then the node is deemed to be significant, in that it shall be able to communicate directly with the MSN at some point.
- Lines 12–14—coding relevant to significant nodes. The coordinates of the closest point to the circular path from the node are calculated as circlePoint, and the quartile in which the circlePoint resides calculated as nodeQuartile.
- Line 15—the distance between firstSinkPos and circlePoint in a straight line is calculated as distanceBetweenPoints.
- Line 16—calculate the angle of the circlePoint as angleOfNode, between 0 and 360 degrees, with zero the farthest east point of the circle and default starting point for the sink, although a zero sink start point is not compulsory. Calculation based initially on the firstSinkQuartile and nodeQuartile in order to ascertain the angle between sink start point and circlePoint.
- Lines 17, 18—thresholdAfter is set to true in order that the coordinates of the threshold after the circlePoint may be calculated. The coordinates of the threshold after the circlePoint are calculated as sinkThresholdAfter using the establishThreshold function.
- Lines 19, 20—thresholdAfter is set to false in order that the coordinates of the threshold before the circlePoint may be calculated. The coordinates of the threshold before the circlePoint are calculated as sinkThresholdBefore using the establishThreshold function.
- Line 21—calculate the distance in a straight line between the two threshold coordinates, before and after, as thresholdDistance.
- Lines 22, 23—calculate the quartile in which sinkThresholdBefore is located as beforeQuartile, followed by the coordinates of the opposite point to the threshold as thresholdOpposite, for use later in determining the sink position in relation to the node.
- Lines 24, 25—the end of both coding only relevant to significant nodes and the initialisation procedure.
- Line 26—start of the function to establish the coordinates of the communication threshold, inputting the radius of the circular path and whether the coordinates to be calculated are before or after the circlePoint. The threshold point is based upon a combination of node location and the point at which communication with the sink should no longer be possible, based on interference distance.
- Line 27—calculate the distance from the centre of the circle to the static node as nodeDist.
- Lines 28–30—calculate the angle of the circle centre to the furthest point of communication, and the circle centre to the node.
- Line 31—in order to avoid excessively large thresholds, determine a factor by which this angle should be reduced based upon distToCircle divided by interDist.
- Lines 32–38—establish a factor check based upon the speed of the MSN. The faster the sink speed may be, the more the angle of the threshold may be reduced by.
- Lines 39–41—if the factor calculated is less than the factor check then the factor check value becomes the factor.
- Line 42—the value of the angle of the threshold is multiplied by the factor in order to reduce it accordingly.
- Lines 43–48—if sinkThresholdAfter is being calculated then the angle calculated is added to angleOfNode, otherwise the angle is subtracted from angleOfNode. This results in threshAngleDegrees. The threshAngleDegrees is then converted to radians.
- Lines 49–52—the x and y coordinates of the threshold are calculated, returning the coordinate value threshold. The establishThreshold function ends.
4.2. Initial Calculation of Threshold
4.3. Threshold Calculation with Factoring Employed
4.4. Duty Cycling Adjusted with MADCAL
Algorithm 2 Threshold interval. |
|
- Lines 1, 2—the Sleep procedure begins. The default sleep interval is set as checkInterval.
- Lines 3–9—applies to significant nodes only. The thresholdTime function is called to establish the time it will take for the sink to reach the threshold. If the threshold has been reached, the interval to wake-up reverts to the checkInterval; otherwise, it is set to the time it will take for the sink to reach the threshold.
- Lines 10–12—if this is not a significant node the wake-up schedule reverts to the checkInterval.
- Lines 13, 14—the wake-up is calculated by adding the interval to the current simulation time, the Sleep procedure ends.
- Line 15—the start of the thresholdTime function to establish how long it will take the sink to reach the threshold.
- Lines 16, 17—the current sink position is calculated as sinkPos based on simulation time and the initial sink start position, with the withinThreshold function called to establish if the sink is already within the communication threshold or not.
- Lines 18–21—if the threshold has not been reached yet, set the arc to the distance the sink must travel to reach the sinkThresholdBefore coordinates. Establish the current quartile in which the sink resides and calculate the time left to reach the threshold as the size of the arc in metres divided by the speed of the MSN in mps.
- Lines 22–24—the threshold has been reached, therefore the time left to reach the threshold is set as zero.
- Lines 25, 26—the timeToThreshold is returned and the thresholdTime function ends.
- Line 27—the start of the withinThreshold function to establish the position of the sink node in relation to the static node communication threshold.
- Lines 28, 29—establish if the distance between the current sink position and the thresholdAfter coordinates is greater than the size of the entire threshold. If so then the threshold has not been reached and thresholdReached is set to false.
- Lines 30, 31—however, if this is not true and the distance between the current sink position and the thresholdAfter coordinates is less than the size of the entire threshold. Now establish if the sink is before or after the threshold. If the distance between the sink position and the thresholdBefore coordinates is greater than the thresholdDistance then the sink must be beyond the threshold and therefore thresholdReached is set to false.
- Lines 32–34—if the sink is also within thresholdDistance of thresholdBefore however, this means the sink is within the threshold. Therefore thresholdReached is set to true.
- Lines 35, 36—thresholdReached is returned and the withinThreshold function ends.
5. Evaluation and Results
5.1. Simulation Environment and Parameters
5.2. Energy Model
5.3. Test Scenarios and Results
5.4. Grid Network Formation
5.4.1. Static Network
5.4.2. Results—Average Energy Consumption
5.4.3. Results—MAC Layer Frame Delivery
5.4.4. Summary
5.5. Random Network Formation
5.5.1. Significant Node Variance
5.5.2. Results—Average Energy Consumption
5.5.3. Results—MAC Layer Frame Delivery
5.5.4. Summary
6. Conclusions and Future Work
Author Contributions
Funding
Conflicts of Interest
Abbreviations
MAC | Media access control |
WSN | Wireless sensor network |
UAV | Unmanned aerial vehicle |
ND | Neighbour discovery |
MSN | Mobile sink node |
IoT | Internet of things |
MADCAL | Mobility aware duty cycling algorithm |
CCA | Clear channel assessment |
PDR | Packet delivery ratio |
DRS | Delay-intolerant routing scheme |
OLSR | Optimized link state routing protocol |
mps | Metres per second |
kmph | Kilometres per hour |
mWs | Milliwatts per second |
GPS | Global positioning system |
References
- Ali, S.; Ashraf, A.; Qaisar, S.B.; Kamran Afridi, M.; Saeed, H.; Rashid, S.; Felemban, E.A.; Sheikh, A.A. SimpliMote: A Wireless Sensor Network Monitoring Platform for Oil and Gas Pipelines. IEEE Syst. J. 2018, 12, 778–789. [Google Scholar] [CrossRef]
- Ahmed, A.; Bakar, K.A.; Channa, M.I.; Khan, A.W.; Haseeb, K. Energy-aware and secure routing with trust for disaster response wireless sensor network. Peer-to-Peer Netw. Appl. 2017, 10, 216–237. [Google Scholar] [CrossRef]
- Uddin, M.A.; Mansour, A.; Jeune, D.L.; Ayaz, M.; Aggoune, E.H.M. Uav-assisted dynamic clustering of wireless sensor networks for crop health monitoring. Sensors 2018, 18, 555. [Google Scholar] [CrossRef] [PubMed]
- Vincent, D.R.; Deepa, N.; Elavarasan, D.; Srinivasan, K.; Chauhdary, S.H.; Iwendi, C. Sensors Driven AI-Based Agriculture Recommendation Model for Assessing Land Suitability. Sensors 2019, 19, 3667. [Google Scholar] [CrossRef] [PubMed]
- Kim, M.; Park, S.; Lee, W. Energy and Distance-Aware Hopping Sensor Relocation for Wireless Sensor Networks. Sensors 2019, 19, 1567. [Google Scholar] [CrossRef] [PubMed]
- Tang, X.; Xie, L. Data Collection Strategy in Low Duty Cycle Wireless Sensor Networks with Mobile Sink. Int. J. Commun. Netw. Syst. Sci. 2017, 10, 227–239. [Google Scholar] [CrossRef]
- Saad, L.; Chauvenet, C.; Tourancheau, B. Simulation of the RPL Routing Protocol for IPv6 Sensor Networks: two cases studies. In Proceedings of the SENSORCOMM 2011: The Fifth International Conference on Sensor Technologies and Applications, Nice, France, 21–27 August 2011; pp. 128–133. [Google Scholar]
- Tunca, C.; Isik, S.; Donmez, M.Y.; Ersoy, C. Distributed Mobile Sink Routing for Wireless Sensor Networks: A Survey. IEEE Commun. Surv. Tutor. 2014, 16, 877–897. [Google Scholar] [CrossRef]
- Tang, T.; Hong, T.; Hong, H.; Ji, S.; Mumtaz, S.; Cheriet, M. An Improved UAV-PHD Filter-Based Trajectory Tracking Algorithm for Multi-UAVs in Future 5G IoT Scenarios. Electronics 2019, 8, 1188. [Google Scholar] [CrossRef]
- Chen, L.; Bian, K. Neighbor discovery in mobile sensing applications: A comprehensive survey. Ad Hoc Netw. 2016, 48, 38–52. [Google Scholar] [CrossRef]
- Shelby, Z.; Chakrabarti, S.; Nordmark, E.; Bormann, C. RFC6775: Neighbor Discovery Optimization for IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs). Available online: http://www.hjp.at/doc/rfc/rfc6775.html (accessed on 12 November 2019).
- Jamalabdollahi, M.; Zekavat, S.A.R. Joint Neighbor Discovery and Time of Arrival Estimation in Wireless Sensor Networks via OFDMA. IEEE Sens. J. 2015, 15, 5821–5833. [Google Scholar] [CrossRef]
- Chen, L.; Li, Y.; Chen, Y.; Liu, K.; Zhang, J.; Cheng, Y.; You, H.; Luo, Q. Prime-set-based neighbour discovery algorithm for low duty-cycle dynamic WSNs. Electron. Lett. 2015, 51, 534–536. [Google Scholar] [CrossRef]
- Pozza, R.; Nati, M.; Georgoulas, S.; Moessner, K.; Gluhak, A. Neighbor discovery for opportunistic networking in internet of things scenarios: A survey. IEEE Access 2015, 3, 1101–1131. [Google Scholar] [CrossRef]
- Wang, K.; Mao, X.; Liu, Y. BlindDate: A neighbor discovery protocol. IEEE Trans. Parallel Distrib. Syst. 2015, 26, 949–959. [Google Scholar] [CrossRef]
- Dutta, P.; Culler, D. Practical asynchronous neighbor discovery and rendezvous for mobile sensing applications. In Proceedings of the 6th ACM Conference on Embedded Network Sensor Systems—SenSys ’08, Raleigh, NC, USA, 4–7 November 2008; ACM Press: New York, NY, USA, 2008; p. 71. [Google Scholar] [CrossRef]
- Bakht, M.; Trower, M.; Kravets, R.H. Searchlight: won’t you be my neighbor? In Proceedings of the 18th Annual International Conference on Mobile Computing and Networking, Istanbul, Turkey, 22–26 August 2012; pp. 185–196. [Google Scholar] [CrossRef]
- Chakchouk, N. A Survey on Opportunistic Routing in Wireless Communication Networks. IEEE Commun. Surv. Tutor. 2015, 17, 2214–2241. [Google Scholar] [CrossRef]
- Yang, S.; Adeel, U.; Tahir, Y.; McCann, J.A. Practical Opportunistic Data Collection in Wireless Sensor Networks with Mobile Sinks. IEEE Trans. Mob. Comput. 2017, 16, 1420–1433. [Google Scholar] [CrossRef]
- Zhang, B.; Li, Y.; Jin, D.; Hui, P. Adaptive wakeup scheduling based on power-law distributed contacts in delay tolerant networks. In Proceedings of the 2014 IEEE International Conference on Communications (ICC), Sydney, Australia, 10–14 June 2014; pp. 409–414. [Google Scholar] [CrossRef]
- Ghaleb, F.A.; Razzaque, M.A.; Zainal, A. Mobility pattern based misbehavior detection in vehicular adhoc networks to enhance safety. In Proceedings of the 2014 International Conference on Connected Vehicles and Expo (ICCVE), Vienna, Austria, 3–7 November 2014; pp. 894–901. [Google Scholar] [CrossRef]
- Papadopoulos, G.Z.; Kotsiou, V.; Gallais, A.; Chatzimisios, P.; Noel, T. Low-power neighbor discovery for mobility-aware wireless sensor networks. Ad Hoc Netw. 2016, 48, 66–79. [Google Scholar] [CrossRef]
- Peng, F.; Cui, M. An energy-efficient mobility-supporting MAC protocol in wireless sensor networks. J. Commun. Netw. 2015, 17, 203–209. [Google Scholar] [CrossRef]
- Hess, A.; Hyytia, E.; Ott, J. Efficient neighbor discovery in mobile opportunistic networking using mobility awareness. In Proceedings of the 2014 Sixth International Conference on Communication Systems and Networks (COMSNETS), Bangalore, India, 6–10 January 2014. [Google Scholar] [CrossRef]
- Yu, S.; Zhang, B.; Li, C.; Mouftah, H. Routing protocols for wireless sensor networks with mobile sinks: A survey. IEEE Commun. Mag. 2014, 52, 150–157. [Google Scholar] [CrossRef]
- Wang, J.; Gao, Y.; Liu, W.; Sangaiah, A.K.; Kim, H.J. Energy Efficient Routing Algorithm with Mobile Sink Support for Wireless Sensor Networks. Sensors 2019, 19, 1494. [Google Scholar] [CrossRef] [PubMed]
- Thomson, C.; Wadhaj, I.; Tan, Z.; Al-dubai, A. Mobility Aware Duty Cycling Algorithm ( MADCAL ) in Wireless Sensor Network with Mobile Sink Node. 2019; in press. [Google Scholar]
- Wang, Z.; Basagni, S.; Melachrinoudis, E.; Petrioli, C. Exploiting Sink Mobility for Maximizing Sensor Networks Lifetime. In Proceedings of the 38th Annual Hawaii International Conference on System Sciences, Big Island, HI, USA, 3–6 January 2005; p. 287a. [Google Scholar] [CrossRef]
- Ghafoor, S.; Rehmani, M.H.; Cho, S.; Park, S.H. An efficient trajectory design for mobile sink in a wireless sensor network. Comput. Electr. Eng. 2014, 40, 2089–2100. [Google Scholar] [CrossRef]
- Viana, A.C.; Dias de Amorim, M. Sensing and acting with predefined trajectories. In Proceeding of the 1st ACM International Workshop on Heterogeneous Sensor and Actor Networks—HeterSanet ’08, Hong Kong, China, 30 May 2008. [Google Scholar] [CrossRef]
- Vasisht, D.; Kapetanovic, Z.; Won, J.; Jin, X.; Chandra, R.; Sinha, S.; Kapoor, A.; Sudarshan, M.; Stratman, S. FarmBeats: An IoT Platform for Data-Driven Agriculture. In Proceedings of the 14th USENIX Symposium on Networked Systems Design and Implementation (NSDI ’17), Boston, MA, USA, 27–29 March 2017; pp. 515–529. [Google Scholar] [CrossRef]
- Dhall, R.; Agrawal, H. An Improved Energy Efficient Duty Cycling Algorithm for IoT based Precision Agriculture. In Proceedings of the 9th International Conference on Emerging Ubiquitous Systems and Pervasive Networks (EUSPN 2018), Leuven, Belgium, 5–8 November 2018; pp. 135–142. [Google Scholar] [CrossRef]
- Pazzi, R.W.; Boukerche, A.; De Grande, R.E.; Mokdad, L. A clustered trail-based data dissemination protocol for improving the lifetime of duty cycle enabled wireless sensor networks. Wirel. Netw. 2017, 23, 177–192. [Google Scholar] [CrossRef]
- Ghosh, N.; Sett, R.; Banerjee, I. An efficient trajectory based routing scheme for delay-sensitive data in wireless sensor network. Comput. Electr. Eng. 2017, 64, 288–304. [Google Scholar] [CrossRef]
- Papadopoulos, G.Z.; Kotsiou, V.; Gallais, A.; Chatzimisios, P.; Noel, T. Optimizing the handover delay in mobile WSNs. In Proceedings of the 2015 IEEE 2nd World Forum on Internet of Things (WF-IoT), Milan, Italy, 14–16 December 2015; pp. 210–215. [Google Scholar] [CrossRef]
- IEEE 802.15 WPAN™ Task Group 4 (TG4). Available online: http://www.ieee802.org/15/pub/TG4.html (accessed on 12 November 2019).
- Montenegro, G.; Kushalnagar, N.; Hui, J.; Culler, D. RFC4944: Transmission of IPv6 Packets over IEEE 802.15.4. Network Working Group. Available online: http://www.ietf.org/rfc/rfc4944.txt (accessed on 12 November 2019).
- Interference Range. Available online: https://github.com/inetmanet/inetmanet/blob/master/src/underTest (accessed on 12 November 2019).
- Clausen, T. RFC 3626—Optimized Link State Routing Protocol (OLSR). Network Working Group. Available online: https://tools.ietf.org/pdf/rfc3626.pdf (accessed on 12 November 2019).
- Tawalbeh, L.A.; Basalamah, A.; Mehmood, R.; Tawalbeh, H. Greener and Smarter Phones for Future Cities: Characterizing the Impact of GPS Signal Strength on Power Consumption. IEEE Access 2016, 4, 858–868. [Google Scholar] [CrossRef]
- OMNeT++ Discrete Event Simulator. Available online: https://omnetpp.org/ (accessed on 12 November 2019).
- MiXiM. Available online: https://omnetpp.org/ (accessed on 12 November 2019).
- Inetmanet Installation Guide. Available online: http://omnetsimulator.com/inetmanet-installation/ (accessed on 12 November 2019).
- Zhao, Z.; Braun, T. OMNeT++ based Opportunistic Routing Protocols Simulation: A Framework. Available online: http://rvs.unibe.ch/research/pub_files/Z11.pdf/ (accessed on 12 November 2019).
- Dymora, P.; Mazurek, M.; Płonka, P. Simulation of reconfiguration problems in sensor networks using OMNeT++ software. Ann. UMCS Inf. 2014, 13, 49–67. [Google Scholar] [CrossRef] [Green Version]
- Helal, R.; ElMougy, A. An energy-efficient Service Discovery protocol for the IoT based on a multi-tier WSN architecture. In Proceedings of the 2015 IEEE 40th Local Computer Networks Conference Workshops (LCN Workshops), Clearwater Beach, FL, USA, 26–29 October 2015; pp. 862–869. [Google Scholar] [CrossRef]
Test Parameters | Values |
---|---|
Number of Static Nodes | 25 |
Playground Size | x = 500 m y = 500 m |
Circle Radius | 150 m |
Sink Start Position | x = 400 m, y = 250 m |
Sink Node Speed (metres per second) | 2 mps, 10 mps, 20 mps, 40 mps |
Simulation Time | 942.47779607694 s |
Interference Distance | 77.52 m, 69.13 m, 62.02, 55.94 m |
Number of Runs | 5 |
Path-loss Alpha | 1.85, 1.9, 1.95, 2 |
Carrier Frequency | 2.4 GHz |
Maximum Sending Power | 1.0 mW |
Signal Attenuation Threshold | −85 dBm |
Sensitivity | −75 dBm |
Transmitter Power | 1.0 mW |
Thermal Noise | −85 dBm |
Signal to Noise Ratio Threshold | 4 dB |
Battery Capacity | 59,400 mWs |
Interference Range | Significant Nodes |
---|---|
77.52 m | 1, 2, 3, 4, 5, 6, 9, 11, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25 |
69.13 m | 1, 2, 3, 4, 5, 11, 15, 16, 17, 19, 20, 21, 24, 25 |
62.02 m | 1, 2, 3, 4, 5, 11, 15, 16, 17, 19, 21, 24, 25 |
55.94 m | 1, 2, 3, 4, 5, 11, 15, 16, 17, 21, 24, 25 |
© 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
Thomson, C.; Wadhaj, I.; Tan, Z.; Al-Dubai, A. Mobility Aware Duty Cycling Algorithm (MADCAL) A Dynamic Communication Threshold for Mobile Sink in Wireless Sensor Network. Sensors 2019, 19, 4930. https://doi.org/10.3390/s19224930
Thomson C, Wadhaj I, Tan Z, Al-Dubai A. Mobility Aware Duty Cycling Algorithm (MADCAL) A Dynamic Communication Threshold for Mobile Sink in Wireless Sensor Network. Sensors. 2019; 19(22):4930. https://doi.org/10.3390/s19224930
Chicago/Turabian StyleThomson, Craig, Isam Wadhaj, Zhiyuan Tan, and Ahmed Al-Dubai. 2019. "Mobility Aware Duty Cycling Algorithm (MADCAL) A Dynamic Communication Threshold for Mobile Sink in Wireless Sensor Network" Sensors 19, no. 22: 4930. https://doi.org/10.3390/s19224930
APA StyleThomson, C., Wadhaj, I., Tan, Z., & Al-Dubai, A. (2019). Mobility Aware Duty Cycling Algorithm (MADCAL) A Dynamic Communication Threshold for Mobile Sink in Wireless Sensor Network. Sensors, 19(22), 4930. https://doi.org/10.3390/s19224930