Mini-HOWTO fr die Bedienung des VS-Simulators v0.1, erstellt von Paul Buetow

PING PONG (Siehe Screenshot pingpong.png):

Das PingPong Protokoll tut nichts, ausser Nachrichten hin und her zu
schicken!

0. Den Simulator starten mit "java -jar VS-Sim-v0.1.jar"

1. Ein Einstellungsfenster wird sichtbar. Dort lsst sich auch angeben, 
wieviel Prozesse an der Simulation teilnehmen sollen. Alle anderen 
Einstellungen stellen Defaultwerte dar, die sich spter fr jeden Prozess
einzelnd einstellen lassen. Fr das Ping-Pong beispiel sind "2 Prozesse" 
auszuwhlen. Alle anderen Einstellungen knnen so bleiben. Danach die
Einstellungen mit "OK" besttigen.

2. Das Hauptsimulationsfenster wird sichtbar, wo sich auch das Loggfenster
befindet. Die Checkbox "Logging" gibt an, ob whrend der Simulation die 
Loggnachrichten im Loggfenster sofort erscheinen sollen. Fr lteren Rechner
ist es empfohlen das Logging zu deaktivieren, da die JCheckBox von Java die 
Performance der Simulation erheblich beeinflussen kann. Nachdem die 
Simulation beendet wurde, kann man das Logging reaktivieren. Alle Loggs
werden dann nachtrglich in das Loggfenster geschrieben.

3. Wenn man mit der Maus ber die schwarzen Prozesslinien fhrt, werden
sie "gehighlighted". Nach Bettigen des linken Mausknopfes erscheint der
Prozesseditor. Mit Ihm lsst sich der jeweilige Prozess separat 
konfigurieren. ffnen Sie den Editor fr den Prozess 1.

4. Sie befinden sich nun im Prozesseditor. Ganz oben befindet sich die
Auswahl zum Protokolleditor. Whlen Sie das Protokoll "PingPong" aus und
klicken sie auf "Editieren".

5. Sie befinden sich im PingPong Editor des Prozess' 1. Dort kann man 
angeben, ob der jeweilige Prozess als PingPong Server und/oder als PingPong
Client agieren soll. Aktivieren sie "Clientseite aktivieren". Darauf hin
wird der darunterliegende Task-Manager aktiviert. Dort kann man angeben,
wann der Prozess eine PingPong Clientanfrage starten soll. bernehmen Sie 
die Werte "0000" und "1000". D.h., der PingPong Client startet nach 0 und 
nach 1 Sekunde/n der Simulation jeweils eine Anfrage. bernehmen Sie alle 
nderungen indem sie "OK" klicken. Verlassen Sie den Prozesseditor 
ebenfalls mit "OK".

7. Konfigurieren sie nun das PingPong Protokoll des 2. Prozesses
	- Prozess 2 "highlighten" und anklicken
	- Im Prozesseditor wieder das Protokoll "PingPong" editieren
Der 2. Prozess soll nun als PingPong Server agieren. Dabei aktivieren Sie
lediglich die Checkbox "Serverseite aktivieren". Besttigen Sie diese 
Einstellung mit "OK". Schliessen sie den Prozesseditor auch wieder mit "OK".

8. Nun haben Sie die Simulation fertigkonfiguriert und Sie knnen mit der
Simulation fortfahren. Der rote Balken gibt die globale Systemzeit an. In
dieser Simulation variieren sich die Prozesszeiten von der globalen 
Systemzeit nicht. Um die Simulation zu starten whlen sie den Menpunkt
"Simulation -> Starten".

9. Sie sehen, wie die Simulation abluft. Bedeutungen der Farben:

Nachrichtenlinien:
	Grn: Nachricht befindet sich noch in der Auslieferung
	Blau: Erfolgreich ausgelieferte Nachricht
	Rot: Nachricht ging verloren (In dieser Simulation zu 5% der Fall)

Prozesslinien:
	Schwarz: Simulation luft derzeit nicht
	Grn: Jeweiliger Prozess luft ohne Probleme
	Rot: Jeweiliger Prozess ist abgestrzt (In dieser Sim. zu 5% der Fall)

10. Wenn sie die Checkbox "Lamport" aktivieren, so sehen Sie in der Grafik
zustzlich die Lamportzeitstempel. Lamportzeitstempel kann man natrlich
auch vor- oder whrend die Simulation luft aktivieren/deaktivieren.

11. Unter "Simulation -> Wiederholen" wird die Selbe Simulation, jedoch
mit verschiedenen Zufallswerten (z.B. Ausflle oder bertragungszeiten)
erneuert ausgefhrt.


INTERNE UND EXTERNE ZEITSYNCHRONISATION 

Hier soll simuliert werden, welche Methode der Zeitsynchronisation nach 30
Sekunden genauer ist. (Siehe timesync.png)

Prozess 1 Soll der Zeitserver sein. Er bedient das "InternalTimeSync" sowie
das "ExternalTimeSync" Protokoll. 

Prozess 2 ist ein "ExternalTymeSync" Client

Prozess 3 ist ein "InternalTymeSync" Client

Gehen Sie also wie folgt vor:

0. ffnen Sie eine neue Simulation unter "Datei Neu". Whlen Sie dieses Mal
3 Prozesse aus. Geben Sie ausserdem an, dass die Ausfallw'keit von 
Prozessen und Nachrichten "0%" ist. Besttigen sie mit "OK". 
Anschliessend sehen Sie das neue Simulationsfenster. Das Fenster der 
vorherigen Simulation knnen Sie bei Bedarf wieder schliessen.

1. Nehmen Sie folgende Einstellungen vor:

Prozess 1: 
	-> ExternalTimeSync -> "Serverseite aktivieren"
	-> InternalTimeSync -> "Serverseite aktivieren"

Prozess 2:
	Die Uhrabweichung ist auf "1" zu stellen. D.h. die lokale Prozessuhr 
	geht doppelt so schnell wie die globale Systemzeit. Die Uhrabweichung
	kann man im Prozesseditor konfigurieren.

Das Clientprotokoll ist wie folgt einzustellen:
		-> ExternalTimeSync -> "Clientseite aktivieren"
		Es sollen alle 5 Sekunden Anfragen gestartet werden
		(0ms, 5000ms, 10000ms, ..., 25000ms)

Prozess 3:
	Die Uhrabweichung ist wieder auf "1" zu stellen. 

	Das Clientprotokoll ist wie folgt einzustellen:
		-> InternalTimeSync -> "Clientseite aktivieren"
		Es sollen alle 5 Sekunden Anfragen gestartet werden
		(0ms, 5000ms, 10000ms, ..., 25000ms)

2. Starten sie die Simulation. Am Ende der Simulation knnen Sie an den
Prozessbalken ablesen, wie die letzten Prozesszeiten sind.




