Consider a LoRaWAN in which multiple nodes are attached to gateway. The page at link-labs states that, once a message has been delivered, there is no acknowledgement of receipt. However, nodes in LoRaWAN can request acknowledgements. When acknowledgement is requested cloud chooses gateway to respond at a fixed time. But, while that gateway is transmitting back to the node, it stops listening to everything else. So if an application needs a lot of acknowledgements, it will very likely spend more time transmitting acknowledgements than listening, which will eventually lead to a network collapse.

So is there any solution to avoid such collapse?


In a LoRaWAN network, any device can ask for an acknowledgement, but with the tacit understanding that it's entirely up to the "network server" to decide if an acknowledgement will be sent or not. The rule for efficient LoRaWAN network management are not part of the LoRaWAN specification and depends on the know-how of the people coding, configuring and operating the network server. The LoRaWAN specifications only give you commands, rules and levers to act on.

For example, any collapse, or significant performance reduction of a network can be avoided by:

  • categorizing devices in several "Quality of Service" classes
  • selectively acknowledging devices and prioritizing the one that are considered "more important"
  • limiting the number of ACKs a device can ask and receive every day
  • having rate limiting rules (per network, per gateway) and dropping ACK attempts for low-QoS devices as soon as some threshold is passed
  • not always using the "best" gateway to send ACKs, but another gateway "in range" of the target device, but one that is less "critical" (eg. see little or no traffic that is not also seen by at least another gateway)
  • shutting down traffic for misbehaving devices
  • having enough gateways for proper spatial redundancy
  • using more aggressive "Adaptive Data Rate" rules for low-QoS devices

A 'naive' network is good enough for lots of simple cases, but if you want scalability, reliability and some immunity to attacks, you have to go way beyond what comes "out of the box" of most LoRaWAN network servers. It's no rocket science either, we're talking good real-time metrics, Pythons scripts and some human supervision :)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.