#206: `Accept-CH` header is weird

Visit on Github.

Opened Oct 17, 2017

Following on from #190, the Accept-CH header seems strange. We're trying to understand its motivation.

The latest draft spec notes cache-friendliness as a reason for the header. This motivation isn't entirely clear; aren't servers allowed to specify which headers to Vary on?

Other reasons we have heard include header bloat, but this hasn't been quantified for us. I.e., if a large fraction of high-traffic sites opt-in via Accept-CH, it seems probable that Accept-CH + DPR, Width, etc. data would be larger than simply sending all values all the time.

Lastly, it doesn't seem that there's a privacy motivator, given that this is a server opt-in.

This design complicates some scenarios and makes it harder to design new APIs. If header bloat is a major issue for the platform, the TAG would also like to be aware so as to help avoid designs that would encourage the addition of new headers. As yet, this case hasn't been clearly articulated with data we've seen.

Please help, @mnot, @triblondon, @igrigorik!

Discussions

2018-03-06

Minutes

Peter: Google was going to go talk to some people...

Alex: I did. I now understand that the reason the hints are not being sent on the initial nav is that some folks who represent the net team are resistent to sending this data. (For reasons not privacy related.) These folks haven't seen the compelling argument yet... Concerns about size (how much can afford to send). Pretty extrodinarily that this will be resolved soon. Plan is to show effectivness on sub-resources first, then use that data to convince the team to put it on the initial request. Politics. We shold note in our review that the inital request should send the data and inquire who can take the feedback.

Peter: Andrew had some strong feedback--please sync with him first.