I’m trying to understand the Semtech packet forwarder, and I know this might not be the place to ask, so if it’s not relevant for TTN, admins can delete my post…
What I am trying to understand is, how does the packet forwarder work?
Uplink: End-device RF Packets --> Concentrator (gateway) --> Semtech packet forwarder (gateway)
–> IP/UDP packets to The Things Network
Downlink: The Things Network IP/UDP --> Packet forwarder (gateway) --> Concentrator (Gateway) --> End-device
Yes, that’s about right.It might help to be clear that the concentrator is hardware ie, the SX1301/13021308) and the packet forwarder is software.
The latter typically has a statically linked instance of the lower-level “lora_gateway” interface library that actually knows how to talk to and operate the low level details of the hardware (in fact the only real public documentation of the registers seems to be the code of that library…)
Also today there are various alternatives to the UDP protocol. And the UDP protocol has had two major versions.
The SPF gets an PUSH_ACK after uplink and a PULL_ACK after Downlink to confirm, that the message was forwarded. This is not used for retransmission, but helps to see, if connection is still available.
Sometimes ist is necessary to restart the SPF completely to handle changes of the IP connection. Therefore anautoquit feature was installed that can be fired after a given number of unacknowledged packets.