lwip-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [lwip-devel] [bug #50837] TCP: zero window probe doesn't timeout


From: address@hidden
Subject: Re: [lwip-devel] [bug #50837] TCP: zero window probe doesn't timeout
Date: Wed, 28 Jun 2017 21:34:00 +0200
User-agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0

Joel Cunningham wrote:
There was some discussion of that in the original bug adding the Persist Timer:

Thanks for the reminder. I had the thought of this being talked about somewhere...

It looks like there was hesitation about whether the remote TCP could handle this even though Steven's says the receiver should trim the segment to what will fit.

By now I'd say we should just try it. There are three possibilites: the segment will not be ACKed, the segment will be partially ACKed or the segment wil be fully ACKed. Of course, we would have to be prepared for all those.


If LwIP was modified to behave this way, it wouldn't be able to remove the segment from the unacked queue when receiving the zero window update because we only support receiving an ACK covering the full segment. Maybe this would be ok since in tcp_slowtmr(), the persist timer effectively overrides the RTO timer when active and we wouldn't retransmit during the zero window.

Hmm, that would only work if the remote host ACKed the data inside the window - not more and not less.

Also, calculations for determining the in-flight data would show an amount exceeding the receiver's advertised window, not sure if that will cause any problems, needs more investigation.

That's also true. Given all that, this solution probably is the same mess as our current behaviour of "early-zero-window". Any preference?

Simon



reply via email to

[Prev in Thread] Current Thread [Next in Thread]