欢迎来到天天文库
浏览记录
ID:28469228
大小:230.07 KB
页数:16页
时间:2018-12-10
《[java语言]组播技术和jgroups》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、IP数据包传输类型IPv4定义了3种IP数据包的传输:单播(unicast)广播(broadcast)组播(multicast).比较一下unicast和multicast两种数据的传输方式可以发现,当一台主机向多个用户发送信息时,单播对于每一个用户都要发送一份数据的拷贝,而组播总共只需发送一份数据的拷贝。这样,组播的使用就大大的节省了带宽,减轻了网络的负载,从而更加有效的利用了网络的带宽资源.1P组播和单播的目的地址不同,1P组播的目的地址是组地址.是从224.0.0.0到239.255.255.255之间的D类IP地址,其中224.0.0.0到224.0.0.255是被保留的地
2、址,224.0.0.1表示子网中所有的组£番组,224.0.0.2表示子网中的所有路由器,224.0.0.5表示OSPF(OpenShortestPathFirst)路由器,224.0.0.6表示OSPF指定路由器,224.0.0.12表示DHCP服务器.在D类地址的分配中,IETF建议遵循以下的原则:全球范围:224.0.1.0〜238.255.255.255;有限范围:239.0.0.0〜239.255.255.255;本地站点范围:239.253.0.0〜239.253.0.16本地机构范围:239.192.0.0〜239.192.0.14.Java组播程序的例子import
3、importimportimportimportjava.io.TORxeeption;java.net.DatagramPackct;java.net.inetAddress;java.net.MulticastSocket;java.net.NetworkTnterface;publicclassLcarn2{publicstaticvoidmain(String[]args)throwsIOException{newMulticastScrvcr().start();newMulticastClient().start();classMulticastScrvcrextend
4、sThread{publicvoidrun(){try{MulticastSockctmcastSockct=newMulticastSockct(7777);InetAddressinetAddress=InetAddress.getByName("230.0.0.1");mcastSocket.setNetworklnterface(Networklnterface.getBylnetAddress(InetAddress.getLocalHost0));mcastSocket.joinGroup(inetAddress);while(true){byte[]arb=newby
5、te[100];DatagramPacketdatagramPacket=newDatagramPacket(arb,arb.length);mcastSocket.receive(datagramPacket);System,out.printIn("Server:〃+newString(arb,0,datagramPacket.getLength()));}}catch(Exceptiondx){dx.printStackTrace();}}}classMulticastClientextendsThread!publicvoidrun(){try{while(true){by
6、te[]arb=newbyte[]{’h’,’e’,’1’,’1’,’o’};InetAddressinetAddress=InetAddress.getByName(/z230.0.0.1");DatagramPacketdatagramPacket=newDatagramPacket(arb,arb.length,inetAddress,7777);MulticastSocketmulticastSocket=newMulticastSocket();multicastSocket.send(datagramPacket);Thread.sleep(1000);}}catch(
7、Exceptiondx){dx.printStackTrace0;}}使用jgroups的例子importjava.io.BuffcrcdRcadcr;importjava.io.InputStreamReader;importimportimportimportimportimportorg.jgroups.Address;org.jgroups.ChannelException;org.jgroups.JChanncl;org.jgroups.Message;or
此文档下载收益归作者所有