netdev
[Top] [All Lists]

Re: PATCH Re: udp weirdness

To: Eric Lemoine <Eric.Lemoine@xxxxxxxxxxx>
Subject: Re: PATCH Re: udp weirdness
From: Ben Greear <greearb@xxxxxxxxxxxxxxx>
Date: Wed, 02 Oct 2002 08:25:37 -0700
Cc: kuznet@xxxxxxxxxxxxx, Chris Friesen <cfriesen@xxxxxxxxxxxxxxxxxx>, hadi@xxxxxxxxxx, netdev@xxxxxxxxxxx
Organization: Candela Technologies
References: <3D99B6C7.3010302@nortelnetworks.com> <200210011531.TAA19943@sex.inr.ac.ru> <20021002111326.GG357@hookipa>
Sender: netdev-bounce@xxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.1b) Gecko/20020722
Eric Lemoine wrote:
I may have to poke around...if nothing else I'll learn more about the networking code...

It is difficult task, if possible at all.

The main obstacle is that we must not block after select() succeeded,
otherwise applications will lockup. Taking into account nature of datagram
services (and generally of networking services, where routes change et al.)
you do not know at time of select(), where the datagram will go.
So, blocking can be made only based on a criterium not depending on this.
problems with silent losses. People just do not care about this, so
they get the thing which they deserve.


Alexey,

Would you mind explaining a bit more why apps will lockup if we block
after select() succeeded. Or anyone?

Actually, I'm more interested to know why we would **need** to block after select has succeeded. It would seem to me that select is busted in this case. For the case of a very large UDP packet and a small send buffer, select gets confused, but at least when the send buffer is > 128k, it should be right...



Thx.

        Eric.



--
Ben Greear <greearb@xxxxxxxxxxxxxxx>       <Ben_Greear AT excite.com>
President of Candela Technologies Inc      http://www.candelatech.com
ScryMUD:  http://scry.wanfear.com     http://scry.wanfear.com/~greear



<Prev in Thread] Current Thread [Next in Thread>