Expand description
MessageBuilder — Submessage-Aggregation in ein UDP-Datagramm.
Analog zu Fast-DDS RTPSMessageGroup (Recherche WP 1.4). Der Writer
oeffnet einen Builder pro Ziel-Locator-Set, haengt mehrere Submessages
an, und finalisiert zu einem OutboundDatagram. Aggregation spart
RTPS-Header + UDP-Overhead bei SEDP-Announce-all-Runden und kleinen
Samples.
§Flush-Regeln
- Size-Trigger:
try_add_submessagelehnt ab, wenn der Body nicht mehr ins MTU passt. Caller mussfinish()+ neuen Builder. - DATA_FRAG geht alleine: Aufrufer soll DATA_FRAG-Submessages nicht mit anderen bundlen (Fragment ist typisch MTU-nah).
- Piggyback-HEARTBEAT am Ende: Aufrufer haengt HB nach allen
DATAs an, vor
finish(). - Kein INFO_DST: Phase 1 baut ein Datagramm pro Proxy — GuidPrefix ist statisch. INFO_DST wird fuer Multicast-Fan-out mit gemischten Zielen in Phase 2 ergaenzt.
- Kein INFO_TS: Writer hat heute keine Source-Timestamps.
§Ziel-Locators
Ein Datagramm geht an alle targets. Typisch: die Unicast-Locators
des Remote-Readers, oder ein Multicast-Locator. Transport-Layer kippt
es einmal pro Locator auf die Leitung.
Structs§
- Message
Builder - Submessage-Aggregator.
- Outbound
Datagram - Ein fertig aggregiertes Datagramm mit Zielen.
Enums§
- AddError
- Grund, warum
MessageBuilder::try_add_submessageablehnt.
Constants§
- DEFAULT_
MTU - Default-MTU fuer Aggregation (Ethernet 1500 − 20 IP − 8 UDP).