Опубліковано бібліотеку nghttp3 1.0 з реалізацією протоколу HTTP/3

Доступний перший стабільний реліз проекту nghttp3, який розвиває бібліотеку мовою Сі з реалізацією протоколу HTTP/3. Варіант бібліотеки для протоколу HTTP/2, що розвивається тим же проектом, використовується як основа модуля mod_http2, що входить до складу http-сервера Apache. Напрацювання проекту також задіяні у утиліті Curl. Код бібліотеки розповсюджується під ліцензією MIT.

Стандарт HTTP/3 визначає використання протоколу QUIC (Quick UDP Internet Connections) як транспорт для HTTP/2. QUIC є надбудовою над протоколом UDP, що підтримує мультиплексування декількох з'єднань і забезпечує методи шифрування, еквівалентні TLS/SSL. Протокол був створений у 2013 році компанією Google як альтернатива зв'язці TCP+TLS для Web, вирішальної проблеми з великим часом встановлення та узгодження з'єднань у TCP та усуває затримки при втраті пакетів у процесі передачі даних.

У nghttp3 надається незалежна реалізація специфікацій RFC 9114 (HTTP/3 поверх протоколу QUIC), RFC 920 (технологія стиснення заголовків QPACK), RFC 9220 (передача WebSockets поверх HTTP/3) і RFC 9218 (розширювана схема для керування ). Бібліотека не залежить від певних стеків QUIC та підтримує роботу поверх різних реалізацій транспортного протоколу QUIC. При цьому проектом також розвивається власна реалізація протоколу QUIC - ngtcp2, що застосовується за умовчанням. Як бекенд для шифрування даних в ngtcp2 підтримуються quictls, GnuTLS, BoringSSL, Picotls і wolfSSL. Одночасно з nghttp3 1.0 опубліковано перший стабільний реліз ngtcp2 1.0.

Джерело: opennet.ru

Додати коментар або відгук