Channel Access Protocols For Ad Hoc Networks: Instructor: Carlos Pomalaza-Ráez Fall 2003 University of Oulu, Finland
Channel Access Protocols For Ad Hoc Networks: Instructor: Carlos Pomalaza-Ráez Fall 2003 University of Oulu, Finland
for
Ad Hoc Networks
Fall 2003
University of Oulu, Finland
Media Access Control (MAC)
• Protocols that enable multiple users to share a
finite amount of frequency and time resources
• Needed for efficient operation and good
performance for wireless systems
• An important goal is to minimize overhead while
maximizing overall network capacity
• Ad Hoc networks have no pre-existing
infrastructure or centralized administration, e.g.
base stations, and as such they require distributed
MAC protocols
Wireless MAC issues
Half-duplex operation
Time varying channel
• reflection received signal
multipath
• diffraction power varies as
fading
• scattering function of time
A B C
Hidden node
• A is transmitting to B
• C is out of range of A and is unaware of the transmission
• If C transmits to B it will cause a collision at B
A B C D
Exposed node
• B is transmitting to A
• C wants to transmit to D
• C senses transmission & declines even if its transmission
will not cause any collision at A
Capture Problem
If A and C transmit
simultaneously to B then
the signal power of C,
received at B, is higher than
dAB
A B dCB the one from A (because
dCB < dAB) and there is a
C
good probability that C’s
signal can be correctly
decoded in the presence of
D A’s transmission
This capture of C’s signal can improve protocol performance, but it results
in unfair sharing of the channel with preference given to nodes closer to the
receiver. Wireless MAC protocols need to ensure fairness under such
conditions
Classification of MAC Protocols
Wireless MAC protocols can be classified into two categories,
distributed and centralized, according of the type of network architecture
for which they have been designed. Protocols can be further classified,
based on the mode of operation, into random access protocols,
guaranteed access protocols, and hybrid access protocols
Distributed Centralized
MAC protocols MAC protocols
NAV(DATA)
NAV(CTS)
Others NAV(RTS)
NAV- Network Allocation Vector
1
Distributed Foundation Wireless MAC
To give preference to a stations trying to send and ACK
different waiting intervals are specified:
DIFS (distributed inter frame space) → a node must
sense channel idle for DIFS interval before making an
RTS attempt
SIFS (short inter frame space) → a node has to sense
channel idle for SIFS before sending an ACK.
SIFS < DIFS
NAV (Network Allocation Vector): Packets contain
time field (NAV) to indicate duration of current
transmission.
All nodes that hear RTS/CTS back off NAV amount
(time) before sensing the channel.
1
Performance Analysis of 802.11 DCF
Assumptions
Fixed number of stations, each always having a packet available for
transmission (saturation condition)
Each packet needs to wait for random backoff time before transmitting
Constant & independent collision probability for each transmitted packet
Ideal channel condition (no hidden terminals and capture)
Notation
b(t) = stochastic process representing the backoff time counter
CWmin = minimum contention window = W
m = maximum backoff stage → CWmax = 2mW
Wi = 2iW, where i (0,m) is called “backoff stage”
s(t) = stochastic process representing the backoff stage at time t
p = probability of each transmitted packet being collided
1
802.11 DCF Example
{s(t0),b(t0)} = {0,3} {s(t9),b(t9)} = {1,7}
SIFS SIFS DIFS
DIFS BO=5
Station A BO=3 BO=4 BO=7
RTS DATA RTS Busy channel
t0 t1 t2 t3 t4 …... t8 t9
Station B CTS ACK
collision
DIFS BO=4 DIFS
Others BO=7 Busy channel NAV(RTS) BO=4 RTS BO=2 RTS
ACK Busy channel NAV(CTS)
Station A has a packet to transmit to station B. At the end of the ACK station A waits for a
DIFS and then chooses a backoff time equal to 3 before sending an RTS to station B. Another
station also waits for a DIFS and chooses a backoff time equal to 7. At t 3 station A initiates the
RTS/CTS transaction with station B. The station that had a backoff time of 7 “freezes” its timer
until the channel is idle again. After B’s ACK station A has another packet to transmit and this
time it chooses a backoff time of 4 which brings it to a collision condition with the station that
had resumed its counter. Because of the collision station A increments its contention window
size and chooses a backoff time of 7.
1
802.11 DCF - Markov Chain Model
A bi-dimensional process model {s(t),b(t)} can be used (*) which leads
to a discrete-time Markov chain model with the following transition
probabilities:
1
i,k+1 i,k
This equations accounts for the fact that, at the beginning of each slot
time, the backoff time is decremented as long as the counter has not
reached zero and that the channel has been sensed idle for a mini-slot
Tx
Success
i,0
(1-p)/ W0
This equations accounts for the fact that a new packet following a
successful packet transmission starts with backoff stage 0, and that the
backoff is initially uniformly chosen in the range (0, W0 – 1)
1
802.11 DCF - Markov Chain Model
P{i,k | i-1, 0} = p/ W1 ; k (0, Wi – 1), i (1,m)
Tx
Collision
i-1,0
p/ Wi
(1-p)/ W0
m,0
p/ Wm
This equation models the fact that once the backoff stage reaches the
value m, it is not increased in subsequent packet transmissions
1
Steady State Probabilities
The stationary transition probability distribution π(i,k) is then
(i,0) p i (0,0) 0 i m
pm
(m,0) (0,0)
1 p
Wi k
(i, k ) (i,0) i (0, m), k (0, Wi 1)
Wi
π(0,0) is determined by using the normalization condition
m Wi 1
(i, k ) 1
i 0 k 0
from which
2(1 2 p )(1 p )
(0,0)
(1 2 p )(W 1) pW (1 (2 p) m )
1
Steady State Probabilities
The probability that a station transmits in a randomly chosen slot time can be
derived since any transmission occurs when the backoff time counter is zero
m
2(1 2 p )
(i,0)
i 0 (1 2 p )(W 1) pW (1 (2 p) m )
p 1 (1 ) n 1
From this two equations the values for p and τ can be found using
numerical techniques
1
Throughput
Let Ptr be the probability that there is at least one transmission in the
considered slot time, i.e.,
Ptr 1 (1 ) n
Ps Ptr E[ P ]
S
(1 Ptr ) Ptr PsTs Ptr (1 Ps )Tc
where
duration of an empty slot time
Ts average time the channel is sensed busy because of a successful transmission
Tc average time the channel is sensed busy by each station during a collision
For the basic access mechanism (no RTS/CTS transaction) the packet header is
H PHYhdr MAChdr
2
Throughput – Basic Access
SIFS DIFS
PHYhdr MAChdr PAYLOAD ACK
RTS SIFS CTS SIFS PHYhdr MAChdr PAYLOAD SIFS ACK DIFS
Tsuccess (RTS/CTS)
RTS DIFS
Tcollision (RTS/CTS)
2
Model Validation
The model is validated by comparing its results with those obtained
via simulation. The parameters used for the validation study are
summarized in the following table. A PHY layer using a FHSS
modulation system is assumed.
2
Model Validation- Simulation vs. Analysis
2
Channel Access (EY-NPMA)
Prioritization Contention phase Transmission phase
phase
Data Frame
ACK
Priority
Detection
Cycle Priority Survival
Synchronization Assertion Verification
Interval Interval
In the prioritization phase only the nodes with the highest channel access priority frame
are allowed to continue to the next phase
The contention phase has 2 sub-phases: elimination, and yield
In the elimination phase each node transmits for a random number of slots after which it
listen to the channel. If the channel is busy the node loses contention and waits for the
next cycle. If the channel is idle the node moves to the yield phase
In the yield phase the node listens to the channel for a random number of slots. If no
transmission is detected during this time, the node starts and completes its data
transmission
2
Channel Access (EY-NPMA)
For the prioritization phase each frame is assigned a priority level h (0, H-1).
Each node that has a frame with priority h senses the channel for the first h
prioritization slots. If the channel is idle during this interval, then the node transmits
a burst in the h + 1 slot and it is admitted to the contention phase, otherwise it stops
contending and waits for the next channel access cycle.
The yield phase consists of at most m yield slots. Each node listens to the channel
for a number D, 0≤ D ≤ m, of yield slots before beginning a transmission.
D has also a truncated geometric probability (1 p) p d 0 d m
distribution function, i.e., Pr{D d } m
p bm
2
Performance Analysis (EY-NPMA)
Analysis of the HIPERLAN MAC protocol via a mathematical model is very
difficult because of the complexity and level of interdependence of the various
processes that are involved. Therefore the analysis is carried out using simulation
models. For the study carried by Anastasi et. al. (*) the simulation model compared
the performance of the protocol with different arrival processes. The nodes have
infinite buffers and they contribute with the same offered load.
Poisson and ON/OFF processes are used. The ON/OFF period lengths are Weibull
distributed with α = 1 (Markov Modulated Markov Process) and α < 1.
Studies have shown that experimental data related to WWW applications
can be satisfactorily modeled by ON/OFF processes where the ON and
OFF time-lengths distributions are heavy tailed, e.g. Weibull, Pareto. The
Weibull probability distribution function of a random variable X is:
( x / )
P{ X x} 1 e ,x 0
3
Multi-Channel Assignment Approach
6 7
2
1
5
3 4 8
Set 1n … Set 2n
…
… …
……
……
n
Set 4n Set 3n
Node n joins
Nodes in 3n need not change their color since n will be assigned a new color
different from any color in 3n. To minimize the amount of recoding there is only
to recode the nodes in the set 1n U 2n U {n}
3
Recoding on Node Join
If the set of old colors in 1n U 2n is {C1, C2,…, Cm} and the number of nodes in 1n U 2n
with these corresponding colors is {K1, K2,…, Km}, then apart from recoding n, at least
m m
(K
i 1
i 1) K i m of the nodes in 1n 2 n
i 1
need to be recoded with different new colors to avoid conflicts into the new code
assignment after node n joins the network. To find out which nodes to chose for
recoding one can use the following approach(1).
Consider the undirected graph G’= (V1 U V2, E’) where,
V1 = 1n U 2n U {n}
V2 = {i : i Z+ & i ≤ max = maximum color constraint in the vicinity of 1n U 2n U {n} }
E = {(u,v) : u V1, v V2, u is not constrained to be newly colored with v}
“maximum color constraint in the vicinity of 1n U 2n U {n}” means the maximum
integer among all constraints due to 3n U 4n on nodes 1n U 2n U {n}, e.g. the set of old
colors in 3n U 4n forbidden to be assigned to nodes in 1n U 2n U {n} due to the
constraints CA1 and CA2, and all old colors in 1n U 2n . The edges in E are weighted;
edges (u,v), u 1n U 2n , v V2 where v is the old color assigned to node u are given a
weight of 3; all other edges have weight 1.
(1) I. Gupta, “Minimal CDMA Recoding Strategies in Power Controlled Ad-Hoc Wireless Networks,” Technical Report,
Dept. of Computer Science, Cornell University, 2001. 3
Recoding on Node Join (Example)
1n U 2n
2
H B
A 3
D
F 1
3 C
1
4n G
2
E 3
2
4n
A B 3
B
D
F 1
3 C
1 E
G 1n U 2n
3 2
1
E E
3 3
2 2
3 3
F 1
F
1
3 3
3 3
G 1 G
The final color (code) is (A,2), (B,4), (C,1), (D,3), (E,3), (F,1), and (G,2)
4
Recoding on Node Move (Pseudo Code)
0. Define 1n, 2n, 3n, and 4n, for the node n in its new position
1. Obtain the constraints (u, oldcolor (v)) of the from-neighbors u of n,
u 1n 2 n , v 1n 2 n {n}
2. Obtain the constraints (n, oldcolor (v)) for n,v 1n 2 n
3. Let max = maximum color seen in these constraints on old colors in 1 n U 2n
4. Let V1 = 1n U 2n U {n}, V2 = (1,2,…,max}
Build the bipartite graph G’ by joining edges from each vertex v in V1 to each color
k in V2 that it can be assigned without conflicting with the constraints with any of
the nodes not in 1n U 2n U {n}
Assign a weight of 3 to the edge if it connects to the old color assigned to v,
otherwise assign it a weight of 1
5. Run the bipartite matching algorithm on G’
6. For each edge v in V1 that is matched to some edge k in V2 assign k as the new
color. For all the remaining m vertexes in V1 not assigned a color assigned
them the colors max + 1, …, max + m
7. Transmit this information to all concerned nodes and coordinate on when to
change colors 4