SocketOptionName Výčet
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Definuje názvy možností konfigurace.
public enum class SocketOptionName
public enum SocketOptionName
type SocketOptionName =
Public Enum SocketOptionName
- Dědičnost
Pole
| Name | Hodnota | Description |
|---|---|---|
| DontLinger | -129 | Zavřete soket elegantně, aniž byste museli přetrvávat. |
| ExclusiveAddressUse | -5 | Umožňuje svázat soket pro výhradní přístup. |
| Debug | 1 | Zaznamenává informace o ladění. |
| IPOptions | 1 | Určuje možnosti PROTOKOLU IP, které se mají vložit do odchozích datagramů. |
| NoChecksum | 1 | Odešlete datagramy UDP s kontrolním součtem nastaveným na nulu. |
| NoDelay | 1 | Zakáže algoritmus Nagle pro slučování odesílání. |
| AcceptConnection | 2 | Soket naslouchá. |
| BsdUrgent | 2 | Používejte urgentní data definovaná v dokumentu RFC-1222. Tuto možnost lze nastavit pouze jednou; poté, co je nastaven, nelze ji vypnout. |
| Expedited | 2 | Použijte urychlená data definovaná v dokumentu RFC-1222. Tuto možnost lze nastavit pouze jednou; poté, co je nastaven, nelze ji vypnout. |
| HeaderIncluded | 2 | Označuje, že aplikace poskytuje hlavičku PROTOKOLU IP pro odchozí datagramy. |
| TcpKeepAliveTime | 3 | Počet sekund, po které připojení TCP zůstane aktivní nebo nečinné, než se do vzdáleného úložiště odešlou sondy keepalive. |
| TypeOfService | 3 | Změňte typ hlavičky IP pole služby. |
| IpTimeToLive | 4 | Nastavte pole Time-to-Live záhlaví IP adresy. |
| ReuseAddress | 4 | Umožňuje, aby soket byl svázán s adresou, která se už používá. |
| KeepAlive | 8 | Používejte udržování naživu. |
| MulticastInterface | 9 | Nastavte rozhraní pro odchozí pakety vícesměrového vysílání. |
| MulticastTimeToLive | 10 | Doba vícesměrového vysílání IP |
| MulticastLoopback | 11 | Zpětná smyčka vícesměrového vysílání IP. |
| AddMembership | 12 | Přidejte členství ve skupině IP adres. |
| DropMembership | 13 | Zahoďte členství ve skupině IP adres. |
| DontFragment | 14 | Nestřílejte datagramy IP adres. |
| AddSourceMembership | 15 | Připojte se ke zdrojové skupině. |
| FastOpen | 15 | Povolí funkci TCP Fast Open definovanou v dokumentu RFC-7413. Skutečné pozorované chování závisí na konfiguraci operačního systému a stavu mezipaměti souborů cookie TCP jádra. Použití TFO se doporučuje jenom v kontrolovaných síťových prostředích, což znamená, že každý middlebox (například brána firewall, směrovač, proxy server) v síťové cestě mezi klientem a serverem je známý a dá se nakonfigurovat tak, aby podporoval TFO. Použití TFO mimo řízená prostředí (jako je otevřený internet) může vést k problémům s připojením. |
| DontRoute | 16 | Nesměrujte; odešle paket přímo na adresy rozhraní. |
| DropSourceMembership | 16 | Odstraňte zdrojovou skupinu. |
| TcpKeepAliveRetryCount | 16 | Počet sond protokolu TCP, které budou odeslány před ukončením připojení. |
| BlockSource | 17 | Zablokujte data ze zdroje. |
| TcpKeepAliveInterval | 17 | Počet sekund, po které bude připojení TCP čekat na zachování odpovědi před odesláním další sondy keepalive. |
| UnblockSource | 18 | Odblokujte dříve blokovaný zdroj. |
| PacketInformation | 19 | Vrátí informace o přijatých paketech. |
| ChecksumCoverage | 20 | Nastavte nebo získejte pokrytí kontrolního součtu UDP. |
| HopLimit | 21 | Určuje maximální počet směrování směrovačů pro paket IPv6 (Internet Protocol verze 6). Podobá se hodnotě TTL (Time to Live) pro protokol INTERNET Protocol verze 4. |
| IPProtectionLevel | 23 | Povolí omezení soketu IPv6 na zadaný obor, například adresy se stejnou místní předponou odkazu nebo místní předponou webu. Tato možnost soketu umožňuje aplikacím umisťovat omezení přístupu na sokety IPv6. Taková omezení umožňují aplikacím běžícím na privátní síti LAN jednoduše a robustně posílit zabezpečení proti externím útokům. Tato možnost soketu rozšiřuje nebo zužuje rozsah naslouchacího soketu, přičemž v případě potřeby umožňuje neomezený přístup od veřejných a soukromých uživatelů nebo omezuje přístup pouze na stejnou lokalitu, jak je potřeba. Tato možnost soketu definovala úrovně ochrany zadané ve výčtu IPProtectionLevel . |
| IPv6Only | 27 | Označuje, jestli je soket vytvořený pro řadu adres AF_INET6 omezen pouze na komunikaci IPv6. Sokety vytvořené pro řadu adres AF_INET6 mohou být použity pro komunikaci IPv6 i IPv4. Některé aplikace můžou chtít omezit použití soketu vytvořeného pro řadu adres AF_INET6 pouze na komunikaci SPv6. Pokud je tato hodnota nenulová (výchozí hodnota na Windows), lze k odesílání a příjmu paketů IPv6 použít soket vytvořený pro řadu AF_INET6 adres. Pokud je tato hodnota nula, je možné použít soket vytvořený pro řadu AF_INET6 adres k odesílání a přijímání paketů do a z adresy IPv6 nebo IPv4. Mějte na paměti, že schopnost pracovat s adresou IPv4 vyžaduje použití mapovaných adres IPv4. Tato možnost soketu je podporována na Windows Vista nebo novějším. |
| Broadcast | 32 | Povolte odesílání zpráv všesměrového vysílání na soketu. |
| UseLoopback | 64 | Pokud je to možné, obejití hardwaru. |
| Linger | 128 | Při zavření se zavírejte, pokud jsou přítomna neodeznaná data. |
| OutOfBandInline | 256 | Přijímá mimo pásmová data v normálním datovém proudu. |
| SendBuffer | 4097 | Určuje celkový prostor vyrovnávací paměti pro jednotlivé sokety vyhrazený pro odesílání. To nesouvisí s maximální velikostí zprávy nebo s velikostí okna PROTOKOLU TCP. |
| ReceiveBuffer | 4098 | Určuje celkový prostor vyrovnávací paměti pro jednotlivé sokety vyhrazený pro příjem. To nesouvisí s maximální velikostí zprávy nebo s velikostí okna PROTOKOLU TCP. |
| SendLowWater | 4099 | Určuje dolní mez pro Send provoz. |
| ReceiveLowWater | 4100 | Určuje dolní mez pro Receive provoz. |
| SendTimeout | 4101 | Odeslání časového limitu Tato možnost se vztahuje pouze na synchronní metody; nemá žádný vliv na asynchronní metody, jako je metoda BeginSend(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object) . |
| ReceiveTimeout | 4102 | Dostanete časový limit. Tato možnost se vztahuje pouze na synchronní metody; nemá žádný vliv na asynchronní metody, jako je metoda BeginSend(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object) . |
| Error | 4103 | Získá stav chyby a vymaže se. |
| Type | 4104 | Získá typ soketu. |
| ReuseUnicastPort | 12295 | Označuje, že systém by měl odložit dočasné přidělení portů pro odchozí připojení. To odpovídá použití SO_REUSE_UNICASTPORT soketu Winsock2. |
| UpdateAcceptContext | 28683 | Aktualizuje vlastnosti přijatého soketu pomocí těch z existujícího soketu. To je ekvivalentem použití SO_UPDATE_ACCEPT_CONTEXT rozhraní Winsock2 soketu a je podporován pouze u soketů orientovaných na připojení. |
| UpdateConnectContext | 28688 | Aktualizuje vlastnosti připojeného soketu pomocí těch z existujícího soketu. To je ekvivalentem použití možnosti SO_UPDATE_CONNECT_CONTEXT soketu Winsock2 a je podporován pouze u soketů orientovaných na připojení. |
| MaxConnections | 2147483647 | Nepodporováno; SocketException vyvolá výjimku, pokud se použije. |
Příklady
Následující příklad kódu používá tento výčet k nastavení možností soketu.
// 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)
Poznámky
Výčet SocketOptionName definuje název každé Socket možnosti konfigurace. Sokety lze nakonfigurovat pomocí Socket.SetSocketOption metody.