Die Unterstützung für HTTP/3 in Firefox wird für Ende Mai erwartet

Das Unternehmen Mozilla hat angekündigt, schrittweise die Protokolle HTTP/3 und QUIC in der Version 88 von Firefox einzuführen, die am 19. April planmäßig erscheinen sollte (ursprünglich war der Release für den 20. April vorgesehen, wurde aber aufgrund des Zeitplans um einen Tag verschoben). Zunächst wird die Unterstützung für HTTP/3 nur für einen kleinen Prozentsatz der Nutzer aktiviert, und sofern keine unvorhergesehenen Probleme auftreten, wird sie bis Ende Mai für alle bereitgestellt. In den Nachtsbuilds und Beta-Versionen wurde HTTP/3 standardmäßig Ende März aktiviert.

Wir erinnern daran, dass die Implementierung von HTTP/3 in Firefox auf dem von Mozilla entwickelten Projekt neqo basiert, das eine Client-Implementierung und Server für das QUIC-Protokoll bereitstellt. Der Code für die Unterstützung von HTTP/3 und QUIC wurde in der Programmiersprache Rust geschrieben. Zur Steuerung der Aktivierung von HTTP/3 gibt es in about:config die Option „network.http.http3.enabled“. Auch in den Client-Anwendungen wurde experimentelle Unterstützung für HTTP/3 in Chrome und curl hinzugefügt, und für Server ist es in nginx verfügbar, sowohl in Form eines Nginx-Moduls als auch eines Testservers von Cloudflare. Auf der Website-Seite ist die Unterstützung für HTTP/3 bereits auf den Servern von Google und Facebook gegeben.

Das HTTP/3-Protokoll befindet sich derzeit noch in der Entwurfsspezifikation und ist noch nicht endgültig im IETF standardisiert. Für die Nutzung von HTTP/3 ist eine Unterstützung sowohl auf der Client- als auch auf der Serverseite mit der gleichen Version des Entwurfstandards QUIC und HTTP/3 erforderlich, die im Alt-Svc-Header angegeben wird (Firefox unterstützt die Entwurfsstandards von 27 bis 32).

HTTP/3 definiert die Verwendung des QUIC-Protokolls als Transport für HTTP/2. Das QUIC-Protokoll (Quick UDP Internet Connections) wird seit 2013 von Google als Alternative zu TCP+TLS für das Web entwickelt und zielt darauf ab, Probleme mit langer Verbindungsaufbau- und Aushandlungszeit in TCP zu lösen und Verzögerungen durch Paketverluste während der Datenübertragung zu beseitigen. QUIC ist ein Overlay über das UDP-Protokoll, das Multiplexing mehrerer Verbindungen unterstützt und Verschlüsselungsmethoden bietet, die TLS/SSL entsprechen. Während der Entwicklung des Standards im IETF wurden Änderungen am Protokoll vorgenommen, was zur Entstehung von zwei parallel existierenden Zweigen führte, einem für HTTP/3 und dem anderen, der von Google unterstützt wird (Chrome unterstützt beide Varianten).

Die Hauptmerkmale von QUIC:

  • Hohe Sicherheit, vergleichbar mit TLS (im Grunde ermöglicht QUIC die Verwendung von TLS über UDP);
  • Kontrolle der Integrität des Datenstroms, um Paketverluste zu verhindern;
  • Die Möglichkeit, sofort eine Verbindung herzustellen (0-RTT, in etwa 75 % der Fälle können Daten sofort nach dem Senden des Verbindungsaufbaupakets übertragen werden) und minimalen Verzögerungen zwischen dem Senden der Anfrage und dem Empfang der Antwort (RTT, Round Trip Time) zu gewährleisten;
  • Verwendung einer anderen Sequenznummer für die erneute Übertragung eines Pakets, wodurch Mehrdeutigkeiten beim Bestimmen empfangener Pakete vermieden werden und Zeitüberschreitungen eliminiert werden;
  • Paketverluste beeinflussen nur den damit verbundenen Datenstrom und stoppen nicht die Datenübertragung in parallel über die aktuelle Verbindung gesendeten Datenströmen;
  • Fehlerkorrekturmaßnahmen, die Verzögerungen aufgrund der erneuten Übertragung verlorener Pakete minimieren. Verwendung spezieller Fehlerkorrekturcodes auf Paketeebene, um Situationen zu reduzieren, die eine erneute Übertragung der Daten des verlorenen Pakets erfordern.
  • Die Grenzen der kryptografischen Blöcke sind an die Grenzen der QUIC-Pakete angepasst, was die Auswirkungen von Paketverlusten auf die Dekodierung der Inhalte nachfolgender Pakete verringert;
  • Keine Probleme mit der Blockierung von TCP-Warteschlangen;
  • Unterstützung einer Verbindungs-ID, die die Zeit für die Wiederherstellung einer Verbindung für mobile Clients reduziert;
  • Die Möglichkeit, erweiterte Mechanismen zur Überlaststeuerung der Verbindung zu integrieren;
  • Einsatz von Bandbreitenvorhersagetechniken in jede Richtung, um die optimale Intensität der Paketsendung sicherzustellen und ein Abrutschen in einen Überlastzustand, der Paketverluste zur Folge hat, zu verhindern;
  • Deutlicher Leistungs- und Bandbreitenschub im Vergleich zu TCP. Für Video-Streaming-Dienste wie YouTube hat der Einsatz von QUIC eine Reduzierung der Puffervorgänge beim Video-Streaming um 30 % gezeigt.
  • Quelle: opennet.ru

60GB SSD 8Gb DDR4