HTTP/2.0 入門
2016.09-30社内勉強会@nakamura_tsuyo4HTTP/2 入門
View Slide
AgendaHTTP/2の内容を見るHTTPの歴史対応状況考察関連情報
HistoryAbout HTTP1
History1996 HTTP/1.01991 HTTP/0.91999 HTTP/1.12015 HTTP/2.0
History2009年 GoogleからSPDY◦ SPDY/1◦ SPDY/2◦ SPDY/3◦ SPDY/3.1
SPDYの進化版でHTTP/2の開発◦ IETFのHTTPBisのワーキンググループが進める◦ RFC7540としてRFC化History
HTTPBisBisってなに...小ネタ
HTTPBisBisはラテン語系(french,spanish,)で「繰り返し」「再び」という意味があるHTTPのsecond version of protocol
ブラウザとWebサーバの実装によって実現だからRFCやらIETFというwordがでてくる
HTTP/22
About HTTP/2http://blog.redbox.ne.jp/http2-cdn.htmlストリームの多重化
About HTTP/2ストリームの優先度◦ Dependency Weighting◦ PRIORITY Frame◦ ブラウザが更新
About HTTP/2headerの圧縮◦ HPACK (RFC7541)◦ ネットワーク帯域の節約
About HTTP/2フローの制御◦ Stream毎に制御可能▫ ひとつのストリームが帯域リソースの占有を防ぐ▫ 重い動画や画像のダウンロード時にとか
About HTTP/2サーバプッシュhttp://codezine.jp/article/detail/8663?p=2
About HTTP/2接続 -だいたいALPN-◦ ALPN▫ Application-Layer Protocol Negotiation▫ サーバ側がプロトコルを選択◦ NPN▫ Next Protocol Negotiation▫ クライアントがプロトコルを選択
Correspondence tableBrowser and Server3
対応状況 -ブラウザ-ブラウザ 対応バージョンChrome 42以上Firefox 38以上IE Windows 10上のInternet Explorer 11※2016.09.29時点mac chromeの最新は53※検索するとほとんどのモダンブラウザであれば対応済みと考えて良さそう※どのブラウザもTLS拡張(ALPN)が必要
対応状況 -サーバ-サーバ 対応バージョンNginx 1.9.5以上Apache 2.4系以上Tomcat 9以上※TLS拡張にはOpenSSLの1.0.2が必要
考察4
効果が薄いパターン◦ すでに複数ドメインで運用しているサイト◦ リクエスト数少ないサイト◦ HTTPSを使ってないサイト
効果が高いパターン◦ 通信回線が弱いユーザ(mobile含む)▫ 逆に回線の良いユーザには体感しづらい◦ そもそもアクセスがおおいサイト◦ 動画や重い画像を扱ってるサイト◦ すでにCDNを使っててもCDN屋さんでHTTP2対応されてるので活用メリットはある▫ https://http2.akamai.com/demo◦ GoogleBotもHTTP2をサポートするらしいのでSEOでプラス効果が期待出来る
関連情報4
その他Googleはすでに次の仕様策定中の様子▫ QUIC▫ UDPプロトコルも活用して高速化を目指すHTTP/2 and SPDY indicator▫ Chrome extensionhttp://www.rfc-editor.org/rfc/rfc7540.txt▫ 原文