HTTP
Web用通信プロトコル WebブラウザとWebサーバの間での通信に使われる
電子メールのMIMEをベースに拡張されているような形式 HTTP, WebSocket など
HTTP/0.9 1.0 1.1 は TCP上、HTTP/2はSPDYベース、HTTP/3はQUICベースで開発されている TLSのALPN拡張で選択 (RFC 7301, RFC 7639)
SPDYはHTTPSのみ、HTTP/2は実装がHTTPSのみ? HTTP/3 は TLS対応のHTTPSのみ Semantics は共通
RFC 5246 TLS 1.2
RFC 7301 TLS-ALPN
RFC 9113 HTTP/2
RFC 7541 HPACK
RFC 8446 TLS 1.3
RFC 9114 HTTP/3
フレームサイズ (24bit?)
フレームタイプ (8+8bit?)
HEADERS, DATAなど
ストリームID (31bit)
QUIC
flag 1
table:HTTP
HTTP/1.1 SPDY HTTP/2 QUIC HTTP/3
TCP UDP
TLS 1.0-1.2 1.0-1.2 1.2 1.2 1.3
non-TLS ○ ✗ ○ ✗ ✗
HPACK
RFC 9532 HTTP Proxy-Status Parameter for Next-Hop Aliases
RFC 9530 Digest Fields
RFC 9460 Service Binding and Parameter Specification via the DNS (SVCB and HTTPS Resource Records) RFC 9440 Client-Cert HTTP Header Field
RFC 9412 The ORIGIN Extension in HTTP/3
RFC 9368 Compatible Version Negotiation for QUIC
RFC 9220 Bootstrapping WebSockets with HTTP/3
RFC 9204 QPACK: Field Compression for HTTP/3
RFC 9110 HTTP Semantics
RFC 9002 QUIC Loss Detection and Congestion Control
RFC 9001 Using TLS to Secure QUIC
RFC 9000 QUIC: A UDP-Based Multiplexed and Secure Transport RFC 8999 Version-Independent Properties of QUIC
RFC 8740 Using TLS 1.3 with HTTP/2 (廃止) → 9113
RFC 8441 Bootstrapping WebSockets with HTTP/2
RFC 8265 ユーザー名とパスワードを表す国際化された文字列の準備、施行、比較
RFC 8164 Opportunistic Security for HTTP/2 (実験)
RFC 8120 Mutual Authentication Protocol for HTTP
RFC 7838 HTTP Alternative Services 代替サービス
RFC 7639 The ALPN HTTP Header Field
RFC 7617 The 'Basic' HTTP Authentication Scheme
RFC 7616 HTTPダイジェストアクセス認証
RFC 7578 Returning Values from Forms: multipart/form-data
RFC 7541 HPACK: Header Compression for HTTP/2
RFC 7540 HTTP/2 (廃止) → 9113
RFC 7469 Public Key Pinning Extension for HTTP (HPKP) (もうない非推奨)
RFC 7301 Transport Layer Security (TLS) Application-Layer Protocol Negotiation Extension (ALPN)
RFC 7235 Hypertext Transfer Protocol (HTTP/1.1): Authentication → 9110 HTTP/1.1 認証 (廃止)
RFC 7234 Hypertext Transfer Protocol (HTTP/1.1): Caching → 9111 (廃止)
RFC 7233 Hypertext Transfer Protocol (HTTP/1.1): Range Requests → 9110 (廃止)
RFC 7232 Hypertext Transfer Protocol (HTTP/1.1): Conditional Requests → 9110 (廃止)
RFC 7230 → 9110,9112 HTTP/1.1 Message Syntax and Routing (廃止)
RFC 6797 HTTP Strict Transport Security (HSTS) RFC 6415 Web Host Metadata
RFC 6265 HTTP State Management Mechanism
RFC 2817 Upgrading to TLS Within HTTP/1.1 → Update 7231
RFC 2617 HTTP Authentication: Basic and Digest Access Authentication
RFC 2616 Hypertext Transfer Protocol -- HTTP/1.1 (廃止) → Update 2817 → 7230-7235
RFC 2145 Use and Interpretation of HTTP Version Numbers (廃止) → 7230
RFC 2069 An Extension to HTTP : Digest Access Authentication
RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1 (廃止) → 2616
RFC 1945 Hypertext Transfer Protocol -- HTTP/1.0 (廃止) → 2068
SeaMonkey
Servo
WebKit系
Safari
iPhone上のブラウザ全般
Chromium
Vivaldi
Webサーバ
アプリケーションサーバ
Java
WebSphere
関連