A block unanswered for this long — or for IBB_PARK_FACTOR times the
session's measured ack latency, whichever is longer — is taken to be
parked at the receiver, which is withholding its ack on purpose, rather
than queued on our side. It stops counting against the session budget:
the budget bounds what waits in the connection's send queue, and a parked
block is not waiting there. Its stream's own window still holds it.
Nothing is parked before the session has timed its first ack.
A block unanswered for this long — or for IBB_PARK_FACTOR times the session's measured ack latency, whichever is longer — is taken to be parked at the receiver, which is withholding its ack on purpose, rather than queued on our side. It stops counting against the session budget: the budget bounds what waits in the connection's send queue, and a parked block is not waiting there. Its stream's own window still holds it. Nothing is parked before the session has timed its first ack.