On Tue, Feb 19, 2008 at 06:19:39PM +0800, Kacheong Poon wrote: > So I guess the issue is on how to grow the window size of each > channel. And only those channels which have used up their
Exactly. > windows will need to have the windows adjusted. I guess your > scheme may work. Just let the sender know the receiver's buffer > size to avoid over subscription. Using an appropriate fairness > control and grow the bulk trasnfer channel's window. This makes > sure that there is always data in TCP to be sent and TCP will > send as fast as it thinks it can. Thanks. I'll try to play with this sometime. I'm thinking: start by setting SO_SND/RCVBUF to very large values and then implement a dynamic window size scheme like I described. I think estimating available bandwidth and congestion at the SSHv2 layer may well work, though there will be an aliasing problem -- I suspect that a slow-start-like window growth scheme may keep the aliasing problem under control, but if not then it's possible that we'll see a see-saw pattern, but with very wild swings. So this will take some experimenting to get right.