﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
<link rel="canonical" href="https://ignite.apache.org/releases/2.7.5/dotnetdoc/api/Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.html" />

<META NAME="ROBOTS" CONTENT="NOINDEX">

    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Class TcpCommunicationSpi
   | Apache Ignite.NET </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Class TcpCommunicationSpi
   | Apache Ignite.NET ">
    <meta name="generator" content="docfx 2.24.0.0">
    
    <link rel="shortcut icon" href="../images/favicon.ico">
    <link rel="stylesheet" href="../styles/docfx.vendor.css">
    <link rel="stylesheet" href="../styles/docfx.css">
    <link rel="stylesheet" href="../styles/main.css">
    <meta property="docfx:navrel" content="../toc.html">
    <meta property="docfx:tocrel" content="toc.html">
    
    <meta property="docfx:rel" content="../">
    
  
<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-61232409-1', 'auto');
  ga('send', 'pageview');

</script></head>
  <body data-spy="scroll" data-target="#affix">
    <div id="wrapper">
      <header>
        
        <nav id="autocollapse" class="navbar navbar-inverse ng-scope" role="navigation">
          <div class="container">
            <div class="navbar-header">
              <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
              </button>
              
              <a class="navbar-brand" href="../index.html">
                <img id="logo" class="svg" src="../images/logo_ignite_32_32.png" alt="">
              </a>
            </div>
            <div class="collapse navbar-collapse" id="navbar">
              <form class="navbar-form navbar-right" role="search" id="search">
                <div class="form-group">
                  <input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
                </div>
              </form>
            </div>
          </div>
        </nav>
        
        <div class="subnav navbar navbar-default">
          <div class="container hide-when-search" id="breadcrumb">
            <ul class="breadcrumb">
              <li></li>
            </ul>
          </div>
        </div>
      </header>
      <div class="container body-content">
        
        <div id="search-results">
          <div class="search-list"></div>
          <div class="sr-items"></div>
          <ul id="pagination"></ul>
        </div>
      </div>
      <div role="main" class="container body-content hide-when-search">
        
        <div class="sidenav hide-when-search">
          <a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
          <div class="sidetoggle collapse" id="sidetoggle">
            <div id="sidetoc"></div>
          </div>
        </div>
        <div class="article row grid-right">
          <div class="col-md-10">
            <article class="content wrap" id="_content" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi">
  
  
  <h1 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi" class="text-break">Class TcpCommunicationSpi
  </h1>
  <div class="markdown level0 summary"><p><a class="xref" href="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.html">TcpCommunicationSpi</a> is default communication SPI which uses
