New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 671310 link

Starred by 21 users

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 3
Type: Bug

Blocked on:
issue 662197



Sign in to add a comment

Support 103 Early Hints in HTTP/2.

Project Member Reported by b...@chromium.org, Dec 5 2016

Issue description

Currently (that is, as soon as  issue 662197  is fixed) 1xx informational headers are ignored.  Adding support for 103 Early Hints would entail plumbing it through from SpdyStream to SpdyHttpStream to HttpTransaction to the renderer.  (Supporting the HTTP/2 is more interesting than the HTTP/1.1 case, as one can assume that servers that care enough about performance will use HTTP/2.)

Current draft at https://tools.ietf.org/html/draft-kazuho-early-hints-status-code-00.
 
Worth noting that this is potentially a pretty big undertaking - it would have to be plumbed through all ResourceHAndlers, ResourceThrottles, extensions, etc, some of which probably don't currently expect multiple sets of headers.

Also, one weirdness here is that if the response is cached, then we lose all 103 hints (Weird!)

Comment 2 Deleted

Do servers currently support early hints? I've surfed the net a bit and neither google.com nor gmail.com send the header 103. I've added log right here - https://cs.chromium.org/chromium/src/net/spdy/spdy_stream.cc?l=438 

Does any body know a good set up in order to test early hints? AFAIK, npm supports that, but I need to add https there in order to establish http/2

Comment 4 by m...@mnot.net, Mar 1 2017

There's a test endpoint up at https://nghttp2.org/?103-eh

Comment 5 by y...@yoav.ws, Jul 5 2017

Cc: y...@yoav.ws

Comment 6 by m...@mnot.net, Sep 21 2017

FYI, this is likely to be an RFC soon.

Comment 7 by m...@mnot.net, Sep 22 2017

WRT the concern that the cached response loses the hints -- the spec is worded to indicate that they're hints of headers that will appear in the final response, so when that's the case, they will be cached.

Comment 8 by addyo@chromium.org, Nov 17 2017

Cc: addyo@chromium.org

Comment 9 by b...@chromium.org, Mar 20 2018

For reference, this has indeed been published as RFC8297: https://tools.ietf.org/html/rfc8297.

Comment 10 by m...@mnot.net, Mar 21 2018

Firefox implementing: https://bugzilla.mozilla.org/show_bug.cgi?id=1407355
Cc: tsteiner@google.com
Project Member

Comment 12 by bugdroid1@chromium.org, Jun 7 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d611ebfba50d215d4257ee89b4ef890a016d31b2

commit d611ebfba50d215d4257ee89b4ef890a016d31b2
Author: Bence Béky <bnc@chromium.org>
Date: Thu Jun 07 04:34:34 2018

Add Net.SpdyResponseCode histogram to track HTTP/2 response codes.

This would be useful to see how often servers send a 103 Early Hints
response (to be able to better prioritize implementing support), and to
see how often servers send a 101 Switching Protocols response (which
means their WebSocket over HTTP/2 implementation is broken), and a whole
bunch of other things.

Bug: 671310, 801564
Change-Id: I9e66acb6405793c4b3c12cf9d5b32edb2262c70b
Reviewed-on: https://chromium-review.googlesource.com/1087583
Reviewed-by: Zhongyi Shi <zhongyi@chromium.org>
Reviewed-by: Gayane Petrosyan <gayane@chromium.org>
Commit-Queue: Bence Béky <bnc@chromium.org>
Cr-Commit-Position: refs/heads/master@{#565179}
[modify] https://crrev.com/d611ebfba50d215d4257ee89b4ef890a016d31b2/net/spdy/spdy_stream.cc
[modify] https://crrev.com/d611ebfba50d215d4257ee89b4ef890a016d31b2/tools/metrics/histograms/enums.xml
[modify] https://crrev.com/d611ebfba50d215d4257ee89b4ef890a016d31b2/tools/metrics/histograms/histograms.xml

Comment 13 by m...@mnot.net, Jun 8 2018

I'm not sure how much useful data this is going to give you, considering that sites won't start emitting 103 until browsers do something useful with it. (insert comment about chickens and eggs).

Comment 14 Deleted

I need fast Internet. Faster response. More speed. I am not satisfied with how browsers are slow nowadays. Make the response time faster and you will revoltionize the Internet. 

Sign in to add a comment