On Thu, 7 Feb 2002, Alan Cox wrote:
> > there is no way to "lose" that data before it hits the wire, unless of
> > course the network driver is broken and doesn't plug the upper layers when
> > its TX queue is full.
>
> UDP is not flow controlled.
No, of course not, but this has *nothing* to do with UDP. The IP socket
itself is flow controlled, and so is the TX queue of the network driver.
Let me give you another example: ping -f. If what you said were true, ping -f
would send packets as fast as the CPU can generate into the black hole
called an IP raw socket, right? Well, that just doesn't happen, because
sendto/sendmsg will block until there is enough space in the TX queue of
the raw socket.
I'll state again: if data (UDP or otherwise) is lost after sendto()
returns success but before it hits the wire, something is BROKEN in that
IP stack.
Ion
-- It is better to keep your mouth shut and be thought a fool, than to open it and remove all doubt.- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Thu Feb 07 2002 - 21:00:56 EST