Udostępnij za pośrednictwem


SocketOptionName Wyliczenie

Definicja

Definiuje nazwy opcji konfiguracji.

public enum class SocketOptionName
public enum SocketOptionName
type SocketOptionName = 
Public Enum SocketOptionName
Dziedziczenie
SocketOptionName

Pola

AcceptConnection 2

Gniazdo nasłuchuje.

AddMembership 12

Dodaj członkostwo w grupie adresów IP.

AddSourceMembership 15

Dołącz do grupy źródłowej.

BlockSource 17

Blokuj dane ze źródła.

Broadcast 32

Zezwalaj na wysyłanie komunikatów rozgłaszanych w gniazdach.

BsdUrgent 2

Użyj pilnych danych zgodnie z definicją w dokumencie RFC-1222. Tę opcję można ustawić tylko raz; po jego ustawieniu nie można go wyłączyć.

ChecksumCoverage 20

Ustaw lub pobierz pokrycie sumy kontrolnej UDP.

Debug 1

Rejestruj informacje o debugowaniu.

DontFragment 14

Nie fragmentuj datagramów adresów IP.

DontLinger -129

Zamknij gniazdo z wdziękiem bez utrzymującego się.

DontRoute 16

Nie należy kierować; wyślij pakiet bezpośrednio do adresów interfejsu.

DropMembership 13

Porzucanie członkostwa w grupie adresów IP.

DropSourceMembership 16

Usuwanie grupy źródłowej.

Error 4103

Pobiera stan błędu i czyści.

ExclusiveAddressUse -5

Umożliwia powiązanie gniazda w celu uzyskania wyłącznego dostępu.

Expedited 2

Użyj przyspieszonych danych zgodnie z definicją w dokumencie RFC-1222. Tę opcję można ustawić tylko raz; po jego ustawieniu nie można go wyłączyć.

FastOpen 15

Włącza protokół TCP Fast Open zgodnie z definicją w dokumencie RFC-7413. Rzeczywiste zaobserwowane zachowanie zależy od konfiguracji systemu operacyjnego i stanu pamięci podręcznej plików cookie TCP jądra. Włączenie serwera TFO może mieć wpływ na współdziałanie i powodować problemy z łącznością.

HeaderIncluded 2

Wskazuje, że aplikacja udostępnia nagłówek IP wychodzących datagramów.

HopLimit 21

Określa maksymalną liczbę przeskoków routera dla pakietu protokołu internetowego w wersji 6 (IPv6). Jest to podobne do czasu wygaśnięcia (TTL) dla protokołu internetowego w wersji 4.

IPOptions 1

Określa opcje adresów IP, które mają być wstawione do wychodzących datagramów.

IPProtectionLevel 23

Umożliwia ograniczenie gniazda IPv6 do określonego zakresu, takich jak adresy z tym samym linkiem lokalnego lub lokalnego prefiksu lokacji. Ta opcja gniazda umożliwia aplikacjom umieszczanie ograniczeń dostępu do gniazd IPv6. Takie ograniczenia umożliwiają aplikacji działającej w prywatnej sieci LAN proste i niezawodne wzmacnianie się przed atakami zewnętrznymi. Ta opcja gniazda rozszerza lub zawęża zakres gniazda nasłuchiwania, umożliwiając nieograniczony dostęp od użytkowników publicznych i prywatnych, jeśli jest to konieczne, lub ograniczenie dostępu tylko do tej samej lokacji, co jest wymagane. Ta opcja gniazda ma zdefiniowane poziomy ochrony określone w wyliczenie IPProtectionLevel.

IpTimeToLive 4

Ustaw pole Time-to-Live nagłówka IP.

IPv6Only 27

Wskazuje, czy gniazdo utworzone dla rodziny adresów AF_INET6 jest ograniczone tylko do komunikacji IPv6. Gniazda utworzone dla rodziny adresów AF_INET6 mogą być używane zarówno do komunikacji IPv6, jak i IPv4. Niektóre aplikacje mogą chcieć ograniczyć użycie gniazda utworzonego dla rodziny adresów AF_INET6 tylko do komunikacji IPv6. Jeśli ta wartość jest inna niż zero (wartość domyślna w systemie Windows), można użyć gniazda utworzonego dla rodziny adresów AF_INET6 do wysyłania i odbierania tylko pakietów IPv6. Gdy ta wartość jest równa zero, można użyć gniazda utworzonego dla rodziny adresów AF_INET6 do wysyłania i odbierania pakietów do i z adresu IPv6 lub adresu IPv4. Należy pamiętać, że możliwość interakcji z adresem IPv4 wymaga użycia zamapowanych adresów IPv4. Ta opcja gniazda jest obsługiwana w systemie Windows Vista lub nowszym.

