Hi om_p,
Thank you for your reply!
I have an ideal to improve the ack mechanism to avoid duplicate reception.
As you know, the CTP protocol will build up a routing tree, so during a
certain period, we can suppose that the tree is stable. In other words, we can
suppose that the path from the sender to the receiver(the root) is stable. If
it is OK, we can do this:
Firstly, forwarding node on the routing path can record the packet from the
sender. When the forwarding node receive the packet, it send ack to the last
hop, and when forward the packet it can as well record whether the packet is
acked form the next hop. If it's acked ,we can drop from the packet queue of
the forwarding node, while not, we record it then forward after a short period.
For example, we have a simple routing path, C--B--A,and A node is the
root, C the sender and B is the forwarding node. When C send packet p1 to A, if
B receive p1,then B send ack to C, then B forward p1 to A. Although, we
suppose, the ack from B to C is lost,the root node A would not receive
duplicate p1.Because when B receive a duplicate from C, B can drop it.
This is just my ideal. But I have some question:
1,I don't know whether somebody else have done it.
2,Whether tinyOS support any-to-any ack,like ack from B to A
2,Whether it's worthy to implement it, or is it useful to improve the
network and save energy?
regards.
--quan
2008-05-05,Omprakash Gnawali [EMAIL PROTECTED] write:
2008/5/5 laizhiquan laizhi网易电子邮箱 - [EMAIL PROTECTED]:
hello, all,
I'm simulating apps/tests/TestNetwork with Tossim under TinyOS 2.0.2.
It's found that there are always duplicate receiving on the root node .
Is it because of the mechanism of acknowledgment in the CTP? As I find
that nodes often send, or forward, one packet for several times after no
acked is reported each time. I imagine that, althought no acked is
reported, sometimes the packet has send successfully and received by the
root, and once retransmitting, duplicate happens.
So, I suppose that there is something wrong with the acknowledgment
mechanism. Is it ?
And if it is, how can I improve it?
If the ack gets lost, the sender retransmits because the sender does
not know if the receiver received the packet.
- om_p
___
Tinyos-help mailing list
Tinyos-help@millennium.berkeley.edu
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help