[riot-notifications] [RIOT-OS/RIOT] sys/net/gnrc/netif: make use of confirm_send (#15821)

Marian Buschsieweke notifications at github.com
Thu Jan 28 10:40:17 CET 2021

https://github.com/RIOT-OS/RIOT/pull/15694 is now seemingly working (at least the test passes) for 6LoWPAN fragmentation (without selective fragment recovery, as of now). I believe that `gnrc_tx_sync` has lower resource requirements than `gnrc_pktq`. I believe both should be able to allow fragmentation to continue to work with a non-blocking `send()` function.

In fact, with the `nrf24l01p_ng` driver we have seen that fragmentation easily can overflow that IPC message queue in the netdev thread, as the network stacks issues all fragments almost instantly. The `nrf24l01p_ng` is somewhat special due to its tiny frame able to carry only 32 bytes payload (which is not even containing the L2 source address, so even fewer bytes are available for the PDU). So a large IPv6 packet over that transceiver requires *many* fragments. But the issues fundamentally applies easily to 802.15.4 as well, where huge IPv6 packets combined with L2 security (smaller L2-PDU) can also cause excessive fragmentation.

My point is: We need a mechanism like `gnrc_tx_sync` to issue fragments one at a time anyway for reliable use of fragmentation. So I don't see much of an issue with making that a hard dependency when using non-blocking send.

You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.riot-os.org/pipermail/notifications/attachments/20210128/ee10e10f/attachment-0001.htm>

More information about the notifications mailing list