Компания Mozilla сообщила о намерении начать поэтапное включение протоколов HTTP/3 и QUIC в выпуске Firefox 88, намеченном на 19 апреля (изначально, релиз ожидался 20 апреля, но, судя по графику, сдвинут на один день). Вначале поддержка HTTP/3 будет активирована лишь для небольшого процента пользователей и, если не возникнет непредвиденных проблем, будет доведена до всех к концу мая. В ночных сборках и бета-версиях HTTP/3 был включён по умолчанию в конце марта.
Напомним, что реализация HTTP/3 в Firefox основана на развиваемом компанией Mozilla проекте neqo, предоставляющем реализацию клиента и сервера для протокола QUIC. Код компонентов для поддержки HTTP/3 и QUIC написан на языке Rust. Для управления включением HTTP/3 в about:config предусмотрена опция «network.http.http3.enabled». Из клиентского ПО экспериментальная поддержка HTTP/3 также добавлена в Chrome и curl, а для serverësh доступна в nginx, а также в форме nginx-модуля и тестового сервера от компании Cloudflare. На стороне сайтов поддержка HTTP/3 уже обеспечена на серверах Google и Facebook.
Протокол HTTP/3 пока находится на стадии черновой спецификации и окончательно не стандартизирован в IETF. Для использования HTTP/3 требуется поддержка на стороне клиента и сервера одной и той же версии чернового стандарта QUIC и HTTP/3, которая указывается в заголовке Alt-Svc (Firefox поддерживает черновики спецификации с 27 по 32).
HTTP/3 определяет использование протокола QUIC в качестве транспорта для HTTP/2. Протокол QUIC (Quick UDP Internet Connections) c 2013 года развивается компанией Google в качестве альтернативы связке TCP+TLS для Web, решающей проблемы с большим временем установки и согласования соединений в TCP и устраняющей задержки при потере пакетов в процессе передачи данных. QUIC представляет собой надстройку над протоколом UDP, поддерживающую мультиплексирование нескольких соединений и обеспечивающую методы шифрования, эквивалентные TLS/SSL. В процессе разработки в IETF стандарта в протокол были внесены изменения, что привело к возникновению двух параллельно существующих веток, одна для HTTP/3, а вторая поддерживаемая Google (Chrome поддерживает оба варианта).
Karakteristikat kryesore të QUIC:
- Siguri e lartë, e ngjashme me TLS (në thelb QUIC ofron mundësinë e përdorimit të TLS mbi UDP);
- Kontrolli mbi integritetin e rrjedhës, që parandalon humbjen e pacakove;
- Mundësia për të vendosur menjëherë një lidhje (0-RTT, në rreth 75% të rasteve të dhënat mund të transmetohen menjëherë pas dërgimit të paketës së vendosjes së lidhjes) dhe për të siguruar vonesa minimale midis dërgimit të kërkesës dhe marrjes së përgjigjes (RTT, Round Trip Time);
- Përdorimi i një numri tjetër sekonda për dërgimin e paketave përsëritëse, gjë që lejon shmangien e dyshimeve në përcaktimin e paketave të pranuara dhe eliminon vonesat;
- Humorja e paketës ndikon vetëm në dërgesën e fluksit lidhur me të dhe nuk ndalon dërgimin e të dhënave në flukset që dërgohen paralelisht nëpërmjet lidhjes aktuale;
- Mjetet për korrigjimin e gabimeve, që minimizojnë vonesat për shkak të dërgimit përsëritës të paketave të humbura. Përdorimi i kodeve speciale për korrigjimin e gabimeve në nivelin e paketës për të reduktuar situatat që kërkojnë dërgim përsëritës të të dhënave të paketës së humbur.
- Kufijtë e bllokave kriptografikë janë përputhur me kufijtë e paketave QUIC, duke zvogëluar ndikimin e humbjeve të paketave në dekodimin e përmbajtjes së paketave të ardhshme;
- Mungesa e problemeve me bllokimin e radhës TCP;
- Mbështetje për identifikuesin e lidhjes, që lejon zvogëlimin e kohës për vendosjen e lidhjes përsëritëse për klientët mobilë;
- Mundësia e lidhjes së mekanizmave të zgjeruar të kontrollit të ngarkesës së lidhjes;
- Përdorimi i teknikave të parashikimit të kapacitetit në çdo drejtim për të siguruar intensitetin optimal të dërgimit të paketave, duke parandaluar rënien në një gjendje ngarkese, ku humbjet e paketave vërehen;
- Rritje e dukshme e performancës dhe kapacitetit krahasuar me TCP. Për shërbimet video si YouTube, aplikimi i QUIC ka treguar një reduktim prej 30% të operacioneve të ri-buffering gjatë shikimit të videove.
Burimi: opennet.ru