KeepAlive 8

Używaj funkcji keep-alives.

Linger 128

Utrzymaj się blisko, jeśli nie są obecne dane.

MaxConnections 2147483647

Nieobsługiwane; w przypadku użycia zostanie zgłoszony SocketException.

MulticastInterface 9

Ustaw interfejs dla wychodzących pakietów multiemisji.

MulticastLoopback 11

Sprzężenia zwrotnego multiemisji IP.

MulticastTimeToLive 10

Czas multiemisji IP na żywo.

NoChecksum 1

Wyślij datagramy UDP z sumą kontrolną ustawioną na zero.

NoDelay 1

Wyłącza algorytm Nagle na potrzeby łączenia.

OutOfBandInline 256

Odbiera dane poza pasmem w normalnym strumieniu danych.

PacketInformation 19

Zwraca informacje o odebranych pakietach.

ReceiveBuffer 4098

Określa łączną ilość miejsca buforu dla gniazda zarezerwowanego dla odbieranych. Nie ma to związku z maksymalnym rozmiarem komunikatu lub rozmiarem okna TCP.

ReceiveLowWater 4100

Określa niski znacznik wody dla operacji Receive.

ReceiveTimeout 4102

Otrzymuj limit czasu. Ta opcja dotyczy tylko metod synchronicznych; nie ma wpływu na metody asynchroniczne, takie jak metoda BeginSend(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object).

ReuseAddress 4

Umożliwia powiązanie gniazda z adresem, który jest już używany.

ReuseUnicastPort 12295

Wskazuje, że system powinien odroczyć alokację portów efemerycznych dla połączeń wychodzących. Jest to równoważne użyciu opcji gniazda SO_REUSE_UNICASTPORT Winsock2.

SendBuffer 4097

Określa łączną ilość miejsca buforu dla gniazda zarezerwowanego dla wysyłania. Nie ma to związku z maksymalnym rozmiarem komunikatu lub rozmiarem okna TCP.

SendLowWater 4099

Określa niski znacznik wody dla operacji Send.

SendTimeout 4101

Wyślij limit czasu. Ta opcja dotyczy tylko metod synchronicznych; nie ma wpływu na metody asynchroniczne, takie jak metoda BeginSend(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object).

TcpKeepAliveInterval 17

Liczba sekund, przez które połączenie TCP będzie czekać na odpowiedź na czas utrzymania przed wysłaniem kolejnej sondy keepalive.

TcpKeepAliveRetryCount 16

Liczba sond utrzymywania aktywności protokołu TCP, które zostaną wysłane przed zakończeniem połączenia.

TcpKeepAliveTime 3

Liczba sekund, przez które połączenie TCP pozostanie aktywne/bezczynne, zanim sondy keepalive zostaną wysłane do zdalnego.

Type 4104

Pobiera typ gniazda.

TypeOfService 3

Zmień typ nagłówka adresu IP pola usługi.

UnblockSource 18

Odblokuj wcześniej zablokowane źródło.

UpdateAcceptContext 28683

Aktualizuje zaakceptowane właściwości gniazda przy użyciu tych z istniejącego gniazda. Jest to równoważne użyciu opcji gniazda SO_UPDATE_ACCEPT_CONTEXT Winsock2 i jest obsługiwane tylko w gniazdach zorientowanych na połączenie.

UpdateConnectContext 28688

Aktualizuje właściwości połączonego gniazda przy użyciu tych z istniejącego gniazda. Jest to równoważne z użyciem opcji gniazda SO_UPDATE_CONNECT_CONTEXT Winsock2 i jest obsługiwane tylko w gniazdach zorientowanych na połączenie.

UseLoopback 64

Pomiń sprzęt, jeśli to możliwe.

Przykłady

W poniższym przykładzie kodu użyto tej wyliczenia w celu ustawienia opcji gniazda.

// 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)

Uwagi

Wyliczenie SocketOptionName definiuje nazwę każdej opcji konfiguracji Socket. Gniazda można skonfigurować za pomocą metody Socket.SetSocketOption.

Dotyczy

Zobacz też