-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Description
Description
We have most of the radios configured with the Auto ACK feature. This means, the radio generates an ACK packet when it receives a valid IEEE802.15.4 packet (even before the packet is fetch from the radio). In most cases, this practice can be harmful.
Sometimes radio receive a packet but it get lost before being processed by the MAC layer. E.g
- Pkt buffer is full
- The radio switches to TX mode when receiving (tests: add tests for netdev flooding race-condition #11256)
In both cases the radio sends an ACK packet to the sender (a.k.a "all good, my MAC layer received the packet") but the packet was not received by the receiver.
This can produce weird behaviors, since the sender's MAC layer believes the packet was received and processed.
Note that hardware frame retransmissions are OK and can be used without any issues.
Thus, I propose to leave Auto ACK as optional and implement ACK response in software. Besides having a more reliable L2, we would automatically add ACK features to radios that don't provide Auto ACK caps.