6

I have encountered a very interesting behavior of reliable session. I am using netTcp binding + duplex channel + reliable session.

When I am trying to listen on channel.faulted , if there is security mode is set to transport , faulted event would fire immediately when client disconnects.

However when I set binding's security mode to None or Message, faulted event no longer fires in the same situation. They will eventually get faulted half of ReciveTimeout on server side which I understands as reliable session would send a heart beat message at that time.

The question is: Why the wcf binding does not get faulted on time?

The workaround for this case is I can manually "ping" connections.

bjb568
  • 11,089
  • 11
  • 50
  • 71
Yuan
  • 2,690
  • 4
  • 26
  • 38

1 Answers1

0

NetTcp binding by default uses Transport security with Windows credentials. All bindings except BasicHttp and WebHttp are secured by default.

Ladislav Mrnka
  • 360,892
  • 59
  • 660
  • 670
  • Yes that's correct. That is why I had to explicitly set securitymode to None and reliable session no longer raise faulted on time. – Yuan Jan 18 '11 at 07:15