This probably belongs on tinyos-help; I'll CC that list instead.

 

I think you're just hitting the maximum channel capacity for the radio.
25 nodes, transmitting every second, means a minimum of 25 packets
towards the sink, every second, which all need to be acked. In addition,
if your network needs multiple hops to the sink, traffic near the sink
will also occupy the channel. It's likely that the channel is simply too
busy to send acks, or they are sent too late and therefore not received.
This will in turn make the problem worse, because all those nodes start
retransmitting because they're not receiving acks, increasing the
traffic load even further. CTP was designed for low data rates, and it
doesn't have a mechanism to cope with this.

 

In general, you'll note that as you increase the traffic load, you'll
reach a point where the network will run smoothly until a packet is
lost, and then the whole thing melts down due to retransmissions and
lost acks. HW acks are probably faster, so in effect, your maximum
traffic load goes up.

 

HTH,

Michiel

 

From: [email protected]
[mailto:[email protected]] On Behalf Of Wei
Dong
Sent: dinsdag 21 september 2010 10:35
To: [email protected]
Subject: [Tinyos-devel] CTP broken and ACK delay

 

Dear all,

 

   I recently used CTP for collecting data from a network of nodes.

The experiment setup is as follows,

 

I have used 25 TelosB nodes, and each node periodically transmits three
packets to the sink.

Each packet transmission uses a different CollectionSender and the
packet size is approximately 100 bytes.

 

When the period is relatively large, say 5 seconds, the sink can collect
data smoothly.

However, when one of the packet transmission period decreases to 1
seconds, CTP is broken,

and it cannot be recovered when I try to retore the period using the
Drip.

 

I used a sniffer to learn the packet transmission activities, and found
that

1) in the normal state, each packet transmission normally follows a
matching ACK

2) in the abnormal state, for the most cases, I cannot find matching
ACKs for the data packets.

 

I think that the radio may be in some state that it cannot ACK others in
time.

To verify this, I turned on the HW ack mechanism, and the sink can
correctly receive packets when

one packet period is changed to 1 second.

 

What's the reasons for missing ACKs in CTP when SW ACK is used? Thanks
in advance.

 

Wei Dong

 

_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to