JavaTM 2
Platform
Std.  Ed.  v1. 4.0

java.net
Ŭ·¡½º Socket

java.lang.Object 
  |
  +--java.net.Socket
Á÷°èÀÇ ±âÁ¸ÀÇ ¼­ºê Ŭ·¡½º:
SSLSocket

public class Socket
extends Object

ÀÌ Å¬·¡½º´Â Ŭ¶óÀÌ¾ðÆ® ¼ÒÄÏ (´ÜÁö ¡¸¼ÒÄÏ¡¹À̶ó°íµµ ºÎ¸¥´Ù)À» ±¸ÇöÇÕ´Ï´Ù. ¼ÒÄϰú´Â 2 °³ÀÇ ¸Ó½Å°£ÀÇ Åë½ÅÀÇ ¾ç´Ü¿¡ À§Ä¡ÇÏ´Â °ÍÀÔ´Ï´Ù.

¼ÒÄÏÀÇ ½ÇÁ¦ÀÇ Ã³¸®´Â SocketImpl Ŭ·¡½ºÀÇ ÀνºÅϽº°¡ ½Ç½ÃÇÕ´Ï´Ù. ¾îÇø®ÄÉÀ̼ÇÀº ¼ÒÄÏÀ» ÀÛ¼ºÇÏ´Â ¼ÒÄÏ ÆÑÅ丮¸¦ º¯°æÇÏ´Â °Í¿¡ ÀÇÇØ, ·ÎÄÃÀÇ ÆÄÀÌ¾î ¿ù(fire wall)¿¡ ÀûÀýÇÑ ¼ÒÄÏÀ» ÀÛ¼ºÇϵµ·Ï(µíÀÌ), ¾îÇø®ÄÉÀÌ¼Ç ÀÚ½ÅÀ» ±¸¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.

µµÀÔµÈ ¹öÁ¯:
JDK1. 0
°ü·Ã Ç׸ñ:
setSocketImplFactory(java.net.SocketImplFactory) , SocketImpl , SocketChannel

»ý¼ºÀÚÀÇ °³¿ä
  Socket ()
          ½Ã½ºÅÛÀ¸·Î µðÆúÆ®°¡ µÇ¾î Àִ ŸÀÔÀÇ SocketImpl ¸¦ »ç¿ëÇØ, Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº ¼ÒÄÏÀ» ÀÛ¼ºÇÕ´Ï´Ù.
  Socket (InetAddress  address, int port)
          ½ºÆ®¸² ¼ÒÄÏÀ» ÀÛ¼ºÇØ, ÁöÁ¤µÈ IP ÁÖ¼ÒÀÇ ÁöÁ¤µÈ Æ÷Åä ¹øÈ£¿¡ Á¢¼ÓÇÕ´Ï´Ù.
  Socket (InetAddress  host, int port, boolean stream)
          Ãßõ µÇ°í ÀÖÁö ¾Ê½À´Ï´Ù.  UDP Àü¼ÛÀº ¾Æ´Ï°í DatagramSocket ¸¦ »ç¿ëÇØ ÁÖ¼¼¿ä.
  Socket (InetAddress  address, int port, InetAddress  localAddr, int localPort)
          ¼ÒÄÏÀ» ÀÛ¼ºÇØ, ÁöÁ¤µÈ ¸®¸ðÆ® Æ÷Åä»óÀÇ ÁöÁ¤µÈ ¸®¸ðÆ® ÁÖ¼Ò¿¡ Á¢¼ÓÇÕ´Ï´Ù.
protected Socket (SocketImpl  impl)
          À¯Àú°¡ ÁöÁ¤ÇÑ SocketImpl ¸¦ »ç¿ëÇØ, Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº ¼ÒÄÏÀ» ÀÛ¼ºÇÕ´Ï´Ù.
  Socket (String  host, int port)
          ½ºÆ®¸² ¼ÒÄÏÀ» ÀÛ¼ºÇØ, ÁöÁ¤µÈ È£½ºÆ®»óÀÇ ÁöÁ¤µÈ Æ÷Åä ¹øÈ£¿¡ Á¢¼ÓÇÕ´Ï´Ù.
  Socket (String  host, int port, boolean stream)
          Ãßõ µÇ°í ÀÖÁö ¾Ê½À´Ï´Ù.  UDP Àü¼ÛÀº ¾Æ´Ï°í DatagramSocket ¸¦ »ç¿ëÇØ ÁÖ¼¼¿ä.
  Socket (String  host, int port, InetAddress  localAddr, int localPort)
          ¼ÒÄÏÀ» ÀÛ¼ºÇØ, ÁöÁ¤µÈ ¸®¸ðÆ® Æ÷Åä»óÀÇ ÁöÁ¤µÈ ¸®¸ðÆ® È£½ºÆ®¿¡ Á¢¼ÓÇÕ´Ï´Ù.
 
¸Þ¼ÒµåÀÇ °³¿ä
 void bind (SocketAddress  bindpoint)
          ¼ÒÄÏÀ» ·ÎÄà ÁÖ¼Ò¿¡ ¹ÙÀεå ÇÕ´Ï´Ù.
 void close ()
          ÀÌ ¼ÒÄÏÀ» ´Ý½À´Ï´Ù.
 void connect (SocketAddress  endpoint)
          ÀÌ ¼ÒÄÏÀ» ¼­¹ö¿¡ Á¢¼ÓÇÕ´Ï´Ù.
 void connect (SocketAddress  endpoint, int timeout)
          ÁöÁ¤µÈ ŸÀÓ ¾Æ¿ôÄ¡¸¦ »ç¿ëÇØ ÀÌ ¼ÒÄÏÀ» ¼­¹ö¿¡ Á¢¼ÓÇÕ´Ï´Ù.
 SocketChannel getChannel ()
          ÀÌ ¼ÒÄÏ¿¡ °ü·ÃÇÏ´Â °íÀ¯ÀÇ SocketChannel ¿ÀºêÁ§Æ®¸¦ µ¹·ÁÁÝ´Ï´Ù (Á¸ÀçÇÏ´Â °æ¿ì).
 InetAddress getInetAddress ()
          ¼ÒÄÏÀÇ Á¢¼ÓóÀÇ ÁÖ¼Ò¸¦ µ¹·ÁÁÝ´Ï´Ù.
 InputStream getInputStream ()
          ÀÌ ¼ÒÄÏÀÇ ÀÔ·Â ½ºÆ®¸²À» µ¹·ÁÁÝ´Ï´Ù.
 boolean getKeepAlive ()
          SO_KEEPALIVE °¡ À¯È¿ÇѰ¡ ¾î¶²°¡¸¦ Á¶»çÇÕ´Ï´Ù.
 InetAddress getLocalAddress ()
          ¼ÒÄÏÀÇ ¹ÙÀεåóÀÇ ·ÎÄà ÁÖ¼Ò¸¦ ÃëµæÇÕ´Ï´Ù.
 int getLocalPort ()
          ÀÌ ¼ÒÄÏÀÇ ¹ÙÀεåóÀÇ ·ÎÄà Æ÷Å並 µ¹·ÁÁÝ´Ï´Ù.
 SocketAddress getLocalSocketAddress ()
          ÀÌ ¼ÒÄÏÀÌ ¹ÙÀÎµå µÇ°í ÀÖ´Â ´Ü Á¡ÀÇ ÁÖ¼Ò¸¦ µ¹·ÁÁÝ´Ï´Ù.
 boolean getOOBInline ()
          OOBINLINE °¡ À¯È¿ÇѰ¡ ¾î¶²°¡¸¦ Á¶»çÇÕ´Ï´Ù.
 OutputStream getOutputStream ()
          ÀÌ ¼ÒÄÏÀÇ Ãâ·Â ½ºÆ®¸²À» µ¹·ÁÁÝ´Ï´Ù.
 int getPort ()
          ÀÌ ¼ÒÄÏÀÇ Á¢¼ÓóÀÇ ¸®¸ðÆ® Æ÷Å並 µ¹·ÁÁÝ´Ï´Ù.
 int getReceiveBufferSize ()
          ÀÌ Socket ·Î »ç¿ëµÇ´Â SO_RCVBUF ¿É¼ÇÀÇ °ªÀ» ÃëµæÇÕ´Ï´Ù.
 SocketAddress getRemoteSocketAddress ()
          ÀÌ ¼ÒÄÏÀÌ Á¢¼ÓµÇ°í ÀÖ´Â ´Ü Á¡ÀÇ ÁÖ¼Ò¸¦ µ¹·ÁÁÝ´Ï´Ù.
 boolean getReuseAddress ()
          SO_REUSEADDR °¡ À¯È¿ÇѰ¡ ¾î¶²°¡¸¦ Á¶»çÇÕ´Ï´Ù.
 int getSendBufferSize ()
          ÀÌ Socket ·Î »ç¿ëµÇ´Â SO_SNDBUF ¿É¼ÇÀÇ °ªÀ» ÃëµæÇÕ´Ï´Ù.
 int getSoLinger ()
          SO_LINGER ÀÇ ¼³Á¤À» µ¹·ÁÁÝ´Ï´Ù.
 int getSoTimeout ()
          SO_TIMEOUT ÀÇ ¼³Á¤À» µ¹·ÁÁÝ´Ï´Ù.
 boolean getTcpNoDelay ()
          TCP_NODELAY °¡ À¯È¿ÇѰ¡ ¾î¶²°¡¸¦ Á¶»çÇÕ´Ï´Ù.
 int getTrafficClass ()
          ÀÌ ¼ÒÄÏÀ¸·ÎºÎÅÍ ¼Û½ÅµÇ´Â ÆÐŶÀÇ IP Çì´õÀÇ Æ®·¡ÇÈ Å¬·¡½º ¶Ç´Â ¼­ºñ½º ŸÀÔÀ» ÃëµæÇÕ´Ï´Ù.
 boolean isBound ()
          ¼ÒÄÏÀÇ ¹ÙÀεù »óŸ¦ µ¹·ÁÁÝ´Ï´Ù.
 boolean isClosed ()
          ¼ÒÄÏÀÌ ´ÝÀº »óŸ¦ µ¹·ÁÁÝ´Ï´Ù.
 boolean isConnected ()
          ¼ÒÄÏÀÇ Á¢¼Ó »óŸ¦ µ¹·ÁÁÝ´Ï´Ù.
 boolean isInputShutdown ()
          ¼ÒÄÏ Á¢¼ÓÀÇ readÃøÀÇ ¹ÝÀÌ ´Ý°í ÀÖ´ÂÁö ¾î¶²Áö¸¦ µ¹·ÁÁÝ´Ï´Ù.
 boolean isOutputShutdown ()
          ¼ÒÄÏ Á¢¼ÓÀÇ ±âÀÔÃøÀÇ ¹ÝÀÌ ´Ý°í ÀÖ´ÂÁö ¾î¶²Áö¸¦ µ¹·ÁÁÝ´Ï´Ù.
 void sendUrgentData (int data)
          ¼ÒÄÏ»óÀÇ 1 ¹ÙÀÌÆ®ÀÇ ±ä±Þ µ¥ÀÌÅ͸¦ ¼Û½ÅÇÕ´Ï´Ù.
 void setKeepAlive (boolean on)
          SO_KEEPALIVE ¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù.
 void setOOBInline (boolean on)
          OOBINLINE (TCP ±ä±Þ µ¥ÀÌÅÍÀÇ ¼ö½Å)¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù.
 void setReceiveBufferSize (int size)
          SO_RCVBUF ¿É¼ÇÀ», ÀÌ Socket ·Î ÁöÁ¤µÈ °ªÀ¸·Î ¼³Á¤ÇÕ´Ï´Ù.
 void setReuseAddress (boolean on)
          SO_REUSEADDR ¼ÒÄÏ ¿É¼ÇÀ» À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù.
 void setSendBufferSize (int size)
          SO_SNDBUF ¿É¼ÇÀ», ÀÌ Socket ·Î ÁöÁ¤µÈ °ªÀ¸·Î ¼³Á¤ÇÕ´Ï´Ù.
static void setSocketImplFactory (SocketImplFactory  fac)
          ¾îÇø®ÄÉÀ̼ÇÀÇ Å¬¶óÀÌ¾ðÆ® ¼ÒÄÏ ±¸Çö ÆÑÅ丮¸¦ ¼³Á¤ÇÕ´Ï´Ù.
 void setSoLinger (boolean on, int linger)
          ÁöÁ¤µÈ Áö¿¬ ½Ã°£ (ÃÊ´ÜÀ§)À¸·Î, SO_LINGER ¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù.
 void setSoTimeout (int timeout)
          ÁöÁ¤µÈ ŸÀÓ ¾Æ¿ô (¹Ð¸® ¼¼ÄÁµå ´ÜÀ§)À» »ç¿ëÇØ, SO_TIMEOUT ¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù.
 void setTcpNoDelay (boolean on)
          TCP_NODELAY ¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù (Nagle ÀÇ ¾Ë°í¸®ÁòÀÇ À¯È¿, ¹«È¿ÀÇ º¯È¯).
 void setTrafficClass (int tc)
          ÀÌ Socket ·ÎºÎÅÍ ¼Û½ÅµÇ´Â ÆÐŶÀÇ IP Çì´õÀÇ Æ®·¡ÇÈ Å¬·¡½º ¶Ç´Â ¼­ºñ½º ŸÀÔ octet ¸¦ ¼³Á¤ÇÕ´Ï´Ù.
 void shutdownInput ()
          ÀÌ ¼ÒÄÏÀÇ ÀÔ·Â ½ºÆ®¸²À» ¡¸½ºÆ®¸²ÀÇ ÃÖÈÄ¡¹¿¡ ¹èÄ¡ÇÕ´Ï´Ù.
 void shutdownOutput ()
          ÀÌ ¼ÒÄÏÀÇ Ãâ·Â ½ºÆ®¸²À» ¹«È¿·Î ÇÕ´Ï´Ù.
 String toString ()
          ÀÌ ¼ÒÄÏÀ» String ·Î º¯È¯ÇÕ´Ï´Ù.
 
Ŭ·¡½º java.lang. Object ¿¡¼­ »ó¼Ó¹ÞÀº ¸Þ¼Òµå
clone , equals , finalize , getClass , hashCode , notify , notifyAll , wait , wait , wait
 

»ý¼ºÀÚÀÇ »ó¼¼

Socket

public Socket()
½Ã½ºÅÛÀ¸·Î µðÆúÆ®°¡ µÇ¾î Àִ ŸÀÔÀÇ SocketImpl ¸¦ »ç¿ëÇØ, Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº ¼ÒÄÏÀ» ÀÛ¼ºÇÕ´Ï´Ù.

µµÀÔµÈ ¹öÁ¯:
JDK1. 1

Socket

protected Socket(SocketImpl  impl)
          throws SocketException 
À¯Àú°¡ ÁöÁ¤ÇÑ SocketImpl ¸¦ »ç¿ëÇØ, Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº ¼ÒÄÏÀ» ÀÛ¼ºÇÕ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
impl - ¼­ºê Ŭ·¡½º°¡ Socket »ó¿¡¼­ »ç¿ëÇÏ´Â SocketImpl ÀÇ ÀνºÅϽº
¿¹¿Ü:
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÁ¯:
JDK1. 1

Socket

public Socket(String  host,
              int port)
       throws UnknownHostException ,
              IOException 
½ºÆ®¸² ¼ÒÄÏÀ» ÀÛ¼ºÇØ, ÁöÁ¤µÈ È£½ºÆ®»óÀÇ ÁöÁ¤µÈ Æ÷Åä ¹øÈ£¿¡ Á¢¼ÓÇÕ´Ï´Ù.

¾îÇø®ÄÉÀ̼ÇÀ¸·Î ¼­¹ö ¼ÒÄÏ ÆÑÅ丮¸¦ ÁöÁ¤Çϰí ÀÖ´Â °æ¿ì´Â ±× ÆÑÅ丮ÀÇ createSocketImpl ¸Þ¼Òµå°¡ ºÒ·Á °¡ ½ÇÁ¦ÀÇ ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â ¡¸ÇÁ·¹ÀÎÀΡ¹¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù.

½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect °¡, Àμö·Î¼­ È£½ºÆ® ÁÖ¼Ò¿Í port ¹øÈ£¸¦ ÁöÁ¤ÇØ ºÒ·Á °©´Ï´Ù. ÀÌ °á°ú, SecurityException °¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
host - È£½ºÆ®¸í
port - Æ÷Åä ¹øÈ£
¿¹¿Ü:
UnknownHostException - È£½ºÆ®ÀÇ IP ÁÖ¼Ò¸¦ ÆÇÁ¤ÇÒ ¼ö ¾ø¾ú´ø °æ¿ì
IOException - ¼ÒÄÏÀÇ »ý¼ºÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect ¸Þ¼Òµå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ì
°ü·Ã Ç׸ñ:
setSocketImplFactory(java.net.SocketImplFactory) , SocketImpl , SocketImplFactory.createSocketImpl() , SecurityManager.checkConnect(java.lang.String, int)

Socket

public Socket(InetAddress  address,
              int port)
       throws IOException 
½ºÆ®¸² ¼ÒÄÏÀ» ÀÛ¼ºÇØ, ÁöÁ¤µÈ IP ÁÖ¼ÒÀÇ ÁöÁ¤µÈ Æ÷Åä ¹øÈ£¿¡ Á¢¼ÓÇÕ´Ï´Ù.

¾îÇø®ÄÉÀ̼ÇÀ¸·Î ¼­¹ö ¼ÒÄÏ ÆÑÅ丮¸¦ ÁöÁ¤Çϰí ÀÖ´Â °æ¿ì´Â ±× ÆÑÅ丮ÀÇ createSocketImpl ¸Þ¼Òµå°¡ ºÒ·Á °¡ ½ÇÁ¦ÀÇ ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â ¡¸ÇÁ·¹ÀÎÀΡ¹¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù.

½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect °¡, Àμö·Î¼­ È£½ºÆ® ÁÖ¼Ò¿Í port ¹øÈ£¸¦ ÁöÁ¤ÇØ ºÒ·Á °©´Ï´Ù. ÀÌ °á°ú, SecurityException °¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
address - IP ÁÖ¼Ò
port - Æ÷Åä ¹øÈ£
¿¹¿Ü:
IOException - ¼ÒÄÏÀÇ »ý¼ºÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect ¸Þ¼Òµå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ì
°ü·Ã Ç׸ñ:
setSocketImplFactory(java.net.SocketImplFactory) , SocketImpl , SocketImplFactory.createSocketImpl() , SecurityManager.checkConnect(java.lang.String, int)

Socket

public Socket(String  host,
              int port,
              InetAddress  localAddr,
              int localPort)
       throws IOException 
