Basis für Multiuser Stream Server
Verfasst: 01.03.2009 17:05
Hi,
Es kommen öfters fragen wie man mehrere User verwaltet und Daten sicher über das Netzwerk versendet.
Dazu verwende ich ein eigenes binäres Protokoll welches auf TCP aufsetzt.
Die Verwaltung läuft über eine LinkedList mit der Struktur udtManager. In dieser werden alle Informationen des angemeldeten Clients gespeichert.
Jedes gesendete und empfangende Paket fäng mit eine Header an
Structure udtHeader
Ident.w -> Feste Server ID, Muss gleich sein
Version.w -> Feste Server Version, muss gleich sein
Command.w -> Befehl von Server oder Client
Size.w -> größe der angehängten Daten
EndStructure
Sollten die Ident oder Version nicht stimmen, so trennt der Server automatisch die verbindung.
Des gleichen auch wenn die Größe der angehängten Daten nicht stimmt.
Der StreamServer als Beispiel sendet zyklisch alle Daten der angemeldeten Clients an alle Clients. Um so mehr Clients angemeldet sind um so grösser werden diese Daten.
Link zu den Dateien:
http://mk-soft.homepage.t-online.de/fil ... eamServer/
FF
P.S. Der TestClient läuft nichtz ganz sauber
Es kommen öfters fragen wie man mehrere User verwaltet und Daten sicher über das Netzwerk versendet.
Dazu verwende ich ein eigenes binäres Protokoll welches auf TCP aufsetzt.
Die Verwaltung läuft über eine LinkedList mit der Struktur udtManager. In dieser werden alle Informationen des angemeldeten Clients gespeichert.
Jedes gesendete und empfangende Paket fäng mit eine Header an
Structure udtHeader
Ident.w -> Feste Server ID, Muss gleich sein
Version.w -> Feste Server Version, muss gleich sein
Command.w -> Befehl von Server oder Client
Size.w -> größe der angehängten Daten
EndStructure
Sollten die Ident oder Version nicht stimmen, so trennt der Server automatisch die verbindung.
Des gleichen auch wenn die Größe der angehängten Daten nicht stimmt.
Der StreamServer als Beispiel sendet zyklisch alle Daten der angemeldeten Clients an alle Clients. Um so mehr Clients angemeldet sind um so grösser werden diese Daten.
Link zu den Dateien:
http://mk-soft.homepage.t-online.de/fil ... eamServer/
FF

P.S. Der TestClient läuft nichtz ganz sauber