Re: HTTP 2.0 "Upgrade" flow

Ilya Grigorik <ilya@igvita.com> Sun, 14 April 2013 22:05 UTC

Return-Path: <ietf-http-wg-request@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D19CD21F8CA1 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Sun, 14 Apr 2013 15:05:15 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -9.976
X-Spam-Level:
X-Spam-Status: No, score=-9.976 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id L-6OjVSSFj13 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Sun, 14 Apr 2013 15:05:13 -0700 (PDT)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) by ietfa.amsl.com (Postfix) with ESMTP id BE26721F8C98 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Sun, 14 Apr 2013 15:05:13 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.72) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1URV1v-0007Zp-2D for ietf-http-wg-dist@listhub.w3.org; Sun, 14 Apr 2013 22:04:11 +0000
Resent-Date: Sun, 14 Apr 2013 22:04:11 +0000
Resent-Message-Id: <E1URV1v-0007Zp-2D@frink.w3.org>
Received: from lisa.w3.org ([128.30.52.41]) by frink.w3.org with esmtp (Exim 4.72) (envelope-from <ilya@igvita.com>) id 1URV1s-0007Yr-QE for ietf-http-wg@listhub.w3.org; Sun, 14 Apr 2013 22:04:08 +0000
Received: from mail-qe0-f47.google.com ([209.85.128.47]) by lisa.w3.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.72) (envelope-from <ilya@igvita.com>) id 1URV1s-0005Vd-0c for ietf-http-wg@w3.org; Sun, 14 Apr 2013 22:04:08 +0000
Received: by mail-qe0-f47.google.com with SMTP id w7so2364343qeb.6 for <ietf-http-wg@w3.org>; Sun, 14 Apr 2013 15:03:42 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:x-received:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-type:x-gm-message-state; bh=sEEMvw8Bt5oKfzFLKJQ8OjORygSm7tAzPIzqDUWsrbI=; b=VeegwvhLf89jpIZJvRatTMgcEq/+cSDe65QMsFLKcj7E16iWrWwIeEOXfrNIWJbDIo jY/KzB4SBbDUAmIJz2AJlPu2XwyEB2w0nquXSNsf+h9bN/umYexfmSfqeHewiH2Dh9MV /L1G3DsoFb0O7/PCT4//oeX9GuMXQ3Cg2CwA9EgYI6Uz/4gwGflIaamt21WzEngC8ZY7 l6jgj8xuNmrhnUX/ccE5Zm6s6L9WiyNGZz+yjm6G2B9tUdGyub0Lf5m6D6zPjhlUgglg nRNIIc3OKUSHwboz2GV/T44MNnZG+37DX9LgEFKaY2+EgzpNQ+F8+xNvM8I26JLgVl96 budQ==
X-Received: by 10.224.119.76 with SMTP id y12mr20107629qaq.37.1365977022344; Sun, 14 Apr 2013 15:03:42 -0700 (PDT)
Received: from mail-qc0-x22d.google.com (mail-qc0-x22d.google.com [2607:f8b0:400d:c01::22d]) by mx.google.com with ESMTPS id n14sm28635048qaq.3.2013.04.14.15.03.40 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Sun, 14 Apr 2013 15:03:41 -0700 (PDT)
Received: by mail-qc0-f173.google.com with SMTP id b12so1937493qca.32 for <ietf-http-wg@w3.org>; Sun, 14 Apr 2013 15:03:40 -0700 (PDT)
X-Received: by 10.229.6.1 with SMTP id 1mr7117466qcx.17.1365977020078; Sun, 14 Apr 2013 15:03:40 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.49.36.66 with HTTP; Sun, 14 Apr 2013 15:03:00 -0700 (PDT)
In-Reply-To: <20130414213939.GA6299@LK-Perkele-VII>
References: <CAKRe7JEiryo+Z4m2OMLibY2c4Eb5nZjfEMzoaADKNvshohh7eQ@mail.gmail.com> <20130414213939.GA6299@LK-Perkele-VII>
From: Ilya Grigorik <ilya@igvita.com>
Date: Sun, 14 Apr 2013 15:03:00 -0700
Message-ID: <CAKRe7JEw5nQxg5uQBp44QhuCxUq37QUesx6nBDKFEAQDeUrkVg@mail.gmail.com>
To: Ilari Liusvaara <ilari.liusvaara@elisanet.fi>
Cc: "ietf-http-wg@w3.org Group" <ietf-http-wg@w3.org>
Content-Type: multipart/alternative; boundary="0015175770800dac8204da594f5c"
X-Gm-Message-State: ALoCoQnMjjr7f6C14ZLwJPZWpzCij5zHsVtgFeoZSi2DKEQ4GJu3TM+NPfilBkHuc+cxn95+UzN3
Received-SPF: pass client-ip=209.85.128.47; envelope-from=ilya@igvita.com; helo=mail-qe0-f47.google.com
X-W3C-Hub-Spam-Status: No, score=-2.6
X-W3C-Hub-Spam-Report: BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001
X-W3C-Scan-Sig: lisa.w3.org 1URV1s-0005Vd-0c 4df7b6fcfeddf205b7a10077c5c1faa0
X-Original-To: ietf-http-wg@w3.org
Subject: Re: HTTP 2.0 "Upgrade" flow
Archived-At: <http://www.w3.org/mid/CAKRe7JEw5nQxg5uQBp44QhuCxUq37QUesx6nBDKFEAQDeUrkVg@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/17223
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <http://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

On Sun, Apr 14, 2013 at 2:39 PM, Ilari Liusvaara <
ilari.liusvaara@elisanet.fi> wrote:

> > How does this work in light of the client/server session headers? Do we
> > skip the client session header and send the server session header,
> followed
> > by response frames? Or does the client have to wait to get the 101, and
> > then send the client session header before the connection can proceed?
>
> Of course, client has to wait for server session header or it sends
> something designed to cause things to break...


The "of course" part is not obvious. If this is indeed the intent, then we
should state it explicitly. Aka, the expected flow would be:

 >    GET /default.htm HTTP/1.1
 >    Host: server.example.com
 >    Connection: Upgrade
 >    Upgrade: HTTP/2.0

 <    HTTP/1.1 101 Switching Protocols
 <    Connection: Upgrade
 <    Upgrade: HTTP/2.0

 <    [ HTTP/2.0 server session-header
 <    [ HTTP/2.0 response frames

The client session header
(0x464f4f202a20485454502f322e300d0a0d0a4241520d0a0d0a)
is explicitly omitted in this exchange.

Correct?

ig