MSQuic
![]() | |
Разработчик(и) | Майкрософт |
---|---|
Первоначальный выпуск | 27 ноября 2019 г |
Стабильная версия | v2.2.4 / 16 октября 2023 г |
Репозиторий | |
Написано в | С , С++ |
Операционная система | Windows 11 и более поздние версии, Windows Server, Linux , программное обеспечение Xbox Series X/S |
Платформа | Кросс-платформенный |
Тип | Библиотека программного обеспечения |
Лицензия | МОЯ лицензия |
MsQuic — это с открытым исходным кодом, бесплатная реализация протокола IETF QUIC написанная на C. [1] который официально поддерживается на платформах Microsoft Windows (включая Server ), Linux и Xbox . Проект также предоставляет библиотеки для macOS и Android , которые не поддерживаются. [2] Она разработана как кроссплатформенная библиотека QUIC общего назначения, оптимизированная для клиентских и серверных приложений, обеспечивающая максимальную пропускную способность и минимальную задержку. К концу 2021 года кодовая база насчитывала более 200 000 строк производственного кода, из них 50 000 строк «основного» кода. [3] возможность совместного использования на разных платформах. Исходный код доступен под лицензией MIT License и доступен на GitHub . [4]
Среди его функций, в частности, — поддержка асинхронного ввода-вывода , масштабирования на стороне приема (RSS), объединения отправки и получения UDP , а также миграции соединений, которые сохраняют соединения между клиентом и сервером для преодоления изменений IP-адреса или порта клиента. [5] например, при перемещении по мобильным сетям. [6]
Оба протокола HTTP/3 [7] и для малого и среднего бизнеса стеки [8] Microsoft Windows используют MsQuic, с msquic.sys
обеспечение функциональности режима ядра . Поскольку режим ядра зависит от Schannel для TLS 1.3 , режим ядра не поддерживает 0-RTT. [9]
Программы пользовательского режима могут реализовать MsQuic с поддержкой 0-RTT через msquic.dll
, который можно собрать из исходного кода или загрузить как общую библиотеку через двоичные выпуски в репозитории. [9]
Поддержка Microsoft Game Development Kit делает MsQuic возможным как на Xbox, так и на Windows.
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Чимпану, Каталин. «Внутренняя библиотека Microsoft с открытым исходным кодом для обработки соединений QUIC» . ЗДНет .
- ^ Джонс, Люк (29 апреля 2020 г.). «Внутренняя библиотека подключений QUIC от Microsoft теперь имеет открытый исходный код» . ВинБуззер .
- ^ Бэнкс, Ник (7 декабря 2021 г.). «QUIC@Майкрософт» . ЭПИК 2021 . Проверено 11 июля 2022 г.
- ^ «Майкрософт/мскик» . 7 ноября 2020 г. – через GitHub.
- ^ Лопес, Рауль ХК; Франкейра, Вирджиния, Нидерланды; Рэнд, Дункан (2019). «Интеграция и оценка QUIC и TCP-BBR при передаче научных данных на большие расстояния» . Сеть конференций EPJ . 214 : 08026. Бибкод : 2019EPJWC.21408026L . doi : 10.1051/epjconf/201921408026 . S2CID 203699308 .
- ^ «Функции библиотеки MsQuic» . Сентябрь 2020 г. – через GitHub.
- ^ Шарвуд, Саймон. «QUIC, покопайтесь: Microsoft открывает исходный код MsQuic, его реализация созданного Google TCP-убийцы QUIC» . www.theregister.com .
- ^ «SMB через QUIC» . Документы Майкрософт . 18 мая 2023 г.
- ^ Перейти обратно: а б msquic/Platforms.md , Microsoft, 11 июля 2022 г. , получено 12 июля 2022 г.