Microsoft het die implementering van die QUIC-protokol wat in HTTP / 3 gebruik word, geopen

Microsoft aangekondig oor die opening van die biblioteekkode Mevrou met die implementering van die netwerkprotokol QUIC. Die kode is geskryf in C en versprei deur onder MIT-lisensie. Die biblioteek is kruisplatform en kan nie net op Windows gebruik word nie, maar ook op Linux gebruik Kanaal of OpenSSL vir TLS 1.3. In die toekoms word beplan om ander platforms te ondersteun.

Die biblioteek is gebaseer op die msquic.sys-bestuurderkode wat in die Windows 10-kern (Insider Preview) verskaf word om die HTTP- en SMB boonop QUIC. Die kode word ook gebruik om HTTP/3 in die interne Windows-stapel en in .NET Core te implementeer. Ontwikkeling van die MsQuic-biblioteek sal geheel en al op GitHub uitgevoer word deur openbare ewekniebeoordeling, trekversoeke en GitHub-kwessies te gebruik. ’n Infrastruktuur is voorberei wat elke commit and pull-versoek nagaan in ’n stel van meer as 4000 XNUMX toetse. Nadat die ontwikkelingsomgewing gestabiliseer is, word daar beplan om veranderinge van derdeparty-ontwikkelaars te aanvaar.

MsQuic kan reeds gebruik word om bedieners en kliënte te skep, maar nie al die funksionaliteit wat in die IETF-spesifikasie gedefinieer is, is tans beskikbaar nie. Daar is byvoorbeeld geen ondersteuning vir 0-RTT, kliëntmigrasie, Path MTU Discovery of Server Preferred Address-beheer nie. Onder die geïmplementeerde kenmerke word optimering opgemerk om maksimum deurset en minimum vertragings te bereik, ondersteuning vir asynchrone toevoer/afvoer, RSS (Receive Side Scaling), en die vermoë om inset- en uitset UDP-strome te kombineer. Die MsQuic-implementering is getoets vir versoenbaarheid met eksperimentele weergawes van die Chrome- en Edge-blaaiers.

Onthou dat HTTP/3 die gebruik van die QUIC-protokol as 'n vervoer vir HTTP/2 standaardiseer. Protokol QUIC (Quick UDP Internet Connections) is sedert 2013 deur Google ontwikkel as 'n alternatief vir TCP + TLS vir die web, wat probleme oplos met lang opstel- en onderhandelingstye vir verbindings in TCP en om vertragings in die geval van pakkieverlies tydens data-oordrag uit te skakel. QUIC is 'n byvoeging tot die UDP-protokol wat multipleksing van veelvuldige verbindings ondersteun en enkripsiemetodes bied gelykstaande aan TLS/SSL.

Die belangrikste kenmerke SNEL:

  • Hoë sekuriteit, soortgelyk aan TLS (in werklikheid bied QUIC die vermoë om TLS 1.3 oor UDP te gebruik);
  • Stroomintegriteitsbeheer om pakkieverlies te voorkom;
  • Die vermoë om onmiddellik 'n verbinding tot stand te bring (0-RTT, in ongeveer 75% van die gevalle, data kan onmiddellik versend word nadat 'n verbindingsopstelpakkie gestuur is) en verseker minimale vertragings tussen die stuur van 'n versoek en die ontvangs van 'n antwoord (RTT, Round Trip Time) ;
    Microsoft het die implementering van die QUIC-protokol wat in HTTP / 3 gebruik word, geopen

  • Moenie dieselfde volgordenommer gebruik wanneer 'n pakkie herversend word nie, wat jou toelaat om onduidelikheid te vermy in die bepaling van die ontvangde pakkies en ontslae te raak van time-outs;
  • Pakkieverlies beïnvloed slegs die aflewering van die stroom wat daarmee geassosieer word en stop nie die aflewering van data in strome wat parallel oor die huidige verbinding versend word nie;
  • Foutregstellingnutsgoed wat vertragings as gevolg van herversending van verlore pakkies verminder. Gebruik van spesiale foutkorreksiekodes op die pakkievlak om situasies te verminder wat heruitsending van verlore pakkiedata vereis.
  • Die grense van die kriptografiese blokke is in lyn met die grense van die QUIC-pakkies, wat die impak van pakkieverlies op die dekodering van die inhoud van die volgende pakkies verminder;
  • Geen probleme met die blokkering van die TCP-tou nie;
  • Verbindings-ID-ondersteuning om heraansluitingstyd vir mobiele kliënte te verminder;
  • Moontlikheid om gevorderde meganismes vir verbinding oorlading beheer te koppel;
  • Die gebruik van bandwydte-voorspellingstegnieke in elke rigting om die optimale intensiteit van die stuur van pakkies te verseker, wat voorkom dat dit in 'n toestand van opeenhoping inrol, waarin daar 'n verlies aan pakkies is;
  • Waarneembaar groei werkverrigting en deurset in vergelyking met TCP. Vir videodienste soos YouTube, is daar getoon dat QUIC video-weerkaatsingsoperasies met 30% verminder.

Bron: opennet.ru

Voeg 'n opmerking