HTTP/3.0 idalandira mawonekedwe oyenera

IETF (Internet Engineering Task Force), yomwe imayang'anira chitukuko cha ma protocol ndi zomangamanga pa intaneti, yamaliza kupanga RFC ya protocol ya HTTP/3.0 ndikusindikiza zofananira pansi pa zozindikiritsa RFC 9114 (protocol) ndi RFC 9204 ( Ukadaulo wopondereza mutu wa QPACK wa HTTP/3). Mafotokozedwe a HTTP/3.0 adalandira udindo wa "Proposed Standard", pambuyo pake ntchito idzayamba kupatsa RFC udindo wa ndondomeko yokonzekera (Draft Standard), zomwe zikutanthauza kukhazikika kwathunthu kwa protocol ndikuganizira zonse. ndemanga zomwe zaperekedwa. Nthawi yomweyo, mitundu yosinthidwa ya ma protocol a HTTP/1.1 (RFC 9112) ndi HTTP/2.0 (RFC 9113) idasindikizidwa, komanso zikalata zofotokozera ma semantics a pempho la HTTP (RFC 9110) ndi HTTP caching control headers. (RFC 9111).

Protocol ya HTTP/3 imatanthauzira kugwiritsa ntchito protocol ya QUIC (Quick UDP Internet Connections) ngati mayendedwe a HTTP/2. QUIC ndikuwonjeza kwa protocol ya UDP yomwe imathandizira kuchulukitsa kwa maulumikizidwe angapo ndipo imapereka njira zolembera zofananira ndi TLS/SSL. Protocol idapangidwa mu 2013 ndi Google ngati njira ina yophatikizira TCP + TLS pa Webusaiti, kuthetsa mavuto ndi kukhazikitsidwa kwautali wautali ndi nthawi zokambilana mu TCP ndikuchotsa kuchedwa pamene mapaketi atayika panthawi yotumiza deta.

HTTP/3.0 idalandira mawonekedwe oyenera

Pakadali pano, chithandizo cha QUIC ndi HTTP/3.0 chakhazikitsidwa kale m'masakatuli onse otchuka (mu Chrome, Firefox ndi Edge, chithandizo cha HTTP/3 chimayatsidwa mwachisawawa, ndipo mu Safari pamafunika "Advanced> Experimental Features> HTTP/3" kuti athe kuthandizidwa). Kumbali ya seva, kukhazikitsa kwa HTTP/3 kuli nginx (munthambi yosiyana ndi mawonekedwe a gawo lina), Caddy, IIS ndi LiteSpeed. Thandizo la HTTP/3 limaperekedwanso ndi Cloudflare content delivery network.

Zofunikira za QUIC:

  • Chitetezo chapamwamba, chofanana ndi TLS (kwenikweni, QUIC imapereka mphamvu yogwiritsira ntchito TLS pa UDP);
  • Kuwongolera umphumphu kuti muteteze kutayika kwa paketi;
  • Kutha kukhazikitsa nthawi yomweyo kugwirizana (0-RTT, pafupifupi 75% ya milandu deta akhoza kupatsirana mwamsanga pambuyo kutumiza khwekhwe paketi) ndi kupereka kuchedwa kochepa pakati kutumiza pempho ndi kulandira yankho (RTT, Round Trip Time);
    HTTP/3.0 idalandira mawonekedwe oyenera
  • Kugwiritsa ntchito nambala yotsatizana yosiyana potumizanso paketi, zomwe zimapewa kusamvetsetsana pakuzindikira mapaketi omwe alandilidwa ndikuchotsa nthawi;
  • Kutayika kwa paketi kumangokhudza kuperekedwa kwa mtsinje wogwirizana nawo ndipo sikumayimitsa kutumizidwa kwa deta m'mitsinje yomwe imafalitsidwa mofanana ndi kugwirizana komwe kulipo;
  • Zida zowongolera zolakwika zomwe zimachepetsa kuchedwa chifukwa chotumizanso mapaketi otayika. Kugwiritsa ntchito manambala apadera owongolera zolakwika pamlingo wa paketi kuti muchepetse zinthu zomwe zimafuna kutumizanso deta yotayika ya paketi.
  • Malire a Cryptographic block amalumikizidwa ndi malire a paketi ya QUIC, omwe amachepetsa kutayika kwa paketi polemba zomwe zili m'mapaketi otsatirawa;
  • Palibe zovuta ndikuletsa mzere wa TCP;
  • Thandizo la ID yolumikizira kuchepetsa nthawi yolumikiziranso makasitomala am'manja;
  • Kuthekera kulumikiza njira zapamwamba zowongolera kuwongolera kuchuluka;
  • Kugwiritsa ntchito njira zolosera za bandwidth mbali iliyonse kuti zitsimikizire kulimba koyenera kwa kutumiza mapaketi, kupewa kugubuduza mumkhalidwe wosokonekera, momwe mumataya mapaketi;
  • Kuwonjezeka kwakukulu kwa ntchito ndi kupititsa patsogolo poyerekeza ndi TCP. Kwa makanema apakanema monga YouTube, QUIC yawonetsedwa kuti imachepetsa kubweza ntchito mukawonera makanema ndi 30%.

Pakati pa zosintha za HTTP/1.1, munthu akhoza kuzindikira kuletsa kugwiritsa ntchito kwakutali kwa carriage return (CR) kunja kwa thupi ndi zomwe zili, i.e. Muzinthu za protocol, mawonekedwe a CR amatha kugwiritsidwa ntchito molumikizana ndi mzere wa feed character (CRLF). Dongosolo lofunsira chunked algorithm yakonzedwa kuti ikhale yosavuta kulekanitsa minda yolumikizidwa ndi magawo okhala ndi mitu. Malangizo owonjezera pakuthana ndi zinthu zosamveka bwino kuti aletse kuukira kwa "HTTP Request Smuggling", zomwe zimatilola kuti tilowe muzopempha za ena ogwiritsa ntchito pakati pa frontend ndi backend.

Kusintha kwatsatanetsatane kwa HTTP/2.0 kumatanthawuza momveka bwino chithandizo cha TLS 1.3. Sitimu yoyika patsogolo ndi mitu yogwirizana nayo. Njira yosagwiritsiridwa ntchito yosinthira kulumikizana ndi HTTP/1.1 yanenedwa kuti yatha. Zofunikira zochepetsedwa zowunikira mayina ndi makonda. Mitundu ina ya chimango yomwe idasungidwa kale ndi magawo amaperekedwa kuti agwiritsidwe ntchito. Minda yamutu yoletsedwa yokhudzana ndi kulumikizana imafotokozedwa bwino kwambiri.

Source: opennet.ru

Kuwonjezera ndemanga