| Modifier and Type | Method and Description |
|---|---|
| public long | Returns: a new packet number atomically allocated in this spaceReturns a new packet number atomically allocated in this space. |
| public void | |
| public void | |
| public void | |
| public long | Returns: the largest packet number that was acknowledged by the peer in this space.The largest received acked PN is used to compute the packet number that we include in an outgoing Quic packet. |
| public long | Returns: the largest incoming packet number that was successfully processed in this space.The largest processed PN is used to compute the packet number of an incoming Quic packet. |
| public long | Returns: the largest packet number that we have acknowledged in this spaceReturns the largest packet number that we have acknowledged in this space. |
| public long | Returns: the packet number threshold below which packets should be discarded without being processed in this spaceReturns the packet number threshold below which packets should be discarded without being processed in this space. |
| public AckFrame | Returns: The next AckFrame to send to the peer, ornull
if there is nothing to acknowledge.if true, the frame will only be returned if it's overdue onlyOverdue)Get the next ack frame to send. |
| public AckFrame | Returns: The next AckFrame to send to the peer, ornull
if there is nothing to acknowledge.if true, the frame will only be returned if it's overdue onlyOverdue, int maxSize)Get the next ack frame to send. |
| public ReentrantLock | Returns: a lock used by the transmission taskReturns a lock used by the transmission task. |
| public boolean | Returns: true if a packet with that packet number is already being acknowledged (will be, or has been acknowledged)the packet number packetNumber)Returns true if a packet with that packet number is already being acknowledged (will be, or has been acknowledged). |
| public boolean | |
| public QuicPacket. | Returns: the packet number space managed by this classReturns the packet number space managed by this class. |
| public void | packetReceived(QuicPacket.
the received packet packet,the received packet number packetNumber, boolean whether this packet is ack eliciting isAckEliciting)Called when a packet is received. |
| public void | packetSent(QuicPacket
the new packet being retransmitted packet, long the packet number of the previous packet that was not acknowledged,
or -1 if this is not a retransmission previousPacketNumber, long the new packet number under which this packet is being retransmitted packetNumber)Signals that a packet has been sent. |
| public void | |
| public CompletableFuture | Returns: a completable future that will be completed with the time it took, in milliseconds, for the peer to acknowledge the packet that contained the PingFrame (or any packet that was sent after)Used to request sending of a ping frame, for instance, to verify that the connection is alive. |
| public void | retry()
This method is called by |
| public void | |
| public void | updatePeerTransportParameters(long
max_ack_delay peerDelay, long ack_delay_exponent ackDelayExponent)called on application packet space to record peer's transport parameters |
| public void | versionChanged()
This method is called by |
| allocateNextPN | back to summary |
|---|---|
| public long allocateNextPN() Returns a new packet number atomically allocated in this space.
| |
| close | back to summary |
|---|---|
| public void close() Stops retransmission for this packet space. | |
| confirmHandshake | back to summary |
|---|---|
| public void confirmHandshake() Signals that the peer confirmed the handshake. Application space only. | |
| fastRetransmit | back to summary |
|---|---|
| public void fastRetransmit() Immediately retransmit one unacknowledged initial packet
| |
| getLargestPeerAckedPN | back to summary |
|---|---|
| public long getLargestPeerAckedPN() The largest received acked PN is used to compute the packet number that we include in an outgoing Quic packet.
| |
| getLargestProcessedPN | back to summary |
|---|---|
| public long getLargestProcessedPN() The largest processed PN is used to compute the packet number of an incoming Quic packet.
| |
| getLargestSentAckedPN | back to summary |
|---|---|
| public long getLargestSentAckedPN() Returns the largest packet number that we have acknowledged in this space. API Note This is necessarily greater or equal to the packet number returned by getMinPNThreshold().
| |
| getMinPNThreshold | back to summary |
|---|---|
| public long getMinPNThreshold() Returns the packet number threshold below which packets should be discarded without being processed in this space. API Note This corresponds to the largest acknowledged packet number carried in an outgoing ACK frame whose packet number has been acknowledged by the peer. In other words, the largest packet number sent by the peer for which we know that the peer has received an acknowledgement. Note that we need to track the ACK of outgoing packets that contain ACK frames in order to figure out whether a peer knows that a particular packet number has been received and avoid retransmission. However - we don't want ACK frames to grow too big and therefore we can drop some of the information, based on the largestSentAckedPN - see RFC 9000 Section 13.2
| |
| getNextAckFrame | back to summary |
|---|---|
| public AckFrame getNextAckFrame(boolean onlyOverdue) Get the next ack frame to send. This method returns the prepared ack frame if: - it was not sent yet - there are new ack-eliciting packets to acknowledge - optionally, if the ack frame is overdue
| |
| getNextAckFrame | back to summary |
|---|---|
| public AckFrame getNextAckFrame(boolean onlyOverdue, int maxSize) Get the next ack frame to send.
This method returns the prepared ack frame if:
- it was not sent yet
- there are new ack-eliciting packets to acknowledge
- the ack frame size doesn't exceed
| |
| getTransmitLock | back to summary |
|---|---|
| public ReentrantLock getTransmitLock() Returns a lock used by the transmission task. . Used to ensure that the transmission task does not observe partial changes during processing of incoming Versions and Retry packets.
| |
| isAcknowledged | back to summary |
|---|---|
| public boolean isAcknowledged(long packetNumber) Returns true if a packet with that packet number is already being acknowledged (will be, or has been acknowledged).
| |
| isClosed | back to summary |
|---|---|
| public boolean isClosed() Returns true if this packet space is closed.
| |
| packetNumberSpace | back to summary |
|---|---|
| public QuicPacket. Returns the packet number space managed by this class.
| |
| packetReceived | back to summary |
|---|---|
| public void packetReceived(QuicPacket. Called when a packet is received. Causes the next ack frame to be
updated. If a packet contains an
| |
| packetSent | back to summary |
|---|---|
| public void packetSent(QuicPacket packet, long previousPacketNumber, long packetNumber) Signals that a packet has been sent.
This method is called by The retransmitted packet is taken out the pendingRetransmission list and the new packet is inserted in the pendingAcknowledgement list.
| |
| processAckFrame | back to summary |
|---|---|
| public void processAckFrame(AckFrame frame) throws QuicTransportException Processes a received ACK frame.
This method is called by
| |
| requestSendPing | back to summary |
|---|---|
| public CompletableFuture Used to request sending of a ping frame, for instance, to verify that the connection is alive. API Note The returned completable future is actually completed if any packet whose packet number is greater than the packet number that contained the ping frame is acknowledged.
| |
| retry | back to summary |
|---|---|
| public void retry() This method is called by | |
| runTransmitter | back to summary |
|---|---|
| public void runTransmitter() Triggers immediate run of transmit loop.
This method is called by | |
| updatePeerTransportParameters | back to summary |
|---|---|
| public void updatePeerTransportParameters(long peerDelay, long ackDelayExponent) called on application packet space to record peer's transport parameters
| |
| versionChanged | back to summary |
|---|---|
| public void versionChanged() This method is called by | |