SlideShare a Scribd company logo
1
HTTP を理解する
2022.8.1 14:00〜16:00
技術研究所
山本和彦
2
自己紹介
山本和彦
IIJ 技術研究所
プロトコルを実装して検証し標準化に貢献する
メール、迷惑メール対策、DNS、HTTP/1.1、HTTP/2、TLS 1.3、
QUIC、HTTP/3
IIJエンジニアブログ 「QUICをゆっくり解説」
Internet Infrastructure Review(IIR)Vol.52
「HaskellによるQUICの実装」
ほとんど Haskell でプログラミング
3
おしながき
HTTP/0.9
HTTP/1.0
HTTP/1.1
HTTP/2
HTTP/3
4
バージョン
HTTP/0.9
標準化される前のHTTP
HTTP/1.0
標準化されたHTTP
HTTP/1.1
IPv4アドレスが足らなくなった時代のHTTP
HTTP/2
多重化されたHTTP
HTTP/3
QUICを利用したHTTP
5
URL
http://www.iij.ad.jp/dev/
どう解釈する?
6
URLの解釈
http://www.iij.ad.jp/dev/
www.iij.ad.jp の
TCP 80番ポートにアクセスして
/dev/ を GET
7
ちなみに
URL の // の部分は
失敗だと言われています
8
HTTP/0.9
% gtelnet www.iij.ad.jp 80
GET /dev/↓
ワインライナー
9
gtelnet がおかしくなったら?
Escape character is ’^]’.
Control を押しながら ] を押せ
10
HTTP/1.0
% gtelnet www.iij.ad.jp 80
GET /dev/ HTTP/1.0↓
↓
GET の最後にバージョン
なぜリターンは2回必要なのか?
11
RFC
Request For Comments
インターネットのプロトコルを定める仕様書
仕様書なのに「コメントください」とは?
HTTP/1.0
RFC 1945 (1996)
HTTP/1.1
RFC 2068 (1997)
RFC 2616 (1999)
RFC 7230, 7231, 7232, 7233, 7234, 7235 (2014)
RFC 9112 (2022)
12
RFC 1945
HTTP-message = Simple-Request ; HTTP/0.9 messages
| Full-Request ; HTTP/1.0 messages
Simple-Request = "GET" SP Request-URI CRLF
Full-Request = Request-Line
*( General-Header
| Request-Header
| Entity-Header )
CRLF
[ Entity-Body ]
Request-Line = Method SP Request-URI SP
HTTP-Version CRLF
13
空行はヘッダ群の終わり
14
HTTP/1.1
% gtelnet www.iij.ad.jp 80
GET /dev/ HTTP/1.1↓
Host: www.iij.ad.jp↓
Connection: close↓
↓
Host: ヘッダが必須
Connection: close がないとコネクションを継続
15
ヘッダ
ヘッダキー: ヘッダ値
メールのヘッダが参考にされた
要求ヘッダ
クライアントが送るヘッダ
応答ヘッダ
サーバが送るヘッダ
16
要求ヘッダ
Accept-Charset
Host
If-Modified-Since
Referer
Referrer ではない
User-Agent
Connection
例
Host: www.w3.org
Accept-Charset: iso-8859-5, unicode-1-1;q=0.8
Referer: http://www.example.org/Overview.html
17
HTTP/1.0 と HTTP/1.1 の違い
Host: ヘッダ
HTTP/1.1 で必須
1つのIPv4アドレスで、複数のドメインをホスト
サーバにドメイン名を教える役目
Connection: ヘッダ
HTTP/1.0 のコネクションはデフォルトでは持続しない
Connection: Keep-Alive で持続
HTTP/1.1 のコネクションはデフォルトで持続する
Connection: close で持続しない
18
メソッド
GET
リソースの取得
HEAD
リソースの状態をチェック
POST
リソース自体のセマンティックスに応じた処理
同じ結果にならないことがある
PUT
リソースの更新
何度やっても同じ結果
DELETE
リソースの削除
CONNECT
HTTPS (TLS)でプロキシへ接続
19
メソッドとCRUD
Create
POST
Read
GET
POST -- URLパラメータの2000文字制限にひっかかる場合
Update
PUT
Delete
DELETE
20
HTTP/0.9 の応答
% gtelnet www.iij.ad.jp 80
GET /dev/↓
<html>
<head>Hello</head>
<body>Hello</body>
</html>
クイズ:応答データの大きさはどうやって分かる?
21
HTTP/1.1 の応答
% gtelnet www.iij.ad.jp 80
GET /dev/ HTTP/1.1↓
Host: www.iij.ad.jp↓
↓
HTTP/1.0 301 Moved Permanently
Date: Thu, 29 Jul 2021 05:34:21 GMT
Content-Length: 217
Content-Type: text/html; charset=iso-8859-1
↓
<html><head>
...
<<<コネクションは継続>>>
クイズ:応答データの大きさはどうやって分かる?
22
応答ステータス
1xx -- 情報
100 Continue
2xx -- 成功
200 OK
201 Created
206 Partial Content
3xx -- 向け直し
301 Moved Permanently
4xx -- クライアントエラー
400 Bad Request
404 Not Found
405 Method Not Allowed
5xx -- サーバーエラー
500 Internal Server Error
23
応答ヘッダ
Server
Last-Modified
Content-Length
Content-Encoding
Content-Range
Content-Type
Date
例
HTTP/1.1 206 Partial content
Date: Wed, 15 Nov 1995 06:25:24 GMT
Last-Modified: Wed, 15 Nov 1995 04:58:08 GMT
Content-Range: bytes 21010-47021/47022
Content-Length: 26012
Content-Type: image/gif
24
HTTP/1.1 でのストリーミング
応答データの大きさが、あらかじめ分からない
Transfer-Encoding: chunked
7rn
Mozillarn
9rn
Developerrn
7rn
Networkrn
0rn
rn
25
HTTP/2
26
HTTP/1.1 の問題点
27
同期性
HTTP/1.1 は同期的なプロトコル
サーバ: ある要求を処理した後、応答を返す
クライアント:応答が返ってきたら、次の要求を出す
Head-of-line ブロッキング
ある要求への応答に時間がかかると、すべての処理が止まる
28
低い並列性
1つのコネクション上では高々1つの仕事
要求が1つ、応答が1つ、なにもない
要求応答パイプラインイングは事実上使われてない
同時コネクションの数はドメインごとに6つ
29
ドメインシャーディング
ドメインを増やして並列性を上げる
コンテンツが分散し、管理が困難になる
30
非効率なヘッダ
帯域の浪費
要求ヘッダの長さの平均は800バイト
似通った要求ヘッダが毎回送られる
GET /roversync/ HTTP/1.1
Host: rover.ebay.com
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8;
rv:16.0) Gecko/20100101 Firefox/16.0
Accept: image/png,image/*;q=0.8,*/*;q=0.5
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Referer: http://www.ebay.com/
Cookie: ebay=%5Esbf%3D%23%5E; dp1=bpbf/%2380000000000055
276504d^u1p/QEBfX0BAX19AQA**5276504d^; cssg=c67883f113a
0a56964e646c6ffaa1abe; s=CgAD4ACBQlm5NYzY3ODgzZjExM2EwY
TU2OTY0ZTY0NmM2ZmZhYTFhYmUBSgAYUJZuTTUwOTUxY2NkLjAuMS4z
LjE1MS4zLjAuMeN+7JE*; nonsession=CgAFMABhSdlBNNTA5NTFjY
2QuMC4xLjEuMTQ5LjMuMC4xAMoAIFn7Hk1jNjc4ODNmMTEzYTBhNTY5
NjRlNjQ2YzZmZmFhMWFjMQDLAAFQlSPVMX8u5Z8*
31
HTTP/2
2012年9月からIETFで標準化がスタート
4つの提案の中からGoogleのSPDYがベースに選ばれた
3年間の議論
2015年5月にRFCになった
RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
RFC 7541: HPACK: Header Compression for HTTP/2
2022年に改訂
RFC 9113: HTTP/2
特徴
HTTP ヘッダなどの意味は変わらない
トランスポートのみが変更され効率的になった
32
HTTP/2による解決
33
フレームの非同期性と高い並列性
高い並列性
利用されるコネクションは1つ
複数のフレームが多重化される
非同期性
準備ができた応答から返してよい
34
HTTP/3
35
HTTP/2 の問題点
36
TCP の HoL ブロッキング
37
HTTP/3 による解決
38
QUIC
2016年6月からIETF で標準化がスタート
Google の QUIC がベース
5年間の議論
2021年5月にRFCになった
RFC 8999: Version-Independent Properties of QUIC
RFC 9000: QUIC: A UDP-Based Multiplexed and Secure Transport
RFC 9001: Using TLS to Secure QUIC
RFC 9002: QUIC Loss Detection and Congestion Control
HTTP/3
RFC 9114: HTTP/3
RFC 9204: QPACK: Field Compression for HTTP/3
39
QUICのプロトコル階層
40
QUIC や QPACK がどのように
HoLを解決したかは
「QUICをゆっくり解説」
を読んでください。
41
最近のRFC構成
RFC9110: HTTP Semantics
HTTPのバージョンに依存しないヘッダなどの意味
RFC9111: HTTP Caching
RFC9112: HTTP/1.1
ヘッダはテキストそのまま
本文は、コンテンツそのままか、チャンクなど
RFC9113: HTTP/2
ヘッダは HPACK を使ったバイナリ
本文はフレームで分割
RFC9114: HTTP/3
ヘッダは QPACK を使ったバイナリ
本文はQUICのフレームで分割

More Related Content

What's hot

ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分けネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
モノビット エンジン
 
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021
Hiroshi Tokumaru
 
日本語テストメソッドについて
日本語テストメソッドについて日本語テストメソッドについて
日本語テストメソッドについてkumake
 
インテルMEの秘密 - チップセットに隠されたコードと、それが一体何をするかを見出す方法 - by イゴール・スコチンスキー - Igor Skochinsky
インテルMEの秘密 - チップセットに隠されたコードと、それが一体何をするかを見出す方法 - by イゴール・スコチンスキー - Igor SkochinskyインテルMEの秘密 - チップセットに隠されたコードと、それが一体何をするかを見出す方法 - by イゴール・スコチンスキー - Igor Skochinsky
インテルMEの秘密 - チップセットに隠されたコードと、それが一体何をするかを見出す方法 - by イゴール・スコチンスキー - Igor Skochinsky
CODE BLUE
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Kohei Tokunaga
 
Weaveを試してみた
Weaveを試してみたWeaveを試してみた
Weaveを試してみた
Kazuto Kusama
 
外部キー制約に伴うロックの小話
外部キー制約に伴うロックの小話外部キー制約に伴うロックの小話
外部キー制約に伴うロックの小話
ichirin2501
 
DPDKによる高速コンテナネットワーキング
DPDKによる高速コンテナネットワーキングDPDKによる高速コンテナネットワーキング
DPDKによる高速コンテナネットワーキング
Tomoya Hibi
 
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターンFluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
Kentaro Yoshida
 
