It was early evening when I had the attention of a diligent TTI staffer who was kind enough to answer my help request, here’s more detail for the unconvinced:
The Packet Forwarder uses a 32 bit counter for its timing. This rolls over relatively frequently. If the counter is on 4294961000 and the NS has to schedule a transmission at what will effectively be 99880, what is it to do if the code can’t cope? Some code might, older code can’t, it doesn’t understand and so the gateway sends back a TOO EARLY event. See:
One of the many changes from v2 to v3 is the considerable amount of extra information available to us via the console & from the CLI logging and we can capture 2000 lines & scroll back. So we have increased our opportunities to access this information. This led to many questions in the early days as people moved over from v2 to v3. And as I suggest above, once you see something out the of the ordinary, it keeps clicking in your head and humans have a tendency to over-focus on “the thing”.
And, having had a glimpse in Paris of the just one layout of the dashboard, I’ve every reason to believe that metrics on intricate details such as Too Early response are being monitored and so I have no reason to disbelieve TTI when they say that there hasn’t been an increase in that metric.
It can’t be a backhaul latency issue - that’s a request arriving too late, whereas this packet arrives in a timely fashion and is rejected because the code isn’t up to snuff.
Turning on confirmed downlinks won’t make a blind bit of difference to getting the broadcast done and will actually pollute your airwaves. One of the most spectacular ways to shoot yourself in the foot is to use a confirmed downlink - because if the device fails to ack it, you end up in a loop until you reset the session (no, you can’t clear the queue, it’s not in the queue, it’s in the sending box) - and if you reset the session then you have to rely on the firmware developers having implemented some level of LinkCheck or the LInkCheck MAC command being implemented.
I have a friend that manages the building of bridges over active motorways. He uses something called engineering & project management. Software developers have managers that use something called “time to market”. We can be our own worst enemies.
The suggestion from TTI was that Basic Station is much smarter, something that resolved @LasseRegin’s issue with no uplinks for reasons not explored but potentially to do with TCP rather than UDP as the transport, but was conflated with a single reported Too Early console entry.
We shouldn’t need to ‘fine tune them’ - if a device is certified, to a reasonable degree with the right LW version & RP, they should just work. And there is a whole forum of people around to ask for assistance. We don’t have a device list with observations, comments, tips & a rating. If we did, we could ‘encourage’ vendors to resolve these issues. But for larger scale deployments never believe the vendor - 5 iffy devices is one thing, a box of 1,000 is a whole new level of angst.
If a device is inspiring the LNS to generate frequent MAC downlinks - I see it often enough when either trying a device or developing one - then there is a configuration setting at either end that needs to be resolved. If the device is “OK” then there is now a CLI command to cease all MAC downlinks.
I know that the LNS can appear to be somewhat obsessional about sending MAC commands, sometimes I see a one-to-one uplink to MAC cmd downlink ratio and for me to spend time decoding/debugging why MAC acks aren’t happening or what the mismatch is can often be sidelined to get on with the actual job of delivering. But the thing that I know the most is that I have clients who have not the least clue what is going on in some situations, something that takes time to explain AND then the entire situation is reversed where someone at TTI has to patiently explain to me what nuance I’ve missed & the jolly good reason it’s like that. This is one of those moments - I asked a question and within a couple of minutes had the material to see what the detail was. Now you have it too.