flowcontrol

package
v2.0.18+incompatible Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 2, 2021 License: GPL-3.0, MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ConnectionFlowController

type ConnectionFlowController interface {
	// 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 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

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL