Netzwerkprogrammierung
-
Hallo leute,
ich benutze Sockets um übers netz Daten auszutauschen, allerdings hab ich ein server(prog) auf das ich mehr als einmal verbinde. Dieser Server wartet in einem Thread auf verbindung, und wenn jemand verbindet gib er den socket weiter. Um vom server jetzt eine Nachricht an alle Clients zu schicken, muss ich an jeden Socket diese Nachricht schicken. Gibt es nicht etwas, damit ich die Nachricht nur einmal verschicken brauch?
-
Kapsel das doch in ne Funktion die an alle CLients ne beliebe nachricht schickt?
-
jau
-
gibt es denn nicht soetwas wie ne gruppen IP also ein broadcast der sich an bestimmte ip adressen richtet?
-
Ich meine wenn ich ein netzwerk spiel programmiere! Wäre es dann nicht besser und schneller wenn der server das nur einmal an alle sendet, oder muss der server das für jeden einzeln schicken?
-
Denk mal nicht an Uni-/Broadcast sondern an das Stichwort: "Multicast"
W. Richard Stevens: IP Multicasting Information
http://www.kohala.com/start/#mcastOther Multicast Source Available
http://www.sockets.com/mc_src.htmMulticast Sockets
http://www.vbip.com/books/1861007353/chapter_7353_01.aspA Multicast Wrapper Class
http://www.codeguru.com/network/MulticastSocket.shtml
-
Welches Betriebssystem benutzt du?
Weil Sockets von Standard C++ nicht behandelt werden.
-
Genau Multicast meinte ich, ist mir blos net eingefallen.
Benutze Windows2k
-
.. ich glaub man kann bei send() anstatt den Socket auch -1 oder 1 angeben, so werden alle Sockets des Programms angesprochen.. hab mal nen code von einen MultiServer gesehen der so alle Clients killen konnte.. suche das ma