WCF Não excedeu o tempo limite corretamente?

Estou com um problema de tempo limite, estes são os detalhes:

inha configuração de ligação é assim:

<netTcpBinding>
 <binding name="WindowsServerOverTcp"
   maxReceivedMessageSize="10000000"
   maxBufferSize="10000000"
   maxBufferPoolSize="10000000"
   closeTimeout="00:00:03"
  openTimeout="00:00:03"
  sendTimeout="00:00:03"
  receiveTimeout="00:00:03">
  <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647"
  maxArrayLength="2147483647" maxBytesPerRead="2147483647"
  maxNameTableCharCount="2147483647" />
  <security mode="None">
  </security>
 </binding>
 </netTcpBinding>

Eu estou enviando uma mensagem para um servidor que eu sei que está desligado, então a conexão deve expirar após 3 segundos, conforme estipulado no meu app.config, mas, por algum motivo, está levando de 20 a 30 segundo

Quando o EndPointNotFoundException é lançado, esta é a informação que recebo:

System.ServiceModel.EndPointNotFoundException: Não foi possível conectar-se ao net.tcp: //10.0.0.82: 4466 / MegaMatcherWcf. A tentativa de conexão durou um período de 00:00:03. Código de erro TCP 10060: uma tentativa de conexão falhou porque a parte conectada não respondeu adequadamente após um período de tempo ou a conexão estabelecida falhou porque o host conectado não respondeu 10.0.0.82:446

Se eu tentar o mesmo teste com a máquina ligada, mas nenhum software de escuta em execução, obtenho o comportamento esperado, com o tempo limite da conexão expirando após 3 segundos. Por que, se a máquina está desligada, leva 30 segundos e depois me diz que levou 3 segundos?

questionAnswers(3)

yourAnswerToTheQuestion