Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ConnectionFlowController ¶
type ConnectionFlowController interface { // for sending IsNewlyBlocked() (bool, protocol.ByteCount) // contains filtered or unexported methods }
The ConnectionFlowController is the flow controller for the connection.
func NewConnectionFlowController ¶
func NewConnectionFlowController( receiveWindow protocol.ByteCount, maxReceiveWindow protocol.ByteCount, queueWindowUpdate func(), rttStats *congestion.RTTStats, logger utils.Logger, ) ConnectionFlowController
NewConnectionFlowController gets a new flow controller for the connection It is created before we receive the peer's transport paramenters, thus it starts with a sendWindow of 0.
type StreamFlowController ¶
type StreamFlowController interface { // for sending IsBlocked() (bool, protocol.ByteCount) // for receiving // UpdateHighestReceived should be called when a new highest offset is received // final has to be to true if this is the final offset of the stream, as contained in a STREAM frame with FIN bit, and the RST_STREAM frame UpdateHighestReceived(offset protocol.ByteCount, final bool) error // contains filtered or unexported methods }
A StreamFlowController is a flow controller for a QUIC stream.
func NewStreamFlowController ¶
func NewStreamFlowController( streamID protocol.StreamID, contributesToConnection bool, cfc ConnectionFlowController, receiveWindow protocol.ByteCount, maxReceiveWindow protocol.ByteCount, initialSendWindow protocol.ByteCount, queueWindowUpdate func(protocol.StreamID), rttStats *congestion.RTTStats, logger utils.Logger, ) StreamFlowController
NewStreamFlowController gets a new flow controller for a stream
Click to show internal directories.
Click to hide internal directories.