11. Socketの実装クラス
• Windows Vista以降
– java.net. DualStackPlainSocketImpl
– This class defines the plain SocketImpl that is used on Windows platforms
greater or equal to Windows Vista. These platforms have a dual layer TCP/IP
stack and can handle both IPv4 and IPV6 through a single file descriptor.
• Windows Vistaより前
– java.net.TwoStacksPlainSocketImpl
– This class defines the plain SocketImpl that is used for all Windows version
lower than Vista. It adds support for IPv6 on these platforms where
available. For backward compatibility Windows platforms that do not have
IPv6 support also use this implementation, and fd1 gets set to null during
socket creation.
– second fd, used for ipv6 on windows only. fd1 is used for listeners and for
client sockets at initialization until the socket is connected. Up to this
point fd always refers to the ipv4 socket and fd1 to the ipv6 socket. After
the socket becomes connected, fd always refers to the connected socket
(either v4 or v6) and fd1 is closed. For ServerSockets, fd always refers to
the v4 listener and fd1 the v6 listener.