Skip to content

连接

在QUIC协议中,连接被剥离出数据传输的过程。

连接作为流的容器,维护两个端点之间的共同状态、参数和上下文。

阅读完此页面后,你将了解如何建立或定制一个XQUIC连接。

你也可以使用下面的表格导航相关功能:

创建连接

在QUIC协议中,连接是发送或接收数据的前提条件。它所维持的相关状态和上下文是数据传输的基础,尽管连接不会直接参与数据传输。

创建连接的内部接口是xqc_conn_create

在客户端中,可以更方便地使用[xqc_connect]触发连接过程。

销毁连接

通常情况下,在xqc_engine_destroy过程中通过xqc_conn_destroy销毁连接。

但在特殊情况下,需要手动关闭连接。

详情参见xqc_conn_close

创建H3连接

在某些情况下,你可能想要创建一个H3连接,XQUIC封装了一个用于创建H3连接的接口,可以在客户端中使用APIxqc_h3_connect来创建H3连接。

销毁H3连接

当前,HTTP/3连接会在回调函数conn_close_notify中的xqc_h3_conn_close_notify中关闭并销毁,使用APIxqc_h3_conn_destroy

进一步的应用层回调可以通过h3_conn_close_notify回调处理。

连接迁移

XQUIC默认启用被动连接迁移。

每当主机处理来自现有连接但具有未注册对端地址的数据包时,都会启动重新绑定过程。

你可以在传输过程中手动更改文件描述符来测试连接迁移,并观察连接的行为。