Re: should we specify HTTP/1.1 now that HTTP2 is out?

Eliot Lear <lear@cisco.com> Wed, 04 October 2017 04:53 UTC

Return-Path: <lear@cisco.com>
X-Original-To: ietf@ietfa.amsl.com
Delivered-To: ietf@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D1816132D17 for <ietf@ietfa.amsl.com>; Tue, 3 Oct 2017 21:53:54 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.5
X-Spam-Level:
X-Spam-Status: No, score=-14.5 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
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 4ErTfP3AwETT for <ietf@ietfa.amsl.com>; Tue, 3 Oct 2017 21:53:53 -0700 (PDT)
Received: from aer-iport-1.cisco.com (aer-iport-1.cisco.com [173.38.203.51]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 759891320D9 for <ietf@ietf.org>; Tue, 3 Oct 2017 21:53:52 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=4524; q=dns/txt; s=iport; t=1507092832; x=1508302432; h=subject:to:references:from:message-id:date:mime-version: in-reply-to; bh=5ewmVHspNe0rcxGY5FVsnBb4NgH81KaV7+zl0BBt5qU=; b=B0ypH7Hu7ompoENsGPTlXZI0Gz57JO91+CVfA6ifRrLhSuURsOJT7whc n/obe2Mi3rzMlGtgGsMwNOrT++4im1dm7LoJNr9TZfrvLgDa1L6Gnprki m+/bkk+vM3QP2kG+t0OTUm0LmGmg41TMqCbOKTj9ysw/CoELEPyCtNE34 M=;
X-Files: signature.asc : 481
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0CFAQDKaNRZ/xbLJq1dGQEBAQEBAQEBAQEBBwEBAQEBhEFuIAeDeosTkDorhVGCco97BwMfgWKDOgKFERQBAgEBAQEBAQFrKIUYAQEBAQMjZgsRBAEBASoCAk8IBgEMBgIBAYoUAxUJphGCJ4sgAQEBAQEBAQEBAQEBAQEBAQEBARAPgy2FPSuCfYJeghCDKYJhBYgsDJAgiB48hDyCIYEBiBSEc4IUW4UUg1qHLIxwAjWILYE5NiGBDjIhCB0Vh2g+NolIAQEB
X-IronPort-AV: E=Sophos;i="5.42,476,1500940800"; d="asc'?scan'208";a="697760274"
Received: from aer-iport-nat.cisco.com (HELO aer-core-1.cisco.com) ([173.38.203.22]) by aer-iport-1.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 04 Oct 2017 04:53:47 +0000
Received: from [10.61.238.204] ([10.61.238.204]) by aer-core-1.cisco.com (8.14.5/8.14.5) with ESMTP id v944rlT2022248; Wed, 4 Oct 2017 04:53:47 GMT
Subject: Re: should we specify HTTP/1.1 now that HTTP2 is out?
To: Lloyd Wood <lloyd.wood@yahoo.co.uk>, Michael Richardson <mcr+ietf@sandelman.ca>, "ietf@ietf.org" <ietf@ietf.org>
References: <561.1507067891@obiwan.sandelman.ca> <1443008366.1369572.1507080889047@mail.yahoo.com>
From: Eliot Lear <lear@cisco.com>
Message-ID: <f385afe4-9fdc-86d4-b070-44906b9242c2@cisco.com>
Date: Wed, 04 Oct 2017 06:53:50 +0200
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:52.0) Gecko/20100101 Thunderbird/52.3.0
MIME-Version: 1.0
In-Reply-To: <1443008366.1369572.1507080889047@mail.yahoo.com>
Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="lFqDQLJsS0GUp0MBJPfaGW6mx3FIgn8Qi"
Archived-At: <https://mailarchive.ietf.org/arch/msg/ietf/nz5iXPG5_NZ2uZ8AqidQglo7E6s>
X-BeenThere: ietf@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: IETF-Discussion <ietf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ietf>, <mailto:ietf-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ietf/>
List-Post: <mailto:ietf@ietf.org>
List-Help: <mailto:ietf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ietf>, <mailto:ietf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 04 Oct 2017 04:53:55 -0000

This is properly RESTful.


On 10/4/17 3:34 AM, Lloyd Wood wrote:
> Based on experience, I would say that the state issues
> will likely occur with TCP accelerators over a satellite
> link.
>
> HTTP/1.1 isn't as deterministic as you would like to
> think once an accelerator with prefetching is involved,
> and this can break the assumptions of security protocols
> layered over HTTP/1.1.
>
> If you're really properly RESTful, this shouldn't be
> an issue, of course...
>  
> Lloyd Wood lloyd.wood@yahoo.co.uk http://about.me/lloydwood 
>
>
>
> ________________________________
> From: Michael Richardson <mcr+ietf@sandelman.ca>
> To: ietf@ietf.org 
> Sent: Wednesday, 4 October 2017, 8:58
> Subject: should we specify HTTP/1.1 now that HTTP2 is out?
>
>
>
>
> I'm seeking guidance.  It might be that this is a job for lwig, or perhaps
>
> there is already a document which details how to do the profiling I care
>
> about.  If so, please point me at that.
>
>
> In ANIMA's BRSKI protocol, which is based upon RFC7030 EST, we run over HTTP
>
> 1.1 today using a single TCP connection.
>
> It's HTTP over TLS ("HTTPS") [h2c?] rather than an upgrade.
>
>
> In BRSKI there are state issues with both the TLS and the HTTP process.
>
> The TLS server certificate is not trusted by the client until after at least
>
> one RESTful interaction occurs.  Only once that has occured is the connection
>
> considered secure.
>
>
> We are concerned about how the protocol could become broken if used with
>
> HTTP2 with interleaving of requests/responses.   With HTTP (port-80)
>
> transactions, using the RFC7540 section 3.2 upgrade, one could just decline
>
> to ever do the upgrade and be done.  With HTTPS, this is negotiated in
>
> the TLS connection, so one can go to HTTP2 directly, I think.
>
>
> While limiting ourselves to HTTP/1.1 might be a good policy, I worry that
>
> at some point in 10 years, the HTTP/1.1 code might be in the library only to
>
> support our use case, with the application code on the device having moved on
>
> to HTTP2 only.
>
>
> What I think we are looking for is a set of things we can specify that
>
> will make HTTP2 as deterministic (and slow!) as HTTP/1.1. For instance,
>
> I think that
>
>         SETTINGS_MAX_CONCURRENT_STREAMS = 1
>
>
> would do 90% of it.  Should we turn off PUSH?
>
> Can/should we recommend lower values for window sizes, etc?
>
> (ANIMA end points are not constrained in the IoT/RFC7228 sense, but rather
>
> are control plane CPUs, with megabytes of ram, often partitioned at boot
>
> time.  But, ANIMA BRSKI may also applies to Web connected devices like the
>
> baby monitors that have wreaked havoc.)
>
>
> --
>
> Michael Richardson <mcr+IETF@sandelman.ca>, Sandelman Software Works
>
> -= IPv6 IoT consulting =-
>
>