mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-08-11 09:37:20 +02:00
BUG/MINOR: quic: Avoid sending useless PADDING frame
This may happen in rare cases with extreme packet loss (30% for both TX and RX) which leads the congestion window to decrease down to its minimal value (two datagrams). Under such circumtances, no ack-eliciting frame can be added to a packet by qc_build_frms(). In this case we must cancel the packet building process if there is no ACK or probe (PING frame) to send.
This commit is contained in:
parent
573b56b774
commit
834399c24a
@ -5758,6 +5758,8 @@ static int qc_do_build_pkt(unsigned char *pos, const unsigned char *end,
|
|||||||
end - pos, &len_frms, pos - beg, qel, qc)) {
|
end - pos, &len_frms, pos - beg, qel, qc)) {
|
||||||
TRACE_PROTO("Not enough room", QUIC_EV_CONN_HPKT,
|
TRACE_PROTO("Not enough room", QUIC_EV_CONN_HPKT,
|
||||||
qc, NULL, NULL, &room);
|
qc, NULL, NULL, &room);
|
||||||
|
if (!ack_frm_len && !qel->pktns->tx.pto_probe)
|
||||||
|
goto no_room;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user