Microsoft HTTP/3 ичинде колдонулган QUIC протоколун ишке ашырууну ачты

Microsoft бар жарыялады китепкана кодун ачуу жөнүндө msquic тармактык протоколду ишке ашыруу менен ТЕЗ. Код C жана жазылган жайылуу MIT лицензиясы боюнча. Китепкана кросс-платформа болуп саналат жана Windows менен гана эмес, Linux менен да колдонсо болот нын каналы же TLS 1.3 үчүн OpenSSL. Келечекте башка платформаларды колдоо пландалууда.

Китепкана HTTP жана КОИ QUIC үстүнө. Код ошондой эле ички Windows стекинде жана .NET Core ичинде HTTP/3 ишке ашыруу үчүн колдонулат. MsQuic китепканасын иштеп чыгуу толугу менен GitHub'да жалпыга ачык кароо, тартуу өтүнүчтөрү жана GitHub маселелерин колдонуу менен жүргүзүлөт. 4000ден ашык сыноолордун топтомунда ар бир тапшырманы жана суроо-талапты текшерген инфраструктура даярдалды. Өнүктүрүү чөйрөсүн турукташтыргандан кийин, үчүнчү тараптын иштеп чыгуучуларынан өзгөртүүлөрдү кабыл алуу пландаштырылууда.

MsQuic мурунтан эле серверлерди жана кардарларды түзүү үчүн колдонулушу мүмкүн, бирок IETF спецификациясында аныкталган бардык функциялар учурда жеткиликтүү эмес. Мисалы, 0-RTT, кардар миграциясы, Path MTU Discovery же Server Preferred Address башкаруу үчүн колдоо жок. Ишке ашырылган функциялардын арасында оптималдаштыруу максималдуу өткөрүү жөндөмдүүлүгүнө жана минималдуу кечигүүлөргө, асинхрондук киргизүү/чыгарууга колдоо көрсөтүү, RSS (кабыл алуу тарапты масштабдоо) жана UDP агымдарын киргизүү жана чыгарууну айкалыштыруу мүмкүнчүлүгү белгиленет. MsQuic ишке ашыруу Chrome жана Edge браузерлеринин эксперименталдык версиялары менен шайкештиги үчүн сыналган.

Эске салсак, HTTP/3 QUIC протоколун HTTP/2 үчүн транспорт катары колдонууну стандартташтырат. Протокол ТЕЗ (Quick UDP Internet Connections) 2013-жылдан бери Google тарабынан Web үчүн TCP+TLS айкалыштарына альтернатива катары иштелип чыккан, ал TCP'де туташуулар үчүн узак орнотуу жана сүйлөшүү убакыттары менен көйгөйлөрдү чечет жана маалыматтарды өткөрүп берүү учурунда пакеттер жоголуп кеткенде кечигүүлөрдү жок кылат. QUIC бир нече туташууларды мультиплекстештирүүнү колдогон жана TLS/SSLге барабар шифрлөө ыкмаларын камсыз кылган UDP протоколунун кеңейтүүсү.

негизги өзгөчөлүктөрү QUIC:

  • TLSге окшош жогорку коопсуздук (негизинен QUIC UDP үстүнөн TLS 1.3 колдонуу мүмкүнчүлүгүн камсыз кылат);
  • Пакеттин жоголушун алдын алуу үчүн агымдын бүтүндүгүн көзөмөлдөө;
  • Дароо байланыш түзүү мүмкүнчүлүгү (0-RTT, болжол менен 75% учурларда, маалымат туташууну орнотуу пакетин жөнөткөндөн кийин дароо берилиши мүмкүн) жана суроо-талапты жөнөтүү менен жооп алуунун ортосундагы минималдуу кечигүүлөрдү камсыз кылуу (RTT, Айлануу убактысы) ;
    Microsoft HTTP/3 ичинде колдонулган QUIC протоколун ишке ашырууну ачты

  • Пакетти кайра жөнөтүүдө бир катар номерди колдонбоңуз, бул кабыл алынган пакеттерди аныктоодо түшүнүксүздүктү болтурбоо жана тайм-ауттардан арылууга мүмкүндүк берет;
  • Пакеттин жоголушу аны менен байланышкан агымдын жеткирилишине гана таасирин тийгизет жана учурдагы байланыш боюнча параллелдүү берилүүчү агымдарда маалыматтардын жеткирилишин токтотпойт;
  • Жоголгон пакеттердин кайра жөнөтүлүшүнөн улам кечигүүлөрдү азайтуучу каталарды оңдоо куралдары. Жоголгон пакет маалыматтарын кайра жөнөтүүнү талап кылган кырдаалдарды азайтуу үчүн пакеттик деңгээлде катаны оңдоонун атайын коддорун колдонуу.
  • Криптографиялык блоктун чек аралары QUIC пакетинин чек аралары менен дал келет, бул пакеттик жоготуулардын кийинки пакеттердин мазмунун декоддоосуна таасирин азайтат;
  • TCP кезегин бөгөттөөдө көйгөйлөр жок;
  • Мобилдик кардарлар үчүн кайра туташуу убактысын кыскартуу үчүн Connection ID колдоосу;
  • Туташуу ашыкча жүктөөнү көзөмөлдөө үчүн өркүндөтүлгөн механизмдерди туташтыруу мүмкүнчүлүгү;
  • Пакеттерди жөнөтүүнүн оптималдуу интенсивдүүлүгүн камсыз кылуу үчүн ар бир багытта өткөрүү жөндөмдүүлүгүн болжолдоо ыкмаларын колдонуу, пакеттердин жоготуусу болгон тыгын абалына өтүүнүн алдын алуу;
  • Сезимдүү өсүш TCP менен салыштырганда аткаруу жана өткөрүү жөндөмдүүлүгү. YouTube сыяктуу видео кызматтары үчүн QUIC видеону кайтаруу операцияларын 30% га кыскартат.

Source: opennet.ru

Комментарий кошуу