Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 14 Aug 2001 11:56:49 +0200
From:      Gerhard Butscher <gerhard.butscher@esk.fhg.de>
To:        syslinux@linux.kernel.org, net@FreeBSD.ORG
Subject:   TFTP sorcerer's apprentice syndrome
Message-ID:  <3B78F5E1.475FF891@esk.fhg.de>

next in thread | raw e-mail | index | archive | help
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 majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3B78F5E1.475FF891>