This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

802.15.4 Sequence Numbers and the MAC/Application layer

Other Parts Discussed in Thread: TIMAC

I am using TIMAC.  I have been receiving some 802.15.4 broadcasts from a contiki device (tmote sky).

It appears that contiki rime (or the mote) sends a large number of repeat packets, so all with the same sequence number.  All these are passed up to the application layer with the data_ind... event.

I would have expected just to see one of these and the rest to be dropped by the mac layer, since they are the same packet.

Is it always up to the application/network layer to manage the sequence numbers?  Or just in certain cases?

Or have I completely misunderstood things?

 

  • For TiMAC, the MAC layer is supposed to read the receive buffer from the radio and populate its data structure with all the relevant details like length, sequence number etc. If the frame type received is "data" then the MAC layer creates a "MAC_MCPS_DATA_IND" indication for the higher layer and invokes a callback function. In short, it passes the sequence number to the nwk layer/higher layer.

  • Thanks so much for your advice, I do appreciate it...

    Just to say, I realise that the sequence number is avaialable to the nwk layer.

    But, just to be clear...

    I think you are saying, in answer to my question about the mac dropping duplicate packets (ie mainly packets with the same sequence number that it has already previously passed to the application layer), that the mac api doesn't care and cannot be made to care, it just passes them all up to the appl layer.

    Is the seq number to do with the nwk layer reassembling messages or is that commonly done with a network layer packet part of message type seq num.

    I know when sending, the mac layer can be made to retry etc and its confrmation event is passed to the appl' layer only after it has folllowed what ever retry startegy.  I wondered if there was something similar with duplicate seq numbers?