Bug 65271 - Acceptable RST packets (with seq number in window) are ignored in LAST_ACK state (and previously sent data pending acknowledgement)
Summary: Acceptable RST packets (with seq number in window) are ignored in LAST_ACK st...
Status: RESOLVED OBSOLETE
Alias: None
Product: Networking
Classification: Unclassified
Component: IPV4 (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: Stephen Hemminger
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-11-20 15:03 UTC by Julien Delacroix
Modified: 2013-11-26 21:57 UTC (History)
2 users (show)

See Also:
Kernel Version: 2.6.32.59-0.7-default
Subsystem:
Regression: No
Bisected commit-id:


Attachments
TCP dump showing described scenario (2.00 KB, application/octet-stream)
2013-11-20 15:03 UTC, Julien Delacroix
Details

Description Julien Delacroix 2013-11-20 15:03:47 UTC
Created attachment 115271 [details]
TCP dump showing described scenario

PCAP file of traffic capture is attached.
Note that capture was taken directly on server host, so RST packets definitely reached the server host.


Here is the flow:

1: Client ---- SYN ----> Server
2: Client <- SYN, ACK -- Server
3: Client ---- ACK ----> Server 
4: Client ---- FIN ----> Server ( server in CLOSE_WAIT state)
5: Client <- PSH, ACK -- Server 
6: Client <- FIN, ACK -- Server ( server in LAST_ACK state)

7: Client ---- RST ----> Server 

Then repeat N times:
    8: Client <- PSH, ACK -- Server 
    9: Client ---RST, ACK -> Server 


Notes:
5: packet contains 3 bytes of data
7: no ACK flag, and sequence number is correct, but RST packet is ignored
8: retransmission of step 5
9: the sequence number is correct as well as the acknowledgment number (acknowledging data in 5, but not yet FIN in 6), but this RST is again ignored.

From this point client keeps retransmitting 5, while server keeps answering with acceptable RST packets.

You can observe this scenario (with 5 retransmissions and 5 RST) in the attached PCAP file.

Note You need to log in before you can comment on or make changes to this bug.