Crate cobalt

Source
Expand description

cobalt is low level a networking library which implements virtual connections over UDP supporting both unreliable messaging and reliable messages with optional in-order delivery.

It is designed for use with real-time, low latency situations, for example action oriented multiplayer games.

The library provides the underlying architecture required for handling and maintaining virtual connections over UDP sockets and takes care of sending raw messages over the established client-server connections with minimal overhead.

Structs§

BinaryRateLimiter
Implementation of a binary state rate limiter for congestion avoidance.
Client
Implementation of a low latency socket client.
Config
Structure defining connection and message configuration options.
Connection
Implementation of a reliable, virtual socket connection.
ConnectionID
Representation of a random ID for connection identification purposes.
NoopPacketModifier
Implementation of a packet modifier which does nothing.
Server
Implementation of a multi-client low latency socket server.
UdpSocket
Non-blocking abstraction over a UDP socket.

Enums§

ClientEvent
Enum of client related network events.
ConnectionEvent
Enum of connection related network events.
ConnectionState
Enum indicating the state of a connection.
MessageKind
Enum for specification of a message handling algorithm.
ServerEvent
Enum of server network events.

Traits§

PacketModifier
Trait describing optional per-packet payload modification logic.
RateLimiter
Trait describing a network congestion avoidance algorithm.
Socket
Trait describing a non-blocking low latency socket.

Type Aliases§

ConnectionMap
Type alias for connection mappings.