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
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to