仅使用传输层逻辑 #189
-
请教一下: |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 2 replies
-
是的,TQUIC 支持只使用 QUIC 传输层协议栈而不使用 HTTP/3 应用层逻辑。在使用 TQUIC 时,可以通过配置来指定不使用 HTTP/3,而是使用 QUIC 作为传输层协议。这意味着您可以利用 QUIC 提供的传输层特性,如改进的连接建立时间、连接迁移、流量控制等,而不必绑定到 HTTP/3 的应用层语义。 关于 具体实现时,您可以选择一个适合您应用的 ALPN 字符串,只要确保客户端和服务器使用相同的字符串即可。例如,如果您正在实现一个自定义的协议,您可以将 ALPN 设置为该协议的名称或标识符。 请注意,虽然 TQUIC 支持使用 QUIC 作为传输层而不依赖 HTTP/3,但具体的实现细节(如如何配置 SSL_CTX、如何处理应用层数据等)可能需要根据您的具体需求进行调整。建议参考 TQUIC 的官方文档和示例代码,以获取更详细的指导。 |
Beta Was this translation helpful? Give feedback.
-
RFC 9308介绍了使用QUIC传输协议的注意事项(例如4.4节讨论问题) |
Beta Was this translation helpful? Give feedback.
是的,TQUIC 支持只使用 QUIC 传输层协议栈而不使用 HTTP/3 应用层逻辑。在使用 TQUIC 时,可以通过配置来指定不使用 HTTP/3,而是使用 QUIC 作为传输层协议。这意味着您可以利用 QUIC 提供的传输层特性,如改进的连接建立时间、连接迁移、流量控制等,而不必绑定到 HTTP/3 的应用层语义。
关于
SSL_CTX_set_alpn_protos
的设置,ALPN(Application-Layer Protocol Negotiation)是一个 TLS 扩展,用于在 TLS 握手过程中协商应用层协议。如果您不打算使用 HTTP/3,而是想使用 QUIC 传输层进行自定义的应用层协议,您确实需要设置一个非 HTTP/3 的 ALPN 参数。这样做可以确保客户端和服务器在应用层协议上达成一致,避免协议不匹配的问题。具体实现时,您可以选择一个适合您应用的 ALPN 字符串,只要确保客户端和服务器使用相同的字符串即可。例如,如果您正在实现一个自定义的协议,您可以将 ALPN 设置为该协议的名称或标识符。
请注意,虽然 TQUIC 支持使用 QUIC 作为传输层而不依赖 HTTP/3,但具体的实现细节(如如何配置 SSL_CTX、如何处理应用层数据等)可能需要根据您的具体需求进行调整。建议参考 TQUIC 的官方文档和示例代码,以获取更详细的指导。