lwIP - A Lightweight TCP/IP stack - Bugs: bug #34426, tcp_zero_window_probe() transmits...
You are not allowed to post comments on this tracker with your current authentication level.
bug #34426: tcp_zero_window_probe() transmits incorrect byte value when pcb->unacked != NULL
Submitter: | Min Xu <maximalmin> | ||
Submitted: | Thu 29 Sep 2011 12:14:59 AM UTC | ||
Category: | TCP | Severity: | 3 - Normal |
Item Group: | Faulty Behaviour | Status: | Fixed |
Privacy: | Public | Assigned to: | goldsimon |
Open/Closed: | Closed | Planned Release: | None |
lwIP version: | 1.4.0 |
Sun 09 Oct 2011 06:20:19 PM UTC, comment #5: |
Simon Goldschmidt <goldsimon> |
Fri 30 Sep 2011 01:42:07 AM UTC, comment #4: Using example1.pcap, and the relative sequence number from wireshark, just after the ARP flood, DSP was able to transmit TWO 1460 byte TCP payload to the DSP, at which time the desktop's receive window is "full":
|
Min Xu <maximalmin> |
Thu 29 Sep 2011 09:10:37 PM UTC, comment #3: Per your question "why does lwIP's TCP not enter fast-retransmission after receiving 2 dupacks", quote from the ARP flooding bug entry:
|
Min Xu <maximalmin> |
Thu 29 Sep 2011 08:38:01 PM UTC, comment #2: Since the consumed tx window suppose to include the UNACK list, shouldn't retransmission not look at the tx-window?
|
Min Xu <maximalmin> |
Thu 29 Sep 2011 08:20:11 PM UTC, comment #1: In both pcap captures, at the point where lwIP starts transmitting the 1-byte-segments, the TX window is full (from lwIP's TX seqno + length - the remote host's ACKno = 64240 == TX window).
|
Simon Goldschmidt <goldsimon> |
Thu 29 Sep 2011 12:14:59 AM UTC, original submission:
Hi
|
Min Xu <maximalmin> |
Depends on the following items: None found
Items that depend on this one: None found
There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.
Follow 7 latest changes.
Date | Changed by | Updated Field | Previous Value | => | Replaced by |
---|---|---|---|---|---|
2011-10-09 | goldsimon | Status | None | Fixed | |
Assigned to | None | goldsimon | |||
Open/Closed | Open | Closed | |||
Summary | TCP retransmission transmits 1 byte instead of original packet, with incorrect byte value | tcp_zero_window_probe() transmits incorrect byte value when pcb->unacked != NULL | |||
2011-09-29 | maximalmin | Attached File | - | Added lwipopts.h, #24050 | |
2011-09-29 | maximalmin | Attached File | - | Added example1.pcap, #24039 | |
Attached File | - | Added example2.pcap, #24040 |
Powered by Savane 3.13-02a9.
Corresponding source code
Corrected summary and fixed the bug, thanks for reporting.
However, we should discuss if it is correct behaviour to send a zero-windo-probe instead of a simple retransmission...