Skip to main content

Module networking

Module networking 

Source
Expand description

Types for configuring network channels with serialization formats, transports, etc.

Structs§

EmbeddedTransport
Items cross a channel that the host of an embedded program implements however it likes (a network connection, an in-memory queue, …), keeping the retries R, ordering O, and failure policy F that follow from what the channel declares about each anomaly (() until declared).
NetworkingConfig
A network channel configuration with T as transport backend and S as the serialization backend.
Tcp
Send items across a length-delimited TCP channel.
Udp
Send items across a UDP channel, which does not guarantee delivery or ordering.

Enums§

Bincode
Serialize items using the bincode crate.
Embedded
Leaves serialization of items to code outside of Hydro. Every EMBEDDED channel uses it.
EmbeddedFault
The failure policy of an EMBEDDED channel.
FailStop
A TCP failure policy that stops sending messages after a failed connection.
Lossy
A failure policy that allows messages to be lost.
LossyDelayedForever
A failure policy that treats dropped messages as indefinitely delayed.
NetworkingInfo
Describes the networking configuration for a network channel at the IR level.
NoSer
An unconfigured serialization backend.
TcpFault
The fault model for a TCP connection.
UdpFault
The fault model for a UDP channel.

Constants§

EMBEDDED
A network channel implemented by the host of an embedded program, which chooses how messages travel: a network connection, an in-memory queue, or anything else. The program declares, for each anomaly, whether the host’s channel may introduce it, and the received stream is weakened by each one it may:
TCP
A network channel that uses length-delimited TCP for transport.
UDP
A network channel that uses UDP for transport.

Traits§

EmbeddedFailPolicy
The failure policy an EMBEDDED channel declares: FailStop (never_drops), Lossy (may_drop), or LossyDelayedForever (may_delay_forever).
EmbeddedOrdering
The ordering an EMBEDDED channel declares: TotalOrder (never_reorders) or NoOrder (may_reorder).
EmbeddedRetries
The retries an EMBEDDED channel declares: ExactlyOnce (never_duplicates) or AtLeastOnce (may_duplicate).
NetworkFor
A networking backend implementation that supports items of type T.
TcpFailPolicy
A failure policy for TCP connections, determining how the transport handles connection failures and what ordering guarantees the output stream provides.
TransportKind
A transport backend for network channels.
UdpFailPolicy
A failure policy for UDP channels, determining how the transport handles message loss. Because UDP provides no ordering guarantees, all policies produce NoOrder output streams, and there is no fail_stop option (UDP is connectionless, so there is no connection to fail).