ngtcp2_echo_example

基于 lib ngtcp2 的 plaintext echo client/server demo。

参考 lib ngtcp2 中单元测试部分的写法,直接跳过了 QUIC handshake 阶段,消除了对 TLS stack 的依赖。
直接将创建出来的 ngtcp2_conn *conn 设置为『已完成握手』的状态。

Requirements

以下依赖的括号中,均为个人采用的版本:

Build

mkdir -p build
cd build/
cmake ..
cmake --build .

Params

以下是一些可以调整的参数:

constexpr size_t N_STREAMS_MAX_ONE_CONN = 3; // 一个 QUIC Connection 中可以创建的 Stream 数量的上限
constexpr size_t N_COALESCE_MAX = 2;         // 将 N_COALESCE_MAX 次 stdin 读取的数据合并发送
void set_default_ngtcp2_transport_params(bool is_server, ngtcp2_transport_params &params) {
    /* ... */
}