spdy/3 の http 重畳効果を測定する
DESCRIPTION
2014/7/29 開催・第19回ネットワーク パケットを読む会 (仮) の発表資料です。 当日利用したスライドに Excel での集計手順を追加しています。TRANSCRIPT
![Page 1: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/1.jpg)
SPDY のHTTP 重畳の効果を計測する
Murachi Akira aka hebikuzure
This material provided by CC BY-NC-ND 4.0. See http://creativecommons.org/licenses/by-nc-nd/4.0/
![Page 2: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/2.jpg)
About me 村地 彰 aka hebikuzure 株式会社シーピーエス
http://www.murachi.net/ http://www.hebikuzure.com/ Microsoft MVP (Internet Explorer) Apr. 2011 ~
2014/7/29 2© 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 )
![Page 3: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/3.jpg)
Web サイト今昔昔 : 1 回ずつ読み込
んだら終わり今 : 何度でもサー
バーとやり取り
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 3
HTML
画像 JS CSS
HTML(SPA)
画像 JS CSS
XHR
画像画像 JSJS CSSCSS
WebSockets
![Page 4: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/4.jpg)
HTTP はステートレス 1 対のリクエスト – レスポンスで終了 HTTP 1.0 では HTTP セッションが終わると TCP セッションも終了 HTTP 1.1 で Keep-Alive が可能になる それでも TCP 1 セッションで HTTP 1 セッションしか収容できない
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 4
![Page 5: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/5.jpg)
Modern Web =TCP Session Eater 1 ページを表示するだけなのにTCP セッション数が膨大になる TCP handshake のオーバーヘッド NAT セッションの枯渇 ? CGN (Carrier Grade NAT) はどうする ?
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 5
![Page 6: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/6.jpg)
TCP を大切に使おう ! TCP 1 セッションに複数の HTTP セッションを重畳すればいいんじゃない ? by Google
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 6
SPDY
![Page 7: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/7.jpg)
SPDY で TCP セッション削減 同じオリジンへの HTTP リクエストが一つの TCP セッションに重畳される
ページの動作に必要な TCP セッション数が削減される
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 7
![Page 8: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/8.jpg)
TCP セッション削減を計測 環境 : Windows 7 SP1 ブラウザー :
◦ Google Chrome 36 (SPDY/3 サポート )◦ Internet Explorer 11 (SPDY 未サポート )
サイト : ◦ Gmail のトップページ
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 8
![Page 9: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/9.jpg)
測定方法 各ブラウザーで Gmail を表示 リンククリックからページ表示終了まで Wireshark でパケットキャプチャ [Statics] – [Conversation List] – [TCP(IPv4 & IPv6)]
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 9
![Page 10: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/10.jpg)
比較 googlehosted.l.googleusercontent.com
◦ 8 5⇒
googlemail.l.google.com◦ 5 1⇒
talkgadget.l.google.com◦ 7 1⇒
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 10
![Page 11: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/11.jpg)
結論 SPDY/3 で TCP セッションに HTTP (HTTPS) セッションが重畳されている TCP セッション数が削減されている
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 11
![Page 12: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/12.jpg)
比較手順1. Wireshark から Conversation List をコ
ピー2. コピーしたリストをテキスト エディ
タに貼り付けて csv ファイルとして保存
3. csv ファイルを Excel で開く4. Excel で集計
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 12
![Page 13: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/13.jpg)
Conversation List をコピー
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 13
[Copy] ボタンをクリック
![Page 14: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/14.jpg)
csv ファイルとして保存
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 14
[ 名前を付けて保存 ]
![Page 15: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/15.jpg)
csv ファイルを Excel で開く
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 15
Excel がインストールされていれば、 csv ファイルのダブルクリックで開く
![Page 16: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/16.jpg)
Excel で集計 (1) 見やすくするため列幅を調整
◦ 調整したい列を選択、列見出しの境界線をダブルクリックで自動調整
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 16
![Page 17: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/17.jpg)
Excel で集計 (3) 集計のために個数を数えるフィールド(ここでは Address B )でソートする1. Address B の列内のセルをクリック2. [ データ ] タブ– [ 昇順 ]
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 17
![Page 18: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/18.jpg)
Excel で集計 (3)1. 集計したいセル範囲内をクリック2. [ データ ] タブ – [ 小計 ]
◦ グループの基準◦ Address B
( サーバー側エンドポイント )◦ 集計の方法
個数◦ 集計するフィールド
Address B
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 18
![Page 19: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/19.jpg)
Excel で集計 (4)
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 19
アウトライン記号(赤囲)をクリックして折りたためます
![Page 20: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/20.jpg)
Excel で集計 (5)
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 20
折り畳んで不要な列を非表示にし、列幅を調整すればTCP セッション数一覧表の完成
※ 集計の解除はもう一度 [ 修正の設定 ] を表示して [ すべて削除 ]
![Page 21: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/21.jpg)
ピボット テーブルで集計 ピボット テーブルを使った集計も可能1. 集計したいセル範囲内をクリック2. [ 挿入 ] タブ – [ ピボット テーブル ]3. [OK] をクリック
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 21
![Page 22: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/22.jpg)
ピボット テーブルで集計( 2 )
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 22
Address B を [ 行 ] にドロップ
![Page 23: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/23.jpg)
ピボット テーブルで集計( 3 )
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 23
Port B を [ 値 ] にドロップ
![Page 24: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/24.jpg)
ピボット テーブルで集計( 4 )1. [ 値 ] の [ 合計 /Port B] をクリック2. [ 値フィールドの設定 ] をクリック3. [ 集計方法 ] で
[ データの個数 ] を選択
4. [OK] をクリック
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 24
![Page 25: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/25.jpg)
ピボット テーブルで集計( 4 )
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 25
TCP セッション数一覧表の完成
![Page 26: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/26.jpg)
SPDY の現状とこれから HTTP/2 として標準化予定 SPDY/3 はメジャーなブラウザーの最新バージョンで既にサポート済み◦ Internet Explorer でも Windows 8 / 8.1 でサポート済み
Google のサイト以外に、 Twitter などでサポート済み
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 26
![Page 27: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/27.jpg)
HTTP を刷新しよう HTTP 1.1 の次のバージョン 最初は HTTP 2.0 として検討 SPDY を基礎に標準化
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 27
HTTP/2
![Page 28: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/28.jpg)
HTTP/2 TCP 1 セッションに複数の HTTP セッション ( ストリーム ) を重畳 バイナリ フレームの採用 HPACK によるヘッダー圧縮 サーバー プッシュ ストリームのプライオリティ設定
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 28
![Page 29: SPDY/3 の HTTP 重畳効果を測定する](https://reader035.vdocuments.net/reader035/viewer/2022081504/559220411a28abd5598b4641/html5/thumbnails/29.jpg)
HTTP/2 の現状 IETF の Working Group で Last Call 今年中に IESG に提出予定 各ベンダーの実装と相互運用性検証は進んでいる ( サーバー / クライアントとも )
2014/7/29 © 2014 Murachi Akira - CC BY-NC-ND - ネットワーク パケットを読む会 ( 仮 ) 29