Skip to main content

Module node

Module node 

Source
Expand description

GBP-layer group node.

Responsibilities of this layer (analogous to IP):

  • Decode incoming CBOR frames and validate version, group_id, epoch and transition_id per the GBP spec.
  • Enforce a per-(stream_type, stream_id) replay window via sequence_no.
  • Open the AEAD payload through the Sealer trait (typically backed by gbp-mls).
  • Surface decoded payloads to sub-protocols as Event::PayloadReceived; the sub-protocol layer is responsible for message-level semantics.
  • Drive the control plane: handle EXECUTE_TRANSITION, request resync on EPOCH_MISMATCH, etc.

Out of scope: parsing GTP / GAP / GSP payloads, GTP idempotency, GAP key_phase validation and mute-list tracking. Those concerns belong to the per-sub-protocol clients in the gtp-protocol, gap-protocol and gsp-protocol crates.

Structs§

DeliveredPayload
Information about a payload delivered by GBP to a sub-protocol.
GroupNode
GBP-layer node.
OutboundFrame
A wire-ready outbound frame: the recipient and its serialised CBOR bytes.

Enums§

Event
Events surfaced by the GBP layer.
NodeError
Errors raised by GroupNode.

Traits§

Sealer
Trait abstracting the AEAD seal / open operations.