multicastSockt與NetworkInterface類介紹

簡介

Multicast:

UDP多播地址的類接口,繼承DatagramSocket類,DatagramSocket類能夠完成多播地址發送,可是在接受端須要用加入多播地址的調用,在接受端必須用Multicast類接口。 UDP報文的多播原理是發送端發送的UDP報文是地址爲D類地址,接受端發佈信息加入這個D類地址,多播路由器自動完成數據的傳播,用的網絡層協議爲IGMP網絡

NetworkInterface:

表明一個網卡,可使虛擬的。能夠調用網卡的相關信息,ip地址、mac地址、子網掩碼等等。用戶不能建立對象只能調用系統的NetworkInterface。常規用法是指定一個網卡的ip地址進行通訊。一個網卡能夠有多個ip地址。不衝突。oracle

多播流程

... 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, I'm done talking - leave the group... s.leaveGroup(group);對象

參考信息:繼承

  • 主要是oracle的tutorial章節
  • 庫文件說明
相關文章
相關標籤/搜索