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 bezpiecznie bez utrzymujących się.

DontRoute 16

Nie należy kierować; wysyłać 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ć.

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ą zostać wstawione do wychodzących datagramów.

IPProtectionLevel 23

Umożliwia ograniczenie gniazda IPv6 do określonego zakresu, takich jak adresy z tym samym łączem lokalnego lub lokalnego prefiksu lokacji. Ta opcja gniazda umożliwia aplikacjom wprowadzenie 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 witryny, zgodnie z potrzebami. 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 dla 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, gniazdo utworzone dla rodziny adresów AF_INET6 może służyć 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 adresów mapowanych IPv4. Ta opcja gniazda jest obsługiwana w systemie Windows Vista lub nowszym.

KeepAlive 8

Używaj utrzymywania aktywności.

Linger 128

Po zakończeniu zamykania, jeśli dane nie są obecne.

MaxConnections 2147483647

Nieobsługiwane; metoda zgłosi wartość , jeśli zostanie użyta 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

Wysyłaj datagramy UDP z sumą kontrolną ustawioną na zero.

NoDelay 1

Wyłącza algorytm Nagle do wysyłania łą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 na gniazdo zarezerwowane dla odbieranych. Nie jest to związane z maksymalnym rozmiarem komunikatu lub rozmiarem okna TCP.

ReceiveLowWater 4100

Określa niski znacznik wody dla Receive operacji.

ReceiveTimeout 4102

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

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 odpowiednik użycia opcji gniazda SO_REUSE_UNICASTPORT Winsock2.

SendBuffer 4097

Określa łączną ilość miejsca buforu na gniazdo zarezerwowane dla wysyłania. Nie jest to związane z maksymalnym rozmiarem komunikatu lub rozmiarem okna TCP.

SendLowWater 4099

Określa niski znacznik wody dla Send operacji.

SendTimeout 4101

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

TcpKeepAliveInterval 17

Liczba sekund oczekiwania połączenia TCP na odpowiedź na czas utrzymania przed wysłaniem kolejnej sondy utrzymania aktywności.

TcpKeepAliveRetryCount 16

Liczba sond utrzymywania aktywności protokołu TCP, które będą wysyłane przed zakończeniem połączenia.

TcpKeepAliveTime 3

Liczba sekund, przez które połączenie TCP pozostanie aktywne/bezczynne, zanim sondy utrzymania aktywności 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 istniejących gniazd. Jest to odpowiednik użycia opcji gniazda SO_UPDATE_ACCEPT_CONTEXT Winsock2 i jest obsługiwany tylko w gniazdach zorientowanych na połączenia.

UpdateConnectContext 28688

Aktualizuje właściwości połączonego gniazda przy użyciu istniejących gniazd. Jest to odpowiednik użycia opcji gniazda SO_UPDATE_CONNECT_CONTEXT Winsock2 i jest obsługiwany tylko w gniazdach zorientowanych na połączenie.

UseLoopback 64

Jeśli to możliwe, pomiń sprzęt.

Przykłady

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

// Specifies that send operations will time-out 
// if confirmation is not received within 1000 milliseconds.
s->SetSocketOption( SocketOptionLevel::Socket, SocketOptionName::SendTimeout, 1000 );

// 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 );
// Send operations will time-out if confirmation
// is not received within 1000 milliseconds.
s.SetSocketOption (SocketOptionLevel.Socket, SocketOptionName.SendTimeout, 1000);

// The socket will linger for 10 seconds after Socket.Close is called.
LingerOption lingerOption = new LingerOption (true, 10);

s.SetSocketOption (SocketOptionLevel.Socket, SocketOptionName.Linger, lingerOption);
'Send operations will time-out if confirmation is 
' not received within 1000 milliseconds.
s.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.SendTimeout, 1000)

' 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 Socket opcji konfiguracji. Gniazda można skonfigurować za Socket.SetSocketOption pomocą metody .

Dotyczy

Zobacz też