//***************** Multicast Time Server *************************** import java.net.InetAddress; import java.net.MulticastSocket; import java.net.DatagramPacket; import java.util.Date; import java.io.IOException; public class TimeServerMC { public static void main(String[ ] args) { try { // Join group at network address. InetAddress t_group = InetAddress.getByName(addr); MulticastSocket mcs = new MulticastSocket(port); mcs.joinGroup(t_group); DatagramPacket t_packet = null; // Multicast the time every 10 seconds. while (true) { byte[ ] t_bytes = new Date().toString().getBytes(); t_packet = new DatagramPacket(t_bytes, t_bytes.length, t_group, port); mcs.send(t_packet); Thread.sleep(winks); } } catch(IOException e) { System.err.println(e); } catch(InterruptedException e) { System.err.println(e); } } private static final int port = 9977; private static final String addr = "228.1.2.3"; private static final int winks = 10000; // milliseconds }