International Journal of Computer Networking, Wireless and Mobile Communications (IJCNWMC) ISSN(P): 2250-1568; ISSN(E): 2278-9448 Vol. 4, Issue 1, Feb 2014, 5- 10 © TJPRC Pvt. Ltd.

FUTURE SMARTPHONE: MOBILE VIRTUALIZATION SYSTEM USING

ARPIT J. KUCHE, D M. DAKHANE & R L. PARDHI Sant Gadge Baba Amravati University, Amravati, Maharashtra, India

ABSTRACT

Together with an explosive growth of smartphone users the mobile applications offerings are growing rapidly. However, these mobile applications are still intrinsically limited by a relative lack of bandwidth, computing power, and energy compared to their tethered counterparts. To enhance the smartphone user experience the concept of mobile virtualization using cloud computing has been introduced to be a potential technology for mobile services. In this project, we present mobile virtualization via cloud that allows users to create virtual smartphone images in the mobile cloud and to customize each image to meet different needs. Users can easily and freely tap into the power of the data center by installing the desired mobile applications remotely in one of these images. Because the mobile applications are controlled remotely, they are not constrained by the limit of processing power, memory and battery life of a physical smartphone.

KEYWORDS: Smartphone, Virtualization, Cloud

INTRODUCTION

Recent advances in smart phone technologies have fuelled a new wave of user demands for rich mobile experience. Today’s mobile users not only expect broadband connection wherever they go but also want a rich experience of various services from mobile applications e.g. iPhone apps, Google play apps, etc. According to MarketsAndMarkets.com, the global mobile applications market is expected to be worth $25.0 billion by 2015 [1], use of mobile cloud computing will enable more powerful applications, and hence more significant growth. Today smart phones are often expected to offer PC-like functionality, which requires powerful processors, abundant memory and long-lasting battery life. However, their hardware today is still very limited and application developers are forced to take these limitations into consideration. The motivation behind virtual mobile system is to allow smart phone users to more easily tap into the power of the cloud and to free them from the limit of processing power, memory and battery life of a physical smart phone. Using this system, smart phone users can choose to install their mobile applications either locally or in the cloud.

Running applications remotely in the cloud has a number of advantages, such as avoiding untrusted applications from accessing local data, boosting computing resources, continuing to run applications on the background and opening up new ways to use smart phones.

LITERATURE REVIEW & RELATED WORK

Olafur Ingthorsson’s article [1] and analysis about the mobile virtualization says that creating completely separate profiles through vitalizing the handset opens completely new possibilities in terms of usage scenarios. This will include integration of both a business profile and a personal profile in the same device, without coinciding any information or applications. Storing copies of the profile(s) in the Cloud means that users can replicate and shift between devices still maintaining the same profile and keep a high level of data assurance by storing the data in the Cloud. The Article further 6 Arpit J. Kuche, D M. Dakhane & R L. Pardhi says that VMware had introduced its mobile cloud platform, called Mobile Virtualization Platform, that’s aimed at supporting separate personal and corporate profiles on the same handset, e.g. a employee owned handset. Each profile runs in a completely isolated container so that OS’s, applications and data belonging to each profile, personal or corporate, are only accessible within the appropriate profile. So, running a hypervisor on the handset directly will isolate the profiles and create a virtualized infrastructure. Recently VM ware has announced a partnership with LG Electronics about running the MVP on a Android enabled LG smart phone. With rising smart phone sales, the need for a combined work-personal smart phone becomes increasingly stronger as most users prefer to carry only one handset. Using virtualization at the handset level seems to solve many of the associated security challenges and risks as work related and personal profiles should be completely separated and isolated. Normally, this would include apps, contacts and data.

OK Labs [2] give three reasons why mobile virtualization is important:

Security

Although this is not a major concern for consumers now, it will become increasingly important as mobile banking and other similar applications gain popularity. Also, as open operating systems such as Android become more and more ubiquitous, mobile devices will become more vulnerable to hacker attacks and malware. Mobile virtualization can help protect the critical data on those devices.

For Work and Play

Think of this as a personal world and corporate world on one device that meets the security needs of corporate requirements. In addition, consumers will be able to access their favorite applications for a variety of platforms (Android, Windows, Blackberry, etc.) on the same phone. It addresses consumer behavior preferences corporate employees who want to "bring their own device" to work, will be able to do so, while still meeting the needs of IT.

Smartphone Market

It drives the market through cost savings. According to analyst firm, Vision Mobile, smartphone platforms account for less than 20 percent of the more than 620 million handsets shipped globally in the first half of 2010, while more than 80 percent of total shipments are driven by feature phones. Through hardware consolidation, mobile virtualization lets manufacturers provide smart phone functionality for the cost of a feature phone. This is especially important for the consumers, in most of the world, who cannot afford smartphone prices today.

Today's mobile phones boast computing capabilities once found in mainframe computers and workstations. Mobile CPU clocks run hundreds of MHz, and mobile 32 bit processors access gigabytes of memory. Additionally, mobile network connections stream data at broadband speeds, and mobile versions of enterprise platforms such as and Windows run shrink-wrap applications.[3]

A number of service providers such [4] and Zumodrive [5] provides online storage services to Smartphone users in attempt to alleviate the limitations of Smartphone storages. However, there is still no service that offers full computation resources to Smartphone users. As smart phones begins to replace laptop PCs in some occasions, they will slowly become attractive targets for attackers. Security threats that were once considered PC issues are slowly crossing the line and becoming serious concerns for mobile users [6][7][8][9]. In particular, [10] further studied Android as a potential target because of Android's design philosophy on openness. The authors created a proof-of concept malware using undocumented Java functions and demonstrated the possibility to bypass the Android permission system using native applications. Future Smartphone: Mobile Virtualization System using Cloud Computing 7

Satyanarayanan [11] outlined their vision of letting mobile users seamlessly utilize nearby computers to obtain the resources of cloud computing by instantiates a "cloudlet" that rapidly synthesizes virtual machines on nearby infrastructure that can be access through WLAN. Barat to presented Mobi Desk [12], a virtual desktop computing hosting infrastructure that provides full featured PC desktop environment to mobile users.

ANALYSIS OF PROBLEM

With the evolution of mobile devices and networks, and the growing trend of mobile Internet access the mobile application offerings are also growing continuously. Nowadays smart phone are offering computer like functionality, which requires powerful processors, abundant memory and long-lasting battery life. However, current architecture with their hardware today is still very limited and application developers are forced to take these limitations into consideration while developing any smart phone based application. At present there are many service providers that are providing online storage services to the smart phone users in attempt to overcome the limitations of Smartphone storages. However, there is still no service that offers full computation resources to Smartphone users. Cloud computing can be a promising solution to this problem. In this project with the technique of Virtual Smartphone, mobile virtualization is created using cloud computing technology which provides cloud computing environment specifically tailored for Smartphone users. It allows users to create virtual Smartphone images in the cloud and to remotely run their mobile applications in these images as they would locally. The technology of mobile virtualization will allow Smartphone users to easily tap into the power of the cloud and free them from the limit of processing power, memory and battery life of a physical Smartphone. Using mobile virtualization system, Smartphone users can choose to install their mobile applications either locally or in the cloud.

IMPLEMENTATION

In the implementation android OS is used because the main reason behind its choice is that Android OS is not only designed for smart phone devices with an ARM processor, but also it can be easily ported to the x86 platform. Although Android-x86 is originally intended for net books (small devices that are mostly use for internet purpose), it gives an opportunity to create a virtual image of Android. The fact that CPU emulator is not needed(i.e. x86-to-ARM) to run, the virtual image is very important since such emulator always introduces enormous overhead and may neutralize any performance advantage offered by a data center. Here in this system client application is implemented on an Android smart phone. Although this system does not require the physical and the virtual smart phones to be on the same platform, the main reason behind using this particular setting is to allow both client and server to integrate more tightly.

Implementation architecture is depicted in the figure 1 below. A simple client-server based program is implemented in this architecture. The server program resides in each Android-x86 image that runs on top of VMWARE while the client program is installed in the physical Android device. The client program enables a user to remotely interact and control Anroid-x86 images. The client program transmits various events from the physical device to the virtual smart phone and receives graphical screen updates from the virtual smart phone.

Figure 1: Implementation Architecture 8 Arpit J. Kuche, D M. Dakhane & R L. Pardhi

Implementation architecture allows applications running in the cloud to appear like local applications on the physical device, with functions such as copy-and-paste between local and remote applications. This prototype also features remote shortcuts to remote applications in the virtual smart phone that minimize the number of steps required for users to launch remote applications, as illustrated in Figure 2. Furthermore, each short-cut can point to a different virtual Android-x86 image, and thus allowing users instant access to remote applications residing inmultiple Android-x86 images in one single menu.

Figure 2: Shortcuts to Remote Applications To create a new Smartphone image in the cloud, the user can simply select from a number of pre-configured image templates to get up and running immediately.

Figure 3: Prototype in Action Figure 3 shows prototype of virtual smartphone when actully implemented. Smartphone device shows the menu of virtual applications running on the physical device and same applications that are running on the server part in the background.

APPLICATION

Our system allows users to customize each image to meet different needs. To create a new smart phone image in the cloud, the user can simply select from a number of preconfigured image templates to get up and running immediately. The following are some examples of how our system can be used.

Sandbox

As smart phones begins to replace laptop PCs in some occasions, they will slowly become attractive targets for attackers. Security threats that were once considered PC issues are slowly crossing the line and becoming serious concerns for mobile users. In particular, further studied Android as a potential target because of Android's design philosophy on openness. Users of our system can execute mobile applications from unverified third-parties on a virtual smart phone image that has only access to a tightly-controlled set of resources. This usage is conventionally called "sandbox", in the sense that untrusted programs are contained in a confined space with very little freedom. Using our system, these programs do not even reside in the physical device at all and thus further minimize the risks of malware breaking out of the sandbox. Future Smartphone: Mobile Virtualization System using Cloud Computing 9

Such remote sandbox is particularly useful for Android users who would like to install the less trusted applications obtained outside the Android Market. If an image is infected, the user can easily revert the image to its previous clean state.

Prevention of Data Leakage

A recent study commissioned by Cisco indicated that loss of portable devices is one of the top 10 reasons for enterprise data leakage. Our system can also be used as a viable solution against data leakage if the data is stored in the data center and accessible only through one of the virtual smart phone image. Since only the graphic pixels of screen images are delivered to user's mobile phone, the actual data never leaves the secure data center. This allows employees to work with the data without the privilege to retain or copy the data in their local device. This practically gives enterprise more control over confidential and valuable corporate data. We can further configure an image template in such a way that prohibits data from leaving the image.

High Performance

The fact that Android uses the same Java application framework on both x86 and ARM processors provides seamless application portability on these platforms. We can boost the performance of Android applications by running them on x86 platforms with the vast resources of cloud computing. Potential performance leverage one can gain by executing the same applications in the cloud.

Other Possibilities

There are also many other ways to utilize our system. For example, our system can be used to archive the less frequently used applications and free up the storage space on the physical smart phones. Our system can help users prevent their local device from accumulating unwanted residual files from trial applications. Android applications, for example, sometimes leave residual files even after they are uninstalled by the user. Developers may also take the advantage of the fact that virtual smart phones are consistently online and come up with server mobile applications that would be difficult to deploy on physical mobile smart phones.

CONCLUSIONS

Mobile virtualization via cloud is one of mobile technology trends in the future since it combines the advantages of both mobile computing and cloud computing, thereby providing optimal services for mobile users. This system allows smart phone users to create virtual images of smart phones in the cloud and access these images remotely from their physical smart phone.

The prototype implemented integrates the remote environment with the local environment and allows users to run remote applications as they would locally. This prototype also boosts the performance of mobile applications by providing virtually unlimited computing resources at user’s fingertips, without draining the device battery. Finally, the future research directions of mobile virtualization have been outlined with this project.

REFERENCES

1. Mobile virtualization supports mobile cloud computing http://cloudcomputingtopics.com/2010/12/mobile- Virtualization-supports-mobile-cloud-computing/

2. General Dynamics broadband http://www.oklabs.com/solutions/what-is-mobile-phone-virtualization

3. Virtual Smartphone over IP https://www.nttreview.jp/archive/ ntttechnical.php?contents=ntr201007sf4.html 10 Arpit J. Kuche, D M. Dakhane & R L. Pardhi

4. M. Satyanarayanan, V. Bahl, R. Caceres, and N. Davies, “The Case for VM-based Cloudlets in Mobile Computing,” IEEE Pervasive Computing, 2009.

5. R.A. Baratto, S. Potter, G. Su, and J. Nieh, “MobiDesk: mobile virtual desktop computing,” Proceedings of the10th annual international conference on Mobile computing and networking, Philadelphia, PA, USA: ACM, 2004, pp. 1-15.

6. S. Potter and J. Nieh, “Highly Reliable Mobile Desktop Computing in Your Pocket,” Computer Software and Applications Conference, 2006. COMPSAC '06. 30th Annual International, 2006, pp. 247 -254.

7. B.G. Chun and P. Maniatis, “Augmented Smartphone Applications Through Clone Cloud Execution.”

8. “Clone Cloud Project at Intel Research,” http://berkeley.intel research.net/bgchun/clonecloud

9. Bose, X. Hu, K.G. Shin, and T. Park, “Behavioral detection of malware on mobile handsets,” Proceeding of the 6th international conference on Mobile systems, applications, and services, Breckenridge, CO, USA: ACM, 2008, pp. 225-238.

10. H. Kim, J. Smith, and K.G. Shin, “Detecting energy greedy anomalies and mobile malware variants,” Proceeding of the 6th international conference on Mobile systems, applications, and services, Breckenridge, CO, USA: ACM, 2008, pp. 239-252.

11. A.-. Schmidt, J.H. Clausen, A. Camtepe, and S. Albayrak, “Detecting Symbian OS malware Through static function call analysis,” Malicious and Unwanted Software (MALWARE), 2009 4th International Conference on, 2009, pp.

12. A Schmidt, F. Peters, F. Lamour, C. Scheel, S.A. Çamtepe, and S. Albayrak, “Monitoring smart phones for anomaly detection,” Mob. Netw. Appl., vol. 14, 2009, pp. 92-106.