maskit commented on issue #8199:
URL: https://github.com/apache/trafficserver/issues/8199#issuecomment-908939092


   > If I understand your proposal correctly, as a new stream is created, new 
setting frames would need to be sent to the existing stream frames to adjust 
down their stream windows. Similarly as a stream is closed, the remaining 
streams would need setting frames to increase their stream windows.
   
   SETTINGS frame is allowed only on stream 0. One SETTING frame affects all 
existing and future streams. SETTINGS frame would still need to be sent again 
and again on stream 0, but it doesn't necessarily need to be done on every 
stream count change. I'd say once every a few seconds would be enough for many 
cases.
   
   > Also, with an automatic scheme, it would be quite easy to run into a 
scenario where each stream gets a tiny amount of window.
   
   That depends on your configuration. The minimum stream window size would be 
`initial_window_size_in / max_concurrent_streams_in`. You shouldn't accept too 
many streams.
   
   > I think an explicit session window gives us something simple to test 
various scenarios. If the session window is not set, nothing is changed. As we 
move to outbound, the values could be adjusted via remap rules. We could also 
adjust inbound window sizes based on SNI values.
   
   I'm not sure here. Session window size is explicit on my proposal too. 
Adding a switch to enable/disable the auto sizing should be easy if someone 
want to keep current behavior. Overriding session window size based on remap 
rules and SNI values should be possible with either.
   
   > Once we gain some experience, we could later add an automatic mode to 
reallocate a global session window across the streams existing at the moment.
   
   That still doesn't solve the issue that a stream cannot fully utilize a 
connection.
   
   
   Since my proposal (variable stream window size) would not conflict with your 
proposal (separate setting for session window size), I can live with your 
proposal. However, having the both would complicate window size settings and I 
think we should avoid it if possible. I'd say my proposal would work for the 
stall issue and we don't need a new setting for session window size, but I 
don't have time to implement it right now. So maybe I should approve your PR 
for now to move forward. What do you think, @shinrich, @bryancall ? Do you 
think we should have either of our proposals for simplicity, or accept the 
complexity for flexibility?


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to