MySQL 5.7にやられないためにおぼえておいてほしいこと
MySQL 5.7にやられないためにおぼえておいてほしいことMySQL 5.7にやられないためにおぼえておいてほしいこと
MySQL 5.7にやられないためにおぼえておいてほしいこと
yoku0825
 
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
NTT DATA Technology & Innovation
 
新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編
infinite_loop
 
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
Amazon Web Services Japan
 
WebRTC開発者向けプラットフォーム SkyWayの裏側
WebRTC開発者向けプラットフォーム SkyWayの裏側WebRTC開発者向けプラットフォーム SkyWayの裏側
WebRTC開発者向けプラットフォーム SkyWayの裏側
Yusuke Naka
 
WebRTCの技術解説 第二版 公開版 本編
WebRTCの技術解説 第二版 公開版 本編WebRTCの技術解説 第二版 公開版 本編
WebRTCの技術解説 第二版 公開版 本編
Contest Ntt-west
 
CyberChefの使い方(HamaCTF2019 WriteUp編)
CyberChefの使い方(HamaCTF2019 WriteUp編)CyberChefの使い方(HamaCTF2019 WriteUp編)
CyberChefの使い方(HamaCTF2019 WriteUp編)
Shota Shinogi
 
HTTP2 最速実装 〜入門編〜
HTTP2 最速実装 〜入門編〜HTTP2 最速実装 〜入門編〜
HTTP2 最速実装 〜入門編〜
Kaoru Maeda
 
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)
mosa siru
 
WebRTCの技術解説 公開版
WebRTCの技術解説 公開版WebRTCの技術解説 公開版
WebRTCの技術解説 公開版
Contest Ntt-west
 
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
NTT DATA Technology & Innovation
 

