HTTP/3
HTTP/3 to trzecia główna wersja protokołu obsługującego sieć. Tam, gdzie HTTP/2 był ewolucją — ten sam HTTP, szybsze dostarczanie — HTTP/3 to przeprojektowanie transportu, działające przez QUIC zamiast TCP+TLS. Od 2022 r. jest to opcja domyślna dla głównych witryn i po cichu obsługuje większość ruchu, który użytkownicy postrzegają obecnie jako „szybki”.
Poniżej znajduje się pełna treść artykułu w języku angielskim.
HTTP/3 to protokół HTTP przez QUIC — protokół sieciowy nowej generacji, który zastępuje stos TCP+TLS+HTTP/2 pojedynczą zintegrowaną konstrukcją opartą na UDP. Został ustandaryzowany w dokumencie RFC 9114 w 2022 r. i jest obecnie domyślnym protokołem dla większości głównych witryn, w tym Google, Cloudflare, Meta i Microsoft.
Historia wersji HTTP
A skrócona instrukcja:
- HTTP/0.9 (1991): żądania jednowierszowe, nie nagłówki, brak metadanych. Tylko informacje historyczne.
- HTTP/1.0 (1996): nagłówki, wiele metod, typy MIME. Każde żądanie nowego połączenia TCP.
- HTTP/1.1 (1997, wersja poprawiona 2014): połączenia trwałe, potokowanie, nagłówki hosta. Koń pociągowy sieci od dwóch dekad.
- HTTP/2 (2015): protokół binarny, kompresja nagłówków (HPACK), multipleksowanie strumieni, push serwera. Działa przez TLS przez TCP.
- HTTP/3 (2022): działa przez QUIC przez UDP. Eliminuje blokowanie nagłówka linii TCP, szybsze uzgadnianie, obsługuje migrację połączeń.
Naprawiono protokół HTTP/3
Trzy konkretne problemy związane z protokołem HTTP/2 spowodowały przeprojektowanie:
- blokowanie nagłówka linii w warstwie transportowej. multipleksowanie HTTP/2 wiele strumieni przez jedno połączenie TCP. W przypadku utraty pakietu protokół TCP wstrzymuje całe połączenie do czasu ponownej transmisji utraconego pakietu — nawet jeśli tylko jeden strumień potrzebował tego pakietu. Eliminuje to niezawodność QUIC na strumień.
- Konfiguracja wielu połączeń w obie strony. Uzgadnianie TCP + uzgadnianie TLS = 3 cykle w obie strony, zanim protokół HTTP będzie mógł płynąć. QUIC łączy je w 1 podróż w obie strony (0 w niektórych przypadkach 0-RTT). W przypadku połączenia z opóźnieniem 100 ms oznacza to poprawę wczytywania strony o 200–300 ms.
- Zanik połączenia w przypadku zmiany sieci. Przełączenie z Wi-Fi na komórkową powoduje zawieszenie każdego połączenia TCP. Migracja połączenia QUIC przetrwa zmianę, identyfikując połączenie za pomocą identyfikatora połączenia, a nie 5 krotek.
Co pozostaje takie samo jak HTTP/2
Z perspektywy aplikacji HTTP/3 wygląda bardzo podobnie do HTTP/2:
- Binary framing
- Multipleksowe strumienie (teraz bez blokowania TCP HOL)
- Kompresja nagłówka (teraz QPACK zamiast HPACK, przeprojektowana do pracy z modelem strumienia QUIC)
- Ta sama semantyka HTTP — metody, kody stanu, nagłówki
Kod aplikacji który działał na HTTP/2, działa na HTTP/3 bez żadnych zmian; różnice dotyczą wyłącznie transportu.
Sposób, w jaki przeglądarka korzysta z protokołu HTTP/3
Serwery sygnalizują dostępność HTTP/3 za pośrednictwem nagłówka odpowiedzi alt-svc w odpowiedziach HTTP/2. Przeglądarka zapamiętuje „to Origin obsługuje również h3 na UDP/443” i używa HTTP/3 do kolejnych połączeń. Jeśli QUIC zawiedzie (zapora sieciowa blokuje UDP itp.), przeglądarka powróci do protokołu HTTP/2 przez TCP.
Kilka przeglądarek używa także rekordów HTTPS DNS, aby sprawdzić dostępność protokołu HTTP/3 jeszcze przed połączeniem — oszczędzając początkowe połączenie HTTP/2 w obie strony przy pierwszym kontakcie.
Wydajność w praktyka
Zwycięstwa są największe tam, gdzie protokół TCP ucierpiał najbardziej:
- Sieci komórkowe z dużą utratą pakietów i częstymi zmianami sieci
- Połączenia o dużych opóźnieniach, gdzie liczy się zapisany uzgadnianie w obie strony proporcjonalnie
- Strony z wieloma zasobami, w których multipleksowanie przynosi korzyści złożone
W przypadku czystych połączeń przewodowych z krawędzią CDN protokoły HTTP/3 i HTTP/2 działają podobnie. Różnica zwiększa się wraz z pogarszaniem się warunków — dokładnie wtedy, gdy użytkownicy zauważą powolność.
Adoption
A z końca 2025 r.:
- Chrome, Firefox, Safari i Edge domyślnie korzystają z protokołu HTTP/3, jeśli serwer go oferuje.
- Cloudflare, Google, Fastly, Akamai, AWS CloudFront, Microsoft, Meta obsługują protokół HTTP/3.
- Około 30–40% wszystkich żądań internetowych według wolumenu korzysta z protokołu HTTP/3.
- Wiele sieci korporacyjnych blokuje QUIC na zaporze ogniowej, wymuszając przejście na HTTP/2. Jest to największa blokada szerszego zastosowania.
Co HTTP/3 nie zmienia
Semantyka HTTP/HTTP pozostaje niezmieniona. Działają te same bufory, negocjacja treści, żądania warunkowe i wzorce uwierzytelniania. Twórcy stron internetowych tworzący aplikacje rzadko muszą zastanawiać się, która wersja HTTP jest używana; platforma sobie z tym radzi. Korzyści przysługują automatycznie każdemu, którego serwer początkowy i CDN obsługują protokół HTTP/3.
Często zadawane pytania
- Czy moja witryna wymaga osobnej implementacji protokołu HTTP/3?
- Jeśli siedzisz za CDN obsługującym HTTP/3 (Cloudflare, Fastly, Akamai, CloudFront), to już tam jest. Jeśli bezpośrednio uruchamiasz serwer Origin, potrzebujesz serwera z obsługą HTTP/3 (nginx 1.25+, Caddy, LiteSpeed, h2o). Większość użytkowników korzysta z protokołu HTTP/3, wdrażając go za siecią CDN.
- Jak mogę sprawdzić, czy witryna korzysta z protokołu HTTP/3?
- Karta Sieć przeglądarki DevTools pokazuje protokół na żądanie — „h3” lub „http/3” oznacza HTTP/3. Narzędzia internetowe, takie jak http3check.net, testują również dowolne witryny. Pasek adresu przeglądarki tego nie wyświetla; to kwestia narzędzi programistycznych.
- Czy HTTP/3 jest zawsze szybszy?
- Tak, w przypadku połączeń stratnych lub o dużym opóźnieniu. W czystej sieci LAN o niskim opóźnieniu różnica często polega na szumie. W sieciach blokujących UDP protokół HTTP/3 zawodzi całkowicie i powraca do protokołu HTTP/2 z dodatkowym opóźnieniem konfiguracji, które jest wolniejsze niż całkowite pominięcie QUIC.
- Co oznacza HTTP/3 dla VPN?
- Nowoczesne sieci VPN (WireGuard, OpenVPN) dobrze tunelują UDP i HTTP/3. Niektóre starsze lub restrykcyjne konfiguracje VPN tunelują tylko protokół TCP, w takim przypadku protokół HTTP/3 po cichu powraca do protokołu HTTP/2. Sprawdź obsługę UDP swojej sieci VPN, jeśli zauważysz niezwykłe spowolnienie w witrynach HTTP/3.
- Czy HTTP/4 będzie istniał?
- Prawdopodobnie w końcu, ale nieprędko. HTTP/3 zostanie dostarczony dopiero w 2022 r., a jego popularność wciąż rośnie. Przyszła wersja HTTP prawdopodobnie będzie dalej opierać się na QUIC, zamiast go zastępować; Sam QUIC jest bardziej interesującym punktem ewolucji.