Susan Hinrichs created TS-5092:
----------------------------------
Summary: ATS handling of too many concurrent streams too agressive
and maybe out of spec
Key: TS-5092
URL: https://issues.apache.org/jira/browse/TS-5092
Project: Traffic Server
Issue Type: Bug
Components: HTTP/2
Reporter: Susan Hinrichs
This issue was identified while debugging new errors seen by an internal team
after they enabled HTTP/2 in their client. On the backend, they saw an increase
in the cases were ATS sends the origin the POST header but no POST body and
then closes the connection.
With the addition of Error() messages we were able to see a case where the
client is trying to open the 101'st stream on a session. This is beyond the 100
max concurrent stream limit, so ATS shuts down the session which kills the
previous 100 streams.
A closer reading of section 5.1.2 of the spec
(https://tools.ietf.org/html/rfc7540#section-5.1.2) indicates that this should
be a stream error and not a connection error. Bryan Call, Masaori, and Maskit
confirmed this interpretation. Maskit also noted that the other error case in
the current createStream method must be treated as a connection error.
Presumably the client library is expecting the refused stream case so it can
try again later.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)