Re: [tcpm] SYN/ACK Payloads, draft 01

"Sergio Freire" <> Mon, 11 August 2008 22:03 UTC

Return-Path: <>
Received: from [] (localhost []) by (Postfix) with ESMTP id 2588B3A68E1; Mon, 11 Aug 2008 15:03:22 -0700 (PDT)
Received: from localhost (localhost []) by (Postfix) with ESMTP id 145B73A6A86 for <>; Mon, 11 Aug 2008 15:03:21 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -0.185
X-Spam-Status: No, score=-0.185 tagged_above=-999 required=5 tests=[BAYES_40=-0.185]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id V-bUR62ymkai for <>; Mon, 11 Aug 2008 15:03:19 -0700 (PDT)
Received: from ( []) by (Postfix) with ESMTP id 3DC943A67B6 for <>; Mon, 11 Aug 2008 15:03:14 -0700 (PDT)
Received: from [] (account HELO portsfreire) by (CommuniGate Pro SMTP 5.1.13) with ESMTPSA id 156997623; Mon, 11 Aug 2008 23:03:16 +0100
From: Sergio Freire <>
To: 'Adam Langley' <>,
References: <>
In-Reply-To: <>
Date: Mon, 11 Aug 2008 23:03:14 +0100
Message-ID: <000001c8fbfe$0dba0960$292e1c20$@pt>
MIME-Version: 1.0
X-Mailer: Microsoft Office Outlook 12.0
Thread-Index: Acj72LsQrIgG/NbgReiGMVDojGq13AAInuOQ
Content-Language: pt
Subject: Re: [tcpm] SYN/ACK Payloads, draft 01
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Hi Adam et all,
I have been on vacations but I have the thread of emails concerning this
We would like also to propose something about this as Joe Touch mentioned
Me and Andre Zúquete have published a paper for proposing a TCP-layer name

In this work we "propose" the use of data in the SYN/SYN+ACK segments.
We intend to generalize this and also to go forward on this matter.
I have to see carefully the thread of your earlier discussions and your
draft as of the current version, so we can see if we're going in the same or
in opposite/alternative directions.
Meanwhile, if you can take a look at our work, it would be great for further
discussion (regarding the way of extending tcp options and not the name
service itself).

Note: I think this is an important subject and I'm glad we're pushing this
forward, even if we propose alternate ways for this. Please give me some
days so I can synch.

Sergio Freire

-----Original Message-----
From: [] On Behalf Of Adam
Sent: segunda-feira, 11 de Agosto de 2008 18:35
Subject: [tcpm] SYN/ACK Payloads, draft 01

The comments on SYNACK Payloads[1] seem to have died down, so I'd like
to see how people are feeling about it.

Just to be clear; I'm seeking to publish this as experimental in order
to get an option number assigned to conduct more widespread tests.

I thought that I would dig out a couple of the points that I believe
Joe Touch was still unsure about after the last thread. I don't wish
to misrepresent anyone, but it is a long thread to dig through: thanks
to Joe for being so generous with his time in giving feedback.

> I appreciate the
> idea of optimizing TCP, but there are so many other places where RTTs
> are not under your control, and so many RTTs in a connection, that
> removing (or adding) a single one anywhere seems in the noise."

Many Google users are now using search bars to submit queries. Thus
they type into a text field in the browser, hit enter and the browser
makes a connection, sends the query encoded in a GET and displays the
result. This is one example of a situation where the connection
latency isn't amortised. There are many others, but obviously, this is
the example that usually dominates my thinking. And, in this
situation, it turns out that every 10ms makes a difference.

I might be wrong here. This might be an overcomplex solution. But I
think only time will tell, which is why I wish to have it published as
an experimental spec. If, in a couple of years, it doesn't work the
option number can be released, ready for the next guy.

> Using a transport signal to change the application protocol seems
> very strange to me. Other's can comment on that.

It is strange, I agree. My usual test about such things is if I get an
"ick" reaction and, in this case, I don't. Although, that might just
be me.

Two reasonable questions arise:

"Where will this stop?"  - obviously, the TCP option space shouldn't
be a repository for application data. In this case, at least, the
option is advertising a certain minimum capability of the TCP stack,
as defined in the draft. Also, I'll claim that this is the last such
need in this area:

The SYNACK payload sizes is a decision for the server (within the
advertised window). No more client options could be needed to
advertise support for larger ones.

Since the SYNACK payload is (nearly) constant, and TCP stacks are not
going to differ sufficiently to change this in the next 20 years,
applications don't gain anything else by stuffing anything more in the
SYN option space.

So I don't think this sets an unreasonable precedent.

Thanks all,



Adam Langley
tcpm mailing list

tcpm mailing list