LW IT Solutions logo LW IT Solutions logo LW IT Solutions
« Blog-Übersicht /Web Entwicklung/Tutorials / HTTP/3 beim ersten Besuch: Wie ein Client...
Diesen Artikel in anderen Sprachen lesen:

HTTP/3 beim ersten Besuch: Wie ein Client das Protokoll entdeckt und was zwanzig Seiten geantwortet haben

HTTP/3 beim ersten Besuch: Wie ein Client das Protokoll entdeckt und was zwanzig Seiten geantwortet haben

Management Summary

HTTP/3 ist ein neueres Verfahren für die Übertragung von Websiteinhalten zwischen Browser und Server. Für die Nutzung beim ersten Besuch braucht das aufrufende Programm passende Verbindungsinformationen. Der Artikel erklärt diese Entdeckung anhand von Beobachtungen an zwanzig Websites. Angekündigte Unterstützung, Erreichbarkeit und tatsächliche Nutzung sind verschiedene Schritte. Gelungene direkte Erstabrufe bei drei untersuchten Seiten zeigen die Möglichkeit, beweisen aber weder die Wahl durch jeden Browser noch schnelleres Laden.

Inhalt
  1. Anderer Transport, weiterhin ein TLS-Handshake
  2. Drei Wege zu HTTP/3
  3. Was zwanzig protokollierte Abrufe zeigten
  4. Ein direkter Erstabruf kann HTTP/3 verwenden
  5. Einen HTTPS-DNS-Eintrag lesen
  6. Fragen und Antworten
  7. Quellen

HTTP/3 kann bereits die erste Anfrage an eine Website übertragen. Ob das geschieht, hängt vom Client, verfügbaren Informationen zum Endpunkt und dem Netzwerkweg ab. Eine HTTP/3-Ankündigung, ein erreichbarer QUIC-Endpunkt und eine tatsächlich über HTTP/3 übertragene Anfrage sind drei verschiedene Beobachtungen.

Anderer Transport, weiterhin ein TLS-Handshake

HTTP/3 verwendet QUIC über UDP. HTTPS mit HTTP/1.1 oder HTTP/2 nutzt gewöhnlich TLS über TCP. Auch QUIC enthält einen TLS-Handshake: HTTP/3 wird normalerweise mit der ALPN-Kennung h3 gewählt. Eine bestehende TCP-Verbindung lässt sich dadurch nicht in HTTP/3 umwandeln.

QUIC überträgt getrennte HTTP-Vorgänge in unabhängigen Datenströmen. Fehlt ein Paket in einem Strom, müssen andere unabhängige Ströme deshalb nicht automatisch wie bei TCP warten. Verlust bleibt trotzdem relevant: Ein Paket kann Daten mehrerer Ströme enthalten, die Überlastregelung wirkt auf die Verbindung, und Abhängigkeiten der Anwendung können Arbeit weiter verzögern. HTTP/3 garantiert keinen pauschalen Geschwindigkeitsvorteil.

Ankündigung, erreichbarer Endpunkt und gewähltes Protokoll beantworten verschiedene Fragen.
Ankündigung, erreichbarer Endpunkt und gewähltes Protokoll beantworten verschiedene Fragen.

Drei Wege zu HTTP/3

  • Ankündigung eines alternativen Dienstes: Eine HTTP-Antwort kann Alt-Svc: h3=":443"; ma=3600 enthalten. Das kündigt einen gleichwertigen Endpunkt am UDP-Port 443 desselben Hosts mit einer Frischefrist von einer Stunde an. Ein unterstützender Client kann spätere Anfragen darüber senden, auch Ressourcen desselben Seitenaufrufs. Ein automatischer Wechsel jeder Folgeanfrage ist nicht garantiert.
  • DNS-Informationen: Ein HTTPS-Eintrag kann Protokoll und Endpunkt bereits vor der ersten HTTP-Anfrage beschreiben. Das Verhalten von Client und Resolver entscheidet darüber, ob diese Informationen abgefragt und genutzt werden.
  • Expliziter Versuch oder anderweitig bekannter Endpunkt: RFC 9114 erlaubt einen direkten QUIC-Verbindungsversuch. Ein entsprechend konfiguriertes Werkzeug benötigt keine vorherige HTTP/2-Antwort.

Ein Rückfall ist möglich. Beispielsweise kann curl mit --http3 nach kurzer Verzögerung eine TCP-Alternative parallel versuchen; --http3-only schließt diesen Rückfall bewusst aus. Browserstrategien unterscheiden sich. Ein gescheiterter UDP-Versuch kann Zeit kosten, erzwingt aber nicht unbedingt das Abwarten eines vollständigen UDP-Timeouts.

Was zwanzig protokollierte Abrufe zeigten

Diese Stichprobe entstand am 24. Oktober 2026 zwischen 04:45:33 und 04:45:37 UTC aus einem Netz mit curl 8.14.1 samt HTTP/3-Unterstützung. Für jede Domain startete ein eigener curl-Prozess. Bis zu fünf HTTPS-Weiterleitungen wurden verfolgt; weder --http3 noch ein gespeicherter Alt-Svc-Cache waren gesetzt. Das Zeitlimit betrug 25 Sekunden, die Transfergrößengrenze 10 MB. Es waren Kommandozeilenabrufe, keine Browser-Seitenaufrufe.

Die Tabelle nennt jeweils die letzte Antwort der Weiterleitungskette, nicht jede dazwischenliegende Verbindung. Achtzehn letzte Antworten nutzten HTTP/2, zwei HTTP/1.1. Vier letzte Antworten kündigten die standardisierte Kennung h3 an. Das zählt Ankündigungen und ist kein vollständiger HTTP/3-Fähigkeitstest.

