Очаква се Firefox да стартира HTTP/3 поддръжка до края на май.

Mozilla обяви намерението си да започне поетапно въвеждане на HTTP/3 и QUIC с пускането на Firefox 88, планирано за 19 април (първоначално се очакваше да бъде пуснат на 20 април, но съдейки по графика, ще бъде отложено с един ден). Първоначално поддръжката на HTTP/3 ще бъде активирана само за малък процент от потребителите и, с изключение на неочаквани проблеми, ще бъде пусната за всички до края на май. В нощните компилации и бета версиите HTTP/3 беше активиран по подразбиране в края на март.

Нека припомним, че внедряването на HTTP/3 във Firefox се основава на проекта neqo, разработен от Mozilla, който предоставя клиентска и сървърна реализация на QUIC протокола. Кодът на компонента за поддръжка на HTTP/3 и QUIC е написан на Rust. За да контролирате дали HTTP/3 е активиран, about:config предоставя опцията “network.http.http3.enabled”. От клиентския софтуер експериментална поддръжка за HTTP/3 също е добавена към Chrome и curl, а за сървърите е налична в 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) е разработен от Google от 2013 г. като алтернатива на комбинацията TCP+TLS за мрежата, като решава проблеми с дълги времена за настройка и преговори за връзки в TCP и елиминира закъснения при загуба на пакети по време на данни трансфер. QUIC е разширение на UDP протокола, което поддържа мултиплексиране на множество връзки и предоставя методи за криптиране, еквивалентни на TLS/SSL. По време на разработването на стандарта IETF бяха направени промени в протокола, което доведе до появата на два паралелни клона, единият за HTTP/3, а вторият поддържан от Google (Chrome поддържа и двете опции).

Основни характеристики на QUIC:

  • Висока сигурност, подобна на TLS (всъщност QUIC предоставя възможност за използване на TLS през UDP);
  • Контрол на целостта на потока за предотвратяване на загуба на пакети;
  • Възможност за незабавно установяване на връзка (0-RTT, в приблизително 75% от случаите данните могат да бъдат предадени веднага след изпращане на пакета за настройка на връзката) и осигуряване на минимални закъснения между изпращане на заявка и получаване на отговор (RTT, Round Trip Time);
  • Използване на различен пореден номер при повторно предаване на пакет, което избягва двусмислието при идентифицирането на получените пакети и премахва изчакванията;
  • Загубата на пакет засяга само доставката на свързания с нея поток и не спира доставката на данни в потоци, предавани паралелно през текущата връзка;
  • Инструменти за коригиране на грешки, които минимизират закъсненията поради повторно предаване на изгубени пакети. Използване на специални кодове за коригиране на грешки на ниво пакет, за да се намалят ситуациите, които изискват повторно предаване на изгубени пакети данни.
  • Границите на криптографските блокове са подравнени с границите на QUIC пакетите, което намалява влиянието на загубата на пакети върху декодирането на съдържанието на следващите пакети;
  • Няма проблеми с блокирането на TCP опашката;
  • Поддръжка на Connection ID за намаляване на времето за повторно свързване за мобилни клиенти;
  • Възможност за свързване на усъвършенствани механизми за контрол на претоварването на връзката;
  • Използване на техники за предсказване на честотната лента във всяка посока, за да се осигури оптимална интензивност на изпращане на пакети, предотвратяване на преминаване в състояние на задръстване, при което има загуба на пакети;
  • Значително увеличение на производителността и пропускателната способност в сравнение с TCP. За видео услуги като YouTube е показано, че QUIC намалява операциите за повторно буфериране при гледане на видеоклипове с 30%.
  • Източник: opennet.ru

Добавяне на нов коментар