- enabled
- If set to true, then the TCP keep-alive option on a TCP connection will be enabled using the specified keepAliveTime and keepAliveInterval values.
- keepAliveTime
- Specifies the timeout, in milliseconds, with no activity until the first keep-alive packet is sent.
- keepAliveInterval
- Specifies the interval, in milliseconds, between when successive keep-alive packets are sent if no acknowledgement is received.
An application can request that a TCP/IP provider enable the use of keep-alive packets on a TCP connection. The default is that the use of keep-alive packets on a TCP connection is disabled.
The default settings when a TCP socket is initialized sets the keep-alive timeout to 2 hours and the keep-alive interval to 1 second. The keepAliveTime parameter specifies the timeout, in milliseconds, with no activity until the first keep-alive packet is sent. The keepAliveInterval parameter specifies the interval, in milliseconds, between when successive keep-alive packets are sent if no acknowledgement is received. The number of keep-alive probes cannot be changed and is set to 10.
If a TCP connection is dropped as the result of keep-alives, a System.Net.Sockets.SocketError of System.Net.Sockets.SocketError.NetworkReset is returned to any calls in progress on the socket, and any subsequent calls will fail with a System.Net.Sockets.SocketError of System.Net.Sockets.SocketError.NotConnected.