¼ÒÄÏÀ» ÀÛ¼ºÇØ, ÁöÁ¤µÈ ¸®¸ðÆ® Æ÷Åä»óÀÇ ÁöÁ¤µÈ ¸®¸ðÆ® È£½ºÆ®¿¡ Á¢¼ÓÇÕ´Ï´Ù. ¼ÒÄÏÀº ÁöÁ¤µÈ ·ÎÄà ÁÖ¼Ò¿Í Æ÷Åä¿¡ ¹ÙÀÎµå µË´Ï´Ù.

½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect °¡, Àμö·Î¼­ È£½ºÆ® ÁÖ¼Ò¿Í port ¹øÈ£¸¦ ÁöÁ¤ÇØ ºÒ·Á °©´Ï´Ù. ÀÌ °á°ú, SecurityException °¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
host - ¸®¸ðÆ® È£½ºÆ®¸í
port - ¸®¸ðÆ® Æ÷Åä
localAddr - ¼ÒÄÏÀÇ ¹ÙÀεåóÀÇ ·ÎÄà ÁÖ¼Ò
localPort - ¼ÒÄÏÀÇ ¹ÙÀεåóÀÇ ·ÎÄà Æ÷Åä
¿¹¿Ü:
IOException - ¼ÒÄÏÀÇ »ý¼ºÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect ¸Þ¼Òµå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ì
µµÀÔµÈ ¹öÁ¯:
JDK1. 1
°ü·Ã Ç׸ñ:
SecurityManager.checkConnect(java.lang.String, int)

Socket

public Socket(InetAddress  address,
              int port,
              InetAddress  localAddr,
              int localPort)
       throws IOException 
¼ÒÄÏÀ» ÀÛ¼ºÇØ, ÁöÁ¤µÈ ¸®¸ðÆ® Æ÷Åä»óÀÇ ÁöÁ¤µÈ ¸®¸ðÆ® ÁÖ¼Ò¿¡ Á¢¼ÓÇÕ´Ï´Ù. ¼ÒÄÏÀº ÁöÁ¤µÈ ·ÎÄà ÁÖ¼Ò¿Í Æ÷Åä¿¡ ¹ÙÀÎµå µË´Ï´Ù.

½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect °¡, Àμö·Î¼­ È£½ºÆ® ÁÖ¼Ò¿Í port ¹øÈ£¸¦ ÁöÁ¤ÇØ ºÒ·Á °©´Ï´Ù. ÀÌ °á°ú, SecurityException °¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
address - ¸®¸ðÆ® ÁÖ¼Ò
port - ¸®¸ðÆ® Æ÷Åä
localAddr - ¼ÒÄÏÀÇ ¹ÙÀεåóÀÇ ·ÎÄà ÁÖ¼Ò
localPort - ¼ÒÄÏÀÇ ¹ÙÀεåóÀÇ ·ÎÄà Æ÷Åä
¿¹¿Ü:
IOException - ¼ÒÄÏÀÇ »ý¼ºÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect ¸Þ¼Òµå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ì
µµÀÔµÈ ¹öÁ¯:
JDK1. 1
°ü·Ã Ç׸ñ:
SecurityManager.checkConnect(java.lang.String, int)

Socket

public Socket(String  host,
              int port,
              boolean stream)
       throws IOException 
Ãßõ µÇ°í ÀÖÁö ¾Ê½À´Ï´Ù.  UDP Àü¼ÛÀº ¾Æ´Ï°í DatagramSocket ¸¦ »ç¿ëÇØ ÁÖ¼¼¿ä.

½ºÆ®¸² ¼ÒÄÏÀ» ÀÛ¼ºÇØ, ÁöÁ¤µÈ È£½ºÆ®»óÀÇ ÁöÁ¤µÈ Æ÷Åä ¹øÈ£¿¡ Á¢¼ÓÇÕ´Ï´Ù.

stream Àμö¿¡ true ¸¦ ÁöÁ¤Çϸé(ÀÚ), ½ºÆ®¸² ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù. stream Àμö¿¡ false ¸¦ ÁöÁ¤Çϸé(ÀÚ), µ¥ÀÌÅÍ ±×·¥ ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù.

¾îÇø®ÄÉÀ̼ÇÀ¸·Î ¼­¹ö ¼ÒÄÏ ÆÑÅ丮¸¦ ÁöÁ¤Çϰí ÀÖ´Â °æ¿ì´Â ±× ÆÑÅ丮ÀÇ createSocketImpl ¸Þ¼Òµå°¡ ºÒ·Á °¡ ½ÇÁ¦ÀÇ ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â ¡¸ÇÁ·¹ÀÎÀΡ¹¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù.

½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect °¡, Àμö·Î¼­ È£½ºÆ® ÁÖ¼Ò¿Í port ¹øÈ£¸¦ ÁöÁ¤ÇØ ºÒ·Á °©´Ï´Ù. ÀÌ °á°ú, SecurityException °¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.

UDP ¼ÒÄÏÀ» »ç¿ëÇÏ´Â °æ¿ì, TCP/IP ¿¡ °ü·ÃÇÏ´Â ¼ÒÄÏ ¿É¼ÇÀº Àû¿ëµÇÁö ¾Ê½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
host - È£½ºÆ®¸í
port - Æ÷Åä ¹øÈ£
stream - ½ºÆ®¸² ¼ÒÄÏÀ̳ª µ¥ÀÌÅÍ ±×·¥ ¼ÒÄÏÀÎÁö¸¦ ³ªÅ¸³»´Â boolean Ä¡
¿¹¿Ü:
IOException - ¼ÒÄÏÀÇ »ý¼ºÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect ¸Þ¼Òµå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ì
°ü·Ã Ç׸ñ:
setSocketImplFactory(java.net.SocketImplFactory) , SocketImpl , SocketImplFactory.createSocketImpl() , SecurityManager.checkConnect(java.lang.String, int)

Socket

public Socket(InetAddress  host,
              int port,
              boolean stream)
       throws IOException 
Ãßõ µÇ°í ÀÖÁö ¾Ê½À´Ï´Ù.  UDP Àü¼ÛÀº ¾Æ´Ï°í DatagramSocket ¸¦ »ç¿ëÇØ ÁÖ¼¼¿ä.

¼ÒÄÏÀ» ÀÛ¼ºÇØ, ÁöÁ¤µÈ IP ÁÖ¼Ò¿¡ ÀÖ´Â ÁöÁ¤µÈ Æ÷Åä ¹øÈ£¿¡ Á¢¼ÓÇÕ´Ï´Ù.

stream Àμö¿¡ true ¸¦ ÁöÁ¤Çϸé(ÀÚ), ½ºÆ®¸² ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù. stream Àμö¿¡ false ¸¦ ÁöÁ¤Çϸé(ÀÚ), µ¥ÀÌÅÍ ±×·¥ ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù.

¾îÇø®ÄÉÀ̼ÇÀ¸·Î ¼­¹ö ¼ÒÄÏ ÆÑÅ丮¸¦ ÁöÁ¤Çϰí ÀÖ´Â °æ¿ì´Â ±× ÆÑÅ丮ÀÇ createSocketImpl ¸Þ¼Òµå°¡ ºÒ·Á °¡ ½ÇÁ¦ÀÇ ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â ¡¸ÇÁ·¹ÀÎÀΡ¹¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù.

½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect ¸Þ¼Òµå°¡, Àμö·Î¼­ host.getHostAddress() ¿Í port ¹øÈ£¸¦ ÁöÁ¤ÇØ ºÒ·Á °©´Ï´Ù. ÀÌ °á°ú, SecurityException °¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.

UDP ¼ÒÄÏÀ» »ç¿ëÇÏ´Â °æ¿ì, TCP/IP ¿¡ °ü·ÃÇÏ´Â ¼ÒÄÏ ¿É¼ÇÀº Àû¿ëµÇÁö ¾Ê½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
host - IP ÁÖ¼Ò
port - Æ÷Åä ¹øÈ£
stream - true ¸¦ ÁöÁ¤ÇßÀ» °æ¿ì´Â ½ºÆ®¸² ¼ÒÄÏÀÌ ÀÛ¼ºµÇ¾î ±×·¸Áö ¾ÊÀº °æ¿ì´Â µ¥ÀÌÅÍ ±×·¥ ¼ÒÄÏÀÌ ÀÛ¼ºµÈ´Ù
¿¹¿Ü:
IOException - ¼ÒÄÏÀÇ »ý¼ºÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect ¸Þ¼Òµå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ì
°ü·Ã Ç׸ñ:
setSocketImplFactory(java.net.SocketImplFactory) , SocketImpl , SocketImplFactory.createSocketImpl() , SecurityManager.checkConnect(java.lang.String, int)
¸Þ¼ÒµåÀÇ »ó¼¼

connect

public void connect(SocketAddress  endpoint)
             throws IOException 
ÀÌ ¼ÒÄÏÀ» ¼­¹ö¿¡ Á¢¼ÓÇÕ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
endpoint - SocketAddress
¿¹¿Ü:
IOException - Á¢¼Ó½Ã¿¡ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
IllegalBlockingModeException - ÀÌ ¼ÒÄÏ¿¡ °ü·ÃÇϴ ä³ÎÀÌ Á¸ÀçÇØ, ±× ä³ÎÀÌ ºñºí·ÎÅ· ¸ðµåÀÇ °æ¿ì
IllegalArgumentException - ´Ü Á¡ÀÌ null ÀÎ °æ¿ì, ¶Ç´Â ´Ü Á¡ÀÌ ÀÌ ¼ÒÄÏÀ¸·Î ¼­Æ÷Æ®µÇ¾î ÀÖÁö ¾ÊÀº SocketAddress ¼­ºê Ŭ·¡½ºÀÎ °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.4

connect

public void connect(SocketAddress  endpoint,
                    int timeout)
             throws IOException 
ÁöÁ¤µÈ ŸÀÓ ¾Æ¿ôÄ¡¸¦ »ç¿ëÇØ ÀÌ ¼ÒÄÏÀ» ¼­¹ö¿¡ Á¢¼ÓÇÕ´Ï´Ù. ŸÀÓ ¾Æ¿ô¿¡ 0 À» ÁöÁ¤Çϸé(ÀÚ), ŸÀÓ ¾Æ¿ôÀº ¹«ÇÑÀ̶ó°í ÇØ¼®µË´Ï´Ù. ±× °æ¿ì, Á¢¼ÓÀÌ È®¸³µÉ±î ¿¡·¯°¡ ¹ß»ýÇÒ ¶§±îÁö Á¢¼ÓÀº ºí·Ï µË´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
endpoint - SocketAddress
timeout - »ç¿ëÇϴ ŸÀÓ ¾Æ¿ôÄ¡ (¹Ð¸® ¼¼ÄÁµå)
¿¹¿Ü:
IOException - Á¢¼Ó½Ã¿¡ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SocketTimeoutException - Á¢¼ÓÇϱâ Àü¿¡ ŸÀÓ ¾Æ¿ôÀÌ Áö³µÀ» °æ¿ì
IllegalBlockingModeException - ÀÌ ¼ÒÄÏ¿¡ °ü·ÃÇϴ ä³ÎÀÌ Á¸ÀçÇØ, ±× ä³ÎÀÌ ºñºí·ÎÅ· ¸ðµåÀÇ °æ¿ì
IllegalArgumentException - ´Ü Á¡ÀÌ null ÀÎ °æ¿ì, ¶Ç´Â ´Ü Á¡ÀÌ ÀÌ ¼ÒÄÏÀ¸·Î ¼­Æ÷Æ®µÇ¾î ÀÖÁö ¾ÊÀº SocketAddress ¼­ºê Ŭ·¡½ºÀÎ °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.4

bind

public void bind(SocketAddress  bindpoint)
          throws IOException 
¼ÒÄÏÀ» ·ÎÄà ÁÖ¼Ò¿¡ ¹ÙÀεå ÇÕ´Ï´Ù.

ÁÖ¼Ò°¡ null ÀÇ °æ¿ì´Â ½Ã½ºÅÛ¿¡ ÀÇÇØ ÀϽÃÀûÀÎ Æ÷Åä¿Í À¯È¿ÇÑ ·ÎÄà ÁÖ¼Ò°¡ ¼±ÅÃµÇ¾î ¼ÒÄÏÀÌ ¹ÙÀÎµå µË´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
bindpoint - ¹ÙÀεåóÀÇ SocketAddress
¿¹¿Ü:
IOException - ¹ÙÀεå Á¶ÀÛ¿¡ ½ÇÆÐÇßÀ» °æ¿ì, ȤÀº ¼ÒÄÏÀÌ ¹ú½á ¹ÙÀÎµå µÇ°í ÀÖ´Â °æ¿ì
IllegalArgumentException - bindpoint °¡ ÀÌ ¼ÒÄÏÀ¸·Î ¼­Æ÷Æ®µÇ¾î ÀÖÁö ¾ÊÀº SocketAddress ¼­ºê Ŭ·¡½ºÀÎ °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.4
°ü·Ã Ç׸ñ:
isBound()

getInetAddress

public InetAddress  getInetAddress()
¼ÒÄÏÀÇ Á¢¼ÓóÀÇ ÁÖ¼Ò¸¦ µ¹·ÁÁÝ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ¼ÒÄÏÀÇ Á¢¼ÓóÀÇ ¸®¸ðÆ® IP ÁÖ¼Ò. ¼ÒÄÏÀÌ Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â null

getLocalAddress

public InetAddress  getLocalAddress()
¼ÒÄÏÀÇ ¹ÙÀεåóÀÇ ·ÎÄà ÁÖ¼Ò¸¦ ÃëµæÇÕ´Ï´Ù.

¹Ýȯ°ª:
¼ÒÄÏÀÇ ¹ÙÀεåóÀÇ ·ÎÄà ÁÖ¼Ò. ¼ÒÄÏÀÌ ¾ÆÁ÷ ¹ÙÀεåµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â InetAddress.anyLocalAddress()
µµÀÔµÈ ¹öÁ¯:
JDK1. 1

getPort

public int getPort()
ÀÌ ¼ÒÄÏÀÇ Á¢¼ÓóÀÇ ¸®¸ðÆ® Æ÷Å並 µ¹·ÁÁÝ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ¼ÒÄÏÀÇ Á¢¼ÓóÀÇ ¸®¸ðÆ® Æ÷Åä ¹øÈ£. ¼ÒÄÏÀÌ ¾ÆÁ÷ Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â 0

getLocalPort

public int getLocalPort()
ÀÌ ¼ÒÄÏÀÇ ¹ÙÀεåóÀÇ ·ÎÄà Æ÷Å並 µ¹·ÁÁÝ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ¼ÒÄÏÀÇ ¹ÙÀεåóÀÇ ·ÎÄà Æ÷Åä ¹øÈ£. ¼ÒÄÏÀÌ ¾ÆÁ÷ ¹ÙÀεåµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â -1

getRemoteSocketAddress

public SocketAddress  getRemoteSocketAddress()
ÀÌ ¼ÒÄÏÀÌ Á¢¼ÓµÇ°í ÀÖ´Â ´Ü Á¡ÀÇ ÁÖ¼Ò¸¦ µ¹·ÁÁÝ´Ï´Ù. ¼ÒÄÏÀÌ Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â null ¸¦ µ¹·ÁÁÝ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ¼ÒÄÏÀÇ ¸®¸ðÆ®´ÜÁ¡À» ³ªÅ¸³»´Â SocketAddress. ¼ÒÄÏÀÌ ¾ÆÁ÷ Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â null
µµÀÔµÈ ¹öÁ¯:
1.4
°ü·Ã Ç׸ñ:
getInetAddress() , getPort() , connect(SocketAddress, int) , connect(SocketAddress)

getLocalSocketAddress

public SocketAddress  getLocalSocketAddress()
ÀÌ ¼ÒÄÏÀÌ ¹ÙÀÎµå µÇ°í ÀÖ´Â ´Ü Á¡ÀÇ ÁÖ¼Ò¸¦ µ¹·ÁÁÝ´Ï´Ù. ¼ÒÄÏÀÌ ¹ÙÀεåµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â null ¸¦ µ¹·ÁÁÝ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ¼ÒÄÏÀÇ ·ÎÄôÜÁ¡À» ³ªÅ¸³»´Â SocketAddress. ¼ÒÄÏÀÌ ¾ÆÁ÷ ¹ÙÀεåµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â null
µµÀÔµÈ ¹öÁ¯:
1.4
°ü·Ã Ç׸ñ:
getLocalAddress() , getLocalPort() , bind(SocketAddress)

getChannel

public SocketChannel  getChannel()
ÀÌ ¼ÒÄÏ¿¡ °ü·ÃÇÏ´Â °íÀ¯ÀÇ SocketChannel ¿ÀºêÁ§Æ®¸¦ µ¹·ÁÁÝ´Ï´Ù (Á¸ÀçÇÏ´Â °æ¿ì).

ä³Î ÀÚü°¡ SocketChannel.open ¶Ç´Â ServerSocketChannel.accept ¸Þ¼Òµå¸¦ »ç¿ëÇØ ÀÛ¼ºµÇ¾úÀ» °æ¿ì¿¡¸¸, ¼ÒÄÏ¿¡ ä³ÎÀÌ Á¸ÀçÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ¼ÒÄÏ¿¡ °ü·ÃÇÏ´Â ¼ÒÄÏ Ã¤³Î. ÀÌ ¼ÒÄÏÀÌ Ã¤³Î¿ëÀ¸·Î »ý¼ºµÇÁö ¾Ê¾Ò´ø °æ¿ì´Â null
µµÀÔµÈ ¹öÁ¯:
1.4

getInputStream

public InputStream  getInputStream()
                           throws IOException 
ÀÌ ¼ÒÄÏÀÇ ÀÔ·Â ½ºÆ®¸²À» µ¹·ÁÁÝ´Ï´Ù.

ÀÌ ¼ÒÄÏ¿¡ °ü·ÃÇϴ ä³ÎÀÌ Á¸ÀçÇÏ´Â °æ¿ì´Â °á°úÀÇ ÀÔ·Â ½ºÆ®¸²Àº ±× Á¶ÀÛÀ» ¸ðµÎ ä³Î¿¡ delegate ÇÕ´Ï´Ù. ±× ä³ÎÀÌ ºñºí·Ï ¸ðµåÀÇ °æ¿ì, ÀÔ·Â ½ºÆ®¸²ÀÇ read Á¶ÀÛÀ¸·Î IllegalBlockingModeException °¡ ½½·Î¿ì µË´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ¼ÒÄÏÀ¸·ÎºÎÅÍ ¹ÙÀÌÆ®¸¦ ÀоîµéÀ̱â À§ÇÑ ÀÔ·Â ½ºÆ®¸²
¿¹¿Ü:
IOException - ÀÔ·Â ½ºÆ®¸²ÀÇ ÀÛ¼ºÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì, ȤÀº ¼ÒÄÏÀÌ Á¢¼ÓµÇÁö ¾Ê´Â °æ¿ì

getOutputStream

public OutputStream  getOutputStream()
                             throws IOException 
ÀÌ ¼ÒÄÏÀÇ Ãâ·Â ½ºÆ®¸²À» µ¹·ÁÁÝ´Ï´Ù.

ÀÌ ¼ÒÄÏ¿¡ °ü·ÃÇϴ ä³ÎÀÌ Á¸ÀçÇÏ´Â °æ¿ì´Â °á°úÀÇ Ãâ·Â ½ºÆ®¸²Àº ±× Á¶ÀÛÀ» ¸ðµÎ ä³Î¿¡ delegate ÇÕ´Ï´Ù. ±× ä³ÎÀÌ ºñºí·Ï ¸ðµåÀÇ °æ¿ì, Ãâ·Â ½ºÆ®¸²ÀÇ write Á¶ÀÛÀ¸·Î IllegalBlockingModeException °¡ ½½·Î¿ì µË´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ¼ÒÄÏ¿¡ ¹ÙÀÌÆ®¸¦ ±âÀÔÇϱâ À§ÇÑ Ãâ·Â ½ºÆ®¸²
¿¹¿Ü:
IOException - Ãâ·Â ½ºÆ®¸²ÀÇ ÀÛ¼ºÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì, ȤÀº ¼ÒÄÏÀÌ Á¢¼ÓµÇÁö ¾Ê´Â °æ¿ì

setTcpNoDelay

public void setTcpNoDelay(boolean on)
                   throws SocketException 
TCP_NODELAY ¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù (Nagle ÀÇ ¾Ë°í¸®ÁòÀÇ À¯È¿, ¹«È¿ÀÇ º¯È¯).

ÆÄ¶ó¹ÌÅÍ:
on - TCP_NODELAY ¸¦ À¯È¿ÇÏ°Ô ÇÏ´Â °æ¿ì´Â true, ¹«È¿·Î ÇÏ´Â °æ¿ì´Â false
¿¹¿Ü:
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÁ¯:
JDK1. 1
°ü·Ã Ç׸ñ:
getTcpNoDelay()

getTcpNoDelay

public boolean getTcpNoDelay()
                      throws SocketException 
TCP_NODELAY °¡ À¯È¿ÇѰ¡ ¾î¶²°¡¸¦ Á¶»çÇÕ´Ï´Ù.

¹Ýȯ°ª:
TCP_NODELAY °¡ À¯È¿ÇѰ¡ ¾î¶²°¡¸¦ ³ªÅ¸³»´Â boolean Ä¡
¿¹¿Ü:
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÁ¯:
JDK1. 1
°ü·Ã Ç׸ñ:
setTcpNoDelay(boolean)

setSoLinger

public void setSoLinger(boolean on,
                        int linger)
                 throws SocketException 
ÁöÁ¤µÈ Áö¿¬ ½Ã°£ (ÃÊ´ÜÀ§)À¸·Î, SO_LINGER ¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù. ÃÖ´ë ŸÀÓ ¾Æ¿ôÀÇ °ªÀº Ç÷§Æû¿¡ °íÀ¯ÇÕ´Ï´Ù. ¼³Á¤Àº ¼ÒÄÏÀ» ´Ý´Â °æ¿ì¿¡¸¸ ¿µÇâÀ» ÁÝ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
on - Áö¿¬ ½Ã°£À» À¯È¿ÇÏ°Ô ÇÒÁö ¾î¶³Áö¸¦ ÁöÁ¤
linger - on °¡ true ÀÇ °æ¿ì´Â Áö¿¬ ½Ã°£
¿¹¿Ü:
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
IllegalArgumentException - Áö¿¬ ½Ã°£ÀÇ °ªÀÌ ºÎÀÇ ¼öÄ¡ÀÎ °æ¿ì
µµÀÔµÈ ¹öÁ¯:
JDK1. 1
°ü·Ã Ç׸ñ:
getSoLinger()

getSoLinger

public int getSoLinger()
                throws SocketException 
SO_LINGER ÀÇ ¼³Á¤À» µ¹·ÁÁÝ´Ï´Ù. ¹Ýȯ°ªÀÌ -1 ÀÇ °æ¿ì´Â ÀÌ ¿É¼ÇÀÌ ¹«È¿¶ó´Â Á¡À» ³ªÅ¸³À´Ï´Ù. ¼³Á¤Àº ¼ÒÄÏÀ» ´Ý´Â °æ¿ì¿¡¸¸ ¿µÇâÀ» ÁÝ´Ï´Ù.

¹Ýȯ°ª:
SO_LINGER ÀÇ ¼³Á¤
¿¹¿Ü:
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÁ¯:
JDK1. 1
°ü·Ã Ç׸ñ:
setSoLinger(boolean, int)

sendUrgentData

public void sendUrgentData(int data)
                    throws IOException 
¼ÒÄÏ»óÀÇ 1 ¹ÙÀÌÆ®ÀÇ ±ä±Þ µ¥ÀÌÅ͸¦ ¼Û½ÅÇÕ´Ï´Ù. ¼Û½ÅµÇ´Â ¹ÙÀÌÆ®´Â µ¥ÀÌÅÍ ÆÄ¶ó¹ÌÅÍÀÇ ÃÖÇÏÁ¤µµ 8 ºñÆ®ÀÔ´Ï´Ù. ±ä±Þ µ¥ÀÌÅÍ´Â ¼ÒÄÏÀÇ OutputStream ¿¡ÀÇ ¸ðµç ¼±ÇàÇÏ´Â ±âÀÔµÚ, ¹× OutputStream ¿¡ÀÇ ÇâÈÄÀÇ ±âÀÔÀü¿¡ ¼Û½ÅµË´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
data - ¼Û½ÅÇÏ´Â µ¥ÀÌÅÍÀÇ ¹ÙÀÌÆ®
¿¹¿Ü:
IOException - µ¥ÀÌÅ͸¦ ¼Û½ÅÇÒ °æ¿ì¿¡ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.4

setOOBInline

public void setOOBInline(boolean on)
                  throws SocketException 
OOBINLINE (TCP ±ä±Þ µ¥ÀÌÅÍÀÇ ¼ö½Å)¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù. µðÆúÆ®¿¡¼­´Â ÀÌ ¿É¼ÇÀº ¹«È¿·Î, ¼ÒÄÏÀ¸·Î ¼ö½ÅÇÑ TCP ±ä±Þ µ¥ÀÌÅÍ´Â ±×´ë·Î ÆÄ±âµË´Ï´Ù. ±ä±Þ µ¥ÀÌÅ͸¦ ¼ö½ÅÇÏ´Â °æ¿ì´Â ÀÌ ¿É¼ÇÀ» À¯È¿ÇÏ°Ô ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. À¯È¿ÇÏ°Ô ÇßÀ» °æ¿ì, ±ä±Þ µ¥ÀÌÅÍ´Â Åë»ó µ¥ÀÌÅÍ¿Í ÇÔ²² ÀÎ ¶óÀÎÀ¸·Î ¼ö½ÅµË´Ï´Ù.

¼ö½ÅÇÏ´Â ±ä±Þ µ¥ÀÌÅÍÀÇ Ã³¸®¿¡´Â ÇÑÁ¤ÇÑ ¼­Æ÷Æ® ¹Û¿¡ Á¦°øµÇÁö ¾Ê´Â °Í¿¡ ÁÖÀÇÇØ ÁÖ¼¼¿ä. ƯÈ÷, °íÀ§ ·¹º§ÀÇ ÇÁ·ÎÅäÄÝÀÌ Á¦°øµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì, ¼ö½ÅÇÏ´Â ±ä±Þ µ¥ÀÌÅÍÀÇ ÅëÁö´Â Á¦°øµÇÁö ¾Ê°í Åë»ó µ¥ÀÌÅÍ¿Í ±ä±Þ µ¥ÀÌÅ͸¦ ±¸º°ÇÏ´Â ±â´ÉÀº ¾ø½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
on - OOBINLINE ¸¦ À¯È¿ÇÏ°Ô ÇÏ´Â °æ¿ì´Â true, ¹«È¿·Î ÇÏ´Â °æ¿ì´Â false
¿¹¿Ü:
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.4
°ü·Ã Ç׸ñ:
getOOBInline()

getOOBInline

public boolean getOOBInline()
                     throws SocketException 
OOBINLINE °¡ À¯È¿ÇѰ¡ ¾î¶²°¡¸¦ Á¶»çÇÕ´Ï´Ù.

¹Ýȯ°ª:
OOBINLINE °¡ À¯È¿ÇѰ¡ ¾î¶²°¡¸¦ ³ªÅ¸³»´Â boolean Ä¡
¿¹¿Ü:
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.4
°ü·Ã Ç׸ñ:
setOOBInline(boolean)

setSoTimeout

public void setSoTimeout(int timeout)
                  throws SocketException 
ÁöÁ¤µÈ ŸÀÓ ¾Æ¿ô (¹Ð¸® ¼¼ÄÁµå ´ÜÀ§)À» »ç¿ëÇØ, SO_TIMEOUT ¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù. ÀÌ ¿É¼Ç¿¡ Á¦·Î ÀÌ¿ÜÀÇ Å¸ÀÓ ¾Æ¿ôÀ» ¼³Á¤ÇØ, ÀÌ Socket ¿¡ °ü·ÃÇÑ InputStream ¿¡ ´ëÇØ¼­ read()¸¦ È£ÃâÇϸé(ÀÚ), ¼³Á¤ÇÑ ½Ã°£¸¸ ºí·Ï µË´Ï´Ù. ŸÀÓ ¾Æ¿ôÀÌ Áö³ª¸é(ÀÚ), Socket ´Â À¯È¿ÇÑ ±×´ë·Î java.net.SocketTimeoutException °¡ ¹ß»ýÇÕ´Ï´Ù. ÀÌ ¿É¼ÇÀº ºí·Ï Á¶ÀÛ¿¡ µé¾î°¡±â Àü¿¡ À¯È¿ÇÏ°Ô ÇØ µÑÇʿ䰡 ÀÖ½À´Ï´Ù. ŸÀÓ ¾Æ¿ô¿¡´Â Á¦·Îº¸´Ù Å« °ªÀ» ÁöÁ¤ÇÕ´Ï´Ù. ŸÀÓ ¾Æ¿ô¿¡ Á¦·Î¸¦ ÁöÁ¤Çϸé(ÀÚ), ŸÀÓ ¾Æ¿ôÀº ¹«ÇÑÀ̶ó°í ÇØ¼®µË´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
timeout - ¹Ð¸® ¼¼ÄÁµå·Î ³ªÅ¸³»Áö´Â ÁöÁ¤µÈ ŸÀÓ ¾Æ¿ô
¿¹¿Ü:
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÁ¯:
JDK 1.1
°ü·Ã Ç׸ñ:
getSoTimeout()

