Recently I needed to know how long the popular browsers will keep an HTTP keep-alive connection before closing it. I was able to find documented values for IE and FireFox, but not other browsers. In fact I couldn't even find much in the way of anecdotes. So for the other browsers I decided to find out myself by testing against a Tomcat server configured to an hour-long keep-alive timeout. I then used each browser to make a single request and observed the TCP streams in Wireshark. Here are the results:
- IE: 60 seconds (documentation)
- FireFox: 300 seconds (documentation)
- Chrome: 300 seconds (observed)
- Safari: 30 seconds (observed)
- Opera: 120 seconds (observed)
Note that for IE and FireFox these values are configurable by the user, and the developers behind the other browsers may change the timeout in future releases.