Compartilhar via


<tcpTransport>

Define um transporte TCP que pode ser usado por um canal para transferir mensagens para uma associação personalizada.

<configuração>
  <system.serviceModel>
    <bindings>
      <customBinding>
        <binding>
          <tcpTransport>

Syntax

<tcpTransport channelInitializationTimeout="TimeSpan"
              connectionBufferSize="Integer"
              hostNameComparisonMode="StrongWildcard/Exact/WeakWildcard"
              listenBacklog="Integer"
              manualAddressing="Boolean"
              maxBufferPoolSize="Integer"
              maxBufferSize="Integer"
              maxOutputDelay="TimeSpan"
              maxPendingAccepts="Integer"
              maxPendingConnections="Integer"
              maxReceivedMessageSize="Integer"
              portSharingEnabled="Boolean"
              teredoEnabled="Boolean"
              transferMode="Buffered/Streamed/StreamedRequest/StreamedResponse" >
  <connectionPoolSettings groupName="String"
                          idleTimeout="TimeSpan"
                          leaseTimeout="TimeSpan"
                          maxOutboundConnectionsPerEndpoint="Integer" />
</tcpTransport>

Atributos e elementos

As seções a seguir descrevem atributos, elementos filho e elementos pai.

Atributos

Atributo Descrição
channelInitializationTimeout Obtém ou define o limite de tempo para inicializar um canal a ser aceito. O tempo máximo em segundos que um canal pode estar no estado de inicialização antes de ser desconectado. Essa cota inclui o tempo que uma conexão TCP pode levar para se autenticar usando o protocolo .NET Message Framing. Um cliente precisa enviar alguns dados iniciais antes que o servidor tenha informações suficientes para executar a autenticação. O padrão é 30 segundos.
connectionBufferSize Obtém ou define o tamanho do buffer usado para transmitir uma parte da mensagem serializada na conexão do cliente ou do serviço.
hostNameComparisonMode Obtém ou define um valor que indica se o nome do host é usado para alcançar o serviço ao fazer correspondência no URI.
listenBacklog O número máximo de solicitações de conexão na fila que podem estar pendentes para um serviço Web. O atributo connectionLeaseTimeout limita a duração em que o cliente aguardará para ser conectado antes de lançar uma exceção de conexão. Essa é uma propriedade de nível de soquete que controla o número máximo de solicitações de conexão na fila que podem estar pendentes para um serviço Web. Quando o ListenBacklog estiver muito baixo, o WCF deixará de aceitar solicitações e, portanto, descartará novas conexões até que o servidor reconheça algumas das conexões existentes na fila. O padrão é 16 * o número de processadores.
manualAddressing Obtém ou define um valor que indica se o endereçamento manual da mensagem é necessário.
maxBufferPoolSize Obtém ou define o tamanho máximo de qualquer pool de buffer usado pelo transporte.
maxBufferSize Obtém ou define o tamanho máximo do buffer a ser usado. Para mensagens transmitidas, este valor deve ser pelo menos o tamanho máximo possível dos cabeçalhos de mensagem, lidos em modo em buffer.
maxOutputDelay Obtém ou define o intervalo máximo de tempo que uma parte de uma mensagem ou uma mensagem completa pode permanecer armazenada em buffer na memória antes de ser enviada.
maxPendingAccepts Obtém ou define o número máximo de operações de aceitação assíncrona pendentes que estão disponíveis para processar conexões de entrada para o serviço.
maxPendingConnections Obtém ou define o número máximo de conexões aguardando a expedição no serviço.
maxReceivedMessageSize Obtém e define o tamanho de mensagem máximo permitido que pode ser recebido.
portSharingEnabled Um valor booliano que especifica se o compartilhamento de porta TCP está habilitado para essa conexão. Se for false, cada associação usará sua própria porta exclusiva. O padrão é false.

Essa configuração é relevante apenas para serviços. Os clientes não são afetados.

Usar essa configuração requer habilitar o Serviço de Compartilhamento de Porta TCP do WCF (Windows Communication Foundation) alterando seu tipo de inicialização para manual ou automático
teredoEnabled Um valor booliano que especifica se o Teredo (uma tecnologia para endereçar clientes que estão atrás de firewalls) está habilitado. O padrão é false.

Essa propriedade habilita o Teredo para o soquete TCP subjacente. Para obter mais informações, consulte Visão geral do Teredo.

Essa propriedade é aplicável somente no Windows XP SP2 e no Windows Server 2003. O Windows Vista tem uma opção de configuração global do computador para o Teredo. Portanto, ao executar o Vista, essa propriedade é ignorada. O Teredo exige que os computadores cliente e de serviço tenham a pilha do Microsoft IPv6 instalada e corretamente configurada para seu uso.
transferMode Obtém ou define um valor que indica se as mensagens são armazenadas em buffer ou transmitidas com o transporte voltado para a conexão.
connectionPoolSettings Especifica configurações adicionais de pool de conexões para uma associação de Pipe Nomeado.

Elementos filho

Nenhum

Elementos pai

Elemento Descrição
<binding> Define todas as funcionalidades de associação da associação personalizada.

Comentários

Esse transporte usa URIs do formulário "net.tcp://hostname:port/path". Outros componentes de URI são opcionais.

O elemento tcpTransport é o ponto de partida para criar uma associação personalizada que implementa o protocolo de transporte TCP. Esse transporte é otimizado para comunicação de WCF para WCF.

Confira também