Java使用MulticastSocket实现多点广播

2014-11-24 10:19:20 · 作者: · 浏览: 1

MulticastSocket可以将数据报以广播的方式发送到多个客户端。


MulticastSocket有如下3个构造方法


public MulticastSocket():使用本机默认地址,随机端口来创建MulticastSocket对象。


public MulticastSocket(int portNumber):使用本机默认地址,指定端口创建MulticastSocket对象。


public MulticastSocket(SocketAddress bindaddr):使用本机指定IP地址,指定端口来创建MulticastSocket对象。


创建MulticastSocket对象后,还炫耀将MulticastSocket加入到指定的多点广播地址,MulticastSocket使用joinGroup()方法加入指定组;使用leaveGroup()方法脱离一个组。


joinGroup(InetAddress addr);


leaveGroup(InetAddress addr);


InetAddress 类没有提供构造,而提供如下两个静态方法来获取InetAddress对象


getByAddress(byte []addr):如getByAddress(new byte[]{127,0,0,1});


MulticastSocket类中有一个setTimeToLive(int ttl),当ttl为0时,指定数据报应停留在本地主机,为1时,指定数据报发送到本地局域网网,为32时,发送到本站点的网络上。为64时,发送到本地区,128时,发送到本大洲,255为全球。


上面的代码能运行,貌似有点问题,不过还是可以通讯,有时间在好好做一做,先做到这里。