WCF Not Timing out correctly?

I am having a timeout issue, these are the details:

My binding configuration looks like this:

<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>

I am sending a message to a server which I know is turned off so the connection should just time out after 3 seconds as stipulated in my app.config, but for some reason it is taking 20-30 seconds.

When the EndPointNotFoundException is thrown this is the info I get:

System.ServiceModel.EndPointNotFoundException: Не удалось подключиться к net.tcp: //10.0.0.82: 4466 / MegaMatcherWcf. Попытка подключения длилась промежуток времени 00:00:03. Код ошибки TCP 10060: попытка подключения не удалась. потому что подключенная сторона не правильно ответить после периода время или не удалось установить соединение потому что подключенный хост не смог ответить 10.0.0.82:4466

Если я попробую провести тот же тест с включенной машиной, но не работаю с программным обеспечением для прослушивания, я получаю ожидаемое поведение с таймаутом подключения через 3 секунды. Почему, если компьютер выключен, это занимает 30 секунд, а затем говорят мне, что это заняло 3 секунды?

11
задан Nate 11 May 2011 в 15:06
поделиться