SocketOptionName 열거형
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
구성 옵션 이름을 정의합니다.
public enum class SocketOptionName
public enum SocketOptionName
type SocketOptionName =
Public Enum SocketOptionName
- 상속
필드
AcceptConnection | 2 | 소켓이 수신 대기하고 있습니다. |
AddMembership | 12 | IP 그룹 멤버 자격을 추가합니다. |
AddSourceMembership | 15 | 원본 그룹에 조인합니다. |
BlockSource | 17 | 원본에서 데이터를 차단합니다. |
Broadcast | 32 | 소켓에서 브로드캐스트 메시지 보내기를 허용합니다. |
BsdUrgent | 2 | RFC-1222에 정의된 대로 긴급 데이터를 사용합니다. 이 옵션은 한 번만 설정할 수 있습니다. 설정된 후에는 해제할 수 없습니다. |
ChecksumCoverage | 20 | UDP 체크섬 검사를 설정하거나 가져옵니다. |
Debug | 1 | 디버깅 정보를 기록합니다. |
DontFragment | 14 | IP 데이터그램을 조각화하지 마세요. |
DontLinger | -129 | 소켓을 오래 가지 않고 정상적으로 닫습니다. |
DontRoute | 16 | 라우팅하지 마세요. 패킷을 인터페이스 주소로 직접 보냅니다. |
DropMembership | 13 | IP 그룹 멤버 자격을 삭제합니다. |
DropSourceMembership | 16 | 원본 그룹을 삭제합니다. |
Error | 4103 | 오류 상태를 가져오고 지우기 |
ExclusiveAddressUse | -5 | 단독 액세스를 위해 소켓을 바인딩할 수 있습니다. |
Expedited | 2 | RFC-1222에 정의된 대로 신속한 데이터를 사용합니다. 이 옵션은 한 번만 설정할 수 있습니다. 설정된 후에는 해제할 수 없습니다. |
FastOpen | 15 | RFC-7413에 정의된 대로 TCP Fast Open을 사용하도록 설정합니다. 실제 관찰 동작은 OS 구성 및 커널 TCP 쿠키 캐시의 상태에 따라 달라집니다. TFO를 사용하도록 설정하면 상호 운용성에 영향을 미치고 연결 문제가 발생할 수 있습니다. |
HeaderIncluded | 2 | 애플리케이션이 나가는 데이터그램에 대한 IP 헤더를 제공한다는 것을 나타냅니다. |
HopLimit | 21 | IPv6(인터넷 프로토콜 버전 6) 패킷의 최대 라우터 홉 수를 지정합니다. 이는 인터넷 프로토콜 버전 4용 TTL(Time to Live)과 유사합니다. |
IPOptions | 1 | 나가는 데이터그램에 삽입할 IP 옵션을 지정합니다. |
IPProtectionLevel | 23 | 링크가 동일한 로컬 또는 사이트 로컬 접두사를 가진 주소와 같이 지정된 범위에 대한 IPv6 소켓의 제한을 사용하도록 설정합니다. 이 소켓 옵션을 사용하면 애플리케이션이 IPv6 소켓에 액세스 제한을 적용할 수 있습니다. 이러한 제한을 통해 프라이빗 LAN에서 실행되는 애플리케이션은 외부 공격에 대해 간단하고 강력하게 강화할 수 있습니다. 이 소켓 옵션은 수신 대기 소켓의 범위를 넓히거나 좁히며, 적절한 경우 퍼블릭 및 프라이빗 사용자로부터 무제한 액세스를 사용하도록 설정하거나 필요에 따라 동일한 사이트에만 액세스를 제한합니다. 이 소켓 옵션은 IPProtectionLevel 열거형에 지정된 보호 수준을 정의했습니다. |
IpTimeToLive | 4 | IP 헤더 Time-to-Live 필드를 설정합니다. |
IPv6Only | 27 | AF_INET6 주소 패밀리에 대해 만든 소켓이 IPv6 통신으로만 제한되는지 여부를 나타냅니다. AF_INET6 주소 패밀리에 대해 만든 소켓은 IPv6 및 IPv4 통신 모두에 사용할 수 있습니다. 일부 애플리케이션은 AF_INET6 주소 패밀리에 대해 생성된 소켓의 사용을 IPv6 통신으로만 제한하려고 할 수 있습니다. 이 값이 0이 아닌 경우(Windows의 기본값) AF_INET6 주소 패밀리에 대해 만든 소켓을 사용하여 IPv6 패킷만 보내고 받을 수 있습니다. 이 값이 0이면 AF_INET6 주소 패밀리에 대해 만들어진 소켓을 사용하여 IPv6 주소 또는 IPv4 주소로 패킷을 보내고 받을 수 있습니다. IPv4 주소와 상호 작용하는 기능을 사용하려면 IPv4 매핑된 주소를 사용해야 합니다. 이 소켓 옵션은 Windows Vista 이상에서 지원됩니다. |
KeepAlive | 8 | keep-alive를 사용합니다. |
Linger | 128 | 들여쓰지 않은 데이터가 있는 경우 닫습니다. |
MaxConnections | 2147483647 | 지원되지 않습니다. 를 사용하면 SocketException throw합니다. |
MulticastInterface | 9 | 나가는 멀티캐스트 패킷에 대한 인터페이스를 설정합니다. |
MulticastLoopback | 11 | IP 멀티캐스트 루프백입니다. |
MulticastTimeToLive | 10 | IP 멀티캐스트 TL(Time to Live)입니다. |
NoChecksum | 1 | 체크섬이 0으로 설정된 UDP 데이터그램을 보냅니다. |
NoDelay | 1 | 병합 보내기에 Nagle 알고리즘을 사용하지 않도록 설정합니다. |
OutOfBandInline | 256 | 일반 데이터 스트림에서 대역 외 데이터를 받습니다. |
PacketInformation | 19 | 수신된 패킷에 대한 정보를 반환합니다. |
ReceiveBuffer | 4098 | 수신에 예약된 총 소켓당 버퍼 공간을 지정합니다. 이는 최대 메시지 크기 또는 TCP 창의 크기와 관련이 없습니다. |
ReceiveLowWater | 4100 | Receive 작업의 하위 워터 마크를 지정합니다. |
ReceiveTimeout | 4102 | 시간 초과를 받습니다. 이 옵션은 동기 메서드에만 적용됩니다. BeginSend(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object) 메서드와 같은 비동기 메서드에는 영향을 주지 않습니다. |
ReuseAddress | 4 | 소켓이 이미 사용 중인 주소에 바인딩되도록 허용합니다. |
ReuseUnicastPort | 12295 | 시스템에서 아웃바운드 연결에 대한 임시 포트 할당을 연기해야 임을 나타냅니다. Winsock2 SO_REUSE_UNICASTPORT 소켓 옵션을 사용하는 것과 같습니다. |
SendBuffer | 4097 | 송신을 위해 예약된 총 소켓당 버퍼 공간을 지정합니다. 이는 최대 메시지 크기 또는 TCP 창의 크기와 관련이 없습니다. |
SendLowWater | 4099 | Send 작업의 하위 워터 마크를 지정합니다. |
SendTimeout | 4101 | 시간 초과를 보냅니다. 이 옵션은 동기 메서드에만 적용됩니다. BeginSend(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object) 메서드와 같은 비동기 메서드에는 영향을 주지 않습니다. |
TcpKeepAliveInterval | 17 | TCP 연결이 다른 유지 프로브를 보내기 전에 유지 응답을 기다리는 시간(초)입니다. |
TcpKeepAliveRetryCount | 16 | 연결이 종료되기 전에 전송될 TCP 유지 활성 프로브의 수입니다. |
TcpKeepAliveTime | 3 | 유지 프로브가 원격으로 전송되기 전에 TCP 연결이 활성/유휴 상태로 유지되는 시간(초)입니다. |
Type | 4104 | 소켓 유형을 가져옵니다. |
TypeOfService | 3 | 서비스 필드의 IP 헤더 유형을 변경합니다. |
UnblockSource | 18 | 이전에 차단된 원본의 차단을 해제합니다. |
UpdateAcceptContext | 28683 | 기존 소켓의 속성을 사용하여 허용된 소켓의 속성을 업데이트합니다. 이는 Winsock2 SO_UPDATE_ACCEPT_CONTEXT 소켓 옵션을 사용하는 것과 동일하며 연결 지향 소켓에서만 지원됩니다. |
UpdateConnectContext | 28688 | 기존 소켓의 속성을 사용하여 연결된 소켓의 속성을 업데이트합니다. 이는 Winsock2 SO_UPDATE_CONNECT_CONTEXT 소켓 옵션을 사용하는 것과 동일하며 연결 지향 소켓에서만 지원됩니다. |
UseLoopback | 64 | 가능하면 하드웨어를 무시합니다. |
예제
다음 코드 예제에서는 이 열거형을 사용하여 소켓 옵션을 설정합니다.
// Specifies that the Socket will linger for 10 seconds after Close is called.
LingerOption^ lingerOption = gcnew LingerOption(true, 10);
s->SetSocketOption(SocketOptionLevel::Socket, SocketOptionName::Linger, lingerOption);
// The socket will linger for 10 seconds after Socket.Close is called.
var lingerOption = new LingerOption(true, 10);
s.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Linger, lingerOption);
' The socket will linger for 10 seconds after Socket.Close is called.
Dim lingerOption As New LingerOption(True, 10)
s.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Linger, lingerOption)
설명
SocketOptionName 열거형은 각 Socket 구성 옵션의 이름을 정의합니다. 소켓은 Socket.SetSocketOption 메서드를 사용하여 구성할 수 있습니다.
적용 대상
추가 정보
.NET