An Incentive-Based Energy-Efficient Management ... - Semantic Scholar

1 downloads 77905 Views 1MB Size Report
IN recent years, especially after introduction of iOS and Android operating systems, the general trend of mobile phones has been moving towards smartphones.
1

An Incentive-Based Energy-Efficient Management Framework for Service Discovery in Device-to-Device Communications Seyed Mohammad Asghari Pari, Mohammad Hassan Lotfi Froushani,

arXiv:1308.0959v2 [cs.NI] 28 Sep 2013

Mohammad Noormohammadpour, Babak Hossein Khalaj, Member, IEEE, and Marcos Katz, Member, IEEE Abstract The cooperative arrangement of Device-to-Device (D2D) communications-enabled devices for sharing distributed resources brings many new opportunities. In this paper, we use the term “Mobile Cloud” for representing a mobile peer-to-peer network where devices themselves are resource providers. One of the most important problems required to be addressed before real implementation of such mobile clouds is adopting a proper service discovery scheme. In this paper, we propose a task-based self-organizing model as our management framework for mobile clouds. In the proposed model, the service discovery task is handled by a node selected as the leader. In order to select the most qualified node as the leader, we propose a leader selection mechanism which is based on multi-player first-price sealed-bid auction. Incentives in the form of credit transfer from service discovery requesting nodes to the leader are considered to encourage nodes to assume the leadership role. Furthermore, we propose a secure transaction model between service discovery requesting nodes and the leader for each service discovery. The simulation results demonstrate that our proposed leader-based service discovery model balances the energy consumption of cloud participants, and increases the overall lifetime of mobile clouds. Index Terms Device-to-Device Communications, Mobile Cloud, Service Discovery, Task-based Self-organizing Algorithms, Incentive Mechanism, First-price Auction, Leader Selection.

F

• S. M. Asghari Pari, M. Noormohammadpour, and B. H. Khalaj are with the Department of Electrical Engineering, Sharif University of Technology, Tehran, Iran (e-mail: [email protected], [email protected], [email protected]). • M. H. L. Froushani is with the Department of Electrical and System Engineering, University of Pennsylvania, Philadelphia, PA, USA (e-mail: [email protected]). • M. Katz is with the Department of Electrical Engineering, University of Oulu, Oulu, Finland (e-mail: [email protected]).

2

1

I NTRODUCTION

I

N

recent years, especially after introduction of iOS and Android operating systems, the general trend

of mobile phones has been moving towards smartphones. According to Gartner [1], the number of

smartphones sold in the first quarter of 2013 increased by 42.9 percent in comparison with the first quarter of 2012. Being equipped with a powerful operating system enables devices such as smartphones and tablets to handle third-party applications, and consequently adding new services and capabilities to such devices. In addition, almost all such devices are typically equipped with multiple types of wireless networking interfaces including Wi-Fi (i.e., IEEE 802.11-based wireless networking). By taking advantage of traditional Device-to-Device (D2D) communications (e.g., Wi-Fi direct [2], and Bluetooth), devices are able to communicate directly with each other without the assistance of any access points or the involvement of network operators. Recently, there has been a noticeable trend in D2D communications where the network operators control the communication process to provide better user experience (i.e., LTE-direct proposed by Qualcomm [3]). Such D2D communications-enabled devices are able to share their own resources with others; where resources can range from content (e.g., music and photo files) to processing power of Central Processing Unit (CPU) and Graphics Processing Unit (GPU). Throughout this paper, we use the term “Mobile Cloud” for the cooperative arrangement of these communication-capable devices, which is formed with the resource sharing goal in mind [4], [5]. By utilizing such clouds, the following advantages can be achieved in general: 1) Improvement in performance measures such as data throughput and security [6], [7]. 2) Enhancement in resource usage efficiency such as energy efficiency in cooperative video streaming [8], [9], [10]. 3) Accessibility of novel services and applications which are hard to achieve in an autonomic/noncooperative way (e.g., sharing loudspeakers to create 3D sound effect, CPU sharing, file sharing, and sensor sharing [11], [12]). Despite the advantages of mobile clouds, there are also many problems required to be addressed before their implementation turns into reality. One of the most important issues is service discovery (SD), i.e., how to find which services are offered in such clouds and also how to obtain them. Since devices participating in mobile clouds are able to directly connect to each other and exchange information, our requirements in such clouds are very similar to the ones addressed in peer-to-peer (P2P) networks in which two approaches are generally adapted [13]: pure peer-to-peer and hybrid peer-to-peer. In the pure approach, there is no peer with administrative role and hence, nodes have to self-organize

3

themselves based on available local information. On the other hand, in the hybrid one, there are one or more servers working only as mediators, whereas the actual data is transferred among the peers. In the pure model, each node is responsible for SD itself; however, in the hybrid one, SD is handled by the servers. One example of pure approach is current D2D communications where irrespective of whether peer discovery is done in a centralized [14], [15] or distributed [16] way, the SD phase is handled by devices themselves. As an example of hybrid approach, network-assisted D2D communications have been recently proposed in [17] where the LTE network can act as the server, and assist devices in the SD phase. In comparing the two aforementioned approaches, it should be noted that the presence of the server(s) improves query performance of hybrid networks and lowers their discovery delay compared to pure ones in which the queries are flooded throughout the network, and hence the efficiency is degraded [18], [19]. In addition, hybrid networks are more suited to dynamic environments because the server(s) can gather information with the advertisement procedure, and using such information events such as addition or departure of nodes, which occur frequently in mobile networks, can be handled more efficiently [20], [21]. Despite such advantages, the hybrid models suffer from the important drawback of having a critical point of failure. Since these models depend on the correct operation of the server(s), any failure in such server(s) can cause severe disruption in network operation. In case of the model proposed in [17], such failures can be due to the fact that the devices have no access to the LTE network, or the Base Transceiver Station (BTS) (which is referred to as the Evolved Node B (eNodeB) in the LTE networks) operation is disrupted. Considering the advantages of hybrid model in comparison with pure one, task-based self-organizing algorithms can be used to address the point of failure problem by sequentially selecting the best nodes to act as servers [22]. As a result, a common approach for SD in mobile clouds is for nodes to cooperate in selecting one node as the leader with the duty to gather SD information, prepare a database, and respond to SD requests coming from other nodes. In [23], authors proposed a management framework for mobile clouds in which a node with highest level of resources is selected as leader. Such a leader is responsible for introducing a suitable service provider to each SD requesting node. However, such a framework suffers from a key disadvantage due to the fact that it assumes each node reports its resource level truthfully, which is not valid in the presence of selfish nodes. Since the leader has more energy consumption compared to the other nodes in the cloud, nodes have no inherent incentives for accepting the leadership role. As a result, without external incentives for serving others, selfish nodes may be untruthful about their resource level in order to avoid becoming the leader.

4

Current approaches to provide such incentive can be broadly divided into two main categories: pricebased systems [24], [25] and reputation-based systems [26], [27]. In the former category, cooperation is explicitly remunerated by virtual credits. On the other hand, in the latter one, the behavior of nodes is monitored by other nodes, and misbehaving nodes are deprived of receiving any services. Although the presence of selfish nodes in the packet forwarding problem has been addressed well in the literature (e.g., [28], [29], [30]), leader selection in the presence of such nodes is not a well-studied topic. In [31], in order to provide selfish nodes with incentives in the form of reputations, the authors have proposed a secure leader selection model for intrusion detection systems based on the Vickrey, Clarke, and Groves (VCG) mechanism. Since price-based systems are more secure than reputation-based ones [32], the use of price-based systems is more advantageous. However, since VCG mechanism is not budget-balanced [33], the model in [31] cannot be applied to credit-based systems. Therefore, a new model compatible with credit-based systems is required.

Our Contributions In this paper, in order to balance the energy consumption among nodes in the cloud and prolong overall network lifetime, we propose a leader-based management framework for service discovery (SD) in mobile clouds. In our framework, incentives are designed in the form of credit transfer from SD requesting nodes to the leader as a SD fee. Since the leader earns credit by introducing a proper service provider to a SD requesting node, if the amount of SD fee is lucrative enough to compensate for the cost imposed on the leader, all nodes will have incentive to compete with each other for becoming the leader. In order to select a node as leader, we propose a leader selection mechanism which is based on multi-player first-price sealed-bid auction. The proposed management framework consists of two different consecutive phases. In the first phase, a leader is selected among all participating nodes through an auction. Since there is no entity to perform the auction, the auction is implemented as a series of two-node interactions. Subsequently, the management procedure enters the second phase which is divided into a number of leadership periods. The leader selected in the phase I assumes the leadership role in the first period of phase II. Before the end of each period, the current leader of cloud is responsible for selecting a new leader for the next period through a multi-player auction. Furthermore, since the leader receives an amount of credit in return for a successful SD, a secure transaction model between SD requesting nodes and the leader is required. We present a model based on [34] which is proposed for a certified E-mail. This model guarantees that no party can cheat during

5

SD procedure. Finally, we show the validity and performance of our proposed framework through analysis and simulation. The simulation results demonstrate that the proposed leader-based SD model balances the energy consumption of mobile participants, and increases the overall lifetime of mobile clouds. To the best of our knowledge, this work is among the first efforts in addressing the presence of selfish nodes in a leader-based resource sharing framework that considers a credit exchange model. Our proposed framework for SD can be implemented either independent from cellular networks, or as an integrated part of such networks in order to offload/backup the BTS in emergency situations. The rest of this paper is organized as follows: in Section 2, we present our system architecture. In Section 3, we introduce our leader-based management framework. Section 4 is devoted to security issues of our proposed framework. In Section 5, simulation results are presented. Finally, Section 6 concludes the paper.

2

T HE S YSTEM A RCHITECTURE

We consider a mobile cloud in which each participating node has a unique identity. If a node is selected as the leader, the cost imposed on this node is expressed in its Service Discovery Provisioning Cost (SDPC), which will be defined in Section 3.2. In order to minimize the total costs imposed on participants for SD, our solution is to select the node with the lowest SDPC as the leader. However, the value of such cost is private to every node. Therefore, nodes may not truthfully reveal their SDPCs unless attractive incentives are provided. For this purpose, we consider incentives in the form of credit transfer from SD requesting nodes to the leader. In order to select the node with the lowest SDPC as the leader, we propose a leader selection mechanism which is based on multi-player first-price sealed-bid auction. In the leader selection process, each node offers a SD fee in order to compensate for the SDPC imposed on it. The amount of the SD fee offered by each node reflects the private value of its SDPC. Then, the node with the lowest offered SD fee is selected as the leader, which minimizes the total SD cost of participants in the cloud. In order to implement a multi-player auction among participating nodes, we propose a management framework which consists of two different phases as illustrated in Fig. 1. The aim of the first phase is to form a cloud including all participants, and to select the node with the lowest SD fee as its leader. Since there is no central entity known to all nodes in order to perform the auction, one solution is that each node broadcasts its SD fee to all other nodes, which imposes a large amount of communication overhead on the network. In order to address this issue, we perform

6

Fig. 1: Cloud management timing

a multi-player auction as a series of two-node interactions. In each two-node interaction, the node that has the lowest SD fee is selected as the leader, and another node is considered as a client. Then, the interactions are performed one-on-one among the remaining leaders. The first phase ends when just one node is left which is the leader. This node is recognized as the leader of the cloud by others, i.e., clients. The second phase is divided to a number of leadership periods that each lasts Tselect units of time, known as a time-slot. The leader selected in the first phase assumes the leadership role during the first time-slot. Such a leader is responsible for classifying the available resource status data in a database based on the information each node sends regularly to it. After receiving a SD request from a client, the leader uses the information available in the database to find a proper service provider, and then receives a voucher from the SD requesting node in return. The value of each voucher is equal to the amount of the SD fee it has offered in the leader selection process. Afterwards, the SD requesting node and the service provider should reach an agreement over the protocols and other requirements of the resource sharing such as service price; a process which is beyond the scope of this paper. Finally, after a time equal to αTselect , where α is slightly smaller than 1, a new leader should be selected for the next time-slot. Since

current leader of the cloud is known to clients, such a node performs an auction among all participants of the cloud. The winner of the auction assumes leadership role during the next time-slot. We also consider the presence of one Trusted Unit (TU) in our proposed system architecture which is only responsible for credit transfer among participants (similar to Credit Clearance System (CCS) in Sprite [32]) and also can act as a mediator (similar to Trusted Third Party (TTP) in [34]) in abnormal cases where one party is trying to deviate from the rules, e.g., one of SD requesting nodes or the leader intends to cheat during SD procedure. However, since our objective is to design a framework which is independent of any management unit outside of the cloud and also can be implemented in a distributed manner, we do not rely on real-time access to the TU in our system architecture. Therefore, the TU cannot act as the entity performing the auction among participating nodes. In general, any trusted entity out of the cloud which is accessible by all members, even temporarily, can be considered as TU in our system

7

Fig. 2: Credit exchange model in mobile clouds

Fig. 3: System architecture for service discovery in mobile clouds

architecture. As a result, the TU can be either a server accessible via internet, or a BTS unit. In our framework, a specific amount of credit is assigned to each node entering the cloud for the first time. In addition, each node can earn credits by providing service for other nodes. In return, they can spend such credits to get service from other nodes. For more clarification, consider the situation shown in Fig. 2 where node B earns credits by providing some service for node C, and can spend these credits to get service from node A. For example, node B may share its processing power with node C while using the additional data pipe provided by node A to increase its overall data throughput. A typical architecture of our modeling framework is shown in Fig. 3. One node plays the role of leader while others act as clients. When client 3 sends a request to the leader, the leader finds a proper service provider among other nodes, which is client 5 in this case. Then, the leader introduces client 5 to client 3, and receives a voucher as SD fee in return. Finally, after reaching an agreement over the cooperation requirements, client 5 provides the service for client 3 and receives some credit in return. In the next section, we present our leader-based management framework.

3

L EADER -BASED M ANAGEMENT F RAMEWORK

In this section, we present our leader-based management framework for SD in mobile clouds. First, we state our assumptions (Section 3.1). Parameters of the model are introduced in Section 3.2. Section 3.3

8

formulates the leader selection problem. Then, the two phases of management framework are introduced (Sections 3.4 and 3.5). Finally, we consider the event of entrance and departure of nodes to/from the cloud.

3.1

Assumptions

A mobile cloud consisting of n nodes is considered. In order to distinguish nodes, we assume that each node has a certificate issued by a certificate authority such as the ones proposed in [35], [36]. The credit of all nodes are stored in a secure manner by the TU. In order to get credit from SD requesting nodes, the leader needs to report the vouchers it has received to the TU. It can save its vouchers inside a local storage such as a CompactFlash card, or a secure element such as a Subscriber Identification Module (SIM) card. Vouchers should be reported to the TU as soon as the nodes have access to it. In addition, we assume that the demand of participating nodes for SD in the cloud is high, but the leader responds to only η number of SD queries. Furthermore, we consider the following assumptions: •

Connection among nodes is established at the transport layer. Therefore, all routing and errorcorrecting operations are handled by lower network layers, and are hidden to the procedures we explain. As a result, routes are available from the source to the destination, while providing error-free channels.



In case of a network with large number of nodes, clustering algorithms (e.g., [37], [38]) could be used in order to divide such nodes into a number of clouds with appropriate sizes.



Every node knows the number of cloud participants, which is reasonable since nodes usually maintain a table for routing purposes.



Some level of time synchronization is available among all nodes.



Each node is aware of entrance of a new node or departure of a present node.

It should be noted that the last three assumptions have also been implemented in [31].

3.2

Parameters and Concepts

In our framework, one node is selected as the leader among n participants. The selected leader has the responsibility of SD for a given time-slot. All clients should send the information about the status of their resources to the leader every Tadv units of time if they want to participate in the cloud. Based on such information, the leader prepares a database, and uses this database to find an appropriate service provider for each SD query. Furthermore, the leader is responsible for selecting a new leader for the next time-slot.

9

If node i is the leader, and receives p∗ for each SD, its payoff will be as follows: DB Ui = (n − 1)η(p∗ − cSi − cM − mi cSi − cLS i ) − ci i

(1)

where η , as mentioned in Section 3.1, is the number of SD queries of each client to which the leader responses, cSi is the processing cost imposed on node i for searching the database in order to find a proper service provider, cM i is the messaging cost imposed on node i for introducing such a service provider to the SD requesting node, cDB is the processing cost imposed on node i for preparing a database and i updating it, and cLS is the messaging cost imposed on node i for performing a leader selection process i among all the participants. Finally, mi is the number of times this node searches the database for finding a service provider for itself. Note that at a time-slot of duration Tselect , each node advertises its resources bTselect /Tadv c times, where bxc is the floor function mapping x to the largest preceding integer. Considering a cloud with n participants, the total number of messages the leader should process is (n − 1)bTselect /Tadv c. Therefore, cDB is a function of (n − 1)bTselect /Tadv c and the resource status of node i (RSi ). In addition, cSi and cLS i i

are functions of both the resource status of the leader (RSi ) and the number of participating nodes (n), and cM i is a function of only the resource status of node i (RSi ). The leader’s payoff can be rewritten as, Ui = M (p∗ − ci )

(2)

where M is the total number of SDs the leader should perform for clients in one time-slot, i.e., M = (n − 1)η , and ci is the Service Discovery Provisioning Cost (SDPC) per SD imposed on the leader given

by: ci = cSi + cM i +

S cDB + cLS i i + mi ci M

(3)

If a client intends to receive η number of SDs from the leader, it should pay p∗ for each SD response. Assume that the valuation of each SD for a client is fixed and high. Therefore, such a valuation does not affect the strategy of the client. The payoff of client i is defined as: Ui = −ηp∗

(4)

In pure scheme for SD, there is no leader. Therefore, each node performs SD itself. If node i performs

10

η number of SDs itself, its payoff is as follows: Ui = −ηci

(5)

where ci is the Service Discovery Cost (SDC) per SD imposed on node i in a pure scheme for SD. This cost is a function of the resource status of this node (RSi ) as well as the number of participating nodes. Based on the definition of SDPC and SDC, these costs are proportional to the resource status (RS ) of each node. The higher the RS , the smaller these two costs will be. Note that higher RS is an indicator of a higher availability of resources, e.g., remaining battery percentage. In this paper, we assume SDPC of each node is smaller in comparison with its SDC, i.e., ci < ci ∀i, which is reasonable due to the fact that in a pure model, SD in a cloud requires a large number of messaging, which imposes considerable cost on a node. On the other hand, with respect to the value of SDPC as given by (3), the term cM i requires only 3 messages (as will be explained in Section 4), and the LS 2(n − 1) 2 c = messages (as will be explained in Section 3.5.3), which is negligible for term i requires M M η mi S cDB η > 2. The term (1 + )ci is a quite negligible processing cost, and the term i can be reduced to a M M desired level by choosing a proper value of η . By comparing (4) and (5), it can be concluded that the client i participates in our leader-based SD scheme if the amount of SD fee that the leader receives is less than ci , i.e., p∗ < ci . Assume that every node i in the interval [ci , ci ] bids a SD fee proportional to its SDPC (i.e., p∗ < ci and the higher the SDPC, the higher the SD fee). If the node with the lowest SD fee is selected as the leader, this node (e.g., node i) not only has the lowest SDPC, but also has the lowest SDC (i.e., ci < cj j 6= i). This is due to the fact

that both SDPC and SDC depend on the resource status of a node and have a strictly decreasing relation with it, i.e., if nodes are arranged based on their SDPCs and SDCs, all nodes have the same ranking position in both arrangements. Therefore, we can conclude that: p∗ < ci & ci < cj j 6= i =⇒ p∗ < cj ∀j

(6)

As the resource level of nodes decreases over time, their SDPC and SDC values will increase. Since the amount of payment offered by the node i in the leader selection process is on the basis of the current value of ci , after a while, the amount of payment may not be enough to compensate its SDPC. In order to address this issue, each node assumes leadership role for one time-slot, and the length of this time-slot as well as the number of SDs the leader presents are selected such that the amount of payment the leader receives be lucrative enough until the end of current time-slot. Let Eireq denote the minimum level of energy required for node i in order to assume the leadership

11

role for one time-slot, DB Eireq = (M + mi )cSi + M cM + cLS i + ci i

(7)

Then, each node can set its SDPC as follows:

ci =

   ∞

Ei ≤ Eireq

DB LS S   cS + cM + ci + ci + mi ci i i

M

Ei >

(8)

Eireq

where Ei is the current level of energy for the node i. Based on (8), a node has an infinite SDPC if its remaining energy is less than the energy required to assume leadership role for one time-slot.

3.3

Auction-Based Leader Selection

Since the SDPC values of nodes are private to every node, we model the leader selection problem by an incomplete information game known as Bayesian Game. Definition 1. A Bayesian game consists of •

A set of players



A set of types for each player i: θi ∈ Θi



A set of actions (pure strategies) for each player i: si ∈ Si



A probability distribution P (θ1 , θ2 , ..., θn ) over types



A payoff function for each player i: Ui (s1 , ..., sn ; θ1 , ..., θn )

Definition 2. A (pure) strategy for player i is a map si : Θi → Si prescribing an action for each possible type of player i. Definition 3. The strategy profile s(.) is a (pure strategy) Bayesian Nash equilibrium (BNE) if for all i, θi , and 0

si ∈ Si : 0

E[Ui (si (θi ), s−i (θ−i ) | θi )] ≥ E[Ui (si (θi ), s−i (θ−i ) | θi )]

where, E[Ui (si (θi ), s−i (θ−i ) | θi )] =

Z

Ui (si (θi ), s−i (θ−i ); θi , θ−i )P (dθ−i | θi )

Our leader selection problem is modeled as a multi-player first-price sealed-bid auction game, where players are the nodes that participate in the cloud denoted by N = {1, 2, ..., n}. The type of a player is its SDPC, i.e., ci , which is private. The strategy of each player is the bid it submits as its SD fee. We

12

denote such a parameter for node i by bi which is a function of ci ; bi = σi (ci ) where σi is an increasing, continuous, and differentiable function. We will later prove that the NE solution indeed satisfies such an assumption. Assume that the belief of each player about the SDPC of others is independent of the player, and is uniformly distributed in the interval [0, K]. The payoff of winner and losers are given in (2) and (4), respectively. If player i bids bi , its expected payoff is, Ui (ci , bi ; {σk (ck )}k∈N \{i} ) = E{M (bi − ci )|bi < σk (ck ) ∀k ∈ N \ {i}} × P r[bi < σk (ck ) ∀k ∈ N \ {i}] + E{−ησj (cj )|σj (cj ) < bi , σj (cj ) < σk (ck ) ∀k ∈ N \ {i, j}} × P r[σj (cj ) < bi , σj (cj ) < σk (ck ) ∀k ∈ N \ {i, j}]

(9)

where the term M (bi − ci ) is the payoff of player i if it wins the auction, and the term −ησj (cj ) is its payoff when it loses the auction and another player (without loss of generality call it j ) wins the auction. We investigate the class of symmetric Nash equilibria, i.e., σj (cj ) = σ(c) ∀j ∈ N . Utilizing the notion of symmetric equilibria helps us reduce the multiplicity of NE. The payoff of player i is, Z Ui (ci , bi ; {σ(ck )}k∈N \{i} ) =M (bi − ci )

Z ... ck > σ

Z − cj σ (σ(cj ))

(10)

∀l ∈ N \ {i, j}

Note that the distribution of SDPCs are independent from each other, therefore the bids are independent. Thus, ησ(cj ) 1 1 dck ]n−1 − [ dcl ]n−2 dcj K ck >σ −1 (bi ) K cj cj K Z K − σ −1 (bi ) n−1 ησ(cj ) K − cj n−2 = M (bi − ci )[ ] − [ ] dcj −1 K K K cj