このプロジェクトについて

Neqo は、QUIC トランスポートプロトコル、HTTP/3、QPACK の Mozilla による実装です。Rust で記述され、Firefox やその他の Mozilla 製品で使用されています。TLS セキュリティバックエンドとして Mozilla NSS を使用します。このプロジェクトは、組み込みに適したライブラリに加えて、HTTP/3 クライアントとサーバーのテストやデバッグを行うための neqo-client や neqo-server などのコマンドラインツールを提供します。 サーバー機能は明確に実験的なもので、本番環境での使用を意図していません。クライアント側より成熟度が低く、一部のオプションのプロトコル機能や導入向け設定が不足しています。クライアント実装は Firefox が使用する本番環境向けの経路です。 Neqo には複数のデバッグおよび可観測性機能が含まれています。qvis などのツールで QUIC フローを可視化するための QLOG ファイルを生成したり、Wireshark で復号するために SSLKEYLOGFILE を介して TLS キーをエクスポートしたり、トランスポートおよび HTTP/3 モジュール全体で選択的なログ記録を行うために RUST_LOG 環境変数を使用したりできます。README には、Cargo の patch エントリを使用して開発中の Neqo コードを Gecko チェックアウトに統合する方法や、テストのためにローカルの Firefox インスタンスをローカルの neqo-server に接続する方法も記載されています。 このプロジェクトはセマンティックバージョニングに従い、バージョン 1.0 未満の間はマイナーリリースが破壊的変更を示します。詳細なリリース手順は、Firefox の依存関係の更新、Rust クレートのベンダリング、Bugzilla および Phabricator の変更の提出を含め、マイナーリリースとパッチリリースの両方を対象としています。