python-tx-tftp icon indicating copy to clipboard operation
python-tx-tftp copied to clipboard

Don't send more than one ACK to the last DATA packet when writing.

Open jcollie opened this issue 10 years ago • 0 comments

The write session needs to remain open for a short while so that ACKs can be returned if a duplicate DATA packet is received. However, when the last packet is received the code will always send additional ACKs because there is no next DATA packet to cancel the ScheduledCall the handles ACK retransmission. So, in the special case of the last DATA packet, send an ACK once, but never again. The timeout needs to remain to keep the session active in case the ACK packet gets lost and the remote system re-sends the last DATA packet.

jcollie avatar Sep 24 '14 18:09 jcollie