Meshwork

Meshwork ist ein Mechanismus zum Zusammenschluss von Perfect-Streamer-Servern zu einem einheitlichen Netzwerk aus Knoten. Knoten derselben Domäne finden sich automatisch und tauschen Dienstinformationen über das für dezentrale Netzwerke charakteristische Gossip-Protokoll aus. Der Zusammenschluss der Knoten bietet drei Möglichkeiten:

  • Live-Status der Knoten. Auf jedem Knoten ist im Admin-Bereich der Zustand aller übrigen Knoten des Netzwerks sichtbar: wer in Verbindung steht, wer schweigt, wer hinter NAT steht und wann der letzte Kontakt war. Es ist nicht nötig, jeden Server einzeln zu öffnen. Ein Knoten, der keine Daten mehr austauscht, geht in den Zustand offline über — dies ist sofort auf allen Knoten sichtbar.

  • Gemeinsamer Ressourcenkatalog (Bibliothek). Die auf den Knoten laufenden Eingänge und Ausgänge UDP, RTP, Pro-MPEG COP3/RTP+FEC (SMPTE 2022-1/2), RIST, PS1 und SRT gelangen in einen gemeinsamen Katalog, der auf allen Knoten der Domäne sichtbar ist (Gemeinsamer Ressourcenkatalog): Darüber lassen sich eine freie Adresse und ein freier Port auswählen, Multicast-Kollisionen vermeiden und feststellen, wo der benötigte Stream bereits gesendet oder empfangen wird. Innerhalb der Domäne wird der Peer zwischen den Knoten per Autologin aufgebaut — ohne manuelle Eingabe von Logins und Passwörtern auf beiden Seiten.

  • Replikation der Alarme über die Domäne. Die Alarme eines Knotens sind auf allen Knoten derselben Domäne sichtbar: Der Diensthabende kann den gesamten Standort von einem einzigen Fenster aus überwachen. Externe Benachrichtigungen müssen nur auf einem Knoten der Domäne konfiguriert werden: Er stellt auch die Alarme anderer Knoten zu, die über die Domäne repliziert werden (Domänenweite Replikation von Benachrichtigungen).

Meshwork ist eine Schicht für Sichtbarkeit und Abstimmung. Es überträgt keine Streams zwischen Servern und ändert die Sendekonfiguration nicht automatisch. Das Zustellungsschema bauen Sie nach wie vor selbst, und Meshwork hilft, es zu planen und zu beobachten.

Diagramm der Meshwork-Topologie: Domänenknoten in einem vollständigen Verbindungsnetz, ein Knoten hinter NAT als Initiator, eine super-node in zwei Domänen, ohne diese zu verbinden.

Meshwork-Topologie: Knoten derselben Domäne bilden ein vollständiges Netz direkter Verbindungen; ein Knoten hinter NAT verbindet sich als Initiator; eine super-node gehört zu zwei Domänen, verbindet diese aber nicht miteinander.

Zentrale Begriffe

Knoten

Ein einzelner Perfect Streamer-Server im Netzwerk. Jeder Knoten hat einen kurzen eindeutigen Namen, an dem ihn die anderen erkennen. Ohne Namen und Signatur-Secret nimmt ein Knoten nicht am Netzwerk teil.

Domäne

Eine logische Gruppe von Knoten und zugleich eine Isolationsgrenze. Innerhalb einer Domäne finden sich Knoten automatisch, teilen einen gemeinsamen Ressourcenkatalog und replizieren Alarme. Zwischen verschiedenen Domänen gibt es keinen Austausch — die Domänen sind unabhängig.

Automatische Erkennung (mesh)

Es genügt, den Knoten dieselbe Domäne und mindestens eine Verbindung zuzuweisen — danach finden sie sich selbst, ohne jeden Nachbarn manuell aufzuzählen. Innerhalb der Domäne entsteht ein vollständiges Netz direkter Verbindungen: Alle Knoten der Domäne werden zu direkten Nachbarn, Zwischenketten werden nicht gebildet.

Die Verbindung wird über HTTP eingetragen, der weitere Austausch erfolgt jedoch über HTTPS. Für ein öffentliches Netzwerk ist konfiguriertes HTTPS zwingend erforderlich; für ein internes Netzwerk (intranet address) ist HTTPS nicht erforderlich.

Explizite Verbindung

Ein Nachbar kann manuell angegeben werden — mit Adresse, Namen und einem gemeinsamen Secret. Eine solche Verbindung funktioniert immer, auch über einfaches HTTP, und erfordert keine gemeinsame Domäne. Sie eignet sich für die punktuelle Verbindung zweier Standorte oder das Anbinden eines Knotens hinter NAT.

Super-node

Ein einzelner Knoten kann gleichzeitig zu mehreren Domänen gehören. Er sieht die Ressourcen und Knoten jeder seiner Domänen, verbindet die Domänen aber nicht miteinander — die Isolation bleibt erhalten. In seiner Hauptdomäne ist ein solcher Knoten vollwertiger Teilnehmer des Netzwerks; in den zusätzlichen ist er nur mit den Nachbarn aus seiner Liste verbunden und sieht die übrigen Knoten dieser Domänen über sie. In der Netzwerkkarte wird ein solcher Knoten als super gekennzeichnet.

Alarme (Alerts)

Der integrierte Alarmdienst überwacht Streams, die Hardware des Knotens, den DVB-Empfang und die DVR-Aufzeichnung und löst Alarme aus, wenn etwas die festgelegten Grenzen überschreitet. In einem Netzwerk mit aktivierter Replikation ist auf jedem Knoten ein zusammengefasster Satz von Alarmen der gesamten Domäne sichtbar (siehe Benachrichtigungen (Alerter)).