/** Use a different port from Jini discovery */
final short port = net.jini.discovery.Constants.discoveryPort + 1;
final long endMillis = System.currentTimeMillis() + timeout;
final MulticastSocket msocket = new MulticastSocket(port);
msocket.setTimeToLive(1); // XXX - could it be 0 ?
msocket.joinGroup(group);
msocket.setSoTimeout(timeout);
StringBuilder builder = new StringBuilder();
builder.append(MulticastStatus.class.getName()).append(".ping(").append(System.currentTimeMillis()).append(")");
final byte[] messageBytes = builder.toString().getBytes();
DatagramPacket packet = new DatagramPacket(messageBytes, messageBytes.length, group, port);