Hello all,
Address is not checked in acknowledgement as shown in CC2420TranmitP.
*async event void CC2420Receive.receive( uint8_t type, message_t* ack_msg )
{*
* ...*
* if ( m_state == S_ACK_WAIT && msg_header->dsn == ack_header->dsn )*
* ...*
*}*
As long as an ACK with the same DSN as the pending data packet is received
within the ACK timeout, the packet is considered to be acknowledged. What if
a nearby node, which is not the recipient of the data packet, happens to
send an ACK with the same DSN? Given DSN is only 1 byte, this is quite
possible to happen in dense network. I checked the packet format of ACK
frame, it does not contain address field. Can anyone give me some hint on
the rationale behind this design and why address is not contained and
checked in ACK? Thanks in advance.
--
-Xiaohui Liu
_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help