[Tinyos-devel] Re: [Tinyos Core WG] time sync interfaces

Janos Sallai sallai at isis.vanderbilt.edu
Thu Dec 13 12:57:49 PST 2007


Regarding timestamp precision: I'm afraid this is platform specific.
Making things worse, microsecond precision means 921600Hz on a micaz that
uses the external clock source, while it means 1000000Hz when the micaz is
configured to use the internal oscillator. This is 8% difference in
frequencies, which is pretty hard to tolerate in a layer-3 protocol.

Specifying a "network time precision" a la "network byte order", on the
other hand, would put too much burden on the radio stack. I would classify
a 16-bit integer division as "extensive" computation.

Similarly, including metainformation in the packet header would mean
excessive overhead (not mentioning the effort to push this change through
the t2 code).

Of course, higher-level protocols must have some means to communicate
timestamping-related metainformation. This could be solved with a
TimeStampingInfo interface, provided by the radio stack, that contains a
getter such as command uint32_t getTicksPerSecond() which returns a
constant such as 32768 or 921600.

Similarly, the TimeStampingInfo interface could include commands to query
for the position and size of the timestamp, as well.

This way the implementation is not constrained to any specific timestamp
precision, size or position within the packet; and the responsibility of
ensuring cross-platform interoperability is delegated to higher-level
protocols.


Janos


-----Original Message-----
From: tinyos-devel-bounces at millennium.berkeley.edu
[mailto:tinyos-devel-bounces at millennium.berkeley.edu] On Behalf Of Philip
Levis
Sent: Wednesday, December 12, 2007 2:14 PM
To: David Gay
Cc: TinyOS Development; Miklos Maroti
Subject: Re: [Tinyos-devel] Re: [Tinyos Core WG] time sync interfaces


On Dec 12, 2007, at 11:59 AM, David Gay wrote:

> On Dec 12, 2007 11:09 AM, Philip Levis <pal at cs.stanford.edu> wrote:
>> PacketTimeSynch is a bit tougher, as it actually embeds a sender
>> timestamp in a packet. This has two basic issues:
>>
>>    2) How do nodes running different applications agree on the
>> timestamp precision?
>
> Why is this an issue? I might as well ask how different applications
> agree on the meaning/layout of packets (I am starting from an
> assumption that the presence of a timestamp is packet-specific rather
> than a general feature).
>

If a layer 3 protocol specification says "this packet has 32kHz, 16-
bit timestamps in it," or some variant thereof, I agree. But if this
is platform-specific rather than protocol-specific, there's an issue.
Specifying it in a protocol might mean that some platforms cannot
support certain protocols.

Phil
_______________________________________________
Tinyos-devel mailing list
Tinyos-devel at millennium.berkeley.edu
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-devel

No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.503 / Virus Database: 269.17.1/1181 - Release Date:
12/11/2007 5:05 PM

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 3096 bytes
Desc: not available
Url : https://www.millennium.berkeley.edu/pipermail/tinyos-devel/attachments/20071213/b2ef6cd7/smime.bin


More information about the Tinyos-devel mailing list