[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CADVnQy=D61fQHtYuQW07Nx8QpPR8jESH7gvrdbUNu-vwMuEy3Q@mail.gmail.com>
Date: Sun, 21 Jul 2013 23:32:33 -0400
From: Neal Cardwell <ncardwell@...gle.com>
To: Yuchung Cheng <ycheng@...gle.com>
Cc: David Miller <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Nandita Dukkipati <nanditad@...gle.com>,
Netdev <netdev@...r.kernel.org>
Subject: Re: [PATCH 3/4 net-next] tcp: measure RTT from new SACK
On Sun, Jul 21, 2013 at 1:39 AM, Yuchung Cheng <ycheng@...gle.com> wrote:
> @@ -1148,6 +1149,7 @@ static u8 tcp_sacktag_one(struct sock *sk,
> state->reord);
> if (!after(end_seq, tp->high_seq))
> state->flag |= FLAG_ORIG_SACK_ACKED;
> + state->rtt = tcp_time_stamp - lsndtime;
To be safer we should probably take the RTT sample for the left-most
SACKed segment, just like tcp_clean_rtx_queue() takes a seq_rtt RTT
sample for the left-most cumulatively ACKed segment. Since
tcp_sacktag_write_queue() already sorts the SACK blocks, I think that
means tcp_sacktag_one() just needs to only set state->rtt if it is
still less than 0 (analagous to the update logic in
tcp_clean_rtx_queue()).
Also, FWIW I think the "lsndtime" variable name here is a little confusing,
since it is being used for the send time of the particular skb, which is
quite different from the similarly-named existing variable, tp->lsndttime.
Maybe "xmit_stamp"?
Otherwise, looks good. This is going to be nice to have.
neal
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists