Topic 4: Incentive Techniques N. Ben Salem and J.-P. Hubaux Related Work Selfishness in ad hoc networks • S. Marti, T.J. Giuli, K. Lai, and M. Baker, “Mitigating Routing Misbehavior in Mobile Ad Hoc Networks,” in Proceedings of Mobicom 2000. • L. Buttyan and J. P. Hubaux, “Enforcing Service Availability in Mobile Ad Hoc WANs,” in Proceedings of MobiHoc 2000. • L. Buttyan and J. P. Hubaux, “Stimulating cooperation in self-organizing mobile ad hoc networks,” ACM/Kluwer Mobile Networks and Applications (MONET), October 2003 • S. Zhong, Y. R. Yang, and J. Chen, “Sprite: A Simple, Cheat-Proof, CreditBased System for Mobile Ad Hoc Networks,” in Proceedings of INFOCOM 2003. • P. Michiardi and R.Molva, “Core: A COllaborative REputation mechanism to enforce node cooperation in Mobile Ad Hoc Networks,” in Proceedings of The 6th IFIP Communications and Multimedia Security Conference 2002. • S. Buchegger and J. Y. Le Boudec, “Performance Analysis of the CONFIDANT Protocol: Cooperation Of Nodes — Fairness In Distributed Ad Hoc NeTworks,” in Proceedings of MobiHoc 2002. 2 1 Related Work Selfishness in hybrid ad hoc networks • M. Jakobsson, J.-P. Hubaux and L. Buttyan, "A Micro-Payment Scheme Encouraging Collaboration in Multi-Hop Cellular Networks", in Proceedings of FC 2003. • N. Ben Salem, L. Buttyán, J.-P. Hubaux and M. Jakobsson, "A Charging and Rewarding Scheme for Packet Forwarding in Multi-hop Cellular Networks", Technical Report No. IC/2003/55, Swiss Federal Institute of Technology (EPFL), Lausanne, September 2003. • B. Lamparter, K. Paul and D. Westhoff, "Charging Support for Ad Hoc Stub Networks", Journal of Computer Communication,Special Issue on Internet Pricing and Charging, Algorithms, Technology and Applications,Elsevier Science ,Summer 2003. Selfishness in WiFi networks • N. Ben Salem, J.-P. Hubaux and M. Jakobsson, "Reputation-based Wi-Fi Deployment: Protocols and Security Analysis", WMASH'04, Philadelphia, USA, October 2004 3 Outline Part 1 : Incentive to cooperate in pure Ad Hoc Networks 1.1 - The Nuglets Approach 1.2 - Sprite: A Simple, Cheat-Proof, Credit-based System for Mobile Ad Hoc Networks Part 2 : Incentive to cooperate in Hybrid Ad Hoc Networks 2.1 - A Micro-Payment Scheme Encouraging Collaboration in Hybrid Ad hoc Networks 2.2 - A Charging and Rewarding Scheme for Packet Forwarding in Hybrid Ad hoc Networks Part 3 : Incentive to cooperate in WiFi Networks Reputation-based WiFi Deployment: Protocols and Security Analysis 4 2 Part 1 Incentive to cooperate in pure Ad Hoc Networks 1.1-The Nuglets Approach L. Buttyán and J.-P. Hubaux 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) 6 3 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 7 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 8 4 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 9 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 10 5 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) 11 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 12 6 Throughput The effect of less cooperative nodes (rule 3) on the total cumulative throughput 13 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 ad hoc networks 14 7