Thanks for confirming this problem.
> I've run in to this problem, too. This code prevents advertising more
> rcvbuf space than you are likely to need. This is good for something like
> an X11 connection, but obviously very bad for the bulk transfer mixed MTU
I would think this is already taken care of at the sender by application
limited cwnd so cwnd wouldn't increase beyond what is being actually used.
> I think the most desirable answer is to not have a hard per-connection
> memory bound, but this is problematic because of denial-of-service
I think having a default limit on tcp memory is acceptable to prevent DoS,
but when a user increases the memory limit by explicitly setting tcp_rmem,
that should take effect. The code itself shouldnt pose any limit like it
Actually, I am not clear what that window-calculation algorithm is. Is it
recommended by some RFC?