다음을 통해 공유


SocketOptionName 열거형

정의

구성 옵션 이름을 정의합니다.

public enum class SocketOptionName
public enum SocketOptionName
type SocketOptionName = 
Public Enum SocketOptionName
상속
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 메서드를 사용하여 구성할 수 있습니다.

적용 대상

추가 정보