Re: [tcpm] TCP Long Options

Joe Touch <touch@ISI.EDU> Tue, 01 July 2008 17:21 UTC

Return-Path: <tcpm-bounces@ietf.org>
X-Original-To: tcpm-archive@megatron.ietf.org
Delivered-To: ietfarch-tcpm-archive@core3.amsl.com
Received: from [127.0.0.1] (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id DBA373A69B9; Tue, 1 Jul 2008 10:21:45 -0700 (PDT)
X-Original-To: tcpm@core3.amsl.com
Delivered-To: tcpm@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id B139E3A6781 for <tcpm@core3.amsl.com>; Tue, 1 Jul 2008 10:21:44 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id RrL4qLXt8Vd6 for <tcpm@core3.amsl.com>; Tue, 1 Jul 2008 10:21:43 -0700 (PDT)
Received: from vapor.isi.edu (vapor.isi.edu [128.9.64.64]) by core3.amsl.com (Postfix) with ESMTP id 3FDAE3A6B7A for <tcpm@ietf.org>; Tue, 1 Jul 2008 10:21:30 -0700 (PDT)
Received: from [127.0.0.1] (pool-71-106-103-55.lsanca.dsl-w.verizon.net [71.106.103.55]) by vapor.isi.edu (8.13.8/8.13.8) with ESMTP id m61HKtrk003152 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Tue, 1 Jul 2008 10:20:57 -0700 (PDT)
Message-ID: <486A6777.80809@isi.edu>
Date: Tue, 01 Jul 2008 10:20:55 -0700
From: Joe Touch <touch@ISI.EDU>
User-Agent: Thunderbird 2.0.0.14 (Windows/20080421)
MIME-Version: 1.0
To: Adam Langley <agl@imperialviolet.org>
References: <396556a20807010949i6c6c1d16g41c74e2f78414a92@mail.gmail.com>
In-Reply-To: <396556a20807010949i6c6c1d16g41c74e2f78414a92@mail.gmail.com>
X-Enigmail-Version: 0.95.6
X-ISI-4-43-8-MailScanner: Found to be clean
X-MailScanner-From: touch@isi.edu
Cc: tcpm@ietf.org
Subject: Re: [tcpm] TCP Long Options
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <https://www.ietf.org/mailman/private/tcpm>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============1124342422=="
Sender: tcpm-bounces@ietf.org
Errors-To: tcpm-bounces@ietf.org

It might be worth reviewing the discussion on the TCP-LO when it was 
previously presented, and provide a summary to the group as to whether 
anything has changed.

Joe

Adam Langley wrote:
> I've revived an old draft, with the original author's permission: TCP
> Long Options[1]
> 
> For a SYN packet with window scale, MSS, TS, SACK permitted and MD5
> options (and the associated word alignment padding) we have already
> filled the 40 byte option space. Not to mention that SACK permitted is
> a waste in such a packet since no SACK blocks can fit in the following
> frames.
> 
> TCP-AO will probably truncate the MAC by 4 bytes to add space for a
> single SACK block, but even packets without authentication options
> have only 20 bytes of option space left in a typical SYN [2]. This is
> hampering experimentation, esp in the cryptographic space because you
> can't fit even a reasonable elliptic curve key in the remaining
> space[4]. Even with the current feature set, extra SACK blocks are
> known to be helpful in certain situations[3].
> 
> I suggest to the working group that reaching consensus on a long
> options standard would be positive for TCP.
> 
> http://www.ietf.org/internet-drafts/draft-eddy-tcp-loo-04.txt
> 
> Experimental, Linux implementation:
> 
> http://marc.info/?l=linux-netdev&m=121435555619591&w=2
> 
> Changes since 03
> 
>    1.  Change the option numbers specified to placeholders:
>        "TBD-IANA-KIND1" and "TBD-IANA-KIND2".
> 
>    2.  Change the requirement that all segments include the LO option,
>        if negotiated, to a SHOULD NOT unless the options require it.
>        The reasoning behind the initial requirement was for
>        implementation ease but, having implemented it myself, the
>        ability to use the fast path processing for LO connections
>        outweighs that.
> 
>    3.  Change the units of the LO option from bytes to words.  This was
>        ambiguous in the 03 draft and, since padding to four bytes was
>        required anyway, it seemed best to remove one extra way that the
>        option could be invalid.
> 
> 
> [1] http://www.ietf.org/internet-drafts/draft-eddy-tcp-loo-04.txt
> [2] SYN options take 20 bytes in modern Linux kernels with default
> sysctl settings
> [3] http://portal.acm.org/citation.cfm?id=1259591.1260102&coll=GUIDE&dl=GUIDE
> [4] Assuming this it isn't to be the last option ever, we leave 4
> bytes of space. With the 2 byte option header, we have 14 bytes, or
> 112 bits for a key. Using Pollard's Rho algorithm we need 14*3 = 42
> bytes to store a point. Granting the attacker only 1 PB of space
> (approx cost < €200K) they can store 2**44 points, so one in 2**12
> points are distinguished. So the attacker can break such a key almost
> instantly: 2**12 operations on average.
> 
> 
> AGL
> 

_______________________________________________
tcpm mailing list
tcpm@ietf.org
https://www.ietf.org/mailman/listinfo/tcpm