Glossar · A bis Z
Glossar
Die wichtigsten Begriffe rund um DDS und ZeroDDS in ein bis zwei Sätzen erklärt — ohne Spec-Fachjargon, mit Querverweisen auf die Erklär-Seiten.
A
- API (Application Programming Interface)
- Eine vereinbarte Schnittstelle, über die ein Programm Funktionen eines anderen nutzen kann. ZeroDDS hat APIs in Rust, C, C++, C#, Java, Python und TypeScript.
- Apache 2.0
- Die Open-Source-Lizenz, unter der ZeroDDS veröffentlicht wird. Erlaubt kommerzielle Nutzung ohne Pflicht, eigene Änderungen offenzulegen.
B
- Bare-Metal
- Software, die ohne Betriebssystem direkt auf Hardware läuft, typisch auf Mikrocontrollern. ZeroDDS hat einige Crates, die bare-metal-tauglich sind.
- Best-Effort
- Eine QoS-Einstellung in DDS: „Schick die Daten raus, wenn was verloren geht, egal." Gegenteil von reliable.
C
- CDR (Common Data Representation)
- Das standardisierte Byte-Format, in dem DDS-Daten über das Netz fließen. Plattform-unabhängig (kein Endianness-Drama, keine Padding-Überraschung).
- Crate
- In Rust: ein Software-Paket. ZeroDDS besteht aus über 100 Crates, die einzeln genutzt oder im Workspace gebaut werden.
- Cyclone DDS
- Eine konkurrierende DDS-Implementierung, in C/C++ geschrieben, Eclipse-2.0-Lizenz. Wird von ROS 2 als Default-Backend genutzt.
D
- DCPS (Data-Centric Publish/Subscribe)
- Die „obere" DDS-API-Schicht, mit der Anwendungs-Code direkt arbeitet. Definiert Topics, Reader, Writer, QoS.
- DDS (Data Distribution Service)
- Der OMG-Standard für Echtzeit-Pub/Sub-Kommunikation zwischen Maschinen. Siehe ausführlich → Was ist DDS?
- DDSI-RTPS (DDSI Real-Time Publish-Subscribe Wire Protocol)
- Das Wire-Protokoll, mit dem DDS-Implementierungen sich über UDP/TCP austauschen. Wenn ZeroDDS und Cyclone DDS sich verstehen, liegt's an DDSI-RTPS.
- Discovery
- Der Vorgang, mit dem DDS-Teilnehmer:innen sich gegenseitig im Netz finden, ohne dass eine zentrale Stelle nötig ist. Geschieht automatisch beim Start.
E
- Endianness
- Die Frage, in welcher Byte-Reihenfolge eine Zahl im Speicher liegt (links-zuerst oder rechts-zuerst). Macht Plattform- übergreifende Daten kompliziert; CDR löst das.
F
- FastDDS
- Eine konkurrierende DDS-Implementierung von eProsima, in C++, Apache 2.0. Default-Backend von ROS 2 vor Cyclone DDS.
- Ferrocene
- Eine zertifizierte Variante des Rust-Compilers für Safety- kritische Anwendungen (Auto, Bahn, Luftfahrt). ZeroDDS ist Ferrocene-25.08.0-aligned.
I
- IDL (Interface Definition Language)
- Eine kleine Sprache, in der man die Form von Daten und Schnittstellen einmal beschreibt — der Code für jede Programmier- sprache wird daraus generiert. → Was ist MDE?
L
- Liveliness
- Eine QoS: „Sag mir, wenn ein Writer sich nicht mehr meldet, damit ich seinen Tod mitkriege." Wichtig in Sicherheits-relevanten Systemen.
M
- MDE (Model-Driven Engineering)
- Der Ansatz, ein Modell als einzige Wahrheitsquelle zu pflegen und Code aus dem Modell zu generieren. → Was ist MDE?
N
- no_std
- Rust-Eigenschaft: kein Standard-Library, kein Heap. Wird für Embedded-Targets gebraucht. ZeroDDS-Foundation und einige Layer-1-Crates sind no_std-kompatibel.
O
- OMG (Object Management Group)
- Das Standardisierungs-Gremium, das DDS, IDL und CORBA spezifiziert. Sitz: Boston, USA.
P
- Partition
- Eine QoS: „Logische Trennung der Topics in Gruppen." Damit z.B. der gleiche Topic-Name in zwei unabhängigen Sub-Systemen koexistieren kann.
- Pub/Sub (Publish/Subscribe)
- Kommunikations-Muster: einer schreibt, viele lesen, ohne dass die sich kennen. Gegenteil von Punkt-zu-Punkt-Kommunikation. → Was ist DDS?
- Pure Rust
- Software, die nur aus Rust-Code besteht (kein C/C++ als Dependency). ZeroDDS ist Pure Rust außer einigen Crypto- Primitives.
Q
- QoS (Quality of Service)
- Steuerungs-Schraube für DDS: Wie sollen Daten verteilt werden? Schnell-aber-unsicher, zuverlässig-aber-langsamer, mit-Verlauf, ohne-Verlauf etc. DDS hat ~22 QoS-Policies.
R
- Reader (DataReader)
- Der Empfangs-Endpunkt eines Topics. Eine App kann beliebig viele Reader auf verschiedene Topics haben.
- Reliable
- Eine QoS: „Verloren gegangene Daten werden wieder gesendet, bis sie ankommen." Gegenteil von best-effort.
- RTI Connext
- Die kommerzielle DDS-Implementierung von Real-Time Innovations (USA). Lizenz-Modell, ~25.000 € pro Entwickler-Sitz pro Jahr.
- Rust
- Eine moderne, speicher-sichere Programmier-Sprache, in der ZeroDDS geschrieben ist. Ohne Garbage Collector, also echtzeit- tauglich.
S
- Sample
- Ein einzelner Daten-Punkt in einem Topic. Beispiel: ein Topic Tankfüllstand hat alle 100 ms ein neues Sample.
- SEDP (Simple Endpoint Discovery Protocol)
- Wie DDS herausfindet, welche Topics, Reader und Writer im Netz existieren. Läuft nach SPDP.
- SPDP (Simple Participant Discovery Protocol)
- Wie DDS herausfindet, wer überhaupt im Netz ist. Erste Phase der Discovery, läuft per UDP-Multicast.
T
- Topic
- Ein benannter Daten-Strom in DDS. Beispiel: Tankfüllstand, Geschwindigkeit, KameraBild. Reader abonnieren Topics, Writer senden auf Topics.
W
- Writer (DataWriter)
- Der Sende-Endpunkt eines Topics. Eine App kann beliebig viele Writer auf verschiedene Topics haben.
X
- XTypes (Extensible and Dynamic Topic Types)
- Eine OMG-Erweiterung von DDS: erlaubt, dass Topic-Typen sich über die Zeit weiter-entwickeln, ohne dass alte Reader und neue Writer brechen.
Z
- Zenoh
- Eine alternative Echtzeit-Daten-Verteil-Schicht, die DDS-konzeptverwandt ist, aber für Cloud + Edge optimiert. ZeroDDS hat eine Zenoh-Bridge.
- Zero PDE (Product Definition Environment)
- Das Modellierungs-Werkzeug aus der Zero-Familie, mit dem Architekturen modelliert und Code dafür generiert wird.
Weiter: Was ist DDS? · Was ist ZeroDDS? · Was ist MDE?