Rational Exchange – A Formal Model Based on Game Theory

Stimulation for Cooperation in Ad Hoc Networks:
Beyond Nuglets
Levente Buttyán, Jean-Pierre Hubaux, and Naouel Ben Salem
Swiss Federal Institute of Technology – Lausanne
Laboratory of Computer Communications and Applications
EPFL-I&C-LCA, CH-1015 Lausanne, Switzerland
{Levente.Buttyan, Naouel.BenSalem, Jean-Pierre.Hubaux}@epfl.ch
Motivation and goal
Ad hoc networks
•
•
•
no infrastructure
all networking services are provided by the nodes themselves
cooperation is essential
Problem
•
•
•
assume that nodes don’t belong to a single authority
there’s no good reason to cooperate
nodes tend to be selfish
Example
if the average number of hops from source to destination is ~5
 ~80 % of the energy is devoted to packet forwarding
 temptation to deny packet forwarding is strong
Our goal: to design a mechanism that stimulates cooperation
(packet forwarding)
2
Related work
 Mitigating Routing Misbehavior in Mobile Ad Hoc Networks,
by Marti, Giuli, Lai, and Baker (Stanford), Mobicom 2000
 Performance Analysis of the CONFIDANT Protocol:
Cooperation Of Nodes - Fairness In Distributed Ad-hoc
NeTworks, by Buchegger and Le Boudec. MobiHOC 2002
 CORE: A Collaborative Reputation Mechanism to enforce
node cooperation in Mobile Ad hoc Networks,
by Michiardi and Molva
 Sprite: A Simple, Cheat-Proof, Credit-Based System for
Mobile Ad-hoc Networks,
by Zhong, Yang and Chen
3
Related work
 Enforcing Service Availability in Mobile Ad Hoc WANs,
by Buttyán and Hubaux (EPFL), MobiHOC 2000
 nuglets (virtual currency)
 Packet Purse Model:
• source pays by loading nuglets in the packet before sending it
• forwarding nodes acquire nuglets from the packet when forwarding it
+ intuitive, imitates real life
– it is difficult to estimate the amount of nuglets to be loaded in
the packet purse, and ...
– to control the amount of nuglets that forwarding nodes can take
from it
4
Proposed stimulation mechanism
Each node has a credit counter c, and
1. when sending an own packet
– the number n of needed intermediate forwarding nodes is estimated
– if c < n, then the packet cannot be sent
– otherwise, the packet can be sent, in which case c is decreased by n
2. when forwarding a packet
– c is increased by 1
+ Protection that ensures that
– the user cannot manipulate the credit counter
– the user cannot tamper with the above mechanism
(but she can decide to drop a packet before the mechanism is called !)
– c is increased only if the packet has indeed been forwarded
•
We propose a protection mechanism that is based on a tamper
resistant hardware module in each node
5
Single node model (basic)
B, C, N
INo
b,c
INf
DRP = DRPo + DRPf
OUT = OUTo + OUTf
B – initial battery level
C – initial credit level
N – constant charge
b – battery
c – credit counter
outo – own packets sent
(during whole lifetime)
outf – forwarding packets sent
(during whole lifetime)
Selfishness:
maximize outo subject to
(1)
(2)
(3)
outo, outf
 0
N outo – outf  C
outo + outf = B
6
Single node model (extended)
- own packets are generated at rate ro
- forwarding packets arrive at rate rf
- no buffering (if an own packet cannot be sent due to the low level
of the credit counter, then it is dropped)
tend – time when the battery is drained out (not a constant! )
zo = outo / ro tend – fraction of own packets sent
Selfishness:
maximize outo and zo subject to
(1)
(2)
(3)
(4)
(5)
outo, outf  0
outo  ro tend
outf  rf tend
N outo – outf  C
outo + outf = B
7
Forwarding rules
If f = (NB – C)/(N + 1) then drop else
– rule 1: always forward
– rule 2: if c  C then forward else forward with prob C /c
– rule 3: if c  C then forward else drop
– rule 4: if c  C then forward with prob c /C else drop
where f is the number of packets forwarded so far and c is the current
credit level
Prfwd(c)
1
rule 1
C
Prfwd(c)
1
c
rule 3
C
Prfwd(c)
1
c
rule 2
C
c
rule 4
Prfwd(c)
1
C
c
8
Comparison of forwarding rules (1)
Simulation parameters
B = 100000 ro = 0.2 pkt/s
C = 100
rf = 0.6 … 1.6 pkt/s
N=5
Simulation results
outo = 16683 = (B + C )/(N + 1)
9
Comparison of forwarding rules (2)
Simulation parameters
space
number of nodes
power range
mobility model
speed
avg. pause time
500 m x 500 m
100
120 m
random waypoint
1 m/s – 3 m/s
60 s
pkt generation rate
choice of pkt. dest.
routing
initial credits
credit sync interval
simulation time
0.2 (0.5, 0.8) pkt/s
random
geodesic pkt fwding
100
5 (10, 15, 20) s
7200 s
Simulation results
10
Throughput
The effect of less cooperative nodes (rule 3) on the total cumulative throughput
11
Conclusion
•
•
•
We proposed a mechanism to stimulate the nodes of an ad hoc
network for packet forwarding
Our approach is based on a credit counter and enforcement of some
simple rules in each node (tamper resistant hardware)
We showed that the mechanism is effective assuming the following:
– each node generates packets continuously
– own packets are not buffered (they must be sent immediately or dropped)
– selfishness is represented by the goal of dropping as few own packets as
possible
Future work
•
•
•
•
Weakening the above assumptions
Application to other network functions (not only packet fwding)
Application in higher layers (e.g., peer-to-peer systems)
Application in hybrid (multi hop cellular) networks
12