SlideShare a Scribd company logo
1 of 63
Download to read offline
HTTP2 入門
杉浦 颯太
アジェンダ
• HTTPのおさらい
• About HTTP/2
- フレーム通信
- バイナリ
- 通信の多重化
- サーバプッシュ
• HTTP/2で変えるべきこと
• 参考資料
HTTPのおさらい
HTTPで掴むべきポイントを
復習しましょう
HTTPはWebのための技術
• HTTPはWeb上で 文書 をやり取りするために生まれた
• 文書 とは主にHTMLのこと
• HTMLとHTTPは兄弟
• この当時の 文書 にWebアプリケーションは含まれない
Webを支えるHTTP
• Webのトラフィックはほぼ全てHTTP通信
- ブラウザからサイトにアクセス
- APIを叩いてデータを取得(JSON, XML, SOAP)
- 掲示板にコメントを投稿
HTTP on TCP/IP
• HTTPはTCP/IPの上に成り立つプロトコル
• サーバとクライアントが会話するための取り決め
• 通信相手の特定はIP、データ配達はTCPの役割
- HTTPは相手がどこにいる誰かを意識しない
HTTPの実態はテキストデータ
GET /top/login HTTP/1.1
User-Agent: Telnet [ja]
Host: sota1235.com
name=sota&hobby=aiko
HTTP/1.1 200 OK
Date: Tue, 10 Jul 2015 06:50:15
GMT

Content-Length: 362
Content-Type: text:html
<html>
………
HTTPリクエスト HTTPレスポンス
HTTP is Simple
• HTTPはプロトコル
• プロトコルとはメッセージのルール
• ルールに従うパーサーを書けばHTTPサーバ/クライアントの出来上がり
- 自前で実装したりすると勉強になります
• クライアントは リクエスト を送る
• サーバは レスポンス を返す
HTTP is Stateless
• HTTPはステートレスなプロトコル
• クライアント、サーバは通信内容を覚えない
• 覚えさせたきゃ 🍪を使おう
More…
SlideShare: HTTP入門
https://www.slideshare.net/sotasugiura/http-51090035
About HTTP/2
HTTP/1.xから変わらないこと
• HTTP on TCP/IP
• 通信はクライアントのリクエストから始まる
HTTP/2で変わること
• 通信単位がHTTPメッセージからフレームに
• メッセージをバイナリに圧縮可能
• 一部でステートフルな通信を行う
• 多重通信が可能に
About HTTP/2
• フレーム通信
• 通信の多重化
• バイナリメッセージ
• サーバプッシュ
• 優先度制御
About HTTP/2
• フレーム通信
• 通信の多重化
• バイナリメッセージ
• サーバプッシュ
• 優先度制御
フレーム通信①
• HTTP/2での通信単位はフレーム
• 何種類かのフレームとやり取りして通信を行う
• フレームにはストリームIDが割り当てられる
フレーム通信②
• HEADERフレーム
- HTTP/1.xのヘッダー部分
• DATAフレーム
- HTTP/1.xのボディ部分
• PRIORITYフレーム
- 優先度制御を行う
• PUSH_PROMISEフレーム
- サーバプッシュ制御
• RST_STREAMフレーム
- ストリーム通信の終了を知らせる
例:HEADERフレーム
フレーム通信③
:method = GET

:scheme = https
:path = /resource
host = example.org
accept = image/jpg
About HTTP/2
• フレーム通信
• 通信の多重化
• バイナリメッセージ
• サーバプッシュ
• 優先度制御
通信の多重化
• HTTP/1.xでの通信は1リクエストに1レスポンス
• レスポンスが返るまで次のリクエストは飛ばせない
• 1つのTCP通信に1つのHTTP通信
• 多くのブラウザは6つのTCP通信を並列することで
擬似的にHTTP通信を多重化している
on HTTP/1.xクライアント サーバ
HTTPリクエスト
HTTPレスポンス
on HTTP/1.xクライアント サーバ
HTTPリクエスト
HTTPレスポンス
HTTPリクエストその2
HTTP/1.xの多重化
HTTP/1.xの多重化
並列でリクエストしてる
HTTP/1.xの多重化
• HTTP/1.xに並列通信の仕組みはない
- 厳密にはあるが存在が空気
• 6本のTCP通信を並列することで擬似的に並列通信
している
• どうあがいても1RTT = 6リクエスト/レスポンス
それ、並列化しようぜ!
on HTTP/2クライアント サーバ
HTTP/2の場合
• レスポンスを任意のタイミングで返すことができる
- これにより細やかな順序制御が可能に!
• クライアントはレスポンスを待たずにフレームを送
信できる
• どれがどれに対応するかはストリームIDで確認
参考
https://www.symfony.fi/entry/compare-
resource-loading-between-http-2-and-http-1-1
About HTTP/2
• フレーム通信
• 通信の多重化
• バイナリメッセージ
• サーバプッシュ
• 優先度制御
バイナリメッセージ
• HTTP/2の通信はバイナリで行うことが可能です
バイナリの恩恵
• 実装による解釈の差が出にくい
- HTTP/1.xでは実装によってメッセージの解釈に差が出ていた
- そこから脆弱性が発生することもしばしば
- 有名どころだとBREACH攻撃とか
- 参考:めんどうくさいWebセキュリティ
• 通信量が減る
- HTTP/1.xではgzip圧縮がデファクト
オーバーヘッド削減
• HTTP/1.xでのメッセージにはオーバーヘッドが
あった
• これがバイナリとHPACKで圧縮することが可能に
なった
HTTP/1.xの無駄
例:画像を3枚取得する
HTTP/1.xの無駄
/a.pngを取得
GET /a.png HTTP/1.1
Accept: image/gif, image/jpeg, */*
Accept-Language: ja
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (Compatible; MSIE 6.0; Windows NT 5.1;)
Host: www.xxx.zzz
Connection: Keep-Alive
HTTP/1.xの無駄
/b.pngを取得
GET /b.png HTTP/1.1
Accept: image/gif, image/jpeg, */*
Accept-Language: ja
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (Compatible; MSIE 6.0; Windows NT 5.1;)
Host: www.xxx.zzz
Connection: Keep-Alive
HTTP/1.xの無駄
/c.pngを取得
GET /c.png HTTP/1.1
Accept: image/gif, image/jpeg, */*
Accept-Language: ja
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (Compatible; MSIE 6.0; Windows NT 5.1;)
Host: www.xxx.zzz
Connection: Keep-Alive
HTTP/1.xの無駄
/c.pngを取得
GET /c.png HTTP/1.1
Accept: image/gif, image/jpeg, */*
Accept-Language: ja
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (Compatible; MSIE 6.0; Windows NT 5.1;)
Host: www.xxx.zzz
Connection: Keep-Alive
HTTP/1.xにおけるオーバーヘッド
• 同じヘッダーを通信の回数だけやりとりする
• 前回と差異のある情報は少ないことが多い
• 『このヘッダーはさっきと同じだよ!』と知らせる
ことができれば無駄が減るはず…
バイナリメッセージ on HTTP/2
• HTTP/2では通信をバイナリで行うことが可能
• 使用頻度の高いヘッダーフィールドはあらかじめ番
号が定義されている
- 例: :method GET => 2
• 一度送信したものもその場で動的に番号を割り当て、
定義する
/ にアクセス
HTTP/2の場合
:method = GET

:scheme = https
:path = /
host = example.org
accept = image/jpg
02

07
04
38 example.org
19 image/jpg
/a.png にアクセス
HTTP/2の場合
:method = GET

:scheme = https
:path = /a.png
host = example.org
accept = image/jpg
02

07
04 a.png
62
63
通信量減った\(^o^)/
• これにより最大5%まで圧縮が可能になった
• HTTP/2通信開始時に送るSETTINGフレームで記憶する
ヘッダーの数を指定できる
- 一部ステートフル
• 圧縮にはハフマンコーディングという技術が使われている
- [検索] [ HPACK ]
About HTTP/2
• フレーム通信
• 通信の多重化
• バイナリメッセージ
• サーバプッシュ
• 優先度制御
サーバプッシュ
• サーバがレスポンスを返す際、予測できるリクエス
トが存在する
• それらをあらかじめ送ることを予測してリクエスト
を待たずに送信するのがサーバプッシュ
サーバプッシュクライアント サーバ
/index.htmlください
あいよ
サーバプッシュクライアント サーバ
/index.htmlください
あいよ
style.cssとscript.jsもいるよね?この後送るわ
サーバプッシュクライアント サーバ
/index.htmlください
あいよ
style.cssとscript.jsもいるよね?この後送るわ
リクエストを待たずに送信!
サーバプッシュ
• これにより通信回数が減る
• きちんと送信されたかどうかの担保はHTTP/2の仕
組みがきちんと管理してくれる
About HTTP/2
• フレーム通信
• 通信の多重化
• バイナリメッセージ
• サーバプッシュ
• 優先度制御
優先度制御
• ユーザにWebページを届ける時、一番大事なのは
ページが表示されるまでの時間
• それを縮めるための技術が優先度制御
優先度制御
• HTTP/2対応サーバはクライアントが指定した優先
度に従ってレスポンスを返す
• これにより描画に必要なCSSファイルを優先して取
得等の処理が可能になった
• 優先度の指定の仕方はクライアントにより異なる
優先度制御
• 優先度制御の指定方法は主に以下の2つ
- リソース同士が依存した木構造
- 数字による重み付け
• 現状、有効な優先度制御を行うブラウザはFireFox
のみ
HTTP/2で変えるべきこと
HTTP/1.xは古い
• HTTP/1.xは激しく変わるこの時代に対してとても古い
技術
- 策定されたのはなんと18年前
• 増えるリソース量、求められるレスポンスの速さを実現
するにはHTTP/1.xの技術だけでは限界があった
Hack HTTP/1.x
• 限界突破するために実に様々なHACKが行われてきた
- asset pipelines
- Domain Sharding
- CSS Sprite
• これらはHTTP/2の登場によりオワコンになります
(^q^)
asset pipelines/CSS Sprite
• 多重通信&優先度制御が可能になったので引退
• 理由
- 不要なデータがくっついている
- ファイルの一部を変更すると全て再転送しなくてはいけない
Domain Sharding
• ブラウザでは1ドメインにつき6本のTCP通信を張る
• リソースを違うドメインでばらけさせることで6本の壁
を越える技術
Domain Sharding
• HTTP/2はTCPをまたぐことができない
• ドメインがバラけると優先度制御や多重通信の恩恵を受
けられない
- 結果、遅くなる
• CDNサーバを利用する場合、CDN経由でアプリケー
ションにアクセスできるようにしましょう
参考資料
参考資料
• HTTP/2時代のウェブサイト設計
https://www.slideshare.net/kazuho/http2-51888328
• HTTP/2 Draft 16 日本語訳
http://blog.summerwind.jp/archives/2548
あわせて知りたい
• SPDY
• QUIC
• HTTP/1.x
• h2o

More Related Content

What's hot

ライブストリーミングの基礎知識
ライブストリーミングの基礎知識ライブストリーミングの基礎知識
ライブストリーミングの基礎知識kumaryu
 
HTTP by Hand: Exploring HTTP/1.0, 1.1 and 2.0
HTTP by Hand: Exploring HTTP/1.0, 1.1 and 2.0HTTP by Hand: Exploring HTTP/1.0, 1.1 and 2.0
HTTP by Hand: Exploring HTTP/1.0, 1.1 and 2.0Cory Forsyth
 
DS-LiteをFreeBSDで使う
DS-LiteをFreeBSDで使うDS-LiteをFreeBSDで使う
DS-LiteをFreeBSDで使うSatoshi Togawa
 
HTTP入門
HTTP入門HTTP入門
HTTP入門Sho A
 
OpenFlow tutorial
OpenFlow tutorialOpenFlow tutorial
OpenFlow tutorialopenflow
 
PHP、おまえだったのか。 いつもHTTPメッセージを 運んでくれたのは。
PHP、おまえだったのか。 いつもHTTPメッセージを 運んでくれたのは。PHP、おまえだったのか。 いつもHTTPメッセージを 運んでくれたのは。
PHP、おまえだったのか。 いつもHTTPメッセージを 運んでくれたのは。sasezaki
 
IPv6 を始めてみた
IPv6 を始めてみたIPv6 を始めてみた
IPv6 を始めてみたmiki koganei
 
Sniffing BitTorrent DHT ~人はBTで何を落とすのか~
Sniffing BitTorrent DHT ~人はBTで何を落とすのか~Sniffing BitTorrent DHT ~人はBTで何を落とすのか~
Sniffing BitTorrent DHT ~人はBTで何を落とすのか~inaz2
 
IPFS: A Whole New World
IPFS: A Whole New WorldIPFS: A Whole New World
IPFS: A Whole New WorldArcBlock
 
Raspberry Pi + Go で IoT した話
Raspberry Pi + Go で IoT した話Raspberry Pi + Go で IoT した話
Raspberry Pi + Go で IoT した話yaegashi
 
BGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたBGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたakira6592
 
HLSについて知っていることを話します
HLSについて知っていることを話しますHLSについて知っていることを話します
HLSについて知っていることを話しますMoriyoshi Koizumi
 
TLS 1.3 と 0-RTT のこわ〜い話
TLS 1.3 と 0-RTT のこわ〜い話TLS 1.3 と 0-RTT のこわ〜い話
TLS 1.3 と 0-RTT のこわ〜い話Kazuho Oku
 
20171005 告白に学ぶ http status code
20171005 告白に学ぶ http status code20171005 告白に学ぶ http status code
20171005 告白に学ぶ http status codeShinichi Takahashi
 
B lack jumbodog 運転と改造のすすめ
B lack jumbodog 運転と改造のすすめB lack jumbodog 運転と改造のすすめ
B lack jumbodog 運転と改造のすすめShinichi Hirauchi
 

What's hot (20)

Apache NiFi in the Hadoop Ecosystem
Apache NiFi in the Hadoop Ecosystem Apache NiFi in the Hadoop Ecosystem
Apache NiFi in the Hadoop Ecosystem
 
暗認本読書会10
暗認本読書会10暗認本読書会10
暗認本読書会10
 
ライブストリーミングの基礎知識
ライブストリーミングの基礎知識ライブストリーミングの基礎知識
ライブストリーミングの基礎知識
 
HTTP by Hand: Exploring HTTP/1.0, 1.1 and 2.0
HTTP by Hand: Exploring HTTP/1.0, 1.1 and 2.0HTTP by Hand: Exploring HTTP/1.0, 1.1 and 2.0
HTTP by Hand: Exploring HTTP/1.0, 1.1 and 2.0
 
DS-LiteをFreeBSDで使う
DS-LiteをFreeBSDで使うDS-LiteをFreeBSDで使う
DS-LiteをFreeBSDで使う
 
TLS, HTTP/2演習
TLS, HTTP/2演習TLS, HTTP/2演習
TLS, HTTP/2演習
 
HTTP入門
HTTP入門HTTP入門
HTTP入門
 
HTTP/3
HTTP/3HTTP/3
HTTP/3
 
OpenFlow tutorial
OpenFlow tutorialOpenFlow tutorial
OpenFlow tutorial
 
PHP、おまえだったのか。 いつもHTTPメッセージを 運んでくれたのは。
PHP、おまえだったのか。 いつもHTTPメッセージを 運んでくれたのは。PHP、おまえだったのか。 いつもHTTPメッセージを 運んでくれたのは。
PHP、おまえだったのか。 いつもHTTPメッセージを 運んでくれたのは。
 
IPv6 を始めてみた
IPv6 を始めてみたIPv6 を始めてみた
IPv6 を始めてみた
 
Sniffing BitTorrent DHT ~人はBTで何を落とすのか~
Sniffing BitTorrent DHT ~人はBTで何を落とすのか~Sniffing BitTorrent DHT ~人はBTで何を落とすのか~
Sniffing BitTorrent DHT ~人はBTで何を落とすのか~
 
