Cloudflare NGINX da HTTP/3 ni qo‘llab-quvvatlash modulini joriy qildi

Cloudflare kompaniyasi tayyorlangan modul NGINX da HTTP/3 protokolini qo'llab-quvvatlash uchun. Modul Cloudflare tomonidan ishlab chiqilgan kutubxonaga qo'shimcha sifatida yaratilgan go'sht QUIC va HTTP/3 transport protokolini amalga oshirish bilan. Kish kodi Rust-da yozilgan, lekin NGINX modulining o'zi C-da yozilgan va dinamik bog'lanish yordamida kutubxonaga kiradi. Ishlanmalar ochiq BSD litsenziyasi ostida.

Yig'ish uchun shunchaki yuklab oling yamoq nginx 1.16 va kodi quiche kutubxonalarini o'rnating, so'ngra "—with-http_v3_module —with-quiche=../quiche" parametrlari bilan nginx-ni qayta tiklang. Qurilishda TLS qoʻllab-quvvatlashi BoringSSL kutubxonasiga asoslangan boʻlishi kerak (“--with-openssl=../quiche/deps/boringssl”), OpenSSL-dan foydalanish hali qoʻllab-quvvatlanmaydi. Ulanishlarni qabul qilish uchun sozlamalarga “quic” bayrog‘i bilan tinglash direktivasini qo‘shishingiz kerak (masalan, “443 quic reuseport tinglash”).

Mijoz dasturiy ta'minotida HTTP/3 qo'llab-quvvatlash allaqachon Chrome Canary va curl yordam dasturining eksperimental tuzilmalariga qo'shilgan. Server tomonida hozirgacha alohida, cheklangan foydalanish kerak edi test dasturlari. Nginx-da HTTP/3-ni qayta ishlash qobiliyati HTTP/3-ni qo'llab-quvvatlaydigan serverlarni joylashtirishni sezilarli darajada soddalashtiradi va yangi protokolni sinovdan o'tkazishni yanada qulayroq qiladi. Nginx-da HTTP/3 uchun standart qo'llab-quvvatlashning paydo bo'lishi kutilmoqda 1.17.x filialida 6-12 oy davomida.

Eslatib o'tamiz, HTTP/3 QUIC protokolidan HTTP/2 uchun transport sifatida foydalanishni standartlashtiradi. Protokol QUIC (Quick UDP Internet Connections) 2013-yildan beri Google tomonidan Internet uchun TCP+TLS kombinatsiyasiga muqobil sifatida ishlab chiqilgan boʻlib, TCPʼdagi ulanishlar uchun uzoq sozlash va muzokaralar vaqtlari bilan bogʻliq muammolarni hal qiladi va maʼlumotlarni uzatish jarayonida paketlar yoʻqolgan kechikishlarni bartaraf etadi. QUIC UDP protokolining kengaytmasi bo'lib, u bir nechta ulanishlarni multiplekslashni qo'llab-quvvatlaydi va TLS/SSLga teng shifrlash usullarini ta'minlaydi.

asosiy xususiyatlari QUIC:

  • TLS ga o'xshash yuqori xavfsizlik (aslida QUIC UDP orqali TLS dan foydalanish imkoniyatini beradi);
  • Paket yo'qotilishining oldini olish uchun oqim yaxlitligini nazorat qilish;
  • Bir zumda ulanishni o'rnatish qobiliyati (0-RTT, taxminan 75% hollarda, ma'lumotlar ulanishni sozlash paketi yuborilgandan so'ng darhol uzatilishi mumkin) va so'rov yuborish va javob olish o'rtasidagi minimal kechikishlarni ta'minlash (RTT, aylanish vaqti) ;
  • Paketni qayta yuborishda bir xil tartib raqamidan foydalanmang, bu qabul qilingan paketlarni aniqlashda noaniqliklarga yo'l qo'ymaslik va kutish vaqtlaridan xalos bo'lishga imkon beradi;
  • Paket yo'qolishi faqat u bilan bog'langan oqimning etkazib berilishiga ta'sir qiladi va joriy ulanish orqali parallel ravishda uzatiladigan oqimlarda ma'lumotlarni etkazib berishni to'xtatmaydi;
  • Yo'qolgan paketlarni qayta uzatish tufayli kechikishlarni kamaytiradigan xatolarni tuzatish vositalari. Yo'qolgan paket ma'lumotlarini qayta uzatishni talab qiladigan vaziyatlarni kamaytirish uchun paketlar darajasida maxsus xatolarni tuzatish kodlaridan foydalanish.
  • Kriptografik blok chegaralari QUIC paket chegaralari bilan moslashtiriladi, bu keyingi paketlar tarkibini dekodlashda paket yo'qotishlarining ta'sirini kamaytiradi;
  • TCP navbatini blokirovka qilish bilan bog'liq muammolar yo'q;
  • Mobil mijozlar uchun qayta ulanish vaqtini qisqartirish uchun ulanish identifikatorini qo'llab-quvvatlash;
  • Ulanishni haddan tashqari yuklashni boshqarish uchun ilg'or mexanizmlarni ulash imkoniyati;
  • Paketlarni jo'natishning optimal intensivligini ta'minlash uchun har bir yo'nalishda o'tkazish qobiliyatini bashorat qilish usullaridan foydalanish, paketlar yo'qolishi mumkin bo'lgan tirbandlik holatiga tushishning oldini olish;
  • Sezuvchan o'sish TCP bilan solishtirganda ishlash va o'tkazish qobiliyati. YouTube kabi video xizmatlari uchun QUIC videoni qayta tiklash operatsiyalarini 30% ga qisqartirishi ko'rsatilgan.
  • Manba: opennet.ru

a Izoh qo'shish