[Tinyos-help] Routing Protocols in TinyOS 2
pal at cs.stanford.edu
Thu Feb 28 08:15:53 PST 2008
On Feb 28, 2008, at 1:08 AM, Tao Liu wrote:
> Dear all,
> I am a beginner in TinyOS, and I am trying to understand the routing
> algorithms used in TinyOS 2. According to the TEP 123, TinyOS 2.0 uses
> CTP as the routing protocol for multihop communications, which uses
> ETX as the route metric to estimate the quality of a link. However, my
> understanding is that TinyOS 2.0 provides two implementations of the
> - tos/lib/net/ctp
> - tos/lib/net/lqi
tos/lib/net/lqi is not an implementation of CTP (TEP 123). It's a
collection service (TEP 119), but a completely different protocol.
> The first one uses ETX, and the second one uses LQI in the link
> estimation. Is there any way to incorporate other route metrics to the
> current CTP implementation? If there is, which component should I
> modify to apply the new metric? I believe there should be some
> components in tos/lib/net/le, but I am not sure.
CTP can be used with different link estimators: tos/lib/net/le and
tos/lib/net/4bitle are the two in CVS, with the latter being much
> I am also wondering what are the preferred routing protocols currently
> used in the wireless sensor networks, especially those protocols that
> are not tree-based? As far as I can tell TOS 2.x provides two (the
> ones mentioned above), and TOS 1.x offers more. There are also
> prototype protocols such as S4 (Small state and Small Stretch Routing
> Protocol) and CentRoute (CENS) available. Are there any point to
> point protocols available that are not tree-based?
Please take a look at Om's slides from TTX5. TYMO, a slight variation
on DYMO, should be making its way into CVS soon. Note, though, that
one-to-one routing which is not tree based has fundamental scaling
> Out of the existing
> sensor network deployments, which routing protocol seems to get the
> most use? I would appreciate if you could provide pointers to the
> implementations as well (whether they are on the main TOS code
> repository or a different one).
Most deployments don't use or need one-to-one routing. Those that do
tend to use application-specific approaches, as the general case
requires O(n) state.
More information about the Tinyos-help