Wednesday, February 4, 2015

Just-In-Time Provisioning for Cyber Foraging

Motivation

Today mobile computing consists of wide variety of operating systems and application environments as well as approaches to offload computations. These require constant upgradation of OS, new libraries, new language runtime systems resulting in larger size VM images, which cause a hindrance to performance of dynamic provisioning of cloudlets. The ubiquitous nature of mobile, demands on the fly application functionality which is not suitable with static provisioning of cloudlets. The main focus of this paper is to provide a just in time dynamic provisioning of cloudlets containing a complete new copy of VM which is required for computation of offloaded application from mobile devices. The paper aims to provision cloudlets(back end of applications) in 10-15 seconds from the launch of mobile application using a method called VM synthesis which is significantly less than earlier provisioning times of 1-2 minutes. Also, VM synthesis aims at reducing the VM image sizes resulting in less data transferred from mobile to cloudlets thereby decreasing latency.

Main Points
  •       Virtual synthesis follows a 3 tier architecture consisting of: Mobile device - Cloudlet - Cloud. Cloudlets are positioned on the edge of internet and situated one Wifi hop away contrasting them with clouds which may be many hops away from mobile device. Cloudlets are made to contain VM image required by mobile application through VM synthesis.
  •      The implementation of VM synthesis follows following steps:

ü  A base VM image consisting of standard libraries is deployed on every cloudlet. Linux and windows are common base machines.
ü  A VM overlay for each application is built using compressed binary difference between launch VM and its base VM image. Launch VM is a resumption point of the VM image created for the mobile application consisting of application binaries and libraries required to run the application.
ü  After VM overlay is sent by the mobile to the cloudlet, Base VM image in the cloudlet is synthesized to new VM instance.
ü  Lastly, the mobile application can offload computations via install packages to the synthesized VM image.

  •     The second part of the paper concentrates on accelerating VM synthesis to obtain Just in time provisioning of cloudlets. This  is achieved by reducing VM overlay size by different methods such as:

ü  Deduplication: This method reduces redundancy of data in a VM overlay. Redundant data between base VM and launch VM is removed by different approaches. This results in a reduced VM overlay size leading to better synthesis time.
ü  Bridging the semantic gap: The gap between low level representations of memory, disk, and higher level abstractions is reduced. This method handles deletion of files or memory pages freed, where in none of these contents are in-cooperated in VM overlay. Here reduction of overlay size can be seen by discarding unused file in memory and disk.
ü  Pipelining: This method follows pipelining of steps involved in VM synthesis. Pipelining results in decrease of synthesis time.
ü  Early start: This method involves speeding up of VM launch by transferring just the needed memory chunks first, synthesizing them and creating VM instance. This method involves lot of overhead in carrying out ordering of chunks and thus is carried out for small blocks of memory.

  •     VM synthesis on Amazon EC2: The concept of VM synthesis is generalized and extended to commercial clouds to speed up uploading and launch of custom VM.


Trade-offs
  • The offloading approach suggested in this paper is different from earlier approaches which were language specific approaches such as MUAI and weblet.
  • The authors only considers time taken for VM synthesis after a connection between cloudlet and mobile device is established. They ignore time taken for cloudlet discovery and association which may turn out to be more in certain cases, thereby resulting in slower results. Also, methods used for cloudlet discovery is not described.
  • The paper concentrates more on the operations carried out on the cloudlets. The operations carried out by the mobile device such as transmission of VM overlay and reception of VM residue (machine leaning technique) is not described in length. The computation overhead involved in creation of VM overlay for individual different mobile applications is not addressed.
  • The author succeeds in obtaining target VM synthesis time of 10-15 seconds for almost all test applications using combinations of acceleration methods.
  • In early start method, memory chunks order is chosen by keeping the test applications in context. A generalized way of ordering memory chunks for broader application range has not been discussed.
  • Authors carry out all implementations in a Wifi enabled environment and do not mention any implementations, where in data network is used which have comparatively more negative impact on battery.
  • The paper extends VM synthesis method to commercial clouds with good results, thereby generalizing the approach for broader cloud computing infrastructure.







1 comment: