mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-23 23:21:46 +00:00
tcp: record most recent RTT in RACK loss detection
Record the most recent RTT in RACK. It is often identical to the "ca_rtt_us" values in tcp_clean_rtx_queue. But when the packet has been retransmitted, RACK choses to believe the ACK is for the (latest) retransmitted packet if the RTT is over minimum RTT. This requires passing the arrival time of the most recent ACK to RACK routines. The timestamp is now recorded in the "ack_time" in tcp_sacktag_state during the ACK processing. This patch does not change the RACK algorithm itself. It only adds the RTT variable to prepare the next main patch. Signed-off-by: Yuchung Cheng <ycheng@google.com> Signed-off-by: Neal Cardwell <ncardwell@google.com> Acked-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
e636f8b010
commit
deed7be78f
4 changed files with 50 additions and 35 deletions
|
@ -207,6 +207,7 @@ struct tcp_sock {
|
|||
/* Information of the most recently (s)acked skb */
|
||||
struct tcp_rack {
|
||||
struct skb_mstamp mstamp; /* (Re)sent time of the skb */
|
||||
u32 rtt_us; /* Associated RTT */
|
||||
u8 advanced; /* mstamp advanced since last lost marking */
|
||||
u8 reord; /* reordering detected */
|
||||
} rack;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue