forked from httpwg/wg-materials
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathietf-101-httptre.xhtml
executable file
·170 lines (169 loc) · 7.91 KB
/
ietf-101-httptre.xhtml
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
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>IETF 101 - HTTPtre</title>
<style type="text/css">
@import url('https://fonts.googleapis.com/css?family=Noto+Sans:r,b,i,bi');
body {
color: black;
font-family: 'Noto Sans', cambria, helvetica, arial, sans-serif;
font-size: 18pt;
}
h1 {
font-size: 36pt;
}
pre {
font-family: consolas;
}
tt {
font-family: consolas;
}
li {
margin-top: 0.5em;
}
q {
font-style: italic;
}
del {
color: red;
text-decoration: line-through;
}
ins {
color: green;
text-decoration: underline;
}
.break {
page-break-before: always;
}
@page {
font-family: 'Noto Sans', cambria, helvetica, arial, sans-serif;
size: a4 landscape;
}
@page {
@bottom-left {
content: "Julian Reschke, greenbytes";
}
@bottom-right {
content: counter(page);
}
@top-center {
content: "IETF 101 - HTTPtre";
}
}
</style>
</head>
<body>
<h1>IETF <del>99</del><ins>101</ins> - HTTPtre</h1>
<p>
<a href="mailto:[email protected]">Julian Reschke</a>, greenbytes
</p>
<h2 class="break">History of HTTP in the IETF</h2>
<img src="http-spec-timeline.png" width="100%"/>
<p>Observations:</p>
<ul>
<li>It took long to restart work on HTTP/1.1 (~8 years)</li>
<li>It took long to finish the last revision of HTTP/1.1 (~ 6 years)</li>
<li>There are <b>two</b> current HTTP specifications (HTTP/1.1 and HTTP/2)
<ul>
<li>...not to mention <a href="https://www.greenbytes.de/tech/webdav/draft-ietf-quic-http-10.html">HTTP over QUIC</a>, started in November 2016</li>
</ul>
</li>
</ul>
<h2 class="break">Why and when to update</h2>
<ul>
<li>RFCs are immutable documents</li>
<li>We collect errata and occasionally revise
<ul>
<li>...but the errata are incomplete and hard to discover (RFC-Editor???)</li>
</ul>
</li>
<li>If we start now, we won't be ready before <del>2018</del><ins>2019</ins>, which would be <del>4</del><ins>5</ins> years after publication of RFC 723x</li>
<li>Eventually, the new RFC format will allow us to make the officially published versions more readable</li>
</ul>
<h2 class="break">Current Status</h2>
<p>
We created a (temporary) workspace to resurrect the 723x drafts with complete change history going back to RFC2616:
</p>
<p>
<a href="https://github.com/dwid-org/http11ter">https://github.com/dwid-org/http11ter</a>
</p>
<p>
With minimal edits to reflect status, we posted a set of 00 drafts:
</p>
<ol>
<li>
<a href="https://tools.ietf.org/html/draft-fielding-httpbis-http-messaging-00">draft-fielding-httpbis-http-messaging-00</a>
(<a href="https://greenbytes.de/tech/webdav/draft-fielding-httpbis-http-messaging-00.html">HTML</a>, <a href="https://tools.ietf.org/rfcdiff?url2=draft-fielding-httpbis-http-messaging-00&url1=rfc7230">diffs from RFC 7230</a>)
</li>
<li>
<a href="https://tools.ietf.org/html/draft-fielding-httpbis-http-semantics-00">draft-fielding-httpbis-http-semantics-00</a>
(<a href="https://greenbytes.de/tech/webdav/draft-fielding-httpbis-http-semantics-00.html">HTML</a>, <a href="https://tools.ietf.org/rfcdiff?url2=draft-fielding-httpbis-http-semantics-00&url1=rfc7231">diffs from RFC 7231</a>)
</li>
<li>
<a href="https://tools.ietf.org/html/draft-fielding-httpbis-http-conditional-00">draft-fielding-httpbis-http-conditional-00</a>
(<a href="https://greenbytes.de/tech/webdav/draft-fielding-httpbis-http-conditional-00.html">HTML</a>, <a href="https://tools.ietf.org/rfcdiff?url2=draft-fielding-httpbis-http-conditional-00&url1=rfc7232">diffs from RFC 7232</a>)
</li>
<li>
<a href="https://tools.ietf.org/html/draft-fielding-httpbis-http-range-00">draft-fielding-httpbis-http-range-00</a>
(<a href="https://greenbytes.de/tech/webdav/draft-fielding-httpbis-http-range-00.html">HTML</a>, <a href="https://tools.ietf.org/rfcdiff?url2=draft-fielding-httpbis-http-range-00&url1=rfc7233">diffs from RFC 7233</a>)
</li>
<li>
<a href="https://tools.ietf.org/html/draft-fielding-httpbis-http-cache-00">draft-fielding-httpbis-http-cache-00</a>
(<a href="https://greenbytes.de/tech/webdav/draft-fielding-httpbis-http-cache-00.html">HTML</a>, <a href="https://tools.ietf.org/rfcdiff?url2=draft-fielding-httpbis-http-cache-00&url1=rfc7234">diffs from RFC 7234</a>)
</li>
<li>
<a href="https://tools.ietf.org/html/draft-fielding-httpbis-http-auth-00">draft-fielding-httpbis-http-auth-00</a>
(<a href="https://greenbytes.de/tech/webdav/draft-fielding-httpbis-http-auth-00.html">HTML</a>, <a href="https://tools.ietf.org/rfcdiff?url2=draft-fielding-httpbis-http-auth-00&url1=rfc7235">diffs from RFC 7235</a>)
</li>
</ol>
<h2 class="break">Scope - the obvious</h2>
<ul>
<li>Apply errata (see <a href="https://www.rfc-editor.org/errata_search.php?rfc=7230">RFC 7230 errata</a> etc)</li>
<li>Update references (not too many, it seems)</li>
<li>Resolve issues reported at <a href="https://github.com/httpwg/http11bis/issues">https://github.com/httpwg/http11bis/issues</a>, currently ~<del>30</del><ins>50</ins></li>
<li>Minimal changes to guide readers to HTTP/2 spec</li>
</ul>
<h2 class="break">Scope - the less obvious</h2>
<p>Re-organize once more?</p>
<ul>
<li>Split information specific exclusively to HTTP/1.1 into a separate document and relabel everything else just "HTTP"
<ul>
<li>...see <a href="https://tools.ietf.org/html/draft-bishop-decomposing-http-01">draft-bishop-decomposing-http</a></li>
</ul>
</li>
<li>Recombine some or all of RFC7231..RFC7235 into a single document</li>
</ul>
<p>Include stuff that should have been part of HTTP in the first place?</p>
<ul>
<li>Status 308 (<a href="https://www.greenbytes.de/tech/webdav/rfc7538.html">RFC 7538</a>)</li>
<li>Authentication-Info and Proxy-Authentication-Info (<a href="https://www.greenbytes.de/tech/webdav/rfc7615.html">RFC 7615</a>)</li>
<li>Client-Initiated Content-Encoding (<a href="https://www.greenbytes.de/tech/webdav/rfc7694.html">RFC 7694</a>)</li>
<li>...? Maybe <a href="https://www.greenbytes.de/tech/webdav/draft-ietf-httpbis-rand-access-live-latest.html">draft-ietf-httpbis-rand-access-live</a>?
</li>
</ul>
<p>
...advance to full standard? (<del>may</del><ins>might</ins> conflict with other goals)
</p>
<h2 class="break">Today:</h2>
<ul>
<li>Confirm that we want to start - adopt draft-fielding-httpbis-*-00?</li>
<li>Decide scope & timing
<ul>
<li>Relation to QUIC work (people overlap, potential effects for HTTP over QUIC)</li>
<li>Scope will affect how we do things, as potential re-organizations would need to be done very carefully</li>
</ul>
</li>
<li>Time permitting, talk about individual issues</li>
<li>Work mode: resolving issues, communicating progress (process different from other HTTPbis work???)</li>
</ul>
<h2 class="break">Afterthought: annotating HTML versions of RFCs</h2>
<p>
We <b>can</b> inline some errata information <a href="https://www.greenbytes.de/tech/webdav/rfc2629xslt/rfc2629xslt.html#rfc-editor.errata">already</a> (in inofficial variants, that is):
</p>
<a href="https://www.greenbytes.de/tech/webdav/rfc7230.html#transfer.codings"><img style="border: 1px solid;" src="errata-include.png" width="75%"/></a>
<p>
...and we could extend that to information in Github issues.
</p>
</body>
</html>