Opened 7 years ago
Closed 7 years ago
#13631 closed task (fixed)
tcp: rfc 3042: implementing limited trasmit
Reported by: | a-star | Owned by: | axeld |
---|---|---|---|
Priority: | normal | Milestone: | Unscheduled |
Component: | Network & Internet/TCP | Version: | R1/Development |
Keywords: | tcp, gsoc, slow start | Cc: | |
Blocked By: | Blocking: | ||
Platform: | All |
Description
Limited Transmit" algorithm - sending a new data segment in response to each of the first two duplicate acknowledgments that arrive at the sender.
Rationale: effectively recover lost segments when a connection's cwnd is small, or when a large number of segments are lost in a single transmission window. Transmitting these extra segments increases the probability that TCP can recover from a single lost segment using the fast retransmit algorithm, rather than using a costly retransmission timeout.
According to the rfc, limited transmit can be applied when:
a) receiver's advertised window allows the transmission of the segment b) amount of outstanding data should remain <= cwnd + 2. In other words, only 2 segments can be sent beyond cwnd.
The rfc also says that “cwnd MUST NOT be changed when these segments are transmitted”. To fit the algorithm with our _SendQueued method without modifying it too much, we first increase cwnd before calling _SendQueued, and then decrease it by the same amount to adhere to the rfc.
Attachments (2)
Change History (5)
by , 7 years ago
Attachment: | tcp-rfc-3042-implemented-limited-trasmit.patch added |
---|
comment:1 by , 7 years ago
patch: | 0 → 1 |
---|
by , 7 years ago
Attachment: | 0003-tcp-rfc-3042-implemented-limited-transmit.patch added |
---|
No new changes. New patch as a result of changes to a previous patch (#13629).