Hi All, 1. How to set max connections and keepalive timeout in http2 ? The remaining properties are being set through IntrospectionUtils .
Embedded Tomcat : 9.0.22 Thanks and Regards Arshiya Shariff -----Original Message----- From: Mark Thomas <ma...@apache.org> Sent: Wednesday, May 20, 2020 3:42 PM To: users@tomcat.apache.org Subject: Re: RST on TCP level sent by Tomcat On 20/05/2020 10:07, Arshiya Shariff wrote: > Hi Mark, > Thank you for the response. > > Getting back on Query 3 and 4. > >>>> There are no active streams and still connection is not being closed by >>>> tomcat , and after sometime for new requests tomcat is sending RST. >>>> As it is a production issue, it's hard for us to reproduce this at our end >>>> and retest. > > 1.How long does new connection have to wait when connection limit reached , > when TCP closed it with RST for such waiting connections ? That will depend on the client's connection timeout. Tomcat has no control over that. > 2.What is the idle timeout in 9.0.22 for http2 if not provided , will there > be issues if it is infinite also ? Again. You need to upgrade. There issues with HTTP/2 timeouts in that version. Mark > > > Thanks and Regards > Arshiya Shariff > > > -----Original Message----- > From: Mark Thomas <ma...@apache.org> > Sent: Wednesday, May 20, 2020 1:00 PM > To: users@tomcat.apache.org > Subject: Re: RST on TCP level sent by Tomcat > > On 20/05/2020 07:02, Arshiya Shariff wrote: >> Hi Team , >> >> 1.We are facing a problem where tomcat is closing the http2 connections >> silently without sending GOAWAY and FIN. Under what cases does this happen ? > > Tomcat always tries to write the GOAWAY frame. Network issues may prevent the > client receiving it. > >> 2. What happens when maxkeepaliverequests reaches the configured limit, will >> it close connections silently? > > Nothing. The limit does not exist in HTTP/2. > >> 3. What happens when max Connections is reached, will it close older >> connections? > > No. New connections will have to wait until a connection is available. > >> 4. Currently we see keepalive timeout is default 20 seconds, but the >> connection is not closed after that. For requests received after 3 hours >> also we are sending response .Is there any way to close idle-connections ? > > Again, please upgrade and re-test. > > The keep-alive timeout only applies once the entire connection is idle - i.e. > there are no currently processing streams. > > Mark > > >> >> Embedded Tomcat : 9.0.22 >> >> Thanks and Regards >> Arshiya Shariff >> >> >> -----Original Message----- >> From: Arshiya Shariff >> Sent: Monday, May 18, 2020 4:45 PM >> To: Mark Thomas <ma...@apache.org>; users@tomcat.apache.org >> Cc: M Venkata Pratap M <m.m.venkata.pra...@ericsson.com> >> Subject: RE: RST on TCP level sent by Tomcat >> >> Hi Mark, >> Thank you for the quick response. >> >> Please provide us a little more clarity on the 3rd query : >> >> 3. We see that RST is sent by tomcat on receiving http2 request, when does >> this happen ? >>>>> When things go wrong. E.g. when the client sends a request to a >>>>> connection that has been closed. >> >> Why does tomcat not send GOAWAY on connection close, upon next request from >> client it sends RST ? >> >> Also, Can you please send us the references to the timeout related fixes in >> 9.0.35 (since 9.0.22). >> >> Thanks and Regards >> Arshiya Shariff >> >> >> >> -----Original Message----- >> From: Mark Thomas <ma...@apache.org> >> Sent: Monday, May 18, 2020 4:17 PM >> To: users@tomcat.apache.org >> Subject: Re: RST on TCP level sent by Tomcat >> >> On 18/05/2020 11:01, Arshiya Shariff wrote: >>> Hi Team, >>> >>> Can you please help us with the below queries : >> >> There have been various timeout related fixes since 9.0.22. Please upgrade >> to 9.0.35 and re-test. >> >>> 1. When does a http2 connection close ? We see that the >>> keepAliveTimeout is >>> 20 seconds by default, but it is not closing the connection on >>> keepAliveTimeout. >> >> Please re-test with 9.0.35. >> >>> 2. How to keep the connections alive / How to enable ping frames to >>> be sent to the other end to keep the connection alive ? >> >> There is no standard API to send an HTTP/2 ping. If you want to keep the >> connections alive for longer, use a longer keep-alive setting. >> >>> 3. We see that RST is sent by tomcat on receiving http2 request, >>> when does this happen ? >> >> When things go wrong. E.g. when the client sends a request to a connection >> that has been closed. >> >>> 4. What are the recommended ipv4.tcp settings for these kind of scenarios ? >> >> There are no recommended settings. >> >> Mark >> >> >>> >>> >>> >>> Embedded Tomcat : 9.0.22 >>> >>> Java Version : 1.8.0.201 >>> >>> Hardware : Red Hat Enterprise Linux Server release >>> 7.4 >>> >>> >>> >>> Thanks and Regards >>> >>> Arshiya Shariff >>> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org >> For additional commands, e-mail: users-h...@tomcat.apache.org >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org >> For additional commands, e-mail: users-h...@tomcat.apache.org >> > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org > For additional commands, e-mail: users-h...@tomcat.apache.org > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org > For additional commands, e-mail: users-h...@tomcat.apache.org > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org