SocketOptionName Enumeração
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Define os nomes de opções de configuração.
public enum class SocketOptionName
public enum SocketOptionName
type SocketOptionName =
Public Enum SocketOptionName
- Herança
Campos
AcceptConnection | 2 | O soquete está escutando. |
AddMembership | 12 | Adiciona uma associação de grupo IP. |
AddSourceMembership | 15 | Ingressa em um grupo de origem. |
BlockSource | 17 | Bloqueia dados de uma fonte. |
Broadcast | 32 | Permite o envio de mensagens de difusão no soquete. |
BsdUrgent | 2 | Usa dados urgentes conforme definido em RFC-1222. Essa opção pode ser definida apenas uma vez; depois de definida, ela não poderá ser desativada. |
ChecksumCoverage | 20 | Define ou obtém a cobertura de soma de verificação UDP. |
Debug | 1 | Registre informações de depuração. |
DontFragment | 14 | Não fragmenta os datagramas IP. |
DontLinger | -129 | Fecha o soquete normalmente sem demorar-se. |
DontRoute | 16 | Não faz roteamento; envia o pacote diretamente aos endereços de interface. |
DropMembership | 13 | Remove uma associação de grupo IP. |
DropSourceMembership | 16 | Remove um grupo de origem. |
Error | 4103 | Obtém o status de erro e limpa. |
ExclusiveAddressUse | -5 | Permite limitar um soquete para acesso exclusivo. |
Expedited | 2 | Use os dados expressos conforme definido em RFC-1222. Essa opção pode ser definida apenas uma vez; depois de definida, ela não poderá ser desativada. |
FastOpen | 15 | |
HeaderIncluded | 2 | Indica que o aplicativo fornece o cabeçalho IP para datagramas de saída. |
HopLimit | 21 | Especifica que o número máximo de saltos do roteador para um pacote IPv6 (Protocolo de Internet versão 6). Isso é semelhante à TTL (vida útil) para o protocolo IP versão 4. |
IPOptions | 1 | Especifica as opções IP a serem inseridas nos datagramas enviados. |
IPProtectionLevel | 23 | Habilita a restrição de um soquete IPv6 a um escopo especificado, como endereços com o mesmo prefixo local de link ou local do site. Essa opção de soquete permite que os aplicativos coloquem restrições de acesso em soquetes IPv6. Essas restrições permitem que um aplicativo em execução em uma LAN privada proteja-se de modo simples e robusto contra ataques externos. Essa opção de soquete amplia ou reduz o escopo de um soquete de escuta, permitindo acesso irrestrito de usuários públicos e privados, quando apropriado, ou restringindo o acesso somente ao mesmo site, conforme necessário. Essa opção de soquete definiu os níveis de proteção especificados na enumeração IPProtectionLevel. |
IpTimeToLive | 4 | Define o campo de Vida Útil do cabeçalho IP. |
IPv6Only | 27 | Indica se um soquete criado para a família de endereços AF_INET6 é restrito a apenas comunicações IPv6. Soquetes criados para a família de endereços AF_INET6 podem ser usados para comunicações IPv6 e IPv4. Alguns aplicativos podem querer restringir o uso de um soquete criado para a família de endereço AF_INET6 a apenas comunicações IPv6. Quando esse valor é diferente de zero (o padrão no Windows), um soquete criado para a família de endereço AF_INET6 pode ser usada para enviar e receber apenas os pacotes IPv6. Quando esse valor é zero, um soquete criado para a família de endereço AF_INET6 pode ser usado para enviar e receber pacotes para e de um endereço IPv6 ou um endereço IPv4. Observe que a capacidade de interagir com endereços IPv4 requer o uso dos endereços IPv4 mapeados. Essa opção de soquete tem suporte no Windows Vista ou posterior. |
KeepAlive | 8 | Usa os keep alives. |
Linger | 128 | Demora no fechamento caso haja dados não enviados. |
MaxConnections | 2147483647 | Não tem suporte; lança um SocketException, se usado. |
MulticastInterface | 9 | Define a interface para pacotes multicast de saída. |
MulticastLoopback | 11 | Um loopback de multicast IP. |
MulticastTimeToLive | 10 | A vida útil de um multicast IP. |
NoChecksum | 1 | Envia datagramas UDP com soma de verificação definida como zero. |
NoDelay | 1 | Desabilita o algoritmo Nagle para união de envio. |
OutOfBandInline | 256 | Recebe dados fora de banda no fluxo de dados normal. |
PacketInformation | 19 | Retorna informações sobre pacotes recebidos. |
ReceiveBuffer | 4098 | Especifica o espaço de buffer por soquete total reservado para recebimentos. Isso não está relacionado ao tamanho máximo da mensagem ou ao tamanho de uma janela TCP. |
ReceiveLowWater | 4100 | Especifica a marca d'água inferior para operações Receive. |
ReceiveTimeout | 4102 | Receber um tempo limite. Essa opção se aplica apenas aos métodos síncronos; ela não tem efeitos sobre métodos assíncronos, como o método BeginSend(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object). |
ReuseAddress | 4 | Permite associar o soquete a um endereço que já está em uso. |
ReuseUnicastPort | 12295 | Indica que o sistema deve adiar a alocação de porta efêmera para conexões de saída. Isso é equivalente a usar a opção de soquete SO_REUSE_UNICASTPORT Winsock2. |
SendBuffer | 4097 | Especifica o espaço de buffer por soquete total reservado para envios. Isso não está relacionado ao tamanho máximo da mensagem ou ao tamanho de uma janela TCP. |
SendLowWater | 4099 | Especifica a marca d'água inferior para operações Send. |
SendTimeout | 4101 | Enviar um tempo limite. Essa opção se aplica apenas aos métodos síncronos; ela não tem efeitos sobre métodos assíncronos, como o método BeginSend(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object). |
TcpKeepAliveInterval | 17 | O número de segundos que uma conexão TCP aguardará por uma resposta de manutenção de atividade antes de enviar outra investigação de manutenção de atividade. |
TcpKeepAliveRetryCount | 16 | O número de investigações de manutenção de atividade de TCP que serão enviadas antes que a conexão seja encerrada. |
TcpKeepAliveTime | 3 | O número de segundos que uma conexão TCP permanecerá ativa/ociosa antes que investigações de manutenção de atividade sejam enviadas para o remoto. |
Type | 4104 | Obtém o tipo de soquete. |
TypeOfService | 3 | Altera o tipo de cabeçalho IP do campo de serviço. |
UnblockSource | 18 | Desbloqueia uma fonte bloqueada anteriormente. |
UpdateAcceptContext | 28683 | Atualiza as propriedades de um soquete aceito usando aquelas de um soquete existente. Isso é equivalente a usar a opção de soquete SO_UPDATE_ACCEPT_CONTEXT Winsock2 e tem suporte apenas em soquetes orientados a conexão. |
UpdateConnectContext | 28688 | Atualiza as propriedades de um soquete conectado usando aquelas de um soquete existente. Isso é equivalente a usar a opção de soquete SO_UPDATE_CONNECT_CONTEXT Winsock2 e tem suporte apenas em soquetes orientados a conexão. |
UseLoopback | 64 | Ignora o hardware quando possível. |
Exemplos
O exemplo de código a seguir usa essa enumeração para definir opções de soquete.
// 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)
Comentários
A SocketOptionName enumeração define o nome de cada Socket opção de configuração. Soquetes podem ser configurados com o Socket.SetSocketOption método .
Aplica-se a
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários