Русская Википедия:SPDY

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Шаблон:Карточка протокола

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

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

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

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

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

У 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 год)[8]. Начиная с 51 версии Chromium, поддержка SPDY была удалена в пользу протокола HTTP/2[9].

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

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

Серверы

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

См. также

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

Примечания

Шаблон:Примечания

Ссылки