CongestionController class abstract
Abstract congestion controller interface for QUIC connections.
Implementations must track bytes in flight and compute a congestion window
in bytes. All size and bytes parameters are in bytes.
Constructors
Properties
- appLimited → bool
-
Whether the application is currently limited (not sending enough
to fill the congestion window).
no setter
- bytesInFlight → int
-
Bytes currently in flight.
no setter
- congestionWindow → int
-
Current congestion window in bytes.
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
canSend(
int bytes) → bool -
Whether sending
byteswould exceed the congestion window. -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
onAckReceived(
int largestAcked, int newlyAckedBytes, DateTime now) → void - Process an ACK.
-
onECNCEMarked(
int count) → void - React to ECN Congestion Experienced (CE) marks.
-
onPacketLost(
int packetNumber, int lostBytes, DateTime now) → void - React to a detected packet loss.
-
onPacketSent(
int packetNumber, int size) → void - Register a sent packet.
-
onPersistentCongestion(
) → void - React to persistent congestion being declared (RFC 9002 §7.6).
-
onRttSample(
Duration rtt) → void - Record an RTT sample.
-
reset(
) → void - Reset to initial state.
-
setAppLimited(
bool limited) → void - Set the application-limited state.
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited