Reference

show quic

Available since

  • HAProxy 2.7
  • HAProxy Enterprise 2.7r1

Display details on active QUIC frontend connections.

Description Jump to heading

The show quic command displays details on active QUIC frontend connections.

An optional argument can be specified to control the verbosity. You can specify either oneline or full (both introduced in version 2.8), or a comma-delimited list of values that determine the output (introduced in version 3.0). By default, connections on closing or draining state are not displayed. To include them in the output, specify the additional argument all.

This command requires a permission level of operator or admin.

This command is available only on the QUIC-enabled load balancer. For details, see HTTP/3.

Examples Jump to heading

Show active connections in single-line format.

nix
echo "show quic" | \
sudo socat stdio tcp4-connect:127.0.0.1:9999
nix
echo "show quic" | \
sudo socat stdio tcp4-connect:127.0.0.1:9999
output
text
# conn/frontend state in_flight infl_p lost_p from to local & remote CIDs
0x55640121edd0[00]/ft_web ESTAB 0 0 0 78.2.87.205:39160 172.31.39.255:443 b254b4d91c508339
0x7fd2b8052380[01]/ft_web ESTAB 0 0 0 99.161.85.162:57929 172.31.39.255:443 642481da17fe200c
output
text
# conn/frontend state in_flight infl_p lost_p from to local & remote CIDs
0x55640121edd0[00]/ft_web ESTAB 0 0 0 78.2.87.205:39160 172.31.39.255:443 b254b4d91c508339
0x7fd2b8052380[01]/ft_web ESTAB 0 0 0 99.161.85.162:57929 172.31.39.255:443 642481da17fe200c

As of HAProxy version 3.0 and HAProxy Enterprise version 3.0, you can specify a particular connection’s hexadecimal address to see the information for only that connection. In the previous example, these hexadecimal addresses are 0x55640121edd0 and 0x7fd2b8052380. Specfy an address on the show quic command to narrow the output.

Show all connections in multi-line format.

As of HAProxy version 2.8 and HAProxy Enterprise version 2.8r1, two additional verbosity options are available, oneline and full. The show quic oneline will show the output in a single-line format and show quic full command will show all information about active QUIC connections.

Show active connections in single-line format.

nix
echo "show quic oneline" | \
sudo socat stdio tcp4-connect:127.0.0.1:9999
nix
echo "show quic oneline" | \
sudo socat stdio tcp4-connect:127.0.0.1:9999
output
text
# conn/frontend state in_flight infl_p lost_p Local Address Foreign Address local & remote CIDs
0x7fd6fc057070[01]/mysite ESTAB 0 0 0 192.168.56.20:443 192.168.56.1:63001 dcac8f57cf114e79 eb5100
output
text
# conn/frontend state in_flight infl_p lost_p Local Address Foreign Address local & remote CIDs
0x7fd6fc057070[01]/mysite ESTAB 0 0 0 192.168.56.20:443 192.168.56.1:63001 dcac8f57cf114e79 eb5100

Show all connections in multi-line format.

