|
JavaTM 2 Platform Std. Ed. v1. 4.0 |
||||||||||
ÀüÀÇ Å¬·¡½º ´ÙÀ½ÀÇ Å¬·¡½º | ÇÁ·¹ÀÓ ÀÖ¾î ÇÁ·¹ÀÓ ¾øÀ½ | ||||||||||
°³¿ä: »óÀÚ | Çʵå | constructor | ¸Þ¼Òµå | »ó¼¼: Çʵå | constructor | ¸Þ¼Òµå |
java.lang.Object | +--java.net.Socket
ÀÌ Å¬·¡½º´Â Ŭ¶óÀÌ¾ðÆ® ¼ÒÄÏ (´ÜÁö ¡¸¼ÒÄÏ¡¹À̶ó°íµµ ºÎ¸¥´Ù)À» ±¸ÇöÇÕ´Ï´Ù. ¼ÒÄϰú´Â 2 °³ÀÇ ¸Ó½Å°£ÀÇ Åë½ÅÀÇ ¾ç´Ü¿¡ À§Ä¡ÇÏ´Â °ÍÀÔ´Ï´Ù.
¼ÒÄÏÀÇ ½ÇÁ¦ÀÇ Ã³¸®´Â SocketImpl
Ŭ·¡½ºÀÇ ÀνºÅϽº°¡ ½Ç½ÃÇÕ´Ï´Ù. ¾îÇø®ÄÉÀ̼ÇÀº ¼ÒÄÏÀ» ÀÛ¼ºÇÏ´Â ¼ÒÄÏ ÆÑÅ丮¸¦ º¯°æÇÏ´Â °Í¿¡ ÀÇÇØ, ·ÎÄÃÀÇ ÆÄÀÌ¾î ¿ù(fire wall)¿¡ ÀûÀýÇÑ ¼ÒÄÏÀ» ÀÛ¼ºÇϵµ·Ï(µíÀÌ), ¾îÇø®ÄÉÀÌ¼Ç ÀÚ½ÅÀ» ±¸¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.
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 |
»ý¼ºÀÚÀÇ »ó¼¼ |
public Socket()
protected Socket(SocketImpl impl) throws SocketException
impl
- ¼ºê Ŭ·¡½º°¡ Socket »ó¿¡¼ »ç¿ëÇÏ´Â SocketImpl ÀÇ ÀνºÅϽº
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì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)
public Socket(InetAddress address, int port) throws IOException
¾îÇø®ÄÉÀ̼ÇÀ¸·Î ¼¹ö ¼ÒÄÏ ÆÑÅ丮¸¦ ÁöÁ¤Çϰí ÀÖ´Â °æ¿ì´Â ±× ÆÑÅ丮ÀÇ createSocketImpl
¸Þ¼Òµå°¡ ºÒ·Á °¡ ½ÇÁ¦ÀÇ ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â ¡¸ÇÁ·¹ÀÎÀΡ¹¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù.
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect
°¡, Àμö·Î¼ È£½ºÆ® ÁÖ¼Ò¿Í port
¹øÈ£¸¦ ÁöÁ¤ÇØ ºÒ·Á °©´Ï´Ù. ÀÌ °á°ú, SecurityException °¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
address
- IP ÁÖ¼Òport
- Æ÷Åä ¹øÈ£
IOException
- ¼ÒÄÏÀÇ »ý¼ºÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect
¸Þ¼Òµå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ìsetSocketImplFactory(java.net.SocketImplFactory)
,
SocketImpl
,
SocketImplFactory.createSocketImpl()
,
SecurityManager.checkConnect(java.lang.String, int)
public Socket(String host, int port, InetAddress localAddr, int localPort) throws IOException
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect
°¡, Àμö·Î¼ È£½ºÆ® ÁÖ¼Ò¿Í port
¹øÈ£¸¦ ÁöÁ¤ÇØ ºÒ·Á °©´Ï´Ù. ÀÌ °á°ú, SecurityException °¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
host
- ¸®¸ðÆ® È£½ºÆ®¸íport
- ¸®¸ðÆ® Æ÷ÅälocalAddr
- ¼ÒÄÏÀÇ ¹ÙÀεåóÀÇ ·ÎÄà ÁÖ¼ÒlocalPort
- ¼ÒÄÏÀÇ ¹ÙÀεåóÀÇ ·ÎÄà Æ÷Åä
IOException
- ¼ÒÄÏÀÇ »ý¼ºÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect
¸Þ¼Òµå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ìSecurityManager.checkConnect(java.lang.String, int)
public Socket(InetAddress address, int port, InetAddress localAddr, int localPort) throws IOException
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect
°¡, Àμö·Î¼ È£½ºÆ® ÁÖ¼Ò¿Í port
¹øÈ£¸¦ ÁöÁ¤ÇØ ºÒ·Á °©´Ï´Ù. ÀÌ °á°ú, SecurityException °¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
address
- ¸®¸ðÆ® ÁÖ¼Òport
- ¸®¸ðÆ® Æ÷ÅälocalAddr
- ¼ÒÄÏÀÇ ¹ÙÀεåóÀÇ ·ÎÄà ÁÖ¼ÒlocalPort
- ¼ÒÄÏÀÇ ¹ÙÀεåóÀÇ ·ÎÄà Æ÷Åä
IOException
- ¼ÒÄÏÀÇ »ý¼ºÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect
¸Þ¼Òµå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ìSecurityManager.checkConnect(java.lang.String, int)
public Socket(String host, int port, boolean stream) throws IOException
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)
public Socket(InetAddress host, int port, boolean stream) throws IOException
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)
¸Þ¼ÒµåÀÇ »ó¼¼ |
public void connect(SocketAddress endpoint) throws IOException
endpoint
- SocketAddress
IOException
- Á¢¼Ó½Ã¿¡ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
IllegalBlockingModeException
- ÀÌ ¼ÒÄÏ¿¡ °ü·ÃÇϴ ä³ÎÀÌ Á¸ÀçÇØ, ±× ä³ÎÀÌ ºñºí·ÎÅ· ¸ðµåÀÇ °æ¿ì
IllegalArgumentException
- ´Ü Á¡ÀÌ null ÀÎ °æ¿ì, ¶Ç´Â ´Ü Á¡ÀÌ ÀÌ ¼ÒÄÏÀ¸·Î ¼Æ÷Æ®µÇ¾î ÀÖÁö ¾ÊÀº SocketAddress ¼ºê Ŭ·¡½ºÀÎ °æ¿ìpublic void connect(SocketAddress endpoint, int timeout) throws IOException
endpoint
- SocketAddress
timeout
- »ç¿ëÇϴ ŸÀÓ ¾Æ¿ôÄ¡ (¹Ð¸® ¼¼ÄÁµå)
IOException
- Á¢¼Ó½Ã¿¡ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SocketTimeoutException
- Á¢¼ÓÇϱâ Àü¿¡ ŸÀÓ ¾Æ¿ôÀÌ Áö³µÀ» °æ¿ì
IllegalBlockingModeException
- ÀÌ ¼ÒÄÏ¿¡ °ü·ÃÇϴ ä³ÎÀÌ Á¸ÀçÇØ, ±× ä³ÎÀÌ ºñºí·ÎÅ· ¸ðµåÀÇ °æ¿ì
IllegalArgumentException
- ´Ü Á¡ÀÌ null ÀÎ °æ¿ì, ¶Ç´Â ´Ü Á¡ÀÌ ÀÌ ¼ÒÄÏÀ¸·Î ¼Æ÷Æ®µÇ¾î ÀÖÁö ¾ÊÀº SocketAddress ¼ºê Ŭ·¡½ºÀÎ °æ¿ìpublic void bind(SocketAddress bindpoint) throws IOException
ÁÖ¼Ò°¡ null
ÀÇ °æ¿ì´Â ½Ã½ºÅÛ¿¡ ÀÇÇØ ÀϽÃÀûÀÎ Æ÷Åä¿Í À¯È¿ÇÑ ·ÎÄà ÁÖ¼Ò°¡ ¼±ÅÃµÇ¾î ¼ÒÄÏÀÌ ¹ÙÀÎµå µË´Ï´Ù.
bindpoint
- ¹ÙÀεåóÀÇ SocketAddress
IOException
- ¹ÙÀεå Á¶ÀÛ¿¡ ½ÇÆÐÇßÀ» °æ¿ì, ȤÀº ¼ÒÄÏÀÌ ¹ú½á ¹ÙÀÎµå µÇ°í ÀÖ´Â °æ¿ì
IllegalArgumentException
- bindpoint °¡ ÀÌ ¼ÒÄÏÀ¸·Î ¼Æ÷Æ®µÇ¾î ÀÖÁö ¾ÊÀº SocketAddress ¼ºê Ŭ·¡½ºÀÎ °æ¿ìisBound()
public InetAddress getInetAddress()
null
public InetAddress getLocalAddress()
InetAddress.anyLocalAddress()
public int getPort()
public int getLocalPort()
public SocketAddress getRemoteSocketAddress()
null ¸¦ µ¹·ÁÁÝ´Ï´Ù.
- ¹Ýȯ°ª:
- ÀÌ ¼ÒÄÏÀÇ ¸®¸ðÆ®´ÜÁ¡À» ³ªÅ¸³»´Â
SocketAddress
. ¼ÒÄÏÀÌ ¾ÆÁ÷ Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â null
- µµÀÔµÈ ¹öÁ¯:
- 1.4
- °ü·Ã Ç׸ñ:
getInetAddress()
,
getPort()
,
connect(SocketAddress, int)
,
connect(SocketAddress)
public SocketAddress getLocalSocketAddress()
null ¸¦ µ¹·ÁÁÝ´Ï´Ù.
- ¹Ýȯ°ª:
- ÀÌ ¼ÒÄÏÀÇ ·ÎÄôÜÁ¡À» ³ªÅ¸³»´Â
SocketAddress
. ¼ÒÄÏÀÌ ¾ÆÁ÷ ¹ÙÀεåµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â null
- µµÀÔµÈ ¹öÁ¯:
- 1.4
- °ü·Ã Ç׸ñ:
getLocalAddress()
,
getLocalPort()
,
bind(SocketAddress)
public SocketChannel getChannel()
SocketChannel
¿ÀºêÁ§Æ®¸¦ µ¹·ÁÁÝ´Ï´Ù (Á¸ÀçÇÏ´Â °æ¿ì).
ä³Î ÀÚü°¡ SocketChannel.open
¶Ç´Â ServerSocketChannel.accept
¸Þ¼Òµå¸¦ »ç¿ëÇØ ÀÛ¼ºµÇ¾úÀ» °æ¿ì¿¡¸¸, ¼ÒÄÏ¿¡ ä³ÎÀÌ Á¸ÀçÇÕ´Ï´Ù.
public InputStream getInputStream() throws IOException
ÀÌ ¼ÒÄÏ¿¡ °ü·ÃÇϴ ä³ÎÀÌ Á¸ÀçÇÏ´Â °æ¿ì´Â °á°úÀÇ ÀÔ·Â ½ºÆ®¸²Àº ±× Á¶ÀÛÀ» ¸ðµÎ ä³Î¿¡ delegate ÇÕ´Ï´Ù. ±× ä³ÎÀÌ ºñºí·Ï ¸ðµåÀÇ °æ¿ì, ÀÔ·Â ½ºÆ®¸²ÀÇ read Á¶ÀÛÀ¸·Î IllegalBlockingModeException
°¡ ½½·Î¿ì µË´Ï´Ù.
IOException
- ÀÔ·Â ½ºÆ®¸²ÀÇ ÀÛ¼ºÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì, ȤÀº ¼ÒÄÏÀÌ Á¢¼ÓµÇÁö ¾Ê´Â °æ¿ìpublic OutputStream getOutputStream() throws IOException
ÀÌ ¼ÒÄÏ¿¡ °ü·ÃÇϴ ä³ÎÀÌ Á¸ÀçÇÏ´Â °æ¿ì´Â °á°úÀÇ Ãâ·Â ½ºÆ®¸²Àº ±× Á¶ÀÛÀ» ¸ðµÎ ä³Î¿¡ delegate ÇÕ´Ï´Ù. ±× ä³ÎÀÌ ºñºí·Ï ¸ðµåÀÇ °æ¿ì, Ãâ·Â ½ºÆ®¸²ÀÇ write Á¶ÀÛÀ¸·Î IllegalBlockingModeException
°¡ ½½·Î¿ì µË´Ï´Ù.
IOException
- Ãâ·Â ½ºÆ®¸²ÀÇ ÀÛ¼ºÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì, ȤÀº ¼ÒÄÏÀÌ Á¢¼ÓµÇÁö ¾Ê´Â °æ¿ìpublic void setTcpNoDelay(boolean on) throws SocketException
on
- TCP_NODELAY ¸¦ À¯È¿ÇÏ°Ô ÇÏ´Â °æ¿ì´Â true
, ¹«È¿·Î ÇÏ´Â °æ¿ì´Â false
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìgetTcpNoDelay()
public boolean getTcpNoDelay() throws SocketException
boolean
Ä¡
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìsetTcpNoDelay(boolean)
public void setSoLinger(boolean on, int linger) throws SocketException
on
- Áö¿¬ ½Ã°£À» À¯È¿ÇÏ°Ô ÇÒÁö ¾î¶³Áö¸¦ ÁöÁ¤linger
- on °¡ true ÀÇ °æ¿ì´Â Áö¿¬ ½Ã°£
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
IllegalArgumentException
- Áö¿¬ ½Ã°£ÀÇ °ªÀÌ ºÎÀÇ ¼öÄ¡ÀÎ °æ¿ìgetSoLinger()
public int getSoLinger() throws SocketException
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìsetSoLinger(boolean, int)
public void sendUrgentData(int data) throws IOException
data
- ¼Û½ÅÇÏ´Â µ¥ÀÌÅÍÀÇ ¹ÙÀÌÆ®
IOException
- µ¥ÀÌÅ͸¦ ¼Û½ÅÇÒ °æ¿ì¿¡ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìpublic void setOOBInline(boolean on) throws SocketException
¼ö½ÅÇÏ´Â ±ä±Þ µ¥ÀÌÅÍÀÇ Ã³¸®¿¡´Â ÇÑÁ¤ÇÑ ¼Æ÷Æ® ¹Û¿¡ Á¦°øµÇÁö ¾Ê´Â °Í¿¡ ÁÖÀÇÇØ ÁÖ¼¼¿ä. ƯÈ÷, °íÀ§ ·¹º§ÀÇ ÇÁ·ÎÅäÄÝÀÌ Á¦°øµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì, ¼ö½ÅÇÏ´Â ±ä±Þ µ¥ÀÌÅÍÀÇ ÅëÁö´Â Á¦°øµÇÁö ¾Ê°í Åë»ó µ¥ÀÌÅÍ¿Í ±ä±Þ µ¥ÀÌÅ͸¦ ±¸º°ÇÏ´Â ±â´ÉÀº ¾ø½À´Ï´Ù.
on
- OOBINLINE ¸¦ À¯È¿ÇÏ°Ô ÇÏ´Â °æ¿ì´Â true
, ¹«È¿·Î ÇÏ´Â °æ¿ì´Â false
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìgetOOBInline()
public boolean getOOBInline() throws SocketException
boolean
Ä¡
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìsetOOBInline(boolean)
public void setSoTimeout(int timeout) throws SocketException
timeout
- ¹Ð¸® ¼¼ÄÁµå·Î ³ªÅ¸³»Áö´Â ÁöÁ¤µÈ ŸÀÓ ¾Æ¿ô
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìgetSoTimeout()
public int getSoTimeout() throws SocketException
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìsetSoTimeout(int)
public void setSendBufferSize(int size) throws SocketException
SO_SNDBUF ´Â ÈùÆ®À̹ǷÎ, ¾îÇø®ÄÉÀ̼ÇÀ¸·Î ¹öÆÛÀÇ »çÀÌÁî ¼³Á¤À» Á¶»çÇÒ Çʿ䰡 ÀÖ´Â °æ¿ì´Â getSendBufferSize()
¸¦ È£ÃâÇØ ÁÖ¼¼¿ä.
size
- ¼Û½Å ¹öÆÛ¿ëÀ¸·Î¼ ¼³Á¤ÇÏ´Â »çÀÌÁî. 0 º¸´Ù Å« °ªÀ» ÁöÁ¤ÇÒ Çʿ䰡 ÀÖ´Ù
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
IllegalArgumentException
- Ä¡°¡ 0 ¶Ç´Â ºÎÀÇ °ªÀÎ °æ¿ìgetSendBufferSize()
public int getSendBufferSize() throws SocketException
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìsetSendBufferSize(int)
public void setReceiveBufferSize(int size) throws SocketException
¼ö½Å ¹öÆÛÀÇ »çÀÌÁ ´Ã¸®¸é(ÀÚ), ´ë±Ô¸ð Á¢¼Ó¿¡¼ÀÇ ³×Æ®¿öÅ© ÀÔÃâ·ÂÀÇ ÆÛÆ÷¸Õ½º¸¦ ¿Ã¸± ¼ö°¡ ÀÖ½À´Ï´Ù. ÇÑÆí, »çÀÌÁ ÁÙÀ̸é(ÀÚ), ¼ö½Å µ¥ÀÌÅÍÀÇ ¹é ·Î±×¸¦ ÁÙÀÏ ¼ö°¡ ÀÖ½À´Ï´Ù.
SO_RCVBUF ´Â ÈùÆ®À̹ǷÎ, ¾îÇø®ÄÉÀ̼ÇÀ¸·Î ¹öÆÛÀÇ »çÀÌÁî ¼³Á¤À» Á¶»çÇÒ Çʿ䰡 ÀÖ´Â °æ¿ì´Â getReceiveBufferSize()
¸¦ È£ÃâÇØ ÁÖ¼¼¿ä.
SO_RCVBUF ÀÇ °ªÀº ¸®¸ðÆ® ÇǾ ÅëÁöµÇ´Â TCP ¼ö½Å À©µµ¿ìÀÇ ¼³Á¤¿¡µµ »ç¿ëµË´Ï´Ù. ÀϹÝÀûÀ¸·Î, À©µµ¿ì »çÀÌÁî´Â ¼ÒÄÏÀÇ Á¢¼Ó½Ã¿¡ ¾ðÁ¦¶óµµ º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¸, 64K º¸´Ù Å« ¼ö½Å À©µµ¿ì°¡ ÇÊ¿äÇÑ °æ¿ì´Â ¼ÒÄÏÀ» ¸®¸ðÆ® ÇǾ Á¢¼ÓÇϱâÀüÀ¸·Î º¯°æÀ» ¿ä±¸ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ´ÙÀ½ÀÇ 2 °³ÀÇ Á¡¿¡ À¯ÀÇÇØ ÁÖ¼¼¿ä.
ServerSocket.setReceiveBufferSize(int)
¸¦ È£ÃâÇØ À̰ÍÀ» ½ÇÇàÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.
size
- ¼ö½Å ¹öÆÛ¿ëÀ¸·Î¼ ¼³Á¤ÇÏ´Â »çÀÌÁî. 0 º¸´Ù Å« °ªÀ» ÁöÁ¤ÇÒ Çʿ䰡 ÀÖ´Ù
IllegalArgumentException
- Ä¡°¡ 0 ¶Ç´Â ºÎÀÇ °ªÀÎ °æ¿ì
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìgetReceiveBufferSize()
,
ServerSocket.setReceiveBufferSize(int)
public int getReceiveBufferSize() throws SocketException
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìsetReceiveBufferSize(int)
public void setKeepAlive(boolean on) throws SocketException
on
- ¼ÒÄÏÀ» ¿Â´ë·Î ÇØ µÑÁö ¾î¶³Áö¸¦ ÁöÁ¤
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìgetKeepAlive()
public boolean getKeepAlive() throws SocketException
boolean
Ä¡
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìsetKeepAlive(boolean)
public void setTrafficClass(int tc) throws SocketException
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)
¿ì¼± Çʵ忡 ºñÆ®¸¦ ¼³Á¤Çϸé(ÀÚ), Á¶ÀÛÀÌ Çã°¡µÇÁö ¾Ê´Â °ÍÀ» ³ªÅ¸³»´Â SocketException °¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
IP (Internet Protocol) ¹öÁ¯ 6 ÀÇ °æ¿ì,tc
´Â IP Çì´õÀÇ sin6_flowinfo Çʵ忡 ÀúÀåµÇ´Â °ªÀÔ´Ï´Ù.
tc
- ºñÆ® ¼¼Æ®ÀÇ int
Ä¡
SocketException
- Æ®·¡ÇÈ Å¬·¡½º ¶Ç´Â ¼ºñ½º ŸÀÔÀ» ¼³Á¤ÇÒ °æ¿ì¿¡ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìgetTrafficClass()
public int getTrafficClass() throws SocketException
»ç¿ëÇÏ´Â ³×Æ®¿öÅ© ±¸ÇöÀÌ,#setTrafficClass()
¸¦ »ç¿ëÇØ ¼³Á¤µÈ Æ®·¡ÇÈ Å¬·¡½º ¶Ç´Â ¼ºñ½º ŸÀÔÀ» ¹«½ÃÇÏ´Â ÀÏÀÌ ÀÖÀ¸¹Ç·Î, ÀÌ Socket ·Î #setTrafficClass()
¸Þ¼Òµå¸¦ »ç¿ëÇØ ÀÌÀüÀ¸·Î ¼³Á¤µÈ °ª°ú´Â ´Ù¸¥ °ªÀÌ ÀÌ ¸Þ¼Òµå·ÎºÎÅÍ µ¹·ÁÁÖ¾îÁö´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
SocketException
- Æ®·¡ÇÈ Å¬·¡½º ¶Ç´Â ¼ºñ½º ŸÀÔÄ¡¸¦ ÃëµæÇÒ °æ¿ì¿¡ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìsetTrafficClass(int)
public void setReuseAddress(boolean on) throws SocketException
TCP Á¢¼ÓÀ» ´ÝÀ¸¸é(ÀÚ), Á¢¼ÓÀÌ ´ÝÀº µÚ, Á¢¼ÓÀÌ ÀÏÁ¤ÇÑ ½Ã°£ ŸÀÓ ¾Æ¿ô »óÅ´ë·Î µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù (Åë»ó,TIME_WAIT »óÅ ¶Ç´Â 2MSL ´ë±â »óÅ·ΠºÒ¸°´Ù). ÁÖÁöÀÇ ¼ÒÄÏ ÁÖ¼Ò ¶Ç´Â Æ÷Å並 »ç¿ëÇÏ´Â ¾îÇø®ÄÉÀ̼ÇÀÇ °æ¿ì, ¼ÒÄÏ ÁÖ¼Ò ¶Ç´Â Æ÷Åä¿¡ °ü·ÃÇÏ´Â Á¢¼ÓÀÌ Å¸ÀÓ ¾Æ¿ô »óÅ¿¡ ÀÖÀ¸¸é(ÀÚ), ¼ÒÄÏÀ» ÇÊ¿äÇÑ SocketAddress ¿¡ ¹ÙÀεå ÇÒ ¼ö ¾ø´Â °ÍÀÌ ÀÖ½À´Ï´Ù.
bind(SocketAddress)
¸¦ »ç¿ëÇØ ¼ÒÄÏÀ» ¹ÙÀεå Çϱâ Àü¿¡ SO_REUSEADDR ¸¦ À¯È¿ÇÏ°Ô Çϸé(ÀÚ), ÀÌÀüÀÇ Á¢¼ÓÀÌ Å¸ÀÓ ¾Æ¿ô »óÅ¿¡¼µµ ¼ÒÄÏÀ» ¹ÙÀεå ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù.
Socket °¡ ÀÛ¼ºµÇ¸é(ÀÚ),SO_REUSEADDR ÀÇ Ãʱ⼳Á¤Àº ¹«È¿°¡ µË´Ï´Ù.
¼ÒÄÏÀÌ ¹ÙÀÎµå µÇ¾ú´Ù (isBound()
¸¦ ÂüÁ¶) ³ªÁß¿¡ SO_REUSEADDR ¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÏ´Â °æ¿ìÀÇ µ¿ÀÛÀº Á¤Àǵǰí ÀÖÁö ¾Ê½À´Ï´Ù.
on
- ¼ÒÄÏ ¿É¼ÇÀ» À¯È¿ÇÏ°Ô ÇÒ±î ¹«È¿·Î ÇÏ´ÂÁö¸¦ ÁöÁ¤
SocketException
- SO_RESUEADDR ¼ÒÄÏ ¿É¼ÇÀ» À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÒ °æ¿ì¿¡ ¿¡·¯°¡ ¹ß»ýÇÏ´Â °æ¿ì, ȤÀº ¼ÒÄÏÀÌ ´Ý°í ÀÖ´Â °æ¿ìgetReuseAddress()
,
bind(SocketAddress)
,
isClosed()
,
isBound()
public boolean getReuseAddress() throws SocketException
boolean
Ä¡
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìsetReuseAddress(boolean)
public void close() throws IOException
ÇöÀç ÀÌ ¼ÒÄÏÀÇ ÀÔÃâ·Â Á¶ÀÛÀ¸·Î ºí·Ï ¶°³¯ ¼ö ÀÖ¾î ¸ðµç thread°¡ SocketException
¸¦ ½½·Î¿ì ÇÕ´Ï´Ù.
¼ÒÄÏÀÌ ´ÝÇôÁö¸é(ÀÚ), ±× ÈÄÀÇ ³×Æ®¿öÅ©¿¡ ±× ¼ÒÄÏÀ» »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù (Áï, ÀçÁ¢¼Ó ¶Ç´Â Àç¹ÙÀεå´Â ÇÒ ¼ö ¾ø´Ù). »õ·Î¿î ¼ÒÄÏÀ» ÀÛ¼ºÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.
ÀÌ ¼ÒÄÏ¿¡ °ü·ÃÇϴ ä³ÎÀÌ Á¸ÀçÇÏ´Â °æ¿ì´Â ±× ä³Îµµ ´ÝÇôÁý´Ï´Ù.
IOException
- ÀÌ ¼ÒÄÏÀ» ´ÝÀ» ¶§ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìisClosed()
public void shutdownInput() throws IOException
¼ÒÄÏÀ¸·Î shutdownInput()¸¦ È£ÃâÇÑ µÚ¿¡ ¼ÒÄÏÀÇ ÀÔ·Â ½ºÆ®¸²À¸·ÎºÎÅÍ ÀоîµéÀ̸é(ÀÚ), ½ºÆ®¸²Àº EOF ¸¦ µ¹·ÁÁÝ´Ï´Ù.
IOException
- ÀÌ ¼ÒÄÏÀ» Á¤ÁöÇÒ °æ¿ì¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìshutdownOutput()
,
close()
,
setSoLinger(boolean, int)
,
isInputShutdown()
public void shutdownOutput() throws IOException
IOException
- ÀÌ ¼ÒÄÏÀ» Á¤ÁöÇÒ °æ¿ì¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìshutdownInput()
,
close()
,
setSoLinger(boolean, int)
,
isOutputShutdown()
public String toString()
String
·Î º¯È¯ÇÕ´Ï´Ù.
Object
³»ÀÇ toString
public boolean isConnected()
public boolean isBound()
bind(java.net.SocketAddress)
public boolean isClosed()
close()
public boolean isInputShutdown()
shutdownInput()
public boolean isOutputShutdown()
shutdownOutput()
public static void setSocketImplFactory(SocketImplFactory fac) throws IOException
¾îÇø®ÄÉÀ̼ÇÀ¸·Î »õ·Î¿î Ŭ¶óÀÌ¾ðÆ® ¼ÒÄÏÀ» ÀÛ¼ºÇϸé(ÀÚ), ¼ÒÄÏ ±¸Çö ÆÑÅ丮ÀÇ createSocketImpl
¸Þ¼Òµå°¡ ºÒ·Á °¡ ½ÇÁ¦ÀÇ ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù.
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ÀÌ ¸Þ¼Òµå´Â ÃÖÃÊ·Î ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkSetFactory
¸Þ¼Òµå¸¦ È£ÃâÇÏ´Â °ÍÀ¸·Î, ÀÌ Á¶ÀÛÀÌ Çã°¡µÇ°í ÀÖ´Â °ÍÀ» È®ÀÎÇÕ´Ï´Ù. ÀÌ °á°ú, SecurityException °¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
fac
- ¸ñÀûÀÇ ÆÑÅ丮
IOException
- ¼ÒÄÏ ÆÑÅ丮ÀÇ ¼³Á¤Áß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SocketException
- ÆÑÅ丮°¡ ¹ú½á Á¤Àǵǰí ÀÖ´Â °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkSetFactory
¸Þ¼Òµå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ìSocketImplFactory.createSocketImpl()
,
SecurityManager.checkSetFactory()
|
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.