[Tinyos-help] [TinyOs 2.x] ACK Bug?
Michael Schippling
schip at santafe.edu
Fri Jan 2 11:19:18 PST 2009
Hmm...interesting. Why would #2 happen? Message overrun?
If it was only #1 it would seem that you would have at worst
a 1::2^16 chance of a falsely correct CRC and then an even
smaller chance of it being the type field that was corrupted.
That said, the chance of missing a valid ACK is much greater
than getting a false one.
MS
Philip Levis wrote:
> On Dec 23, 2008, at 2:00 AM, Pratibha S wrote:
>
>> Hi All,
>>
>> We are running an algorithm in TOSSIM over 200-nodes and we are
>> experiencing packet losses due to improper ACKs. i.e. The sender
>> would receive the packet.wasAcked() signal, but the receiver wouldnt
>> have got the message. Is this a bug? Any help on this issue would be
>> appreciated.
>>
>
> This isn't a bug.
>
> Experimentally, I've found that motes receive false positive
> acknowledgements. This is rare, but it does happen. There are two
> possible reasons:
>
> 1) The packet was corrupted, but passed CRC. If the AM type is
> different, then unless you have a handler for that type the stack will
> just discard it.
>
> 2) The packet is read properly by the radio and passes CRC, but the
> software stack flushes the receive memory before reading it out.
>
> Because net2 has observed this to happen experimentally on pretty much
> every testbed we've used, I put it into TOSSIM. That way, your code
> doesn't make incorrect assumptions about the behavior of hardware.
> Remember the end-to-end argument: you can't depend on link-layer acks
> to be sure that the packet arrived successfully at a network layer.
>
> IIRC, TOSSIM issues false positive acks .1% of the time (1 in 1000),
> which is approximately what net2 observed in CTP tests on telosb and
> micaz hardware (CC2420).
>
> Phil
> _______________________________________________
> Tinyos-help mailing list
> Tinyos-help at millennium.berkeley.edu
> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
--
Platform: WinXP/Cygwin
TinyOS version: 1.x, Boomerang
Programmer: MIB510
Device(s): Mica2, MicaZ, Tmote
Sensor board: homebrew
More information about the Tinyos-help
mailing list