APIdia Launch Partner
Top Description Fields Constructors Methods
jdk.internal.net.http.quic

public final Class QuicCubicCongestionController

extends QuicBaseCongestionController
Class Inheritance
Imports
jdk.internal.net.http.common.Deadline, .Log, .TimeLine, java.util.concurrent.TimeUnit

Implementation of the CUBIC congestion controller based on RFC 9438.
External Specification
https://www.rfc-editor.org/rfc/rfc9438.html

Field Summary

Modifier and TypeField and Description
public static final double
public static final double
private static final double
C

private long
private long
private Deadline
private final QuicRttEstimator
private long
private long
private long
Inherited from jdk.internal.net.http.quic.QuicBaseCongestionController:
bytesInFlightcongestionRecoveryStartTimecongestionWindowdbgTaglockmaxBytesInFlightmaxDatagramSizeminimumWindowssThreshtimeSource

Constructor Summary

AccessConstructor and Description
public
public

Method Summary

Modifier and TypeMethod and Description
pack-priv boolean
pack-priv void
public void
private double
wCubicBytes(long timeNanos)

Inherited from jdk.internal.net.http.quic.QuicBaseCongestionController:
appLimitedcanSendPacketcongestionWindowinCongestionRecoveryinitialWindowisCwndLimitedisPacerLimitedisSlowStartmaxDatagramSizepacerDeadlinepacketAckedpacketDiscardedpacketLostupdateMaxDatagramSizeupdatePacer

Field Detail

ALPHAback to summary
public static final double ALPHA
BETAback to summary
public static final double BETA
Cback to summary
private static final double C
cwndPriorBytesback to summary
private long cwndPriorBytes
kNanosback to summary
private long kNanos
lastFullWindowback to summary
private Deadline lastFullWindow
rttEstimatorback to summary
private final QuicRttEstimator rttEstimator
timeNanosback to summary
private long timeNanos
wEstBytesback to summary
private long wEstBytes
wMaxBytesback to summary
private long wMaxBytes

Constructor Detail

QuicCubicCongestionControllerback to summary
public QuicCubicCongestionController(String dbgTag, QuicRttEstimator rttEstimator)
QuicCubicCongestionControllerback to summary
public QuicCubicCongestionController(TimeLine source, QuicRttEstimator rttEstimator)

Method Detail

congestionAvoidanceAckedback to summary
pack-priv boolean congestionAvoidanceAcked(int packetBytes, Deadline sentTime)

Implements abstract jdk.internal.net.http.quic.QuicBaseCongestionController.congestionAvoidanceAcked.

onCongestionEventback to summary
pack-priv void onCongestionEvent(Deadline sentTime)

Implements abstract jdk.internal.net.http.quic.QuicBaseCongestionController.onCongestionEvent.

packetSentback to summary
public void packetSent(int packetBytes)

Overrides jdk.internal.net.http.quic.QuicBaseCongestionController.packetSent.

Implements jdk.internal.net.http.quic.QuicCongestionController.packetSent.

Doc from jdk.internal.net.http.quic.QuicCongestionController.packetSent.

Update CC with a non-ACK packet

Annotations
@Override
wCubicBytesback to summary
private double wCubicBytes(long timeNanos)