Domain Status HTTP-Version h3 angekündigt Inhalt
wikipedia.org 200 2 nein reguläres HTML
github.com 200 2 nein reguläres HTML
bbc.com 200 2 ja reguläres HTML
nytimes.com 403 2 nein Zugriffssperre
cloudflare.com 200 2 ja reguläres HTML
mozilla.org 200 2 nein reguläres HTML
apple.com 200 2 nein reguläres HTML
microsoft.com 200 2 nein Zugriffssperre
spiegel.de 200 2 ja reguläres HTML
heise.de 200 2 nein reguläres HTML
python.org 200 2 nein reguläres HTML
debian.org 200 2 nein reguläres HTML
kernel.org 200 2 nein reguläres HTML
gnu.org 200 1.1 nein reguläres HTML
w3.org 200 2 ja reguläres HTML
nginx.org 200 1.1 nein reguläres HTML
postgresql.org 200 2 nein reguläres HTML
zeit.de 403 2 nein Zugriffssperre
tagesschau.de 200 2 nein reguläres HTML
php.net 200 2 nein reguläres HTML

Siebzehn Antworten enthielten reguläres Seiten-HTML. New York Times und ZEIT lieferten Zugriffssperren mit Status 403; Microsoft lieferte eine Sperrseite mit Status 200. Diese drei Zeilen zeigen weiterhin den verwendeten Antworttransport, beschreiben aber nicht die angefragte Startseite. Ein fehlender Alt-Svc-Header in einer Antwort beweist keine fehlende HTTP/3-Unterstützung.

Ein direkter Erstabruf kann HTTP/3 verwenden

Eine gesonderte Prüfung am 25. Oktober 2026 um 14:47:15 UTC startete für cloudflare.com, bbc.com und w3.org jeweils einen frischen Prozess mit --http3-only. Ein Alt-Svc-Cache wurde nicht übergeben; Weiterleitungen wurden nicht verfolgt. Alle drei Abrufe endeten mit curl-Exitcode 0, HTTP-Version 3 und Status 301 auf den jeweiligen www-Host.

Das belegt eine erfolgreiche HTTP/3-Antwort ohne vorherige HTTP/2-Anfrage in diesen Testprozessen. Browser-Erkennung, ausgeliefertes Startseiten-HTML oder ein Geschwindigkeitsvorteil folgen daraus nicht. Das Protokoll wurde ausdrücklich vorgegeben.

Abstrakte parallele Wege mit einem Verbindungselement

Einen HTTPS-DNS-Eintrag lesen

example.com. 3600 IN HTTPS 1 . alpn=h3,h2

Dieses Anschauungsbeispiel verwendet wegen der Priorität ungleich null den ServiceMode. Der Punkt bedeutet: Das Ziel ist der Name am Anfang des Eintrags, hier example.com; alpn kündigt HTTP/3 und HTTP/2 an. Die TTL erlaubt, diesen DNS-Eintrag 3600 Sekunden zwischenzuspeichern. Erforderlich sind ein tatsächlich eingerichteter Endpunkt und passende Adresseinträge; das Veröffentlichen dieses Texts aktiviert keinen Server. Auch die Protokollwahl jedes Clients wird dadurch nicht erzwungen.

Weitere Einzelheiten beschreibt Der HTTPS-Eintrag im DNS: HTTP/3 finden, ohne den Umweg.

Fragen und Antworten

Welcher Port muss erreichbar sein?

Der angekündigte UDP-Endpunkt muss erreichbar sein, häufig Port 443, aber nicht zwingend. TCP-Port 443 allein stellt kein QUIC bereit. Ein fehlgeschlagener externer Versuch betrifft diesen Client und Netzwerkweg; daraus folgt keine globale Nichterreichbarkeit.

Wie lange kann eine falsche Alt-Svc-Ankündigung bestehen bleiben?

Ohne ma definiert RFC 7838 eine Frischefrist von 24 Stunden ab Erzeugung der Nachricht; das Antwortalter zählt mit. Eine kürzere Frist kann das Einführungsrisiko begrenzen. Das Entfernen des Headers löscht bestehende Clientcaches nicht sofort. Ein empfangenes Alt-Svc: clear fordert das Verwerfen der gespeicherten Ankündigungen an, erreicht aber keinen gerade offline befindlichen Client.

Was ändert sich mit einem CDN?

Das gemessene Protokoll beschreibt die Verbindung zwischen Client und CDN. Zwischen CDN und Ursprungsserver kann eine andere Version laufen. Eine erfolgreiche Verbindung zum CDN belegt deshalb allein kein Ursprungsprotokoll.

Was gehört in ein brauchbares Messprotokoll?

Clientversion und Optionen, Cachezustand, genaue URL, Weiterleitungskette, Zeitpunkt, Netzwerkweg, ausgehandeltes Protokoll, Exitstatus und Antwortinhalt. Ankündigung, Erreichbarkeit und beobachtete Auswahl benötigen getrennte Ergebnisse. Für Geschwindigkeitsvergleiche sind wiederholte Versuche erforderlich.

Lukas Wojcik

Lukas Wojcik

Systems architect and technology enthusiast specializing in scalable tracking solutions, GMP Stack (GA4 & GTM), and robust backend architectures. Advocate for clean code and privacy-first design.

Kontakt

Eine Frage oder eine Idee für ein Webprojekt? Schreib mir kurz, worum es geht. Das Formular nutzt reCAPTCHA zum Schutz vor Spam.

Kommentar schreiben

Randfälle, die der Artikel nicht behandelt, und Rückfragen zum Code sind hier willkommen.

Die E-Mail-Adresse wird nicht veröffentlicht. Pflichtfelder sind mit einem Stern versehen.