Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » Zeit mittels Sockets synchronisieren

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
30.07.2007, 11:06 Uhr
~Walter
Gast


HI.

Ich habe 2 Rechner : ein Client und ein Server.

Ich würde gerne die Zeiten beider Rechner über Sockets so gut wie möglich synchronisieren, so dass auf beiden Rechnern gleichzeitig eine Anwendung startet.

Wie könnte ich das realisieren?
Kennt sich jemand damit aus?

Vielen Dank.
Gruß Walter
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
30.07.2007, 12:05 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


Hi,
sowas ist nicht ganz trivial, und eine 100%ige synchronisierung so gut wie ausgeschlossen.

Ansonsten schau dir mal das NT-Protokoll an (Network Time Protocol, NTP) das bietet ganz gute synchronisierungsergebnisse
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
30.07.2007, 13:00 Uhr
ao

(Operator)


Hi, was heißt "gleichzeitig"? Wieviel Abweichung (Millisekunden? Sekunden? Minuten?) kannst du tolerieren?

Und hier ein Denkanstoß: Warum müssen die beiden gleichzeitig starten? Finden sie sich sonst nicht? Wenn du irgendwie kannst, solltest du solche eng gekoppelten Abläufe zwischen entfernten Rechnern vermeiden, sonst kommst du in Teufels Küche, wenn einer der Beteiligten sein Hochlaufverhalten ändert.

Besser ist ein konventionelles Client-Server-Szenario (Server läuft und wartet auf Connect-Request vom Client). Dafür braucht man normalerweise überhaupt keine synchronisierten Uhren.

Gruß,
ao
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
30.07.2007, 23:34 Uhr
~Walter
Gast


Hi!

Ein wenig ausführlicher:

Ich habe mit SDL (www.libsdl.de) was programmiert um Augenbewegungen auszuführen... sprich ein Proband muss ein Text lesen.

Auf dem anderen Rechner wird die Augenbewegung aufgenommen und gemessen.

Der Stimulationsrechner soll nun dem Messrechner sagen, hey, es geht los... und dann soll es auch gleich losgehen mit stimulieren (Text erscheint) und messen.

Da ich die Augenkoordinate bestimmen will und zwar so, dass ich genau sagen kann zum Zeitpunkt x war das Auge an der Koordinate x/y , brauche ich gleiche Zeiten auf beiden Rechnern... so dass ich z.b. anschliessend sehen kann, wo das Auge zum Zeitpunkt x war und daraus berechnen kann, welcher Buchstabe zu diesem Zeitpunkt dort war....

Da ich noch nicht am testen bin, sondern nur am proggen, weiss ich nicht, ob meine überlegungen überhaupt gehen... aber meiner meinung nach, müsste man das schon synchronisieren.

Mein Prof will sogar, dass ich mit einem Messrechner an einer Uni 500 km weiter weg kommuniziere... da treten schon pingzeiten von 50 ms auf... was aber zu viel ist.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
31.07.2007, 08:37 Uhr
Bruder Leif
dances with systems
(Operator)


Schau Dir mal "ntpdate" an, synchronisier beide Rechner z.B. mit der ntp1.ptb.de und Du hast keine Probleme mehr...
--
Mit 40 Fieber sitzt man nicht mehr vor dem PC.
Man liegt im Bett.
Mit dem Notebook.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
31.07.2007, 09:29 Uhr
ao

(Operator)



Zitat von ~Walter:
Hi!
Ein wenig ausführlicher: ...



Da haste uns aber mit Client und Server und "gleichzeitig starten" erstmal ziemlich aufs Glatteis geführt, du Schelm, was du wirklich brauchst, ist eine genaue Kenntnis der Gangabweichung der beiden Uhren.

Und du hast immer noch nicht verraten, wie genau du es eigentlich wissen musst.

Hab ich das richtig verstanden, dass beide Rechner, also der, der den Text darstellt und der, der die Augenbewegung misst, in der Nähe des Probanden stehen? Warum nimmst du dann überhaupt zwei Rechner?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (WinAPI, Konsole) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: