Hier mal was Praktisches:
my $sh = IO::Socket::INET->new( "ptbtime2.ptb.de:37" ) or die $@;
erstellt das Socket auf Port 37. Dasselbe funktioniert plattformunabhängig mit jeder Programmiersprache. Für die aktuelle Zeit, also die seit 1.1.1900 abgelaufenen Sekunden, werden genau 4 Bytes aus dem Socket gelesen.
MfG