]> git.ipfire.org Git - thirdparty/haproxy.git/commit
MEDIUM: mux-quic: implement be connection reuse
authorAmaury Denoyelle <adenoyelle@haproxy.com>
Tue, 22 Jul 2025 09:36:34 +0000 (11:36 +0200)
committerAmaury Denoyelle <adenoyelle@haproxy.com>
Wed, 23 Jul 2025 13:45:09 +0000 (15:45 +0200)
commit3217835b1df6a4cf9e56c310b0a8e2dd7d5981bc
tree278f5f0299a365ad796c68476074ecd398832803
parent3bf37596bac7afe3e9f6deb43db6aa8667041930
MEDIUM: mux-quic: implement be connection reuse

Implement support for QUIC connection reuse on the backend side. The
main change is done during detach stream operation. If a connection is
idle, it is inserted in the server list. Else, it is stored in the
server avail tree if there is room for more streams.

For non idle connection, qmux_avail_streams() is reused to detect that
stream flow-control limit is not yet reached. If this is the case, the
connection is not inserted in the avail tree, so it cannot be reuse,
even if flow-control is unblocked later by the peer. This latter point
could be improved in the future.

Note that support for QUIC private connections is still missing. Reuse
code will evolved to fully support this case.
src/mux_quic.c