Good to know that, but then, does that mean that we don't do an explicit sender-side SWS check. We are not in a hurry to send. If everything else (cwnd, send window etc) allows us to send, and only the sender-side SWS check stands in our way, we are not eager enough to send. Though I understand that our current forced_push() check suffices in most (not all) cases. Thanx, tomar On Wed, 7 Jul 2004, Alexey Kuznetsov wrote: > Hello! > > > Subject: Re: Sender-side SWS avoidance in tcp_sendmsg() > > Actually, this thing has nothing to do with SWS avoidance. > > It is workaround for a bug, noticed in win2000/XP?, when > overoptimized TCP receiver in http client delivers data only > when it sees a PSH. Normally, TCP may send the whole multigigabyte > stream of data not doing even single PSH because it always has more > data to transmit. > > So, forced_push() means that we make at least one PSH per window, > not depending on any other things sort of "amount of queued data". > > Yes, this means that skb1 is marked to carry PSH and the next > PSH must happen not later than Y+(tp->max_window>>1). > > Alexey > -- -- You have moved the mouse. Windows must be restarted for the changes to take effect. - : send the line "unsubscribe linux-net" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html