Hi,
I have a couple questions regarding the receiver buffer size. In Chromium's stable channel (52.0.2743.116), the quic_server uses a buffer size of 256*1024 (kDefaultSocketReceiveBuffer), which results in maximum congestion window and slow start threshold of 107 packets (configured when creating the SendAlgorithmInterface). When I connect to quic_server with Chrome, the client sends SRBF = 1048576 (=1024*1024). The server updates the maximum congestion window (to 430 packets) upon receiving this new buffer size, but it does not update the slow start threshold. Is there a reason for this? When there is ample bandwidth available, having such a small slow start threshold compare to the max congestion window causes QUIC to take a long time to ramp up to maximum available bandwidth.
Are you able to discuss what is the default buffer size that Google servers' use? Doing some tests against app engine, it seems like it is configured to use receiver buffer size of 1024*1024 to set the max win size and SS threshold. Is this correct? (I can see that the dev channel uses this number)
I also appreciate any clarification on how this buffer size (and the 0.6 conservative fraction) is picked.
Thank you!