Hi!
I am evaluating some nrf9151 boards using the DECT NR+ stack. I have made my own PING test using UDP to test latency and loss.
Setup: nRF Connect SDK v3.3.1, DECT NR+ modem firmware v2.0.0 One DK as FT, one as PT. Zephyr native IP stack with CONFIG_NET_SOCKETS_OFFLOAD=n, CONFIG_NET_TC_TX_COUNT=0 and CONFIG_NET_TC_RX_COUNT=1, so there is a single TX and single RX path in the Zephyr net stack. Payload 52 bytes, sent every 1000 ms.
I see that almost every packet gets received in the wrong order, in a deterministic matter when sending from FT to PT.
The sequence always being something like 2 - 1 - 4 - 3 - 7 - 5 - 6 and quite bursty, even though there is s second between each send. Is this expected behavior? I understand that the sequence will be out of order at times, but they seem to almost always be one off and quite bursty.
I've verified the sender calls zsock_sendto() in strictly increasing sequence order, and the sequence is already out of order in the first zsock_recvfrom() on the receiver, so the reordering happens between the two sockets and not in my application or host tooling.
Questions:
1. Is out-of-order delivery expected from the DECT NR+ L2? I understand UDP gives no ordering guarantee, but a consistent pairwise swap looks structural rather than incidental.
2. Is the burstiness expected — e.g. does the L2 aggregate datagrams and flush them per DECT frame?
Thanks!
Herman