getSoTimeout

public int getSoTimeout()
                 throws SocketException 
SO_TIMEOUT ÀÇ ¼³Á¤À» µ¹·ÁÁÝ´Ï´Ù. ÀÌ ¿É¼ÇÀÌ ¹«È¿ (ŸÀÓ ¾Æ¿ôÀÌ ¹«ÇÑ)ÀÇ °æ¿ì´Â 0 À» µ¹·ÁÁÝ´Ï´Ù.

¹Ýȯ°ª:
SO_TIMEOUT ÀÇ ¼³Á¤
¿¹¿Ü:
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÁ¯:
JDK1. 1
°ü·Ã Ç׸ñ:
setSoTimeout(int)

setSendBufferSize

public void setSendBufferSize(int size)
                       throws SocketException 
SO_SNDBUF ¿É¼ÇÀ», ÀÌ Socket ·Î ÁöÁ¤µÈ °ªÀ¸·Î ¼³Á¤ÇÕ´Ï´Ù. SO_SNDBUF ¿É¼ÇÀº »ç¿ëÇÏ´Â ³×Æ®¿öÅ© ÀÔÃâ·Â ¹öÆÛ·Î ¼³Á¤ÇÏ´Â »çÀÌÁîÀÇ ÈùÆ®·Î¼­ Ç÷§ÆûÀÇ ³×Æ®¿öÅ© Äڵ尡 »ç¿ëÇÕ´Ï´Ù.

SO_SNDBUF ´Â ÈùÆ®À̹ǷÎ, ¾îÇø®ÄÉÀ̼ÇÀ¸·Î ¹öÆÛÀÇ »çÀÌÁî ¼³Á¤À» Á¶»çÇÒ Çʿ䰡 ÀÖ´Â °æ¿ì´Â getSendBufferSize() ¸¦ È£ÃâÇØ ÁÖ¼¼¿ä.

ÆÄ¶ó¹ÌÅÍ:
size - ¼Û½Å ¹öÆÛ¿ëÀ¸·Î¼­ ¼³Á¤ÇÏ´Â »çÀÌÁî. 0 º¸´Ù Å« °ªÀ» ÁöÁ¤ÇÒ Çʿ䰡 ÀÖ´Ù
¿¹¿Ü:
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
IllegalArgumentException - Ä¡°¡ 0 ¶Ç´Â ºÎÀÇ °ªÀÎ °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.2
°ü·Ã Ç׸ñ:
getSendBufferSize()

getSendBufferSize

public int getSendBufferSize()
                      throws SocketException 
ÀÌ Socket ·Î »ç¿ëµÇ´Â SO_SNDBUF ¿É¼ÇÀÇ °ªÀ» ÃëµæÇÕ´Ï´Ù. À̰ÍÀº ÀÌ Socket ·Î Ãâ·Â¿ëÀ¸·Î¼­ Ç÷§ÆûÀÌ »ç¿ëÇÏ´Â ¹öÆÛÀÇ »çÀÌÁîÀÔ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ Socket ÀÇ SO_SNDBUF ¿É¼ÇÀÇ °ª
¿¹¿Ü:
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.2
°ü·Ã Ç׸ñ:
setSendBufferSize(int)

setReceiveBufferSize

public void setReceiveBufferSize(int size)
                          throws SocketException 
SO_RCVBUF ¿É¼ÇÀ», ÀÌ Socket ·Î ÁöÁ¤µÈ °ªÀ¸·Î ¼³Á¤ÇÕ´Ï´Ù. SO_RCVBUF ¿É¼ÇÀº »ç¿ëÇÏ´Â ³×Æ®¿öÅ© ÀÔÃâ·Â ¹öÆÛ·Î ¼³Á¤ÇÏ´Â »çÀÌÁîÀÇ ÈùÆ®·Î¼­ Ç÷§ÆûÀÇ ³×Æ®¿öÅ© Äڵ尡 »ç¿ëÇÕ´Ï´Ù.

¼ö½Å ¹öÆÛÀÇ »çÀÌÁ ´Ã¸®¸é(ÀÚ), ´ë±Ô¸ð Á¢¼Ó¿¡¼­ÀÇ ³×Æ®¿öÅ© ÀÔÃâ·ÂÀÇ ÆÛÆ÷¸Õ½º¸¦ ¿Ã¸± ¼ö°¡ ÀÖ½À´Ï´Ù. ÇÑÆí, »çÀÌÁ ÁÙÀ̸é(ÀÚ), ¼ö½Å µ¥ÀÌÅÍÀÇ ¹é ·Î±×¸¦ ÁÙÀÏ ¼ö°¡ ÀÖ½À´Ï´Ù.

SO_RCVBUF ´Â ÈùÆ®À̹ǷÎ, ¾îÇø®ÄÉÀ̼ÇÀ¸·Î ¹öÆÛÀÇ »çÀÌÁî ¼³Á¤À» Á¶»çÇÒ Çʿ䰡 ÀÖ´Â °æ¿ì´Â getReceiveBufferSize() ¸¦ È£ÃâÇØ ÁÖ¼¼¿ä.

SO_RCVBUF ÀÇ °ªÀº ¸®¸ðÆ® ÇǾ ÅëÁöµÇ´Â TCP ¼ö½Å À©µµ¿ìÀÇ ¼³Á¤¿¡µµ »ç¿ëµË´Ï´Ù. ÀϹÝÀûÀ¸·Î, À©µµ¿ì »çÀÌÁî´Â ¼ÒÄÏÀÇ Á¢¼Ó½Ã¿¡ ¾ðÁ¦¶óµµ º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¸, 64K º¸´Ù Å« ¼ö½Å À©µµ¿ì°¡ ÇÊ¿äÇÑ °æ¿ì´Â ¼ÒÄÏÀ» ¸®¸ðÆ® ÇǾ Á¢¼ÓÇϱâÀüÀ¸·Î º¯°æÀ» ¿ä±¸ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ´ÙÀ½ÀÇ 2 °³ÀÇ Á¡¿¡ À¯ÀÇÇØ ÁÖ¼¼¿ä.

  1. ServerSocket ·ÎºÎÅÍ ¹Þ¾ÆµéÀÎ ¼ÒÄÏÀÇ °æ¿ì, ServerSocket ¸¦ ·ÎÄà ÁÖ¼Ò¿¡ ¹ÙÀεå Çϱâ Àü¿¡,ServerSocket.setReceiveBufferSize(int) ¸¦ È£ÃâÇØ À̰ÍÀ» ½ÇÇàÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

  2. Ŭ¶óÀÌ¾ðÆ® ¼ÒÄÏÀÇ °æ¿ì, ¼ÒÄÏÀ» ±× ¸®¸ðÆ® ÇǾ Á¢¼ÓÇϱâ Àü¿¡, setReceiveBufferSize()¸¦ È£ÃâÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
size - ¼ö½Å ¹öÆÛ¿ëÀ¸·Î¼­ ¼³Á¤ÇÏ´Â »çÀÌÁî. 0 º¸´Ù Å« °ªÀ» ÁöÁ¤ÇÒ Çʿ䰡 ÀÖ´Ù
¿¹¿Ü:
IllegalArgumentException - Ä¡°¡ 0 ¶Ç´Â ºÎÀÇ °ªÀÎ °æ¿ì
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.2
°ü·Ã Ç׸ñ:
getReceiveBufferSize() , ServerSocket.setReceiveBufferSize(int)

getReceiveBufferSize

public int getReceiveBufferSize()
                         throws SocketException 
ÀÌ Socket ·Î »ç¿ëµÇ´Â SO_RCVBUF ¿É¼ÇÀÇ °ªÀ» ÃëµæÇÕ´Ï´Ù. À̰ÍÀº ÀÌ Socket ·Î ÀԷ¿ëÀ¸·Î¼­ Ç÷§ÆûÀÌ »ç¿ëÇÏ´Â ¹öÆÛÀÇ »çÀÌÁîÀÔ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ Socket ÀÇ SO_RCVBUF ¿É¼ÇÀÇ °ª
¿¹¿Ü:
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.2
°ü·Ã Ç׸ñ:
setReceiveBufferSize(int)

setKeepAlive

public void setKeepAlive(boolean on)
                  throws SocketException 
SO_KEEPALIVE ¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
on - ¼ÒÄÏÀ» ¿Â´ë·Î ÇØ µÑÁö ¾î¶³Áö¸¦ ÁöÁ¤
¿¹¿Ü:
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.3
°ü·Ã Ç׸ñ:
getKeepAlive()

getKeepAlive

public boolean getKeepAlive()
                     throws SocketException 
