Expand description
Crate zerodds-discovery. Safety classification: SAFE.
DDSI-RTPS discovery for ZeroDDS — SPDP, SEDP, TypeLookup service.
§Spec
- DDSI-RTPS 2.5 §8.5 — Simple Discovery Protocol (SPDP/SEDP).
- DDSI-RTPS 2.5 §8.5.3 — SPDP Builtin-Endpoints.
- DDSI-RTPS 2.5 §8.5.4 — SEDP Builtin-Endpoints.
- XTypes 1.3 §7.6.3.3.4 — TypeLookup-Service
(
TL_SVC_REQ_{WRITER,READER}+TL_SVC_REPLY_{WRITER,READER}). - DDS-Security 1.2 §7.4.2 — Stateless + Volatile-Secure
builtin endpoints (sub-module
security).
§Public API
spdp— SPDP beacon sender + receiver +DiscoveredParticipantsCachewithlast_seenlease tracking.sedp— SEDP stack (cache, reader, writer).type_lookup— TypeLookup service server + client + builtin-endpoint GUIDs.security— DDS-Security Stateless + Volatile-Secure builtin-endpoint slots.capabilities::PeerCapabilities— DDSI capability bits.
§Wiring into the DCPS runtime
The discovery primitives are wire-format-complete. Instantiation of
the builtin-endpoint reliable writer/reader pairs lives in the DCPS
layer (crates/dcps/src/runtime.rs):
- SPDP: best-effort writer + reader on
ParticipantBuiltinTopicData. - SEDP: reliable writer + reader on
Publication-/Subscription-BuiltinTopicData. - TypeLookup: reliable writer + reader on the
TypesRequest/TypesReplytopic with a service instance name.
Re-exports§
pub use capabilities::PeerCapabilities;pub use sedp::CacheCaps;pub use sedp::DiscoveredEndpointsCache;pub use sedp::DiscoveredPublication;pub use sedp::DiscoveredSubscription;pub use spdp::DiscoveredParticipant;pub use spdp::DiscoveredParticipantsCache;pub use spdp::SpdpBeacon;pub use spdp::SpdpError;pub use spdp::SpdpReader;
Modules§
- capabilities
- Peer capabilities from the
BuiltinEndpointSetbitfield. - metrics
- Hot-path hook points for
zerodds-monitor(zerodds-monitor-1.1 §2.4). - security
- DDS-Security builtin-endpoint slots — wire layer.
- sedp
- Simple Endpoint Discovery Protocol (SEDP) — DDSI-RTPS 2.5 §8.5.4.
- spdp
- Simple Participant Discovery Protocol (DDSI-RTPS 2.5 §8.5.3).
- type_
lookup - TypeLookup service — XTypes 1.3 §7.6.3.3.4.