[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lwip-devel] [bug #48839] Possible bug with snd_wnd semantics
From: |
Ambroz Bizjak |
Subject: |
[lwip-devel] [bug #48839] Possible bug with snd_wnd semantics |
Date: |
Mon, 22 Aug 2016 07:49:50 +0000 (UTC) |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36 |
Follow-up Comment #3, bug #48839 (project lwip):
Hi Simon,
I think retransmissions can trigger a lastack update without a window update.
- Remote sends two data segments with consecutive data; the first has a lower
sequence number than the second.
- Lwip receives the second segment only as the first one is lost. It updates
the window based on the second segment.
- The remote later retransmits the first segment. It will have the lower
sequence number of the first segment but it will have the newest ack value
(rcv_nxt of remote), greater than the one of both the first and second segment
originally sent, due to the remote having received some data.
- Lwip receives the retransmitted first segment. A window update is inhibited
(details [1]) since the ack number acknowledges new data, lastack is updated.
The window is effectively now too large.
The other kind of inconsistency seems less likely to me.
[1] The retransmitted segment has SEQ lesser than snd_wl1 and ACK different
from the snd_wl2, which is sufficient to pass /* Update window. */
_______________________________________________________
Reply to this item at:
<http://savannah.nongnu.org/bugs/?48839>
_______________________________________________
Message sent via/by Savannah
http://savannah.nongnu.org/