SO_KEEPALIVE °¡ À¯È¿ÇѰ¡ ¾î¶²°¡¸¦ Á¶»çÇÕ´Ï´Ù.

¹Ýȯ°ª:
SO_KEEPALIVE °¡ À¯È¿ÇѰ¡ ¾î¶²°¡¸¦ ³ªÅ¸³»´Â boolean Ä¡
¿¹¿Ü:
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.3
°ü·Ã Ç׸ñ:
setKeepAlive(boolean)

setTrafficClass

public void setTrafficClass(int tc)
                     throws SocketException 
ÀÌ Socket ·ÎºÎÅÍ ¼Û½ÅµÇ´Â ÆÐŶÀÇ IP Çì´õÀÇ Æ®·¡ÇÈ Å¬·¡½º ¶Ç´Â ¼­ºñ½º ŸÀÔ octet ¸¦ ¼³Á¤ÇÕ´Ï´Ù. »ç¿ëÇÏ´Â ³×Æ®¿öÅ© ±¸ÇöÀÌ ÀÌ °ªÀ» ¹«½ÃÇÏ´Â ÀÏÀÌ ÀÖÀ¸¹Ç·Î, ¾îÇø®ÄÉÀ̼ǿ¡¼­´Â ÀÌ °ªÀ» ÈùÆ®¶ó°í »ý°¢ÇØ ÁÖ¼¼¿ä.

tc ÀÇ ¹üÀ§´Â 0 <= tc <= 255 °¡¾Æ´Ï¸é ¾ÈµË´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â IllegalArgumentException °¡ ½½·Î¿ì µË´Ï´Ù.

ÁÖ:

IP (Internet Protocol) ¹öÁ¯ 4 ÀÇ °æ¿ì, RFC 1349 ·Î ¼³¸íµÇ°í ÀÖ°Ô, ÀÌ °ªÀº ¿ì¼±µµÀÇ ³ôÀº octet ¿Í TOS Çʵå·Î ±¸¼ºµË´Ï´Ù. TOS Çʵå´Â ´ÙÀ½°ú °°ÀÌ ºñÆ® ´ÜÀ§ÀÇ ³í¸®ÇÕ¿¡ ÀÇÇØ ÀÛ¼ºµÇ´Â ºñÆ® ¼¼Æ®ÀÔ´Ï´Ù.

  • IPTOS_LOWCOST (0x02)
  • IPTOS_RELIABILITY (0x04)
  • IPTOS_THROUGHPUT (0x08)
  • IPTOS_LOWDELAY (0x10)
ÃÖÇÏÁ¤µµ ºñÆ®´Â MBZ (0 ÀÌ ¾Æ´Ï¸é ¾ÈµÈ´Ù) ºñÆ®¿¡ ´ëÀÀÇϹǷÎ, Ç×»ó ¹«½ÃµË´Ï´Ù.

¿ì¼± Çʵ忡 ºñÆ®¸¦ ¼³Á¤Çϸé(ÀÚ), Á¶ÀÛÀÌ Çã°¡µÇÁö ¾Ê´Â °ÍÀ» ³ªÅ¸³»´Â SocketException °¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.

IP (Internet Protocol) ¹öÁ¯ 6 ÀÇ °æ¿ì,tc ´Â IP Çì´õÀÇ sin6_flowinfo Çʵ忡 ÀúÀåµÇ´Â °ªÀÔ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
tc - ºñÆ® ¼¼Æ®ÀÇ int Ä¡
¿¹¿Ü:
SocketException - Æ®·¡ÇÈ Å¬·¡½º ¶Ç´Â ¼­ºñ½º ŸÀÔÀ» ¼³Á¤ÇÒ °æ¿ì¿¡ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.4
°ü·Ã Ç׸ñ:
getTrafficClass()

getTrafficClass

public int getTrafficClass()
                    throws SocketException 
ÀÌ ¼ÒÄÏÀ¸·ÎºÎÅÍ ¼Û½ÅµÇ´Â ÆÐŶÀÇ IP Çì´õÀÇ Æ®·¡ÇÈ Å¬·¡½º ¶Ç´Â ¼­ºñ½º ŸÀÔÀ» ÃëµæÇÕ´Ï´Ù.

»ç¿ëÇÏ´Â ³×Æ®¿öÅ© ±¸ÇöÀÌ,#setTrafficClass() ¸¦ »ç¿ëÇØ ¼³Á¤µÈ Æ®·¡ÇÈ Å¬·¡½º ¶Ç´Â ¼­ºñ½º ŸÀÔÀ» ¹«½ÃÇÏ´Â ÀÏÀÌ ÀÖÀ¸¹Ç·Î, ÀÌ Socket ·Î #setTrafficClass() ¸Þ¼Òµå¸¦ »ç¿ëÇØ ÀÌÀüÀ¸·Î ¼³Á¤µÈ °ª°ú´Â ´Ù¸¥ °ªÀÌ ÀÌ ¸Þ¼Òµå·ÎºÎÅÍ µ¹·ÁÁÖ¾îÁö´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.

¹Ýȯ°ª:
¹ú½á ¼³Á¤µÇ¾î ÀÖ´Â Æ®·¡ÇÈ Å¬·¡½º ¶Ç´Â ¼­ºñ½º ŸÀÔ
¿¹¿Ü:
SocketException - Æ®·¡ÇÈ Å¬·¡½º ¶Ç´Â ¼­ºñ½º ŸÀÔÄ¡¸¦ ÃëµæÇÒ °æ¿ì¿¡ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.4
°ü·Ã Ç׸ñ:
setTrafficClass(int)

setReuseAddress

public void setReuseAddress(boolean on)
                     throws SocketException 
SO_REUSEADDR ¼ÒÄÏ ¿É¼ÇÀ» À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù.

TCP Á¢¼ÓÀ» ´ÝÀ¸¸é(ÀÚ), Á¢¼ÓÀÌ ´ÝÀº µÚ, Á¢¼ÓÀÌ ÀÏÁ¤ÇÑ ½Ã°£ ŸÀÓ ¾Æ¿ô »óÅ´ë·Î µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù (Åë»ó,TIME_WAIT »óÅ ¶Ç´Â 2MSL ´ë±â »óÅ·ΠºÒ¸°´Ù). ÁÖÁöÀÇ ¼ÒÄÏ ÁÖ¼Ò ¶Ç´Â Æ÷Å並 »ç¿ëÇÏ´Â ¾îÇø®ÄÉÀ̼ÇÀÇ °æ¿ì, ¼ÒÄÏ ÁÖ¼Ò ¶Ç´Â Æ÷Åä¿¡ °ü·ÃÇÏ´Â Á¢¼ÓÀÌ Å¸ÀÓ ¾Æ¿ô »óÅ¿¡ ÀÖÀ¸¸é(ÀÚ), ¼ÒÄÏÀ» ÇÊ¿äÇÑ SocketAddress ¿¡ ¹ÙÀεå ÇÒ ¼ö ¾ø´Â °ÍÀÌ ÀÖ½À´Ï´Ù.

bind(SocketAddress) ¸¦ »ç¿ëÇØ ¼ÒÄÏÀ» ¹ÙÀεå Çϱâ Àü¿¡ SO_REUSEADDR ¸¦ À¯È¿ÇÏ°Ô Çϸé(ÀÚ), ÀÌÀüÀÇ Á¢¼ÓÀÌ Å¸ÀÓ ¾Æ¿ô »óÅ¿¡¼­µµ ¼ÒÄÏÀ» ¹ÙÀεå ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù.

Socket °¡ ÀÛ¼ºµÇ¸é(ÀÚ),SO_REUSEADDR ÀÇ Ãʱ⼳Á¤Àº ¹«È¿°¡ µË´Ï´Ù.

¼ÒÄÏÀÌ ¹ÙÀÎµå µÇ¾ú´Ù (isBound() ¸¦ ÂüÁ¶) ³ªÁß¿¡ SO_REUSEADDR ¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÏ´Â °æ¿ìÀÇ µ¿ÀÛÀº Á¤Àǵǰí ÀÖÁö ¾Ê½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
on - ¼ÒÄÏ ¿É¼ÇÀ» À¯È¿ÇÏ°Ô ÇÒ±î ¹«È¿·Î ÇÏ´ÂÁö¸¦ ÁöÁ¤
¿¹¿Ü:
SocketException - SO_RESUEADDR ¼ÒÄÏ ¿É¼ÇÀ» À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÒ °æ¿ì¿¡ ¿¡·¯°¡ ¹ß»ýÇÏ´Â °æ¿ì, ȤÀº ¼ÒÄÏÀÌ ´Ý°í ÀÖ´Â °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.4
°ü·Ã Ç׸ñ:
getReuseAddress() , bind(SocketAddress) , isClosed() , isBound()

getReuseAddress

public boolean getReuseAddress()
                        throws SocketException 
SO_REUSEADDR °¡ À¯È¿ÇѰ¡ ¾î¶²°¡¸¦ Á¶»çÇÕ´Ï´Ù.

¹Ýȯ°ª:
SO_REUSEADDR °¡ À¯È¿ÇѰ¡ ¾î¶²°¡¸¦ ³ªÅ¸³»´Â boolean Ä¡
¿¹¿Ü:
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.4
°ü·Ã Ç׸ñ:
setReuseAddress(boolean)

close

public void close()
           throws IOException 
ÀÌ ¼ÒÄÏÀ» ´Ý½À´Ï´Ù.

ÇöÀç ÀÌ ¼ÒÄÏÀÇ ÀÔÃâ·Â Á¶ÀÛÀ¸·Î ºí·Ï ¶°³¯ ¼ö ÀÖ¾î ¸ðµç thread°¡ SocketException ¸¦ ½½·Î¿ì ÇÕ´Ï´Ù.

