<tcpTransport>

Define um transporte TCP que pode ser utilizado por um canal para transferir mensagens para um enlace personalizado.

<configuração>
  <system.serviceModel>
    <enlaces>
      <customBinding>
        <enlace>
          <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 secções seguintes descrevem atributos, elementos subordinados e elementos principais.

Atributos

Atributo Descrição
channelInitializationTimeout Obtém ou define o limite de tempo para inicializar um canal a aceitar. O tempo máximo que um canal pode estar no estado de inicialização antes de ser desligado em segundos. Esta quota inclui o tempo que uma ligação TCP pode demorar a autenticar-se através do protocolo .NET Message Framing. Um cliente tem de enviar alguns dados iniciais antes de o servidor ter informações suficientes para efetuar a autenticação. A predefinição é 30 segundos.
connectionBufferSize Obtém ou define o tamanho da memória intermédia utilizada para transmitir um segmento da mensagem serializada no fio a partir do cliente ou serviço.
hostNameComparisonMode Obtém ou define um valor que indica se o nome do anfitrião é utilizado para aceder ao serviço quando corresponde ao URI.
listenBacklog O número máximo de pedidos de ligação em fila que podem estar pendentes para um serviço Web. O connectionLeaseTimeout atributo limita a duração que o cliente aguardará para ser ligado antes de lançar uma exceção de ligação. Esta é uma propriedade ao nível do socket que controla o número máximo de pedidos de ligação em fila que podem estar pendentes para um serviço Web. Quando o ListenBacklog estiver demasiado baixo, o WCF deixará de aceitar pedidos e, por conseguinte, deixará de receber novas ligações até que o servidor reconheça algumas das ligações em fila existentes. A predefinição é 16 * número de processadores.
manualAddressing Obtém ou define um valor que indica se é necessário endereçamento manual da mensagem.
maxBufferPoolSize Obtém ou define o tamanho máximo de quaisquer conjuntos de memória intermédia utilizados pelo transporte.
maxBufferSize Obtém ou define o tamanho máximo da memória intermédia a utilizar. Para mensagens transmitidas em fluxo, este valor deve ter, pelo menos, o tamanho máximo possível dos cabeçalhos de mensagens, que são lidos no modo de memória intermédia.
maxOutputDelay Obtém ou define o intervalo máximo de tempo durante o qual um segmento de uma mensagem ou uma mensagem completa pode permanecer na memória intermédia antes de ser enviado.
maxPendingAccepts Obtém ou define o número máximo de operações de aceitação assíncronas pendentes que estão disponíveis para o processamento de ligações de entrada para o serviço.
maxPendingConnections Obtém ou define o número máximo de ligações à espera de envio no serviço.
maxReceivedMessageSize Obtém e define o tamanho máximo de mensagem permitido que pode ser recebido.
portSharingEnabled Um valor booleano que especifica se a partilha de portas TCP está ativada para esta ligação. Se for false, cada enlace utilizará a sua própria porta exclusiva. A predefinição é false.

Esta definição é relevante apenas para os serviços. Os clientes não são afetados.

A utilização desta definição requer a ativação do Serviço de Partilha de Portas TCP do Windows Communication Foundation (WCF) ao alterar o Respetivo Tipo de Arranque para Manual ou Automático
teredoEnabled Um valor booleano que especifica se o Teredo (uma tecnologia para endereçar clientes protegidos por firewalls) está ativado. A predefinição é false.

Esta propriedade ativa o Teredo para o socket TCP subjacente. Para obter mais informações, veja Teredo Overview (Descrição Geral do Teredo).

Esta propriedade é aplicável apenas no Windows XP SP2 e Windows Server 2003. O Windows Vista tem uma opção de configuração ao nível do computador para o Teredo, pelo que, ao executar o Vista, esta propriedade é ignorada. O Teredo requer que os computadores cliente e de serviço tenham a pilha microsoft IPv6 instalada e configurada corretamente para utilização do Teredo.
transferMode Obtém ou define um valor que indica se as mensagens são colocadas em memória intermédia ou transmitidas em fluxo com o transporte orientado para a ligação.
connectionPoolSettings Especifica definições adicionais do conjunto de ligações para um enlace de Pipe Nomeado.

Elementos Subordinados

Nenhuma

Elementos Principais

Elemento Descrição
<enlace> Define todas as capacidades de enlace do enlace personalizado.

Observações

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

O tcpTransport elemento é o ponto de partida para criar um enlace personalizado que implementa o protocolo de transporte TCP. Este transporte está otimizado para comunicação WCF a WCF.

Ver também