You are on page 1of 5

NTMS'2009 3rd International Conf. on New Technologies, Mobility and Security, Cairo, Egypt, 20-23 Dec., 2009.

Performance Analysis of Slotted CSMA/CA

IEEE 802.15.4 with Heterogeneous No-
Acknowledged Uplink Traffic
Gustavo Sarmiento, Walter Grote (Member, IEEE) and Khaldoun Al Agha

kinds of nodes. The reduced function devices (RFD) are only

Abstract—IEEE 802.15.4 Wireless Sensor Networks (WSN) able to sense variables to transmit to the full function devices
often are used in cluster topologies, where one or more reduced (FFD), which collect data from their own sensors and the
function devices (RFD) exchange messages with full function RFDs that report to them, to retransmit it to the FFD they in
devices (FFD). FFD´s, in turn, may exchange messages among turn report to, as depicted in the cluster/tree topology of Fig.
themselves in a tree topology. To be energy efficient, these
1. Parent nodes are always implemented by FFDs and fulfil
devices will collect received messages and regroup them in order
to reduce the protocol overhead associated to communications.
the role of point coordinators. To synchronize transmissions
As a result, WSN messages may differ in size, a fact that has not parent nodes initiate message exchange cycles by transmitting
been studied in performance analysis of this kind of networks. In beacons at regular intervals, which are used as a reference to
this publication an analytical model is presented, that considers determine transmission times for the nodes that report to them.
variable size messages and the impact their transmission has on A point coordinator will remove the irrelevant control
energy consumption. This model is then validated by simulations. information of the received packets, assemble the remaining
data into a new packet, add its own information to it and
Index Terms—Wireless Sensor Networks, protocols, energy transmit it to its own parent point coordinator. This node in
managment. turn will do the same: receive all the contributions from the
sensor nodes that are being coordinated by it, remove the
I. INTRODUCTION unnecessary control information from each received packet,

T he recent interest generated by the development of

Wireless Personal Area Networks (WPAN) and Wireless
Sensors Networks (WSN), has led the Task Group 4, (TG4) of
assemble a new packet with all the information it has collected
and deliver it to its own parent point coordination node. This
process continues all the way up the branches of the topology
the IEEE to develop the IEEE 802.15.4 standard, that defines tree until the network point coordination node is reached.
Media Access Control (MAC) and Physical layer (PHY)
protocols of this technology, in the year 2003, [1]. This C N C: N etw o rk po in t co o rdina to r
standard has been widely accepted in industry, to provide R: FFD  po in t co o rdina tor
C C: RFD  sen so r n od e
connectivity for agricultural, mining, home automation and NC
military devices within the framework of the ZigBee Alliance, C C C
Most WSN have each node powered by batteries and are R R
therefore severely constrained in terms of energy consumption C
in order to endure in working conditions for long time periods. C
Normally the device that is power hungry on a WSN device is
the transceiver, while the other functions require negligible R
power. This fact translates into an operation mode where such C
a device remains in a “communication sleeping mode” during Fig. 1. Scenarios of case of use of the model.
long time intervals, to eventually turn on its transceiver for
relevant data transmission or reception. WSN distinguish 2 To access the channel a carrier sense multiple access
scheme with collision avoidance (CSMA/CA) protocol is
Manuscript received September 5, 2009. This work was supported in part used. The IEEE 802.15.4 standard offers the possibility of
by the CONICYT Grant PBCT ACT 11/04, Grant 2008 CNRS-CONICYT implementing the CSMA/CA protocol with and without
and UTFSM project 23.09.65.
correct reception acknowledgments (ACK). Avoiding the use
Gustavo Sarmiento is a Master´s Degree student with the Electronic
Engineering Department of Universidad Técnica Federico Santa María, of ACKs works well if there is not much signal interference
Valparaíso, Chile, (e-mail: and may reduce energy consumption considerably,
Walter Grote, is with the Electronic Engineering Department of Several analytical models have been developed to be able to
Universidad Técnica Federico Santa María, Valparaíso, Chile, (e-mail: evaluate the impact of these transmissions, receptions and
Khaldoun Al Agha is with LRI, Bâtiment 490, Université Paris-Sud, 91405 retransmissions, Misic in [4] proposes a model based on
Orsay cedex ,France (email: Bianchi's approach for the analysis of IEEE 802.11 wireless
NTMS'2009 3rd International Conf. on New Technologies, Mobility and Security, Cairo, Egypt, 20-23 Dec., 2009. 2

networks, [3]. However, there are some slight - but important The slotted CSMA/CA mechanism works as follows. NB,
- differences among the way the protocols implement random CW and BE are initialized. The MAC computes the backoff
access to the channel. Park in [5] recognizes this difference, delay for a random number of slots periods in the range 0 to
which is related to the fact that the last 2 states of the Markov 2BE -1, setting the initial number on a counter that executes the
chain representing the back off algorithm before imminent back off algorithm by decrementing the number for each
transmission of a packet operate differently in each of these collision time interval until the associated counter reaches 0
protocols, however the model he presents is slightly short of and then performs the CCA algorithm. If the channel is sensed
being accurate. Pollin in [6] and [7] is able to correct the idle twice in the CCAs, the packet transmission takes place in
model by recognizing that while the Clear Channel the next slot. Instead, if in any one of the 2 CCAs the channel
Assessment (CCA) protocol is executed, the probability that is sensed busy, the MAC sublayer increments both NB and BE
the second idle channel check fails is not independent from by one, ensuring that BE < aMaxBE, and resets CW = 2. If the
the first one. An analytical evaluation of the performance in a value of NB is more than macMaxCSMABackoffs, the
star topology network for both saturated and unsaturated CSMA/CA must terminate with a Channel-Access-Failure
periodic traffic, with and without acknowledge, is developed status. The parameters used are listed in Table I.
based on this model in the cited references, respectively.
However, these models do not take into account the fact TABLE I
that packet sizes that are transmitted in a WSN will be of VALUES FOR PARAMETERS USED
different sizes. RFDs may report different sensor data to a
Variable Name Value or Range
FFD point coordinator, which may result in variable packet
sizes from different devices in the network. FFDs, in turn, will NB number of backoffs range: [0..5]
transmit a packet that most probably is much larger than any CW contention window length range: [0..2]
BE backoff exponent range: [2..5]
of the packet sizes of the RFDs that report to its parent FFD
aMaxNB maximum number of backoffs 5
point coordinator. The present publication develops, to our
aMaxBE maximum value of BE 5
best knowledge, the first model of the CSMA/CA mechanism
aMinBE minimum value of BE 2
of the IEEE 802.15.4 protocol for a WSN with Not- Tx energy consumption by Tx 30 [mW]
Acknowledged (N-ACK) uplink traffic between devices that Rx energy consumption by Rx 40 [mW]
transmit heterogeneous packet sizes. The accuracy of the Idle energy consumption by Idle 0,8 [mW]
model is validated through simulations. Sleep energy consumption by Sleep 0,16 [μW]
The reminder of the paper is organized as follows: section
II gives an overview of the IEEE 802.15.4 standard, which is
analyzed in section III for uplink heterogeneous traffic under III. ANALYSIS
saturation and unsaturated periodic traffic. Section IV
The main contribution of this work is the modeling of the
validates the accuracy of the model by a case of use. Section
Contention Access Period (CAP) of the slotted CSMA/CA
V gives energy and throughput results and gives some design IEEE 802.15.4, in a heterogeneous scenario.
guidelines that can be derived easily with the proposed model. We assume a fixed number of stations N, in a star topology
Section VI concludes the paper. network, in which all nodes in the network are within
communication reach of each other. The N stations are
II. BACKGROUND OF IEEE 802.15.4 PROTOCOL subdivided into G subgroups of x = m, n, o, etc. devices each,
The medium access control of the IEEE 802.15.4 uses a where m, n, o, etc. are positive integer numbers. Each
superframe structured with an active and an optional inactive subgroup is characterized transmitting packets of size Lx to be
time frame. The active portion is called the Contention Access transmitted to the point coordinator in time periods Dx, both
Period (CAP) and the optional part has been defined as variables expressed in an integer number of collision time
Contention Free Period (CFP). This publication only considers slots. Therefore, devices of a subgroup execute a two-
the analysis of the CAP, in which case devices compete for dimensional Markov chain representing the CSMA/CA
process with identical Lx and Dx parameters, as in [6], Fig. 3.
channel access using the CSMA/CA protocol. Three variables
Let c(t) be the stochastic process representing the transmission
define the operation of each device in the network, which are
delay line counter of the device. This counter is set at random
NB, CW and BE indicators. NB is the number of times that the
to an initial value within the range (0, Wi). This count is then
channel is found busy while executing the CCA in the current decremented by 1 for each collision time slot until it reaches
transmission attempt, it is initialized each time a new packet is 0. Then the CCA is performed for the first time, setting the
going to be transmitted for the first time. CW is the contention CW counter to the value of cCW = -1. If the channel is found
window length associated to the CCA protocol, which defines busy, which happens with probability αx, the next stage of the
the number of consecutives collision interval slots that need to backoff algorithm is initiated, increasing BE by 1. However, if
be detected idle before transmitting; it is set to 2 before each the channel is found idle, which happens with likelihood (1-
transmission attempt. BE enables the computation of the αx), a second CCA is executed, setting cCW = -2. If the channel
backoff delay, which is the time the device that wants to is found busy, which happens with probability βx, the backoff
transmit a packet has to delay before performing the CCAs. algorithm initiates the next stage increasing BE by 1. In case
NTMS'2009 3rd International Conf. on New Technologies, Mobility and Security, Cairo, Egypt, 20-23 Dec., 2009. 3

⎧ Wi − k ⎧ NB
⎪ ⎨ (1 − α x )(1 − β x ) ∑ b j ,0 + Pf ⎬ , i = 0
⎪ Wi ⎩ j =0 ⎭ (7)
bix, k ⎨
⎪ b Wi − k b x , i > 0
⎪ Wi
i ,0

Then, since probabilities must sum 1:

m W i −1 m m L x −1 D x −1
1= ∑∑b
i=0 k =0
i,k + ∑ bix, k + ∑ bix, − 1 + ∑ b−x1, k + ∑ b−x2, k
i=0 i=0 k =0 k =0

Since d = aMaxBE − aMinBE and p x = (α x + β x − α x β x )

1= {[3 + 2(1 − α x )(1 + (1 − β x )( L x + D x )
Fig. 3. Two- dimensional Markov chain used in this model, [6]. 2
1 − p x NB +1 p d +1 − p x NB (9)
the channel is found idle, which happens with probability (1- [ ] + 2 d W0 [ x ]
1 − px 1 − px
βx), the packet is transmitted.
Thus the transition probabilities of Fig.3 can be stated using 1 − (2 p x ) d +1
+W 0 [ ] + 2 Pfx D x }
relationships defined by {sn(t), cn(t)}, with transition 1 − 2 px
probabilities (1) to (4) as shown: NB
φ x = ∑ bix,0 (10)
P {i , k i , k + 1} = 1, k ≥ 0
Where φx is the variable that represents the event that a
P {0, k i , 0} = (1 − α x )(1 − β x ) / W 0 , i < NB (2) device of type x makes the first CCA, which in this model is
assumed independent of the number of retransmissions that
P {i , k i − 1, 0} = (α x + (1 − α x ) β x ) / W i , (3) have been made. These equations, which completely describe
i ≤ NB , k ≤ W i − 1 the Markov chain, need to be complemented by expressions to
P {0, k NB , 0} = (1 − α x )(1 − β x ) / W 0 + Pfx / W 0 , (4)
evaluate αx and βx, for which the method outlined in [6] will
be used, adapting it to a heterogeneous traffic model.
i = NB The probability αx that the channel is sensed busy in the
first CCA, is the likelihood that the that there is a transmission
The wait_for_new packet probability following a successful from any of the I devices belonging to the sub-group i, which
or failed packet transmission attempt of (4) defines the will expressed by PSEND

,0 (α x − α x β x + β x )
transmission failure probability, Pfx = bNB

The variable s(t) keeps track of the number of x

PSEND = (1 − ∏ (1 − φ i ) I (1 − φ x ) X −1 )(1 − α x )(1 − β x ) (11)
retransmission attempts that failed and is represented by a ∀i ≠ x
counter with a value s, that is incremented by 1 each time the .
CCA detects a busy channel. It therefore affects the value of The average packet transmission time L x can be evaluated
Wi, that is used to delay transmissions. The delay window Wi
is initially set to W0=2aMinBE and this value is doubled each considering that a device of the subgroup i will be busy
time the channel is found busy after executing a CCA until transmitting during Lí time slots and that Pi x is the probability
Wi=2aMaxBE, (aMaxBE-aMinBE) ≤ i ≤ NB. When the counter that at least one device of the type i transmits:
reaches the value NB, the packet is discarded from the ∑ Li ( Pi x )
transmission buffer. Lx = ∀i (12)
If bix, k = Pr{( s ( t ), c ( t )) = (i , k )} represents the distribution ∑ ( Pi x )
of stationary probabilities in the Markov chain of the device It should be noted, with the aim of maintaining the model as
type x, then, using (3), we get:
simple as possible, for the calculation of Pi x only packets of
bix−1,0 (α x + (1 − α x ) β x ) = bix,0 , 0 < i ≤ NB (5) greater size among those involved in the collision will be
considered, (13).
bin,0 = (α n + (1 − α n ) β n ) i b0n,0 , 0 < i ≤ NB (6) Finally, αx is obtained by collecting the contributions of the
various nodes of the network to keep the channel busy, (14).
Using (1) to (4), we get: To find the value of βx, (15) two cases defined by the
following expressions developed in [6] will be used:

Case 1: P ( M 1 ( s ) = − 1 ∩ M 1 ( s ) ≥ 0) = PSEND
NTMS'2009 3rd International Conf. on New Technologies, Mobility and Security, Cairo, Egypt, 20-23 Dec., 2009. 4

j −1
sensor sample and a 32-bit timestamp, with 1 additional byte
Case 2: P ( M ( s ) ≥ 0 ∩ M 1 ( s ) ≥ 0) = ∑ ∞ ⎛ (1 − φ ) ⎞
1 CCA j =1 ⎜ ∏ i ⎟ to identify the node within the cluster. Therefore, if there are
⎝ ∀i ⎠
E nodes reporting to a point coordinator, there will be E
similar fields, for each node one. In the case RFD nodes (type
⎧ (1 − (1 − φ i ) I )

∏ ( (1 − φ j ) J ) (1 − φ x ) X −1 ⋅
( ∀ j ≠ i , x ) ∩ ( Li < L j )
c), which only transmit information from their own sensors to
⎪ the Cluster Head, E=1, and the frame size will be of
⎪ (1 − α i )(1 − β i ), ∀ i ≠ x ∩ Li < L x 6+(6+1)+8+7+2+6= 36 Bytes. In the case of a node that is by
⎪ (1 − (1 − φ ) I )
⎪ i ∏ ( (1 − φ j ) J ) ⋅ (13) itself a FFD point coordinator (type r), if it is assumed E=14,
Pi = ⎨
x ( ∀ j ≠ i , x ) ∩ ( Li < L j ) the frame size can be calculated as 6+14(6+1)+8+7+2+6= 127
⎪ (1 − α i )(1 − β i ), ∀ i ≠ x ∩ Li ≥ L x Bytes, the largest frame size (aMaxPHYPacketSize) allowed.

⎪ (1 − (1 − φ x ) X −1 ) ∏ ( (1 − φ j ) J ) ⋅ To evaluate the model, consider that G=2, with two types
of devices, devices type r and c as described previously.
⎪ ( ∀ j ≠ x ) ∩ ( Li < L j )
⎪ Using A, defined above, the size of the packet in slots, for the
⎩ (1 − α x )(1 − β x ), i = x type r device Lr = 128·8/80 ≈ 13 slots, while for type c device
L x −1
Lc = 36·8/80 ≈ 4 slots. The analysis will be carried out for
αx = ∑P
x (14)
saturated (congestion) network conditions, with (Case A) 80%
⎛ ⎞ of the N nodes in the cluster being type r and the 20%
⎜ ⎟ remaining are type c nodes. Probability outcomes of both the
⎜ ⎟ analytical and simulation model for the Case A saturated
⎜ x
PSEND ⎟⎛ ⎞ (15)
β x = ⎜1 − ⎟ ⎜ 1 − ∏ (1 − φ i ) ⎟ network conditions are presented in Fig.5.
⎜ ⎛ ⎞ ⎟ ⎝ ∀i ≠ x ⎠
⎜ ⎜ 1 ⎟ ⎟
PSEND ⎜ 1 +

⎜⎜ ⎜ 1 − ∏ (1 − φ i ) ⎟ ⎟⎟ 0.8
⎝ ⎝ ∀i ⎠⎠
This set of nonlinear equation leads to a solution that make it 0.7

possible to establish some interesting performance measures 0.6

of the system, such as the Goodput and Energy Consumption
α c , α e, β c , β e, φ c , φ e

Efficiency. Goodput is defined as the effective user data rate, 0.5

removing the protocol overhead, to be computed as in (16). 0.4

G = A ∑ ( Li IPSUC
) 0.3
∀i (16)
⎛ ⎛ ⎞ ⎞ 0.2

= A ∑ ⎜ Li I φ i (1 − φ i ) I −1 ⎜ ∏ (1 − φ j ) J ⎟ (1 − α i )(1 − β i ) ⎟
⎜ ⎟ Simulations
∀i ⎝ ⎝ ∀j ≠ i ⎠ ⎠

Where A =80/32 (b/slot time) = 2.5·10 bps normalizes the 0
10 15 20 25 30 35 40
expression and the probability that a single i type node sends a N

packet successfully is PSUC i

. Fig. 5. The probabilities αc, αe, βc, βe, φc and φe as predicted by the analytical
and simulation model, for saturated conditions.


Fig.5 shows that both models have very similar outcomes.
To check the accuracy of our model, a Matlab program was

developed to implement the CSMA/CA protocol in a cluster 3

x 10

Gc case A
topology network with no interference based on a Monte- Ge case A
Carlo simulation scenario. The correctness of this simulator 2.5
Gagr case A

was validated by reproducing the results published in [6] first. 2

Gagr case B

This network consists of RFDs and FFD point coordinators, as Gagr case A unsaturated
Goodput [bps]

Gagr case B unsaturated

described in the introductory section. A point coordinator 1.5
node will receive transmissions of packets, each of them
having sensor data from different sources assembled into 1

transmission frames. According to [1] and [2], the frame 0.5

structure will be of the kind shown in Fig. 4.
The overhead due to each layer is outlined in Fig.4. The 0
10 15 20 25 30 35 40
application layer header is 6 Bytes long, consisting of a 16-bit N

Fig. 6. Goodput for point coordinator and devices for case A and aggregate
goodput for both cases (A and B) with saturated and unsaturated network.

Fig.6 shows the goodput for the point coordinator and

Fig. 4. Frame structure of a node that assembles sensor data collected from devices that report to it for the Case A scenario. To check the
different sources into a single packet.
NTMS'2009 3rd International Conf. on New Technologies, Mobility and Security, Cairo, Egypt, 20-23 Dec., 2009. 5

model further a second network cluster composition was may be concluded that it is more convenient that each cluster
conceived and tested. For case B, 20% of the N nodes in the may only contain a few point coordination FFD nodes.
cluster are of type r and 80% are type c nodes. Also, the Besides, in a case A unsaturated network the maximal
analytical model was checked whether it could be validated Goodput is not achieved for a small number nodes in the
for unsaturated conditions, in which case a 100 slot or 32 ms cluster, because the capacity of the channel is not completely
delay was introduced between any 2 new sequential packet used. As expected, for unsaturated conditions the Goodput is
transmissions. Fig. 6 also shows the aggregate goodput for less sensitive to the number of devices in the network.
Case A and B scenario, under saturated and unsaturated The coordinator node in both cases saturated and
conditions. Again, both models show consistent results. unsaturated experiences higher energy consumption since it
The average power utilization for each type of device is transmits packets from all the nodes that report to it,
computed by calculating the percentage of time each device assembling the relevant sensor data into one transmission
spends in transmission (Tx), receiving mode (Rx), idle and frame. Another important observation is the energy
sleeping state. When the device is performing a CCA it is in consumption reduction when the system is working in
Rx state, when it transmits a packet is in Tx state, when it unsaturated mode, because the number of collisions is less,
executes the delay backoff it is in idle state and when it is therefore reducing the need to perform the CCA repeatedly.
waiting for a new frame, it is in Sleep state. To calculate the
total energy spent , simply multiply the percentage of time VI. CONCLUSION
expended in each state by the amount power used in that state, In this paper, we have presented an analytical model for the
as it is shown in Table 1. medium access control layer in IEEE 802.15.4 standard. The
Fig.7 displays the outcome of the evaluation for both the main contribution is to have included heterogeneous packet
analytical and simulation model of the average power size of Not-Acknowledged (N-ACK) uplink traffic between
consumption by each type of device for the Case B cluster devices of a WSN network in saturated and unsaturated
composition of a saturated and an unsaturated condition. conditions. The validity of the analytical model is verified by
Notice that both models are in close agreement for the number means of simulations under different network conditions. The
of nodes varying from 10 to 40. analytical model can be used to evaluate the Goodput and
energy efficiency of the system and get some design
Pc no delay guidelines to make operate the system in a more efficient way.
Pe no delay It is shown that for saturated and unsaturated networks, a
Pava no delay
smaller number of point coordination nodes within a cluster
Avarage Power Consumption [mW]

Pc delay
Pe delay improve the Goodput achieved by the system.
Pava delay

[1] Wireless Medium Access Control (MAC) and Physical Layer (PHY)
6 specification for low-rate wireless personal area networks (LR-WPAN),
IEEE Std. 802.15.4 STD., 2003.
[2] ZigBee Alliance, ZigBee-2007 Specification, Oct. 2007
[3] G. Bianchi. “Performance Analysis of the IEEE 802.11 Distributed
Coordination Function”. IEEE Journal on Selected Areas in
10 15 20 25 30 35 40 Communications, vol.18, March 2000
[4] J. Misic, S. Shafi and V. B. Misic, “The Impact of MAC Parameters on
Fig. 7. The average power consumption by each type of device in case B for the Performance of 802.15.4 PAN”, Ad hoc Networks, vol. 3(5), pp. 509-
saturated and unsaturated conditions. 528, September 2005.
[5] T.R. Park, T.H. Kim, J.Y. Choi, S. Choi, and W.H. Kwon, “Throughput
and energy consumption analysis of IEEE 802.15.4 slotted CSMA/CA”,
V. RESULTS ANALYSIS Electronics Letters, September, 2005.
[6] S. Pollin, M. Ergen, S. C. Ergen, B. Bougard, L. Van der Perre, I. Moer
Results from Fig. 5 to Fig.7 show that the analytical model man , F. Catthoor, A. Bahai, P. Varaiya, “Performance Analysis of
developed to compute goodput and energy consumption for a Slotted Carrier Sense IEEE 802.15.4 Medium Access Layer”, IEEE
Globecom 2006.
cluster network experiencing no interference from adjacent [7] S. Pollin, M. Ergen, S. C. Ergen, B. Bougard, L. Van der Perre, I.
networks with heterogeneous nodes actually is in agreement Moerman , F. Catthoor, A. Bahai, P. Varaiya , “Performance Analysis of
with the simulation model run, under different network Slotted Carrier Sense IEEE 802.15.4 Acknowledged Uplink
Transmissions”, IEEE WCNC 2008 March 31-April 3, 2008 pp. 1559 -
conditions (saturated, unsaturated, network constituency of 1564.
nodes sending long and short packets)
The analytic model makes it possible to determine some
important performance metrics. As it is shown in Fig. 6, the
Goodput reached by the system in the case B is greater than
the one reached in the case A, in saturated and unsaturated
conditions. This is to be expected, since in Case B a higher
percentage of nodes transmits smaller packets. Therefore it