Удалёнка: опыт и лайфхаки
23 мая 2011

Google FalseStart на 30% ускоряет «рукопожатие» SSL

IT-стандарты


В блоге Chromium разработчики из Google рассказали о своих успехах по внедрению SSL FalseStart (RFC). Это клиентская технология для браузера, которая не требует никаких изменений на стороне сервера, но при этом на 30% ускоряет подтверждение связи SSL (задержка измеряется как время между первоначальным пакетом TCP SYN и окончанием процедуры по TLS).

Благодаря FalseStart браузер Chrome начиная с девятой версии устанавливает SSL-соединение на 30% быстрее, чем остальные браузеры. Если изучить спецификации, то кажется, что основное преимущество в быстродействии достигается за счёт того, что при соблюдении прочих условий отправка данных по защищённому соединению начинается ещё до того, как подтверждение связи закончено (см. стр. 3).

После внедрения этой функции разработчики обнаружили, что она почему-то работает не на всех сайтах, хотя полностью соответствует официальным спецификациям SSL и TLS.

Чтобы исследовать проблему, был составлен список всех HTTPS-сайтов из индекса Google и FalseStart проверили на них. Оказалось, что 0,4% не смогли установить защищённую сессию. Более тщательное исследование выявило, что эти сайты работают с балансировщиками нагрузки от ограниченного числа вендоров (например, F5 и A10). Все они получили уведомления от компании Google. Многие уже решили проблему, остальные сделают это в ближайшее время. Таким образом, сейчас исходники Chromium содержат с список доменов, на которых FalseStart не поддерживается. На этих доменах функция просто отключается. Список будет постепенно сокращаться и со временем должен вовсе исчезнуть.

Возможно, с повышением производительности SSL больше сайтов начнут работать в защищённом режиме. Как известно, сейчас самую большую задержку при SSL даёт именно процедура подтверждения связи.
Теги: SSL TLS HTTPS FalseStart балансировка нагрузки
Хабы: IT-стандарты
+19
782 8
Комментарии 8
Реклама

Рекомендуем