SPDY

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania

SPDY (wymawiaj jak (ang.) przymiotnik "speedy") – przestarzały[a], oparty na TCP protokół warstwy aplikacji pierwotnie projektowany do transmisji stron WWW. Powstał w firmie Google jako podprojekt przeglądarki WWW Chromium.

W trakcie rozwoju SPDY jego główni programiści, m.in. Mike Belshe i Roberto Peon, zostali włączeni w opracowywanie HTTP/2, którego pierwszy szkic finalnie został oparty na SPDY[1]. W lutym 2015 r. Google zadeklarował, że w związku z zatwierdzeniem standardu HTTP/2 wycofuje wsparcie dla SPDY[2].

Podstawowa charakterystyka[edytuj | edytuj kod]

Nazwa "SPDY" wbrew swej postaci nie jest akronimem. Została utworzona od angielskiego słowa "SPeeDY" – tj. szybki, prędki – i miała podkreślać założoną szybkość działania nowego protokołu wobec niedomagań starzejącego się HTTP[3].

Celem projektu było skrócenie czasu pobierania stron WWW[4] dzięki priorytetowemu pobieraniu elementów stron, które najbardziej wpływają na ich działanie, a także poprzez zwielokrotnianie połączeń, które w oryginalnych implementacjach HTTP była niedostępne a później jedynie emulowane przy pomocy awaryjnego pipeliningu. W SPDY przeniesienie kilku plików wymagało tylko jednego połączenia[5]. Serwery SPDY mogły zarówno sugerować klientowi pobieranie określonych zasobów jak i wysyłać je niejako bez pytania w tzw. trybie push uprzedzając żądanie klienta[6][3]. Wymogiem było szyfrowanie całej transmisji przy pomocy TLS. Jednocześnie, kompresji (np. gzip) podlegały nie tylko dane – jak w HTTP – ale także nagłówki protokołu[6].

Dzięki temu, że serwery Google były jednymi z pierwszych[7] zdolnych korzystać z protokołu Google Chrome w pierwszym rzędzie używał SPDY[8][9] do komunikowania się z firmowymi usługami, jak wyszukiwarka, Gmail, Sync czy też pobierania reklam AdSense.

Stan implementacji[edytuj | edytuj kod]

SPDY było wykorzystywane w komunikacji pomiędzy Chrome a serwerami Google już w styczniu 2011 roku[b][7]. W związku certyfikacją HTTP/2 i porzuceniem na jego rzecz SPDY przez Google wersja 51. wersja Chrome w 2016 ostatecznie usunęła wsparcie dla protokołu.

W Mozilla Firefox posiadała obsługę protokołu począwszy od wersji 11 ( początkowo domyślnie wyłączoną[c], aktywowaną w pełni od wersji 13[10]) do 50, gdy wsparcie dla niego zostało usunięte[11]. Presto, oryginalny silnik przeglądarki Opery obsługuje protokół SPDY od wersji 12.10[12] do 12.16, gdy zaprzestano jego rozwoju (nowsze wersje bazują na Chromium).

W Windows 8.1 SPDY jest dostępny w całym systemie dzięki komponentom Internet Explorer 11. Jednakże ta sama przeglądarka na wersji Windows 7 nie obsługuje protokołu SPDY.

Przypisy[edytuj | edytuj kod]

  1. Mark Nottingham: First draft of HTTP/2. HTTP Working Group Mailing List. [dostęp 2012-12-02].
  2. Hello HTTP/2, Goodbye SPDY (ang.). Google, 9 lutego 2015.
  3. a b SPDY: Google wants to speed up the web by ditching HTTP.
  4. A 2x Faster Web
  5. SPDY: An experimental protocol for a faster web.
  6. a b SPDY whitepaper
  7. a b SPDY on Google servers?. [dostęp 2020-10-03].
  8. Chromium SPDY client implementation
  9. Chromium: SPDY proxy examples
  10. Firefox Notes - Desktop (ang.). www.mozilla.org. [dostęp 2017-11-26].
  11. Bugzilla@Mozilla Bug 1287132 - Disable SPDY 3.1 (ang.). [dostęp 2017-02-26].
  12. David Honneffer, Documentation Specialist: Opera: Opera 12.10 Changelog.

Uwagi[edytuj | edytuj kod]

  1. W 2020 SPDY nie jest wspierane przez żadną z dominujących na rynku przeglądarek WWW, a implementacje są usuwane z oprogramowania serwerowego.
  2. Sesje SPDY mogły być sprawdzone w Chrome za pomocą specjalnego URL chrome://net-internals/#events&q=type:SPDY_SESSION%20is:active.
  3. W 11 wersji Firefoksa SPDY był domyślnie wyłączony, a aktywacji należało dokonać ręcznie przełączając wartość ustawienia network.http.spdy.enabled na true w about:config

Linki zewnętrzne[edytuj | edytuj kod]