<tcpTransport>

 

Defines a TCP transport that can be used by a channel to transfers messages for a custom binding.

<system.serviceModel>
<bindings>
<customBinding>
<binding>
<tcpTransport>

  
<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"  
            maxOutboundConnectionsPerEndpopint=”Integer” />  
</tcpTransport>  

The following sections describe attributes, child elements, and parent elements.

Attributes

AttributeDescription
channelInitializationTimeoutGets or sets the time limit for initializing a channel to be accepted. The maximum time a channel can be in the initialization state before being disconnected in seconds. This quota includes the time a TCP connection can take to authenticate itself using the .Net Message Framing protocol. A client needs to send some initial data before the server has enough information to perform authentication. The default is 30 seconds.
connectionBufferSizeGets or sets the size of the buffer used to transmit a chunk of the serialized message on the wire from the client or service.
hostNameComparisonModeGets or sets a value that indicates whether the hostname is used to reach the service when matching on the URI.
listenBacklogThe maximum number of queued connection requests that can be pending for a Web service. The connectionLeaseTimeout attribute limits the duration the client will wait to be connected before throwing a connection exception. This is a socket level property which controls the maximum number of queued connection requests that can be pending for a Web service. When ListenBacklog is too low, WCF will stop accepting requests and therefore drop new connections until the server acknowledges some of the existing queued connections .The default is 16 * number of processors.
manualAddressingGets or sets a value that indicates whether manual addressing of the message is required.
maxBufferPoolSizeGets or sets the maximum size of any buffer pools used by the transport.
maxBufferSizeGets or sets the maximum size of the buffer to use. For streamed messages, this value should be at least the maximum possible size of the message headers, which are read in buffered mode.
maxOutputDelayGets or sets the maximum interval of time that a chunk of a message or a full message can remain buffered in memory before being sent out.
maxPendingAcceptsGets or sets the maximum number of pending asynchronous accept operations that are available for processing incoming connections to the service.
maxPendingConnectionsGets or sets the maximum number of connections awaiting dispatch on the service.
maxReceivedMessageSizeGets and sets the maximum allowable message size that can be received.
portSharingEnabledA Boolean value that specifies if TCP port sharing is enabled for this connection. If this is false, each binding will use its own exclusive port. The default is false.

This setting is relevant only to services. Clients are not affected.

Using this setting requires enabling the Windows Communication Foundation (WCF) TCP Port Sharing Service by changing its Startup Type to Manual or Automatic
teredoEnabledA Boolean value that specifies whether Teredo (a technology for addressing clients that are behind firewalls) is enabled. The default is false.

This property enables Teredo for the underlying TCP socket. For more information, see Teredo Overview.

This property is applicable only on Windows XP SP2 and Windows Server 2003. Windows Vista has a machine-wide configuration option for Teredo, so when running Vista, this property is ignored. Teredo requires that the client and service machines both have the Microsoft IPv6 stack installed and correctly configured for Teredo usage. For more information about configuring Teredo, see Teredo Overview. For more information, see Windows Server 2003 Technology Centers.
transferModeGets or sets a value that indicates whether the messages are buffered or streamed with the connection-oriented transport.
connectionPoolSettingsSpecifies additional connection pool settings for a Named Pipe binding.

Child Elements

None

Parent Elements

ElementDescription
<binding>Defines all binding capabilities of the custom binding.

This transport uses URIs of the form "net.tcp://hostname:port/path". Other URI components are optional.

The tcpTransport element is the starting point for creating a custom binding that implements the TCP transport protocol. This transport is optimized for WCF-to-WCF communication.

TcpTransportElement
TcpTransportBindingElement
TransportBindingElement
CustomBinding
Transports
Choosing a Transport
Bindings
Extending Bindings
Custom Bindings
<customBinding>

Show: