Unfortunately, timestamps are only reliable as long as there is no forward-path loss.

Also, in order to use timestamps as input to any congestion control strategy, you would want to exclude varations in the return channel from your measurement (currently, timestamps, and the measurement of RTT is not designed to do that; however, one-way delay variation measurements can be done by means of timestamps, if the timestamp clock rate of the opposite host is known locally. See Chirp-TCP and Mijra Kuehlewind/Bob Briscoes work in that area. Last, there are security / integrity concerns. Some early versions of BIC / CUBIC used timestamps directly as input signals. A malicious stack can modify the timestamp, and thereby influence the reaction of the senders congestion control algorithm (typically, to get an unfair large share of the bandwidth for this session).

Linux addressed these problems by a number of fixes, which are however, completely unfeasible in any other stack...

Mirja and I have written a very first sketch of tcp timestamp signalling improvements, to enable the use of timestamps for such uses (addressing integrity/security concerns, to make it a mroe reliable input signal into a congestion control scheme, and exchanging the local tcp timestamp clock rate, to enable one-way delay variance measurements; last, the improvements also allow a more reliable signal during loss episodes, so that synergistic methods to recovery more rapidely from lost retransmissions (1 rtt after the 2nd loss, instead of 2+ rtts as linux currently does; btw, no other stack performs lost retransmission detection).

http://tools.ietf.org/html/draft-scheffenegger-tcpm-timestamp-negotiation-01

(again, this draft is still in a very early stage, only sketiching the envisioned modifications and their potential use).

I invite everyone to join the TCPM session at IETF80 in prague, and participate in the discussion.

Best regards,

  Richard

----- Original Message ----- From: "Jim Gettys" <[email protected]>
To: <[email protected]>
Sent: Tuesday, March 15, 2011 11:36 AM
Subject: [Bloat] Random idea in reaction to all the discussion of TCPflavours - timestamps?


I've been watching all the discussion of different TCP flavours with a certain amount of disquiet; this is not because I think working on improvements to TCP are bad; in fact, it is clear for wireless we could do with improvements in algorithms. I'm not trying to discourage work on this topic.

My disquiet is otherwise; it is:
0) the buffers can be filled by any traffic, not necessarily your own (in fact, often that of others), so improving your behaviour, while admirable, doesn't mean you or others sharing any piece of your won't suffer. 1) the bloated buffers are already all over, and updating hosts is often a very slow process. 2) suffering from this bloat is due to the lack of signalling congestion to congestion avoiding protocols.

OK, what does this mean? it means not that we should abandon improving TCP; but that doing so won't fundamentally eliminate bufferbloat suffering. It won't get us to a fundamentally different place, but only to marginally better places in terms of bufferbloating.

The fundamental question, therefore, is how we start marking traffic during periods when the buffers fill (either by packet drop or by ECN), to provide the missing feedback in congestion avoiding protocol's servo system. No matter what flavour of protocol involved, they will then back off.

Back last summer, to my surprise, when I asked Van Jacobson about my traces, he said all the required proof was already present in my traces, since modern Linux (and I presume other) operating systems had time stamps in them (the TCP timestamps option).

Here's the off the wall idea. The buffers we observe are often many times (orders of magnitude) larger than any rational RTT.

So the question I have is whether there is some technique whereby monitoring the timestamps that may already be present in the traffic (and knowing what "sane" RTT's are) that we can start marking traffic in time prevent the worst effects of bloating buffers?
            - Jim



_______________________________________________
Bloat mailing list
[email protected]
https://lists.bufferbloat.net/listinfo/bloat

_______________________________________________
Bloat mailing list
[email protected]
https://lists.bufferbloat.net/listinfo/bloat

Reply via email to