[Vienna-pm] Multicast ..
gooly at gmx.at
gooly at gmx.at
Wed Jun 20 08:28:15 PDT 2007
hallo,
Peter hat mich darauf gebracht und ich hab mir versucht das einmal zu
realisieren, nachdem durch das Modul-update von threads-shared mein
altes Programm jetzt plötzlich manchmal stehen bleibt (seufz)..
Aber Multicast mit seinem example gibt sich sperrig, denn mit dem (s.u.)
Beispiel-Code, kann ich keinen Multicast-Server aufestzen, der auf
seine Client wartet:
#!/usr/bin/perl
# server
use strict;
use IO::Socket::Multicast;
use constant DESTINATION => '226.1.1.2:2000';
my $sock =
IO::Socket::Multicast->new(Proto=>'udp',PeerAddr=>DESTINATION);
while (1) {
my $message = localtime;
$message .= "\n" . `who`;
$sock->send($message) || die "Couldn't send: $!";
} continue {
sleep 10;
}
Sinnigerweise werden diese Zeilen eingeleitet mit:
"The following is an example of a multicast server. Every 10 seconds
it transmits the current time and the list of logged-in users to
the local network using multicast group 226.1.1.2, port 2000 .."
Ja wie macht man denn das? Eingeloggt sein bevor das Programm startet?
Ist das nicht der Traum jedes Hackers?
Da ich aber auch hier nicht sehen, wie ich einen 'selbstgemachten'
Socket (a la: my $server = IO::Socket::INET->new(...);
while((my $client = $server->accept()) { ..
)
irgenwie/wo übergeben kann, hier nun, woher der Vorschlag kam, meine
Frage:
Wie back ich mir damit einen Socket-Server der - neben seinen eigenen
Daten-Handling (sichern und zippen) - auf seine Clients wartet und die
dann alle mit den selben Daten bedient?
Danke schon mal,
Calli
More information about the Vienna-pm
mailing list