IPFS: A Whole New World
IPFS: A Whole New WorldIPFS: A Whole New World
IPFS: A Whole New World
 
Raspberry Pi + Go で IoT した話
Raspberry Pi + Go で IoT した話Raspberry Pi + Go で IoT した話
Raspberry Pi + Go で IoT した話
 
暗認本読書会9
暗認本読書会9暗認本読書会9
暗認本読書会9
 
BGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたBGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみた
 
HLSについて知っていることを話します
HLSについて知っていることを話しますHLSについて知っていることを話します
HLSについて知っていることを話します
 
TLS 1.3 と 0-RTT のこわ〜い話
TLS 1.3 と 0-RTT のこわ〜い話TLS 1.3 と 0-RTT のこわ〜い話
TLS 1.3 と 0-RTT のこわ〜い話
 
20171005 告白に学ぶ http status code
20171005 告白に学ぶ http status code20171005 告白に学ぶ http status code
20171005 告白に学ぶ http status code
 
B lack jumbodog 運転と改造のすすめ
B lack jumbodog 運転と改造のすすめB lack jumbodog 運転と改造のすすめ
B lack jumbodog 運転と改造のすすめ
 

Viewers also liked

「データベース実践入門」から学ぶリレーショナルモデル
「データベース実践入門」から学ぶリレーショナルモデル「データベース実践入門」から学ぶリレーショナルモデル
「データベース実践入門」から学ぶリレーショナルモデルSota Sugiura
 
最新プロトコル HTT/2 とは
最新プロトコル HTT/2 とは最新プロトコル HTT/2 とは
最新プロトコル HTT/2 とはYukimitsu Izawa
 
Http2入門の入門
Http2入門の入門Http2入門の入門
Http2入門の入門Net Kanayan
 
Web Audio API 入門
Web Audio API 入門Web Audio API 入門
Web Audio API 入門Sota Sugiura
 
Web Audio APIの初歩
Web Audio APIの初歩Web Audio APIの初歩
Web Audio APIの初歩Shota Kubota
 
TensorFlow を使った 機械学習ことはじめ (GDG京都 機械学習勉強会)
TensorFlow を使った機械学習ことはじめ (GDG京都 機械学習勉強会)TensorFlow を使った機械学習ことはじめ (GDG京都 機械学習勉強会)
TensorFlow を使った 機械学習ことはじめ (GDG京都 機械学習勉強会)徹 上野山
 

Viewers also liked (8)

「データベース実践入門」から学ぶリレーショナルモデル
「データベース実践入門」から学ぶリレーショナルモデル「データベース実践入門」から学ぶリレーショナルモデル
「データベース実践入門」から学ぶリレーショナルモデル
 
最新プロトコル HTT/2 とは
最新プロトコル HTT/2 とは最新プロトコル HTT/2 とは
最新プロトコル HTT/2 とは
 
Http2入門の入門
Http2入門の入門Http2入門の入門
Http2入門の入門
 
Web Audio API 入門
Web Audio API 入門Web Audio API 入門
Web Audio API 入門
 
Web Audio APIの初歩
Web Audio APIの初歩Web Audio APIの初歩
Web Audio APIの初歩
 
HTTP/2入門
HTTP/2入門HTTP/2入門
HTTP/2入門
 
HTTP/2 入門
HTTP/2 入門HTTP/2 入門
HTTP/2 入門
 
TensorFlow を使った 機械学習ことはじめ (GDG京都 機械学習勉強会)
TensorFlow を使った機械学習ことはじめ (GDG京都 機械学習勉強会)TensorFlow を使った機械学習ことはじめ (GDG京都 機械学習勉強会)
TensorFlow を使った 機械学習ことはじめ (GDG京都 機械学習勉強会)
 

Similar to HTTP2入門

Janogia20120921 yoshinotakeshi
Janogia20120921 yoshinotakeshiJanogia20120921 yoshinotakeshi
Janogia20120921 yoshinotakeshiKeisuke Ishibashi
 
HTTP/2 でリバプロするだけでグラフツールを 高速化できた話
HTTP/2 でリバプロするだけでグラフツールを 高速化できた話HTTP/2 でリバプロするだけでグラフツールを 高速化できた話
HTTP/2 でリバプロするだけでグラフツールを 高速化できた話Naotoshi Seo
 
WebSocket Protocol と Plack::Middleware::WebSocket
WebSocket Protocol と Plack::Middleware::WebSocketWebSocket Protocol と Plack::Middleware::WebSocket
WebSocket Protocol と Plack::Middleware::WebSocketYu Nobuoka
 
HTTPとサーバ技術の最新動向
HTTPとサーバ技術の最新動向HTTPとサーバ技術の最新動向
HTTPとサーバ技術の最新動向Kazuho Oku
 
IETF89 HTTP関連WG報告 #isocjp
IETF89 HTTP関連WG報告 #isocjpIETF89 HTTP関連WG報告 #isocjp
IETF89 HTTP関連WG報告 #isocjpKaoru Maeda
 
CDNの仕組み(JANOG36)
CDNの仕組み(JANOG36)CDNの仕組み(JANOG36)
CDNの仕組み(JANOG36)J-Stream Inc.
 
H2O - making HTTP better
H2O - making HTTP betterH2O - making HTTP better
H2O - making HTTP betterKazuho Oku
 
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
 
WebRTC SFU mediasoup sample
WebRTC SFU mediasoup sampleWebRTC SFU mediasoup sample
WebRTC SFU mediasoup samplemganeko
 
HTTP/2時代のウェブサイト設計
HTTP/2時代のウェブサイト設計HTTP/2時代のウェブサイト設計
HTTP/2時代のウェブサイト設計Kazuho Oku
 
ストリーミングのげんざい
ストリーミングのげんざいストリーミングのげんざい
ストリーミングのげんざいTetsuya Morimoto
 
ネットワーク第3回目
ネットワーク第3回目ネットワーク第3回目
ネットワーク第3回目Yukiko Kato
 
httpbis interim とhttp2.0相互接続試験の話
httpbis interim とhttp2.0相互接続試験の話httpbis interim とhttp2.0相互接続試験の話
httpbis interim とhttp2.0相互接続試験の話shigeki_ohtsu
 
Perl で作るメディアストリーミングサーバー
Perl で作るメディアストリーミングサーバーPerl で作るメディアストリーミングサーバー
Perl で作るメディアストリーミングサーバーHideo Kimura
 
HTTPを理解する
HTTPを理解するHTTPを理解する
HTTPを理解するIIJ
 
HTML5 VIDEO on Chromecast
HTML5 VIDEO on ChromecastHTML5 VIDEO on Chromecast
HTML5 VIDEO on ChromecastKatsumi Onishi
 

Similar to HTTP2入門 (20)

Janogia20120921 yoshinotakeshi
Janogia20120921 yoshinotakeshiJanogia20120921 yoshinotakeshi
Janogia20120921 yoshinotakeshi
 
HTTP/2 でリバプロするだけでグラフツールを 高速化できた話
HTTP/2 でリバプロするだけでグラフツールを 高速化できた話HTTP/2 でリバプロするだけでグラフツールを 高速化できた話
HTTP/2 でリバプロするだけでグラフツールを 高速化できた話
 
WebSocket Protocol と Plack::Middleware::WebSocket
WebSocket Protocol と Plack::Middleware::WebSocketWebSocket Protocol と Plack::Middleware::WebSocket
WebSocket Protocol と Plack::Middleware::WebSocket
 
HTTPとサーバ技術の最新動向
HTTPとサーバ技術の最新動向HTTPとサーバ技術の最新動向
HTTPとサーバ技術の最新動向
 
HTTP/2.0と標準化
HTTP/2.0と標準化HTTP/2.0と標準化
HTTP/2.0と標準化
 
IETF89 HTTP関連WG報告 #isocjp
IETF89 HTTP関連WG報告 #isocjpIETF89 HTTP関連WG報告 #isocjp
IETF89 HTTP関連WG報告 #isocjp
 
CDNの仕組み(JANOG36)
CDNの仕組み(JANOG36)CDNの仕組み(JANOG36)
CDNの仕組み(JANOG36)
 
H2O - making HTTP better
H2O - making HTTP betterH2O - making HTTP better
H2O - making HTTP better
 
[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 の実装苦労話
 
WebRTC SFU mediasoup sample
WebRTC SFU mediasoup sampleWebRTC SFU mediasoup sample
WebRTC SFU mediasoup sample
 
HTTP/2時代のウェブサイト設計
HTTP/2時代のウェブサイト設計HTTP/2時代のウェブサイト設計
HTTP/2時代のウェブサイト設計
 
ストリーミングのげんざい
ストリーミングのげんざいストリーミングのげんざい
ストリーミングのげんざい
 
ネットワーク第3回目
ネットワーク第3回目ネットワーク第3回目
ネットワーク第3回目
 
20120525 mt websocket
20120525 mt websocket20120525 mt websocket
20120525 mt websocket
 
httpbis interim とhttp2.0相互接続試験の話
httpbis interim とhttp2.0相互接続試験の話httpbis interim とhttp2.0相互接続試験の話
httpbis interim とhttp2.0相互接続試験の話
 
Perl で作るメディアストリーミングサーバー
Perl で作るメディアストリーミングサーバーPerl で作るメディアストリーミングサーバー
Perl で作るメディアストリーミングサーバー
 
HTTPを理解する
HTTPを理解するHTTPを理解する
HTTPを理解する
 
HTML5 VIDEO on Chromecast
HTML5 VIDEO on ChromecastHTML5 VIDEO on Chromecast
HTML5 VIDEO on Chromecast
 
Web基礎
Web基礎Web基礎
Web基礎
 

More from Sota Sugiura

TechCrunchTokyo Hackathon 2015
TechCrunchTokyo Hackathon 2015TechCrunchTokyo Hackathon 2015
TechCrunchTokyo Hackathon 2015Sota Sugiura
 
コミットメッセージの話
コミットメッセージの話コミットメッセージの話
コミットメッセージの話Sota Sugiura
 
今さら聞けないXSS
今さら聞けないXSS今さら聞けないXSS
今さら聞けないXSSSota Sugiura
 
各ブラウザでの均等割り付け比較
各ブラウザでの均等割り付け比較各ブラウザでの均等割り付け比較
各ブラウザでの均等割り付け比較Sota Sugiura
 
GitHubにおける開発フローについてのお話
GitHubにおける開発フローについてのお話GitHubにおける開発フローについてのお話
GitHubにおける開発フローについてのお話Sota Sugiura
 
Promiseでコールバック地獄から解放された話
Promiseでコールバック地獄から解放された話Promiseでコールバック地獄から解放された話
Promiseでコールバック地獄から解放された話Sota Sugiura
 

More from Sota Sugiura (6)

TechCrunchTokyo Hackathon 2015
TechCrunchTokyo Hackathon 2015TechCrunchTokyo Hackathon 2015
TechCrunchTokyo Hackathon 2015
 
コミットメッセージの話
コミットメッセージの話コミットメッセージの話
コミットメッセージの話
 
今さら聞けないXSS
今さら聞けないXSS今さら聞けないXSS
今さら聞けないXSS
 
各ブラウザでの均等割り付け比較
各ブラウザでの均等割り付け比較各ブラウザでの均等割り付け比較
各ブラウザでの均等割り付け比較
 
GitHubにおける開発フローについてのお話
GitHubにおける開発フローについてのお話GitHubにおける開発フローについてのお話
GitHubにおける開発フローについてのお話
 
Promiseでコールバック地獄から解放された話
Promiseでコールバック地獄から解放された話Promiseでコールバック地獄から解放された話
Promiseでコールバック地獄から解放された話
 

Recently uploaded

Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールsugiuralab
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価sugiuralab
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 

Recently uploaded (8)

Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツール
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 

HTTP2入門