Microsoft HTTP/3 da qo'llaniladigan QUIC protokolini amalga oshirishni ochdi

Microsoft kompaniyasi e'lon qildi kutubxona kodini ochish haqida msquic tarmoq protokolini amalga oshirish bilan QUIC. Kod C va tilida yozilgan tarqaladi MIT litsenziyasi ostida. Kutubxona oʻzaro platformali boʻlib, nafaqat Windows-da, balki Linux-da ham foydalanish mumkin Skanal yoki TLS 1.3 uchun OpenSSL. Kelajakda boshqa platformalarni ham qo‘llab-quvvatlash rejalashtirilgan.

Kutubxona HTTP va SMB QUIC tepasida. Kod, shuningdek, HTTP/3 ni ichki Windows stekida va .NET Core da amalga oshirish uchun ishlatiladi. MsQuic kutubxonasini ishlab chiqish butunlay GitHub'da umumiy ko'rib chiqish, jalb qilish so'rovlari va GitHub muammolari yordamida amalga oshiriladi. 4000 dan ortiq testlar to'plamida har bir topshiriq va so'rovni tekshiradigan infratuzilma tayyorlandi. Rivojlanish muhitini barqarorlashtirgandan so'ng, uchinchi tomon ishlab chiquvchilaridan o'zgarishlarni qabul qilish rejalashtirilgan.

MsQuic allaqachon serverlar va mijozlar yaratish uchun ishlatilishi mumkin, ammo hozirda IETF spetsifikatsiyasida belgilangan barcha funksiyalar mavjud emas. Misol uchun, 0-RTT, mijoz migratsiyasi, Path MTU Discovery yoki Server Preferred Address boshqaruvini qo'llab-quvvatlamaydi. Amalga oshirilgan xususiyatlar orasida optimallashtirish maksimal o'tkazuvchanlik va minimal kechikishlarga erishish, asinxron kiritish/chiqishni qo'llab-quvvatlash, RSS (Receive Side Scaling) va kirish va chiqish UDP oqimlarini birlashtirish qobiliyatini qayd etadi. MsQuic ilovasi Chrome va Edge brauzerlarining eksperimental versiyalari bilan muvofiqligi uchun sinovdan o'tkazildi.

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 (asosan QUIC UDP orqali TLS 1.3 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) ;
    Microsoft HTTP/3 da qo'llaniladigan QUIC protokolini amalga oshirishni ochdi

  • 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