Stack Organization
Overview
Protocol layers are wired together to form a stack. Click on the image to the right to see the stack organization diagram of the OpenWSN protocol stack. Send
functions are used to push packets down the stack; Receive
functions to pull them up. The bytes of a packet live in the OpenQueue
component. A packet is a variable of type OpenQueueEntry_t
and is defined in openwsn.h; components pass a pointer to an OpenQueueEntry_t
variables in the Send
and Receive
functions.
...
| App | L4 | RPL | IPHC | RES | MAC | drivers |
creator | w |
|
|
|
|
|
|
owner | w | w | w | w | w | ww |
|
l4_protocol | w/r |
|
|
|
|
|
|
l4_source_port | w | r |
|
|
|
|
|
l4_destination_port | w | r |
|
|
|
|
|
l4_payload |
| w/r |
|
|
|
|
|
l4_length |
| w/r |
|
|
|
|
|
l3_destinationORsource | w |
| r | r |
|
|
|
l2_nextORpreviousHop |
|
| w |
|
| r |
|
l2_frameType |
|
|
|
| w | r |
|
l2_retriesLeft |
|
|
|
|
| w/r |
|
l1_txPower |
|
|
|
|
| w | r |
l1_channel |
|
|
|
|
| w | r |
l1_rssi |
|
|
|
|
|
|
|
l1_lqi |
|
|
|
|
|
|
|
l1_crc |
|
|
|
|
|
|
|
l1_rxTimestamp |
|
|
|
|
|
|
|
...