Hi, Phil.

Thanks for your reply. I agree with what you said.

-- Within TossimActiveMessageC I did change the previous call of Model.send
to:
err = call Model.send((int)addr, amsg, len + sizeof(tossim_header_t) +
sizeof(tossim_footer_t));

-- Regarding to TossimPacketModelC, I deleted the
"+ sim_packet_header_length()":
duration = 8 * (sendingLength);             // where sendingLength is
actually (len + header + footer)

Still, I don't think this has any impact on simulation since the whole
message_t is passed whether you include footer's length or not.
For the double-count of header, the only result is that a message would take
longer to be transmitted.

Kind regards,
Pedro Nunes

On Tue, Jun 1, 2010 at 1:11 AM, Philip Levis <[email protected]> wrote:

>
> On May 30, 2010, at 9:07 AM, Pedro Nunes wrote:
>
> > Hello all.
> >
> > I'm using TOSSIM under TinyOS 2.1.1 and I would like to ask you all two
> questions:
> >
> > ### First
> >
> > I noticed that inside TossimActiveMessageC.nc in command AMSend.send we
> can find this piece of code:
> >
> > "err = call Model.send((int)addr, amsg, len + sizeof(tossim_header_t));"
> >
> > But the documentation on this function (command error_t send(int node,
> message_t* msg, uint8_t len)) says that this command sends a packet with a
> data payload of length "len".
> > Therefore, I found it a little awkward that we're adding the size of the
> header since the command only requests the length of the DATA PAYLOAD.
>
> A header at layer N is a payload at layer N-1. To the link layer, the
> TOSSIM header is a header; to the physical layer (which Model represents),
> it's payload.
>
>
> > I proceed to the next call on the next component (TossimPacketModelC).
> Within this component, it will be created an event to fulfill our request of
> sending a message and that event will be inserted on a queue. Later, the
> event will eventually be popped from that queue and the operation of sending
> the message will take place, calling the "send_transmit(sim_event_t* evt)"
> function. Inside that function we can find the following line:
> >
> > "duration = 8 * (sendingLength + sim_packet_header_length());" being
> sendingLength the len parameter previously defined inside AMSend.send.
> >
> > My question is: why are we adding the length of the header again? This
> way, the header's length will be added twice! And why isn't the footer being
> added too?
>
> Those both look like bugs. The footer should be included in the Model.send
> call, though.
>
> Phil
>
>
_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to