WCF Reliable session without transport security will not faulted event on time

1.5k views Asked by At

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.

1

There are 1 answers

1
Ladislav Mrnka On

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