HTTP/3 (QUIC) proxy'ler
HTTP/3 ve QUIC nedir
HTTP/3, HTTP protokolünün 2022'de standartlaştırılan (RFC 9114) üçüncü ana sürümüdür. HTTP/2'den temel farkı, TCP yerine QUIC taşıma protokolünü kullanmasıdır.
QUIC (Quick UDP Internet Connections), Google tarafından geliştirilen ve UDP üzerinde çalışan bir taşıma protokolüdür. TCP ile TLS işlevlerini tek bir katmanda birleştirir; bu da bağlantı kurulumunu hızlandırır ve head-of-line blocking sorununu ortadan kaldırır.
HTTP/3'ün proxy'ler için avantajları
1. Head-of-line blocking'in ortadan kalkması
HTTP/2'de tek bir TCP paketinin kaybı, bağlantı içindeki tüm stream'leri bloke eder. HTTP/3'te her stream bağımsızdır — bir stream'deki paket kaybı diğerlerini etkilemez.
Proxy'ler açısından bu şu anlama gelir: bir istekte paket kaybı yaşansa bile aynı proxy üzerinden giden diğer istekler gecikme olmadan çalışmaya devam eder.
2. Daha hızlı bağlantı kurulumu (0-RTT)
HTTP/3, bilinen bir sunucuya yeniden bağlanırken bağlantıyı 0 round-trip ile kurabilir. Aynı sunuculara defalarca erişen proxy'ler için bu, gecikmeyi belirgin biçimde azaltır.
Karşılaştırma:
- TCP + TLS 1.3: yeni bağlantı için 2-3 RTT
- QUIC: yeni bağlantı için 1 RTT, sürdürülen bağlantı için 0 RTT
3. Bağlantı geçişi (connection migration)
QUIC, bağlantıyı IP:port'a bağlamak yerine Connection ID kullanır. IP adresi veya ağ arayüzü değişse bile bağlantı korunur.
Mobil proxy'ler için bu devrim niteliğindedir: Wi-Fi ile 4G arasında geçiş yapılırken bağlantı kopmaz.
4. Yerleşik şifreleme
QUIC yalnızca veriyi değil, protokol meta verilerinin büyük bölümünü de şifreler. Bu, DPI (Deep Packet Inspection) ve aracıların trafik analizini zorlaştırır.
HTTP/3 proxy'ler üzerinden nasıl çalışır
Doğrudan QUIC proxy'leme
Proxy, QUIC trafiğini (UDP) doğrudan iletir. Bu, klasik HTTP proxy'lerinin çoğunda bulunmayan UDP proxy'leme desteği gerektirir.
CONNECT-UDP (RFC 9298)
UDP'yi HTTP proxy'leri üzerinden tünellemek için yeni bir yöntem. QUIC bağlantılarının, yerel QUIC desteği olmayan HTTP proxy'lerinden geçmesine olanak tanır.
HTTP/3 frontend, HTTP/2 backend
Proxy, istemcilerden HTTP/3 kabul eder ama sunuculara HTTP/2 veya HTTP/1.1 ile bağlanır. Bugün en yaygın senaryo budur.
Tam HTTP/3
Proxy her iki yönde de HTTP/3 destekler. Henüz nadir ama hızla gelişiyor.
Proxy'lerde güncel HTTP/3 desteği
| Proxy | HTTP/3 frontend | HTTP/3 backend | Durum |
|---|---|---|---|
| Caddy | Var | Deneysel | Olgun destek |
| Nginx | Var (1.25+) | Yok | Yalnızca frontend |
| HAProxy | Geliştiriliyor | Geliştiriliyor | Planlanıyor |
| Envoy | Var | Var | Aktif geliştirme |
| Traefik | Var (3.0+) | Deneysel | Temel destek |
| Cloudflare | Var | Var | Tam destek |
HTTP/3 ve engellemeleri aşma
Aşma açısından avantajlar
- UDP trafiği — birçok DPI sistemi TCP'ye göre tasarlanmıştır; UDP filtreleme daha az gelişmiştir.
- Meta veri şifrelemesi — trafiğin içeriğini belirlemeyi zorlaştırır.
- QUIC gibi görünme — birçok meşru servis (Google, YouTube) QUIC kullanır.
- Bağlantı geçişi — IP değiştiğinde bağlantı korunur.
Sınırlamalar
- UDP engellemesi — bazı ağlar DNS dışındaki tüm UDP trafiğini engeller.
- QUIC fingerprinting — istemci, QUIC parametrelerinden tanımlanabilir.
- SNI — ilk QUIC handshake'inde SNI açık metin olarak iletilir (ECH bunu çözer).
QUIC fingerprinting
HTTP/2 fingerprinting'e benzer şekilde, anti-bot sistemleri QUIC parametrelerini analiz etmeye başlıyor:
- Transport Parameters — bağlantının başlangıç parametreleri
- Initial DCID Length — ilk Connection ID'nin uzunluğu
- Preferred Address — geçiş (migration) desteği
- Token — 0-RTT davranışı
Proxy, hedef tarayıcının QUIC fingerprint'ini doğru biçimde taklit etmelidir.
Pratik öneriler
Proxy geliştiricileri için
- TCP'nin yanına UDP desteği ekleyin.
- HTTP/3 istemcileriyle uyumluluk için CONNECT-UDP uygulayın.
- QUIC uygulaması için quiche (Cloudflare), Quinn (Rust), ngtcp2 gibi kütüphaneleri kullanın.
Proxy kullanıcıları için
- Sağlayıcınızın HTTP/3 desteği olup olmadığını kontrol edin.
- DPI'yı aşmak için QUIC proxy'ler, TCP tabanlı çözümlerden daha etkili olabilir.
- Tüm hedef sitelerin HTTP/3 desteklemediğini göz önünde bulundurun.
HTTP/3 proxy'lerin geleceği
HTTP/3 kaçınılmaz olarak baskın protokol hâline geliyor. Web trafiğinin %30'undan fazlası şimdiden HTTP/3 kullanıyor. Temel eğilimler:
- Tüm büyük proxy'ler 2025-2026'ya kadar tam HTTP/3 desteği ekleyecek.
- MASQUE (RFC 9484), HTTP/3 üzerinden proxy'lemeyi standartlaştıracak.
- Bağlantı geçişi, mobil proxy'leri daha kararlı hâle getirecek.
- Meta veri şifrelemesi (ECH + QUIC) gizliliği artıracak.
Sonuç
HTTP/3 proxy'ler, proxy teknolojisinde bir sonraki evrimsel adımdır. QUIC protokolü TCP'nin temel sorunlarını (head-of-line blocking, yavaş handshake) çözer ve mobil proxy'ler ile engellemeleri aşma açısından yeni olanaklar açar. HTTP/3'e geçiş çoktan başladı ve proxy sektörü buna aktif olarak uyum sağlıyor.
