Re: [tcpm] Extending the TCP option space - yet another approach

Wesley Eddy <wes@mti-systems.com> Wed, 13 April 2011 00:08 UTC

Return-Path: <wes@mti-systems.com>
X-Original-To: tcpm@ietfc.amsl.com
Delivered-To: tcpm@ietfc.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfc.amsl.com (Postfix) with ESMTP id B6613E08B6 for <tcpm@ietfc.amsl.com>; Tue, 12 Apr 2011 17:08:54 -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 ([208.66.40.236]) by localhost (ietfc.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id XHvlogt9K+Y7 for <tcpm@ietfc.amsl.com>; Tue, 12 Apr 2011 17:08:54 -0700 (PDT)
Received: from omr5.networksolutionsemail.com (omr5.networksolutionsemail.com [205.178.146.55]) by ietfc.amsl.com (Postfix) with ESMTP id F2E41E06B8 for <tcpm@ietf.org>; Tue, 12 Apr 2011 17:08:53 -0700 (PDT)
Received: from cm-omr12 (mail.networksolutionsemail.com [205.178.146.50]) by omr5.networksolutionsemail.com (8.13.6/8.13.6) with ESMTP id p3D08rF9015236 for <tcpm@ietf.org>; Tue, 12 Apr 2011 20:08:53 -0400
Authentication-Results: cm-omr12 smtp.user=wes@mti-systems.com; auth=pass (PLAIN)
X-Authenticated-UID: wes@mti-systems.com
Received: from [174.130.46.39] ([174.130.46.39:59890] helo=[192.168.1.104]) by cm-omr12 (envelope-from <wes@mti-systems.com>) (ecelerity 2.2.2.41 r(31179/31189)) with ESMTPA id 9E/A1-10006-599E4AD4; Tue, 12 Apr 2011 20:08:53 -0400
Message-ID: <4DA4E9C9.60502@mti-systems.com>
Date: Tue, 12 Apr 2011 20:09:45 -0400
From: Wesley Eddy <wes@mti-systems.com>
Organization: MTI Systems
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.15) Gecko/20110303 Lightning/1.0b2 Thunderbird/3.1.9
MIME-Version: 1.0
To: tcpm@ietf.org
References: <BANLkTimyeQ5rWMpVKUHGtFACzR__-sgcVg@mail.gmail.com> <0C53DCFB700D144284A584F54711EC580C6C459C@xmb-sjc-21c.amer.cisco.com> <4DA4D6A3.1010706@isi.edu>
In-Reply-To: <4DA4D6A3.1010706@isi.edu>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
Subject: Re: [tcpm] Extending the TCP option space - yet another approach
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/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>
X-List-Received-Date: Wed, 13 Apr 2011 00:08:54 -0000

On 4/12/2011 6:48 PM, Joe Touch wrote:
> Hi, all,
>
> On 4/12/2011 3:18 PM, Anantha Ramaiah (ananth) wrote:
>>
>> To add more...
>>
>> History : TCP option space issue, when I raised it 5 years back, was
>> deemed as a "solution in search of a problem".
>
> I would describe it as a "unsolvable problem" with many proposed
> solutions, none of which was viable.
>
> Here's the nutshell, as I recall it:
>
> - extra space after the 3WHS is easy; create an option, and once it's
> ACK'd you can use it (in each direction)


I agree.


> - extra space is useful only if it exists in the SYN, however; that's
> where space is at a real premium


I disagree; there's definitely utility beyond just having this 
capability in the SYN, some of this was defined in the LO/SLO draft 
linked to below.


> - extra space in the SYN is not possible
> there's no way to provide the space before you negotiate support in a
> backward compatible way


I agree.


> There were several mechanisms, some of which attempted to use data in
> the SYN (which corrupts the data path if not supported), and even one
> that suggested just doubling all the TCP header fields (Mark Allman).


The ones I recall are:
- LO/SLO : http://tools.ietf.org/html/draft-eddy-tcp-loo-04
- DO redefinition : http://tools.ietf.org/html/draft-kohler-tcpm-extopt-00
- tcpx2 : https://tools.ietf.org/html/draft-allman-tcpx2-hack-00

Andrew's LOIC is interesting, and significantly different than these. 
If there's evidence that it can survive some significant fraction of 
middleboxes, that would be good; this was a concern with all 3 of the 
proposals listed above.

> Regardless of need or utility, it is simply not possible in the SYN.


The SLO option was an attempt to handle that by sending long options 
that you would have liked to be on the SYN later (i.e. on the ACK 
completing the handshake); in implementation, this meant calling the 
function in the kernel for processing SYN options on a received packet 
even though the packet wasn't a SYN, which was slightly awkward, but 
fairly simple.


> So basically:
> - we can trivially add space after a SYN exchange; it that's useful,
> let's do it
>


The LO option is one way to handle that:
http://tools.ietf.org/html/draft-eddy-tcp-loo-04

-- 
Wes Eddy
MTI Systems