Rainer -- I am using out of the box JBOSS 4.21 -- no special connector, and no firewall between the httpd tier and the other tier.
Indeed, I agree that the FIN packet from the back end is missing. It seems to come much later in the dump (exactly 4 minutes later). I can't help but think this is an issue on the JBOSS side, but I'm not sure where to go to try to debug that. I will send you the full capture file separately by private Mail. Larry -----Original Message----- From: Rainer Jung [mailto:[EMAIL PROTECTED] Sent: Sunday, November 25, 2007 4:35 PM To: Tomcat Developers List Subject: Re: Delays in mod_jk Hi Larry, I'm again investigating your problem report concerning 2 second pauses during socket shutdown in JK maintenance. Sorry for the long pause, but I want to see, if there is something we need to fix before 1.2.26 related to this case. I couldn't reproduce the behaviour on Linux. Do you use a special connector for AJP in JBoss, like Tomcats APR connector, or is it just the plain Coyote connector? Is there a firewall in between httpd and JBoss? If so, would it be possible to sniff again on both sides? Larry Reisler wrote: > I got a trace using some of the settings you have below. I'm not > quite sure how to get the whole thing to you, as it is fairly large, > and I don't wish to post it to the mailing list. If you like, you can send it by private Mail. > In any event the relevant lines from one example of an interaction I > am attaching below. 10.45.3.22 is the apache 2.2 server and > 10.45.3.21 and 10.45.3.24 are the tomcat servers. The trace was > taken from the apache server. There are numerous other examples of > this type of interaction. > > 02:49:04.329952 IP 10.45.3.22.34977 > 10.45.3.21.8009: F > 2991069804:2991069804(0) ack 1909717451 win 8244 <nop,nop,timestamp > 865633671 2700468480> 02:49:04.370343 IP 10.45.3.21.8009 > > 10.45.3.22.34977: . ack 1 win 1448 <nop,nop,timestamp 2700815038 > 865633671> 02:49:06.329558 IP 10.45.3.22.34972 > 10.45.3.24.8009: F > 2991428814:2991428814(0) ack 330342931 win 4624 <nop,nop,timestamp > 865635671 4202573488> 02:49:06.369533 IP 10.45.3.24.8009 > > 10.45.3.22.34972: . ack 1 win 2269 <nop,nop,timestamp 4202873970 > 865635671> 02:49:08.329843 IP 10.45.3.22.35008 > 10.45.3.24.8009: S > 3372523679:3372523679(0) win 5840 <mss 1460,sackOK,timestamp > 865637671 0,nop,wscale 2> 02:49:08.329961 IP 10.45.3.24.8009 > > 10.45.3.22.35008: S 707449532:707449532(0) ack 3372523680 win 5792 > <mss 1460,sackOK,timestamp 4202875930 865637671,nop,wscale 2> > 02:49:08.329972 IP 10.45.3.22.35008 > 10.45.3.24.8009: . ack 1 win > 1460 <nop,nop,timestamp 865637671 4202875930> 02:49:08.330001 IP > 10.45.3.22.35008 > 10.45.3.24.8009: P 1:821(820) ack 1 win 1460 > <nop,nop,timestamp 865637671 4202875930> 02:49:08.330023 IP > 10.45.3.22.35008 > 10.45.3.24.8009: P 821:921(100) ack 1 win 1460 > <nop,nop,timestamp 865637671 4202875930> > > My analysis of this is as follows: 1) A request comes in to the > apache server, which has two timed out socket connections to the > tomcat servers on ports 34977 and 34972. At 02:49:04.329952 it sends > a FIN packet to the tomcat server and receives a response at > 02:49:04.370343. It then waits two seconds from the time it sent the > FIN packet. 2) At 02:49:06.329558 it sends a FIN packet to the other > tomcat server and receives a response at 02:49:06.369533. It then > waits two seconds from the time it sent the FIN packet, and then > creates a new socket (35008) on which it successfully sends the > transaction. The tcpdump excerpt seems to be incomplete. After the FIN and the accompanying ACK, the final FIN/ACK from the backend is missing. Does it occur later in the dump? If not, there should be a RST or the connection should still be in CLOSE_WAIT on the JBoss machine. Regards, Rainer