Hi all:

I'm reading the TEP 116 Packet Protocols.

In Section 2.1 there documents the "clear" command of Packet Interface. This
command is described as the following:
*The ``clear`` command clears out all headers, footers, and metadata*
*for lower layers. For example, calling ``clear`` on a routing*
*component, such as CollectionSenderC[4]_, will clear out the*
*collection headers and footers. Furthermore, CollectionSenderC will*
*recursively call ``clear`` on the layer below it, clearing out the*
*link layer headers and footers. Calling ``clear`` is typically*
*necessary when moving a packet across two link layers. Otherwise, the*
*destination link layer may incorrectly interpret metadata from the*
*source link layer, and, for example, transmit the packet on the wrong*
*RF channel. Because ``clear`` prepares a packet for a particular link*
*layer, in this example correct code would call the command on the*
*destination link layer, not the source link layer.*

TEP116 told us that the clear command is used for clear the header, footer,
and meta-data field of the packet. Then I checked the code comments int *
$TOSROOT/tos/interface/Packet.nc* about the "clear" command :
  * /** *
*    * Clear out this packet.  Note that this is a deep operation and*
*    * total operation: calling clear() on any layer will completely*
*    * clear the packet for reuse.*
*    * @param  'message_t* ONE msg'    the packet to clear*
*    */*
*    command void clear(message_t* msg);*

MAY be the TEP116 document is out-of-date? Please update this document if I
was right.
*
*
_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to