Skip to content

railitd – Stellwerksdienst ​

Kerne, Feld und Betriebsführung im festen Zyklus; REST/JSON, gRPC, Ereignisstrom und Bedienplatz.

Erzeugt

Diese Seite entsteht beim Bauen der Dokumentation aus railitd --help (railitd 1.0.1).

Aufruf ​

text
Stellwerksdienst von rail-it (simulierte Feldebene)

Usage: railitd [OPTIONS] --network <NETWORK> --plan <PLAN>

Options:
      --network <NETWORK>
          Netzbeschreibung (rail-it-TOML) für Simulator und Abgleich mit dem Plan

      --plan <PLAN>
          Plan-Image (`railit plan compile`); bei Netzen mit Stellbereichen ein Verzeichnis mit `<Bereich>.rplan` je Stellbereich

      --trusted-key <TRUSTED_KEY>
          Öffentlicher Schlüssel; der Plan muss damit signiert sein

      --allow-unsigned
          Unsignierte Pläne zulassen (nur Simulation und Test)

      --approver-key <DATEI>
          Öffentlicher Schlüssel eines Prüfers (mehrfach angebbar, REQ-PLN-022)

      --approvals <APPROVALS>
          Vier-Augen-Prinzip: Jeder Plan braucht so viele Freigaben verschiedener Prüfer (`<plan>.approvals`, `railit plan approve`)
          
          [default: 0]

      --listen <LISTEN>
          Adresse der API
          
          [default: 127.0.0.1:7878]

      --cycle-ms <CYCLE_MS>
          Zykluszeit des Kerns in Millisekunden (Simulationszeit)
          
          [default: 100]

      --speed <SPEED>
          Zeitraffer: Die Simulation läuft so viel schneller als Echtzeit
          
          [default: 1]

      --journal <JOURNAL>
          Betriebsjournal: Eingaben jedes Zyklus mit Hashkette (neue Datei; eine vorhandene wird nicht überschrieben). Bei mehreren Stellbereichen ein Verzeichnis mit `<Bereich>.journal` je Bereich. Prüfen und abspielen mit `railit journal`

      --standby <URL>
          Bereitschaftsrechner: liest die Journale des Hauptrechners unter dieser Adresse mit (`http://host:port`), rechnet nach, quittiert und zeigt dessen Zustand an – ohne Feld, ohne Kern im Betrieb, ohne Bedienung. `--journal` gilt erst nach einer Übernahme

      --standby-token <TOKEN>
          Zugangstoken beim Hauptrechner (mit `--standby`; Rolle `bereitschaft`)

      --takeover-after-ms <MS>
          Übernahme: Schweigt der Hauptrechner so lange (ms), führt der Bereitschaftsrechner am Feldrechner, sobald der Umschalter ihn lässt (mit `--standby` und `--field remote`)

      --standby-gate-ms <MS>
          Ausgabesperre für einen Bereitschaftsrechner: Ausgaben gehen erst nach seiner Quittung hinaus und warten darauf höchstens so lange (ms). Muss die Umschaltzeit des Feldrechners, `t_max` von RaSTA und `--takeover-after-ms` deutlich übersteigen

      --checkpoint-every <CHECKPOINT_EVERY>
          Abstand der Zustands-Prüfpunkte im Journal (Zyklen)
          
          [default: 600]

      --seal-key <SEAL_KEY>
          Geheimer Schlüssel des Stellwerks (`railit plan keygen`): Journal und Auditprotokoll werden damit gesiegelt (Prüfung mit `railit journal verify --key`)

      --seal-every <SEAL_EVERY>
          Abstand der Siegel im Journal (Zyklen)
          
          [default: 600]

      --field <FIELD>
          Anbindung der (simulierten) Feldebene: direkt, über EULYNX SCI und RaSTA oder an einen Feldrechner (`railit-field`) über RaSTA/UDP

          Possible values:
          - direct: Simulator direkt am Kern
          - eulynx: Objektsteuerungen über EULYNX SCI und RaSTA vor dem Simulator
          - remote: Feldrechner (`railit-field`) über RaSTA/UDP; die Simulation läuft dort
          
          [default: direct]

      --field-addr <ADRESSE>
          Adresse des Feldrechners (UDP, mit `--field remote`). Mehrfach angegeben: je Adresse ein Kanal der RaSTA-Redundanzschicht (in derselben Reihenfolge wie `--listen` des Feldrechners)

      --field-id <ID>
          RaSTA-Kennung dieses Stellwerks beim Feldrechner (hexadezimal); Vorgabe: Hauptrechner 0A000001, mit `--standby` Bereitschaftsrechner 0A000002

      --field-control <URL>
          Steuerung des Feldrechners (HTTP) für Simulationsbefehle, z. B. `http://127.0.0.1:7901`

      --field-token <FIELD_TOKEN>
          Zugangstoken der Steuerung des Feldrechners (auch über `RAILIT_FIELD_TOKEN`)
          
          [env: RAILIT_FIELD_TOKEN]

      --borders <BORDERS>
          Übertragung der Grenzmeldungen zwischen den Stellbereichen: direkt im Prozess oder über EULYNX SCI-ILS und RaSTA mit störbarer Strecke (`/v1/ils`)

          Possible values:
          - direct: Ideal im Prozess
          - ils:    Über EULYNX SCI-ILS und RaSTA, je Paar benachbarter Stellbereiche eine Verbindung
          
          [default: direct]

      --areas <AREAS>
          Nur diese Stellbereiche rechnen (kommagetrennt); die übrigen rechnen in anderen Prozessen und sind über SCI-ILS auf UDP angebunden (`--ils-listen`, `--ils-peer`)

      --ils-listen <ADRESSE>
          UDP-Adresse für SCI-ILS zu den Stellbereichen anderer Prozesse

      --ils-peer <BEREICH=ADRESSE>
          Adresse eines Nachbarbereichs in einem anderen Prozess: `BEREICH=ADRESSE` (je Bereich und Rechner; hat der Nachbar einen Bereitschaftsrechner, beide Adressen)

      --channels <CHANNELS>
          Kanäle je Stellbereich: 1 (ohne Vergleich), 2 (2-von-2) oder 3 (2-von-3)
          
          [default: 1]

      --watchdog-ms <WATCHDOG_MS>
          Watchdog: Frist für die Rechenzeit eines Stellbereichs je Zyklus in Millisekunden (Wanduhr). Überschreitung oder ausbleibende Zyklen führen in den sicheren Zustand

      --timetable <TIMETABLE>
          Fahrplan (TOML, siehe `railit_ops`); setzt Züge nach Plan ein

      --ars
          Zuglenkung einschalten (Fahrstraßen für Züge mit Fahrplan selbsttätig anfordern)

      --token <TOKEN>
          Gemeinsames Zugangstoken mit allen Rechten (auch über `RAILIT_TOKEN`)
          
          [env: RAILIT_TOKEN]

      --users <USERS>
          Benutzerdatei mit Rollen, Token-Hashes und Zertifikatsnamen

      --audit <AUDIT>
          Auditprotokoll (wird fortgesetzt; eine manipulierte Datei verhindert den Start)

      --tls-cert <TLS_CERT>
          Serverzertifikat (PEM, mit Kette) für TLS

      --tls-key <TLS_KEY>
          Privater Schlüssel des Servers (PEM)

      --tls-client-ca <TLS_CLIENT_CA>
          CA für Client-Zertifikate: verlangt mTLS; der CN identifiziert den Benutzer

      --tls-crl <DATEI>
          Sperrliste (CRL, PEM) der Client-CA (mehrfach angebbar). Wird bei Änderung neu gelesen; abgelaufene oder unlesbare Sperrlisten weisen jede Anmeldung ab

      --node <[BEREICH=]ADRESSE|lockstep>
          Stellbereich auf einem Knoten des sicheren Rechners (`railit-node`): `ADRESSE` bei einem Stellbereich, sonst `BEREICH=ADRESSE` je Bereich; `lockstep` lässt alle Bereiche auf Knoten im Dienst rechnen (Gleichschritt, für Prüfung und Ausbildung)

  -h, --help
          Print help (see a summary with '-h')

  -V, --version
          Print version

Lizenz: NCSL v1.0 · Nicht zugelassen für den realen Bahnbetrieb.