SPDY
SPDY | |
---|---|
Название | SPDY |
Уровень (по модели OSI) | Прикладной |
Семейство | TCP/IP |
Создан в | 2012 |
Основные реализации (клиенты) | Веб-браузеры: Mozilla Firefox[1], Internet Explorer 11[2], Amazon Silk. |
Основные реализации (серверы) | Apache[3], Nginx[4]. |
Разработчик |
SPDY (читается как «speedy», «спиди») — протокол прикладного уровня для передачи веб-контента. Протокол разработан корпорацией Google. По замыслу разработчиков, данный протокол позиционируется как замена некоторых частей протокола HTTP — таких, как управление соединениями и форматы передачи данных.
Основной задачей 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].
См. также
[править | править код]Примечания
[править | править код]- ↑ 1 2 Bug 528288 - (SPDY) Implement SPDY protocol (англ.). Дата обращения: 11 марта 2012. Архивировано 6 ноября 2012 года.
- ↑ 1 2 WebGL, SPDY/3, New Dev Tools, & More Confirmed For IE11 In Win 8.1 (англ.). Архивировано из оригинала 1 июля 2013 года.
- ↑ Модуль apache mod_spdy . Дата обращения: 25 апреля 2014. Архивировано 26 марта 2017 года.
- ↑ 1 2 Модуль nginx ngx_http_spdy_module . Дата обращения: 25 апреля 2014. Архивировано 25 апреля 2014 года.
- ↑ A 2x Faster Web . Official Google Chromium Blog (11 ноября 2009). Дата обращения: 13 ноября 2009. Архивировано из оригинала 10 апреля 2012 года.
- ↑ SPDY: An experimental protocol for a faster web . Chromium Developer Documentation. Дата обращения: 13 ноября 2009. Архивировано из оригинала 10 апреля 2012 года. (англ.)
- ↑ Iljitsch van Beijnum. SPDY: Google wants to speed up the web by ditching HTTP . Ars Technica (12 ноября 2009). Дата обращения: 13 ноября 2009. Архивировано из оригинала 10 апреля 2012 года. (англ.)
- ↑ HTTP/2 is here! Goodbye SPDY? Not quite yet . Дата обращения: 10 августа 2016. Архивировано 8 декабря 2015 года.
- ↑ Архивированная копия . Дата обращения: 29 сентября 2017. Архивировано 9 ноября 2016 года.
- ↑ Архивированная копия . Дата обращения: 29 сентября 2017. Архивировано 3 октября 2017 года.
- ↑ Chromium Blog: Hello HTTP/2, Goodbye SPDY
- ↑ "Google sees 15% speed boost with HTTP tweak. All Google SSL connections now SPDY" (англ.). The Register. 2011-06-16. Архивировано 28 августа 2016. Дата обращения: 10 августа 2016.
SPDY quietly made its debut with Chrome 6
- ↑ Transitioning from SPDY to HTTP/2 (англ.). Дата обращения: 10 августа 2016. Архивировано 7 августа 2016 года.
- ↑ Firefox Aurora 13 is out – SPDY on by default and a list of other improvements (англ.). Архивировано из оригинала 16 июня 2012 года.
- ↑ Opera 12.50-1577 now support SPDY protocol (англ.). Архивировано 24 октября 2012 года.
- ↑ Opera: Built-in support for the SPDY protocol . Дата обращения: 6 ноября 2012. Архивировано из оригинала 9 ноября 2012 года.
Ссылки
[править | править код]- Документация по SPDY // Chromium (англ.)
- SPDY: Google wants to speed up the web by ditching HTTP // Arstechnica, 2009-11
- Google анонсировал ускоритель Интернета // Lenta.ru 2009-11-13