TECHNISCHER VERGLEICH · 14. OKTOBER 2026
Robotweax SRT und Haivision SRT im Funktionsvergleich
Ein praxisorientierter Vergleich des Releases Robotweax SRT 0.3.0 mit der Haivision-Referenzversion 1.5.7 – keine Behauptung universeller Austauschbarkeit.
01 / SCOPE
So liest du die Matrix
- Ja bedeutet Unterstützung im genannten Umfang. Teilweise bedeutet: Der dokumentierte Teil funktioniert, vollständige Parität zur Referenz wird nicht behauptet.
- Optional erfordert eine Build-Option oder Socket-Einstellung. Experimentell bedeutet ungeprüft oder noch nicht vollständig qualifiziert.
- Die Haivision-Spalte beschreibt den Standard-Build von v1.5.7, sofern keine Build-Option genannt ist. Gleiche API-Namen bedeuten nicht automatisch gleiches Verhalten.
01 / MATRIX
Projekt und Kompatibilitätsbasis
7 MerkmaleTabelle seitlich wischen, um alle vier Spalten zu sehen →
| Funktion | Robotweax SRT 0.3.0 | Haivision SRT 1.5.7 | Umfang / Unterschied |
|---|---|---|---|
| Implementierung | Unabhängige Clean-Room-Implementierung; MIT | Referenzimplementierung (UDT-Herkunft); MPL-2.0 | Robotweax ist kein Fork. |
| Veröffentlichter Release | Release v0.3.0 mit signierten Windows-SDK-Installern | Release v1.5.7 | Der 0.3.0-Release-Tag verweist auf den hier ausgewerteten Quellcode-Commit. |
| Öffentliche SRT-C-API | Alle 72 exportierten Funktionen aus 1.5.7 vorhanden; 46 vollständig, 26 teilweise | Referenz-API | Das Robotweax-Manifest dokumentiert Verhaltensgrenzen. |
| Socket-Optionen | Alle 61 Optionen aus 1.5.7 vorhanden; 53 implementiert, 6 teilweise, 2 buildabhängig | Referenzoptionen | Robotweax ergänzt 15 Optionen in eigenem Namensraum. |
| Shared-Library-ABI | SONAME-Linie 0.3; Neubau gegenüber 0.2 nötig | libsrt SONAME 1.5 | Gleiches API-Ziel bedeutet keine Binärkompatibilität. |
| Qualifizierte Desktop-Plattformen | Linux, macOS, Windows (x64- und ARM64-SDK) | Linux, macOS, Windows | Android/iOS-Prüfungen bei Robotweax sind experimentell. |
| Build und Integration | C++20; CMake 3.20+; eigener Bibliotheksname und pkg-config | C++03-Kern; CMake; libsrt / srt.pc | Das alte srt-Installationslayout ist bei Robotweax optional. |
02 / MATRIX
Protokoll und Transport
8 MerkmaleTabelle seitlich wischen, um alle vier Spalten zu sehen →
| Funktion | Robotweax SRT 0.3.0 | Haivision SRT 1.5.7 | Umfang / Unterschied |
|---|---|---|---|
| HSv5 Caller / Listener / Rendezvous | Ja; Rendezvous benötigt passende Adressfamilien | Ja | IPv4 und IPv6; nicht jede Topologie ist zugesichert. |
| Älterer HSv4-Handshake | Nein; definierter Fehler, kein Downgrade | Ja | Gegenstellen müssen mindestens SRT 1.3.0 unterstützen. |
| Live / Message und File / Stream | Ja | Ja | File-Modus umfasst Teil-I/O sowie sendfile/recvfile. |
| Control- und Sensor-Transport | Robotweax-eigene Profile SRTT_CONTROL und SRTT_SENSOR | Keine Entsprechung | Nicht mit Haivision-Gegenstellen interoperabel. |
| Congestion Control | LiveCC teilweise; FileCC unterstützt; keine eigenen Module | LiveCC, FileCC und eigene C++-Module | Keine vollständige LiveCC-Verhaltensparität behauptet. |
| FEC-Paketfilter | Eingebauter fec-Filter; 2–128 Spalten; keine Plugins | Eingebauter fec-Filter; bis 65.535 Spalten; Plugin-API | Übliche Geometrien interoperieren; nicht der gesamte Wertebereich. |
| MSS | 76–1500 Byte | Ab 76 Byte | Robotweax lehnt Jumbo-MSS ab. |
| Epoll und Socket-Statistik | Vorhanden mit dokumentierten Teilumfängen | Referenzverhalten | UPDATE nur über uwait; Bandbreiten- und Gruppenzähler weichen ab. |
03 / MATRIX
Verschlüsselung und Sicherheit
8 MerkmaleTabelle seitlich wischen, um alle vier Spalten zu sehen →
| Funktion | Robotweax SRT 0.3.0 | Haivision SRT 1.5.7 | Umfang / Unterschied |
|---|---|---|---|
| AES-CTR 128 / 192 / 256 | Ja, Standard | Ja | Vertraulichkeit der Nutzdaten; CTR authentifiziert DATA-Payloads nicht. |
| AES-GCM | Build-Opt-in; Interoperabilität nur für AES-128-GCM Live/Message beansprucht | AEAD-Preview als Build-Opt-in | Andere GCM-Profile nicht pauschal als interoperabel ansehen. |
| Krypto-Backends | OpenSSL 3.x Standard; Mbed TLS 3.6.7+ unter Linux/macOS; BCrypt experimentell | OpenSSL, GnuTLS/Nettle, Mbed TLS, Botan | Mbed TLS ist im 0.3.0-Release für unterstützte 3.6.x-Konfigurationen verfügbar. |
| Build ohne Verschlüsselung | Nein | Ja | Robotweax baut Verschlüsselung immer mit. |
| Session-Authentifizierung | Optionales HMAC-SHA256 v2 für KM und FEC-Parität | Nein | Nur Robotweax-zu-Robotweax; keine DATA-Authentifizierung. |
| Authentifizierte Laufzeit-Steuerpakete | ACP1 experimentell, ungeprüft, eigener Build-Schalter | Nein | Im Standardprofil sind Steuerpakete bei beiden nicht authentifiziert. |
| KM-Rollback-Schutz | Begrenzt auf vier frühere Generationen je Schlüsselparität | Nicht spezifisch dokumentiert | Ältere aufgezeichnete KM bleiben ein offener Punkt (#112). |
| Fuzzing und Sicherheitsrichtlinie | Sieben libFuzzer-Harnesses; SECURITY.md | Keine Harnesses oder SECURITY.md im geprüften Tag | Bestandsaufnahme im Code, keine unabhängige Sicherheitszertifizierung. |
04 / MATRIX
Verbindungsgruppen und Pfade
8 MerkmaleTabelle seitlich wischen, um alle vier Spalten zu sehen →
| Funktion | Robotweax SRT 0.3.0 | Haivision SRT 1.5.7 | Umfang / Unterschied |
|---|---|---|---|
| Gruppen verfügbar | Standardmäßig mitgebaut | Build-Option ENABLE_BONDING, standardmäßig aus | Das Build-Profil ist entscheidend. |
| Broadcast- und Backup-Gruppen | Ja; gewichtete Main/Backup-Pfade mit Probe-Rotation | Ja | Interoperabilität für dokumentierte Profile in beide Richtungen geprüft. |
| Gruppen-Rendezvous / File-Modus | Nein | Kein Gruppen-Rendezvous; Gruppen nur für Live | Gruppen gelten nicht für jeden Transportmodus. |
| Listener-Zulassung | Callback setzt GROUPDOMAIN ungleich null | Callback-Rückgabe 0 lässt zu | Anwendungen müssen angepasst werden. |
| Ungelesene Daten geschlossener Mitglieder | Begrenzte Aufbewahrung | Verworfen | Bewusster Verhaltensunterschied. |
| Pfadkennungen | Optional mit OFF / REQUIRED / IF_OFFERED | Nein | IF_OFFERED auf Listener-Seite kann einfache Peers zulassen. |
| Standby-RTT bei inaktiven Backup-Mitgliedern | Optionale Erweiterung, standardmäßig aus | Nein | Kein DATA-Pfad-Gesundheitssignal und keine automatische Pfadwahl. |
| Backup-Sendezustand und Pfad-Snapshots | Versionierte C-Abfragen | Nein | Nur lesende lokale Beobachtung. |
05 / MATRIX
API, Pakete und Engineering-Werkzeuge
7 MerkmaleTabelle seitlich wischen, um alle vier Spalten zu sehen →
| Funktion | Robotweax SRT 0.3.0 | Haivision SRT 1.5.7 | Umfang / Unterschied |
|---|---|---|---|
| API-Typen und Konstanten | Alle 26 öffentlichen Typen und neun Konstantengruppen erhalten | Referenz | API-Ziel 1.5.7 hebt die partiellen Funktionsumfänge nicht auf. |
| Zusätzliche Robotweax-C-API | Versionierte RTT-, Standby-RTT-, Gruppenstatus-, Pfad-, Paketinspektions- und Optionsabfragen | Nein | Additiv; Anwendungen müssen Funktionen erkennen. |
| Windows-SDK | Signierte OpenSSL- und experimentelle BCrypt-Installer in v0.3.0 | Quellcode-Tag; Pakete durch Dritte | Separate Installer und SHA256SUMS stehen auf der 0.3.0-Release-Seite bereit. |
| Paketmanager | Debian, Fedora-Spec, Homebrew-Tap und vcpkg-Port im Quellbaum | Pakete durch Dritte | Verfügbarkeit und Qualifizierung hängen vom Ziel ab. |
| Streaming-Anwendungen | UDP/SRT-Bridge als Beispiel | srt-live-transmit, file-transmit, tunnel, ffplay-Wrapper | Robotweax ist primär eine Bibliothek, keine App-Suite. |
| Interop-Testumgebung | Gepinnte Haivision-Peers 1.5.5 / 1.5.6 / 1.5.7 | Eigene Interop-Tests im Quellbaum | Die Testabdeckung ist profilspezifisch. |
| Ökosystem-Qualifizierung | Gepinnte GStreamer-, VLC-, OBS- und FFmpeg-Smoke-Profile | Integration durch nachgelagerte Projekte | Keine universelle Anwendungskompatibilität ableiten. |
WICHTIGE GRENZEN
Wo sich die Implementierungen unterscheiden
- Robotweax bietet keinen HSv4-Verbindungsaufbau, keine eigenen Congestion-Module und keine eigenen Paketfilter-Plugins.
- Robotweax begrenzt FEC-Spalten und MSS bewusst; Jumbo-MSS wird abgelehnt.
- Ein Build ohne Verschlüsselung sowie GnuTLS- und Botan-Backends fehlen bei Robotweax.
- Zulassungs-Callbacks für Gruppen, Statistiken und Teile des Epoll-/Laufzeitverhaltens weichen ab.
- Linux, macOS und Windows sind die qualifizierten Desktop-Ziele; Mobile bleibt experimentell.
- Offene Sicherheitsarbeiten betreffen KM-Rollback über die gespeicherte Historie hinaus (#112) und den kryptografischen ACP1-Review (#190).
PRÜFBARE BASIS
Quellen und Status
Dies ist ein datierter Quellcodevergleich, kein Benchmark und keine Kompatibilitätsgarantie. Die Tabellen sind eine kuratierte Webfassung der bereitgestellten ausführlichen Matrix.
