SocketOptionName Enumeração

Definição

Define os nomes de opções de configuração.

public enum class SocketOptionName
public enum SocketOptionName
type SocketOptionName = 
Public Enum SocketOptionName
Herança
SocketOptionName

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.

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 para um escopo especificado, como endereços com o mesmo prefixo local de link ou site local. 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 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)

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