1. Introduction
Mobile cloud computing (MCC) is regarded as an emerging research area that could combine cloud computing [1] with the mobile Internet [2]. MCC can improve the performance of mobile applications that are offered by the mobile cloud service providers by offloading data processing from mobile devices (MDs) to the remote cloud. As a result, MDs do not need a powerful configuration since all the complicated computing can be processed in the cloud servers [3]. However, the amount of application data that is transmitted on both wired and wireless networks increases rapidly because all users’ requests have to be supported from the remote cloud [4,5]. As a result, the communication overhead of MD will consume a significant amount of battery energy. Moreover, the stochastic wireless channels and the MDs leave the network might lead to link loss, which can cause serious energy consumption [6]. Therefore, reducing the energy consumption of transmission is one of the most significant issues in MCC.
The energy efficiency of data transmission in wireless networks was investigated in [7,8], [9,10]. In [7], a code-based sleep and wake-up scheduling scheme was presented to minimize energy consumption caused by idle listening. In [8], an optimal sleep interval was derived to minimize power consumption while still satisfying the mouth-to-ear delay constraint. In [9], an enhanced dynamic power management method was proposed to schedule scaled jobs at slack time with the goal of saving energy and keeping system reliability. These studies focused on controlling sleep interval during the sleep state, while Choi and Lee [10] investigated how to efficiently control the transition from active to sleep state by considering the attributes of the request-and-response delay. However, the above proposals only considered the power states of the MDs during data transmission, ignoring the time-varying channel environment. Poor channel conditions result in an increase in data transmission time [11], and this causes an increase in transmission energy.
In order to further reduce transmission energy in the time-varying channel environment, some transmission schemes [12,13,14] have been studied. Zafer and Modiano [12] used a novel continuous-time optimal-control formulation and Lagrangian duality to propose an optimal transmission scheduling that can dynamically adapt to time-varying channels to minimize energy consumption. Neely [13] exploited time-varying channel conditions to design the Energy-Efficient Control (EEC) algorithm based on the Lyapunov optimization method. Ra et al. [14] implemented the Lyapunov optimization method on MDs in multiple wireless interface environments and proposed the Stable and Adaptive Link Selection Algorithm (SALSA) with time-varying V values to meet different video application delay tolerances. In fact, the methods of [12,13,14] find an expected channel with good condition to transmit the data by postponing the communication for a period of time such that a balance between the energy consumption and queue backlog for mobile applications is achieved. In practice, the channel conditions of MDs may become extremely poor over a very long period of time because of coverage holes or pilot pollution. In this situation, on the one hand, channels may defer the data transmission until their supported user’s channel condition is sufficiently good. On the other hand, as the queue backlog increases, channels may transmit the data to their support user at the low service rate. Indeed, a balance between energy consumption and queue backlog can be achieved. However, to achieve this, a huge energy consumption is incurred.
Recently, some researchers have proposed the idea of proactive fetching applications for all subscribed mobile users [15,16]. Motivated by them, in this paper, we address the optimal transmission energy for the time-varying channel scenario in MCC networks that takes into account the number of service subscriptions. By introducing the Lyapunov optimization method, we propose a combined service subscription and delivery (CSSD) algorithm that can guide a user to subscribe to services reasonably and determine whether to deliver the data as well as to whom this data is sent in the current time unit based on the queue backlog and channel state. Numerical results validate that our proposed CSSD algorithm can effectively decrease both the transmission energy and queue backlog by making transmission decisions. As a result, users are guided to rational cloud service subscription choices.
The rest of this paper is organized as follows. The system model and the problem statement are introduced in Section 2. In Section 3, the proposed CSSD algorithm is explained in detail. In Section 4, the performance of the CSSD algorithm is analyzed. Section 5 presents experimental results and performance comparisons. Finally, Section 6 concludes the paper.
2. System Model and Problem Statement
We consider an MCC environment in which a mobile application is divided into two parts [17], i.e., communications and cloud computing (e.g., CPU, memory, storage, and applications). The mobile agent, which resides at the base station, is expected to bridge the gap between cloud computing and data transmission that traditionally operated quite separately [18]. In this paper, we suppose that cloud services can be promoted to users through a mobile agent and service data can be delivered to users via a time-varying channel. The system model is shown in Fig. 1.
Fig. 1.System model
2.1 System Model
Let T be the time unit. We use Tk = ⌈t/T⌉ to denote the k-th time unit, where t is any time. The system operates in unit time. Define a(Tk) to be the amount of data arriving at a mobile agent when the system runs a mobile application (e.g., video streaming, audio streaming, or news reading) during time unit Tk. Suppose a(Tk) is Poisson distributed with E[a (Tk)] = λ and a(Tk) ∈ {0,1,⋯,Amax}. Let useer i ∈ {0,1,⋯,N} subscribe to ni mobile applications in time unit Tk, then the number of data packets arriving at the mobile agent is nia(Tk) during this time unit, where 0 ≤ ni ≤ nmax. The data packet of user i that arrives at the mobile agent is queued in Qi.
Let r(Tk) = (r1(Tk),r2(Tk),⋯,rN(Tk)) be the vector of current channel states for different users during time unit Tk. After acquiring these channel states, the channel chooses the appropriate user to transmit their data packet to in each time slot τ, where τ = T/k1, k1 ∈ Z+. An example of the different time scales τ and T s given in Fig. 2 . In this example, k1=10, thus T =10τ. Let μi(Tk) ∈ {1,2,⋯,μmax} be the transmission rate of user i supported by the channel, where μmax ∈ Z+. Therefore, the service rate of user i supported by the channel can be denoted as μi(Tk) = wi(Tk) μi(Tk)τ, where wi(Tk) denotes the number of slots that the channel supports for user i in time unit Tk. We then have the service rate of the channel:
Fig. 2.Example of different time scales τ and T.
According to [19], the power states of an MD are divided into the active and idle states. Let be the power of user i in the active state, which is supported by the channel with current channel state ri(Tk) in time unit Tk. Let βi(Tk) be the idle power of user i in time unit Tk. We can then use to denote the energy consumption of all users at time unit Tk, where
2.2 Problem Statement
In the following, we assume that a mobile agent can estimate the unfinished delivery in a channel’s queues accurately. Let Q(Tk) = (Q1(Tk),Q2(Tk),…,QN(Tk)), Tk = 1,2,…, be the vector denoting user data queued in Q at time unit Tk, We use the following queueing dynamics:
Throughout the paper, we use the following definition of queue stability:
The focus of our work is energy optimal scheduling for time-varying wireless channels. We call every feasible policy that ensures (2) a stable policy, and use to denote the infimum average energy consumption over all stable policies. We then define the time-averaged energy consumption of a feasible policy ∏ as:
where E∏(s) denotes the energy consumption of all users by policy ∏ at time unit Tk.
The objective of our problem is to find a stable policy by which the mobile agent promotes cloud services to users properly, and the policy maks transfer decision every T time units in terms of different channel states and queue backlog to minimizes the time-averaged energy consumption.
3. CSSD Algorithm
In this section, we consider cloud services that can be promoted to users by a mobile agent and present the CSSD algorithm based on the Lyapunov optimization method.
Based on the Lyapunoc optimization method, our CSSD algorithm can reduce energy consumption while maintaining queue stability. We first define the Lyapunov function L(Tk) to measure the aggregate queue backlog in the system as:
We next define the T-unit Lyapunov drift ∆T(Tk) as the expected change in the Lyapunov function over Tk units.
Following the Lyapunov optimization method, we add the expected energy consumption VΕ {E(Tk))}, where V > 0 over Tk units (i.e., a penalty function), to (5), which leads to the drift-plus-penalty term. This is a key step to obtaining an upper bound on this term. The following lemma gives the upper bound for our case.
Lemma 1: For any given V > 0 , under any possible actions under any possible actions μi(Tk) ∈ {1,2,⋯,μmax} and a(Tk) ∈ {0,1,⋯,Amax} we have:
where
Proof: Squaring both sides of the queueing dynamic (1) and using the fact that for any x ∈ R, (max[x,0])2 ≤ x2), we have:
Inserting (4) and (7) into (5), we get:
Using the fact that μi (Tk) ≤ μmax and 0 ≤ ni ≤ nmax, we have:
Therefore, by defining and adding VE{E(Tk)} to both sides of (9), we obtain equation (6).
According to [20], the design principle behind the Lyapunov optimization method is to minimize the upper bound of the drift-plus-penalty term, i.e., in every time unit Tk, we attempt to choose a control policy to minimize the right hand side of (6). The channel’s transfer decision can only affect the energy consumption E(Tk) and the service rate of each user μi(Tk) during time unit Tk hence, we can minimize by the channel’s transfer decision. Note that cloud service providers want users to subscribe to services as much as possible. As the user subscriptions increase, the service data also increases. This causes a large queue backlog and high energy consumption. Fortunately, in a practical application, the mobile agent can promote cloud services to users based on the queue backlog and channel state. Therefore, users can subscribe to cloud services reasonably based on the mobile agent’s promotion information. We assume here that the control policy can minimize the right hand side of (6) when The optimal subscription solution is then
ArialBased on the above analysis, our CSSD algorithm is composed of transfer decisions, calculation of the optimal subscription solution, collection of the subscribed services, and queues updating. Clearly, the mobile agent is the executor of the proposed CSSD algorithm. We now describe the mobile agent implementation of the CSSD algorithm as follows.
Step 1: At every Tk, the channel chooses the user’s data to transmit in order to minimize:
Step 2: At every Tk, the mobile agent promotes cloud services to users with
Step 3: The mobile agent collects subscribed services from the users.
Step 4: The mobile agent requests the cloud data center to initiate the subscribed services, and update the queues using (1).
In Step 1, the optimization objective of (10) is to minimize the number of transmission slots. This requires the mobile agent to detect all channel queue lengths every T time units, which only requires a few calculations and takes a very short time. Moreover, it requires the mobile agent to know the channel state information for each user. In the proposed method, we assume that the mobile agent can acquire each user’s transmission rate based on the channel state information. As we only execute the channel’s transfer decision that minimizes the expression the transmission takes place only if some transfer decision This happens when either user i ’s channel condition is good enough, achieving a large service rate μi(Tk), or the queue Qi(Tk) is already congested at time unit Tk. At the beginning of time unit Tk, the mobile agent has not only determined whether to deliver the data or not, but also decided when to send and whom to send the data to. If these are some users not assigned to transmission slots in the current transfer decision, the mobile agent will notify these users to go to or maintain a sleeping status to save energy. In Step 2, the mobile agent promotes cloud services to users with the optimal subscription amount at time unit Tk. In a practical application, users subscribing to services simply refer to this optimal subscription solution. Therefore, there is some deviation between subscribed services and the optimal subscription solution in time unit Tk. The possible range and impact of this deviation is discussed in next section. In Step 3, as the mobile agent collects the subscribed service information from users, the mobile agent becomes a means by which users are notified of the new content of services. This new content is composed of the titles and number of services recommended for subscription. The users utilize this new content as a reference when subscribing to appropriate services. In Step 4, according to the subscribed service information from users, the mobile agent first notifies the cloud data center to initialize subscribed services. The mobile agent then collects and stores users’ data packets in the relevant queues.
4. Performance Analysis
In this section, we first analyze the performance guarantee provided by our CSSD algorithm. We then explain the possible range and impact of the deviation between subscribed services and the optimal subscription solution.
4.1 Bound of Queue Backlog and Energy Consumption
According to [21], we characterize the optimal time-averaged energy consumption with the following lemma that can be achieved by any algorithm that stabilizes the queue.
Lemma 2: For any rate vector λ ⊂ Λ and time unit Tk, there exists a stationary randomized control policy Πopt that chooses the appropriate user to transmit its data packet in each τ slot. We then have the following equalities:
where Λ denotes the capacity region of the system.
Lemma 2 shows that using a stationary randomized algorithm, it is possible to achieve the minimum time-averaged energy consumption for a given data packet arrival rate vector λ = {λ1,λ2⋯λN} where λi=niE{a(Tk)}.
Based on Lemmas 1 and 2, we derive a theorem that presents the bounds on the time-averaged energy consumption and queue backlog achieved by the CSSD algorithm.
Theorem 1: Suppose there exists an ε > 0 such that λ* + ε1 ⊂ Λ, then the performance bounds of the time-averaged energy consumption and queue backlog can be calculated as:
Here, 1 denotes the vector of all 1’s, and and Emax are the optimal and maximum energy consumptions for stationary randomized control policy, respectively.
Proof: Because λ* + ε1 ⊂ Λ, it can be shown using Lemma 2 that there exists a stationary and randomized policy Πopt that achieves the following:
where is the optimal energy consumption corresponding to the rate vector λ* + ε1 ⊂ Λ. Substituting (15) and (16) into (6), we get:
Substituting (5) into (17) and taking the expectation over Q(Tk), we obtain:
Summing (18) from Tk = 0 to K - 1, using the fact that E* (λ* + ε1 ≤ Emax, we haver
Dividing both sides of (19) by εK, we obtain:
Taking the limit superior as K → ∞, (13) is proven.
Moreover, based on (17), we can derive:
Taking expectation of (21) over Q(Tk), then summing Tk = 1 to K, we have
Dividing both sides of (22) by KV, we obtain:
Taking the limit superior as K → ∞ , using the Lebesgue’s dominated convergence theorem, and then letting ε → ∞ , we obtain inequality (14).
The proposed CSSD algorithm has two important properties. First, the mobile agent guides users to reasonably subscribe to services based on the queue backlog and channel state. It could also avoid a situation where channels transmit data to users with a low service rate when the queue backlog is sufficiently high. Therefore, our CSSD algorithm not only can reduce the time-averaged energy consumption, but also can decrease the time-averaged queue backlog. Second, our CSSD algorithm is designed based on the Lyapunov optimization method that reduces energy consumption by guiding users to subscribe to services reasonably. Nevertheless, the EEC algorithm [13] may defer the data transfer until the channel’s transfer rate or queue backlog is sufficiently high. The method aims to achieve a balance between energy consumption and queue backlog by designing V values. The latter is a scheduling algorithm, and the former combines service subscriptions and dynamic scheduling based on the latter at every time unit.
4.2 Deviation of subscribed services
In a practical application, there is a deviation between the subscribed services and optimal subscription solution for our CSSD algorithm. The following theorem gives the possible range of this deviation.
Theorem 2: Assume that Δntotal (Tk) is the deviation between the subscribed services and the optimal subscription solution, and let μmax be the maximum service rate of the channel at time Tk. In the CSSD algorithm, the possible range of Δntotal (Tk) is then where
Proof: For any time unit Tk, let nreal and nopt be the subscribed services and optimal subscription solution, respectively. The deviation between the subscribed services and optimal subscription solution can then be described as:
Moreover, since μmax is the maximum service rate of the channel and E{a(Tk)} = λ, then the maximum subscribed services is Combining this value with the subscribed services should not be less than zero, hence we get:
Inserting (25) into (24), we find that the possible range of
According to the CSSD algorithm, when Δntotal (Tk) ≤ 0, i.e., the subscribed services nreal are less than the optimal subscription solution nopt, the channel can postpone communication for a period of time to wait for a better expected channel condition because the queue backlog is not big enough. Therefore, in this case, our CSSD algorithm has low energy consumption and queue backlog. When Δntotal (Tk) > 0, the queue backlog can become so large during time unit Tk, the channel can deliver the data packets whatever the channel condition is to service users with low transmission delay. In this case, high battery consumption caused by the low transmission rate is incurred. According to the above analyses, the energy consumption and queue backlog would be affected if Δntotal (Tk) > 0. The following theorem shows that the impact of the CSSD algorithm on the time-averaged energy consumption and queue backlog by Δntotal (Tk) > 0.
Theorem 3: Let suppose there exists an ε > 0 such that λ* + d + ε1 ⊂ Λ, then the performance bounds of the time-averaged energy consumption and queue backlog can be calculated as:
where such that are the maximum queue backlog, maximum energy consumption, and optimal energy consumption for stationary randomized control policy, respectively.
Proof: Because λ* + d + ε1 ⊂ Λ, it can be shown using Lemma 2 that there exists a stationary and randomized policy that achieves the following:
where is the optimal energy consumption corresponding to the rate vector λ* + d + ε1 ⊂ Λ. Substituting (28) and (29) into (6), we get:
Substituting (5) into (30), and taking the expectation over Q(Tk), we obtain:
Summing (31) from Tk = 0 to K - 1, using the fact that E* (λ* + d + ε1) ≥ Emax, we have:
Dividing both sides of (32) by εK, we obtain:
Taking the limit superior as K → ∞ , (26) is proven.
Moreover, based on (30), we can derive:
Taking the expectation of (34) over Q(Tk), then summing Tk = 1 to K, we have
Dividing both sides of (35) by KV, we obtain:
Taking the limit superior as K → ∞ , using the Lebesgue’s dominated convergence theorem, and then letting ε → ∞ , we obtain inequality (27).
Based on Theorem 4, the CSSD algorithm can achieve a balance between energy consumption and queue backlog when there is a deviation between the subscribed services and optimal subscription solution. According to [21], we have By comparing (27) with (14), we can see that when Δntotal (Tk) > 0, we need to set V to a larger value to obtain the same time-averaged energy consumption as the case in which the subscribed services equal the optimal subscription solution, i.e. nreal (Tk) = nopt. However, the time-averaged queue backlog will increase if V is increased. From these results, we can safely draw the conclusion that for the same V, the time-averaged energy consumption and queue backlog of the case where Δntotal (Tk) > 0 is higher than that of the case where nreal (Tk) = nopt.
5. Performance Evaluation
In order to evaluate the effectiveness of our proposed CSSD algorithm in the MCC environment, we compare our algorithm with EEC algorithm. We consider the MCC environment as shown in Fig. 1. There is one cloud servier provider support users over randomly varying channel. Using Java, a mobile cloud computing simulation platform is builted to simulate this MCC environment. This platform mainly includes two parts, i.e. mobile Internet and cloud computing. In the cloud computing part, we employ the modeling of cloud computing infrastructure and services offered by CloudSim [22]. For the mobile Internet part, we develop a mobile Internet model reference the LET network which is described in [19]. To make the comparison more convenient, we adopt mobile multimedia applications to represent the cloud services. The services that are offered by the cloud data center need to be delivered to the mobile users by a base station in a cell. The users walk randomly without leaving their cell. The MCC system executes the applications and delivers services data to users when the users subscribe services on the cloud. We suppose all mobile applications have the same data arrival rate, and set λ=100 Kbit/s. The CSSD algorithm can improve performance by guiding the users to subscribe to services reasonably based on the time-varying channel state and queue backlog. Without loss of generality, we suppose that the service rate of the channel is exponentially distributed. This service rate is generated from the ranges [0, 1,000] where the average service rate is set to 500 Kbit/s. According to [19], the power of MDs in active and idle states are set to 10 and 0.1 mW, respectively. The time unit T is set to 1 s, the slot τ is set to 0.1 s, and parameter V is set to 10,000.
As an executor, the mobile agent operates in unit time. In our experiments, the mobile agent first detects the queue backlog and channel state of each user at the the beginning of every time unit. Next, using the queue backlog and channel state of each user, the mobile agent calculates the optimal number of service subscriptions for the current time unit. Finally, the mobile agent guides the users to subscribe services and transmits data to users in the proper slots during the current time unit. We would like to emphasize that each execution of the algorithm calculates the optimal number of service subscriptions and transmits data to users for only one time unit, not for all time units. We ran each simulation for 200 s, which is long enough to observe the performance of both the CSSD and EEC algorithms.
5.1 Network Traffic
In this experiment, we investigated the network traffic of our CSSD algorithm and the EEC algorithm. We consider scenarios in which a mobile user uses mobile applications with a time-varying channel. We let the mobile user subscribe to five mobile applications at a time under the EEC algorithm, while they subscribe mobile applications in strict accordance with the optimal subscription solution nopt under the CSSD algorithm. We measured the service data arrival and service data transfer for each time unit as well as for the whole experiment. The experimental results are shown in Figs. 3 and 4, respectively.
Fig. 3.Service data arrival rate comparison
Fig. 4.Service data transfer rate comparison
Fig. 3 compares the service data arrival rate. It can be seen that the curve of our CSSD algorithm fluctuates with the changes of the channel state. Moreover, there are no service data arriving at the channel in some time units. This supports the validity of CSSD algorithm Step 2. We can also see that the curve of the EEC algorithm fluctuates around 500 Kbit/s no matter how the channel state changes. The reason for this is that the mobile user subscribes to a fixed number of mobile applications under the EEC algorithm.
Fig. 4 shows the service data transfer rate of the EEC algorithm and our CSSD algorithm. We can see that when the channel transfers service data to users, the CSSD algorithm has a higher service rate than the EEC algorithm. We also can observe that the service data transfer rates of our CSSD algorithm are more than 400 Kbit/s. The reason for this is that the EEC algorithm aims at service data delivery and balances energy efficiency and queue backlog. In contrast, our CSSD algorithm combines service subscription and delivery based on the EEC algorithm at every time unit. In this way, our CSSD algorithm has a lower queue backlog than that of EEC algorithm, as validated in Fig. 5. Thus, our CSSD algorithm can defer data transfer until the channel’s transfer rate is high enough to support users at a high service rate. This implies that the CSSD algorithm achieves a better performance than the EEC algorithm if the MCC system has a larger queue backlog or poor channel.
Fig. 5.Queue backlog comparison
5.2 Performance of Optimal Service Subscriptions
To evaluate the performance improvement of our CSSD algorithm, we consider two cases: N =1 and N =2 . Let each mobile user subscribe to two mobile applications at one time under the EEC algorithm, while the mobile user subscribes to mobile applications strictly according to the optimal subscription solution nopt under the CSSD algorithm. In this experiment, we use the queue backlog, energy consumption, and service subscription cost as the performance metrics to evaluate performance. We set the cost of a mobile application to 0.3 cents per time unit. This corresponds to the fixed-price model used in Microsoft’s Windows Azure Platform[23].
We first examine the queue backlog of the EEC algorithm and our CSSD algorithm, as shown in Fig. 5. From this graph, our CSSD algorithm works well and the queue backlog is sufficiently small. In other words, the queue backlog of the CSSD algorithm is lower than 5,000 Kbit. For the EEC algorithm, although queue stability can be satisfied, the queue backlog of the EEC algorithm is greater than that of our CSSD algorithm. This can be regarded in the following way: when the queue backlog becomes very large, our CSSD algorithm can reduce the queue backlog by reducing the number of service subscriptions and increasing the number of transmission slots while the EEC algorithm reduces the queue backlog simply by increasing the number of transmission slots.
We next examine the energy consumption of the EEC algorithm and our CSSD algorithm, as shown in Fig. 6. Compared with the EEC algorithm for N =1 and N =2 , our CSSD algorithm achieves 38% and 50% lower energy consumption, respectively. This is because our CSSD algorithm can reduce the number of service subscriptions when the channel condition is poor or the queue backlog is high. In this way, our CSSD algorithm can sustain a lower queue backlog. This result confirms the benchmark performance, as shown in Fig. 5. Thus, for the same parameter V, which control the balance between energy consumption and queue backlog, our CSSD algorithm has a better performance in terms of reducing the energy consumption.
Fig. 6.Energy consumption comparison
Finally, we simulated two algorithms to compare the cost of service subscription. For ease of comparison, we define a performance metrics Ctotal that evaluates the total cost of subscribing to services:
Fig. 7 compares the values of Ctotal under the two algorithms for various values of N. It is clear that our proposed algorithm has a better performance than the EEC algorithm. In particular, compared with the EEC algorithm, our CSSD algorithm reduces the cost of subscribing services by 50% for N =2 . This is because our CSSD algorithm can guide the users to subscription services according to the optimal subscription solution nopt, and hence users can reduce the subscription of unnecessary services. It is interesting to note that the CSSD algorithm for N =1 and N =2 have almost same cost of service subscription. This is because users subscribe to mobile applications in strict accordance with the optimal subscription solution nopt, thus the cost of service subscription does not rapidly increase with N.
Fig. 7.Service subscription cost comparison
5.3 Impact of Service Subscribed Deviation
The purpose of this experiment was to investigate the impact of the CSSD algorithm on performance incurred by the service subscription deviation. In this experiment, we considered three different cases of expected value of service subscription deviation ∆ntotal : E[∆ntotal] = 0, E[∆ntotal] = 0.2, and E[∆ntotal] = 0.4, where E[∆ntotal] = 0 enotes the subscribed services equal to the optimal subscription solution, therefore there is no service subscription deviation. Let the number of users N be fixed to two. The experimental results are shown in Figs. 8 and 9.
Fig. 8.Queue backlog comparison under service subscription deviation
Fig. 9.Energy consumption comparison under service subscription deviation
Fig. 8 shows the queue backlogs of E[∆ntotal] = 0, E[∆ntotal] = 0.2, E[∆ntotal] = 0.4. It can be seen that the queue backlogs of E[∆ntotal] = 0, E[∆ntotal] = 0.2, and E[∆ntotal] = 0.4 stabilize at around 1,500, 3,000, and 5,000 Kbit when the simulation time is more than 100 s, respectively. These results confirm the claim that our CSSD algorithm can consume more energy for transmission while satisfying queue stability. We also observe that the queue backlog increases with the expected value of service subscription deviation when the queue is stable. For example, the queue backlog of E[∆ntotal] = 0.4 is the maximum. The reason for this is that the data packet arrival rate increases with the expected value of service subscription deviation, thus E[∆ntotal] = 0.4 incurs the highest queue backlog.
Fig. 9 compares the energy consumption of total E[∆ntotal] = 0, E[∆ntotal] = 0.2, and E[∆ntotal] = 0.4. We observe that at the beginning of the simulation, these three cases have similarly low queue backlogs and there are no data packet transfers to mobile users with poor channel conditions, thus these three cases have almost the same energy consumption. Taken as a whole, the energy consumption increases with the expected value of service subscription deviation. This is because higher expected values of service subscription deviation have higher queue backlogs. In order to maintain queue stability, data packets might be transmitted in poor channel conditions, and hence a higher expected value of service subscription deviation consumes higher energy.
6. Conclusion
In this paper, we proposed a new energy-efficient scheduling method for a time-varying channel scenario in MCC networks. This new method employs a mobile agent’s ability to calculate the optimal subscription and promote cloud services to users. Based on the Lyapunov optimization, the proposed CSSD algorithm makes transmission decisions and guides users to subscribe to cloud services considering both the channel condition and queue backlog. Simulation results validate that our proposed CSSD algorithm performs better in terms of queue backlog, energy consumption, and service subscription cost.
From the simulated results, it is shown that our proposed CSSD algorithm can be used as a reference for MCC system design, providing practical engineering insights. In future work, the performance of our CSSD algorithm will be evaluated in practical mobile applications, such as mobile office, mobile commerce, mobile learning, and so on. Moreover, the more general case will be considered, where the information interaction and delay constraint bring little application performance penalty. In addition, compatibility issues with existing protocols can also be incorporated into the proposed CSSD algorithm to broaden its application.
Cited by
- EFTG: Efficient and Flexible Top-K Geo-textual Publish/Subscribe vol.12, pp.12, 2015, https://doi.org/10.3837/tiis.2018.12.015