SPDY

SPDY (читается как «speedy», «спиди») — протокол прикладного уровня для передачи веб-контента. Протокол разработан корпорацией Google. По замыслу разработчиков, данный протокол позиционируется как замена некоторых частей протокола HTTP — таких, как управление соединениями и форматы передачи данных.

SPDY
Название SPDY
Уровень (по модели OSI) Прикладной
Семейство TCP/IP
Создан в 2012
Основные реализации (клиенты) Веб-браузеры: Mozilla Firefox[1], Internet Explorer 11[2], Amazon Silk.
Основные реализации (серверы) Apache[3], Nginx[4].
Разработчик Google

Основной задачей SPDY заявлялось снижение времени загрузки веб-страниц и их элементов[5]. Это достигается за счёт расстановки приоритетов и мультиплексирования передачи нескольких файлов таким образом, чтобы требовалось только одно соединение для каждого клиента.

Документация по проекту доступна с 2009 года, было проведено первое лабораторное тестирование. Тесты проходили таким образом: создатели сымитировали сеть и загрузили по SPDY-протоколу 25 крупнейших мировых сайтов. Статистика говорит о том, что в ряде случаев веб-страницы загружались на 55 % быстрее, чем при использовании HTTP-протокола. В документации также сказано, что время загрузки страниц стало меньше на 36 %[6][7].

Протокол широко использовался с 2011—2012 годов[8]. С 2015 года активно внедряется протокол HTTP/2[9], поддержка протокола SPDY была удалена из ряда клиентов в 2016 году в пользу HTTP/2[10][11].

Версии протокола

У SPDY есть 4 версии протокола. В его управляющих кадрах 15 бит указывают версию протокола.

  • Версия 1: больше не используется.
  • Версия 2: поддержка скоро будет прекращена. Nginx, до версии 1.5.10, поддерживает spdy/2. Firefox 28 и последние версии Chrome отказываются от поддержки SPDY версии 2. OpenLiteSpeed 1.1 поддерживает SPDY/2.
  • Версия 3: В SPDY v3 введена поддержка управления потоком, обновлённый словарь сжатия, и удалены неиспользуемые места в заголовках в определённых фреймах, наряду с другими исправлены незначительные ошибки. Поддерживают:
    • Firefox 15+
    • OpenLiteSpeed 1.1+
  • Версия 3.1: SPDY v3.1 введена поддержка уровня сеанса управления потоком, удалены фреймы типа CREDENTIALS (и связанные с ними коды ошибок). Поддерживают: Firefox 27,  OpenLiteSpeed 1.2.7, Nginx 1.5.10.
  • Версия 4: альфа версия доступна для включения на странице chrome://flags/#enable-spdy4 для Chrome и браузеров на базе движка Chromium, а также для Opera на opera://flags/#enable-quic.

Поддержка

Клиенты

Браузеры Google Chrome/Chromium и основанные на них поддерживали SPDY с версии 6 (2011 год)[12]. Начиная с 51 версии Chromium, поддержка SPDY была удалена в пользу протокола HTTP/2[13].

В настоящее время протокол поддерживается браузером Mozilla Firefox (реализован с версии 11[1], включён с версии 13[14]) и оригинальным вариантом Opera с версии 12.10[15][16].

Компания Microsoft официально подтвердила поддержку SPDY/3 в Internet Explorer 11 в 2013 году[2].

Серверы

Для популяризации протокола и облегчения его внедрения компания Google выпустила модуль mod_spdy для веб-сервера Apache. В nginx 1.3.15 появилась поддержка модуля ngx_http_spdy_module[4].

См. также

  • SSL
  • SCTP
  • HTTP
  • HTTPS
  • HTTP/2
  • QUIC — новый экспериментальный интернет-протокол, разработанный Google.

Примечания

  1. Bug 528288 - (SPDY) Implement SPDY protocol (англ.). Дата обращения: 11 марта 2012.
  2. WebGL, SPDY/3, New Dev Tools, & More Confirmed For IE11 In Win 8.1 (англ.) (недоступная ссылка). Архивировано 1 июля 2013 года.
  3. Модуль apache mod_spdy.
  4. Модуль nginx ngx_http_spdy_module.
  5. A 2x Faster Web (недоступная ссылка). Official Google Chromium Blog (11 ноября 2009). Дата обращения: 13 ноября 2009. Архивировано 10 апреля 2012 года.
  6. SPDY: An experimental protocol for a faster web (недоступная ссылка). Chromium Developer Documentation. Дата обращения: 13 ноября 2009. Архивировано 10 апреля 2012 года. (англ.)
  7. Iljitsch van Beijnum. SPDY: Google wants to speed up the web by ditching HTTP (недоступная ссылка). Ars Technica (12 ноября 2009). Дата обращения: 13 ноября 2009. Архивировано 10 апреля 2012 года. (англ.)
  8. HTTP/2 is here! Goodbye SPDY? Not quite yet
  9. https://www.theregister.co.uk/2015/02/18/http2_specification_approved/
  10. https://www.theregister.co.uk/2015/02/09/rip_spdy_we_hardly_knew_ye_google_to_retire_nextgen_web_protocol/
  11. Chromium Blog: Hello HTTP/2, Goodbye SPDY
  12. Google sees 15% speed boost with HTTP tweak. All Google SSL connections now SPDY (англ.), The Register (16 June 2011). Дата обращения 10 августа 2016. «SPDY quietly made its debut with Chrome 6».
  13. Transitioning from SPDY to HTTP/2 (англ.). Дата обращения: 10 августа 2016.
  14. Firefox Aurora 13 is out – SPDY on by default and a list of other improvements (англ.) (недоступная ссылка). Архивировано 16 июня 2012 года.
  15. Opera 12.50-1577 now support SPDY protocol (англ.) (недоступная ссылка). Архивировано 24 октября 2012 года.
  16. Opera: Built-in support for the SPDY protocol (недоступная ссылка). Дата обращения: 6 ноября 2012. Архивировано 9 ноября 2012 года.

Ссылки

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.