What's hot (20)

ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分けネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
 
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021
 
日本語テストメソッドについて
日本語テストメソッドについて日本語テストメソッドについて
日本語テストメソッドについて
 
インテルMEの秘密 - チップセットに隠されたコードと、それが一体何をするかを見出す方法 - by イゴール・スコチンスキー - Igor Skochinsky
インテルMEの秘密 - チップセットに隠されたコードと、それが一体何をするかを見出す方法 - by イゴール・スコチンスキー - Igor SkochinskyインテルMEの秘密 - チップセットに隠されたコードと、それが一体何をするかを見出す方法 - by イゴール・スコチンスキー - Igor Skochinsky
インテルMEの秘密 - チップセットに隠されたコードと、それが一体何をするかを見出す方法 - by イゴール・スコチンスキー - Igor Skochinsky
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
 
Weaveを試してみた
Weaveを試してみたWeaveを試してみた
Weaveを試してみた
 
外部キー制約に伴うロックの小話
外部キー制約に伴うロックの小話外部キー制約に伴うロックの小話
外部キー制約に伴うロックの小話
 
DPDKによる高速コンテナネットワーキング
DPDKによる高速コンテナネットワーキングDPDKによる高速コンテナネットワーキング
DPDKによる高速コンテナネットワーキング
 
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターンFluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
 
MySQL 5.7にやられないためにおぼえておいてほしいこと
MySQL 5.7にやられないためにおぼえておいてほしいことMySQL 5.7にやられないためにおぼえておいてほしいこと
MySQL 5.7にやられないためにおぼえておいてほしいこと
 
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
 
新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編
 
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
 
WebRTC開発者向けプラットフォーム SkyWayの裏側
WebRTC開発者向けプラットフォーム SkyWayの裏側WebRTC開発者向けプラットフォーム SkyWayの裏側
WebRTC開発者向けプラットフォーム SkyWayの裏側
 
WebRTCの技術解説 第二版 公開版 本編
WebRTCの技術解説 第二版 公開版 本編WebRTCの技術解説 第二版 公開版 本編
WebRTCの技術解説 第二版 公開版 本編
 
CyberChefの使い方(HamaCTF2019 WriteUp編)
CyberChefの使い方(HamaCTF2019 WriteUp編)CyberChefの使い方(HamaCTF2019 WriteUp編)
CyberChefの使い方(HamaCTF2019 WriteUp編)
 
HTTP2 最速実装 〜入門編〜
HTTP2 最速実装 〜入門編〜HTTP2 最速実装 〜入門編〜
HTTP2 最速実装 〜入門編〜
 
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)
 
WebRTCの技術解説 公開版
WebRTCの技術解説 公開版WebRTCの技術解説 公開版
WebRTCの技術解説 公開版
 
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
 

Similar to HTTPを理解する

HTTP 2.0のヘッダ圧縮(HPACK)
HTTP 2.0のヘッダ圧縮(HPACK)HTTP 2.0のヘッダ圧縮(HPACK)
HTTP 2.0のヘッダ圧縮(HPACK)Jun Fujisawa
 
WebSocket Protocol と Plack::Middleware::WebSocket
WebSocket Protocol と Plack::Middleware::WebSocketWebSocket Protocol と Plack::Middleware::WebSocket
WebSocket Protocol と Plack::Middleware::WebSocket
Yu Nobuoka
 
Janogia20120921 yoshinotakeshi
Janogia20120921 yoshinotakeshiJanogia20120921 yoshinotakeshi
Janogia20120921 yoshinotakeshiKeisuke Ishibashi
 
HTTP/2の現状とこれから
HTTP/2の現状とこれからHTTP/2の現状とこれから
HTTP/2の現状とこれから
shigeki_ohtsu
 
サーバPUSHざっくりまとめ
サーバPUSHざっくりまとめサーバPUSHざっくりまとめ
サーバPUSHざっくりまとめ
Yasuhiro Mawarimichi
 
第43回HTML5とか勉強会 最新webプロトコル傾向と対策
第43回HTML5とか勉強会 最新webプロトコル傾向と対策第43回HTML5とか勉強会 最新webプロトコル傾向と対策
第43回HTML5とか勉強会 最新webプロトコル傾向と対策
Kensaku Komatsu
 
