Microsoft je objavio izvorni kod za MsQuic, mrežni protokol koji se koristi za HTTP3

Microsoftov logotip

Microsoft programeri najavio izlazak izvornog koda biblioteke MsQuic implementacijom protokola mreže QUIC. Biblioteka ima više platformi i može se koristiti ne samo na Windowsima već i na Linuxu koristeći Schannel ili OpenSSL za TLS 1.3Pored toga, nastavlja se rad na proširenju podrške za druge platforme u budućnosti.

Biblioteka se temelji na kodu upravljačkog programa msquic.sys dostupno u jezgru Windows 10 (interni pregled) kako bi se zajamčio rad HTTP i SMB protokola preko QUIC-a. Uključivanje koda koristi se za implementaciju HTTP / 3 na internom Windows steku i na .NET Core.

Razvoj MsQuic biblioteke bit će u potpunosti izveden na GitHub-u koristeći javni pregled, zahtjeve za povlačenjem i GitHub probleme. Pripremljena je infrastruktura koja provjerava svaki zahtjev za predajom i povlačenjem u odnosu na skup od više od 4000 testova. Nakon stabilizacije razvojnog okruženja, planirano je prihvaćanje promjena od vanjskih programera.

O MsQuicu

msquic može se koristiti za stvaranje servera i klijenata, ali trenutno nije dostupna sva funkcionalnost definirana u IETF specifikaciji. Na primjer, nema podrške za 0-RTT, migraciju klijenta, Otkrivanje puta MTU ili kontrolu adrese koju preferira server.

Među implementiranim funkcijama, istaknuta je optimizacija za maksimalne performanse i minimalno kašnjenje, podrška za I/ O asinhroni, RSS (Primanje bočnog skaliranja), sposobnost da kombiniraju UDP ulazne i izlazne tokove. Implementacija MsQuic testirana je na kompatibilnost s eksperimentalnim granama preglednika Chrome i Edge.

The sposobnost uspostavljanja trenutne vezee (0-RTT, u oko 75% slučajeva, podaci se mogu prenijeti odmah nakon slanja paketa za podešavanje veze) i garantiraju minimalna kašnjenja između slanja zahtjeva i primanja odgovora (RTT, povratno vrijeme).

Takođe, ima alate za ispravljanje grešaka koji smanjuju kašnjenja zbog ponovnog slanja izgubljenih paketa.

Korištenje posebnih kodova za ispravljanje grešaka na razini paketa kako bi se smanjile situacije koje zahtijevaju ponovni prijenos izgubljenih paketnih podataka iliPoznavanje tehnike predviđanja širine pojasa u svim pravcima kako bi se osigurao optimalan intenzitet isporuke paketa, sprečavajući ga da dostigne stanje zagušenja u kojem se opaža gubitak paketa.

Od ostalih karakteristika QUIC ključ:

  • Visoka sigurnost, slična TLS-u (zapravo, QUIC pruža mogućnost upotrebe TLS-a 1.3 preko UDP-a).
  • Kontrola integriteta protoka koja sprečava gubitak paketa.
  • Ne korištenje istog broja sekvence pri ponovnom odašiljanju paketa, što izbjegava dvosmislenost u određivanju primljenih paketa i eliminira vrijeme čekanja.
  • Gubitak paketa utječe na isporuku samo s njim povezanog toka i ne zaustavlja isporuku podataka u paralelnim tokovima koji se prenose putem trenutne veze.
  • Granice kripto bloka poravnate su s granicama paketa QUIC, smanjujući učinak gubitka paketa na dekodiranje sadržaja sljedećih paketa.
  • Nema problema s blokiranjem TCP reda.
  • Podrška za identifikator veze, što smanjuje vrijeme uspostavljanja ponovnog povezivanja za mobilne klijente.
  • Ima sposobnost povezivanja naprednih mehanizama za kontrolu zagušenja veze.
  • Može se pohvaliti izvanrednim performansama i dobicima u odnosu na TCP. Za video usluge poput YouTubea, QUIC je pokazao smanjenje od 30% u ponovnom puferiranju prilikom gledanja videozapisa.

Konačno za one koje zanima više o tome O MsQuicu ili želite pogledati njegov izvorni kod, trebali biste znati da je kôd napisan na jeziku C, višestruki je platforme, opće namjene, distribuira se pod MIT licencom, a objavljeni kôd hostira na GitHubu.

Izvor: https://techcommunity.microsoft.com


Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Odgovoran za podatke: AB Internet Networks 2008 SL
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.