TCP/IP protocol and Java NIO to communicate with other nodes.
<p>
At startup, this SPI tries to start listening to local port specified by
<a class="xref" href="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.html#Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_LocalPort">LocalPort</a> property. If local port is occupied, then SPI will
automatically increment the port number until it can successfully bind for
listening. <a class="xref" href="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.html#Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_LocalPortRange">LocalPortRange</a> configuration parameter controls
maximum number of ports that SPI will try before it fails. Port range comes
very handy when starting multiple grid nodes on the same machine or even
in the same VM. In this case all nodes can be brought up without a single
change in configuration.</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritance">
    <h5>Inheritance</h5>
    <div class="level0"><span class="xref">System.Object</span></div>
    <div class="level1"><span class="xref">TcpCommunicationSpi</span></div>
  </div>
  <div classs="implements">
    <h5>Implements</h5>
    <div><a class="xref" href="Apache.Ignite.Core.Communication.ICommunicationSpi.html">ICommunicationSpi</a></div>
  </div>
  <div class="inheritedMembers">
    <h5>Inherited Members</h5>
    <div>
      <span class="xref">System.Object.ToString()</span>
    </div>
    <div>
      <span class="xref">System.Object.Equals(System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.Equals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.ReferenceEquals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.GetHashCode()</span>
    </div>
    <div>
      <span class="xref">System.Object.GetType()</span>
    </div>
    <div>
      <span class="xref">System.Object.MemberwiseClone()</span>
    </div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="Apache.Ignite.Core.Communication.Tcp.html">Apache.Ignite.Core.Communication.Tcp</a></h6>
  <h6><strong>Assembly</strong>: Apache.Ignite.Core.dll</h6>
  <h5 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public class TcpCommunicationSpi : ICommunicationSpi</code></pre>
  </div>
  <h3 id="constructors">Constructors
  </h3>
  <a id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi__ctor_" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.#ctor*"></a>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi__ctor" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.#ctor">TcpCommunicationSpi()</h4>
  <div class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.html">TcpCommunicationSpi</a> class.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public TcpCommunicationSpi()</code></pre>
  </div>
  <h3 id="fields">Fields
  </h3>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_DefaultAckSendThreshold" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.DefaultAckSendThreshold">DefaultAckSendThreshold</h4>
  <div class="markdown level1 summary"><p>Default value of <a class="xref" href="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.html#Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_AckSendThreshold">AckSendThreshold</a> property. </p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public const int DefaultAckSendThreshold = 16</code></pre>
  </div>
  <h5 class="fieldValue">Field Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_DefaultConnectTimeout" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.DefaultConnectTimeout">DefaultConnectTimeout</h4>
  <div class="markdown level1 summary"><p>Default value of <a class="xref" href="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.html#Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_ConnectTimeout">ConnectTimeout</a> property. </p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static readonly TimeSpan DefaultConnectTimeout</code></pre>
  </div>
  <h5 class="fieldValue">Field Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.TimeSpan</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_DefaultDirectBuffer" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.DefaultDirectBuffer">DefaultDirectBuffer</h4>
  <div class="markdown level1 summary"><p>Default value of <a class="xref" href="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.html#Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_DirectBuffer">DirectBuffer</a> property. </p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public const bool DefaultDirectBuffer = true</code></pre>
  </div>
  <h5 class="fieldValue">Field Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_DefaultDirectSendBuffer" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.DefaultDirectSendBuffer">DefaultDirectSendBuffer</h4>
  <div class="markdown level1 summary"><p>Default value of <a class="xref" href="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.html#Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_DirectSendBuffer">DirectSendBuffer</a> property. </p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public const bool DefaultDirectSendBuffer = false</code></pre>
  </div>
  <h5 class="fieldValue">Field Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_DefaultIdleConnectionTimeout" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.DefaultIdleConnectionTimeout">DefaultIdleConnectionTimeout</h4>
  <div class="markdown level1 summary"><p>Default value of <a class="xref" href="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.html#Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_IdleConnectionTimeout">IdleConnectionTimeout</a> property. </p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static readonly TimeSpan DefaultIdleConnectionTimeout</code></pre>
  </div>
  <h5 class="fieldValue">Field Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.TimeSpan</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_DefaultLocalPort" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.DefaultLocalPort">DefaultLocalPort</h4>
  <div class="markdown level1 summary"><p>Default value of <a class="xref" href="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.html#Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_LocalPort">LocalPort</a> property. </p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public const int DefaultLocalPort = 47100</code></pre>
  </div>
  <h5 class="fieldValue">Field Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_DefaultLocalPortRange" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.DefaultLocalPortRange">DefaultLocalPortRange</h4>
  <div class="markdown level1 summary"><p>Default value of <a class="xref" href="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.html#Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_LocalPortRange">LocalPortRange</a> property. </p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public const int DefaultLocalPortRange = 100</code></pre>
  </div>
  <h5 class="fieldValue">Field Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_DefaultMaxConnectTimeout" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.DefaultMaxConnectTimeout">DefaultMaxConnectTimeout</h4>
  <div class="markdown level1 summary"><p>Default value of <a class="xref" href="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.html#Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_MaxConnectTimeout">MaxConnectTimeout</a> property. </p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static readonly TimeSpan DefaultMaxConnectTimeout</code></pre>
  </div>
  <h5 class="fieldValue">Field Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.TimeSpan</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_DefaultMessageQueueLimit" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.DefaultMessageQueueLimit">DefaultMessageQueueLimit</h4>
  <div class="markdown level1 summary"><p>Default value of <a class="xref" href="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.html#Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_MessageQueueLimit">MessageQueueLimit</a> property. </p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public const int DefaultMessageQueueLimit = 1024</code></pre>
  </div>
  <h5 class="fieldValue">Field Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_DefaultReconnectCount" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.DefaultReconnectCount">DefaultReconnectCount</h4>
  <div class="markdown level1 summary"><p>Default value of <a class="xref" href="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.html#Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_ReconnectCount">ReconnectCount</a> property. </p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public const int DefaultReconnectCount = 10</code></pre>
  </div>
  <h5 class="fieldValue">Field Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_DefaultSelectorsCount" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.DefaultSelectorsCount">DefaultSelectorsCount</h4>
  <div class="markdown level1 summary"><p>Default value of <a class="xref" href="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.html#Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_SelectorsCount">SelectorsCount</a> property. </p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static readonly int DefaultSelectorsCount</code></pre>
  </div>
  <h5 class="fieldValue">Field Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_DefaultSocketBufferSize" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.DefaultSocketBufferSize">DefaultSocketBufferSize</h4>
  <div class="markdown level1 summary"><p>Default socket buffer size. </p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public const int DefaultSocketBufferSize = 32768</code></pre>
  </div>
  <h5 class="fieldValue">Field Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_DefaultTcpNoDelay" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.DefaultTcpNoDelay">DefaultTcpNoDelay</h4>
  <div class="markdown level1 summary"><p>Default value of <a class="xref" href="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.html#Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_TcpNoDelay">TcpNoDelay</a> property. </p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public const bool DefaultTcpNoDelay = true</code></pre>
  </div>
  <h5 class="fieldValue">Field Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h3 id="properties">Properties
  </h3>
  <a id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_AckSendThreshold_" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.AckSendThreshold*"></a>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_AckSendThreshold" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.AckSendThreshold">AckSendThreshold</h4>
  <div class="markdown level1 summary"><p>Gets or sets the number of received messages per connection to node 
after which acknowledgment message is sent.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public int AckSendThreshold { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_ConnectTimeout_" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.ConnectTimeout*"></a>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_ConnectTimeout" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.ConnectTimeout">ConnectTimeout</h4>
  <div class="markdown level1 summary"><p>Gets or sets the connect timeout used when establishing connection with remote nodes.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public TimeSpan ConnectTimeout { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.TimeSpan</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_DirectBuffer_" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.DirectBuffer*"></a>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_DirectBuffer" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.DirectBuffer">DirectBuffer</h4>
  <div class="markdown level1 summary"><p>Gets or sets a value indicating whether to allocate direct (ByteBuffer.allocateDirect) 
or heap (ByteBuffer.allocate) buffer.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public bool DirectBuffer { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_DirectSendBuffer_" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.DirectSendBuffer*"></a>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_DirectSendBuffer" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.DirectSendBuffer">DirectSendBuffer</h4>
  <div class="markdown level1 summary"><p>Gets or sets a value indicating whether to allocate direct (ByteBuffer.allocateDirect) 
or heap (ByteBuffer.allocate) send buffer.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public bool DirectSendBuffer { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_IdleConnectionTimeout_" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.IdleConnectionTimeout*"></a>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_IdleConnectionTimeout" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.IdleConnectionTimeout">IdleConnectionTimeout</h4>
  <div class="markdown level1 summary"><p>Sets maximum idle connection timeout upon which a connection to client will be closed.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public TimeSpan IdleConnectionTimeout { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.TimeSpan</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_LocalAddress_" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.LocalAddress*"></a>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_LocalAddress" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.LocalAddress">LocalAddress</h4>
  <div class="markdown level1 summary"><p>Gets or sets the local host address for socket binding. Note that one node could have 
additional addresses beside the loopback one. This configuration parameter is optional.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public string LocalAddress { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_LocalPort_" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.LocalPort*"></a>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_LocalPort" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.LocalPort">LocalPort</h4>
  <div class="markdown level1 summary"><p>Gets or sets the local port for socket binding.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public int LocalPort { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_LocalPortRange_" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.LocalPortRange*"></a>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_LocalPortRange" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.LocalPortRange">LocalPortRange</h4>
  <div class="markdown level1 summary"><p>Gets or sets local port range for local host ports (value must greater than or equal to <tt>0</tt>).
If provided local port <a class="xref" href="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.html#Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_LocalPort">LocalPort</a> is occupied,
implementation will try to increment the port number for as long as it is less than
initial value plus this range.
<p>
If port range value is <code>0</code>, then implementation will try bind only to the port provided by
<a class="xref" href="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.html#Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_LocalPort">LocalPort</a> method and fail if binding to this port did not succeed.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public int LocalPortRange { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_MaxConnectTimeout_" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.MaxConnectTimeout*"></a>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_MaxConnectTimeout" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.MaxConnectTimeout">MaxConnectTimeout</h4>
  <div class="markdown level1 summary"><p>Gets or sets maximum connect timeout. If handshake is not established within connect timeout,
then SPI tries to repeat handshake procedure with increased connect timeout.
Connect timeout can grow till maximum timeout value,
if maximum timeout value is reached then the handshake is considered as failed.
<p>
<code>0</code> is interpreted as infinite timeout.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public TimeSpan MaxConnectTimeout { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.TimeSpan</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_MessageQueueLimit_" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.MessageQueueLimit*"></a>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_MessageQueueLimit" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.MessageQueueLimit">MessageQueueLimit</h4>
  <div class="markdown level1 summary"><p>Gets or sets the message queue limit for incoming and outgoing messages.
<p>
When set to positive number send queue is limited to the configured value. 
<code>0</code> disables the limitation.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public int MessageQueueLimit { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_ReconnectCount_" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.ReconnectCount*"></a>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_ReconnectCount" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.ReconnectCount">ReconnectCount</h4>
  <div class="markdown level1 summary"><p>Gets or sets the maximum number of reconnect attempts used when establishing connection with remote nodes.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public int ReconnectCount { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_SelectorsCount_" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.SelectorsCount*"></a>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_SelectorsCount" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.SelectorsCount">SelectorsCount</h4>
  <div class="markdown level1 summary"><p>Gets or sets the count of selectors te be used in TCP server.
<p>
Default value is <a class="xref" href="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.html#Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_DefaultSelectorsCount">DefaultSelectorsCount</a>, which is calculated as
<code>Math.Min(4, Environment.ProcessorCount)</code></p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public int SelectorsCount { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_SlowClientQueueLimit_" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.SlowClientQueueLimit*"></a>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_SlowClientQueueLimit" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.SlowClientQueueLimit">SlowClientQueueLimit</h4>
  <div class="markdown level1 summary"><p>Gets or sets slow client queue limit.
<p>
When set to a positive number, communication SPI will monitor clients outbound message queue sizes 
and will drop those clients whose queue exceeded this limit.
<p>
Usually this value should be set to the same value as <a class="xref" href="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.html#Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_MessageQueueLimit">MessageQueueLimit</a> which controls
message back-pressure for server nodes. The default value for this parameter is <code>0</code> 
which means unlimited.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public int SlowClientQueueLimit { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_SocketReceiveBufferSize_" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.SocketReceiveBufferSize*"></a>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_SocketReceiveBufferSize" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.SocketReceiveBufferSize">SocketReceiveBufferSize</h4>
  <div class="markdown level1 summary"><p>Gets or sets the size of the socket receive buffer.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public int SocketReceiveBufferSize { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_SocketSendBufferSize_" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.SocketSendBufferSize*"></a>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_SocketSendBufferSize" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.SocketSendBufferSize">SocketSendBufferSize</h4>
  <div class="markdown level1 summary"><p>Gets or sets the size of the socket send buffer.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public int SocketSendBufferSize { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_TcpNoDelay_" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.TcpNoDelay*"></a>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_TcpNoDelay" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.TcpNoDelay">TcpNoDelay</h4>
  <div class="markdown level1 summary"><p>Gets or sets the value for <code>TCP_NODELAY</code> socket option. Each
socket will be opened using provided value.
<p>
Setting this option to <code>true</code> disables Nagle&apos;s algorithm
for socket decreasing latency and delivery time for small messages.
<p>
For systems that work under heavy network load it is advisable to set this value to <code>false</code>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public bool TcpNoDelay { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_UnacknowledgedMessagesBufferSize_" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.UnacknowledgedMessagesBufferSize*"></a>
  <h4 id="Apache_Ignite_Core_Communication_Tcp_TcpCommunicationSpi_UnacknowledgedMessagesBufferSize" data-uid="Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi.UnacknowledgedMessagesBufferSize">UnacknowledgedMessagesBufferSize</h4>
  <div class="markdown level1 summary"><p>Gets or sets the maximum number of stored unacknowledged messages per connection to node. 
If number of unacknowledged messages exceeds this number 
then connection to node is closed and reconnect is attempted.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public int UnacknowledgedMessagesBufferSize { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h3 id="implements">Implements</h3>
  <div>
      <a class="xref" href="Apache.Ignite.Core.Communication.ICommunicationSpi.html">ICommunicationSpi</a>
  </div>
</article>
          </div>
          
          <div class="hidden-sm col-md-2" role="complementary">
            <div class="sideaffix">
              <nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
              <!-- <p><a class="back-to-top" href="#top">Back to top</a><p> -->
              </nav>
            </div>
          </div>
        </div>
      </div>
      
      <footer>
        <div class="grad-bottom"></div>
        <div class="footer">
          <div class="container">
            <span class="pull-right">
              <a href="#top">Back to top</a>
            </span>
            © 2015 - 2018 The Apache Software Foundation
            
          </div>
        </div>
      </footer>
    </div>
    
    <script type="text/javascript" src="../styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="../styles/docfx.js"></script>
    <script type="text/javascript" src="../styles/main.js"></script>
  </body>
</html>