Kansai.pm#15 Perl Ocean
Kansai.pm#15 Perl OceanKansai.pm#15 Perl Ocean
Kansai.pm#15 Perl Ocean
Kazuki KOMORI
 
Perl Ocean
Perl OceanPerl Ocean
Perl Ocean
Kazuki KOMORI
 
JavaScript And Keywords
JavaScript And KeywordsJavaScript And Keywords
JavaScript And Keywords
uupaa
 
httpbis interim とhttp2.0相互接続試験の話
httpbis interim とhttp2.0相互接続試験の話httpbis interim とhttp2.0相互接続試験の話
httpbis interim とhttp2.0相互接続試験の話shigeki_ohtsu
 
Webrtc最新動向
Webrtc最新動向Webrtc最新動向
Webrtc最新動向
Yusuke Naka
 
HTTP入門
HTTP入門HTTP入門
HTTP入門
Sho A
 
Status 425 HTTP/Tokyo
Status 425 HTTP/Tokyo Status 425 HTTP/Tokyo
Status 425 HTTP/Tokyo
yuki-f
 
Chromebook 「だけ」で WebRTCを動かそう
Chromebook 「だけ」で WebRTCを動かそうChromebook 「だけ」で WebRTCを動かそう
Chromebook 「だけ」で WebRTCを動かそうmganeko
 
CDNの仕組み(JANOG36)
CDNの仕組み(JANOG36)CDNの仕組み(JANOG36)
CDNの仕組み(JANOG36)
J-Stream Inc.
 
HTTP2入門
HTTP2入門HTTP2入門
HTTP2入門
Sota Sugiura
 
HTTP/2時代のウェブサイト設計
HTTP/2時代のウェブサイト設計HTTP/2時代のウェブサイト設計
HTTP/2時代のウェブサイト設計
Kazuho Oku
 
[BurpSuiteJapan]HTTP基礎入門
[BurpSuiteJapan]HTTP基礎入門[BurpSuiteJapan]HTTP基礎入門
[BurpSuiteJapan]HTTP基礎入門
Burp Suite Japan User Group
 
Node の HTTP/2.0 モジュール iij-http2 の実装苦労話
Node の HTTP/2.0 モジュール iij-http2 の実装苦労話Node の HTTP/2.0 モジュール iij-http2 の実装苦労話
Node の HTTP/2.0 モジュール iij-http2 の実装苦労話shigeki_ohtsu
 

Similar to HTTPを理解する (20)

HTTP 2.0のヘッダ圧縮(HPACK)
HTTP 2.0のヘッダ圧縮(HPACK)HTTP 2.0のヘッダ圧縮(HPACK)
HTTP 2.0のヘッダ圧縮(HPACK)
 
WebSocket Protocol と Plack::Middleware::WebSocket
WebSocket Protocol と Plack::Middleware::WebSocketWebSocket Protocol と Plack::Middleware::WebSocket
WebSocket Protocol と Plack::Middleware::WebSocket
 
HTTP/2.0と標準化
HTTP/2.0と標準化HTTP/2.0と標準化
HTTP/2.0と標準化
 
Janogia20120921 yoshinotakeshi
Janogia20120921 yoshinotakeshiJanogia20120921 yoshinotakeshi
Janogia20120921 yoshinotakeshi
 
HTTP/2の現状とこれから
HTTP/2の現状とこれからHTTP/2の現状とこれから
HTTP/2の現状とこれから
 
サーバPUSHざっくりまとめ
サーバPUSHざっくりまとめサーバPUSHざっくりまとめ
サーバPUSHざっくりまとめ
 
第43回HTML5とか勉強会 最新webプロトコル傾向と対策
第43回HTML5とか勉強会 最新webプロトコル傾向と対策第43回HTML5とか勉強会 最新webプロトコル傾向と対策
第43回HTML5とか勉強会 最新webプロトコル傾向と対策
 
Kansai.pm#15 Perl Ocean
Kansai.pm#15 Perl OceanKansai.pm#15 Perl Ocean
Kansai.pm#15 Perl Ocean
 
Perl Ocean
Perl OceanPerl Ocean
Perl Ocean
 
JavaScript And Keywords
JavaScript And KeywordsJavaScript And Keywords
JavaScript And Keywords
 
httpbis interim とhttp2.0相互接続試験の話
httpbis interim とhttp2.0相互接続試験の話httpbis interim とhttp2.0相互接続試験の話
httpbis interim とhttp2.0相互接続試験の話
 
Webrtc最新動向
Webrtc最新動向Webrtc最新動向
Webrtc最新動向
 
HTTP入門
HTTP入門HTTP入門
HTTP入門
 
Status 425 HTTP/Tokyo
Status 425 HTTP/Tokyo Status 425 HTTP/Tokyo
Status 425 HTTP/Tokyo
 
Chromebook 「だけ」で WebRTCを動かそう
Chromebook 「だけ」で WebRTCを動かそうChromebook 「だけ」で WebRTCを動かそう
Chromebook 「だけ」で WebRTCを動かそう
 
CDNの仕組み(JANOG36)
CDNの仕組み(JANOG36)CDNの仕組み(JANOG36)
CDNの仕組み(JANOG36)
 
HTTP2入門
HTTP2入門HTTP2入門
HTTP2入門
 
HTTP/2時代のウェブサイト設計
HTTP/2時代のウェブサイト設計HTTP/2時代のウェブサイト設計
HTTP/2時代のウェブサイト設計
 
[BurpSuiteJapan]HTTP基礎入門
[BurpSuiteJapan]HTTP基礎入門[BurpSuiteJapan]HTTP基礎入門
[BurpSuiteJapan]HTTP基礎入門
 
Node の HTTP/2.0 モジュール iij-http2 の実装苦労話
Node の HTTP/2.0 モジュール iij-http2 の実装苦労話Node の HTTP/2.0 モジュール iij-http2 の実装苦労話
Node の HTTP/2.0 モジュール iij-http2 の実装苦労話
 

More from IIJ

プロダクトオーナーと開発者が別会社・別組織でも前のめりなチームを生み出す取り組み事例
プロダクトオーナーと開発者が別会社・別組織でも前のめりなチームを生み出す取り組み事例プロダクトオーナーと開発者が別会社・別組織でも前のめりなチームを生み出す取り組み事例
プロダクトオーナーと開発者が別会社・別組織でも前のめりなチームを生み出す取り組み事例
IIJ
 
IIJ_デジタルワークプレース事業紹介資料
IIJ_デジタルワークプレース事業紹介資料IIJ_デジタルワークプレース事業紹介資料
IIJ_デジタルワークプレース事業紹介資料
IIJ
 
DevOps Overview
DevOps OverviewDevOps Overview
DevOps Overview
IIJ
 
ただいま三河。あれから1年、チームNOCKncokが開発しないスクラムで成果を出した経験から得た学び
ただいま三河。あれから1年、チームNOCKncokが開発しないスクラムで成果を出した経験から得た学びただいま三河。あれから1年、チームNOCKncokが開発しないスクラムで成果を出した経験から得た学び
ただいま三河。あれから1年、チームNOCKncokが開発しないスクラムで成果を出した経験から得た学び
IIJ
 
上っ面スクラムチームにならないために気を付けたいこと
上っ面スクラムチームにならないために気を付けたいこと上っ面スクラムチームにならないために気を付けたいこと
上っ面スクラムチームにならないために気を付けたいこと
IIJ
 
Super Easy Memory Forensics
Super Easy Memory ForensicsSuper Easy Memory Forensics
Super Easy Memory Forensics
IIJ
 
チームみを大切にした 私たちの“受託アジャイル・スクラム”体験談
チームみを大切にした 私たちの“受託アジャイル・スクラム”体験談チームみを大切にした 私たちの“受託アジャイル・スクラム”体験談
チームみを大切にした 私たちの“受託アジャイル・スクラム”体験談
IIJ
 
【解説】IKE(IIJ Kubernetes Engine):= Vanilla Kubernetes + 何?
【解説】IKE(IIJ Kubernetes Engine):= Vanilla Kubernetes + 何?【解説】IKE(IIJ Kubernetes Engine):= Vanilla Kubernetes + 何?
【解説】IKE(IIJ Kubernetes Engine):= Vanilla Kubernetes + 何?
IIJ
 
コロナ禍での白井データセンターキャンパスの運用施策
コロナ禍での白井データセンターキャンパスの運用施策コロナ禍での白井データセンターキャンパスの運用施策
コロナ禍での白井データセンターキャンパスの運用施策
IIJ
 
コロナ禍の開発勉強会~社内教育ツールの開発と実装
コロナ禍の開発勉強会~社内教育ツールの開発と実装コロナ禍の開発勉強会~社内教育ツールの開発と実装
コロナ禍の開発勉強会~社内教育ツールの開発と実装
IIJ
 
セキュリティ動向2020
セキュリティ動向2020セキュリティ動向2020
セキュリティ動向2020
IIJ
 
バックボーン運用から見るインターネットの実情
バックボーン運用から見るインターネットの実情バックボーン運用から見るインターネットの実情
バックボーン運用から見るインターネットの実情
IIJ
 
データセンターのエネルギーコントロールの仕組み
データセンターのエネルギーコントロールの仕組みデータセンターのエネルギーコントロールの仕組み
データセンターのエネルギーコントロールの仕組み
IIJ
 
世界のインターネット事情
世界のインターネット事情世界のインターネット事情
世界のインターネット事情
IIJ
 
フロントからバックエンドまで - WebAssemblyで広がる可能性
フロントからバックエンドまで - WebAssemblyで広がる可能性フロントからバックエンドまで - WebAssemblyで広がる可能性
フロントからバックエンドまで - WebAssemblyで広がる可能性
IIJ
 
あ! やせいのEmotetがあらわれた! ~ IIJ C-SOCサービスの分析ルールについて~
あ! やせいのEmotetがあらわれた! ~ IIJ C-SOCサービスの分析ルールについて~あ! やせいのEmotetがあらわれた! ~ IIJ C-SOCサービスの分析ルールについて~
あ! やせいのEmotetがあらわれた! ~ IIJ C-SOCサービスの分析ルールについて~
IIJ
 
インシデント調査システムが内製すぎる件~CHAGEのご紹介~
インシデント調査システムが内製すぎる件~CHAGEのご紹介~インシデント調査システムが内製すぎる件~CHAGEのご紹介~
インシデント調査システムが内製すぎる件~CHAGEのご紹介~
IIJ
 
IIJ Technical DAY 2019 ~ IIJのサーバインフラはここまでやっています
IIJ Technical DAY 2019 ~ IIJのサーバインフラはここまでやっていますIIJ Technical DAY 2019 ~ IIJのサーバインフラはここまでやっています
IIJ Technical DAY 2019 ~ IIJのサーバインフラはここまでやっています
IIJ
 
IIJ Technical DAY 2019 ~ セキュリティ動向2019
IIJ Technical DAY 2019 ~ セキュリティ動向2019IIJ Technical DAY 2019 ~ セキュリティ動向2019
IIJ Technical DAY 2019 ~ セキュリティ動向2019
IIJ
 
IIJ Technical DAY 2019 ~ Untangling the world-wide mesh of undersea cables:世界...
IIJ Technical DAY 2019 ~ Untangling the world-wide mesh of undersea cables:世界...IIJ Technical DAY 2019 ~ Untangling the world-wide mesh of undersea cables:世界...
IIJ Technical DAY 2019 ~ Untangling the world-wide mesh of undersea cables:世界...
IIJ
 

More from IIJ (20)

プロダクトオーナーと開発者が別会社・別組織でも前のめりなチームを生み出す取り組み事例
プロダクトオーナーと開発者が別会社・別組織でも前のめりなチームを生み出す取り組み事例プロダクトオーナーと開発者が別会社・別組織でも前のめりなチームを生み出す取り組み事例
プロダクトオーナーと開発者が別会社・別組織でも前のめりなチームを生み出す取り組み事例
 
IIJ_デジタルワークプレース事業紹介資料
IIJ_デジタルワークプレース事業紹介資料IIJ_デジタルワークプレース事業紹介資料
IIJ_デジタルワークプレース事業紹介資料
 
DevOps Overview
DevOps OverviewDevOps Overview
DevOps Overview
 
ただいま三河。あれから1年、チームNOCKncokが開発しないスクラムで成果を出した経験から得た学び
ただいま三河。あれから1年、チームNOCKncokが開発しないスクラムで成果を出した経験から得た学びただいま三河。あれから1年、チームNOCKncokが開発しないスクラムで成果を出した経験から得た学び
ただいま三河。あれから1年、チームNOCKncokが開発しないスクラムで成果を出した経験から得た学び
 
