Lewati ke konten utama

HTTP/3 (QUIC) Support

HTTP/3 (sebelumnya dikenal sebagai " HTTP over QUIC ") adalah versi ketiga besar yang akan datang dari keluarga Protokol Transfer Hiperteks. Dari segi fitur, ini sangat mirip dengan HTTP/2 tetapi menawarkan beberapa keuntungan signifikan karena perubahan pada metode pemanfaatan yang mendasarinya. Secara khusus, HTTP/3 dibangun di atas protokol transport QUIC, yang bekerja di atas UDP alih-alih TCP.

Saat ini, HTTP/3 sudah disediakan oleh beberapa solusi (misalnya LiteSpeed dan NGINX) dan telah diadopsi oleh platform melalui rilis terbaru dari tumpukan berikut:

Di bawah ini, Anda dapat memeriksa:

Technical Implementation Specifics/Preconditions

Alasan utama di balik implementasi HTTP/3 adalah bahwa HTTP/2 mencapai batasnya dalam peningkatan kecepatan karena hambatan dari protokol TCP. Meskipun andal, semua perjalanan bolak-balik yang dibutuhkan oleh proses handshake, umpan balik pengiriman, jaminan urutan, dan checksum dari TCP dapat dianggap lemah dan berlebihan. Oleh karena itu, sebagai bagian dari stack TCP/IP, TCP diimplementasikan dalam kernel sistem operasi, dan firmware perangkat, membuat perubahan signifikan pada TCP hampir tidak mungkin dilakukan.

tip

Berikut adalah beberapa contoh keterbatasan yang disediakan oleh TCP: satu koneksi TCP dapat mentransfer data melalui beberapa stream; namun, kehilangan paket menahan seluruh koneksi (dan semua stream-nya) sampai TCP mentransmisikan ulang paket tersebut TCP tidak menyediakan TLS bawaan, sehingga koneksi aman membutuhkan tambahan perjalanan bolak-balik, menciptakan penundaan

UDP tidak memiliki keterbatasan semacam itu dan sama meluasnya dengan TCP, yang memungkinkan pencapaian peningkatan tanpa perubahan signifikan pada sistem operasi dan firmware perangkat yang ada. Dengan demikian, HTTP/3 telah mengadopsi protokol transport QUIC (awalnya dikembangkan oleh Google), yang berbasis di UDP, memberikan manfaat signifikan. Juga, karena sudah digunakan oleh perusahaan internet ternama seperti Google dan Facebook, efisiensi dan keandalan solusi QUIC tidak dapat disangkal.

HTTP/3 (QUIC) Key Features

Dengan menggunakan QUIC alih-alih TCP sebagai dasarnya, HTTP/3 dapat memanfaatkan banyak manfaat yang disediakannya. Di sini, implementasi QUIC di atas UDP memungkinkan menawarkan fitur yang mirip dengan TCP tetapi tanpa beberapa titik tersedak. Jadi, mari kita rangkum fitur utama yang membedakan HTTP/3 jika dibandingkan dengan pendahulunya HTTP/2:

  • enhanced multiplexing - kehilangan paket hanya mempengaruhi stream tunggal yang sesuai (tidak semua stream dalam koneksi yang sama)
  • faster connection setup - protokol menangani fitur keamanan sendiri, mengurangi jumlah perjalanan bolak-balik untuk membangun koneksi (terutama terlihat pada jaringan dengan latensi tinggi, misalnya untuk pengguna mobile)
  • connection migration - penggunaan ID koneksi alih-alih IP tujuan memungkinkan memastikan pengiriman paket bahkan dalam kasus pergantian jaringan (misalnya, unduhan melalui HTTP/3 akan berlanjut saat koneksi wifi berubah ke jaringan mobile)
HTTP2 vs HTTP3

Secara umum, HTTP/3 bertujuan untuk menyediakan koneksi yang lebih cepat dan lebih andal, yang akan sangat terasa oleh mereka dengan jaringan latensi tinggi. Jadi, dari sudut pandang performa, pengguna mobile akan merasakan sebagian besar manfaat, tetapi ini adalah peningkatan yang dapat diapresiasi semua orang.

HTTP/3 Support Implementation

Dukungan untuk protokol HTTP/3 (QUIC) masih dalam tahap implementasi paling awal. Namun, ini sudah disediakan oleh beberapa solusi (misalnya LiteSpeed) dan sedang dikembangkan oleh yang lain.

Di bawah ini, Anda dapat melihat daftar paling akurat dari tumpukan perangkat lunak di platform yang memberikan dukungan HTTP/3 secara default:

  • load balancers
  • application servers
    • LiteSpeed WS: semua versi
    • LLSMP: semua versi
    • LEMP: sejak rilis 1.16.1
    • NGINX PHP: sejak rilis 1.16.1 untuk versi PHP 7.2.26 , 7.3.13 , 7.4.1 dan di atasnya
    • NGINX Ruby : sejak rilis 1.16.1 untuk versi Ruby 2.4.9 , 2.5.7 , 2.6.5 , 2.7.0 dan di atasnya

Cukup buat topologi lingkungan yang mencakup salah satu dari application servers atau load balancers yang disebutkan di atas.

HTTP3 ready servers

Di sini, Anda perlu melampirkan alamat IP publik untuk melewati Shared Load Balancer dan memungkinkan bekerja langsung dengan server melalui HTTP/3.

peringatan

Dari sisi klien, dukungan HTTP/3 (QUIC) saat ini diaktifkan secara default di Chromium, dapat dikonfigurasi di Chrome (chrome://flags), dan belum diterapkan oleh browser Firefox.

Baca Juga