On Apr 9, 2007, at 4:34 PM, Prem Krishnan wrote:

Hi all,

I'm trying to implement a data aggregation scheme using the collection component in tinyos-2.x. Our scheme requires each aggregation node to wait for all of its children to respond before performing the computation. Is it possible for a node to know as to how many children are currently forwarding packets through it. Also, is there a way by which their node id's may also be known.


The collection layer in T2 (CTP) does not do this, as it requires per- child state. Generally, because a node has limited RAM, this means that you need children to explicitly join and leave a parent (where joins can fail), which CTP does not do.

Generally, when designing protocols for low-powered wireless sensors, there are two important rules, which if you break preclude the design from being practical without constraining the set of networks it will work on, adding further mechanisms, or assuming you have resources which are so far unavailable on low-power wireless sensors:

1) You must be able to handle arbitrary levels of packet loss that can vary over time 2) You must be able to operate with a constant bound on the state you can keep

An example of breaking rule 1 is:

"We assume a unit disk model"

An example of breaking rule 2 is:

"A node keeps state for each of its neighbors"

In practice, rule 1 effects rule 2: over a day, you might hear a single packet from a node that is really at the edge of reception range: does that count as a neighbor? Following rule 2 generally means that you need an algorithm to pick which subset of possible state you want to maintain. E.g., which nodes to keep in your neighbor table or which routes to cache.

Phil

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

Reply via email to