Microsoft telah membuka pelaksanaan protokol QUIC yang digunakan dalam HTTP/3

Microsoft mengumumkan tentang membuka kod perpustakaan CikQuic dengan pelaksanaan protokol rangkaian QUIC. Kod ditulis dalam C dan diedarkan oleh di bawah lesen MIT. Perpustakaan adalah platform silang dan boleh digunakan bukan sahaja pada Windows, tetapi juga pada penggunaan Linux Saluran atau OpenSSL untuk TLS 1.3. Pada masa hadapan, ia dirancang untuk menyokong platform lain.

Pustaka adalah berdasarkan kod pemacu msquic.sys yang disediakan dalam kernel Windows 10 (Insider Preview) untuk membolehkan HTTP dan SMB di atas QUIC. Kod ini juga digunakan untuk melaksanakan HTTP/3 dalam tindanan Windows dalaman dan dalam .NET Core. Pembangunan perpustakaan MsQuic akan dijalankan sepenuhnya pada GitHub menggunakan semakan rakan sebaya awam, permintaan tarik dan Isu GitHub. Infrastruktur telah disediakan yang menyemak setiap permintaan komit dan tarik dalam satu set lebih daripada 4000 ujian. Selepas menstabilkan persekitaran pembangunan, ia dirancang untuk menerima perubahan daripada pembangun pihak ketiga.

MsQuic sudah boleh digunakan untuk mencipta pelayan dan pelanggan, tetapi tidak semua fungsi yang ditakrifkan dalam spesifikasi IETF tersedia pada masa ini. Contohnya, tiada sokongan untuk 0-RTT, migrasi klien, Path MTU Discovery atau kawalan Alamat Pilihan Pelayan. Antara ciri yang dilaksanakan, pengoptimuman dicatatkan untuk mencapai daya pemprosesan maksimum dan kelewatan minimum, sokongan untuk input/output tak segerak, RSS (Receive Side Scaling), dan keupayaan untuk menggabungkan input dan output aliran UDP. Pelaksanaan MsQuic telah diuji untuk keserasian dengan versi percubaan penyemak imbas Chrome dan Edge.

Ingat bahawa HTTP/3 menyeragamkan penggunaan protokol QUIC sebagai pengangkutan untuk HTTP/2. Protokol QUIC (Sambungan Internet UDP Pantas) telah dibangunkan oleh Google sejak 2013 sebagai alternatif kepada gabungan TCP+TLS untuk Web, menyelesaikan masalah dengan persediaan yang panjang dan masa rundingan untuk sambungan dalam TCP dan menghapuskan kelewatan apabila paket hilang semasa pemindahan data. QUIC ialah lanjutan daripada protokol UDP yang menyokong pemultipleksan berbilang sambungan dan menyediakan kaedah penyulitan yang setara dengan TLS/SSL.

Utama ciri- CEPAT:

  • Keselamatan tinggi serupa dengan TLS (pada asasnya QUIC menyediakan keupayaan untuk menggunakan TLS 1.3 berbanding UDP);
  • Kawalan integriti aliran untuk mengelakkan kehilangan paket;
  • Keupayaan untuk mewujudkan sambungan serta-merta (0-RTT, dalam kira-kira 75% kes, data boleh dihantar serta-merta selepas menghantar paket persediaan sambungan) dan memastikan kelewatan minimum antara menghantar permintaan dan menerima respons (RTT, Masa Pergi Balik) ;
    Microsoft telah membuka pelaksanaan protokol QUIC yang digunakan dalam HTTP/3

  • Jangan gunakan nombor urutan yang sama semasa menghantar semula paket, yang membolehkan anda mengelakkan kekaburan dalam menentukan paket yang diterima dan menyingkirkan tamat masa;
  • Kehilangan paket hanya menjejaskan penghantaran aliran yang berkaitan dengannya dan tidak menghentikan penghantaran data dalam aliran yang dihantar selari melalui sambungan semasa;
  • Alat pembetulan ralat yang meminimumkan kelewatan akibat penghantaran semula paket yang hilang. Penggunaan kod pembetulan ralat khas pada peringkat paket untuk mengurangkan situasi yang memerlukan penghantaran semula data paket yang hilang.
  • Sempadan blok kriptografi diselaraskan dengan sempadan paket QUIC, yang mengurangkan kesan kehilangan paket pada penyahkodan kandungan paket berikutnya;
  • Tiada masalah dengan menyekat baris gilir TCP;
  • Sokongan ID Sambungan untuk mengurangkan masa penyambungan semula untuk pelanggan mudah alih;
  • Kemungkinan untuk menyambungkan mekanisme lanjutan untuk kawalan beban lampau sambungan;
  • Menggunakan teknik ramalan jalur lebar dalam setiap arah untuk memastikan keamatan optimum penghantaran paket, menghalang rolling ke dalam keadaan kesesakan, di mana terdapat kehilangan paket;
  • Boleh dilihat pertumbuhan prestasi dan daya pengeluaran berbanding dengan TCP. Untuk perkhidmatan video seperti YouTube, QUIC telah ditunjukkan dapat mengurangkan operasi penimbalan semula video sebanyak 30%.

Sumber: opennet.ru

Tambah komen