AckEcnFrame class
An ACK frame with ECN (Explicit Congestion Notification) counts (RFC 9000 Section 19.3.2).
AckEcnFrame extends AckFrame by adding three ECN counters: ect0Count, ect1Count, and ceCount. These values allow the sender to detect ECN-capable path support and react to congestion experienced (CE) marks.
This frame type (0x03) is used instead of a plain ACK (0x02) when the peer has negotiated ECN support and the received packets carried ECN-capable codepoints.
See also:
Constructors
-
AckEcnFrame({required int largestAcknowledged, int ackDelay = 0, List<
AckRange> ackRanges = const [], int ect0Count = 0, int ect1Count = 0, int ceCount = 0}) - Creates an AckEcnFrame that acknowledges packets and reports ECN counts.
Properties
- ackDelay → int
-
finalinherited
-
ackRanges
→ List<
AckRange> -
finalinherited
- ceCount → int
-
Count of IP packets received with the CE codepoint.
final
- ect0Count → int
-
Count of IP packets received with the ECT(0) codepoint.
final
- ect1Count → int
-
Count of IP packets received with the ECT(1) codepoint.
final
- frameType → int
-
no setteroverride
- hashCode → int
-
The hash code for this object.
no setterinherited
- isAckEliciting → bool
-
Whether this frame is ack-eliciting per RFC 9000 Table 3.
Default is
true; override for non-ack-eliciting frames.no setterinherited - isInFlight → bool
-
Whether this frame counts toward bytes in flight per RFC 9000 Table 3.
Default matches isAckEliciting; override for frames that are not
ack-eliciting but still should not count (e.g., CONNECTION_CLOSE).
no setterinherited
- largestAcknowledged → int
-
finalinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
serialize(
) → Uint8List -
override
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited