Hi Giuseppe, Thanks a lot. The explanation really helps me understand the concept. Thus, in summary (please correct me if I am wrong):
- The packet that I received is a Serial packet with this format: serial_header_t -> linkest_header_t -> ctp_routing_header_t -> linkest_footer_t ?; which I understood as: the CTP routing frame is encapsulated in the LinkEstimator header and footer, and both of them is encapsulated in the Serial packet ? - In addition, what I can suggest here is, the Serial packet works at the Physical Layer of the protocol, the LinkEstimator frame works at the Link Layer of the protocol, and the CTP Routing frame works at the Network Layer of the protocol..Am I correct? Many thanks again for your help... Yusnaidi On Wed, May 5, 2010 at 12:52 AM, Giuseppe Cardone < [email protected]> wrote: > Hi, > > CtpP wires CtpRoutingEngineP.BeaconSend to LinkEstimatorP.Send, so the > LinkEstimator can add a header and a footer to each packet sent by > CtpRoutingEngineP. The bytes 01 08 are the link estimator header ( > linkest_header_t in LinkEstimator.h). The first byte encodes the > number of elements in the footer and some flags, the second byte is a > sequence counter. In this case the footer contains only one element. > Each element is a neighbor_stat_entry_t struct. In your example the > footer is 00 02 2F. The first two bytes are a node address, the last > byte is the input link quality. > > The real CTP routing frame is: > > 00 00 00 00 00 > > 00 : CTP routing flags (congested, pull), in this case there are none > 00 00: parent, in this case the node itself > 00 00: ETX > > > Regards. > > -- > Giuseppe Cardone > > > > On Tue, May 4, 2010 at 11:37 PM, Yusnaidi Md Yusof <[email protected]> > wrote: > > Hi All, > > > > I have the following data reading from the TestNetwork application. The > data > > is read using the java 'net.tinyos.tools.Listen' tool. > > > > 00 FF FF 00 00 0A 22 70 01 08 00 00 00 00 00 00 02 2F. > > > > What I understood when interpreting the data is: > > > > 1. The first byte (00) refers to the AM type which said can be ignored. > > 2. The next 'FF FF' is the destination address. > > 3. The next '00 00' is the source address. > > 4. The next '0A' is the length of the data. > > 5. The next '22' is the group ID. > > 6. The next '70' is the AM handler type. -> which I believe this byte > > indicates the data stream belongs to the CTP routing frame since I found > > from the Ctp.h, '0x70' is an enum for AM_CTP_ROUTING. > > > > Thus, the rest of the bytes, I translated as the fields that belongs to > the > > CTP routing frame; thus by referring to TEP 123, the next byte after '70' > > which is '01' would refer as 'reserved' field, the next '08 00' will be > the > > 'parent' field, the next '00 00' will be the 'ETX' field, and the rest I > > really have no idea what they are?? Instead, I think my interpretation > here > > sounds wrong since it doesn't make sense that '08 00' refers to 'parent' > > field because I set (by issuing make micaz install) the motes ID to be 0, > 1, > > 2, etc..and none of them are '08 00' hexa. If I translate them as data of > > CTP routing frame, that could also be wrong since CTP routing frame does > not > > carry data... > > > > I am so confused here and really need your help guys... > > > > Thanks > > > > Yusnaidi > > > > > > > > _______________________________________________ > > Tinyos-help mailing list > > [email protected] > > https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help > > >
_______________________________________________ Tinyos-help mailing list [email protected] https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
