|
JavaTM 2 Platform Std. Ed. v1. 4.0 |
||||||||||
| ÀüÀÇ Å¬·¡½º ´ÙÀ½ÀÇ Å¬·¡½º | ÇÁ·¹ÀÓ ÀÖ¾î ÇÁ·¹ÀÓ ¾øÀ½ | ||||||||||
| °³¿ä: »óÀÚ | Çʵå | constructor | ¸Þ¼Òµå | »ó¼¼: Çʵå | constructor | ¸Þ¼Òµå | ||||||||||
java.lang.Object
|
+--java.net.DatagramSocket
|
+--java.net.MulticastSocket
¸ÖƼ ij½ºÆ® µ¥ÀÌÅÍ ±×·¥ ¼ÒÄÏ Å¬·¡½º´Â IP ¸ÖƼ ij½ºÆ® ÆÐŶÀ» ¼Û¼ö½Å ÇÒ °æ¿ì¿¡ µµ¿òÀÌ µË´Ï´Ù. MulticastSocket ´Â ÀÎÅͳݻóÀÇ ´Ù¸¥ ¸ÖƼ ij½ºÆ® È£½ºÆ®ÀÇ ¡¸±×·ì¡¹¿¡ Âü°¡ÇÏ´Â Ãß°¡ ±â´ÉÀ» °¡Áö´Â (UDP) DatagramSocket ÀÔ´Ï´Ù.
¸ÖƼ ij½ºÆ® ±×·ìÀº Ŭ·¡½º D IP ÁÖ¼Ò ¹× Ç¥ÁØ UDP Æ÷Åä ¹øÈ£¿¡ ÀÇÇØ ÁöÁ¤µË´Ï´Ù. Ŭ·¡½º D IP ÁÖ¼ÒÀÇ ¹üÀ§´Â 224.0. 0.0 ¿¡¼ 239.255. 255.255 ±îÁöÀÔ´Ï´Ù. ÁÖ¼Ò 224.0. 0.0 Àº ¿¹¾àµÇ°í ÀÖ¾î »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
¸ÖƼ ij½ºÆ® ±×·ì¿¡ Âü°¡ÇÏ·Á¸é , ÃÖÃÊ·Î ¸ñÀûÀÇ Æ÷Åä·Î MulticastSocket ¸¦ ÀÛ¼ºÇØ, °è¼ÓµÇ¾î 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, I'm done talking - leave the group...
s.leaveGroup(group);
¸ÖƼ ij½ºÆ® ±×·ì¿¡ ¸Þ¼¼Áö¸¦ ¼Û½ÅÇϸé(ÀÚ), ±× È£½ºÆ®¿Í Æ÷ÅäÀǸðµçÂü°¡ÀÚ°¡ ¸Þ¼¼Áö¸¦ ¹Þ¾ÆµéÀÔ´Ï´Ù (´Ù¸¸ ÆÐŶÀÇ À¯È¿±â°£³»¿¡ ÇÑÁ¤µÈ´Ù. ÀÚ¼¼ÇÑ °ÍÀº Èļú). ¸ÖƼ ij½ºÆ® ±×·ì¿¡ ¸Þ¼¼Áö¸¦ ¼Û½ÅÇϱâ À§Çؼ´Â ¼ÒÄÏÀÌ ±× ¸ÖƼ ij½ºÆ® ±×·ìÀÇ ¸â¹öÀÏ ÇÊ¿ä´Â ¾ø½À´Ï´Ù.
¼ÒÄÏÀÌ ¸ÖƼ ij½ºÆ® ±×·ì ¶Ç´Â Æ÷Åä¿¡ Âü°¡Çϸé(ÀÚ), ´Ù¸¥ È£½ºÆ®·ÎºÎÅÍ ±× ±×·ì ¶Ç´Â Æ÷Åä¿¡ ¼Û½ÅµÈ µ¥ÀÌÅÍ ±×·¥À» ¼ö½ÅÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ±× ±×·ì°ú Æ÷ÅäÀÇ ´Ù¸¥ ¸â¹öµµ ¸ðµÎ °°Àº µ¥ÀÌÅÍ ±×·¥À» ¼ö½ÅÇÕ´Ï´Ù. ¼ÒÄÏÀ» ±×·ìÀ¸·ÎºÎÅÍ Á¦¿ÜÇÏ·Á¸é , leaveGroup(InetAddress addr) ¸Þ¼Òµå¸¦ »ç¿ëÇÕ´Ï´Ù. º¹¼öÀÇ MulticastSocket °¡ µ¿½Ã¿¡ ¸ÖƼ ij½ºÆ® ±×·ì°ú Æ÷Åä¿¡ Âü°¡ÇÒ ¼ö°¡ ÀÖ¾î ±×·¯ÇÑ MulticastSocket ´Â ¸ðµÎ °°Àº ±×·ì µ¥ÀÌÅÍ ±×·¥À» ¼ö½ÅÇÕ´Ï´Ù.
ÇöÀç·Î¼´Â ¾ÖÇø´¿¡¼´Â ¸ÖƼ ij½ºÆ® ¼ÒÄÏÀ» »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
| »ý¼ºÀÚÀÇ °³¿ä | |
MulticastSocket ()
¸ÖƼ ij½ºÆ® ¼ÒÄÏÀ» ÀÛ¼ºÇÕ´Ï´Ù. |
|
MulticastSocket (int port)
ƯÁ¤ÀÇ Æ÷Åä¿¡ ¹ÙÀÎµå µÈ ¸ÖƼ ij½ºÆ® ¼ÒÄÏÀ» ÀÛ¼ºÇÕ´Ï´Ù. |
|
MulticastSocket (SocketAddress bindaddr)
ÁöÁ¤µÈ ¼ÒÄÏ ÁÖ¼Ò¿¡ ¹ÙÀÎµå µÈ MulticastSocket ¸¦ ÀÛ¼ºÇÕ´Ï´Ù. |
|
| ¸Þ¼ÒµåÀÇ °³¿ä | |
InetAddress |
getInterface ()
¸ÖƼ ij½ºÆ® ÆÐŶ¿¡ »ç¿ëÇÏ´Â ³×Æ®¿öÅ© ÀÎÅÍÆäÀ̽ºÀÇ ÁÖ¼Ò¸¦ ÃëµæÇÕ´Ï´Ù. |
boolean |
getLoopbackMode ()
¸ÖƼ ij½ºÆ® µ¥ÀÌÅÍ ±×·¥ÀÇ ·ÎÄà ·çÇÁ¹éÀÇ ¼³Á¤Ä¡¸¦ ÃëµæÇÕ´Ï´Ù. |
NetworkInterface |
getNetworkInterface ()
¸ÖƼ ij½ºÆ® ³×Æ®¿öÅ© ÀÎÅÍÆäÀ̽º ¼¼Æ®¸¦ ÃëµæÇÕ´Ï´Ù. |
int |
getTimeToLive ()
ÀÌ ¼ÒÄÏÀ¸·ÎºÎÅÍ ¼Û½ÅµÇ´Â ¸ÖƼ ij½ºÆ® ÆÐŶÀÇ µðÆúÆ®ÀÇ À¯È¿±â°£À» ÃëµæÇÕ´Ï´Ù. |
byte |
getTTL ()
Ãßõ µÇ°í ÀÖÁö ¾Ê½À´Ï´Ù. ´ë½Å¿¡,byte ´Â ¾Æ´Ï°í int ¸¦ µ¹·ÁÁÖ´Â getTimeToLive ¸Þ¼Òµå¸¦ »ç¿ëÇÕ´Ï´Ù. |
void |
joinGroup (InetAddress mcastaddr)
¸ÖƼ ij½ºÆ® ±×·ì¿¡ Âü°¡ÇÕ´Ï´Ù. |
void |
joinGroup (SocketAddress mcastaddr,
NetworkInterface netIf)
ÁöÁ¤µÈ ÀÎÅÍÆäÀ̽º·Î ÁöÁ¤µÈ ¸ÖƼ ij½ºÆ® ±×·ì¿¡ Âü°¡ÇÕ´Ï´Ù. |
void |
leaveGroup (InetAddress mcastaddr)
¸ÖƼ ij½ºÆ® ±×·ìÀ¸·ÎºÎÅÍ ¸Ö¾îÁý´Ï´Ù. |
void |
leaveGroup (SocketAddress mcastaddr,
NetworkInterface netIf)
ÁöÁ¤µÈ ·ÎÄà ÀÎÅÍÆäÀ̽º»óÀÇ ¸ÖƼ ij½ºÆ® ±×·ìÀ¸·ÎºÎÅÍ ¸Ö¾îÁý´Ï´Ù. |
void |
send (DatagramPacket p,
byte ttl)
Ãßõ µÇ°í ÀÖÁö ¾Ê½À´Ï´Ù. ´ÙÀ½ÀÇ ÄÚµå ¶Ç´Â ±×°Í°ú µ¿µîÀÇ Äڵ带 »ç¿ëÇÑ´Ù: ...... int ttl = mcastSocket.getTimeToLive(); mcastSocket.setTimeToLive(newttl); mcastSocket.send(p); mcastSocket.setTimeToLive(ttl); ...... |
void |
setInterface (InetAddress inf)
³×Æ®¿öÅ© ÀÎÅÍÆäÀ̽ºÀÇ °ª¿¡ ÀÇÇØ ±× µ¿ÀÛÀÌ ¿µÇâÀ» ¹Þ´Â ¸Þ¼Òµå°¡ »ç¿ëÇÏ´Â ¸ÖƼ ij½ºÆ® ³×Æ®¿öÅ© ÀÎÅÍÆäÀ̽º¸¦ ¼³Á¤ÇÕ´Ï´Ù. |
void |
setLoopbackMode (boolean disable)
¸ÖƼ ij½ºÆ® µ¥ÀÌÅÍ ±×·¥ÀÇ ·ÎÄà ·çÇÁ¹éÀ» À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù. |
void |
setNetworkInterface (NetworkInterface netIf)
ÀÌ ¼ÒÄÏÀ¸·ÎºÎÅÍ ¼Û½ÅµÇ´Â ¼ÛÃâ ¸ÖÆ¼ ij½ºÆ® µ¥ÀÌÅÍ ±×·¥¿ëÀÇ ³×Æ®¿öÅ© ÀÎÅÍÆäÀ̽º¸¦ ÁöÁ¤ÇÕ´Ï´Ù. |
void |
setTimeToLive (int ttl)
¸ÖƼ ij½ºÆ®ÀÇ ½ºÄÚÇÁ¸¦ Á¦¾îÇϱâ À§Çؼ, ÀÌ MulticastSocket ·ÎºÎÅÍ ¼Û½ÅµÇ´Â ¸ÖƼ ij½ºÆ® ÆÐŶÀÇ µðÆúÆ®ÀÇ À¯È¿±â°£À» ¼³Á¤ÇÕ´Ï´Ù.
|
void |
setTTL (byte ttl)
Ãßõ µÇ°í ÀÖÁö ¾Ê½À´Ï´Ù. ´ë½Å¿¡, ttl ÀÇ ÇüÅ·μ byte ´Â ¾Æ´Ï°í int ¸¦ »ç¿ëÇÏ´Â setTimeToLive ¸Þ¼Òµå¸¦ »ç¿ëÇÕ´Ï´Ù. |
| Ŭ·¡½º java.net. DatagramSocket ¿¡¼ »ó¼Ó¹ÞÀº ¸Þ¼Òµå |
bind , close , connect , connect , disconnect , getBroadcast , getChannel , getInetAddress , getLocalAddress , getLocalPort , getLocalSocketAddress , getPort , getReceiveBufferSize , getRemoteSocketAddress , getReuseAddress , getSendBufferSize , getSoTimeout , getTrafficClass , isBound , isClosed , isConnected , receive , send , setBroadcast , setDatagramSocketImplFactory , setReceiveBufferSize , setReuseAddress , setSendBufferSize , setSoTimeout , setTrafficClass |
| Ŭ·¡½º java.lang. Object ¿¡¼ »ó¼Ó¹ÞÀº ¸Þ¼Òµå |
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
| »ý¼ºÀÚÀÇ »ó¼¼ |
public MulticastSocket()
throws IOException
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ÃÖÃÊ·Î ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkListen °¡, Àμö·Î¼ 0 À» ÁöÁ¤ÇØ ºÒ·Á °¡ ÀÌ Á¶ÀÛÀÌ Çã°¡µÇ°í ÀÖ´Â °ÍÀ» È®ÀÎÇÕ´Ï´Ù. ÀÌ °á°ú, SecurityException °¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
¼ÒÄÏÀÌ ÀÛ¼ºµÇ¸é(ÀÚ),DatagramSocket#setReuseAddress(true) ¸Þ¼Òµå°¡ ºÒ·Á °¡ SO_REUSEADDR ¼ÒÄÏ ¿É¼ÇÀÌ À¯È¿ÇÏ°Ô µË´Ï´Ù.
IOException - MulticastSocket ÀÇ »ý¼ºÁß¿¡ ÀÔÃâ·Â ¿¹¿Ü°¡ ¹ß»ýÇßÀ» °æ¿ì
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkListen ¸Þ¼Òµå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ìSecurityManager.checkListen(int) ,
DatagramSocket.setReuseAddress(boolean)
public MulticastSocket(int port)
throws IOException
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ÃÖÃÊ·Î ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkListen ¸Þ¼Òµå°¡, Àμö·Î¼ port ¸¦ ÁöÁ¤ÇØ ºÒ·Á °¡ ÀÌ Á¶ÀÛÀÌ Çã°¡µÇ°í ÀÖ´Â °ÍÀ» È®ÀÎÇÕ´Ï´Ù. ÀÌ °á°ú, SecurityException °¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
¼ÒÄÏÀÌ ÀÛ¼ºµÇ¸é(ÀÚ),DatagramSocket#setReuseAddress(true) ¸Þ¼Òµå°¡ ºÒ·Á °¡ SO_REUSEADDR ¼ÒÄÏ ¿É¼ÇÀÌ À¯È¿ÇÏ°Ô µË´Ï´Ù.
port - »ç¿ëÇÏ´Â Æ÷Åä
IOException - MulticastSocket ÀÇ »ý¼ºÁß¿¡ ÀÔÃâ·Â ¿¹¿Ü°¡ ¹ß»ýÇßÀ» °æ¿ì
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkListen ¸Þ¼Òµå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ìSecurityManager.checkListen(int) ,
DatagramSocket.setReuseAddress(boolean)
public MulticastSocket(SocketAddress bindaddr)
throws IOException
ȤÀº ÁÖ¼Ò°¡ null ÀÇ °æ¿ì´Â ¾È ¹Ù¿îµåÀÇ ¼ÒÄÏÀ» ÀÛ¼ºÇÕ´Ï´Ù.
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ÃÖÃÊ·Î ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkListen ¸Þ¼Òµå°¡, Àμö·Î¼ SocketAddress Æ÷Å並 ÁöÁ¤ÇØ ºÒ·Á °¡ ÀÌ Á¶ÀÛÀÌ Çã°¡µÇ°í ÀÖ´Â °ÍÀ» È®ÀÎÇÕ´Ï´Ù. ÀÌ °á°ú, SecurityException °¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
¼ÒÄÏÀÌ ÀÛ¼ºµÇ¸é(ÀÚ),DatagramSocket#setReuseAddress(true) ¸Þ¼Òµå°¡ ºÒ·Á °¡ SO_REUSEADDR ¼ÒÄÏ ¿É¼ÇÀÌ À¯È¿ÇÏ°Ô µË´Ï´Ù.
bindaddr - ¹ÙÀεå ÇÏ´Â ¼ÒÄÏ ÁÖ¼Ò. ¾È ¹Ù¿îµåÀÇ ¼ÒÄÏÀÇ °æ¿ì´Â null
IOException - MulticastSocket ÀÇ »ý¼ºÁß¿¡ ÀÔÃâ·Â ¿¹¿Ü°¡ ¹ß»ýÇßÀ» °æ¿ì
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkListen ¸Þ¼Òµå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ìSecurityManager.checkListen(int) ,
DatagramSocket.setReuseAddress(boolean) | ¸Þ¼ÒµåÀÇ »ó¼¼ |
public void setTTL(byte ttl)
throws IOException
MulticastSocket ·ÎºÎÅÍ ¼Û½ÅµÇ´Â ¸ÖƼ ij½ºÆ® ÆÐŶÀÇ µðÆúÆ®ÀÇ À¯È¿±â°£À» ¼³Á¤ÇÕ´Ï´Ù.
ttl ´ÂºÎÈ£ ¾øÀ½ 8 ºñÆ® µ¥ÀÌÅÍÀ̹ǷÎ,0 <= ttl <= 0xFF ÀÇ ¹üÀ§°¡¾Æ´Ï¸é ¾ÈµË´Ï´Ù.
ttl - À¯È¿±â°£
IOException - µðÆúÆ®ÀÇ À¯È¿±â°£Ä¡¸¦ ¼³Á¤Áß¿¡ ÀÔÃâ·Â ¿¹¿Ü°¡ ¹ß»ýÇßÀ» °æ¿ìgetTTL()
public void setTimeToLive(int ttl)
throws IOException
MulticastSocket ·ÎºÎÅÍ ¼Û½ÅµÇ´Â ¸ÖƼ ij½ºÆ® ÆÐŶÀÇ µðÆúÆ®ÀÇ À¯È¿±â°£À» ¼³Á¤ÇÕ´Ï´Ù.
ttl ÀÇ ¹üÀ§´Â 0 <= ttl <= 255 °¡¾Æ´Ï¸é ¾ÈµË´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â IllegalArgumentException °¡ ½½·Î¿ì µË´Ï´Ù.
ttl - À¯È¿±â°£
IOException - µðÆúÆ®ÀÇ À¯È¿±â°£Ä¡¸¦ ¼³Á¤Áß¿¡ ÀÔÃâ·Â ¿¹¿Ü°¡ ¹ß»ýÇßÀ» °æ¿ìgetTimeToLive()
public byte getTTL()
throws IOException
IOException - µðÆúÆ®ÀÇ À¯È¿±â°£Ä¡¸¦ ÃëµæÁß¿¡ ÀÔÃâ·Â ¿¹¿Ü°¡ ¹ß»ýÇßÀ» °æ¿ìsetTTL(byte)
public int getTimeToLive()
throws IOException
IOException - µðÆúÆ®ÀÇ À¯È¿±â°£Ä¡¸¦ ÃëµæÁß¿¡ ÀÔÃâ·Â ¿¹¿Ü°¡ ¹ß»ýÇßÀ» °æ¿ìsetTimeToLive(int)
public void joinGroup(InetAddress mcastaddr)
throws IOException
setInterface ¶Ç´Â setNetworkInterface ÀÇ ¿µÇâÀ» ¹Þ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ÃÖÃÊ·Î ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkMulticast ¸Þ¼Òµå°¡, Àμö·Î¼ mcastaddr ¸¦ ÁöÁ¤ÇØ ºÒ·Á °©´Ï´Ù.
mcastaddr - Âü°¡ÇÏ´Â ¸ÖƼ ij½ºÆ® ÁÖ¼Ò
IOException - Âü°¡¿¡ ¿¡·¯°¡ ÀÖ´ÂÁö ÁÖ¼Ò°¡ ¸ÖƼ ij½ºÆ® ÁÖ¼Ò°¡ ¾Æ´Ñ °æ¿ì
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkMulticast ¸Þ¼Òµå°¡ Âü°¡¸¦ Çã°¡ÇÏÁö ¾Ê´Â °æ¿ìSecurityManager.checkMulticast(InetAddress)
public void leaveGroup(InetAddress mcastaddr)
throws IOException
setInterface ¶Ç´Â setNetworkInterface ÀÇ ¿µÇâÀ» ¹Þ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ÃÖÃÊ·Î ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkMulticast ¸Þ¼Òµå°¡, Àμö·Î¼ mcastaddr ¸¦ ÁöÁ¤ÇØ ºÒ·Á °©´Ï´Ù.
mcastaddr - ¶³¾îÁö´Â ¸ÖƼ ij½ºÆ® ÁÖ¼Ò
IOException - ¿¡·¯°¡ ³²¾Æ ÀÖ´ÂÁö ÁÖ¼Ò°¡ ¸ÖƼ ij½ºÆ® ÁÖ¼Ò°¡ ¾Æ´Ñ °æ¿ì
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkMulticast ¸Þ¼Òµå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ìSecurityManager.checkMulticast(InetAddress)
public void joinGroup(SocketAddress mcastaddr,
NetworkInterface netIf)
throws IOException
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ÃÖÃÊ·Î ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkMulticast ¸Þ¼Òµå°¡, Àμö·Î¼ mcastaddr ¸¦ ÁöÁ¤ÇØ ºÒ·Á °©´Ï´Ù.
mcastaddr - Âü°¡ÇÏ´Â ¸ÖƼ ij½ºÆ® ÁÖ¼ÒnetIf - ¸ÖƼ ij½ºÆ® µ¥ÀÌÅÍ ±×·¥ ÆÐŶÀ» ¼ö½ÅÇÏ´Â ·ÎÄà ÀÎÅÍÆäÀ̽º¸¦ ÁöÁ¤
IOException - Âü°¡¿¡ ¿¡·¯°¡ ÀÖ´ÂÁö ÁÖ¼Ò°¡ ¸ÖƼ ij½ºÆ® ÁÖ¼Ò°¡ ¾Æ´Ñ °æ¿ì
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkMulticast ¸Þ¼Òµå°¡ Âü°¡¸¦ Çã°¡ÇÏÁö ¾Ê´Â °æ¿ì
IllegalArgumentException - mcastaddr °¡ null ÀÎ °æ¿ì, ¶Ç´Â ÁÖ¼Ò°¡ ÀÌ ¼ÒÄÏÀ¸·Î ¼Æ÷Æ®µÇ¾î ÀÖÁö ¾ÊÀº SocketAddress ¼ºê Ŭ·¡½ºÀÎ °æ¿ìSecurityManager.checkMulticast(InetAddress)
public void leaveGroup(SocketAddress mcastaddr,
NetworkInterface netIf)
throws IOException
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ÃÖÃÊ·Î ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkMulticast ¸Þ¼Òµå°¡, Àμö·Î¼ mcastaddr ¸¦ ÁöÁ¤ÇØ ºÒ·Á °©´Ï´Ù.
mcastaddr - ¶³¾îÁö´Â ¸ÖƼ ij½ºÆ® ÁÖ¼ÒnetIf - ·ÎÄà ÀÎÅÍÆäÀ̽º¸¦ ÁöÁ¤
IOException - ¿¡·¯°¡ ³²¾Æ ÀÖ´ÂÁö ÁÖ¼Ò°¡ ¸ÖƼ ij½ºÆ® ÁÖ¼Ò°¡ ¾Æ´Ñ °æ¿ì
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkMulticast ¸Þ¼Òµå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ì
IllegalArgumentException - mcastaddr °¡ null ÀÎ °æ¿ì, ¶Ç´Â ÁÖ¼Ò°¡ ÀÌ ¼ÒÄÏÀ¸·Î ¼Æ÷Æ®µÇ¾î ÀÖÁö ¾ÊÀº SocketAddress ¼ºê Ŭ·¡½ºÀÎ °æ¿ìSecurityManager.checkMulticast(InetAddress)
public void setInterface(InetAddress inf)
throws SocketException
inf - InetAddress
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìgetInterface()
public InetAddress getInterface()
throws SocketException
InetAddress
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìsetInterface(java.net.InetAddress)
public void setNetworkInterface(NetworkInterface netIf)
throws SocketException
netIf - ÀÎÅÍÆäÀ̽º
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìgetNetworkInterface()
public NetworkInterface getNetworkInterface()
throws SocketException
NetworkInterface
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì#setNetworkInterface()
public void setLoopbackMode(boolean disable)
throws SocketException
ÀÌ ¿É¼ÇÀº ÈùÆ®À̹ǷÎ, ¾îÇø®ÄÉÀ̼ÇÀ¸·Î ·çÇÁ ¹é ¸ðµåÀÇ ¼³Á¤À» Á¶»çÇÒ Çʿ䰡 ÀÖ´Â °æ¿ì´Â getLoopbackMode() ¸¦ È£ÃâÇØ ÁÖ¼¼¿ä.
disable - LoopbackMode ¸¦ ¹«È¿·Î ÇÏ´Â °æ¿ì´Â true
SocketException - Ä¡ÀÇ ¼³Á¤Áß¿¡ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìgetLoopbackMode()
public boolean getLoopbackMode()
throws SocketException
SocketException - Ä¡ÀÇ ÃëµæÁß¿¡ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìsetLoopbackMode(boolean)
public void send(DatagramPacket p,
byte ttl)
throws IOException
setInterface ÀÇ ¿µÇâÀ» ¹Þ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ÀÌ ¸Þ¼Òµå´Â ÃÖÃÊ·Î ÇϵîÀÇ ½ÃÅ¥·¯Æ¼ üũ¸¦ ½ÇÇàÇÕ´Ï´Ù. p.getAddress(). isMulticastAddress() °¡ true À̸é, ÀÌ ¸Þ¼Òµå´Â ÃÖÃÊ·Î, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkMulticast ¸Þ¼Òµå¸¦, Àμö·Î¼ p.getAddress() ¹× ttl ¸¦ ÁöÁ¤ÇØ È£ÃâÇÕ´Ï´Ù. »ó±âÀÇ ½ÄÀÇ °á°ú°¡ false ÀÎ °æ¿ì, ÀÌ ¸Þ¼Òµå´Â ´ë½Å¿¡ ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect ¸Þ¼Òµå¸¦, Àμö·Î¼ p.getAddress(). getHostAddress() ¹× p.getPort() ¸¦ ÁöÁ¤ÇØ È£ÃâÇÕ´Ï´Ù. ÀÌ Á¶ÀÛÀÌ Çã°¡µÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ °¢ ¸Þ¼Òµå È£ÃâÀÇ °á°ú´Â SecurityException °¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
p - ¼Û½ÅÇÏ´Â ÆÐŶ. ÆÐŶ¿¡´Â Ç༱Áö ¸ÖƼ ij½ºÆ® IP ÁÖ¼Ò¿Í ¼Û½Å µ¥ÀÌÅͰ¡ Æ÷ÇԵȴÙ. Ç༱Áö ¸ÖƼ ij½ºÆ® ÁÖ¼Ò¿¡ ÆÐŶÀ» ¼Û½ÅÇϱâ À§Çؼ´Â ±× ±×·ìÀÇ ¸â¹öÀÏ ÇÊ¿ä´Â ¾ø´Âttl - ¸ÖƼ ij½ºÆ® ÆÐŶÀÇ À¯È¿±â°£ (ÀÓÀÇ). µðÆúÆ® ttl Ä¡´Â 1
IOException - ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì (TTL ÀÇ ¼³Á¤Áß¿¡ ¿¡·¯°¡ ¹ß»ý)
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkMulticast ¸Þ¼Òµå ¶Ç´Â checkConnect °¡ ¼Û½ÅÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ìDatagramSocket.send(java.net.DatagramPacket) ,
DatagramSocket.receive(java.net.DatagramPacket) ,
SecurityManager.checkMulticast(java.net.InetAddress, byte) ,
SecurityManager.checkConnect(java.lang.String, int)
|
JavaTM 2 Platform Std. Ed. v1. 4.0 |
||||||||||
| ÀüÀÇ Å¬·¡½º ´ÙÀ½ÀÇ Å¬·¡½º | ÇÁ·¹ÀÓ ÀÖ¾î ÇÁ·¹ÀÓ ¾øÀ½ | ||||||||||
| °³¿ä: »óÀÚ | Çʵå | constructor | ¸Þ¼Òµå | »ó¼¼: Çʵå | constructor | ¸Þ¼Òµå | ||||||||||
Java, Java 2 D, ¹× JDBC ´Â ¹Ì±¹ ¹× ±× ¿ÜÀÇ ³ª¶ó¿¡ ÀÖ¾î¼ÀÇ ¹Ì±¹ Sun Microsystems, Inc. ÀÇ »óÇ¥ ȤÀº µî·Ï»óÇ¥ÀÔ´Ï´Ù.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.