Re: Can an app see the same UDP packet multiple times?
- From: "Arkady Frenkel" <arkadyf@xxxxxxxxxxxxxxxx>
- Date: Tue, 24 Jan 2006 11:28:35 +0200
Dean, check that sending side really resend the packet and why. That for
sure not easy but sniffers on both side will help you in this. TCP stack
itself don't do that
Arkady
"Dean Roddey" <droddey@xxxxxxxxxxxxxxxx> wrote in message
news:u%23BoY%23GIGHA.1728@xxxxxxxxxxxxxxxxxxxxxxx
> There's no problem with out of order arrival. These are small payloads and
> they are sent as single UDP packets that are very unlikely to get
> fragmented (they are local network only). So the only real concern is
> rejection of dups. So it looks like I'll need to provide for that. Oh
> well... No biggie in the bigger picture. I'd just always thought that UDP
> packet headers provided for rejection of dups at the IP stack level. You
> learn something every day.
>
> Given the one to many nature of these events, it really does need to be a
> UDP broadcast. Now that I have to provide for dup rejection anyway, I can
> actually just have the sender send it out a few times, after a small
> semi-random delay, to help insure reception.
>
> -------------------------------------
> Dean Roddey
> Chairman/CTO, Charmed Quark Systems
> www.charmedquark.com
>
> "Eugene Gershnik" <gershnik@xxxxxxxxxxx> wrote in message
> news:OGXFYgFIGHA.312@xxxxxxxxxxxxxxxxxxxxxxx
>> Dean Roddey wrote:
>>> Our product is a networked automation system. Recently we added an
>>> event mechanism, which is based on UDP packets that get sent out when
>>> certain things happen, so that others can react to it. There's a
>>> simple framework that allows any given app to listen for these events.
>>>
>>> One of our customers is reporting seeing the same events multiple
>>> times. I gave him a hacked version, which puts an incrementing
>>> sequence number in the header of the events, and he really is seeing
>>> the same event multiple times, i.e. it's not accidentally sending out
>>> the same event multiple times, he is seeing the same UDP packet
>>> multiple times somehow.
>>> I thought that wouldn't happen, i.e. that once the IP stack has seen
>>> a given packet, that even if through some round about way the same
>>> packet came back again, that it would discard it? He does have
>>> multiple network adaptors (one wireless and two VMWare virtual
>>> machine adaptors) but I had him disable the VM virtual adaptors and
>>> he is still seeing the same results.
>>> So is this something that is to be expected?
>>
>> Yes, why not? A node (or nodes) between the sender and receiver may
>> resend a packet or send it multiple times. Not a frequent thing to happen
>> but still possible.
>>
>>> If so, then I'm going to
>>> have to do my multiple rejection mechanism I guess. But no one else
>>> has reported it, and I don't want to add the unique id overhead to
>>> the event system if it can be avoided, since it'll just eat up more
>>> space in the limited UDP packet size and add overhead to generate and
>>> to filter out. So I don't want to implement something to get around
>>> what is effectively some pathological misconfiguration on his
>>> particular system.
>>
>> This is not pathological and not necessarily misconfiguration. When you
>> use UDP you can expect anything: packets arriving multiple times, out of
>> order or not arrivng at all. If this doesn't work for you you need to
>> either use TCP or implement required semantics on your own.
>>
>
>
.
- Follow-Ups:
- Re: Can an app see the same UDP packet multiple times?
- From: Dean Roddey
- Re: Can an app see the same UDP packet multiple times?
- References:
- Can an app see the same UDP packet multiple times?
- From: Dean Roddey
- Re: Can an app see the same UDP packet multiple times?
- From: Eugene Gershnik
- Re: Can an app see the same UDP packet multiple times?
- From: Dean Roddey
- Can an app see the same UDP packet multiple times?
- Prev by Date: Re: Can an app see the same UDP packet multiple times?
- Next by Date: Re: Is this allowed?
- Previous by thread: Re: Can an app see the same UDP packet multiple times?
- Next by thread: Re: Can an app see the same UDP packet multiple times?
- Index(es):
Relevant Pages
|