Hi, I was testing Chromium uploading to HAProxy and found the upload was quickly stalled. I tried to set tune.h2.initial-window-size larger but it was not effective. Wireshark confirmed SETTINGS_INITIAL_WINDOW_SIZE frames were being sent as expected, but Chromium's net log showed the connection window size remained the default (stream window size did get the larger value).
Upon reading Chromium's source I found SETTINGS_INITIAL_WINDOW_SIZE frames would only adjust the per stream send window size, not the connection window size (called session_send_window_size_ in Chromium). Actually RFC 7530 6.9.2 has specified this, > The connection flow-control window can only be changed using WINDOW_UPDATE > frames. > Similarly, the connection flow-control window is set to the default initial > window size until a WINDOW_UPDATE frame is received. > A SETTINGS frame cannot alter the connection flow-control window. It appears WINDOW_UPDATE frames were not being sent to update the connection windows. This tuning knob is probably only useful if it's also applied to the overall connection windows in addition to stream windows. -klzgrad

