Crate sctp_proto

Source
Expand description

Low-level protocol logic for the SCTP protocol

sctp-proto contains a fully deterministic implementation of SCTP protocol logic. It contains no networking code and does not get any relevant timestamps from the operating system. Most users may want to use the futures-based sctp-async API instead.

The sctp-proto API might be of interest if you want to use it from a C or C++ project through C bindings or if you want to use a different event loop than the one tokio provides.

The most important types are Endpoint, which conceptually represents the protocol state for a single socket and mostly manages configuration and dispatches incoming datagrams to the related Association. Association types contain the bulk of the protocol logic related to managing a single association and all the related state (such as streams).

Structs§

Association
Association represents an SCTP association
AssociationEvent
Events sent from an Endpoint to an Association
AssociationHandle
Internal identifier for an Association currently associated with an endpoint
AssociationStats
Association statistics
Chunk
A chunk of data from the stream
ChunkPayloadData
ChunkPayloadData represents an SCTP Chunk of type DATA
Chunks
Chunks is a set of chunks that share the same SSN
ClientConfig
Configuration for outgoing associations
Endpoint
The main entry point to the library
EndpointConfig
Global configuration for the endpoint, affecting all associations
EndpointEvent
Events sent from an Association to an Endpoint
ErrorCauseCode
ErrorCauseCode is a cause code that appears in either a ERROR or ABORT chunk
ServerConfig
Parameters governing incoming associations
Stream
Stream represents an SCTP stream
StreamState
StreamState represents the state of an SCTP stream
Transmit
Incoming/outgoing Transmit
TransportConfig
Config collects the arguments to create_association construction into a single structure

Enums§

AssociationError
Reasons why an association might be lost
ConnectError
Errors in the parameters being used to create a new association
DatagramEvent
Event resulting from processing a single datagram
EcnCodepoint
Explicit congestion notification codepoint
Error
Errors triggered during SCTP association operation
Event
Events of interest to the application
Payload
Payload in Incoming/outgoing Transmit
PayloadProtocolIdentifier
PayloadProtocolIdentifier is an enum for DataChannel payload types
ReliabilityType
Reliability type for stream
Side
Whether an endpoint was the initiator of an association
StreamEvent
Application events about streams

Type Aliases§

AssociationId
Protocol-level identifier for an Association.
StreamId
Identifier for a stream within a particular association