[Tinyos-devel] retransmissions in networking protocols
Andreas Koepke
koepke at tkn.tu-berlin.de
Thu Oct 4 08:47:31 PDT 2007
Oh cool. So maybe it should be added to lqi also?
Omprakash Gnawali wrote:
>>I'm talking about lost ACKs, not lost packets. Whenever only the ACK is
>>lost, a duplicate is created by the hop by hop recovery mechanism of the
>>network protocols. My question is: why is there no mechanism in place to
>>filter duplicates out?
>
>
>
> If you are talking about CTP, it already does duplicate suppression:
>
> From CtpForwardingEngineP.nc:
>
> event message_t*
> SubReceive.receive(message_t* msg, void* payload, uint8_t len) {
>
> ...
>
> //See if we remember having seen this packet
> //We look in the sent cache ...
> if (call SentCache.lookup(msg)) {
> call CollectionDebug.logEvent(NET_C_FE_DUPLICATE_CACHE);
> return msg;
> }
> //... and in the queue for duplicates
> if (call SendQueue.size() > 0) {
> for (i = call SendQueue.size(); --i;) {
> qe = call SendQueue.element(i);
> if (call CtpPacket.matchInstance(qe->msg, msg)) {
> duplicate = TRUE;
> break;
> }
> }
> }
>
> if (duplicate) {
> call CollectionDebug.logEvent(NET_C_FE_DUPLICATE_QUEUE);
> return msg;
> }
>
> ...
>
>
> - om_p
>
>
More information about the Tinyos-devel
mailing list