1 Introduction
The growing popularity of mobile devices in the present world is indicative of the fact that in the future, the world would expect almost all different types of applications on the mobile devices like SMDs, tablets, laptops, etc. This will help to bring all the control in the hands of the user via the mobile devices [1,20,21,22]. In today's world, we find that every person in all parts of the world carries a mobile in their hand. There are close to 6.8 * 109 mobile devices (connections / 100 citizens = 97 mobiles), and the connection speed will increase to 6.5 Mbps by 2020 [2].
Looking from the business perspective, it is estimated that the market of Mobile Cloud will touch around 46.90 Billion USD by 2019 [2]. Mobile devices come in very handy when you want to run any mobile application at any place and get instant service like m-commerce, checking price, paying for your services, GPS, medical or any other services [3,23]. On the contrary, when using a mobile device, we need to compromise on the battery life, network connectivity quality using 3G / 4G and security concerns. Currently, we are experiencing a convergence of both the mobile devices and cloud computing. The cloudlet plays an important role in bringing both of these together [4].
Cloudlets comprise of a network of various mobile devices (example - SMD's, Tablets, laptops, etc.) which provide the user with the resources (compute, storage and network) to enable the provisioning of his services to build applications at a lower cost [5]. The cloudlets have a unique property that they are deployed close to the users and also built on standard cloud architecture. Cloudlets possess sufficient computational and storage power and are secure enough as they mainly work in a hostile environment (in the absence of Internet) [6]. The main reason of preferring cloudlets is that they require less power compared to huge data centers in the cloud and can be deployed with ease in any location [5,23]. Hence, cloudlet is a cheaper computational model and is gaining popularity. Cloudlets provide great advantage in case of real-time tasks as the close proximity to computational resources is a big advantage.
The offloading of task to the cloud is very often required when it more resource power to run the particular application as compared to the computational power that is delivered by the mobile devices. The total setup and running cost required in case of cloudlets is very negligible as compared to the computational cost to be paid to the cloud provider [6]. However, the different mobile devices connected together may experience network issues due to mobility reasons [28]. Multimedia has been gaining popularity since 1966, when the term was first coined in the movie world [7]. It involves the aggregation of varied type of content which is quite complex ranging from simple text files to rich media content. Several fields such as gaming, education and training, medical, etc. use different types of simulations using multimedia techniques extensively [8].
The advantage delivered by the use of multimedia is the superior quality of images and effects which gives a rich user experience and impact. The different areas that help drive multimedia are use of robust algorithms, graphics, cameras and SMD's [7,24]. Although new models of mobile devices are being launched in the market at a very fast pace, they cannot cope up with the degree of advancement in multimedia applications which require relatively large computation power and storage capability. With a view to bridge the gap between the mobile devices and multimedia applications, the concept of Cloud Mobile Media (CMM) is helping out as it is now possible to run the resource intensive tasks onto the cloud and render the results onto the mobile devices using the Software as a Service (SaaS) model, thereby boosting the revenue of the cloud providers [8,26]. The different applications of CMM are the Audio/Video streaming based services which make use of the cloud resources in order to massage the content and deliver it via different devices, and secondly, the interactive services such as video conferencing, mobile remote desktops and others [10,25].
1.1 Motivation
Multimedia is gaining popularity as it provides the capability to see and hear different formats of audio and video (like swf, .wav, .mp3, .mp4, .mpg, .wmv, and .avi) [8]. There are various applications such as executive presentations, training, advertising, marketing, network communication, entertainment, gaming and others which leverage multimedia features [7]. Also, the computation involved is quite complex and the resource usage is high. Under these circumstances, it is essential to utilize the services of the cloud by offloading the computation and resource intensive tasks, which causes latency and also incurs network costs [1].
Cloudlets incur negligible network costs as the resources can be easily found within the cloudlet present in the vicinity and hence low latency is experienced. However, due to the mobility factor of the mobile devices, we may encounter the problem of signal loss at some times. None the less, cloudlets are becoming very popular and especially in case of multimedia applications, they are being used extensively because of their capability to deliver using negligible network costs and good speed of delivery of content [5]. This has created an interest and in this work, we have proposed an architecture using cloudlets for handling of multimedia applications.
1.2 Contributions
In this section we have highlighted the major contributions of this work and are as follows:
Firstly, a system description has been given which provides an overall description about the mobile cloudlet system.
Secondly, a mobile cloudlet assisted architecture for handling multimedia applications has been proposed.
Finally, the simulation results of our proposed approach have been provided. Also, the comparison between the proposed approach and the three baseline algorithms is provided.
2. Related Work
In [6], the authors discussed about the Cloud Mobile Media (CMM) applications with respect to various parameters such as cost, response time, etc. [8]. In case of gaming applications, the tasks that require more computational power are run on the cloud and the output is displayed on the SMD [10]. In [11], the authors discussed about the integration of MCC and WSN in the "Always On" (AO) mode such that the sensor node is always active and keeps sending data to the cloud for computation, which is advantageous as the data gets accumulated through the use of WSN.
The mobile users will mainly request data of the nearby geographical regions only and also the sensors possess limited power. To this effect, the authors suggested two approaches, Collaborative Location-based Sleep Scheduling (CLSS1) where the sensor is turned on or off depending on the location. CLSS2 emphasizes on the performance factor of the integrated WSNs [13]. In [12], the authors used a cloudlets based algorithm for integration named as CLIW , which works with CLIW 1, and CLIW 2 and ensures that energy spent is minimum.
In [14], the physical sensor is virtualized on the cloud and subsequent provisioning can be done depending on the needs of the user and destroyed once the work has been completed. The architecture proposed in [7] illustrates the mechanism of sensor virtualization. In [8], an architecture has been proposed which depicts the use of sensors which are present in the human body for the monitoring of various body parameters which will ultimately help the doctors to make an informed decision about the disease of the patient. In [15], proposed a robust integrated framework which reduces the storage requirements at the sensor end and the gateway takes care of performing various activities for further processing of the data which has been derived from the sensors. In [16], the authors proposed an approach named TPSS, which includes both Time and Priority Selective Data Transmission (TPSDT) and Priority-based Sleep Scheduling (PSS) approaches for energy saving. In TPSDT, the sensor data is transferred selectively based on the time and usefulness of the data to the user.
3 Definitions and Assumptions
In this section, we have described the mobility scenario of mobile users and cloudlets.
3.1 Mobility and Availability of Mobile Users
Let us consider that a mobile user Ma ∈
M is present at a particular location
where,
Hence, the possible number of users available at a particular location
The transition probability of the mobile users can be expressed as follows:
where,
The probability that the number of mobile users Mi are present in the range of a Base Station (BS) can be expressed using Eq. 4:
In the transition matrix the rows indicate that the number of mobile users
available at time slot ta and the columns indicate
the number of mobile users
The user's departure probability denoted as PD and can be expressed as follows [17]:
Hence, the possible number of users who are departing from a particular location
The probability of a mobile user jumping from a location
Let us consider that a mobile user changes his location across different locations L1, L2, L3, and L4 as shown in Fig. 1. According to Fig. 1, the mobile users must satisfy the following conditions:
The transition state matrix T(G) is depicted in Eq. 13-15.
3.2 Mobility and Availability of Cloudlets
In a particular time period, a cloudlet can only be connected with a unique
mobile device from the list of all available mobile devices (as shown in Fig. 2). Let us consider that the clousdlets
spend total time
Hence, the possibility of availability of the cloudlets C and a
particular location
The transition probability of the number of cloudlets can be expressed as follows:
where,
The probability of the mobile user is assign to the available cloudlets in a
particular
Therefore, the probability that a mobile user can not accessed the cloudlets due to the problem of intermittent network connectivity, can be expressed as follows:
The rows in a T transition matrix indicate the number of cloudlets available and the columns indicate that the number of cloudlets Cj which can jump to the next community as given in Eq. 21.
4 Mobile Cloudlets Assisted Architecture
The mobile cloudlets assisted architecture is shown in Fig. 3 where the mobile devices are connected to the multiple Radio Access Networks (RAN) for accessing the Global System for Mobile (GSM) or Universal Mobile Telecommunications System (UMTS) services [7]. The user executes the CMM applications via the mobile devices. The architecture works in two ways:
— When a mobile device sends the request to the nearest cloudlet for receiving data from the Wireless Multimedia Sensor Networks (WMSNs).
— When a mobile device offloads the CMM application to the nearest cloudlet.
There are several cloud service providers like Google, Amazon, etc. which provide storage facility for storing video, music, or any other documents. There are so many categories of CMM applications available and these include audio/video streaming, interactive services, cloud based rendering, cloud storage and many others. In this work, we mainly focused on cloudlet based rendering which involves on-line gaming. The mobile users offload some portion of the game to the cloudlet and during the game, the mobile users need to access cloudlets repeatedly.
The mobile device efficiently selects the best cloudlets by searching the nearby cloudlets availability. Generally a mobile device has to complete its large amount of tasks and also to initiate for sending the next task to the cloudlet once the previously sent task has been finished [17]. A mobile device has to maintain the cloudlets availability list which can be expressed as follows:
The mobile device maintains the location string of all available cloudlets. Each mobile user determines the distance of all available C. Let us consider that a mobile device be present in the coordinate Q(x, y). So the Euclidean distance can be computed using Eq. 23 [18]:
Once the location string is prepared for any time period, a voting algorithm will be applied for selecting the best nearest cloudlet. From the cloudlet location string each mobile device assign a rank to each cloudlet based on the Borda Scores Method(BSM) of voting algorithm and is expressed as follows:
where (Ci, Ri,t) represents the rank denoted as Ri,t of cloudlet Ci. Generally, a higher rank indicates the lower ordering in the preference list.
An example of cloudlets location list with cloudlets availability is given in Table 1 where two time periods have been taken. The cloudlets location string for respective time periods are maintained by the mobile devices and can be expressed as follows:
Cloudlets | Locations(m) | Time Periods |
---|---|---|
Cloudlet-1 | a | T(1) |
Cloudlet-2 |
|
T(1) |
Cloudlet-3 | b | T(2) |
Cloudlet-4 |
|
T(1) |
Cloudlet-5 |
|
T(2) |
where T(1) and T(2) denotes as a respective time periods of T.
Let us consider that
where
Theorem 1. There is no transitive relation between mobile devices even if a cloudlet is in the range of two mobile devices.
Proof. Let us consider that
Definition 4.1. There is a characteristics function of f(M, C) which must satisfies the following conditions:
Theorem 2. There is an injective relation among the set of mobile devices and the set of cloudlets under different timeslots.
Proof. Let us consider that a set of mobile devices
Definition 4.2. The mobile devices and cloudlets get close together if following condition must be satisfied:
where, mobile devices and cloudlets are located in a 2-D space of
Theorem 3. There may be efficient offloading if the cardinality of any set M is less then or equal to the cardinality of any set belongs to C.
Proof. Let us consider a set
Definition 4.3. Each
where PC, ME, and CE denotes as the cloud, mobile device, and cloudlet execution and Ec(C), Ec(M), and Ec(PC) is the energy consumption for processing the data over cloudlet, mobile device, and cloud execution.
5 Performance Evaluation
In this section, we have described the experimental setup of our proposed approach and results along with the analysis of results.
5.1 Parameter Settings
For the experimentation of our work, we ran the simulation on the Dell machine having Intel Core I7-3770, 3.4 GHz Quad Core Processor. The disk storage was 500 GB and 4 GB memory was used with Java Development Kit (JDK) version 1.8. The simulation was run on the JAVA environment. The cloudlets were created with memory resources which varied from 10 to 20 GB.
Initially, we assumed that the cloudlets were moving between two areas namely A and B. The total time period of the movement of cloudlets was divided into 5 time slots. In each of the time slot, the cloudlets were randomly assigned. The cloudlets were assigned to area A till the time its range was greater than the range of the area A. During the handoff period of the particular cloudlet from area A to area B, it is assumed that the cloudlets were assigned to area B by increasing the time slot by one. The sensor networks were created with a network size of 500 × 500 m2. The mobile user sends a request to the cloudlet and the cloudlet will take care of the request based on the state of the sensor node which is either in sleep or active state. The transmission and reception energy of the sensor nodes was taken as 0.021 mJ and 0.00601 mJ with a transmission radius of 50 m.
For creating a public cloud, we used the Amazon Elastic Compute Cloud (EC2) setup [Amazon EC2(2016]. Thr mobile devices have been created using the model as described in [Panigrahietal2015]. The cloudlet list was maintained using the CreateCloudlet () method and the mobile devices selected the best cloudlet from the list of available cloudlets using the Java Comparator class. For deployment of the applications to the mobile devices, we used the characteristics of online gaming algorithm which can perform as a CMM application [Wang et al.(2014]. Based on the application type and requirements, the proposed system can efficiently select the offloading strategy using the Definition 1.3.
5.2 Comparison with Baselines
In this work, a comparison of our proposed approach has been performed with three baseline algorithms, namely, AO [Zhu et al.(2014], CLSS scheme [Zhu et al.(2014] and CLIW scheme [Sarkar et al.(2016]. The parameter chosen for comparison is the life time of the network.
5.3 Results and Discussions
The experimentation performed in this work, consists of generation of the cloudlets in a random manner in two different areas, which was having two separate cloudlet IDs. In Fig. 6(a) and (b), the X axis represents the different cloudlet IDs with respect to the Euclidean metric from the mobile user-1 and the mobile user-2. Fig. 7(a) and (b), represents the Euclidean metric with respect to different cloudlet IDs. The mobile user selects the cloudlets based on the BSM as described in Equation (24). Fig. 8 shows the reverse preference list of the mobile user-1 and mobile user-2.
The value 0.45% indicates that the mobile device will give the highest preference where the distance between mobile user-2 and the cloudlet ID-7 is minimum with respect to the other available cloudlets. On the other hand, mobile user-2 gives lower preference to cloudlet ID-7. Fig. 9 represents the reverse preference percentage for mobile user-3 and 4. Fig. 10 represents the delay analysis by increasing the number of cloudlets for different mobile users.
The results shown in Fig. 10(a) indicate that, even if the number of cloudlets increase, then the delay is maximum when the total number of cloudlets is 70. This is because sometimes the delay may decrease when there are sufficient number of cloudlets available and from the available cloudlets the mobile devices can choose the best cloudlet. The network lifetime of CLIW 1 and CLIW 2 scheme is described in [Sarkar et al.(2016] and is expressed as follows:
here, Et and Er denote the consumption of energy for transmitting and receiving packets respectively. ω(CC) denotes the extra communication cost which is considered as energy consumption due to high latency.
The network lifetime in CLIW2 is denoted as
The network lifetime of CLSS 1 scheme is expressed in [11] and is given in Eq. 31:
here, Et and Er denotes
energy consumption that take place for transmitting and receiving the packets
respectively. ω(CC) denotes the cost of
communication due to high latency, and is the overhead cost. The network
lifetime in CLSS2 is denoted as
The network lifetime of AO scheme is denoted
Fig. 10(b) and Fig. 11 show the comparison of the proposed approach with respect to the three baselines algorithms. The results indicate that in case of AO scheme, the network lifetime of sensor nodes is less with respect to CLSS scheme as it assumes that the sensor nodes are always on. On the contrary, the CLSS scheme considers the sleep scheduling technique which will reduce the energy consumption of sensor nodes. The CLIW scheme outperforms with respect to the CLSS scheme in-terms computational speed.
On the other hand our proposed approach outperforms in comparison to the different baselines.
The proposed approach considers the optimum local cloud based on the BSM voting algorithm in which the mobile devices efficiently connect with the selected cloudlet and the result indicates a significant reduction in the communication overhead.
6 Conclusion
In this work, we have proposed a mobile cloudlet assisted architecture for running multimedia applications. The mobile device selects the best cloudlet based on the BSM voting algorithm. Based on the user's request, the selected cloudlet sends the request to the sensor nodes and the results are subsequently sent back to the mobile device via the cloudlet. In this paper, we mainly focus on the multimedia sensor nodes which are equipped with multimedia devices such as cameras, microphones, etc. The simulation results clearly indicate that our proposed approach performs as compared to the three existing algorithms.