What happens if you just have node B that generates certain number of packets and the root? Does the retx count go down? You can keep the topology the same, just modify the program so node B sends data packets and other nodes don't.
- om_p On Fri, Mar 25, 2011 at 4:27 PM, Pawel Kuzak <[email protected]> wrote: > Hallo Omprakash, > > Sorry that I didn't explain earlier what I mean with MAC topology. Well, > under a MAC topology I understand all 1-hop links that are possible > between nodes in a network. For example, you can put nodes on a square > with 10m distance in x- and y-direction and if you set the nodes radio > power so that each node can communicate with other nodes in 10m or less > distance you will have a MAC topology like: > > X -- X -- X -- X -- X > | | | | | > X -- X -- X -- X -- X > | | | | | > X -- X -- X -- X -- X > | | | | | > X -- X -- X -- X -- X > | | | | | > X -- X -- X -- X -- X > > CTP can only use links that are defined in a MAC topology. So if a MAC > topology looks like: > > X -- X -- X -- X -- X > | | | | | > X -- X -- X -- X -- X > | | | | | > X -- X -- X -- X -- X > | | | | | > X -- X -- X -- X -- X > | | | | | > X -- X -- X -- X -- X -- node A -- node B -- root node > > All packets must pass node A and node B to reach the root. > Following I am listing some numbers (This is just an example from one > simulation run, but in all simulation runs node B shows this behavior. > Of course I also tried other topologies, but always the children of the > root node showed the same behavior.): > > Node A: > ETX: 19 > Packets received: 322 > Packets send: 21 > Packets acknowledged: 21 > Packets lost: 0 > Packets retransmitted: 0 > Parent node: B > > Node B: > ETX: 9 > Packets received: 21 > Packets send: 43 > Packets acknowledged: 31 > Packets lost: 0 > Packets retransmitted: 12 > Parent node: root > > Root node: > ETX: 0 > Packets received: 29 > Packets send: 0 > Packets acknowledged: 0 > Packets lost: 0 > Packets retransmitted: 0 > Parent node: - > > And for comparison the child from node A: > ETX: 26 > Packets received: 298 > Packets send: 330 > Packets acknowledged: 323 > Packets lost: 0 > Packets retransmitted: 9 > Parent node: A > > In my application all nodes send 21 packets and node A intercepts them > and does not forward them, so don't wonder about why node B does only > receive so few messages. But if it had to forward more the > retransmission rate would be even greater. > Another thing I don't understand is that I expected to following > relations: > Packets lost = Packets send - Packets acknowledged > Packets send = 21 + Packets retransmitted. > Packets received = Sum of the Packets acknowledged from all children > > First I suggested that I am incrementing variables in the wrong code > region, but I really can't find a better code region. > In CtpForwarindP.nc I am incrementing a variable "packetsRecv" in "event > message_t* SubReceive.receive()", a variable "packetsSend" in "task void > sendTask()" (only if it is not a duplicate), a variable "packetsAcked" > in "event void SubSend.sendDone()" after a packet was acknowledged, a > variable "packetsRtx" also in "event void SubSend.sendDone()" after the > comment that the radio wasn't able to send it or an acknowledgment is > missing and the packet should be retransmitted, and a variable > "packetsDropped" also in "event void SubSend.sendDone()" after the > retransmission threshold has been reached and the packet will be > dropped. > > Hope this helps. > > Greetings, > Paul > > > -----Ursprüngliche Nachricht----- > Von: Omprakash Gnawali [mailto:[email protected]] > Gesendet: Freitag, 25. März 2011 19:52 > An: Pawel Kuzak; TinyOS Help > Betreff: Re: [Tinyos-help] Collection Tree Protocol - Sending to root > node > > What is a MAC topology? > > Can you also share the numbers regarding retransmissions and acks? > > - om_p > > On Fri, Mar 25, 2011 at 6:20 AM, Pawel Kuzak <[email protected]> > wrote: >> Hallo Omprakash, >> >>>Rest of the wireless sensor network --- node A --- root node >>> >>>Rest of the wireless sensor network --- node A --- node B --- root > node >> >> Nodes from the "rest of the wireless sensor network" don't send > packets >> directly to B, because they can't. I have defined a MAC-topology where >> the root node only hears node A respectively node B. And node B does >> only hear the root node and node A. The root node has acknowledgements >> enabled, cause node A respectively node B do receive acknowledgments > and >> no packets get dropped. >> >> Greetings, >> Paul >> >> -----Ursprüngliche Nachricht----- >> Von: Omprakash Gnawali [mailto:[email protected]] >> Gesendet: Freitag, 25. März 2011 00:12 >> An: Pawel Kuzak; TinyOS Help >> Betreff: Re: [Tinyos-help] Collection Tree Protocol - Sending to root >> node >> >> On Thu, Mar 24, 2011 at 3:16 PM, Pawel Kuzak <[email protected]> >> wrote: >>> Hallo Omprakash, >>> >>> Thank you for your reply. I understand that the closer a node to a >> root >>> is the more packets it has to deal with, but let me explain my > problem >>> to you more clearly. I used the following setup: >>> >>> Rest of the wireless sensor network --- node A --- root node >>> >>> In the above setup, node1 retransmits a lot of packets. But when I >>> change the setup to >>> >>> Rest of the wireless sensor network --- node A --- node B --- root >> node >>> >>> Node A has a "normal" retransmission rate but now node B does need a >> lot >>> of retransmissions. I don't understand this, because node B needs to >>> transmit the same amount of packets as node A. >> >> Not necessarily. Some nodes from the "rest of the wireless sensor >> network" could be sending packets directly to B. >> >> You should also check if the root has acks enabled. >> >> - om_p >> >> > > _______________________________________________ Tinyos-help mailing list [email protected] https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
