SPDY(スピーディー[1])は、Google が提唱している World Wide Web の通信プロトコル。HTTP/2 の起草となった。最後のバージョンはSPDY Protocol - Draft 3.1[2]。SPDY は 3.1 が最後のバージョンとなり、SPDY/4 は HTTP/2 に吸収された。 HTTPを基にして高速化を行ったプロトコルである。TLS接続の上にセッション層を追加し、単一のSPDYセッションで複数のリクエストを送受信する。さらに、ブラウザがページを表示する際、付随するデータの先読みを行う機能も追加している。セキュリティ機能も強化する。プロトコル的にはTLSの拡張仕様の一つであるApplication-Layer Protocol Negotiation (ALPN) をベースにしているため、HTTPSを使っての通信が必須である。 2015年現在は、独立したプロトコルとして一部のWebブラウザやWebサーバで実装が進んでいるほか、後継のHTTP/2がIETFにおいて .mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation.cs-ja1 q,.mw-parser-output .citation.cs-ja2 q{quotes:"「""」""『""』"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free a,.mw-parser-output .citation .cs1-lock-free a{background:url("//upload.wikimedia.org/wikipedia/commons/6/65/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited a,.mw-parser-output .id-lock-registration a,.mw-parser-output .citation .cs1-lock-limited a,.mw-parser-output .citation .cs1-lock-registration a{background:url("//upload.wikimedia.org/wikipedia/commons/d/d6/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription a,.mw-parser-output .citation .cs1-lock-subscription a{background:url("//upload.wikimedia.org/wikipedia/commons/a/aa/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("//upload.wikimedia.org/wikipedia/commons/4/4c/Wikisource-logo.svg")right 0.1em center/12px no-repeat}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:#d33}.mw-parser-output .cs1-visible-error{color:#d33}.mw-parser-output .cs1-maint{display:none;color:#3a3;margin-left:0.3em}.mw-parser-output .cs1-format{font-size:95%}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}RFC 7540
概要
プロトコルは下記の4種類作られた。 下記ウェブブラウザで、デフォルト設定で SPDY を用いた通信に対応している。HTTP/2 (SPDY/4) については HTTP/2 を参照。
SPDY/1[3] - 2009年11月11日発表
SPDY/2[4]
SPDY/3[5]
SPDY/3.1[6]
実装状況
クライアント
Internet Explorer 11 にて SPDY/3[7]。ただし Windows 7, Windows Server 2008 R2 では未対応[8]。
Google Chrome・Chromium 10 以降[9][10]。2016年に SPDY と NPN のサポートを終了し、HTTP/2 および ALPN に移行する予定[11]
Mozilla Firefox 11 より SPDY/2[12](13よりデフォルトで有効[13])、15より SPDY/3[14]、27より SPDY/3.1[15]。28以降で SPDY/2 のサポートを終了[16]
Safari 8 以降(OS X 10.10およびiOS 8以降におけるサードパーティー製アプリも含む)において SPDY/2、3、3.1[17]
Opera 12.10 以降[18]
Android ブラウザ 3.0 以降
cURL[19]
サーバ
Jetty 7.6.2および8.1.2以降[20]
node.js[21][22]
Apache mod_spdy[23]
Apache Tomcat 8[24]
nginx 1.5.10以前にてSPDY 2[25]、1.5.10よりSPDY 3.1[26]
F5 Networks BIG-IP[27]
LiteSpeed Technologies OpenLiteSpeed 1.1よりSPDY 2および3[28]、1.2.7よりSPDY 3.1[29]
脚注[脚注の使い方]^ “ ⇒SPDY: An experimental protocol for a faster web”. Chromium Developer Documentation. 2012年8月29日閲覧。
^ ⇒SPDY Protocol - Draft 3.1
^ ⇒SPDY Protocol - Draft 1 - The Chromium Projects
^ ⇒SPDY Protocol - Draft 2 - The Chromium Projects
^ ⇒SPDY Protocol - Draft 3 - The Chromium Projects
^ ⇒SPDY Protocol - Draft 3.1 - The Chromium Projects
^ “ ⇒IE11 Changes” (2013年9月24日). 2013年12月14日閲覧。
^ “ ⇒Microsoft Releases Internet Explorer 11 for Windows 7” (2013年11月7日). 2013年12月14日閲覧。
^ ⇒Chromium SPDY client implementation.
^ ⇒Chromium: SPDY proxy examples.
^ Bentzel, Chris; Beky, Bence (2015年2月9日). “Hello HTTP/2, Goodbye SPDY
^ “ ⇒Firefox 11 リリースノート” (2012年3月13日). 2013年12月14日閲覧。
^ “ ⇒Firefox 13 リリースノート” (2012年6月5日). 2013年12月14日閲覧。
^ “ ⇒Firefox 15 リリースノート” (2012年8月28日). 2013年12月14日閲覧。
^ “ ⇒Firefox 27 リリースノート” (2014年2月4日). 2014年2月7日閲覧。
^ “ ⇒Firefox 28 ベータ版リリースノート” (2014年2月6日). 2014年2月7日閲覧。
^ “ ⇒What's New in Foundation Networking”. Apple inc.. 2014年7月7日閲覧。
^ “ ⇒Opera 12.10 Changelog” (2012年11月20日). 2013年12月14日閲覧。
^ “ ⇒libspdy”. daniel.haxx.se (2011年10月18日). 2014年7月7日閲覧。
^ Jetty Feature SPDY