SocketOptionName Enumeration
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Definiert Konfigurationsoptionsnamen.
public enum class SocketOptionName
public enum SocketOptionName
type SocketOptionName =
Public Enum SocketOptionName
- Vererbung
Felder
| Name | Wert | Beschreibung |
|---|---|---|
| DontLinger | -129 | Schließen Sie den Socket ordnungsgemäß, ohne zu bleiben. |
| ExclusiveAddressUse | -5 | Ermöglicht die Bindung eines Sockets für exklusiven Zugriff. |
| Debug | 1 | Zeichnet Debuginformationen auf. |
| IPOptions | 1 | Gibt die IP-Optionen an, die in ausgehende Datagramme eingefügt werden sollen. |
| NoChecksum | 1 | UDP-Datagramme mit Prüfsummen senden, die auf Null festgelegt sind. |
| NoDelay | 1 | Deaktiviert den Nagle-Algorithmus für Sammelsendungen. |
| AcceptConnection | 2 | Der Socket überwacht. |
| BsdUrgent | 2 | Verwenden Sie dringende Daten, wie in RFC-1222 definiert. Diese Option kann nur einmal festgelegt werden. nachdem sie festgelegt wurde, kann sie nicht deaktiviert werden. |
| Expedited | 2 | Verwenden Sie beschleunigte Daten, wie in RFC-1222 definiert. Diese Option kann nur einmal festgelegt werden. nachdem sie festgelegt wurde, kann sie nicht deaktiviert werden. |
| HeaderIncluded | 2 | Gibt an, dass die Anwendung den IP-Header für ausgehende Datagramme bereitstellt. |
| TypeOfService | 3 | Ändern Sie den IP-Headertyp des Dienstfelds. |
| IpTimeToLive | 4 | Legen Sie das Feld "Time-to-Live" des IP-Headers fest. |
| ReuseAddress | 4 | Ermöglicht die Bindung des Sockets an eine adresse, die bereits verwendet wird. |
| KeepAlive | 8 | Verwenden Sie Keep-Alives. |
| MulticastInterface | 9 | Legen Sie die Schnittstelle für ausgehende Multicastpakete fest. |
| MulticastTimeToLive | 10 | Eine IP-Multicastzeit zu Live. |
| MulticastLoopback | 11 | Ein IP-Multicast-Loopback. |
| AddMembership | 12 | Fügen Sie eine IP-Gruppenmitgliedschaft hinzu. |
| DropMembership | 13 | Legen Sie eine IP-Gruppenmitgliedschaft ab. |
| DontFragment | 14 | Ip-Datagramme nicht fragmentiert. |
| AddSourceMembership | 15 | Verknüpfen einer Quellgruppe. |
| DontRoute | 16 | Nicht weiterleiten; senden Sie das Paket direkt an die Schnittstellenadressen. |
| DropSourceMembership | 16 | Legen Sie eine Quellgruppe ab. |
| BlockSource | 17 | Blockieren von Daten aus einer Quelle. |
| UnblockSource | 18 | Heben Sie die Blockierung einer zuvor blockierten Quelle auf. |
| PacketInformation | 19 | Gibt Informationen zu empfangenen Paketen zurück. |
| ChecksumCoverage | 20 | Festlegen oder Abrufen der UDP-Prüfsummenabdeckung. |
| HopLimit | 21 | Gibt die maximale Anzahl von Routerhüpfen für ein IPv6-Paket (Internet Protocol Version 6) an. Dies ähnelt Time to Live (TTL) für Internetprotokoll Version 4. |
| IPProtectionLevel | 23 | Aktiviert die Einschränkung eines IPv6-Sockets auf einen angegebenen Bereich, z. B. Adressen mit demselben lokalen Link- oder Standortpräfix. Mit dieser Socketoption können Anwendungen Zugriffsbeschränkungen für IPv6-Sockets festlegen. Solche Einschränkungen ermöglichen es einer Anwendung, die auf einem privaten LAN ausgeführt wird, sich einfach und robust gegen externe Angriffe zu erhärten. Mit dieser Socketoption wird der Umfang eines Überwachungssockets erweitert oder eingeschränkt, sodass der uneingeschränkte Zugriff von öffentlichen und privaten Benutzern bei Bedarf aktiviert oder nur auf denselben Standort beschränkt wird. Diese Socketoption hat die in der IPProtectionLevel Enumeration angegebenen Schutzebenen definiert. |
| IPv6Only | 27 | Gibt an, ob ein für die AF_INET6-Adressfamilie erstellter Socket auf IPv6-Kommunikation beschränkt ist. Für die AF_INET6-Adressfamilie erstellte Sockets können sowohl für IPv6- als auch für IPv4-Kommunikation verwendet werden. In einigen Anwendungen kann es erforderlich sein, die Verwendung eines für die AF_INET6-Adressfamilie erstellten Sockets auf die IPv6-Kommunikation zu beschränken. Wenn dieser Wert ungleich Null ist (der Standardwert für Windows), kann ein socket, der für die AF_INET6 Adressfamilie erstellt wurde, nur zum Senden und Empfangen von IPv6-Paketen verwendet werden. Wenn dieser Wert 0 ist, kann ein für die AF_INET6-Adressfamilie erstellter Socket zum Senden und Empfangen von IPv6- oder IPv4-Paketen verwendet werden. Die Möglichkeit der Interaktion mit einer IPv4-Adresse setzt die Verwendung von IPv4-zugeordneten Adressen voraus. Diese Socketoption wird unter Windows Vista oder höher unterstützt. |
| Broadcast | 32 | Lassen Sie das Senden von Übertragungsnachrichten im Socket zu. |
| UseLoopback | 64 | Umgehen Sie Hardware nach Möglichkeit. |
| Linger | 128 | Bleiben Sie beim Schließen, wenn nicht gesendete Daten vorhanden sind. |
| OutOfBandInline | 256 | Empfängt Out-of-Band-Daten im normalen Datenstrom. |
| SendBuffer | 4097 | Gibt den Gesamtspeicher pro Socketpuffer an, der für Sendesendungen reserviert ist. Dies ist nicht mit der maximalen Nachrichtengröße oder der Größe eines TCP-Fensters verknüpft. |
| ReceiveBuffer | 4098 | Gibt den gesamt reservierten Pufferraum pro Socket an. Dies ist nicht mit der maximalen Nachrichtengröße oder der Größe eines TCP-Fensters verknüpft. |
| SendLowWater | 4099 | Gibt das Niedrigwasserzeichen für Send Vorgänge an. |
| ReceiveLowWater | 4100 | Gibt das Niedrigwasserzeichen für Receive Vorgänge an. |
| SendTimeout | 4101 | Senden Sie ein Timeout. Diese Option gilt nur für synchrone Methoden; sie wirkt sich nicht auf asynchrone Methoden wie die BeginSend(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object) Methode aus. |
| ReceiveTimeout | 4102 | Erhalten Sie ein Timeout. Diese Option gilt nur für synchrone Methoden; sie wirkt sich nicht auf asynchrone Methoden wie die BeginSend(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object) Methode aus. |
| Error | 4103 | Ruft den Fehlerstatus ab und löscht den Fehler. |
| Type | 4104 | Ruft den Sockettyp ab. |
| ReuseUnicastPort | 12295 | Gibt an, dass das System die kurzlebige Portzuweisung für ausgehende Verbindungen zurückstellen soll. Dies entspricht der Verwendung der Winsock2-SO_REUSE_UNICASTPORT Socketoption. |
| UpdateAcceptContext | 28683 | Aktualisiert die Eigenschaften eines akzeptierten Sockets mithilfe der Eigenschaften eines vorhandenen Sockets. Dies entspricht der Verwendung der Winsock2 SO_UPDATE_ACCEPT_CONTEXT Socketoption und wird nur für verbindungsorientierte Sockets unterstützt. |
| UpdateConnectContext | 28688 | Aktualisiert die Eigenschaften eines verbundenen Sockets mithilfe der Eigenschaften eines vorhandenen Sockets. Dies entspricht der Verwendung der Winsock2 SO_UPDATE_CONNECT_CONTEXT Socketoption und wird nur für verbindungsorientierte Sockets unterstützt. |
| MaxConnections | 2147483647 | Nicht unterstützt; löst bei Verwendung ein SocketException . |
Beispiele
Im folgenden Codebeispiel wird diese Enumeration verwendet, um Socketoptionen festzulegen.
// 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)
Hinweise
Die SocketOptionName Enumeration definiert den Namen jeder Socket Konfigurationsoption. Sockets können mit der Socket.SetSocketOption Methode konfiguriert werden.