На этой неделе программисты Google в своём блоге рассказали, что уже половина запросов от браузера Chrome к серверам интернет-гиганта проходит по новому интернет-протоколу QUIC, который компания начала разрабатывать в прошлом году. Протокол работает поверх UDP и содержит возможности шифрования, эквивалентные TLS и SSL.
Разработка протокола была начата в попытках ускорить работу интернет-соединений по сравнению с текущим протоколом TCP. Протокол UDP работает быстрее, поскольку он изначально проще устроен, и не рассчитан на коррекцию ошибок. Обычно его используют программы, которым необходимо работать в реальном времени (например, многопользовательские игры). В таких случаях нет смысла проверять прохождение всех пакетов и пересылать заново потерявшиеся.
Интегрировав в QUIC корректировку ошибок и шифрование, программисты Google добились ускорения работы интернет-приложений. На диаграмме, описывающей протокол, показано, что количество необходимых пакетов для установки соединения через QUIC меньше, чем в традиционных случаях, и соединение происходит быстрее.
В компании утверждают, что 75% интернет-соединений выиграют от использования нового протокола. Хорошо оптимизированные сайты вроде Google Search получают выигрыш в 3% скорости. В случае плохого интернет-соединения, по утверждению Google, QUIC работает лучше, чем TCP. По их исследованием, для самых медленных интернет-соединений время загрузки страницы поиска сокращается на секунду. А пользователи видеосервиса YouTube говорят о меньшем количестве подгрузок, необходимых для просмотра видео.
Комментарии (50)
Vindicar
19.04.2015 12:17+12>0 ms
Через libastral подключаются, не иначе =\
Да и схему бы расшифровать не мешало: чему соответствует цвет стрелок? Стадиям подключения?Rasifiel
19.04.2015 14:20+30 ms на установление соединения (handshake). В данном случае не надо ничего устанавливать и просто начинают слать данные.
fshp
19.04.2015 13:08Лучше бы SCTP внедрили…
stepik777
19.04.2015 13:37А чем он лучше?
vintage
19.04.2015 14:24-3stepik777
19.04.2015 14:49+2Статью в википедии я и сам найти могу, а вот в чём преимущества SCTP по сравнению с QUIC?
У QUIC есть:
1. Шифрование, встроенное в сам протокол, то есть нет лишнего round-trip для обмена ключами, он происходит вместе с установлением соединения.
2. Шифрование на более низком уровне чем в TCP или SCTP. Хорошо это или плохо — другой вопрос.
3. Forward packet error correction, то есть он менее чувствителен к потерям пакетов.
4. Смена IP-адреса без разрыва соединения.
5. Быстрое время соединение.
6. Многопоточность, как и в SCTP.
У SCTP есть возможность работать с нескольких IP адресов одновременно (и, видимо, возможность смены IP адреса), не знаю есть ли такая возможность в QUIC. Какие ещё преимущества SCTP перед QUIC вы бы назвали?cagami
19.04.2015 15:02+24. Смена IP-адреса без разрыва соединения.
QUIC работает поверх UDP, а UDP не устанавливает соединение.
отсюда вопрос без какого разрыва?stepik777
19.04.2015 15:10+4UDP не устанавливает, а QUIC устанавливает. Например IP тоже не устанавливает соединения, тем не менее это не мешает TCP, работающему поверх IP, устанавливать соединения. QUIC тоже мог бы работать напрямую поверх IP, но проблема в том, что многие сетевые устройства пропускают только хорошо известные протоколы, такие как TCP, UDP, ICMP.
cagami
19.04.2015 22:22UDP не устанавливает, а QUIC устанавливает
А это как? ткните меня носом пожалуйста, а то до меня не доходит.
как QUIC поверх UDP устанавливает.fshp
20.04.2015 01:34+2Устанавливает, только это соединение будет на другом уровне OSI, выше, чем UPD.
Вы сами в праве реализовать коннект поверх UDP — достаточно на каждую передачу ожидать ответ с подтверждением и отбраковывать пакеты от левых ip. Если ответа не было в течении определённого времени, считать соединение закрытым и возвращать ошибку или исключение. Вот мы и изобрели TCP (утрирую конечно, всё гораздо сложнее, но вполне реализуемо).
Соединение — это всего лишь очередная абстракция. Оборудование ничего не знает о соединениях.
pravic
19.04.2015 13:41+1Действительно, почему-то SCTP практически не используется и не продвигается никем, хотя преимуществ у него много.
vsarakoff
19.04.2015 23:59SCTP довольно распространён в мобильных сетях, например. А для обычных пользователей вполне хватает и TCP.
den_admin
20.04.2015 07:11Преимущества у него есть, но это не киллер-фичи ради которых стоит «убиться, но внедрить».
На мой взгляд проблемы три:
1) Я не уверен, что SOHO роутеры умеют его корректно NAT-ить;
2) Мало документации (по крайней мере по usrsctp);
3) Отсутствие нативой поддержки в винде (в мак ос?);
vintage
19.04.2015 13:19-33%? Да, это стоит внедрения нового протокола. Теперь страница вместо мучительных 30с загрузится у меня гораздо быстрее — за 29с.
artspb
19.04.2015 13:35+1Помножте на миллиарды обращений, и получите существенный выигрыш для Гугла.
vintage
19.04.2015 14:20Выигрыш в чём?
Anonym
19.04.2015 15:28+63% оборудования, например, можно будет отдать под другие задачи. Поверьте, 3% — это очень хороший результат.
vintage
19.04.2015 16:53+2С чего вы взяли, что QUIC потребляет ресурсов на меньше TCP?
artspb
19.04.2015 20:36+1Как минимум он держит канал на 3% меньше. Значит, за то же время можно обслужить на 3% больше клиентов. Хотя, конечно, возможно они ошиблись в расчетах и зря потратили на разработку несколько лет. Вы им напишите, может быть они Вам премию выплатят ;)
vintage
19.04.2015 21:37Что значит «держит канал»? Не ведитесь на этот дешёвый маркетинг.
Вот, ребята из Яндекса сообщают об ускорении загрузки на целых 0.6% от SPDY вместо заявленных Гуглом 40.
lexore
19.04.2015 20:38Интересно, как этот протокол справляется с потерей пакетов, большими задержками, перегруженностью каналов, фрагментацией и т.д.
artspb
19.04.2015 20:42Мне тоже интересно. Тем не менее, судя по этой статье, соответствующие механизмы там есть.
Nagg
19.04.2015 13:57+1Я что-то не очень понял последнюю картинку — послали пакет на соединение по UDP и всё — будь что будет? (и как это эквивалентно TLS — где обмен ключами?)
ZoomLS
А ещё по сети полно разговоров, что этот протокол позволяет проще отслеживать пользователей. Правда ли это?
Biga
Если вы используете браузер, разработанный гуглом, то гугл одинаково легко будет следить за вами по любому протоколу. От протокола здесь вообще мало что зависит.
namespace
А я вот вообще не понимаю всех этих вопросов касательно слежки за пользователями. Если я правильно понимаю, то гугл все равно обрабатывает ваши данные на уровне алгоритмов машинного обучения и никто в действительности ваши личные данные не читает, чего бояться?
vanxant
Это пока гуглу не придет письмо счастья из органов.
namespace
А вы, конечно же, занимаетесь противозаконной деятельностью или держить на гмыле бизнесовую информацию. У каждого сервиса есть своя область применения. Никто не додумается держать top secret ololo информацию на companyname@gmail.com и не станет, тем более, вести переписки об организации террористической операции.
vanxant
Ну корпоративная почта на гмыле, да. И думаю, не у меня одного.
ИЧСХ очень часто у органов власти почта тоже на бесплатных сервисах (там, правда, больше аудитория мейл.ру).
namespace
Слушайте, в таком случае, это ваша проблема или гугловская недоработка? Я все еще не могу понять, чем грозит гуглослежка обывателю? Понимаю, чем она грозит Биллу Гейтсу или Илону Маску, понимаю, чем она грозит террористам, но искренне не понимаю, почему мне сейчас нужно срочно взять себя за жопу и отказаться от хрома, так как он собирает информацию о сайтах, которые я посещаю.
vanxant
Ну, то что вы там посещаете, действительно само по себе ещё мало что значит. А вот в гмейле и логах андроида уже намного больше жаренного можно накопать. Даже если ими пользуетесь не вы, а ваши собеседники. Это как с соцсетями — вы можете в них никогда в жизни не заходить, но любой поиск по ним даст кучу ваших фоточек, которые заботливо подписали ваши собутыльнички.
namespace
Вот тут, пожалуйста, по-подробнее. Что, например?
vanxant
юридические и финансовые детали (а вы точно все законы 100% соблюдаете и все налоги платите?)
медицинская информация
«порочащие» связи
дофига всего, за что вас органы могут при желании вас закрыть до выяснения.
По слухам, недавно один депутат пытался отжать топовый блог например
Mithgol
Срок давности по этим нарушениям ужe прошёл, однако по недавнему Акту о профилактике пиратства Вы были заочно приговорены Басманным межмуниципальным судом к профилактическому трёхдневному запрету употребления любых электронных устройств. Приговор обжалованию не подлежит и вступил в действие десять секунд тому назад, что подразумевает автоматическое дистанционное отключение таковых устройств. В силу трагической случайности Вы теперь находитесь в таких обстоятельствах, что не сможете даже открыть электронную дверь туалетной комнаты и окажетесь через семьдесят секунд утоплены в потоке фекальных масс под давлением семь атмосфер из деактивируемой в настоящее время канализационной системы, находящейся в собственности Вашего домохозяйства.
Официально и под видеозапись заверяю Вас, что выбор момента исполнения наказания отнюдь не был продиктован нашей с Вами личной краткой историей неприязненных отношений позавчера вечером. Приношу Вам самые искренние извинения от имени службы исполнения наказаний Юкинагатинского электронного микрорайона Нагатинского района Большой Москвы».
(Несколько изменённая версия вон того моего прошлогоднего антиутопического комментария.)
namespace
По сети всегда будет полно разговоров, что %thing_name& позволяет отслеживать пользователей или делать что-либо грязнопечальнозлоплохое, это же интернет. Сорец QUIC лежит в дереве хромиума, все открыто и прозрачно. Если хочешь убедиться, что большой брат или не дай Бог, сестра, за тобой следят, можешь почитать.