You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@trafficserver.apache.org by GitBox <gi...@apache.org> on 2022/09/12 01:11:45 UTC

[GitHub] [trafficserver] maskit commented on pull request #9085: Make HTTP/2 session and stream windows configurable

maskit commented on PR #9085:
URL: https://github.com/apache/trafficserver/pull/9085#issuecomment-1243098660

   Like I said on #8199, this change doesn't make sense to me. Just setting a large number to connection window size is effectively removing flow control for a connection. And even if you can set a reasonable value to connection window size, setting stream window size separately by hand isn't great because you need to estimate the average number of streams on a connection before hand. Let's say connection window size is 256KB. If the average number of streams is 2, stream window size should be 256 / 2 = 128KB. This stream window size is not the best for a connection that has just one stream (one stream can't fully utilize the connection).
   
   My suggestion is:
   - Keep `proxy.config.http2.initial_window_size_in` as the only setting for H2 window size
   - Set the initial connection window size to `proxy.config.http2.initial_window_size_in * proxy.config.http2.max_concurrent_streams_in` at the beginning of a connection
   - Send SETTINGS frame with the value of `the-connection-window-size / #-of-open-streams` when the number of open streams changes (or alternatively, send WINDOW_UPDATE on each stream)
   
   You can set initial connection window size by adjusting initial_window_size_in (for stream) and max_concurrent_streams_in. This should work for you since you'd have a larger connection window size while you keep your initial stream window size as is. The last item is optional but it's to fully utilize a connection by a low number of streams and I think we should do this. 
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@trafficserver.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org