- 相關(guān)推薦
Java多播套接字的方法介紹
播數(shù)據(jù)報(bào)套接字類用于發(fā)送和接收 IP 多播包。MulticastSocket 是一種 (UDP) DatagramSocket,它具有加入 Internet 上其他多播主機(jī)的“組”的附加功能。以下是小編為大家搜索整理的Java多播套接字的方法,希望能給大家?guī)韼椭?更多精彩內(nèi)容請(qǐng)及時(shí)關(guān)注我們考試網(wǎng)!
多播組通過 D 類 IP 地址和標(biāo)準(zhǔn) UDP 端口號(hào)指定。D 類 IP 地址在 224.0.0.0 和 239.255.255.255 的范圍內(nèi)(包括兩者)。地址 224.0.0.0 被保留,不應(yīng)使用。
方法
可以通過首先使用所需端口創(chuàng)建 MulticastSocket,然后調(diào)用 joinGroup(InetAddress groupAddr) 方法來加入多播組:
// join a Multicast group and send the group salutations
...
String msg = "Hello";
InetAddress group = InetAddress.getByName("228.5.6.7");
MulticastSocket s = new MulticastSocket(6789);
s.joinGroup(group);
DatagramPacket hi = new DatagramPacket(msg.getBytes(), msg.length(),
group, 6789);
s.send(hi);
// get their responses!
byte[] buf = new byte[1000];
DatagramPacket recv = new DatagramPacket(buf, buf.length);
s.receive(recv);
...
// OK, Im done talking - leave the group...
s.leaveGroup(group);
將消息發(fā)送到多播組時(shí),該主機(jī)和端口的所有預(yù)定接收者都將接收到消息(在數(shù)據(jù)包的生存時(shí)間范圍內(nèi),請(qǐng)參閱下文)。套接字不必成為多播組的成員即可向其發(fā)送消息。
當(dāng)套接字預(yù)定多播組/端口時(shí),它將接收由該組/端口的其他主機(jī)發(fā)送的數(shù)據(jù)報(bào),像該組和端口的所有其他成員一樣。套接字通過 leaveGroup(InetAddress addr) 方法放棄組中的成員資格。多個(gè) MulticastSocket 可以同時(shí)預(yù)定多播組和端口,并且都會(huì)接收到組數(shù)據(jù)報(bào)。
同時(shí),不允許 applet 使用多播套接字
【Java多播套接字的方法介紹】相關(guān)文章:
講解Java的Socket網(wǎng)絡(luò)編程的多播與廣播實(shí)現(xiàn)09-03
Java數(shù)組的基本操作方法介紹08-14
java泛型方法10-22
java文檔注釋的方法08-22
java顯示圖片的方法09-26
java的常見排序方法08-31
Linux操作系統(tǒng)中BSD套接口開發(fā)基礎(chǔ)介紹08-31
使用Java的枚舉類型的方法10-19
java parseInt解釋加方法08-08