Does ZServer support persistant TCP connections? Does it close them?
I just filed a collector bug on IE5 hanging with Zope 2.0b1. Based on how it hangs, I'm beginning to think that IE5 might be expecting Zserver to support persistant connections, and either Zserver doesn't, or it closes it's end after some idle time limit that is much lower than IE5 expects... Or it loses track of an idle tcp connection until kicked in the butt by a new request. Can anyone say right away if ZServer supports persistant connections, and if yes, what's the timeout. Brad Clements, bkc@murkworks.com (315)268-1000 http://www.murkworks.com (315)268-9812 Fax netmeeting: ils://ils.murkworks.com ICQ: 14856937
On 2 Aug 99, at 15:55, Brad Clements wrote:
Based on how it hangs, I'm beginning to think that IE5 might be expecting Zserver to support persistant connections, and either Zserver doesn't, or it closes it's end after some idle time limit that is much lower than IE5 expects... Or it loses track of an idle tcp connection until kicked in the butt by a new request.
Can anyone say right away if ZServer supports persistant connections, and if yes, what's the timeout.
More info on this: 1. I changed http_server.py done() to have close_it = 1, assuming that all tcp connections will be closed after each request. that has no effect on the problem 2. using netstat -an, I can see that even with close_it = 1, ie5 keeps 2 connections open to the server and they're ESTABLISHED. As soon as the connections go to TIME_WAIT, IE5 will hang. I'm not sure which end is closing the connection. 3. After the original connection goes to TIME_WAIT, I make a request from IE5 and see the long delay, netstat shows that a new connection has been opened, but there is still a long delay getting a reply from the server. 4. If I open another connection from another browser, the "hanging" connection "wakes up" and services the request. Brad Clements, bkc@murkworks.com (315)268-1000 http://www.murkworks.com (315)268-9812 Fax netmeeting: ils://ils.murkworks.com ICQ: 14856937
Hi Brad, I am so far unable to reproduce your problem... On 2 Aug 99, at 15:55, Brad Clements wrote:
Can anyone say right away if ZServer supports persistant connections, and if yes, what's the timeout.
Yes. There is no timeout that I am aware of, except the normal http_server zombie timeout of 30 minutes.
More info on this:
1. I changed http_server.py done() to have close_it = 1, assuming that all tcp connections will be closed after each request.
that has no effect on the problem
This maybe because ZServer largely overrides medusa's http server settings. You may have more luck hacking ZServer/HTTPResponse.py
2. using netstat -an, I can see that even with close_it = 1, ie5 keeps 2 connections open to the server and they're ESTABLISHED.
As soon as the connections go to TIME_WAIT, IE5 will hang. I'm not sure which end is closing the connection.
3. After the original connection goes to TIME_WAIT, I make a request from IE5 and see the long delay, netstat shows that a new connection has been opened, but there is still a long delay getting a reply from the server.
4. If I open another connection from another browser, the "hanging" connection "wakes up" and services the request.
Hmm. This info is a bit over my head, I'll ask Sam if he has any ideas about what this means. Thanks for the detailed information, hopefully it will allow us to find a solution to this problem. -Amos
Hi, This is not much help, but I've been developing on a stock IE 5.0 with Zserver 2.0b1+ and haven't had any problems with IE 5.0 hanging. Maybe there is different versions of IE 5.0 (is there a build number somewhere - its probably the really big one ;) Note, I've only used IE 5.0 on the same machine that the server is running - not across the network. The other thing I've noticed (and not fixed yet) is that after I installed it TCP/IP SAMBA will not work when talking to a win95a machine. HOWEVER, a Linux SAMBA server on the same duel-boot machine will talk to the win95a machine without problems. Perhapes IE 5.0 has "upgraded" networking components? Cheers, Anthony Pfrunder
participants (3)
-
Amos Latteier -
Anthony Pfrunder -
Brad Clements