Typical network socket timeout
There is no such thing as a "typical" socket timeout. Rather you should chose the timeout(s) according to the application requirements. Issues such as:
- Is there a user waiting for the response?
- Is a timeout a likely event?
- Does setting a "too long" timeout tie down lots of resources, or delay processing?
- Does setting a "too short" timeout result in wasted processing when waiting a bit longer would have given results?
- Is there a keep-alive mechanism ... so that you can distinguish between (say) network failure and the remote server taking a long time?
The best strategy is probably to pick some intuitively sensible values, and then tune them.