Create beacon bitmap
(depending on SD index)
Transmit beacon Beacon reception
Add the device ID to my
neighbor table
Select my SD index
(based on beacon
bitmap)
Tr a n s m i t
allocation allocation notification
message
Receive
SD index
collision?
Transmit collision
notification
notification
Ye s
Receive collision
notification?
Join with
network
No
Remove my SD index
and
wait for the next
beacon
Ye s
Active device (already joined) Prospective device
Figure 2: Flowchart of the IEEE 802.15.4e DSME beacon scheduling algorithm.
4.1. Experiment Environment.We implemented beacon
scheduling for IEEE 802.15.4 DSME based on the LR-WPAN
module of ns-3 [ 17 ]. For a channel model, a single model
spectrum channel was used and a communication channel
was constructed based on a long distance propagation loss
error model. Specific primitives and frames for DSME are
involved in the LR-WPAN media access control (MAC)
layer and additional PAN information base (PIB) attributes
and constants are defined in the MAC header. In addition,
instead of a superframe structure used in the original IEEE
802.15.4, a multisuperframe structure (a specific feature of
DSME) is used.
4.2. Pure DSME
4.2.1. DSME Beacon Scheduling Review.This subsection pre-
sents the DSME beacon scheduling algorithm in terms of
implementation.Figure 2shows a concrete flow chart of
a DSME beacon scheduling algorithm. The algorithm is
divided into two stages: the active node stage and the prospec-
tive node stage. First, an active node generates a beacon
bitmap based on its own SD index and the SD index infor-
mation of its neighboring nodes. This SDBitmap information
is contained in a beacon frame broadcasted periodically. All
nodes update their neighboring SD index table whenever
they receive a beacon frame containing an SDBitmap field.
Inparticular,ifaprospectivenodereceivesabeaconframe,it
adds the sender ID to the SD index table entry and updates SD
index information based on the SDBitmap contained in the
received beacon. Then, a prospective node selects an available
(vacant) slot and broadcasts a beacon allocation notification
message. All the nodes that receive the allocation notification
message check whether the notified slot is already used. If
the slot is available, the SD index table is updated by adding
the designated slot. However, if the slot is already used, the
node that receives the notification message sends a collision
notification message to the originator to prevent overlapped
SD slot usage. As soon as the prospective node, which sent
notification of its new SD index, receives a collision notifi-
cationmessage,itclearstheSDindexandthenwaitsuntil
the next beacon reception. After broadcasting the allocation
notification message, if a collision notification message is not
received by the end of the contention access period (CAP)
of the present superframe duration, the prospective node
becomes an active node with the allocated SD index, and it
can send its periodic beacon in the allocated SD index slot.
4.2.2. IEEE 802.15.4e DSME SD Slot Selection.If a prospective
node receives a beacon, a superframe slot of the node can
be allocated by selecting a vacant slot. The allocated slots are