上っ面スクラムチームにならないために気を付けたいこと
上っ面スクラムチームにならないために気を付けたいこと上っ面スクラムチームにならないために気を付けたいこと
上っ面スクラムチームにならないために気を付けたいこと
 
Super Easy Memory Forensics
Super Easy Memory ForensicsSuper Easy Memory Forensics
Super Easy Memory Forensics
 
チームみを大切にした 私たちの“受託アジャイル・スクラム”体験談
チームみを大切にした 私たちの“受託アジャイル・スクラム”体験談チームみを大切にした 私たちの“受託アジャイル・スクラム”体験談
チームみを大切にした 私たちの“受託アジャイル・スクラム”体験談
 
【解説】IKE(IIJ Kubernetes Engine):= Vanilla Kubernetes + 何?
【解説】IKE(IIJ Kubernetes Engine):= Vanilla Kubernetes + 何?【解説】IKE(IIJ Kubernetes Engine):= Vanilla Kubernetes + 何?
【解説】IKE(IIJ Kubernetes Engine):= Vanilla Kubernetes + 何?
 
コロナ禍での白井データセンターキャンパスの運用施策
コロナ禍での白井データセンターキャンパスの運用施策コロナ禍での白井データセンターキャンパスの運用施策
コロナ禍での白井データセンターキャンパスの運用施策
 
コロナ禍の開発勉強会~社内教育ツールの開発と実装
コロナ禍の開発勉強会~社内教育ツールの開発と実装コロナ禍の開発勉強会~社内教育ツールの開発と実装
コロナ禍の開発勉強会~社内教育ツールの開発と実装
 
セキュリティ動向2020
セキュリティ動向2020セキュリティ動向2020
セキュリティ動向2020
 
バックボーン運用から見るインターネットの実情
バックボーン運用から見るインターネットの実情バックボーン運用から見るインターネットの実情
バックボーン運用から見るインターネットの実情
 
データセンターのエネルギーコントロールの仕組み
データセンターのエネルギーコントロールの仕組みデータセンターのエネルギーコントロールの仕組み
データセンターのエネルギーコントロールの仕組み
 
世界のインターネット事情
世界のインターネット事情世界のインターネット事情
世界のインターネット事情
 
フロントからバックエンドまで - WebAssemblyで広がる可能性
フロントからバックエンドまで - WebAssemblyで広がる可能性フロントからバックエンドまで - WebAssemblyで広がる可能性
フロントからバックエンドまで - WebAssemblyで広がる可能性
 
あ! やせいのEmotetがあらわれた! ~ IIJ C-SOCサービスの分析ルールについて~
あ! やせいのEmotetがあらわれた! ~ IIJ C-SOCサービスの分析ルールについて~あ! やせいのEmotetがあらわれた! ~ IIJ C-SOCサービスの分析ルールについて~
あ! やせいのEmotetがあらわれた! ~ IIJ C-SOCサービスの分析ルールについて~
 
インシデント調査システムが内製すぎる件~CHAGEのご紹介~
インシデント調査システムが内製すぎる件~CHAGEのご紹介~インシデント調査システムが内製すぎる件~CHAGEのご紹介~
インシデント調査システムが内製すぎる件~CHAGEのご紹介~
 
IIJ Technical DAY 2019 ~ IIJのサーバインフラはここまでやっています
IIJ Technical DAY 2019 ~ IIJのサーバインフラはここまでやっていますIIJ Technical DAY 2019 ~ IIJのサーバインフラはここまでやっています
IIJ Technical DAY 2019 ~ IIJのサーバインフラはここまでやっています
 
IIJ Technical DAY 2019 ~ セキュリティ動向2019
IIJ Technical DAY 2019 ~ セキュリティ動向2019IIJ Technical DAY 2019 ~ セキュリティ動向2019
IIJ Technical DAY 2019 ~ セキュリティ動向2019
 
IIJ Technical DAY 2019 ~ Untangling the world-wide mesh of undersea cables:世界...
IIJ Technical DAY 2019 ~ Untangling the world-wide mesh of undersea cables:世界...IIJ Technical DAY 2019 ~ Untangling the world-wide mesh of undersea cables:世界...
IIJ Technical DAY 2019 ~ Untangling the world-wide mesh of undersea cables:世界...
 

HTTPを理解する