¼ÒÄÏÀÌ ´ÝÇôÁö¸é(ÀÚ), ±× ÈÄÀÇ ³×Æ®¿öÅ©¿¡ ±× ¼ÒÄÏÀ» »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù (Áï, ÀçÁ¢¼Ó ¶Ç´Â Àç¹ÙÀεå´Â ÇÒ ¼ö ¾ø´Ù). »õ·Î¿î ¼ÒÄÏÀ» ÀÛ¼ºÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

ÀÌ ¼ÒÄÏ¿¡ °ü·ÃÇϴ ä³ÎÀÌ Á¸ÀçÇÏ´Â °æ¿ì´Â ±× ä³Îµµ ´ÝÇôÁý´Ï´Ù.

¿¹¿Ü:
IOException - ÀÌ ¼ÒÄÏÀ» ´ÝÀ» ¶§ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
°ü·Ã Ç׸ñ:
isClosed()

shutdownInput

public void shutdownInput()
                   throws IOException 
ÀÌ ¼ÒÄÏÀÇ ÀÔ·Â ½ºÆ®¸²À» ¡¸½ºÆ®¸²ÀÇ ÃÖÈÄ¡¹¿¡ ¹èÄ¡ÇÕ´Ï´Ù. ¼ÒÄÏÀÇ ÀÔ·Â ½ºÆ®¸² Ãø¿¡ ¼Û½ÅµÈ µ¥ÀÌÅÍ´Â È®ÀÎµÇ¾î ±×´ë·Î ÆÄ±âµË´Ï´Ù.

¼ÒÄÏÀ¸·Î shutdownInput()¸¦ È£ÃâÇÑ µÚ¿¡ ¼ÒÄÏÀÇ ÀÔ·Â ½ºÆ®¸²À¸·ÎºÎÅÍ ÀоîµéÀ̸é(ÀÚ), ½ºÆ®¸²Àº EOF ¸¦ µ¹·ÁÁÝ´Ï´Ù.

¿¹¿Ü:
IOException - ÀÌ ¼ÒÄÏÀ» Á¤ÁöÇÒ °æ¿ì¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.3
°ü·Ã Ç׸ñ:
shutdownOutput() , close() , setSoLinger(boolean, int) , isInputShutdown()

shutdownOutput

public void shutdownOutput()
                    throws IOException 
ÀÌ ¼ÒÄÏÀÇ Ãâ·Â ½ºÆ®¸²À» ¹«È¿·Î ÇÕ´Ï´Ù. TCP ¼ÒÄÏÀÇ °æ¿ì, ¹ú½á ±âÀÔÇØÁö°í ÀÖ´Â µ¥ÀÌÅͰ¡ ¼Û½ÅµÇ¾î ±× ÈÄ¿¡ TCP ÀÇ Åë»óÀÇ Á¢¼Ó Á¾·á 󸮰¡ °è¼ÓµË´Ï´Ù. ¼ÒÄÏÀ¸·Î shutdownOutput()¸¦ È£ÃâÇÑ µÚ¿¡ ¼ÒÄÏÀÇ Ãâ·Â ½ºÆ®¸²¿¡ ±âÀÔÇϸé(ÀÚ), ½ºÆ®¸²Àº IOException ¸¦ ½½·Î¿ì ÇÕ´Ï´Ù.

¿¹¿Ü:
IOException - ÀÌ ¼ÒÄÏÀ» Á¤ÁöÇÒ °æ¿ì¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.3
°ü·Ã Ç׸ñ:
shutdownInput() , close() , setSoLinger(boolean, int) , isOutputShutdown()

toString

public String  toString()
ÀÌ ¼ÒÄÏÀ» String ·Î º¯È¯ÇÕ´Ï´Ù.

¿À¹ö¶óÀ̵å(override):
Ŭ·¡½º Object ³»ÀÇ toString
¹Ýȯ°ª:
ÀÌ ¼ÒÄÏÀÇ Ä³¸¯ÅÍ ¶óÀΠǥÇö

isConnected

public boolean isConnected()
¼ÒÄÏÀÇ Á¢¼Ó »óŸ¦ µ¹·ÁÁÝ´Ï´Ù.

¹Ýȯ°ª:
¼ÒÄÏÀÌ ¼­¹ö¿¡ Á¤»óÀûÀ¸·Î Á¢¼ÓµÇ°í ÀÖ´Â °æ¿ì´Â true
µµÀÔµÈ ¹öÁ¯:
1.4

isBound

public boolean isBound()
¼ÒÄÏÀÇ ¹ÙÀεù »óŸ¦ µ¹·ÁÁÝ´Ï´Ù.

¹Ýȯ°ª:
¼ÒÄÏÀÌ Á¤»óÀûÀ¸·Î ÁÖ¼Ò¿¡ ¹ÙÀÎµå µÇ°í ÀÖ´Â °æ¿ì´Â true
µµÀÔµÈ ¹öÁ¯:
1.4
°ü·Ã Ç׸ñ:
bind(java.net.SocketAddress)

isClosed

public boolean isClosed()
¼ÒÄÏÀÌ ´ÝÀº »óŸ¦ µ¹·ÁÁÝ´Ï´Ù.

¹Ýȯ°ª:
¼ÒÄÏÀÌ ´Ý¾ÒÀ» °æ¿ì´Â true
µµÀÔµÈ ¹öÁ¯:
1.4
°ü·Ã Ç׸ñ:
close()

isInputShutdown

public boolean isInputShutdown()
¼ÒÄÏ Á¢¼ÓÀÇ readÃøÀÇ ¹ÝÀÌ ´Ý°í ÀÖ´ÂÁö ¾î¶²Áö¸¦ µ¹·ÁÁÝ´Ï´Ù.

¹Ýȯ°ª:
¼ÒÄÏÀÇ ÀÔ·ÂÀÌ Á¤ÁöÇßÀ» °æ¿ì´Â true
µµÀÔµÈ ¹öÁ¯:
1.4
°ü·Ã Ç׸ñ:
shutdownInput()

isOutputShutdown

public boolean isOutputShutdown()
¼ÒÄÏ Á¢¼ÓÀÇ ±âÀÔÃøÀÇ ¹ÝÀÌ ´Ý°í ÀÖ´ÂÁö ¾î¶²Áö¸¦ µ¹·ÁÁÝ´Ï´Ù.

¹Ýȯ°ª:
¼ÒÄÏÀÇ Ãâ·ÂÀÌ Á¤ÁöÇßÀ» °æ¿ì´Â true
µµÀÔµÈ ¹öÁ¯:
1.4
°ü·Ã Ç׸ñ:
shutdownOutput()

setSocketImplFactory

public static void setSocketImplFactory(SocketImplFactory  fac)
                                 throws IOException 
¾îÇø®ÄÉÀ̼ÇÀÇ Å¬¶óÀÌ¾ðÆ® ¼ÒÄÏ ±¸Çö ÆÑÅ丮¸¦ ¼³Á¤ÇÕ´Ï´Ù. ÆÑÅ丮¸¦ ¼³Á¤ÇÒ ¼ö ÀÖ´Â °ÍÀº 1 ȸ »ÓÀÔ´Ï´Ù.

¾îÇø®ÄÉÀ̼ÇÀ¸·Î »õ·Î¿î Ŭ¶óÀÌ¾ðÆ® ¼ÒÄÏÀ» ÀÛ¼ºÇϸé(ÀÚ), ¼ÒÄÏ ±¸Çö ÆÑÅ丮ÀÇ createSocketImpl ¸Þ¼Òµå°¡ ºÒ·Á °¡ ½ÇÁ¦ÀÇ ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù.

½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ÀÌ ¸Þ¼Òµå´Â ÃÖÃÊ·Î ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkSetFactory ¸Þ¼Òµå¸¦ È£ÃâÇÏ´Â °ÍÀ¸·Î, ÀÌ Á¶ÀÛÀÌ Çã°¡µÇ°í ÀÖ´Â °ÍÀ» È®ÀÎÇÕ´Ï´Ù. ÀÌ °á°ú, SecurityException °¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
fac - ¸ñÀûÀÇ ÆÑÅ丮
¿¹¿Ü:
IOException - ¼ÒÄÏ ÆÑÅ丮ÀÇ ¼³Á¤Áß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SocketException - ÆÑÅ丮°¡ ¹ú½á Á¤Àǵǰí ÀÖ´Â °æ¿ì
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkSetFactory ¸Þ¼Òµå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ì
°ü·Ã Ç׸ñ:
SocketImplFactory.createSocketImpl() , SecurityManager.checkSetFactory()

JavaTM 2
Platform
Std.  Ed.  v1. 4.0

¹ö±×ÀÇ º¸°í¿Í ±â´ÉÀÇ ¸®Äù½ºÆ®
ÀÌ¿ÜÀÇ API ·¹ÆÛ·±½º ¹× °³¹ßÀÚ¿ë ¹®¼­¿¡ ´ëÇØ¼­´Â Java 2 SDK SE °³¹ßÀÚ¿ë ¹®¼­¸¦ ÂüÁ¶ÇØ ÁÖ¼¼¿ä. °³¹ßÀÚÀü¿ëÀÇ »ó¼¼ÇÑ ÇØ¼³, °³³äÀÇ °³¿ä, ¿ë¾îÀÇ Á¤ÀÇ, ¹ö±×ÀÇ È¸ÇÇÃ¥, ¹× ÄÚµå ½Ç·Ê°¡ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù.

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.