Distributed reliable and energy-efficient scheduling for LR-WPANs

Research output: Contribution to journalArticleAcademicpeer-review


Pervasiveness of wireless networks drives the heterogeneity and density of devices in a vast diversity of environments. To achieve high reliability and low energy consumption while enabling pervasiveness is inherently a resource allocation problem. In low-rate wireless personal area networks, multi-frequency time-division multiple access methods are identified as compelling solutions to resource allocation via scheduling transmissions in time and frequency. This work presents the TREE (TRaffic-aware Energy Efficient) algorithm, an adaptive and distributed scheduling algorithm, designed to provide high reliability in terms of packet reception ratio while optimizing the energy consumption of each device. This algorithm schedules communications according to the packets in the queue and short-memory performance. Decisions are made locally, and low-interference scheduling emerges at the network level. TREE is an adaptive threshold-based model that allocates more network resources (e.g., timeslots) when the communication queue size crosses a threshold and frees resources if the resource was underutilized. Implemented over IEEE-802.15.4-TSCH and extensively tested in simulation and on real deployments up to 81 devices, the algorithm is compared to MSF, Alice, and Orchestra, the state of the art in time-slotted channel hopping scheduling. Results highlight a high reliability regarding packet reception ratio and a lower energy consumption compared to the state of the art.

Original languageEnglish
Article number32
Number of pages20
JournalACM Transactions on Sensor Networks
Issue number4
Publication statusPublished - Oct 2020


  • Distributed scheduling
  • Distributed systems
  • Media access control
  • Swarm intelligence
  • Wireless sensor networks


Dive into the research topics of 'Distributed reliable and energy-efficient scheduling for LR-WPANs'. Together they form a unique fingerprint.

Cite this