JAVA 实现广播

来源:互联网 发布:杀出矩阵:起源 编辑:程序博客网 时间:2024/04/29 10:00
<span style="font-family: Arial, Helvetica, sans-serif;"></span>
<span style="font-family: Arial, Helvetica, sans-serif;">public class MultiSender {</span>
public static void main(String[] args) throws IOException {InetAddress address = InetAddress.getByName("ff0e:0:0:0:0:8:8:8");MulticastSocket socket = new MulticastSocket(1000);//socket.setTrafficClass(8);socket.joinGroup(address);  byte[] buf = new byte[1024];        while (true) {            DatagramPacket datagramPacket = new DatagramPacket(buf, buf.length);            socket.receive(datagramPacket);                        byte[] message = new byte[datagramPacket.getLength()];             System.arraycopy(buf, 0, message, 0, datagramPacket.getLength());            System.out.println(datagramPacket.getAddress());            System.out.println(new String(message));        }}}

public class MultiReceiver {public static void main(String[] args) throws IOException {InetAddress address = InetAddress.getByName("ff0e:0:0:0:0:8:8:8");MulticastSocket socket = new MulticastSocket(45588);// InetAddress addresss = Util.getNonLoopbackAddress();// socket.setTrafficClass(8);socket.joinGroup(address);// to be on the safe side (IPv6 == 65575 bytes, IPv4 = 65535)final byte receive_buf[] = new byte[66000]; while (true) {DatagramPacket datagramPacket = new DatagramPacket(receive_buf, receive_buf.length);socket.receive(datagramPacket);byte[] message = new byte[datagramPacket.getLength()];System.arraycopy(receive_buf, 0, message, 0, datagramPacket.getLength());System.out.println(datagramPacket.getAddress());System.out.println(new String(message));}}}


0 0
原创粉丝点击