Skip to main content

Crate comnoq

Crate comnoq 

Source
Expand description

QUIC implementation based on quinn-proto.

Modules§

congestion
Logic for controlling the rate at which data is sent
crypto
Traits and implementations for the QUIC cryptography protocol
h3h3
HTTP/3 support via h3.
n0_nat_traversal
n0’s (https://n0.computer) NAT Traversal protocol implementation.

Structs§

Accept
Future produced by Endpoint::accept.
AckFrequencyConfig
Parameters for controlling the peer’s acknowledgement frequency
AddressDiscovery
Stream produced by Path::observed_external_addr.
ApplicationClose
Reason given by an application for closing the connection
Chunk
A chunk of data from the receive stream
ClientBuilderrustls
Helper to construct an Endpoint for use with outgoing connections only.
ClientConfig
Configuration for outgoing connections
Closed
State of a Connection at the moment it was closed.
ClosedPath
Error indicating that a path has not been opened or has already been abandoned
ClosedStream
Error indicating that a stream has not been opened or has already been finished or reset
Connecting
In-progress connection attempt future
Connection
A QUIC connection.
ConnectionClose
Reason given by the transport for closing the connection
ConnectionId
Protocol-level identifier for a connection.
ConnectionStats
Connection statistics.
DecryptedInitial
Decrypted payload of a QUIC Initial packet
Endpoint
A QUIC endpoint.
EndpointConfig
Global configuration for the endpoint, affecting all connections
EndpointStats
Statistics on Endpoint activity
FourTuple
Identifies a network path by the combination of remote and local addresses
FrameStats
Number of frames transmitted or received of each frame type.
IdleTimeout
Maximum duration of inactivity to accept before timing out the connection
Incoming
An incoming connection for which the server has not yet begun its part of the handshake.
IncomingFuture
Basic adapter to let Incoming be await-ed like a Connecting.
Lagged
The receiver lagged too far behind.
MtuDiscoveryConfig
Parameters governing MTU discovery.
MultipathNotNegotiated
Error when the multipath extension was not negotiated, but attempted to be used.
NatTraversalUpdates
A stream of NAT traversal updates for a connection.
NoneTokenLog
Null implementation of TokenLog, which never accepts tokens
NoneTokenStore
Null implementation of TokenStore, which does not store any tokens
ObservedExternalAddr
Watches the external address reported by the peer for this connection.
OnClosed
Future returned by Connection::on_closed.
OpenPath
Future produced by crate::Connection::open_path.
Path
An open path in a multipath-enabled connection.
PathEvents
A stream of PathEvents for all paths in a connection.
PathId
Id representing different paths when using multipath extension
PathStats
Statistics related to a transmission path.
QlogConfigqlog
Configuration for qlog trace logging.
RecvStream
A stream that can only be used to receive data
SendStream
A stream that can only be used to send data.
ServerBuilderrustls
Helper to construct an Endpoint for use with incoming connections.
ServerConfig
Parameters governing incoming connections
StdSystemTime
Default implementation of TimeSource
StreamId
Identifier for a stream within a particular connection
TokenMemoryCache
TokenStore implementation that stores up to N tokens per server name for up to a limited number of server names, in-memory
TokenReuseError
Error for when a validation token may have been reused
Transmit
An outgoing packet
TransportConfig
Parameters governing the core QUIC state machine
TransportErrorCode
Transport-level error code
UdpStats
Statistics about UDP datagrams transmitted or received on a connection.
UnorderedRecvStream
A stream that can be used to receive data out-of-order.
ValidationTokenConfig
Configuration for sending and handling validation tokens in incoming connections
VarInt
An integer less than 2^62
VarIntBoundsExceeded
Error returned when constructing a VarInt from a value >= 2^62
WeakConnectionHandle
Weak handle for a Connection that does not keep it alive.
WeakPathHandle
Weak handle for a Path that does not keep the connection alive.
ZeroRttAccepted
Future that completes when a connection is fully established.

Enums§

ClosePathError
Errors triggered when abandoning a path
ConfigError
Errors in the configuration of an endpoint
ConnectError
Errors in the parameters being used to create a new connection
ConnectionError
Reasons why a connection might be lost
Dir
Whether a stream communicates data in both directions or only from the initiator
EcnCodepoint
Explicit congestion notification codepoint
FrameType
OpenStreamError
Errors that can arise when trying to open a stream
PathAbandonReason
Reason for why a path was abandoned.
PathError
Errors that might trigger a path being closed
PathEvent
Application events about paths
PathStatus
The QUIC-MULTIPATH path status
ReadError
Errors that arise from reading from a stream.
ReadExactError
Errors that arise from reading from a stream.
ResetError
Errors that arise while waiting for a stream to be reset
SendDatagramError
Errors that can arise when sending a datagram
SetPathStatusError
Error from setting path status
Side
Whether an endpoint was the initiator of a connection
StoppedError
Errors that arise while monitoring for a send stream stop from the peer
WriteError
Errors that arise from writing to a stream

Traits§

ConnectionIdGenerator
Generates connection IDs for incoming connections
EndpointConfigGraviolaExtgraviola
Extension trait for EndpointConfig when the graviola feature is enabled.
NetworkChangeHint
Hints when the caller identifies a network change.
ServerConfigGraviolaExtgraviola
Extension trait for ServerConfig when the graviola feature is enabled.
TimeSource
Object to get current SystemTime
TokenLog
Responsible for limiting clients’ ability to reuse validation tokens
TokenStore
Responsible for storing validation tokens received from servers and retrieving them for use in subsequent connections