22
Int. J. Autonomous and Adaptive Communications Systems, Vol. 1, No. 4, 2008 425 Copyright © 2008 Inderscience Enterprises Ltd. Routing game in hybrid wireless mesh networks with selfish mesh clients Yu Wang* and Teresa A. Dahlberg Department of Computer Science, University of North Carolina at Charlotte, Charlotte, NC 28223, USA E-mail: [email protected] E-mail: [email protected] *Corresponding author Weizhao Wang Google Inc., Mountain View, CA, USA E-mail: [email protected] Abstract: Wireless mesh networks (WMNs) consist of mesh routers and mesh clients where fixed mesh routers form the multi-hop backbone of the network. It is often assumed that each individual mesh client will faithfully follow the prescribed protocols. However, these mobile devices, owned by individual users, will likely do what is the most beneficial to their owners, i.e. act ‘selfishly’. In this article, we study how to design routing protocols in WMNs with selfish mesh clients. We first show that the totalpayment of the classical Vickrey–Clarke–Groves (VCG)-based routing protocol could be very expensive and inefficient for hybrid mesh networks. Then, we modify the VCG-based method to make it more efficient in terms of total payment, but we also prove that mesh clients could lie about their costs in this modified method. Instead of the VCG-based method, we then propose a novel routing protocol that could achieve Nash equilibrium with low total payments. Keywords: game theory; Nash equilibrium; routing; VCG mechanism; Vickrey–Clarke–Groves mechanism; wireless mesh networks. Reference to this paper should be made as follows: Wang, Y., Dahlberg, T.A. and Wang, W. (2008) ‘Routing game in hybrid wireless mesh networks with selfish mesh clients’, Int. J. Autonomous and Adaptive Communications Systems, Vol. 1, No. 4, pp.425–446. Biographical notes: Yu Wang received his PhD in Computer Science from Illinois Institute of Technology in 2004, his BE and ME in Computer Science from Tsinghua University, China, in 1998 and 2000, respectively. He has been an Assistant Professor of Computer Science at the University of North Carolina at Charlotte since 2004. His current research interests include wireless networks, ad hoc and sensor networks, mobile computing, and algorithm design. Wang is a recipient of Ralph E. Powe Junior Faculty Enhancement Awards from Oak Ridge Associated Universities. He is a Member of the ACM, IEEE and IEEE Communications Society.

Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

Int. J. Autonomous and Adaptive Communications Systems, Vol. 1, No. 4, 2008 425

Copyright © 2008 Inderscience Enterprises Ltd.

Routing game in hybrid wireless mesh networks with selfish mesh clients

Yu Wang* and Teresa A. Dahlberg Department of Computer Science, University of North Carolina at Charlotte, Charlotte, NC 28223, USA E-mail: [email protected] E-mail: [email protected] *Corresponding author

Weizhao Wang Google Inc., Mountain View, CA, USA E-mail: [email protected]

Abstract: Wireless mesh networks (WMNs) consist of mesh routers and mesh clients where fixed mesh routers form the multi-hop backbone of the network. It is often assumed that each individual mesh client will faithfully follow the prescribed protocols. However, these mobile devices, owned by individual users, will likely do what is the most beneficial to their owners, i.e. act ‘selfishly’. In this article, we study how to design routing protocols in WMNs with selfish mesh clients. We first show that the totalpayment of the classical Vickrey–Clarke–Groves (VCG)-based routing protocol could be very expensive and inefficient for hybrid mesh networks. Then, we modify the VCG-based method to make it more efficient in terms of total payment, but we also prove that mesh clients could lie about their costs in this modified method. Instead of the VCG-based method, we then propose a novel routing protocol that could achieve Nash equilibrium with low total payments.

Keywords: game theory; Nash equilibrium; routing; VCG mechanism; Vickrey–Clarke–Groves mechanism; wireless mesh networks.

Reference to this paper should be made as follows: Wang, Y., Dahlberg, T.A. and Wang, W. (2008) ‘Routing game in hybrid wireless mesh networks with selfish mesh clients’, Int. J. Autonomous and Adaptive Communications Systems, Vol. 1, No. 4, pp.425–446.

Biographical notes: Yu Wang received his PhD in Computer Science from Illinois Institute of Technology in 2004, his BE and ME in Computer Science from Tsinghua University, China, in 1998 and 2000, respectively. He has been an Assistant Professor of Computer Science at the University of North Carolina at Charlotte since 2004. His current research interests include wireless networks, ad hoc and sensor networks, mobile computing, and algorithm design. Wang is a recipient of Ralph E. Powe Junior Faculty Enhancement Awards from Oak Ridge Associated Universities. He is a Member of the ACM,IEEE and IEEE Communications Society.

Page 2: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

426 Y. Wang, T.A. Dahlberg and W. Wang

Teresa A. Dahlberg is an Associate Professor of Computer Science and the Director of the Diversity in Information Technology Institute at the University of North Carolina at Charlotte. She received her BS in Electrical Engineering from the University of Pittsburgh in 1984 and worked as a Hardware and Software Development Engineer for the IBM Corporation for ten years. She received her MS and PhD in Computer Engineering from North Carolina State University in 1990 and 1993, respectively, and joined the faculty at the UNC Charlotte in 1994. Her research interests include routing, quality of service and resource management for mobile networks.

Weizhao Wang received his BS and MS in Computer Science from Shanghai Jiaotong University, China, in 1999 and 2002, respectively, and his PhD in Computer Science from Illinois Institute of Technology in 2006. Currently, he is with Google Inc. His current research interests include wireless networks, game theory, algorithm design and next generation internet.

1 Introduction

Wireless mesh networks (WMNs; Bruno, Conti and Gregori, 2005; Ian, Akyildiz and Wang, 2005) have drawn lots of attention in recent years due to their various potential applications, such as broadband home networking, community and neighbourhood networks, and enterprise networking. They have also been used as the last mile solution for extending the internet connectivity to mobile nodes. Many cities and wireless companies have already deployed WMNs around the world. WMNs consist of two types of nodes: mesh routers and mesh clients. Fixed mesh routers form the multi-hop wireless backbone of the network, while mobile mesh clients can access the network through connections to mesh routers. These networks behave almost like wired networks since the backbone has infrequent topology changes, limited node failures, etc.

The architecture of WMNs usually is either infrastructure/backbone-based or hybrid (Bruno, Conti and Gregori, 2005; Ian, Akyildiz and Wang, 2005). In an infrastructure-based mesh network, mesh clients can only connect to the backbone via single-hop wireless links, while in a hybrid mesh network, mesh clients access the network through mesh routers as well as directly meshing with other mesh clients. In other words, the hybrid architecture combines both infrastructure meshing and client meshing and allows multi-hop connections from mesh clients to mesh routers. Figure 1 shows a simple example of a hybrid mesh network, which contains six mesh routers and ten mesh clients. Mesh clients can communicate with other nodes through either the mesh backbone formed by the mesh routers or an ad hoc path (relayed by a small number of other mesh clients). For example, if mesh client MC6 wants to send a message to MC9, it can either send the message via mesh routers MR5 and MR6 in the backbone or use mesh client MC8as the relay node to form a peer-to-peer path. The hybrid architecture has several advantages over the pure infrastructure networks and pure ad hoc networks (Wu et al., 2001; Luo et al., 2003; Hsieh and Sivakumar, 2004). For example, the energy consumption of wireless nodes can be reduced, since the distance the signal has to cover is smaller. The coverage of the network can be increased due to the extension of ad hoccomponents. In Figure 1, mesh clients MC1, MC3 and MC10 are outside the transmission ranges of any mesh routers. However, through the ad hoc links, they are connected to the backbone. For the same reason, the number of mesh routers needed to cover certain

Page 3: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

Routing game in hybrid wireless mesh networks with selfish mesh clients 427

regions can also be smaller than the one used in a pure infrastructure mesh network. Due to these benefits and many potential applications in various areas, hybrid architectures (not only in mesh networks, but also in general wireless networks) have drawn lots of attention in recent years (Wu et al., 2001; Chandra, Fetzer and Hogstedt, 2002; Dousse, Thiran and Hasler, 2002; Luo et al., 2003; Carbunar, Ioannidis and Nita-Rotaru, 2004; Hsieh and Sivakumar, 2004). Most previous work in hybrid networks deals with various important problems such as routing, quality of service, security, power management, and traffic and mobility modelling. However, there are still many challenges left.

Figure 1 An example of hybrid wireless mesh network (see online version for colours)

In hybrid WMNs, a source node communicates with far off destinations by using mesh routers or intermediate mesh clients as relays. A common assumption made by the majority of the wireless routing protocols is that each wireless node will follow the prescribed protocols without any deviation, e.g. a node is always assumed to relay data packets for other nodes if it is asked to do so by the routing protocols. However, this may not be true in reality: mesh clients could be owned by individual users and thus they will perform in their own interests; the wireless devices are often powered by batteries only. Thus, it is not in the best interest of a wireless node to always forward the data packets for other nodes. If a mesh client refuses to relay the data while the routing protocol assumes that it will, the throughput of the network may decrease and even the network coverage may be hurt. In other words, selfish wireless nodes may hinder the functioning of the network completely. The root cause of the problem is, obviously, that there exist no incentives for mesh clients to be altruistic. Therefore, if we assume that all mesh clients are selfish and wish to maximise their own net gains at all times, providing incentives to them is a must to encourage contribution and thus maintain the robustness and the availability of hybrid WMNs. Thus, a stimulation mechanism is required to encourage the selfish mesh clients to provide service to other clients.

Dealing with selfish users has been well-studied in the economics and networking fields. Recently, there has been a sequence of results (Nisan, 1999; Roughgarden, 2001, 2004; Feigenbaum and Shenker, 2002) published in the theoretical computer science area that tried to solve various problems when the agents are selfish and rational. Here, an agent is rational if it always chooses a strategy that maximises its own gain. A common

Page 4: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

428 Y. Wang, T.A. Dahlberg and W. Wang

setting in all these results is that each agent incurs a cost if it is selected to provide the service. For example, in wireless networks, each node will incur an energy cost (and possibly memory cost) when it is asked to relay the data for other nodes. Several protocols (Buttyan and Hubaux, 2000, 2003; Marti et al., 2000; Blazevic et al., 2001; Salem et al., 2003; Srinivasan et al., 2003; Wang, Li and Wang, 2004; Wang et al., 2005, 2006; Zhong et al., 2005; Wang and Li, 2006) have also been proposed recently to address the non-cooperative issue in selfish wireless ad hoc networks. Most of these solutions can be applied in WMNs. However, hybrid mesh networks have their own unique characteristics: besides the selfish mesh clients, there are many mesh routers which are fully cooperative, since they belong to the network service provider. In other words, hybrid mesh networks are not purely selfish networks, and the cooperativeness of mesh routers may provide chances of better performance with careful design.

In this article, we study the routing game in a hybrid WMN with selfish mesh clients. We first adapt a VCG-based ad hoc routing protocol (Anderegg and Eidenbenz, 2003) for the hybrid mesh network, and show that it is truthful (i.e. nodes reveal their true costs) but could be very expensive in terms of its total payment. Then, we propose a more efficient modified VCG-based protocol in which nodes may lie about their costs but the system will benefit from their lies (i.e. by reducing the total payments). Finally, we also propose a novel efficient routing protocol which could achieve Nash equilibrium with low total payments comparing with VCG-based method. The remainder of this article is organised as follows. First, we introduce some preliminaries (our communication models and the problems to be solved in this article) and related works in Section 2. We study the routing game in hybrid networks in Section 3 (VCG-based) and Section 4 (Nash-equilibrium-based). We conclude our article in Section 5 by pointing out some possible future work.

2 Preliminaries

2.1 Mechanism design

We need to recall a few definitions and concepts from mechanism design. A standard model for mechanism design is as follows. There are n agents 1, , n. Each agent i has some private information ti, called its type, only known to itself. For example, the type ti

can be the cost that agent i incurs for forwarding a packet in a network or can be the maximum payment that the agent i is willing to pay for a service as a service requestor. The agents’ types define the type vector t = (t1, t2, , tn). Each agent i has a set of strategies Ai from which it can choose. For each strategy vector a = (a1, , an) where agent i plays strategy ai Ai, the mechanism = ( , ) computes an output o = (a)and a payment vector (a) = ( 1(a), , n(a)). Here, the payment i( ) is the money given to agent i and depends upon the strategies used by the agents.

A valuation function v(ti, o) assigns a monetary amount to agent i for each possible output o. Let ui(ti, o) denote the utility of agent i at the output o of the game, given its type ti. Here, following a common assumption in the literature, we assume the utility for agent i is quasi-linear, i.e. ui(ti, o) = v(ti, o) + i(a). Let a i = (a1, , ai 1, ai + 1, , an)denote the strategies of all the other agents except i. We adopt the assumption in neoclassic economics that every agent is aiming to optimise its utility.

Page 5: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

Routing game in hybrid wireless mesh networks with selfish mesh clients 429

A strategy vector a is called a Nash equilibrium if it maximises the utility of each agent i when the strategies of all the other agents are fixed as ia ,i.e. ( ( )) ( ( ))i i i i i iu t a u t a a for all i and all i ia a .

A strategy ai is called a dominant strategy for agent i if it maximises its utility regardless of possible strategies of the other agents, i.e.

( , ( , )) ( , ( , ))i i i i i i i iu t a b u t a b for all i ia a and all strategies b i of the agents other than i. If a = (a1, a2, , an) is a dominant strategy vector for agents, then a is also a Nash Equilibrium. However, it does not hold for the other side. Thus, Nash Equilibria usually can achieve broader results due to their weaker requirement, while at the same time Nash Equilibria are not as steady as dominant strategies.

A direct-revelation mechanism is a mechanism in which the only actions available to each agent are to report its private type either truthfully or falsely to the mechanism. A direct-revelation mechanism is incentive compatible if reporting valuation truthfully is a dominant strategy. Another very common requirement in the literature for mechanism design is called individual rationality: the agent’s utility of participating in the output of the mechanism is not less than the utility of the agent if it did not participate at all. A direct-revelation mechanism is called truthful or strategy-proof if it satisfies both the incentive compatible and individual rationality properties.

The generalised VCG mechanisms by Vickrey (1961), Clarke (1971) and Groves (1973) may be arguably the most important positive result in mechanism design. An objective function is called utilitarian if it is ( ) ( )ii

g o t v t o . The VCG mechanisms

apply to (affine) maximisation problems where the objective function is utilitarian and the set of possible outputs is finite. A direct-revelation mechanism = ( , ) belongs to the VCG family if

1 the output (t) computed based on the type vector t maximises the utilitarian objective function

2 the payment to agent i is ( ) ( ( )) ( )ii j j ij i

t v t t h t .

Here, hi( ) is an arbitrary function of t i. Green and Laffont (1977) proved that, under mild assumptions, the VCG mechanisms are the only truthful mechanism for utilitarian maximisation problems.

Notice that strategy-proof mechanism always pays a certain amount that is not less than the actual cost to induce the truthfulness. The difference between the total amount paid and the total cost the agents should spend is usually called the premium or overpayment.

2.2 Network models and assumptions

In this article, we consider a hybrid wireless network that consists of nMR mesh routers VMR and nMC mobile mesh clients VMC. We assume each device has an unadjustable transmission range and each communication link is symmetric. Then the communication graph is represented by an undirected graph G = (V, E) where V = VMR + VMC = {v1, v2, , vn} is the set of network devices (including both mesh routers and clients), E = {e1, e2, , em} is the set of wireless links in which a link ek = vivj means that

Page 6: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

430 Y. Wang, T.A. Dahlberg and W. Wang

terminals vi and vj can communicate with each other directly. Here, m is the total number of communication links in the graph G and n = nMR + nMC is the total number of wireless nodes in the graph. For each node in the mesh network, it has a cost to relay a message. Since we assume fixed transmission range, the cost of a node vi is a constant, denoted by ci. Different nodes can have different relay costs. For example, the same type of mesh routers may have a similar cost but various mesh clients (i.e. laptops, PDAs and cell phones) should have different transmission costs. Let c = (c1, c2, , cn) be the cost vector of all nodes (including mesh clients and mesh routers).

The following assumptions are adopted in this article:

1 Each mobile device (acting as a relay node) is selfish and rational: it tries to maximise its own benefit.

2 The cost to relay transit traffic for each node is private information; it is only known by the node itself by considering all facts which may affect its own benefit (such as remaining power, transmission range, environment, etc.).

3 Wireless mesh routers are cooperative, i.e. they will reveal their costs1 truthfully, since they are owned by the network service provider.

4 The source of the routing will pay the selected relay nodes.

5 The wireless nodes do not collude to improve their benefit.

6 The network is bi-connected, which implies that if we remove the agent the network is still connected.

The last assumption is necessary to prevent some nodes from being a monopoly and charging arbitrary costs, and to increase network robustness.

2.3 Problem statement

We are now ready to describe our routing scenario in more detail. Without loss of generality, we assume that s is the source, t is the destination and s and t are in V.Remember that there is a fixed cost ci for each node vi to transmit a unit size data and the cost to transmit traffic of size h is h ci. Every wireless node is required to declare a cost di for forwarding the unit size data. The set of all declared costs is denoted as d = (d1, , dn). Notice that di may not equal ci, which is vi’s actual cost. Let

1( 1 1 )kk k k k nd d d d d dd which is the declared cost with a different declared

cost kd for vk. For simplicity of our analysis, we normalise the traffic to unit size data. Dropping this assumption does not change the results. Our aim is to design unicast routing mechanisms.

Definition 1. A unicast routing mechanism = ( , ) consists of a routing output function and a payment function . Let d be the vector of declarations by all relay agents. (d) = ( 1(d), , n(d)) is an output function vector such that i(d) indicates whether the node vi should send the packet, i.e. i(d) = 1 indicates that node vi should forward the packet, i.e. participate in the route. (d) = ( 1(d), , n(d)) is a payment

Page 7: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

Routing game in hybrid wireless mesh networks with selfish mesh clients 431

function vector that computes the payment for the terminals, i.e. i(d) is payment to terminal vi.

The routing scenario is as follows. The routing algorithm selects a route P (such as the least cost path) according to the declared cost vector d. To stimulate cooperation among all wireless nodes, the source s pays the selected relaying nodes a certain amount of money for forwarding the data. For each node vi, the source s computes a payment

i(d) according to the declared cost vector d. The utility, in standard economic model, of node vi is ui(d) = i(d) i(d) ci, where i(d) indicates whether vi relays the packet. We always assume that the wireless nodes are rational: node vi always tries to maximise its utility ui(d).

If the routing algorithm and the payment scheme are not well-designed, a node vj may improve its utility by lying about its cost, i.e. by declaring a cost dj such that dj cj. The objective of this article is then to design a unicast routing mechanism such that each node vj has to declare its true cost, i.e. dj = cj, to maximise its utility either with fixed strategies of other nodes or regardless of possible strategies of the other nodes. In other words, we want to design routing protocols for a selfish WMN that can achieve a dominant strategy (satisfying incentive compatibility). In addition, we also hope the designed mechanisms satisfy the following two properties:

1 Individual rationality. A mobile device is guaranteed to have non-negative utility if it reports its type truthfully no matter what other devices do.

2 Polynomial time computability. All computations (the computation of the output and the payment) are done in polynomial time.

Notations. In the following, we introduce some terminology and symbols that will be used later. If a mobile node vs wants to send data to another mobile device vt, typically, the path with the minimum sum of relaying cost (least cost path or shortest path) is used to route the packets. The shortest path between two nodes vs, vt under declared cost vector d is denoted as LCP(vs, vt, d). Among all the paths between vs, vt, with node vk on it, the shortest path is denoted as LCP ( , ,

kv s tv v d) . Similarly, among all paths between s, t

without node vk on it, the shortest path is denoted as LCP ( , , )kv s tv v d or LCP(vs, vt, d|k ).

Given a simple path P in the network G with cost vector d, the sum2 of the relaying cost of nodes on path P is denoted as |P(d)|. Let (d) be the total payment to the terminals, i.e.

( ) ( )iid d . Here, i(d) (or i(vs, vt, d)) is the payment of node vi for relaying the

packet from vs to vt under declared cost vector d. For notational simplicity, we also use (d) to denote the node set that is selected to route the data. The source always pays the

total payment to (d).

2.4 Priori arts

The most well-known and widely used incentive-based method to solve the non-cooperative problem is the VCG mechanism family by Vickrey (1961), Clarke (1971) and Groves (1973). Several mechanisms (Nisan and Ronen, 1999; Feigenbaum et al., 2002; Anderegg and Eidenbenz, 2003), which essentially belong to the VCG mechanism

Page 8: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

432 Y. Wang, T.A. Dahlberg and W. Wang

family, have been proposed in the literature to assure the cooperation for routing problems in a general network.

Routing has been an important part of the algorithmic mechanism-design from the very beginning. Nisan and Ronen (1999) provided a polynomial-time strategy-proof mechanism for optimal unicast route selection in a centralised computational model. In their formulation, the network is modelled as an abstract graph G = (V, E). Each edge e of the graph is an agent and has a private type te, which represents the cost of sending a message along this edge. The mechanism-design goal is to find a least cost path LCP(x, y, d) between two designated nodes x and y. The valuation of an agent e is te if the edge e is the part of the path LCP(x, y, d) and 0 otherwise. Nisan and Ronen used the VCG mechanism for payment.

Feigenbaum et al. (2002) then addressed the truthful low cost routing in a different network model. They assume that each node k incurs a transit cost ck for each transit packet it carries. For any two nodes i and j of the network, Ti, j is the intensity of the traffic (number of packets) originating from i and destined for node j. Their strategy-proof mechanism again is essentially the VCG mechanism. They gave a distributed method such that each node i can compute a payment Pk(i, j, d) > 0 to node k for carrying the transit traffic from node i to node j if node k is on the LCP(i, j, d). Anderegg and Eidenbenz (2003) proposed a similar routing protocol for wireless ad hoc networks based on VCG mechanism again. They assumed that each link has a cost and each node is a selfish agent. Recently, Wang and Li (2006) proposed a time optimal method to compute the VCG payment in a centralised manner and studied in detail how to implement the routing protocol in the distributed manner for ad hoc networks.

There is a vast literature on the mechanism design or implementation paradigm in which some mechanisms are designed to achieve the socially desirable outcomes in spite of users’ selfishness. Some of these approaches use Nash equilibrium rather than dominant-strategy (VCG uses dominant-strategy). That is, they assumed that simultaneous selfish play leads to a self-consistent Nash equilibrium in which no agent can improve its utility by deviating from its current strategy when other agents keep their strategies. Notice that since Nash equilibrium has a weak requirement on the strategies used by the agents, it often can achieve a much wider variety of outcomes.

How to achieve cooperation among selfish terminals in networks was previously addressed in Buttyan and Hubaux (2000, 2003), Marti et al. (2000), Blazevic et al. (2001), Srinivasan et al. (2002, 2003) and Jakobsson, Hubaux and Buttyan (2003), In Marti et al. (2000), nodes which agree to relay traffic but do not, are termed as misbehaving. Their protocol avoids routing through these misbehaving nodes. In Buttyan and Hubaux (2000, 2003), Blazevic et al. (2001) and Jakobsson, Hubaux and Buttyan (2003), a secure mechanism to stimulate nodes to cooperate is presented. The key idea behind these approaches is that terminals providing a service should be remunerated, while terminals receiving a service should be charged. Each terminal maintains a counter, called nuglet counter, in a tamper resistant hardware module, which is decreased when the terminal sends a packet as originator and increased when the terminal forwards a packet. Both these methods belong to so called credit-based method. Usually, they are heuristics and need some special hardware. In recent years, incentive-based methods have been proposed to solve the non-cooperative problem. The most well-known and widely used incentive-based method is the VCG mechanism family by Vickrey (1961), Clarke (1971) and Groves (1973). Several mechanisms (Nisan and Ronen, 1999; Feigenbaum et al., 2002; Anderegg and Eidenbenz, 2003) which essentially belong to the VCG

Page 9: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

Routing game in hybrid wireless mesh networks with selfish mesh clients 433

mechanism family have been proposed in the literature to assure the cooperation for the unicast problem in a general network.

Unlike in ad hoc networks, not much research has been conducted for non-cooperative problems in wireless hybrid networks until recently. Lamparter, Paul and Westhoff (2003) proposed a charging scheme to motivate cooperation in hybrid networks. They assume the existence of an internet service provider (ISP) that authenticates the nodes involved in a given communication and takes care of charging or rewarding them. The amount of charging or rewarding is chosen by the ISP and not related to the cost of the relay node. In Salem et al. (2003) and Jakobsson, Hubaux and Buttyan (2003), the authors also proposed an incentive mechanism that is based on charging/rewarding scheme and makes collaboration rational for selfish nodes. However, the amount of charging or rewarding is also decided as a fixed rate. Weyland, Staub and Braun (2005) also proposed incentive-based schemes called CASHnet in which the payment or reward is based on the distance to the gateway. Not all these charging/rewarding methods are truthful for selfish participants.

3 VCG-based truthful routing

3.1 Truthful VCG-based payment scheme

Our VCG-based payment scheme is similar to the ad hoc one by Anderegg and Eidenbenz (2003), except

1 our network model is a node-based model where each node is the selfish agent

2 we have some special handling with mesh routers since they are cooperative.

Assume that the node vs has to send a packet to vt through the relay of some other nodes. It pays these relay nodes to compensate their costs for carrying the transit traffic incurred by vs. Here, the payment for each node (or user) chould be in any format, such as virtual currency, furure usage time, or other incentives. The output of the algorithm is the path connecting vs and vt with the minimum cost, which is known as LCP(vs, vt, d). The payment scheme is based on the VCG. The payment for node vk is

MR

MC

0, if LCP( )

( ) , if LCP( )

| LCP ( ) LCP( ) if LCP( ) .k

k s t

k k k s t

v s t k k s t

v v v

d v v v V

s t v v d v v v V

d

d d

d d d

(1)

Here, LCP ( , , )kv s tv v d denotes the least cost path between nodes vs and vt if we remove

node vk and all its adjacent links from the original graph. Notice that for a mesh router vk

in LCP(vs, vt, d), the payment is just its claim cost dk, since we always assume the mesh router is cooperative, i.e. it always claims its true costs.

Page 10: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

434 Y. Wang, T.A. Dahlberg and W. Wang

Figure 2 An example of hybrid wireless mesh networks (see online version for colours)

For example, assume we want to send a unit packet from node vs to node vt in Figure 2. Hereafter, we always use squares to represent mesh routers and use circles to represent mesh clients in all figures. The number beside the square/circle is its cost. In the network, there are two mesh routers v1 and v2. The most cost-efficient path is

3 1LCP( )s t s tv v v v v vd

with |LCP(vs, vt, d)| = 2 + 1 = 3. Since v1 is a mesh router, its payment is its claim cost (also true cost), i.e.

1( ) 1d

For mesh client v3, we need to calculate its payment. The shortest path without node v3 is

3 4 2 1LCP ( )v s t s tv v v v v v vd

with 3

LCP ( ) 2 1 1 4v s tv v d . Thus, we have the VCG payment for node v3

3 ( ) 4 3 1 3.d

This payment falls into the VCG mechanism, so it is strategy-proof. In other words, the mechanism satisfies the incentive compatibility property: if dk = ck, node vk maximises its utility k(d) xk ck. Here, xk = 1 if vk LCP(vs, vt, d), otherwise xk = 0. In addition, it is not hard to prove that the other two properties: individual rationality and polynomial time computability. All the proofs are similar to those in Nisan and Ronen (1999) and Anderegg and Eidenbenz (2003).

3.2 Inefficiency of payments

As discussed in Immorlica et al. (2005), the VCG mechanism has the attractive property that each node’s dominant strategy is to reveal its true cost. However, the VCG mechanism can lead to the customer paying far more than the true cost of the cheapest path. The overpayment is because a bonus needs to be paid to every relay node on the path. Remember in Equation (1), node vs pays each mobile node vk on LCP(vs, vt, d) more than its actual cost to make sure that it will not lie about its cost. The overpaid value is the improvement of the LCP due to the existence of node vk. It is not difficult to construct a network example such that the over-payment of a node vk could be arbitrarily large. This is extraordinarily inefficient for wireless networks. Consider the network shown in

Page 11: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

Routing game in hybrid wireless mesh networks with selfish mesh clients 435

Figure 3. The nodes vi for 1 i n + 1 are the mobile devices as selfish mesh clients while vn + 2 is a mesh router. Assume that we want to send packets from node vs to vt. The least cost path is vs, v1, v2, , vn, vt with cost n. Using the VCG mechanism, the payment to node vi is ( ) LCP ( ) LCP( ) 2 1 1

ii v s t s t iv v v v d n n nd d d . Notice that path LCP ( )

iv s tv v d is the path vs, vn + 1, vt whose cost is 2n. Therefore, the total payment

of the least cost path will be n(n + 1), which is n + 1 times the true cost of the path. Thus, we say that the VCG-method is an expensive method since the overpayment ratio can be arbitrarily large. Besides the overpayment problem, in some cases, the payment to the lowest-cost path in the VCG-method may even greatly exceed the true cost of the second-cheapest path. Consider again the example in Figure 3. The total VCG payment of the selected path is (n + 1)/2 times the payment for the path vs, vn + 1, vt, while the cost of the second shortest path is only two times that of the shortest path. In addition, notice that since the only relaying node in path vs, vn + 2, vt is mesh router vn + 2 who must claim its true cost. In other words, if we choose the path vs, vn + 2, vt, then it only costs 3n, while the VCG method selects the least cost path and spends n(n + 1). This is not reasonable for the source node or the system. Thus, we want to investigate new methods to fix this problem.

Figure 3 Link’s paradox for VCG-based unicast (see online version for colours)

3.3 Modified VCG-based routing

It is very natural for us to make the following modification: after applying the VCG-method, we check whether there exists a path from the source to the target using only mesh routers as the relaying nodes; if one exists, we compare the true cost of this path with the total payments of the path that the VCG method selects, and use the cheaper one as the final routing path. The detailed modified algorithm is given in Algorithm 1.

Algorithm 1 Modified VCG-based Routuing scheme

1 Every node vk claims its cost dk. Let d = (d1, , dn) be the all claimed costs for all nnodes in G.

2 Compute the least cost path LCP(vs, vt, d) from vs to vt in graph G and the least cost path LCP ( )

kv s tv v d if we remove node vk and all its adjacent links from the original

graph.

3 Compute the payments for the least cost path as follows. If vk LCP(vs, vt, d) and is a mesh router, k(d) = dk. If vk LCP(vs, vt, d) and is a mesh client,

( ) LCP ( ) LCP( )kk v s t s t kv v v v dd d d . If vk LCP(vs, vt, d), k(d) = 0.

Page 12: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

436 Y. Wang, T.A. Dahlberg and W. Wang

4 Check whether there exists a path P (vs, vt, d) between vs and vt using mesh routers as all the relaying nodes. If this kind of path does not exist, output the path LCP(vs, vt, d) and pay each node vk on the path k(d). Exit.

5 If there exist paths that all relaying nodes are mesh routers, we select the path P (vs, vt, d) with the least cost among these access point paths, and calculate the total cost of this path

( )( )

i s ts t iv P v v

P v v dd

d . In addition, calculate the VCG

payment LCP( )

( ) ( )k s t

s t kv v vv v

dd d . If ( ) ( )s t s tv v P v vd d , output the

path LCP(vs, vt, d) and pay each node vk on the path k(d). Otherwise, output the path P (vs, vt, d) and pay each node vk its claimed cost dk.

Notice that the modified VCG-method is not a real VCG method anymore, since the output changes (maybe not the optimum path in terms of total cost). Unlike the VCG method, we can prove that the modified VCG method is not truthful.

Theorem 1. The modified VCG method is not truthful.

Proof. Naturally, one conjecture that some relay nodes on the shortest path LCP(vs, vt, c)but not selected due to the large payment may have incentive to lie down their costs in order to reduce the payment. However, the following example shows the contrary. In the same network shown in Figure 3, we select path vs, vn + 2, vt instead of the shortest path vs,v1, , vn, vt under the modified VCG-method, since it only uses a mesh router as a reply node and has less cost than the VCG-payment. Now considering the scenario when node v1 reveals its cost as n + 1 for a small positive . The shortest path does not change, and VCG-payment to node vi is 1 + for 2 i n. The total VCG-payment of the path vs,v1, , vn, vt is ( 1) (1 ) ( 1) 2 ( 1) 2 1n n n n n when = 1/(n 1). This is smaller than the cost 3n of vs, vn + 2, vt. Thus, the modified VCG-method will choose path vs, v1, , vn, vt with relay nodes instead of the pure mesh router vn + 2. Therefore, node v1

will benefit from cheating.

However, from the system or the source node view, the total payment of the routing decreases, and therefore it is more cost-efficient. We can have the following observation: under the modified VCG method, the relay nodes only have incentives to lie about their costs upward and the resulting total payment is not greater than the total payment in the VCG method. In other words, this kind of cheating is good cheating. Moreover, this case happens only when a cheap pure mesh router path exists.

In Algorithm 1, we consider only the pure mesh router paths from s to t as the alternative solution to reduce the total cost. We can then generalise the idea by considering all partial mesh router paths to reduce further the overall payment. The refined method is given in Algorithm 2.

Algorithm 2 New modified VCG-based routing scheme

1 Every node vk claims its cost dk. Let d = (d1, , dn) be the all claimed costs for all nnodes in G.

2 Build the virtual graph G only composed of mesh routers VMR and the source vs and the target vt. Thus, G has nMR + 2 nodes. Each mesh router has its cost as the node cost.

Page 13: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

Routing game in hybrid wireless mesh networks with selfish mesh clients 437

3 for each pair of nodes vi and vj in G do

4 if vi and vj are connected in G then

5 Add a link vivj in G .

6 else

7 Compute the least cost path LCP(vi, vj, d) from vi to vj in graph G and compute the total VCG-payment to the relay agents on LCP(vi, vj, d),say (vi, vj, d).

8 Add a virtual link vivj with a virtual node vij seats in the middle in G ,and set the node cost of vij as (vi, vj, d).

9 After above loop, G is a complete graph on VMR and vs and vt. Find the least cost path in the virtual graph G from vs to vt and output the union of the corresponding paths in the original graph G.

10 Every mesh router in the output gets a payment equal to its cost; every relay agent in the output gets its own VCG-payment on the virtual link.

The basic idea of the above method is to build a virtual complete graph G on all mesh routers and vs and vt. Two nodes vi and vj (they are mesh routers or vs or vt) are connected by an actual link in G , if they are connected in G. Otherwise, a virtual link between vi

and vj will be added in G , and this link represents the least cost path LCP(vi, vj, d) in G.To have a cost of this virtual link, a virtual node vij with a cost of the total VCG-payment for this path is added. The algorithm will output the least cost path from vs and vt in G .Figure 4 shows the virtual graph constructed for the example network in Figure 3. Links vsvn + 2 and vn + 2vt are directly links from G among mesh routers and vs and vt, while link vsvt is a virtual link of the least cost path LCP(vs, vt, d) in G. vst is a virtual node with the total VCG-payment of LCP(vs, vt, d) as its cost. The algorithm will output the path vsvn + 2vt since it has less cost than the other path in G . Notice that in this special case, Algorithm 2 has the same output with Algorithm 1. However, in general hybrid networks with more mesh routers, it will have a different output with Algorithm 1 and will usually have a smaller total payment. It is easy to show that this algorithm is also not truthful but the overpayment is much less than the VCG-method.

Figure 4 Virtual graph G constructed in Algorithm 1 for the example network in Figure 3 (see online version for colours)

Page 14: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

438 Y. Wang, T.A. Dahlberg and W. Wang

4 Nash-equilibrium-based routing

In light of the potential large overpayment of the VCG mechanism which is the only strategy-proof mechanism if the path selected is the least cost path, it is natural to relax the dominant strategy to the Nash equilibrium, which is a weaker requirement. In this section, we study how to design a mechanism for hybrid networks that can induce some Nash Equilibria. However, Immorlica et al. (2005) showed that if we simply pay whatever the node reports, there does not exist any Nash Equilibrium. Due to the non-existence of the Nash Equilibrium, they introduced the concept of a strong -Nash equilibrium, in which there is no group of agents who can deviate in a way that improves the payoff of each member by at least . Then, they proposed a modified first price auction for link-weighted networks that can achieve -Nash Equilibrium. With further modification of the auction, we obtain our new routing method that induces efficient Nash Equilibria.

Algorithm 3 presents our new routing algorithm. In our method, each node declares two bids instead of one: the first bid vector d is used to compute the least cost path, the second bid vector d is used to decide payment for the nodes on the least cost path. The method can be divided into two phases. In the first phase, each node sends a packet that either contains its declared cost or some other information. Then, the mesh network gives a small ‘bonus’ to each node such that each node vi maximises its utility when it bids its true cost no matter what other nodes do. In the second phase, we first choose the least cost path LCP(vs, vt, d) using the first bid vector d. Then, each node vi on this least cost path bids a second bid id . We obtain a new cost vector h from d and d by setting hi = di

if vi LCP(vs, vt, d) and i ih d if vi LCP(vs, vt, d). Now we compute the path P = LCP(vs, vt, h), and each node on P should relay the packet and receive a payment hi.Last but not the least important, the nodes that are in LCP(vs, vt, d) but not in P receive a fine | |i id d for being too greedy in bidding 'id .

Algorithm 3. Nash-eqilibrium-based routing

1 Every node vi claims two costs di and id . Notice that if vi is a mesh router, both its claimed costs are equal to its true cost. Let d d d be the declared cost vector for all nodes.

First phase

2 For each node vi G, set 2( ) ( ) / 2j i

i s t i i u u j iv G vf v v d d n d d dd .

Here, du is the maximum cost any node can declare and i(d i) is any function that does not depend on di.

3 Every node sends a dummy packet of size ( )i

i i u iv Gd n d d which may

contain any arbitrary data.

Page 15: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

Routing game in hybrid wireless mesh networks with selfish mesh clients 439

4 Compute the path P LCP( )s tv v d . For each node vi on P , set = 'i ih d , set hi = di

for other nodes.

Second phase

5 Compute path LCP(vs, vt, h) and break ties according to the following rule: if two paths have the same cost, then we choose the one that contains more nodes from path P .

6 Output the path LCP(vs, vt, h) as the final relay path. For any node vi on LCP(vs,vt, h), the payment ( ) ( )i s t i s t iv v f v v hd d . For each node vi on LCP(vs, vt, d)but not on LCP(vs, vt, h), the payment ( ) ( )i s t i s t i iv v f v v d dd d . For other node vi, the payment ( ) ( )i s t i s tv v f v vd d .

To show how our Nash-equilibrium-based method works, we consider the same network in Figure 3 and give two example bidding scenarios shown in Figure 5. The two numbers in the bracket at node vi show the bids di and id . In Scenario I, LCP(vs, vt, d) is vsv1 vnvt. Thus, 2 i ih d for 1 i n. Note that under cost vector h, both paths vsvn + 1vt and vsv1 vnvt have the same cost 2n. However, according to the tie-breaking rule, we will choose vsv1 vnvt because it contains more nodes from LCP(vs, vt, d). Thus, vi for 1 i n gets 2 in the second phase. In Scenario II, LCP(vs, vt, d) is also vsv1 vnvt.Similarly, 3i ih d for 1 i n. However, path vsv1 vnvt has cost 3n in the cost vector h, which is greater than the cost of path vsvn + 1vt. Thus, all nodes vi for 1 i n are punished by fine 2 , respectively. Node vn + 1 gets a payment 2n in the second phase, and the actual routing path is vsvn + 1vt.

Regarding the first phase in Algorithm 3, we can prove the following lemma which shows each node does not have incentive to lie about its cost.

Figure 5 Illustration of Nash-equilibrium-based method (see online version for colours)

Page 16: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

440 Y. Wang, T.A. Dahlberg and W. Wang

Lemma 2. For each node vi, the utility in the first phase ( ) ( )i i i s tg c f v vd d ,strictly decreases in [ )ic and strictly increases in ( ]ic on di.

Proof. The utility gi(d) can be simplified as follows.

2

2

2 2

( ) ( )

( )2

( ) ( )2

( )( ) ( ) ( )

2 2

i

i

i

i

i i i s t

iu u v i u i

v G

iu i u v i i

i i iu i u vi i

g c f v v

dd n d d c n d d

dd c n d d c d

c c dd d c n d d

d d

where i

j iv jv G v

d d . Notice that 2( )[( ) ( ) ( / 2)]ii i u i u v id d c n d d c does not

depend upon di. Thus, gi(d) if a function on di that decreases in [ci, + ) and increases in ( , ci].

We now prove that there must exist some Nash equilibrium for our Nash-equilibrium-based method.

Theorem 3. There exists Nash Equilibrium for our Nash-equilibrium-based method.

Proof. We prove by explicitly constructing a bid vector , 'i ic c , an Nash Equilibrium for our method. Without loss of generality, we assume that P = LCP(vs, vt, c) = vsv1v2 vkvt.Recall that c is the true cost vector. We initialise the cost vector c(0) = c and iteratively process the nodes from v1 to vk as follows: compute VCG payment VCG ( 1)i

i s tv v c

for vi using the cost vector c(i 1), and obtain the new cost vector c(i) from c(i 1) by setting ( ) VCG ( 1)i ii i s tc v v c . Let c = c(k) and the bidding vector d c c .

We now prove that the bidding vector d c c is a Nash Equilibrium by contradiction. For the sake of contradiction, we assume that node vi can increase its utility by declaring a bid pair x, y that is different from , 'i ic c . We discuss by cases.

Case 1. Node vi LCP(vs, vt, c). There are two subcase here.

1 If vi LCP(vs, vt, c|i x), i.e. vi is the LCP generated in the first phase, then the utility in the first phase is gi(c|i x) gi(c) from Lemma 2. In the second phase, 'ic is the maximum value vi can declare when it is still in LCP(vs, vt, c ). Thus, the utility of vi

does not increase.

2 If vi LCP(vs, vt, c|i x), i.e. vi is not in the LCP generated in the first phase, then x > ci. Let P LCP(vs, vt, c|i x) that covers vi and P LCP(vs, vt, c). Here, P is on the path generated in the first phase while P is on the true least cost path. Notice that for any node vj LCP(vs, vt, c), ' j jc c . Thus, for any node vj P , hj = c j = cj. On the other hand, since path P is not part of the generated path, hj = cj for any node

Page 17: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

Routing game in hybrid wireless mesh networks with selfish mesh clients 441

vj P vi. From the assumption P is on the generated LCP, (P , c) (P, c|i x).Here, (P, c) is the total cost of a path P with cost vector c. Thus,

P P P(P ) (P ) (P )

j j j i

ij j jv v v v

h c x c xh c c

P(P )

j i

ijv v

h x xh which implies that vi is not selected in the unicast

phase. Therefore, its overall utility is gi(c|i x). Now we conclude that vi can not increase its utility by declaring a bid pair x, y that is different from ci, c i in this case.

Case 2. Node vi LCP(vs, vt, c). There are also two subcases here.

1 If vi is not in LCP(vs, vt, c|i x), then h = c |i x. vi’s utility from the first phase is gi(c|i x), which is not greater than gi(c) from Lemma 2. If vi is not on LCP(vs, vt, h),then its overall utility is gi(c|i x), which is smaller than gi(c). If vi is on LCP(vs, vt, h),then x < ci, which means that vi’s utility in the second phase is x ci < 0. Thus, vi does not increase its overall utility.

2 If vi LCP(vs, vt, c|i x), i.e. vi manages to decrease its first bid x to be on the generated path, then x < ci. Thus, the utility in the second phase decreases. Let P LCP(vs, vt, c) be a bridge that covers P LCP(vs, vt, c|i x) and vi P . If vi LCP(vs, vt, h), then it has utility | ' |i id d in the second phase. If vi LCP(vs, vt, h), then (P , h) (P, h). Similarly to the argument of case 1, every vj in P and P vi has cost cj. Thus, y must be smaller than ci. Therefore, vi’sutility in the second phase is y ci < 0. This shows vi’s overall utility decreases when vi bids x, y which is different from ci, c i in this case. This finishes our proof.

More generally, if d is any Nash Equilibrium of our method, we have the following lemma.

Lemma 4. Assume that d d d is a Nash Equilibrium for our method where h is the cost vector obtained in Algorithm 3.

1 d = c, i.e. each node declares its true cost as the first bid.

2 LCP(vs, vt, c) = LCP(vs, vt, h), i.e. our algorithm always chooses actual least cost path.

3 For any vi LCP(vs, vt, d) = LCP(vs, vt, c), LCP( ) LCP ( )is t v s tv v v vh h .

Proof. Statement 1. For simplicity for our notation, let P1 = LCP(vs, vt, d) and P2 = LCP(vs, vt, h). We first prove that P1 = P2. We prove this by studying edges in different groups.

vi P1 P2. In this case, vi’s overall utility is gi(d), which is maximised when di = ci. Since, we directly set hi = di for link vi P1, hi = di = ci.

vi P1 and vi P2. In this case, vi’s overall utility is gi(d) | ' |i id d , which is maximised when = 'i i id d c . Thus, = ' = = .i i i ih d d c

vi P2 and vi P1. In this case, we have hi = di.

Then, we can conclude that for any node vj that is not in P2, hj = cj = dj. Thus,

Page 18: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

442 Y. Wang, T.A. Dahlberg and W. Wang

2 1 1 2

2 1 1 2 2 1 1 2

2 1

2 1P P P P

P P P P P P P P

2 1P P

(P ) (P )

(P ) (P ) 0

j j

j j j j

j j

j jv v

j j j jv v v v

j jv v

h h

d c d d

d d

h h

d d

This implies that (P1, d) = (P2, d) and (P1, h) = (P2, h). Thus, P1 = P2.Then we consider all remaining edges, i.e. 2 1P Piv . Notice that 2 1 1P P P since

P1 = P2. If di ci, then by declaring ci, vi’s utility in the first phase increases. In the meanwhile, vi is still on P1, which means that its utility in the second phase does not change. Thus, di ci for each node on P1. If vi is on P1 and di < ci, then it can increase its utility from the first phase by bidding di = ci. In the meanwhile, di ci for each node vi on P1 and di = ci for other nodes. Thus, vi can guarantee that it is still on the least cost path when it declared ci. Therefore, vi can increase its overall utility by bidding di = ci, which contradicts the definition of the Nash Equilibrium. This finishes the proof of the first statement.

Statement 2. The second statement is straightforward from the definition.

Statement 3. Assume that vi LCP(vs, vt, d) = P1. If LCP( ) LCP ( )is t v s tv v v vh h ,

then by bidding d + for a sufficiently small such that LCP( ) LCP ( )

i

is t i v s tv v d v vh h , its utility increases by . Thus,

LCP( ) LCP ( )is t v s tv v v vh h . On the other hand, from the definition of the least cost

path, LCP( ) LCP ( )is t v s tv v v vh h . Thus, LCP( )s tv v h LCP ( )

iv s tv v h for

every vi P1.

Unlike the VCG mechanism that always has the same total payment for a fixed cost vector c, the total payments may vary under different Nash Equilibria for our method. Let

mind and maxd be any two Nash Equilibria of our method such that ( )s tP v v d is minimised and maximised respectively. Usually, persons favour a truthful mechanism over the Nash Equilibrium because the system may have multiple Nash Equilibria and it is almost impossible to reach some specific Nash Equilibria in a distributed setting. However, it is possible that the system performance under different Nash Equilibrium does not differ much, and we are not so worried about which Nash Equilibrium the system converges to. Fortunately, our method does have this nice property and the following theorem shows that the total payment at different Nash Equilibrium differs at most two times.

Theorem 5. max min( ) 2 ( )s t s tP v v P v vd d , i.e. the stability of our method is 2.

Proof. Karlin, Kempe and Tamir (2005) showed that min max

LCP( ) LCP( )

2j s t j s t

j jv v v v v v

d dc c

Page 19: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

Routing game in hybrid wireless mesh networks with selfish mesh clients 443

From Statement 1 of Lemma 4, the total payment for the second phase is a function of d = c. Thus, as long as the true cost vector c is fixed, the total payment for the second phase is fixed, say . From Statement 2 of Lemma 4, The total payment

LCP( )

( )j s t

s t jv v v

P v v dc

d for any Nash Equilibrium d. Thus,

max max min min

LCP( ) LCP( )

( ) 2 2 2 ( )j s t j s t

s t j j s tv v v v v v

v v d d v vc c

d d .

Another application of the minimum Nash Equilibrium is the notation of frugality Karlin, Kempe and Tamir (2005) that is used to measure the overpayment of any mechanism. The frugality of a mechanism is defined as the total payment over v(c), where

min

LCP( )

( )j s t

jv v v

dc

c . It has been shown by Karlin, Kempe and Tamir (2005) that VCG

mechanism has frugality O(n) in unicast routing where n is the number of nodes. On the contrary, our method has a frugality 2 + for any given positive , which greatlyimproves the VCG mechanism and is asymptotically optimal. Before presenting our theorem, we give a lemma that relates the v(c) to the cost of the least bridge cover

( , , )s tv v c .

Lemma 6. Immorlica et al. (2005) and Karlin, Kempe and Tamir (2005). For any network, ( ) | ( , , ) | 2 ( )s tv v v vc c c .

Theorem 7. The frugality of our method is 2 + for any given positive , which asymptotically optimal.

Proof. In the proof of Theorem 5, we obtain that min max

LCP( ) LCP( )

2 ( ) 2j s t j s t

j jv v v v v vc c

c d d

which implies that total payment in the second phase is at most two times the v(c).In the first phase, by setting ( ) ( | ( ) ) / 2i i s td v v nd for each vi LCP(vs,

vt, d) and ( ) ( LCP( ) ) /i i s td v v nd otherwise, the total payment in the first phase is at most v(c) under any Nash Equilibrium d . Thus, the total payment is at most (2 + )v(c), which finishes our proof.

Theorem 7 reveals an important fact: our method could largely reduce the overpayment of the VCG method.

5 Conclusions

In this article, we studied the routing game in hybrid WMNs with selfish mesh clients. We proposed two routing methods to stimulate cooperation among selfish mesh clients: VCG-based and Nash equilibrium-based. The classical VCG-based routing mechanism is truthful (i.e. each node will declare its true cost and also follow the designed protocol) and easy to implement. However, as all VCG mechanisms, the proposed scheme pays each mesh client more than its declared cost to prevent it from lying, thus the overpayment could be large in the worse case. Since in hybrid mesh networks mesh

Page 20: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

444 Y. Wang, T.A. Dahlberg and W. Wang

routers are cooperative, the output of the VCG method is not efficient in terms of total payment. Then by considering the cooperation with mesh routers we proposed two modified VCG methods to refine the efficiency of the VCG method. However, we proved they are not truthful anymore. Finally, we proposed our Nash equilibrium method which adapts a novel idea of double bidding to address the overpayment problem of the VCG-based method. We proved our method could achieve Nash equilibrium with very low total payment compared with VCG-payment. There is still a number of interesting questions left. For example, our protocols assume that nodes will not collude and the cost of a wireless node is fixed. However, in practice, collusion and dynamic cost are very common. Therefore, we leave the study of collusion and dynamic cost model as our future work.

Acknowledgement

The work of Yu Wang was supported, in part, by funds provided by Oak Ridge

Associated Universities and the University of North Carolina at Charlotte.

References Anderegg, L. and Eidenbenz, S. (2003) ‘Ad hoc – VCG: a truthful and cost-efficient routing

protocol for mobile ad hoc networks with selfish agents’, Paper presented in the Proceedings of the 9th ACM Annual International Conference on Mobile Computing and Networking (MobiCom), pp.245–259.

Blazevic, L., Buttyan, L., Capkun, S., Giordano, S., Hubaux, J.P. and Boudec, J.Y.L. (2001) ‘Self-organization in mobile ad-hoc networks: the approach of terminodes’, IEEE Communications Magazine, Vol. 39, pp.138–147.

Bruno, R., Conti, M. and Gregori, E. (2005) ‘Mesh networks: commodity multihop ad hocnetworks’, IEEE Communications Magazine, Vol. 43, pp.123–131.

Buttyan, L. and Hubaux, J.P. (2000) ‘Enforcing service availability in mobile ad-hoc wans’, Paper presented in the Proceedings of the 1st ACM International Symposium on Mobile ad hoc Networking and Computing, pp.87–96.

Buttyan, L. and Hubaux, J. (2003) ‘Stimulating cooperation in self-organizing mobile ad hocnetworks’, ACM/Kluwer Mobile Networks and Applications, Vol. 5, pp.579–592

Carbunar, B., Ioannidis, I. and Nita-Rotaru, C. (2004) ‘Janus: towards robust and malicious resilient routing in hybrid wireless networks’, WiSe ’04: Proceedings of the 2004 ACM Workshop on Wireless Security, pp.11–20, ACM Press.

Chandra, R., Fetzer, C. and Hogstedt, K. (2002) ‘Adaptive topology discovery in hybrid wireless networks’, Paper presented in the Proceedings of the 1st International Conference on Ad-Hoc Networks and Wireless (AdHoc-Now), Toronto.

Clarke, E.H. (1971) ‘Multipart pricing of public goods’, Public Choice, Vol. 11, pp.17–33. Dousse, O., Thiran, P. and Hasler, M. (2002) ‘Connectivity in ad-hoc and hybrid networks’, Paper

presented in the Proceedings of the Annual Joint conference of the IEEE Computer and Communications Societies (INFOCOM), New York.

Feigenbaum, J. and Shenker, S. (2002) ‘Distributed algorithmic mechanism design: recent results and future directions’, DIALM ’02: Proceedings of the 6th International Workshop on Discrete Algorithms and Methods for Mobile Computing and Communications, pp.1–13, ACM Press.

Page 21: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

Routing game in hybrid wireless mesh networks with selfish mesh clients 445

Feigenbaum, J., Papadimitriou, C., Sami, R. and Shenker, S. (2002) ‘A BGP-based mechanism for lowest-cost routing’, Paper presented in the Proceedings of the 2002 ACM Symposium on Principles of Distributed Computing, pp.173–182.

Green, J. and Laffont, J.J. (1977) ‘Characterization of satisfactory mechanisms for the revelation of preferences for public goods’, Econometrica, Vol. 45, pp.427–438.

Groves, T. (1973) ‘Incentives in teams’, Econometrica, Vol. 41, pp.617–631. Hsieh, H-Y. and Sivakumar, R. (2004) ‘On using peer-to-peer communication in cellular wireless

data networks’, IEEE Transactions on Mobile Computing, Vol. 3, pp.57–72. Ian, F., Akyildiz, X.W. and Wang, W. (2005) ‘Wireless mesh networks: a survey’, Computer

Networks, Vol. 47, pp.445–487. Immorlica, N., Karger, D., Nikolova, E. and Sami, R. (2005) ‘First-price path auctions’, Paper

presented in the Proceedings of the 6th ACM Conference on Electronic Commerce(EC’05).Jakobsson, M., Hubaux, J-P. and Buttyan, L. (2003) ‘A micro-payment scheme encouraging

collaboration in multi-hop cellular networks’, Paper presented in the Proceedings of the Financial Cryptography.

Karlin, A., Kempe, D. and Tamir, T. (2005) ‘Beyond VCG: frugality of truthful mechanisms’, Paper presented in the Proceedings of IEEE Symposium of Foundations of Computer Science (FOCS), pp.615–626.

Lamparter, B., Paul, K. and Westhoff, D. (2003) ‘Charging support for ad hoc stub networks’, Elsevier Computer Communications, Vol. 26, pp.1504–1514.

Luo, H., Ramjee, R., Sinha, P., Li, L.E. and Lu, S. (2003) ‘Ucan: a unified cellular and ad-hoc network architecture’, MobiCom ’03: Proceedings of the 9th Annual International Conference on Mobile Computing and Networking, pp.353–367, ACM Press.

Marti, S., Giuli, T.J., Lai, K. and Baker, M. (2000) ‘Mitigating routing misbehavior in mobile ad hoc networks’, Paper presented in the Proceedings of ACM Annual International conference on Mobile computing and Networking (MobiCom).

Nisan, N. (1999) ‘Algorithms for selfish agents’, Lecture Notes in Computer Science, Vol. 1563, pp.1–15.

Nisan, N. and Ronen, A. (1999) ‘Algorithmic mechanism design’, Paper presented in the Proceeding of the 31st Annual Symposium on Theory of Computing (STOC99), pp.129–140.

Roughgarden, T. (2001) ‘Designing networks for selfish users is hard’, Paper presented in the Proceedings of IEEE Symposium on Foundations of Computer Science, pp.472–481.

Roughgarden, T. (2004) Selfish Routing and the Price of Anarchy. Cambridge, MA: MIT Press. Salem, N.B., Buttyan, L., Hubaux, J-P. and Jakobsson, M. (2003) ‘A charging and rewarding

scheme for packet forwarding in multi-hop cellular networks’, MobiHoc ’03: Proceedings of the 4th ACM International Symposium on Mobile ad hoc Networking and Computing,pp.13–24, ACM Press.

Srinivasan, V., Nuggehalli, P., Chiasserini, C.F. and Rao, R.R. (2002) ‘Energy efficiency of ad hocwireless networks with selfish users’, Paper presented in the Proceedings of European Wireless Conference 2002 (EW2002).

Srinivasan, V., Nuggehalli, P., Chiasserini, C.F. and Rao, R.R. (2003) ‘Cooperation in wireless ad hoc networks’, Paper presented in the Proceedings of Annual Joint conference of the IEEE Computer and Communications Societies (INFOCOM).

Vickrey, W. (1961) ‘Counterspeculation, auctions and competitive sealed tenders’, Journal of Finance, Vol. 16, pp.8–37.

Wang, W. and Li, X-Y. (2006) ‘Low-cost routing in selfish and rational wireless ad hoc networks’, IEEE Transactions on Mobile Computing, Vol. 5, pp.596–607.

Wang, W., Li, X-Y. and Wang, Y. (2004) ‘Truthful multicast in selfish wireless networks’, Paper presented in the Proceedings of ACM Annual International Conference on Mobile Computing and Networking (MobiCom 2004).

Page 22: Routing game in hybrid wireless mesh networks with selfish ......Routing game in hybrid wireless mesh networks with selfish mesh clients 427 regions can also be smaller than the one

446 Y. Wang, T.A. Dahlberg and W. Wang

Wang, W., Li, X-Y., Sun, Z. and Wang, Y. (2005) ‘Design multicast protocols for non-cooperative networks’, Paper presented in the Proceedings of Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM05).

Wang, W., Eidenbenz, S., Wang, Y. and Li, X-Y. (2006) ‘OURS: optimal unicast routing system in non-cooperative wireless networks’, paper presented in the Proceeding of ACM Annual International Conference on Mobile Computing and Networking (MobiCom 2006).

Weyland, A., Staub, T. and Braun, T. (2005) ‘Comparison of incentive-based cooperation strategies for hybrid networks’, Paper presented in the Proceedings of the Third International Conference on Wired/Wireless Internet Communications (WWIC 2005).

Wu, H., Qiao, C., De, S. and Tonguz, O. (2001) ‘Integrated cellular and ad hoc relaying systems: iCAR’, IEEE Journal on Selected Areas in Communications, Vol. 19, pp.2105–2115.

Zhong, S., Li, L., Liu, Y.G. and Yang, Y. (2005) ‘On designing incentive-compatible routing and forwarding protocols in wireless ad-hoc networks: an integrated approach using game theoretical and cryptographic techniques’, Paper presented in the Proceedings of the 11th Annual International Conference on Mobile Computing and Networking (ACM Mobicom).

Notes 1 We can set the costs of mesh routers as zeros, if we consider that the mesh clients already pay the service fee to the network service provider. However, in this article, we assume the user still needs to pay the network service provider for particular uses of the mesh routers for relaying messages.

2 Notice that the costs of s and t are not included, since all path share them.