stuvar hat geschrieben:Mein vorschlag - schon im Sinne der Trafficbegrenzung vom/zum Zusi-Hauptprogramm sollte ein Stellwerksprogramm für einen Bahnhof die Verantwortung übernehmen.
Von dem Fahrdienstleiterstellwerk/programm können dann je nach Konfiguration mehrere Clients dranhängen die ihre Eingaben nur an ihr direktes Fahrdienstleiterstellwerk schicken. Hat den Vorteil, daß für Zusi alle Stellwerke gleich sind und damit jeder Bahnhof auch durch beliebige Stellwerke besetzt werden können. Für die LAN-Party also mit 3 mech. Stellwerken und für den Einzelspieler als ESTW oder B/W Kombination.
Der Nachteil besteht in doch länger werdenden Laufzeiten der Befehle. Ein Befehl zur Weichenumstellung (die ja dann unabhängig von Fahrstraßen umgelegt werden können) würde im Extremfall erst vom Stw.client zum Stw.server (Fdl-Stellwerk) gehen und dann weiter zum Zusi-Hauptrechner. Von dort gehts dann weiter über die Darstellung zum Nutzer. Dürfte aber nicht weiter schlimm sein, da man ja - zumindest ab den Gleisbildstellwerken - mit Weichenumlaufzeiten von mindestens 6 sekunden rechnet.
P.S: Da hier Ansätze für Netzwerkfunktionen im Zusi kommen will ich mal darauf hinweisen, daß man auch einen Beobachtermodus für Zusi benötigen wird. Speziell für die Stellwerks'zuschauer' brauch man schon weniger Informationen zum Darstellen der gewünschten Sicht.
Zum Kommunikationsserver:
Das Datenaufkommen hier wird minimal sein, die Laufzeiten beim zunächst verfolgten synchronen Modell ebenfalls.
Reine Monitor-Funktionalität ist vorstellbar, würde aber größere Mitwirkung von Zusi bedingen, wenn Stellwerke beobachtet werden sollen, die unter Zusi-Hoheit liegen. Möchte ich für die Entwicklung zunächst zurückstellen.
Genauso Rückmeldeverzögerungen. Die sind natürlich machbar, haben aber evtl wieder Einfluss auf den erforderlichen Umfang der Zusi-Mitwirkung, und verkomplizieren zunächst durch die asynchrone Komponente die Kommunikation, ohne etwas Wesentliches zur Grundlogik beizutragen. Daher nach Möglichkeit auch später. Die Architektur sollte diesbezügliche Erweiterungen aber problemlos verkraften können.
Der Kommunikationsserver aber sollte erst einmal im Prinzip funktionieren. Da hier bei der Umsetzung möglichst wenig Räder neu erfunden, und fertige Technologien eingesetzt werden sollen, wird hier wohl zunächst eine Prototypentwicklung anstehen, die einem Bottom-Up-Ansatz folgen wird.