Create a receiver-side middleware that sends ACKs for packets with wantAck=true.
Clean up all pending timers. Call on shutdown.
Handle an incoming ACK/NAK packet.
Parse raw ACK data from transport.
Send a packet with reliable delivery (ACK expected). Returns a promise that resolves on ACK or rejects after all retries exhausted.
Create a receiver-side middleware that sends ACKs for packets with wantAck=true.