Hello,
I am using the linux (SuSE 7.0) tftp server with an embedded
tftp client (running on an embedded target). I changed that
client code and caused by that change a considerable amount of
delay. And the Sorcerer's Apprentice Syndrome appeared:
>From that point where the server has sent a duplicate data
packet (after the client's ACK timed out), there were always
duplicate data (and of course ACK) packets until the end
of the file transfer.
I am not a protocol expert nor a unix programming expert
but as far as I understand the tftp server code (e.g.
tftp-hpa-0.21) there is a handling for duplicate ACK packets.
But (maybe) not exactly the handling proposed by the RFC 1350.
On paget 7 of RFC 1350 it is said:
"All packets other than duplicate ACK's and those used for
termination are acknowledged unless a timeout occcurs."
So the strategy would be to discard the duplicate ACK and
let the timer keep running. Not repeating the previous data
packet - which I think is done in the existing code. The
data packet would only be repeated in case of a timeout.
I would appreciate if you could write a comment whether
I am right or wrong or something in between.
Best regards,
Gerhard
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-net" in the body of the message