Re: [tcpm] TCP Four-Way Handshake
David Borman <dab@weston.borman.com> Fri, 17 October 2014 22:56 UTC
Return-Path: <dab@weston.borman.com>
X-Original-To: tcpm@ietfa.amsl.com
Delivered-To: tcpm@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 176461A6FB2 for <tcpm@ietfa.amsl.com>; Fri, 17 Oct 2014 15:56:44 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.91
X-Spam-Level:
X-Spam-Status: No, score=-1.91 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 7sKnN8m4GE-Q for <tcpm@ietfa.amsl.com>; Fri, 17 Oct 2014 15:56:42 -0700 (PDT)
Received: from frantic.weston.borman.com (frantic.weston.borman.com [70.57.156.33]) (using TLSv1 with cipher EDH-RSA-DES-CBC3-SHA (112/168 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9D4141A1BC8 for <tcpm@ietf.org>; Fri, 17 Oct 2014 15:56:42 -0700 (PDT)
Received: from local-42.weston.borman.com (local-42.weston.borman.com [192.168.1.42]) by frantic.weston.borman.com (8.14.7/8.14.7) with ESMTP id s9HMufI0024773; Fri, 17 Oct 2014 17:56:41 -0500 (CDT)
Content-Type: text/plain; charset="windows-1252"
Mime-Version: 1.0 (Mac OS X Mail 8.0 \(1990.1\))
From: David Borman <dab@weston.borman.com>
In-Reply-To: <54419853.7040705@isi.edu>
Date: Fri, 17 Oct 2014 17:56:40 -0500
Content-Transfer-Encoding: quoted-printable
Message-Id: <08B20814-7C96-469F-AE0D-1B3E7C964322@weston.borman.com>
References: <F67E5C77-60CC-4617-A8C1-BF4263111CBF@weston.borman.com> <544047E3.8080900@isi.edu> <6A5AD7CB-EA2B-4FCD-B162-4D2929BC7B85@weston.borman.com> <544156C7.5040906@isi.edu> <21EB0FC2-EDF7-41CB-A0B5-A632FA78C7E9@weston.borman.com> <54419853.7040705@isi.edu>
To: Joe Touch <touch@isi.edu>
X-Mailer: Apple Mail (2.1990.1)
Archived-At: http://mailarchive.ietf.org/arch/msg/tcpm/rpq1PXVbB07ysi9uei4hwudyxu4
Cc: "tcpm@ietf.org (tcpm@ietf.org)" <tcpm@ietf.org>
Subject: Re: [tcpm] TCP Four-Way Handshake
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.15
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: Fri, 17 Oct 2014 22:56:44 -0000
> On Oct 17, 2014, at 5:29 PM, Joe Touch <touch@isi.edu> wrote: > > > > On 10/17/2014 11:43 AM, David Borman wrote: >> All this really points out is that when there are incompatible options, >> there should be a documented procedure for how to handle the case when >> they are all negotiated. > > Currently: > SYN indicates desired options > SYN/ACK indicates subset of desired options > ACK indicates final set negotiated > > Right now, one side can easily avoid that by what it selects in its SYN. > You're suggesting entirely different semantics for options that now need > to be determined for all past and future options concurrently. > > I don't think that's feasible. You keep missing the point. If an option isn’t both sent and received in a packet with the SYN bit, it is not enabled. So with the 3WHS it doesn’t matter if there are additional options in the SYN-ACK, they will not be enabled because they weren’t in the original SYN. The fact that the SYN-ACK is a subset of what was in the SYN *is only an optimization*. The final ACK has nothing to do with it, it’s only what is exchanged in the packets with the SYN bit that matter. Look at RFC1072, supported options were sent in any packet with the SYN bit set, so the SYN-ACK would have WS even if the inbound SYN didn’t have it. I’m the one that pointed out because you had to both send and receive the option to enable it, that sending the option in the SYN-ACK when it wasn’t received in the SYN wasn’t useful, and that’s why RFC1323 added that you only sent the options in the SYN-ACK if they were received in the SYN. But it was purely an optimization. With the 3WHS, all TCP implementations should ignore any options in the received SYN-ACK that they didn’t send in the initial SYN. If they don’t, they are broken. With the 4WHS, the client has a second chance to enable additional options with its SYN-ACK, provided they were received in the servers SYN-ACK. -David > > Joe > >
- [tcpm] TCP Four-Way Handshake David Borman
- Re: [tcpm] TCP Four-Way Handshake John Leslie
- Re: [tcpm] TCP Four-Way Handshake David Borman
- Re: [tcpm] TCP Four-Way Handshake Joe Touch
- Re: [tcpm] TCP Four-Way Handshake David Borman
- Re: [tcpm] TCP Four-Way Handshake Joe Touch
- Re: [tcpm] TCP Four-Way Handshake David Borman
- Re: [tcpm] TCP Four-Way Handshake Joe Touch
- Re: [tcpm] TCP Four-Way Handshake David Borman
- Re: [tcpm] TCP Four-Way Handshake Joe Touch
- Re: [tcpm] TCP Four-Way Handshake David Borman
- Re: [tcpm] TCP Four-Way Handshake Joe Touch
- Re: [tcpm] TCP Four-Way Handshake David Borman
- Re: [tcpm] TCP Four-Way Handshake Joe Touch
- Re: [tcpm] TCP Four-Way Handshake David Borman
- Re: [tcpm] TCP Four-Way Handshake Joe Touch
- Re: [tcpm] TCP Four-Way Handshake David Borman
- Re: [tcpm] TCP Four-Way Handshake Joe Touch
- Re: [tcpm] TCP Four-Way Handshake David Borman
- Re: [tcpm] TCP Four-Way Handshake Joe Touch
- Re: [tcpm] TCP Four-Way Handshake Yoshifumi Nishida
- Re: [tcpm] TCP Four-Way Handshake Bob Briscoe
- Re: [tcpm] TCP Four-Way Handshake Bob Briscoe
- Re: [tcpm] TCP Four-Way Handshake Joe Touch
- Re: [tcpm] TCP Four-Way Handshake Yoshifumi Nishida
- Re: [tcpm] TCP Four-Way Handshake Bob Briscoe
- Re: [tcpm] TCP Four-Way Handshake Joe Touch
- Re: [tcpm] TCP Four-Way Handshake Bob Briscoe
- Re: [tcpm] TCP Four-Way Handshake Joe Touch