nix
echo "show quic full all" | \
sudo socat stdio tcp4-connect:127.0.0.1:9999
nix
echo "show quic full all" | \
sudo socat stdio tcp4-connect:127.0.0.1:9999
output
text
0x7fd6fc0557e0[00]: scid=808512a0ce1efa02........................ dcid=25bba7..................................
loc. TPs: odcid=78388e56de6e49b0 iscid=808512a0ce1efa02
midle_timeout=30000ms mudp_payload_sz=2048 ack_delay_exp=3 mack_delay=25ms act_cid_limit=8
md=1687140 msd_bidi_l=16380 msd_bidi_r=16380 msd_uni=16380 ms_bidi=100 ms_uni=3
(no_act_migr,stless_rst_tok)
rem. TPs: iscid=25bba7
midle_timeout=30000ms mudp_payload_sz=65527 ack_delay_exp=3 mack_delay=20ms act_cid_limit=8
md=25165824 msd_bidi_l=12582912 msd_bidi_r=1048576 msd_uni=1048576 ms_bidi=16 ms_uni=16
(no_act_migr)
st=opened mux=ready expire=28s
fd=23 local_addr=192.168.56.20:443 foreign_addr=192.168.56.1:58805
[initl] rx.ackrng=1 tx.inflight=0 [hndshk] rx.ackrng=1 tx.inflight=0
[01rtt] rx.ackrng=1 tx.inflight=0
srtt=10 rttvar=10 rttmin=5 ptoc=0 cwnd=15065 mcwnd=15065 sentpkts=12 lostpkts=0
| stream=3 off=0 ack=17
output
text
0x7fd6fc0557e0[00]: scid=808512a0ce1efa02........................ dcid=25bba7..................................
loc. TPs: odcid=78388e56de6e49b0 iscid=808512a0ce1efa02
midle_timeout=30000ms mudp_payload_sz=2048 ack_delay_exp=3 mack_delay=25ms act_cid_limit=8
md=1687140 msd_bidi_l=16380 msd_bidi_r=16380 msd_uni=16380 ms_bidi=100 ms_uni=3
(no_act_migr,stless_rst_tok)
rem. TPs: iscid=25bba7
midle_timeout=30000ms mudp_payload_sz=65527 ack_delay_exp=3 mack_delay=20ms act_cid_limit=8
md=25165824 msd_bidi_l=12582912 msd_bidi_r=1048576 msd_uni=1048576 ms_bidi=16 ms_uni=16
(no_act_migr)
st=opened mux=ready expire=28s
fd=23 local_addr=192.168.56.20:443 foreign_addr=192.168.56.1:58805
[initl] rx.ackrng=1 tx.inflight=0 [hndshk] rx.ackrng=1 tx.inflight=0
[01rtt] rx.ackrng=1 tx.inflight=0
srtt=10 rttvar=10 rttmin=5 ptoc=0 cwnd=15065 mcwnd=15065 sentpkts=12 lostpkts=0
| stream=3 off=0 ack=17

As of HAProxy version 3.0 and HAProxy Enterprise version 3.0, you can specify a comma-delimited list of values that determine the output. The available values are tp, sock, pktns, cc, and mux.

The following are examples specifying those values:

nix
echo "show quic tp" | socat stdio tcp4-connect:127.0.0.1:9999
* 0x7f44d3b356a0[00]: scid=afa23221abf0a878........................ dcid=d473e9..................................
loc. TPs: odcid=0917fd0b378fc3ae5b761af255 iscid=afa23221abf0a878
midle_timeout=30000ms mudp_payload_sz=2048 ack_delay_exp=3 mack_delay=25ms act_cid_limit=8
md=1687140 msd_bidi_l=16380 msd_bidi_r=16380 msd_uni=16380 ms_bidi=100 ms_uni=3
(no_act_migr,stless_rst_tok)
rem. TPs: iscid=d473e9
midle_timeout=30000ms mudp_payload_sz=65527 ack_delay_exp=3 mack_delay=20ms act_cid_limit=8
md=25165824 msd_bidi_l=12582912 msd_bidi_r=1048576 msd_uni=1048576 ms_bidi=16 ms_uni=16
(no_act_migr) versions:chosen=0x00000001,negotiated=0x00000001
st=opened mux=ready expire=04s
nix
echo "show quic tp" | socat stdio tcp4-connect:127.0.0.1:9999
* 0x7f44d3b356a0[00]: scid=afa23221abf0a878........................ dcid=d473e9..................................
loc. TPs: odcid=0917fd0b378fc3ae5b761af255 iscid=afa23221abf0a878
midle_timeout=30000ms mudp_payload_sz=2048 ack_delay_exp=3 mack_delay=25ms act_cid_limit=8
md=1687140 msd_bidi_l=16380 msd_bidi_r=16380 msd_uni=16380 ms_bidi=100 ms_uni=3
(no_act_migr,stless_rst_tok)
rem. TPs: iscid=d473e9
midle_timeout=30000ms mudp_payload_sz=65527 ack_delay_exp=3 mack_delay=20ms act_cid_limit=8
md=25165824 msd_bidi_l=12582912 msd_bidi_r=1048576 msd_uni=1048576 ms_bidi=16 ms_uni=16
(no_act_migr) versions:chosen=0x00000001,negotiated=0x00000001
st=opened mux=ready expire=04s
nix
echo "show quic sock" | socat stdio tcp4-connect:127.0.0.1:9999
* 0x7f44d3b36670[01]: scid=36416af6fda6c5d2........................ dcid=47e1d4..................................
st=opened mux=ready expire=18s
fd=71 local_addr=172.22.0.5:443 foreign_addr=172.22.0.1:40203
nix
echo "show quic sock" | socat stdio tcp4-connect:127.0.0.1:9999
* 0x7f44d3b36670[01]: scid=36416af6fda6c5d2........................ dcid=47e1d4..................................
st=opened mux=ready expire=18s
fd=71 local_addr=172.22.0.5:443 foreign_addr=172.22.0.1:40203
nix
echo "show quic pktns" | socat stdio tcp4-connect:127.0.0.1:9999
* 0x7f44d3b36670[01]: scid=36416af6fda6c5d2........................ dcid=47e1d4..................................
st=opened mux=ready expire=07s
[01rtt] rx.ackrng=1 tx.inflight=0
nix
echo "show quic pktns" | socat stdio tcp4-connect:127.0.0.1:9999
* 0x7f44d3b36670[01]: scid=36416af6fda6c5d2........................ dcid=47e1d4..................................
st=opened mux=ready expire=07s
[01rtt] rx.ackrng=1 tx.inflight=0
nix
echo "show quic cc" | socat stdio tcp4-connect:127.0.0.1:9999
* 0x7f44d3b356a0[02]: scid=6efe15fc4097ac7d........................ dcid=5ed3d6..................................
st=opened mux=ready expire=27s
srtt=1 rttvar=0 rttmin=1 ptoc=0 cwnd=17093 mcwnd=17093 sentpkts=13 lostpkts=0 reorderedpkts=0
nix
echo "show quic cc" | socat stdio tcp4-connect:127.0.0.1:9999
* 0x7f44d3b356a0[02]: scid=6efe15fc4097ac7d........................ dcid=5ed3d6..................................
st=opened mux=ready expire=27s
srtt=1 rttvar=0 rttmin=1 ptoc=0 cwnd=17093 mcwnd=17093 sentpkts=13 lostpkts=0 reorderedpkts=0
nix
echo "show quic mux" | socat stdio tcp4-connect:127.0.0.1:9999
* 0x7f44d3b356a0[02]: scid=6efe15fc4097ac7d........................ dcid=5ed3d6..................................
st=opened mux=ready expire=16s
qcc=0x0x7f44cde23090 flags=0x0 sc=0 hreq=0
qcs=0x0x7f44cde36c60 id=2 flags=0x0 st=OPN rxoff=29
qcs=0x0x7f44cde36930 id=3 flags=0x0 st=OPN txoff=17
qcs=0x0x7f44cde36df0 id=6 flags=0x0 st=OPN rxoff=1
qcs=0x0x7f44cde0c050 id=10 flags=0x0 st=OPN rxoff=1
nix
echo "show quic mux" | socat stdio tcp4-connect:127.0.0.1:9999
* 0x7f44d3b356a0[02]: scid=6efe15fc4097ac7d........................ dcid=5ed3d6..................................
st=opened mux=ready expire=16s
qcc=0x0x7f44cde23090 flags=0x0 sc=0 hreq=0
qcs=0x0x7f44cde36c60 id=2 flags=0x0 st=OPN rxoff=29
qcs=0x0x7f44cde36930 id=3 flags=0x0 st=OPN txoff=17
qcs=0x0x7f44cde36df0 id=6 flags=0x0 st=OPN rxoff=1
qcs=0x0x7f44cde0c050 id=10 flags=0x0 st=OPN rxoff=1

See also Jump to heading

Do you have any suggestions on how we can improve the content of this page?