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 | |
HeaderIncluded | 2 | 나가는 데이터그램의 IP 헤더를 애플리케이션이 제공함을 나타냅니다. |
HopLimit | 21 | IPv6(인터넷 프로토콜 버전 6) 패킷에 대한 최대 라우터 홉 수를 지정합니다. 이 옵션은 인터넷 프로토콜 버전 4의 TTL(Time to Live)과 유사합니다. |
IPOptions | 1 | 나가는 데이터그램에 삽입될 IP 옵션을 지정합니다. |
IPProtectionLevel | 23 | 동일한 링크 로컬 또는 사이트 로컬 접두사를 가진 주소와 같이 지정된 scope 대한 IPv6 소켓을 제한할 수 있습니다. 이 소켓 옵션을 사용하면 애플리케이션이 IPv6 소켓에 액세스 제한을 적용할 수 있습니다. 이러한 제한을 사용하면 사설 LAN에서 실행되는 애플리케이션을 간단하고 강력하게 외부 공격으로부터 보호할 수 있습니다. 이 소켓 옵션을 통해 적절한 경우 공용 및 개인 사용자의 무제한 액세스를 허용하거나 필요에 따라 같은 사이트로만 액세스를 제한하여 수신 소켓의 범위를 넓히거나 좁힐 수 있습니다. 이 소켓 옵션은 IPProtectionLevel 열거형에 지정된 보호 수준을 정의합니다. |
IpTimeToLive | 4 | IP 헤더의 TTL(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 | 연결 유지를 사용합니다. |
Linger | 128 | 보내지 않은 데이터가 있으면 닫기가 지연됩니다. |
MaxConnections | 2147483647 | 지원되지 않는 값이므로 이 값을 사용하면 SocketException이 throw됩니다. |
MulticastInterface | 9 | 나가는 멀티캐스트 패킷에 대한 인터페이스를 설정합니다. |
MulticastLoopback | 11 | IP 멀티캐스트 루프백입니다. |
MulticastTimeToLive | 10 | IP 멀티캐스트 TTL(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 연결에서 다른 keepalive 프로브를 보내기 전에 keepalive 응답을 대기하는 시 (초)입니다. |
TcpKeepAliveRetryCount | 16 | 연결이 종료되기 전에 전송되는 TCP 연결 유지 프로브 수입니다. |
TcpKeepAliveTime | 3 | Keepalive 프로브를 원격으로 보내기 전에 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
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기