forked from httpwg/wg-materials
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathminutes.txt
368 lines (312 loc) · 21.5 KB
/
minutes.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
# Minutes
HTTPbis Working Group - IETF 87, Berlin
## Wednesday Session
### HTTP/1.1 Issues
We discussed a number of issues in Trac, including #470, #475, #458, #345, #455
and #486. No decisions were made, but the editors were able to discuss their
status and allocate owners; expect proposals to be incorporated in the next set
of drafts and/or discussed on list.
### Known Startup State for HTTPS
Gabriel presented to see if we agreed that we need to request TLS provide a
mechanism for conveying the startup state for HTTPS; however, we did not yet
reach consensus on this, as it was felt it needs more discussion.
### HTTP/2 Issues
We did a run-through of the open issues to triage them for the upcoming Hamburg
discussions. In this process, we were able to close a number as already
incorporated in the -04 draft.
We agreed that for isssue #174, it should change to MUST.
## Friday Session
Note well reviewed. Mark review the agenda: HTTP and Encryption, HTTP/2 with a
Transport Eye (Allison Mankin), 20 Min Flow Control, 20 Minutes Priorities, 20
min Initial Congestion Window 20 Min General Discussion/Other issues. He notes
that the primary reason for the meeting was to give a joint meeting with the
Transport Area, but because of recent events he and the Security ADs felt that
it was timely to have a short discussion (time bound to 15 minutes) on
encryption. The transport discussion will follow.
### HTTP and Encryption
Next Presentation, also by Mark, begins, on HTTP & Encryption. HTTP/1.1 has no
Mandatory to Implement to Security; that was an artifact on how long its been
around (Larry Masinter disagrees with this characterization; the rational for
allowing connections to remain un-encrypted was the same then as now. This
discussion was delayed). SPDY introduced Madatory to Use Security; this was
discussed for HTTP2.0; the working group declined, because of use cases like
back end services. The status quo is: Server Chooses whether encryption is used
or not--if the server does not offer encryption with an https URL, the client
cannot use it. It is an assymetric relationship.
There is new information; there are widespread deployments of sniffers. More
details have since been released. As Chair, Mark felt that this was enough to
re-open the discussion. He suggests a few proposed actions--these are the start
of the discussion, not an ending. Martin notes that the scheduling conflict of
TLS being against this working group means that many who care are not present.
Mark splits the discussion into HTTP/1.1 and then 2.0. Mark notes that there
are limits on what we can do for 1.1. He proposes that we document the
asymmetry and the consequences; while it does not do more than describe the
issue, since we are re-describing the properties of the protocol, it would be
good to do. See slides for the proposed additions, but “servers out to
implement and prefer HTTPS”. That’s not necessarily adequate, but more might
come from TLS as they document the security properties of their protocol. He’s
not looking for lots of discussion, but a sense of the room of publication of
something like this. Two hums: do we want to pursue documenting this in the
security considerations in the 1.1 drafts (probably in the first document in
the series)? Alternately is that not a good idea?
Gabriel notes that the choice not to send packets is always packets. Larry
notes that he believes this is political theatre--there is no technical
judgement that you can apply here. We should focus on the technical work here.
Mark agrees that there may be a bit of political action here, but notes that
the security considerations already have many corner cases reflected, and doing
those and not this seems odd. Barry asks if there are implementations that do
not implement HTTPS? Yes.
First Hum: is this an interesting discussion for documenting in our HTTP/1.1
document? Strong Hum. The reverse: a much weaker but still present hum. Mark
says that we will continue on the list, but will cut it off if it becomes a rat
hole.
Proposed HTTP/2.0 discussion of the same topic begins. New issue, since this is
a new protocol. Mark wants to introduce the idea of equal power; a client can
negotiate/require use of encryption for HTTP URIs. He would like this
discussion to become more explicit. The second piece is proxy
discover/interactions. The interposing proxies need an answer for this; the
user needs to understand what is happening and have an opportunity to say that
no, this is not what is happening. We need to think more carefully about
protocol interactions. This is *NOT* about enabling man-in-the-middle
interception of encrypted traffic. The documentation of HTTPS is for end-to-end
security and that will not change. Liaison with TLS and W3C may be required.
For the HTTP 2.0, he would like to take those hums.
Larry Masinter notes that the topic was mandatory to implement security, but
some of what he said was not the same. Mark says “mandatory to offer” is closer
to what he said. Larry said proxy behavior taxonomy may be necessary. Mark
notes that if we disenfranchise proxy use cases, we will have deployment
problems. Gabriel Montenegro believes that encouraging the use of encrypted
capabilities is wonderful, but he wants to understand if this disallows parties
speaking without encryption? Mark clarifies that if both parties truly want to
use a clear channel, it should be possible. Greg Maxwell notes that it may be
useful to distinguish between security and encryption--e.g. authentication may
require other costs over and above those of encryption. Bob Briscoe of BT. He
hasn’t been involved since 1995, but had come for the transport bit. He wonders
if from the proxy point of view the least it can do is stop the bits flowing
(client present this to a user--the proxy says “use me or you are out of luck”).
Who believes that these issues are worthy of further discussion: Hum in
support:strong hum. Hum against: silence. Good, and we are now at the end of
the alloted time for this.
### Transport Joint Meeting
Next topic, Allison Mankin’s presentation, “HTTP2.0 with a TSV Eye”.
Allison introduces herself as the TSV technical advisor to the WG. Motiviation;
the transport area decided it would like someone with TCP to follow the work,
but this is still an individual’s perspective. She hopes to foster a
constructive, ongoing relationship. She introduces her “phrase book” for
traveling between areas. Puts up examples “hop-by-hop, flow control, streams”,
even transport (e.g. optical transport vs. transport protocol). That means that
the ability to skim is limited--review needs time.
She then puts up the 5 myths format. Myth 1--that http 2.0 might not address
and mitigate the use of many concurrent TCP connections. Myth 2--that HTTP 2.0
may try to appropriate/duplicate windowing and data management roles of TCP.
Myth 3- that HTTP 2.0 may try to move congestion control and avoidance into the
application, possibly replacing TCP with a streamlined transport without native
congestion control and congestion avoidance. Myth 4-- that prioritization in
HTTP 2.0 is related to (and/or clashes with) priotization implemented in
various transport and lower layer protocols. [Mic lines were asked to stand
down, so that the story can complete; note that others may have other views]
Goes into Myth Busting. For Myth 1, notes that HTTP/2.0 work so far clearly
does reduce the need for concurrent TCP connections and the working group is
focused on this. For Myth 2, the frame and streams mentioned do not match the
transport concepts--they serve application processing needs; this is a
travelers’ phrase book problem. Myth 3, HTTP2.0 has flow control functions;
this is not the same as CA/CC. This is *application service flow*, not the flow
of the transport. This allows the system to serve well-recognized HTTP
intermediaries. Some of this text is confusing to those coming with a transport
eye, but this is still a myth we can bust. For Myth 4, these are not associated
with QoS, and are not described in a way that matches up with transport types
*but* there is some language connecting priority frames connect to the
bandwidth delay product, so it may be something to examine for transport folks.
Myth 5 (the bonus myth) is that HTTP 2.0 leads to the replacement of TCP by a
new transport. Are there discussions of replacing TCP as the substrate of HTTP?
Yes, there are discussions of this, but the HTTP 2.0 work item is unequivocally
tcp-mapped. The initial congestion window experiments were removed from the
spec. TCP-Minion and QUIC are both coming along. TSV has long acknowledged that
applications can ask for things which are not the basic byte stream. SCTP,
PR-SCTP DCCP are actually representations of the transport aim to meet the
needs of other customers. So work of this type is not a problem.
Allison also compliments the WG on its intensive work style. Frequent interim
meetings, github working methods, and the development of a state diagram for
the stream lifecycle. There are still points for TSV review. GoAWAY and
RST_STREAM; this still in need f review. TSV style review of the risks of
off-path attack in general--the area is sadder but wiser about these. TSV style
review of data integrity issues, e.g. binary and compressed headers. Weak TCP
checksum failure probably furthers case for “TLS everywhere” in the HTTP2.0
world.
Going forward, TSV needs close listening, close reading of the review. Also
looking at research on SPDY versions may help TSV folks; pace of innovations
should be resonant to TSV folks. Finally, A gratuitous photo fo TIergarten
tapir (see slide for the photo)
Mark thanks Allison for her presenation and the mic lines filled--most of the
technical topics are queued up for later sections.
Eliot thanks Allison as well. He notes he has seen at least one person do even
more just-in-time presentation (3 seconds in advance). For the weak TCP
checksum issue, TLS is not required, so we cannot rely on it. Allison says it
may be a carrot for using TLS, not a full requirement. It should come up. Mark
steals the front mic, and notes that some folks have considered asking for a
checksum for the headers themselves.
Bob Briscoe wants to go through 3 of the myths from a different view. The first
one--slowing the growth of more flows; there is a problem the other way around.
It is not about HTTP is doing, it is about what TSV is doing to incentives
using more flows (e.g. in RMCAT measuring whether two flows are getting
fairness, rather than looking at session level. AQM presents a similar issue
(e.g. in fq_codel)). In message flow control myth, notes that TSV *does* have
expertise there as well and may be able to help. Allison notes that the
document notes that it can evolve and more work is needed. On the question of
stream handling, Bob reiterates that there is a lot of work in TSV on this
topic, and he wonders if we will end up duplicating. Early recognition of this
is useful. Bob also notes that there is a lot of work on latency going on,
TCPMaint is where most of that is going on, but AQM as well. TCP fast open,
work on reducing the length of slow start; there has been work on TLS false
start as well.
Jim Gettys cannot overemphasize of the impact and collateral damage that HTTP
has already imposed on the internet, limiting RTCWEB and other work. Points to
his blog, which describes the way in which HTTP1.1 was deployed gamed the
system in its own favor. Bufferbloat and HoL are well known, but the damage to
everything but web browsing is very heavy. We have to drain a swamp. We don’t
want to be here again in 10 or 15 years to stop another gaming of the
transport. He really wants people to understand minion and its potential
deployment path--he believes that the work can serve the web really well, and
it has a straightforward deployment strategy. It will give you a lot of what
the web needs. Cross-fertilization between that work and this needs to go
forward.
Michael Tuexen continues the theme and wants the cooperation between this
working group and the transport. In particular, what features and services
would be valuable is really needed (byte stream? something else?). Other things
are on the table: quic, sctp/udp. Mapping from candidates to services needed,
then deployment considerations.
David Black here as a STORM co-chair. There is already precedent with a weak
checksum (iscsi defines its own checksums). He suggests that there is an
opportunity to have a header checksum and a data checksum; this works well
through proxies. These checksums are defenses against flaky behavior, not
malice. If you want the latter, you need something else, e.g. TLS.
Larry Masinter--of what you discuss, measurement may be the critical one; we
need to see that http2.0 will be better in the real world. Transport has more
experience measuring in this area and cross-fertilization would be good.
Gabriel Montegro sees two subdivisions of this dialog--what is TSV doing
independently of us (e.g. general services work). The other is describing our
layering more explicitly so that it becomes easier to re-layer on other things.
A different dialog would be when HTTPbis is doing “transport-like things”, we
can get help from TSV on approaches. Flow control is one example, as the
principles and algorithms may be common or pluggable. The other point is what
you mentioned about window shrinking--both TCP and SCTP strongly discourage
window shrinking (should not, not must not). In the web, there is confusion
when it does happen; that may also be something we can take in and learn from.
Michael Sharf, co-chair of TCPM, emphasizes that it is a bi-directional
relationship; we need insight from you for evolving TCP (and TCP is still
evolving). TCP recently published an experimental RFC for increasing the
window. We also have the work on fast open, which may fit well here, since it
is focused on latency. We are interested in input there, especially on the
semantics for applications. Input is very well. Lastly, we have a working group
item on congestion window validation. These may be of interest to you, and may
be a place of
Martin Stimmerling plus ones Michael’s words, but also wants to reinforce that
you need to work on what’s there--looking at minion and quic is great, but we
need to run on what’s there. Mark notes that the timing with minion is
problematic as adopting it now would give best results, but it is not ready.
Jana thanks folks for this meeting. He wants to say transport that we’ve been
shy about talking about APIs, and that may have been a problem. We create
exhaustive but not very useful lists of transport features. We need application
developers to see APIs in clearer terms and expose them in clear terms--a
service model. Gorry Fairhurst notes that API discussions are *not* banned;
David Black plus one’s. As a Transport AD, Spencer pointed out that Jana did a
touchdown sign with both hands when he got that statement. Michael came up to
say that TCPM was rechartered and that API work is in scope. Much rejoicing in
the room.
Jim Gettys points out that this interaction showed the value of flow queueing.
He then reiterated that a lot of this reinforces the language issues; we need
common vocabulary.
Roberto Peon notes that *deployed* features are the first order bit looked at
by applications; is it there and will it be available are more important than
any other features. SCTP, if it had gotten past the chicken and egg, would be
used today. Roberto also noted that we have had implicit rather explicit APIs.
Mirja Kuehlewind notes that she has tried to follow the HTTPbis work, but it
has been hard because there is so much going. Mark Nottingham pointed to the
wiki and github pages.
Michael Tuexen went back to the *services* view; exact socket options may be
too detailed a question. The key question is whether the service is available.
That may be available in ways that are not direct APIs--e.g. SCTP over UDP. A
list of service requirements may be important for deciding if they can be made
available, rather than what the socket options are. Mark wonders if there is a
list of available services; Michael pointed to a previous set of slides (and
audio stream). Mark looks for stuckees to own chasing this? Michael says he
will be happy to help. Janardhan Iyengar suggest that we have taken a jab at
this in minion, but it would be great to generalize that. Will Chan asks what
it is that TSV wants HTTPBIS would describe? He feels like the elephant in the
room might be QUIC. He wonders if folks are looking at this services question
because folks are wondering why people went to QUIC.
Michael Tuexen says HTTPBis needs to say “here are the features that we need”
that are important enough that we would consider changing the transport
protocol. Will Chan notes that we have not done that within HTTP so far--we are
building on TCP. Mark Nottingham notes that he feels a wish list exercise might
be a time sink for his working group; he feels it should be transport area,
hopefully not for selfish reasons. Gorry notes is is Transport and Services, so
it would be good to restore the S. He also says that it would be good to have
that list with a focus on what is really needed, not a wish list.
Martin says we have offered QUIC time at the TSVWG, and they have been told
they will come, but later.
Andrew McGregor notes that there is knowledge in AQM on how to make
message-based transports work well, and it may be useful to coordinate there.
He also notes that splitting the agenda and publishing different conflict lists
would be useful.
Roberto notes that he has a list here, and he can send it out, but he believes
transport people know all of it and are working on it, but it needs to get
deployed.
Patrick McManus knows the transport area and has been active there, but he is
here as an HTTP 2.0 guy. In that guys, he notes that the effort is to work with
TCPs that are in the wild. Those are the transport equivalent of our middlebox
discussion--what can we do in those constraints? Mark agrees that this is a
good point. Patrick also notes that we can still work on these and share data,
but note that deployment and iteration is critical.
Will Chan then presents some data on initial congestion window data. Data not
on agenda, but will be uploaded. He shows a slide of data from Chrome’s beta
channel users (not all uses, but a small set that have opt-ed in to sharing
anonymized data). Roberto notes that “small” is relative, but statiscally
significant group. Will explains the SPDY setting that was a persistent setting
used when there was a successful, graceful close. Chart limited to stable
connections (100kbs or more of data). The x-axis is CWND in packets; the y-axis
is the percentile (histogram). Notes that SPDY connections are initialized to
32, which is the default for SPDY. Lars asks if this available as a CDF? Yes,
that’s the next graph. Shows the data. Patrick McManus notes that they have
“extremely” similar data. Allison notes that a fairly significant number have a
reduced window by the end of the session (initial congestion window of 32,
except when information is present which otherwise colors the data). A lot of
the reason it is below 32 is because of that.
Larry asks if there is data from mod_spdy or others? Will Chan says that Google
does not have that data. Lars Eggert notes that TCPM had a large discussion on
this and came up with 10? Why is that Google is using 32 for this instead of
iw10? Basically because it is trying to compare experience with a multi-tcp
connection experience of 50 or so because of domain sharding; that’s 500 at
iw10, vs 32. Martin suggests that this discussion should continue in TCPM,
instead of here. Will Chan takes an action to have it done--he may pass it to
Jerry or someone else.
Jim Gettys goes back to collateral damage creating head of line blocking in
sigle queue devices--creates 100s of milliseconds of latency in broadband
scenarios. If you want RTCWEB to work, you need to get this solved. Will Chan
notes that we are providing a platform--if the apps on the top of the platform
try to game the system. Jana notes that host limits on the connection provide
limits 6 doing 4 wouldn’t be much better and it can be much than 6 connections.
We can talk about this, but it is a problem worth solving.
Bob Briscoe hides a possible myth or fallacy about the ability to use a large
congestion window. This is a clocked window at the termination, but not clocked
at the restart. If you have a server interface capable of pacing, that you
could get some of this advantage back. Will Chan notes that we have already
removed this from HTTP 2.0; Bob notes that it would be good if we can get it
back. Will agrees, but he clarifies that the existing mechanism was flawed, and
that he recognizes.
Eliot Lear asks if this based on IP address? No. Will clarifies that this is
essentially a cookie--the client connects based on a stored setting.
Martin Thompson possible exhibits a bias that some web applications may not
have the same characteristics because of the server distribution--for many
people this will be within low RTT. Jokes about CDNs ensue. Mirja reiterates
that this is a TCPM topic, and it is scary that it is being presented here for
the second time. Mark clarifies that this is the first HTTPbis has seen the
data. Mirja is concerned that a solution coming from other groups may not have
the right data.
Will notes that Google runs lot of experiments. Jerry Chu notes that he has
been working with this data and he has been trying to share it. They are
working on pacing now as a result. Mark asks for continuing that information
sharing.
Martin will invite the HTTPBis folks to come to the transport area meeting.
Mark says thanks and encourages clear agenda items to encourage participation.
Then next meeting is Hamburg, next week.