Firefox-ի գիշերային կոնստրուկցիաներն այժմ աջակցում են HTTP/3-ին

В գիշերային շինություններ Firefox-ը, որը հիմք կհանդիսանա Firefox 72-ի թողարկման համար, որը նախատեսված է հունվարի 7-ին, ավելացրել է HTTP/3 արձանագրության աջակցություն: Լռելյայնորեն, HTTP/3-ն անջատված է և պահանջում է, որ «network.http.http3.enabled» տարբերակը ակտիվացվի about:config-ում:

HTTP/3-ի աջակցությունը Firefox-ում հիմնված է Mozilla-ի կողմից մշակված նախագծի վրա neqo, որն ապահովում է հաճախորդի և սերվերի իրականացում QUIC արձանագրության համար: HTTP/3 և QUIC աջակցության բաղադրիչի կոդը գրված է Rust-ով:
Հաճախորդի ծրագրաշարից, HTTP/3-ի փորձնական աջակցությունը նույնպես արդեն կա ավելացրել է Chrome-ում և curl-ում, իսկ սերվերների համար այն հասանելի է ձևով մոդուլյա նգինքսի համար և թեստային սերվեր գրադարանի վրա հիմնված Quiche (իրականացումը QUIC և HTTP/3 Rust-ում Cloudflare-ից): HTTP/3 հաճախորդների գործունեությունը ստուգելու համար մեկնարկել է մի քանի թեստային կայքեր, որոնցից շատերը դեռ ճիշտ չեն բացվում Firefox-ում (HTTP/3-ը փուլում է նախագիծ հստակեցում և ամբողջովին ստանդարտացված չէ):

Հիշեցնենք, որ HTTP/3-ը ստանդարտացնում է QUIC արձանագրության օգտագործումը որպես HTTP/2-ի փոխադրում: Արձանագրություն QUIC (Quick UDP Internet Connections) մշակվել է Google-ի կողմից 2013 թվականից՝ որպես համացանցի համար TCP+TLS համակցության այլընտրանք՝ լուծելով TCP-ում կապերի երկար կարգավորումների և բանակցությունների ժամանակի հետ կապված խնդիրները և վերացնելով տվյալների փոխանցման ընթացքում փաթեթների կորստի ժամանակ ձգձգումները: QUIC-ը UDP արձանագրության ընդլայնումն է, որն աջակցում է բազմաթիվ կապերի մուլտիպլեքսավորմանը և ապահովում է գաղտնագրման մեթոդներ, որոնք համարժեք են TLS/SSL-ին:

Հիմնական առանձնահատկությունները QUIC:

  • Բարձր անվտանգություն, որը նման է TLS-ին (ըստ էության, QUIC-ն ապահովում է TLS-ի օգտագործման հնարավորությունը UDP-ի միջոցով);
  • Հոսքի ամբողջականության վերահսկում, փաթեթների կորստի կանխարգելում;
  • Անմիջապես կապ հաստատելու հնարավորություն (0-RTT, դեպքերի մոտավորապես 75%-ում տվյալները կարող են փոխանցվել կապի կարգավորումների փաթեթն ուղարկելուց անմիջապես հետո) և ապահովել հարցում ուղարկելու և պատասխան ստանալու միջև նվազագույն ուշացումներ (RTT, Կլոր ուղևորության ժամանակ);
  • Միևնույն հաջորդական համարը չօգտագործել փաթեթը վերահաղորդելիս, ինչը խուսափում է ստացված փաթեթների նույնականացման հարցում անորոշությունից և ազատվում է ժամանակի ընդմիջումից.
  • Փաթեթի կորուստը ազդում է միայն դրա հետ կապված հոսքի առաքման վրա և չի դադարեցնում տվյալների առաքումը ընթացիկ կապի միջոցով փոխանցվող զուգահեռ հոսքերով.
  • Սխալների ուղղման առանձնահատկություններ, որոնք նվազագույնի են հասցնում կորցրած փաթեթների վերահաղորդման պատճառով հետաձգումները: Փաթեթի մակարդակում սխալների ուղղման հատուկ կոդերի օգտագործումը՝ կորցրած փաթեթային տվյալների վերահաղորդում պահանջող իրավիճակները նվազեցնելու համար:
  • Կրիպտոգրաֆիկ բլոկի սահմանները համահունչ են QUIC փաթեթների սահմաններին, ինչը նվազեցնում է փաթեթների կորուստների ազդեցությունը հետագա փաթեթների բովանդակության վերծանման վրա.
  • TCP հերթի արգելափակման հետ կապված խնդիրներ չկան.
  • Կապի նույնացուցիչի աջակցություն, որը նվազեցնում է շարժական հաճախորդների համար վերամիացում հաստատելու ժամանակը.
  • Միացման գերբեռնվածության վերահսկման առաջադեմ մեխանիզմների միացման հնարավորություն;
  • Օգտագործում է յուրաքանչյուր ուղղության թողունակության կանխատեսման տեխնիկան՝ ապահովելու փաթեթների վերահասցեավորման օպտիմալ տեմպերը՝ կանխելով գերբեռնվածությունը և փաթեթների կորուստը.
  • Ըմբռնելի աճը կատարումը և թողունակությունը՝ համեմատած TCP-ի հետ: Ցույց է տրվել, որ վիդեո ծառայությունների համար, ինչպիսին է YouTube-ը, QUIC-ը 30%-ով նվազեցնում է ռեբուֆերացման գործողությունները տեսանյութեր դիտելիս:

Source: opennet.ru

Добавить комментарий