A protocol for the moderation of non

A protocol for the moderation of non-cooperative nodes in wireless
local area networks
Martı́n López and Fernando Paganini
Universidad ORT Uruguay
Abstract— MAC protocols for wireless networks such as
802.11 have been designed with a cooperative philosophy,
that requires nodes to back off in the presence of collisions.
What happens if a node deviates from this backoff rule
and accesses the channel aggressively? If the rest complies
with the standard, the misbehaving node receives a higher
share of the channel. This creates incentives to misbehave,
but if all were to do so the network would degrade into
generalized collisions.
This paper proposes a method by which a wireless
access point can moderate non-cooperative nodes to a fair
and efficient channel usage, eliminating incentives to act
aggressively. The method is based on imposing wait-states
to each node after a successful transmission; its parameters
are designed based on a Markov chain analysis. We then
develop a packet implementation in ns2, and use it to
validate the properties of our alternative MAC protocol.
I. INTRODUCTION
Wireless local area networks rely on multiple access control (MAC) protocols to arbitrate the access
of different nodes to the common telecommunications
medium. Prevailing MAC mechanisms are based on
random access and a backoff mechanism to handle
collisions, making nodes reduce their channel usage in
the case of high contention. For instance, IEEE 802.11
employs a backoff window that controls the number
of wait states before reattempting transmission, and is
increased upon successive collisions (see [?]).
The above mechanism is cooperative: a node running
this protocol is willing to withhold from transmitting
for the “common good” of the network. Now consider
a non-cooperative and sophisticated user that is able to
tamper with the MAC layer protocol. By ignoring the
backoff mechanism followed by the rest, the misbehaving node acquires a high bandwidth, pushing the rest out
of the network: indeed, the other nodes would only see
collisions and thus wait for increasing periods of time,
during which the selfish user can transmit successfully.
Thus, selfish incentives go in the way of aggressive
access with no backoff. Now, if two or more users follow
these incentives then collisions become permanent and
nobody obtains any throughput.
This is an instance of the “tragedy of the commons”
[?], in which greedy use of a common resource results in
performance degradation for all. From the point of view
Cuareim
1451,
Montevideo,
Uruguay.
Email:
{lopez ma,paganini}@ort.edu.uy. This work was supported by
PDT-Uruguay, project S/C/IF/54/119, and by AFOSR-US, grant
FA9550-06-1-0511
of non-cooperative game theory [?], there is a single
equilibrium from which no player has an individual
incentive to deviate, but where nobody receives any
benefit. In Section II we elaborate on this phenomenon,
thus motivating the use of a moderation mechanism to
alter the incentives of the nodes in such a way that the
optimal cooperative point becomes the equilibrium. In a
wireless infrastructured network, the natural moderator
is the access point (AP). The AP can discard packets
of a node deemed too aggressive; we propose to impose
wait states to the owner of a successful transmission, the
wait increasing with the level of collisions preceding
this transmission. We argue qualitatively why this can
remove the non-cooperative incentives.
In Section III we turn to modeling to characterize
selfish user behavior under this moderator scheme. We
develop a Markov chain model of each node, with
wait and transmission states, and where nodes choose
a persistence probability in the latter. The model is used
to compute the success probability of the node as a
function of its own, and others’ strategies, from where
an incentive-compatible protocol is designed. Finally, an
additional moderator parameter is introduced to match
the equilibrium throughput of the cooperative case.
In Section IV we develop a packet implementation
of our protocol based on the standard ns2 simulator, by
modifying existing implementations of the 802.11 standard. Our simulations verify that the protocol behaves as
predicted by the model, in particular that it reaches the
desired equilibrium points, and that nodes that deviate
from it are penalized in throughput.
Conclusions are given in Section ??.
II. MOTIVATION AND PROPOSAL
The most common wireless networks are composed of
a station that has a wireless and wired interface (AP),
and many stations with wireless interfaces only (nodes).
These are referred to in the IEEE 802.11 standard as
infra-structured wireless networks [?]. Here nodes do not
communicate with each other, they exchange information through the AP, which also acts as a gateway to the
Internet, implements security policies, synchronization
tasks, and so on. The AP is configured and maintained
by a network operator that can be assumed to act in the
common interest, seeking in particular a fair allocation
of resources among user nodes. These, however, may
have selfish objectives, and it is increasingly feasible
that could install a software patch to circumvent some
of the cooperative features of the 802.11 protocol. As
argued in the introduction, such aggressive behavior on
the part of one user can lead to very unfair system usage,
and if generalized leads to a degraded network for all.
We now elaborate more on the game-theoretic perspective (see, e.g. [?]) applied to this problem. At the
most elementary level, consider the allocation of a single
time-slot: each node can be thought as playing a game
with two moves: access the channel (A) or wait (W).
The payoff is 1 if the player is the only one to access,
and 0 if it waits or if more than one node chooses to
access. In the two-player case, this elementary game is
characterized by the following payoff matrix.
A
W
A
(0,0)
(0,1)
W
(1,0)
(0,0)
A simple analysis of the alternatives shows that (A) is
a dominant strategy for this non-cooperative game. In
other words, no matter what the other player does, I
am no worse by accessing the channel that by waiting.
But then the dominant strategy equilibrium (and hence,
the Nash equilibrium) is with all players accessing the
channel and receiving no throughput.
A random access method in which the access decision is taken by the nodes based on the “persistence
probability” pi for each node i, is in the game theory
language equivalent to playing the above game with
mixed strategies. In this case, the success probability
(expected payoff measured in time slots) for user i is
Y
(1)
PiS = pi (1 − pj ).
Can we give incentives for selfish users to choose a
cooperative p? In [?], a method based on pricing is used
to moderate this “random access game”. Modeling the
problem through a node utility function that includes
a penalty term, the AP can charge the users to make
the cooperative point desirable. The difficulty with such
proposals from a practical standpoint is that they require
an out-of-network mechanism for charging users, and
thus enforce cooperation. In this paper we address the
question of whether the AP can enforce an “in-network”
procedure that directly penalizes aggressive nodes by
reducing their throughput, creating incentives for the
desired equilibrium to emerge from selfish behavior.
A. Throughput Penalization Method
We would like to enforce a waiting period for each
node after a successful transmission, the amount of this
wait regulated by the the level of contention of the
channel. The AP can enforce this by discarding packets
it receives before the correct waiting time. The nodes
must be aware that this mechanism is in place, and be
able to infer when their packets will be forwarded, so as
to remove any incentive for them to access out of turn.
Further, they should be penalized if they do so.
Establishing wait states does not mean we go to
a completely scheduled network. We will retain the
random access component among nodes who are not
waiting, so we must still create incentives for these
nodes to moderate their access probability when in the
transmission mode. The idea is to make the assigned
waiting a function of the aggressiveness of the player,
measured by the collisions it causes. It is, however, not
easy to tell who caused collisions, since such packets are
typically unreadable. An indirect way is the following:
j6=i
After a successful transmission, the corresponding node is assigned a waiting period equal to
the number of collisions that were observed in
the network between this successful transmission
and the one before.
Two consequences of the above expression are:
• Under fixed pj it is still advantageous for node i
to choose pi = 1 (always access). Therefore (A)
is still a dominant strategy for this non-cooperative
game: mixing does not fix our problem.
• If, somehow, users are cooperative and choose a
common value pi ≡ p to maximize the common
payoff, a simple calculation based on (1) implies
that the optimal p = N1 , where N is the number of
nodes, and the payoff is
N −1
1
1
PS =
1−
.
(2)
N
N
Later on we describe a practical implementation of
this mechanism. The motivation behind the above is the
following: statistically, the node more likely to succeed
is the more aggressive one among the nodes contending
for the channel. This is then the node most responsible
for the collisions immediately preceding this success.
So, by assigning a wait proportional to these collisions,
the more aggressive nodes are required to wait more.
For large N , we have P S ≈ N1e and the aggregate
throughput is approximately 1/e.
In summary, nodes are better off if they all cooperate and use a moderate access probability, but given
cooperation of the other N − 1 nodes, a selfish node
has the incentive to access the channel aggressively;
this behavior, when generalized, destroys everybody’s
performance.
B. Wait Is A Dominating Strategy
Note that while the AP can refuse to forward packets
of a certain user determined to be in the wait mode, it
cannot directly prevent the user from trying to access,
possibly collisioning others. So, the user must have
selfish incentives to stay out when assigned the wait
mode by the AP: waiting must be a dominant strategy
for the user.
This is the case for the following reason: clearly a
player accessing out of turn receives no positive payoff,
since the AP discards its packet. Furthermore, there is a
chance this access would cause a collision with another
player who would have otherwise succeeded; this means
the time required for the next success is delayed, and
then the aggressive player would have to wait more to
come out of the wait state, reducing its throughput.
In summary, if the player knows when it is in wait
state, it has selfish incentives not to access the channel.
C. Implementation
The players and the moderator can transmit and
receive, as in the IEEE 802.11 standard. Time is divided
in slots, which may be idle, occupied by a collision or
a successful transmission. We assume they are within
listening range of each other, so that each player can
listen to all transmitted packets and recognize a collision,
even without its own participation.
The moderator (AP) has a list of the size of the
number players, which specifies for each node whether
it is in transmission mode or in wait mode, and in the
latter case includes a wait counter. DATA frames from
players in transmission mode are forwarded, otherwise
they are dropped.
The moderator also has a collision counter, that measures the number of collisions since the last successful
transmission. After a successful transmission:
• If the collision counter is not at zero, the successful
node will be changed from transmission mode to
waiting mode, and assigned a wait counter equal
to the current value of the collision counter.
• The collision counter is reset to zero.
• The wait counters of the remaining waiting nodes
are decremented.
• If one of the wait counters reaches zero, the corresponding player is changed to transmission mode.
Each player knows its initial condition in the game,
and can track from the observed collisions the evolution
of the collision counter, and from the successful transmissions (confirmed by ACK packets) it can keep track
of its own wait counter. Hence it knows when it is allowed to transmit. Alternatively, the AP could advertise
with ACKs which nodes are allowed in the transmission
mode. When in this mode, a node will access the channel
with a probability of its own choosing, that it can adjust
to obtain the most throughput from the system.
Remark: There is an arbitrary choice being made in
the above mechanism: to make the number of wait states
equal to the number of preceding collisions, instead of
another increasing function of this quantity. Any such
function would create incentives for individual restraint,
but the resulting equilibria may be different. We will
stick to the above rule for simplicity, but later on we
introduce an additional “knob” that regulates the transfer
between wait and transmission modes, to make the
equilibrium more efficient.
III. MODELING AND DESIGN PARAMETERS
In this section we will apply mathematical modeling
to analyze the mechanism and formalize it as a game.
We consider a fixed number of players, N , which always
have a DATA frame to transmit. Time is discrete and
synchronized between nodes. A time slot includes a
complete transmission and its confirmation, or a collision as the case may be. The following notation is
introduced:
• t represents discrete time.
• i, j, k,... represent the players (wireless nodes).
• si is the conditional access probability of player i,
conditioned on being in the transmission mode.
• s := (si )i∈N .
• s−i := (si )i∈N/{i} . Note: s := (si , s−i ).
T
• πi is the probability that node i is in the transmission mode. It depends on both si and s−i .
• pi is the unconditional access probability of player
i. Thus pi = si πiT .
• q−i is the probability that one or more players,
different from player i, access the wireless medium.
• r−i is the probability that only one player, different
from player i, accesses the wireless medium.
A. Game Formalization
The players’ strategy space is defined by an access
probability for the channel, similar to the random access
game in [?]. We distinguish, however, the transmission
mode in which si is employed, and the wait mode.
For the latter, as argued before, the dominant strategy
is not to access; consequently, rather than include an
access probability in that mode and then eliminate it
as dominated, we will model the reduced game where
players only access the channel when they have a chance
to succeed. So the strategy set for user i is si ∈ [0, 1].
The payoff of the game is the throughput ui =
thp(s), which is proportional to the probability of a
successful transmission. Determining this function is
quite involved, since it depends on an analysis of the
different states of all players. This analysis is now
considered.
B. Throughput Analysis
We will use a Markov chain model for a single player,
in which the state is its wait counter when on wait mode,
and the collision counter when on transmission mode.
Through the study of its stationary distribution we will
obtain an expression for the success probability.
Strictly speaking, the Markov chain would apply
jointly to all nodes; indeed, there can be complex
dependencies between their states, for instance with
nodes showing some tendency to take turns between
the transmission and wait modes. For simplicity we
carry out an approximate analysis in which we assume
independence; the approximation should improve as the
number of nodes grows. Similar kinds of assumptions
were made in the analysis of 802.11 protocols of [?].
1-(sq + (1-s)(q-r))
0
r
v
(1-r)
s(1-q)
-1
(1-s)r
1
(1-s)r
(1-s)(1-q)
(1-s)(1-q)
(1-r)
s(1-q)
-i + 1
i-1
(1-s)r
v := sq + (1-s)(q-r)
r
(1-r)
s(1-q)
-i
i
(1-s)(1-q)
Fig. 1.
Markov Chain model of the game.
As the model is applied individually to each player,
to shorten the notation we will drop the sub-indices; so
we will write s, q, r instead of si , q−i , r−i respectively.
We define a discrete time Markov chain with statespace equal to the integers Z. The non-negative integer
states are used to represent the transmission mode; here
the state x(t) ≥ 0 represents the value of the collision
counter when on transmission mode. The negative part
of the state-space models the wait mode: x(t) < 0 means
the the node must wait −x(t) successful transmissions
from others before its packets can be forwarded.
The state-space, and transition probabilities of our
Markov chain are represented in Figure 1.
We obtain the stationary distribution of this chain,
πn = limt→∞ P {x(t) = n}, n ∈ Z. For this we study
the balance equations in a similar way to [?], leading
after many calculations to these results:
πn = β n π0 ∀n ∈ Z+ ∪ {0}
s(1 − q) β n
π0 ∀n ∈ Z−
πn =
r
1−β
r(1 − β)2
π0 =
r(1 − β) + s(1 − q)β
sq + (1 − s)(q − r)
,
where β(s, q, r) :=
1 − (1 − s)(1 − q)
(3)
The throughput in stationary conditions is proportional to the successful transmission probability:
PS =
s(1 − q)r(1 − β)
.
r(1 − β) + s(1 − q)β
(4)
C. Gradient Play
How do players choose their strategy to obtain as
much throughput as possible? We remark that the game
is of incomplete information: while each player can
measure collisions and successful transmissions from the
rest of the players, it does not have direct knowledge of
the other player actions s−i and payoffs. Situations of
this kind motivate the use of learning or dynamic games,
in which play is repeated over time and strategies are
adjusted in response to observations.
A player who changes its si provokes a avalanche
of effects; even if the others’s strategy s−i remains
constant, their effective access probabilities p−i will
change and through them q−i and r−i ; this makes it
difficult to evaluate the “best response” choice of si .
Nevertheless, if we consider small perturbations of si ,
then the effect on q−i and r−i is negligible, and we
can use the earlier analysis to infer in which direction
to si should be moved for increased throughput. This
motivates us to consider gradient play [?] as a control
mechanism, in which the conditional access probability
si is slowly perturbed in the direction determined by the
gradient of P S in (4), with constant q−i and r−i .
It may seem contradictory to impose a certain update algorithm on a possibly non-cooperative player.
The rationale is the following: we are developing an
algorithm that could be built into the wireless network
protocol, and if left to run will reach the cooperative
equilibrium; the main feature is that with this mechanism
a user should have no incentive to deviate from the preprogrammed protocol. Indeed, in the simulation studies
below we will verify that such a node is penalized in
throughput.
D. Model Upgrade
As remarked in the previous section, the mechanism
modeled above has an arbitrary choice: the wait counter
is initialized at the current value of the collision counter,
when it could in principle have been chosen as any
increasing function of this value. The complexity of the
Markov model is an incentive to keep this simplifying
feature. Experiments with the above model showed
that although equilibria had some degree of moderation
(access probabilities less than 1), these could be far from
optimal.
This motivated us to introduce a stochastic tuning
of the number of wait states, through the modification
shown in Figure 2. Transition probabilities of the final
wait state before entering transmission are modified with
an additional parameter pM .
This can be implemented in the following way: after
a successful transmission, wait counters that carry the
value 1 are decremented to zero with probability (1 −
pM ). To communicate to the players the information
of allowed access, we can use a flag in the ACK that
confirms the transition was carried out.
How is pM set? Through a modification to our model
we found that the corresponding success probability is
PS =
s(1−q)(1−pM )r(1−β)
r(1−pM )(1−β)+s(1−q)β((2−pM −β)β+(1−β)2 )
(5)
r(1 − pM )
0
(1 − r(1 − pM ))
when colliding, node i doesn’t know whether it collided
with one or more competitors. We can, however, write
the following expression relating both probabilities.
′
r−i
= r−i (1 − si )πiT + r−i (1 − πiT )
′
r−i
⇒ r−i =
,
1 − si πiT
-1
where the probability πiT can be estimated by
Fig. 2.
πiT ≈
Modification of the penalization method.
We can then infer the value of pM that corresponds
to the maximum success probability P S in the case of
symmetric players. This involves an off-line calculation,
omitted here, from which one obtains a table of values
of pM as a function of the number of players N .
IV. PACKET IMPLEMENTATION AND
SIMULATIONS
We made modifications to the ns-2 version 2.30
implementation of the IEEE 802.11 standard, to comply
with the rules of our protocol. Changes are now detailed,
distinguished between the AP and network nodes.
To comply with the moderator role, the AP manages
two registers for each node in the wireless network: a
boolean one to register the transmission mode of the
node, and the integer wait counter. It also has a general
variable to implement the collision counter. The pM
parameter is tabulated as explained above, and used for
a random draw that determines whether players in the
“wait 1” state are allowed into transmission. A bit in the
ACK message notifies the result of this draw.
Each player (wireless node) is equipped with new
variables to follow the state assigned to it in the AP
and to measure parameters of the game. The node has
a parallel set of variables to those assigned to it by
the AP. It also estimates the parameter pM by counting
the marks in ACK packets. Another set of variables are
allocated to estimate q−i and r−i . By measuring the
channel over a long enough period, we count:
C
• The number S
of collision slots observed.
su
• The number S−i of slots in which another player
transmitted successfully.
• The total number of slots Sall during the period.
Since, when another player transmits, it either participates in a collision or is successful, we can estimate the
parameter q−i (probability of access by others) by
q−i ≈
su
S c + S−i
Sall
By definition, r−i is the probability of transmission of
a single other node, which could either be successful
or collide with node i. The probability of another node
′
being successful, denoted by r−i
, can be estimated by
su
S−i /Sall ; but the second is harder to measure, since
ST
,
Sall
(6)
where ST is the number of slots where player i finds
itself in transmission mode. From here the node can infer
the value of r−i .
An additional issue to discuss are aspects of IEEE
802.11 protocol that are not contemplated in our model:
first, the existence of non-DATA packets that implement
other functionalities of the network, and occupy channel
time. Second, the fact that not all events last the same
amount of time: there is a basic time-slot TS in which the
idle channel is divided, but if successful transmissions
or collisions occur the channel is captured for a much
longer period.
To address these issues we included a dead time
variable TD , in which nodes count the time spent in
non-DATA packets, or the extra time (beyond one basic
slot TS ) spend in transmitting a frame. By removing this
dead-time, the numbers of slots counted by each node
correspond only to events in our Markov chain model. In
other words, we are mapping the real network in which
state transition events are not equally spaced, to a new
time axis in which they are.
This modification is useful in matching our network
to the model, however some imperfections remain: one,
if a non-DATA packet takes part in a collision, it
will inevitably be counted within S C since the node
cannot tell its nature. Two, while the success probability
formulas (4) or (5) are meaningful among the considered
slots, they are not directly mapped to throughput as
before, since successes and failures have different length
of time. In the simulations below, we will plot the actual
throughput variables to verify the performance at this
level.
A. Simulation Results
We built a network topology that consisted of a sink
node, wired to the AP, and a set of wireless nodes, near
enough to hear the transmissions of each other and of
the AP. The wireless nodes are data sources, and every
DATA frame is sent to the wired node via the AP. The
connection between the AP an the sink node is of 100
Mbps, while in the wireless medium the basic rate is of
1 Mbps and the data rate of 11 Mbps.
We present two sets of simulation results. The first
illustrates the convergence of our algorithm for different
numbers of players. In Figure ?? we show graphs of the
0.7
0.4
0.6
0.3
0.5
0.2
0.4
0.1
0.3
0
50
150
time (s)
250
0.4
0.8
0.3
pi
1.0
0.6
150
time (s)
250
0.2
150
time (s)
0
250
0.25
0.8
0.20
0.6
0.15
si
pi
1.0
0.4
0.10
0.2
0.05
0
0
50
150
time (s)
250
50
150
time (s)
0.8
150
time (s)
150
time (s)
250
1.2
0.8
0.4
50
150
time (s)
250
50
150
time (s)
250
0.64
0.48
0.32
0.16
0
i
s
0.4
0.2
0
50
150
250
Time (s)
0.64
0.48
0.32
0.16
50
100
150
Time (s)
200
250
250
0.80
50
0.6
Fig. 4. The game simulation with player i misbehaving, with si = 1.
50
0
250
Throughput (Mbps)
50
0.8
0
1.6
1.6
0.1
0.4
0.2
50
2.4
0
Throughput (Mbps)
i
s
i
s
3.2
Throughput (Mbps)
0.5
pi
0.8
1.0
Throughput (Mbps)
time evolution of the strategies si , the resulting access
probabilities pi , and the throughputs, for the situation
of 3, 7 and 17 nodes playing the game as described in
the previous section, with gradient updates of si . Each
player chooses a new si every 0.3(1 + rand) seconds,
the rand term was included for desynchronizing, and the
step size is |∆si | = 5×10−5 . We verify the convergence
of the algorithm, and the steady-state access probabilities
pi are approximately equal to the optimal cooperative
value N1 , the concordance improving as N grows.
Fig. 3. si , pi and throughput for N = 3, 7, 17. The horizontal line
in the pi graphs marks the cooperative point 1/N .
The second simulation presents a situation where
one of the players does not follow the gradient play
dynamics, and instead takes a greedy approach, selecting
si = 1 which means it always transmits when in the
transmission mode. Of course, it would be even more
aggressive to transmit regardless of the mode, but that
just leads to heavy collisions and no throughput for the
node: any packets that don’t collide will be discarded by
the AP. As discussed in Section II-B, we can assume this
dominated strategy is recognized by the user, so nodes
abstain from transmitting when they are in wait mode.
It is less obvious that there are no benefits from
being aggressive when on transmission mode. This is
the situation we explored in the simulations shown in
Figure ??: one node uses si = 1 and the rest follow
our gradient based protocol. The results show that the
aggressive node is actually hurt in throughput; this
confirms that our protocol is behaving as intended: it has
eliminated the incentives to choose a non-cooperative
access probability.
V. CONCLUSIONS
In this paper we addressed a problem in multiple
access control of wireless networks, for which protocols
stipulate cooperative rules, but provide no incentives for
nodes to adhere to them. In the presence of selfish users,
this can lead to unfairness or worse, a general degradation in performance, “the tragedy of the commons”.
We have presented a solution to this problem based
on the access point playing the role of a moderator
of the non-cooperative game, by deciding whether or
not to forward packets in a way that creates incentives
for a cooperative equilibrium to emerge. The game
was analyzed through a discrete Markov chain model,
where stationary calculations approximate the steady
state behavior, from which a gradient play procedure
was constructed, leading to an efficient equilibrium.
The proposal was implemented at the packet level
in ns-2, and tested in two main scenarios: with or
without misbehaving players. The performance matched
our expectations; the throughput reached the value of the
cooperative solution and it was the same for all players
which obeyed the protocol rules.
ACKNOWLEDGMENT
We thank Andrés Ferragut of ORT University for
several stimulating discussions on the Markov chain
model. These discussions have influenced much of the
work in this paper.
R EFERENCES
[1] P802.11, IEEE Standard for Wireless LAN Medium Access Control (MAC) and Phisical Layer (PHY) Specifications, November
1999.
[2] L. Chen, T. Cui, S. H. Low, and J.C. Doyle, “A Game-Theoretic
Model for Medium Access Control” in Proc. of International
Wireless Internet Conference (WICON), Austin, TX, Oct 2007
[3] G. Hardin, ”The Tragedy of the Commons”, Science, Vol. 162,
No. 3859 (1968), pp. 1243-1248.
[4] M. Osborne, A. Rubinstein, A Course in Game Theory, MIT
Press, 1994.
[5] G. Bianchi, “Peformance Analysis of the IEEE 802.11 distributed
coordination fucntion” in IEEE Journal on Selected Areas in
Communications, 18(3):535-547, March 2000.
[6] S. D. Flam, “Equilibrium, evolutionary stability and gradient
dynamics”, in Int. Game Theory Rev., 4(4):357-370, 2002.