DOI QR코드

DOI QR Code

Study on Program Partitioning and Data Protection in Computation Offloading

코드 오프로딩 환경에서 프로그램 분할과 데이터 보호에 대한 연구

  • Received : 2020.10.05
  • Accepted : 2020.11.06
  • Published : 2020.11.30

Abstract

Mobile cloud computing involves mobile or embedded devices as clients, and features small devices with constrained resource and low availability. Due to the fast expansion of smart phones and smart peripheral devices, researches on mobile cloud computing attract academia's interest more than ever. Computation offloading, or code offloading, enhances the performance of computation by migrating a part of computation of a mobile system to nearby cloud servers with more computational resources through wired or wireless networks. Code offloading is considered as one of the best approaches overcoming the limited resources of mobile systems. In this paper, we analyze the factors and the performance of code offloading, especially focusing on static program partitioning and data protection. We survey state-of-the-art researches on analyzed topics. We also describe directions for future research.

모바일 클라우드 컴퓨팅은 클라우드 컴퓨팅 환경에서 클라이언트 기기로 모바일이나 임베디드 디바이스가 사용되는 경우를 말하며, 단말 기기의 뛰어난 이동성과 상대적으로 낮은 연산 자원의 신뢰도를 그 특징으로 한다. 스마트폰과 소형 주변기기의 확산으로 최근 모바일 클라우드 컴퓨팅에 대한 연구가 급증하고 있다. 코드 오프로딩은 무선 네트워크 연결되어 있는 모바일 시스템이 연산 작업의 일부를 보다 빠른 속도를 가진 서버로 옮겨서 진행함으로써 효율을 향상시키는 기법이다. 코드 오프로딩은 모바일 클라우드 환경에서 모바일 디바이스가 가지는 제한된 자원을 극복하는 중요한 기법의 하나로 각광받고 있다. 본 논문에서는 코드 오프로딩의 성능을 좌우하는 요소를 분석하고, 다양한 요소 중에서 프로그램 정적 분할 기법과 데이터 보호에 관련된 최근 연구동향을 요소별로 분석한다. 또한 현재까지 진행되고 있는 다양한 연구와 관련 분야 신기술을 고려한 향후 발전 방향을 논의한다.

Keywords

References

  1. S. Al-Janabi, I. Al-Shourbaji, M. Shojafar, and M. Abdelhag, "Mobile cloud computing: challenges and future research directions," in 2017 10th In Ternational Conference on Developments in Esystems Engineering (DeSE), IEEE, pp.62-67, 2017.
  2. S. Kosta, A. Aucinas, P. Hui, R. Mortier, and X. Zhang, "Thinkair: Dynamic resource allocation and parallel execution in the cloud for mobile code of floading," in 2012 Proceedings IEEE Infocom, IEEE, pp.945-953, 2012.
  3. J. Flinn, S. Park, and M. Satyanarayanan, "Balancing performance, energy, and quality in pervasive computing," in Proceedings 22nd International Conference on Distributed Computing Systems, IEEE, pp.217-226, 2002.
  4. I. Giurgiu, O. Riva, D. Juric, I. Krivulev, and G. Alonso, "Calling the cloud: Enabling mobile phones as interfaces to cloud applications," in ACM/IFIP/USENIX International Conference on Distributed Systems Platforms and Open Distributed Processing, Springer, pp.83-102, 2009.
  5. R. Kemp, N. Palmer, T. Kielmann, and H. Bal, "Cuckoo:a computation offload ing framework for smartphones," in International Conference on Mobile Computing, Applications, and Services, Springer, pp.59-79, 2010.
  6. S. Wu, C. Niu, J. Rao, H. Jin, and X. Dai, "Container-based cloud platform for mobile computation offloading," in Parallel and Distributed Processing Symposium (IPDPS), 2017 IEEE International, IEEE, pp.123-132, 2017.
  7. C. Xian, Y.-H. Lu, and Z. Li, "Adaptive computation offloading for energy con servation on battery-powered systems," in 2007 International Conference on Parallel and Distributed Systems, IEEE, pp.1-8, 2007.
  8. H. Flores, P. Hui, S. Tarkoma, Y. Li, S. Srirama, and R. Buyya, "Mobile code offloading: From concept to practice and beyond," IEEE Communications Magazine, Vol.53, No.3, pp.80-88, 2015. doi:10.1109/MCOM.2015.7060486.
  9. K. Sinha and M. Kulkarni, "Techniques for fine-grained, multi-site computation offloading," in 2011 11th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing, IEEE, pp.184-194, 2011.
  10. H. E. Bal, R. Bhoedjang, R. Hofman, C. Jacobs, K. Langendoen, T. Ruhl, and M. F. Kaashoek, "Performance evaluation of the Orca shared-object system," ACM Transactions on Computer Systems (TOCS), Vol.16, No.1, pp.1-40, 1998. https://doi.org/10.1145/273011.273014
  11. Y. Aridor, M. Factor, A. Teperman, T. Eilam, and A. Schuster, "A high performance cluster JVM presenting a pure single system image," in Proceedings of the ACM 2000 Conference on Java Grande, pp.168-177, 2000.
  12. W. Shi, J. Cao, Q. Zhang, Y. Li, and L. Xu, "Edge computing: Vision and challenges," IEEE Internet of Things Journal, Vol.3, No.5, pp.637-646, 2016. https://doi.org/10.1109/JIOT.2016.2579198
  13. S. Yi, C. Li, and Q. Li, "A survey of fog computing: concepts, applications and issues," in Proceedings of the 2015 Workshop on Mobile Big Data, pp.37-42, 2015.
  14. J. Zhao, Q. Li, Y. Gong, and K. Zhang, "Computation offloading and resource allocation for cloud assisted mobile edge computing in vehicular networks," IEEE Transactions on Vehicular Technology, Vol.68, No.8, pp.7944-7956, 2019. https://doi.org/10.1109/tvt.2019.2917890
  15. S. Guo, J. Liu, Y. Yang, B. Xiao, and Z. Li, "Energy-efficient dynamic computa tion offloading and cooperative task scheduling in mobile cloud computing," IEEE Transactions on Mobile Computing, Vol.18, No.2, pp.319-333, 2018. https://doi.org/10.1109/tmc.2018.2831230
  16. X. Lin, Y. Wang, Q. Xie, and M. Pedram, "Task scheduling with dynamic voltage and frequency scaling for energy minimization in the mobile cloud comput ing environment," IEEE Transactions on Services Computing, Vol.8, No.2, pp.175-186, 2014. https://doi.org/10.1109/TSC.2014.2381227
  17. Y. Nimmagadda, K. Kumar, Y.-H. Lu, and C. S. G. Lee, "Real-time moving object recognition and tracking using computation offloading," in 2010 IEEE/RSJ International Conference on Intelligent Robots and Systems, IEEE, pp.2449-2455, 2010.
  18. M. A. Khan, "A survey of computation offloading strategies for performance improvement of applications running on mobile devices," Journal of Network and Computer Applications, Vol.56, pp.28-40, 2015 https://doi.org/10.1016/j.jnca.2015.05.018
  19. G. Pinto, K. Liu, F. Castor, and Y. D. Liu, "A comprehensive study on the energy efficiency of Java's thread-safe collections," in 2016 IEEE International Conference on Software Maintenance and Evolution (ICSME), IEEE, pp.20-31, 2016.
  20. Z. Kuang, L. Li, J. Gao, L. Zhao, and A. Liu, "Partial offloading scheduling and power allocation for mobile edge computing systems," IEEE Internet of Things Journal, Vol.6, No.4, pp.6774-6785, 2019. https://doi.org/10.1109/jiot.2019.2911455
  21. M. Longo, A. Rodriguez, C. Mateos, and A. Zunino, "Reducing energy usage in resource-intensive java-based scientific applications via micro-benchmark based code refactorings," Computer Science and Information Systems, Vol.16, No.2, pp.541-561, 2019. doi:10.2298/CSIS180608009L.
  22. K. Kumar and Y.-H. Lu, "Cloud computing for mobile users:Can offloading computation save energy?," Computer, Vol.43, No.4, pp.51-56, 2010. https://doi.org/10.1109/MC.2010.98
  23. J. Liu, E. Ahmed, M. Shiraz, A. Gani, R. Buyya, and A. Qureshi, "Application partitioning algorithms in mobile cloud computing: Taxonomy, review and future directions," Journal of Network and Computer Applications, Vol.48, pp.99-117, 2015. https://doi.org/10.1016/j.jnca.2014.09.009
  24. L. Yang, J. Cao, Y. Yuan, T. Li, A. Han, and A. Chan, "A framework for par titioning and execution of data stream applications in mobile cloud com puting," ACM SIGMETRICS Performance Evaluation Review, Vol.40, No.4, pp.23-32, 2013. https://doi.org/10.1145/2479942.2479946
  25. Y. Zhang, G. Huang, X. Liu, W. Zhang, H. Mei, and S. Yang, "Refactoring Android Java code for on-demand computation offloading," in ACM Sigplan Notices, Vol.47, pp.233-248, 2012. https://doi.org/10.1145/2398857.2384634
  26. M. Smit, M. Shtern, B. Simmons, and M. Litoiu, "Partitioning applications for hybrid and federated clouds," in CASCON, Vol.12, pp.27-41, 2012.
  27. L. Li, T. F. Bissyande, M. Papadakis, S. Rasthofer, A. Bartel, D. Octeau, J. Klein, and L. Traon, "Static analysis of android apps: A systematic literature review," Information and Software Technology, Vol.88, pp.67-95, 2017. https://doi.org/10.1016/j.infsof.2017.04.001
  28. A. Rodriguez, C. Mateos, and A. Zunino, "Improving scientific application exe cution on android mobile devices via code refactorings," Software: Practice and Experience, Vol.47, No.5, pp.763-796, 2017. https://doi.org/10.1002/spe.2419
  29. H.-h. Chu, H. Song, C. Wong, S. Kurakake, and M. Katagiri, "Roam, a seamless application framework," Journal of Systems and Software, Vol.69, No.3, pp.209-226, 2004. https://doi.org/10.1016/S0164-1212(03)00052-9
  30. R. Bialek, E. Jul, J.-G. Schneider, and Y. Jin, "Partitioning of Java applications to support dynamic updates," in 11th Asia-Pacific Software Engineering Conference, IEEE, pp.616-623, 2004.
  31. C. Wang, and Z. Li, "Parametric analysis for adaptive computation offloading," in ACM SIGPLAN Notices, Vol.39, pp.119-130, 2004.
  32. S. Ou, K. Yang, and A. Liotta, "An adaptive multi-constraint partitioning algorithm for offloading in pervasive systems," in Fourth Annual IEEE Inter national Conference on Pervasive Computing and Communications (PER COM'06), IEEE, 2006.
  33. E. Tilevich and Y. Smaragdakis, "J-Orchestra: Enhancing Java programs with distribution capabilities," ACM Transactions on Software Engineering and Methodology (TOSEM), Vol.19, No.1, pp.1-40, 2009.
  34. E. Cuervo, A. Balasubramanian, D.-K. Cho, A. Wolman, S. Saroiu, R. Chandra, and P. Bahl, "MAUI: Making smartphones last longer with code offload," in Proceedings of the 8th International Conference on Mobile Systems, Applications, and Services, ACM, pp.49-62, 2010.
  35. B.-G. Chun, S. Ihm, P. Maniatis, M. Naik, and A. Patti, "CloneCloud: Elastic execution between mobile device and cloud," in Proceedings of the sixth conference on Computer systems, ACM, pp.301-314, 2011.
  36. E. Abebe and C. Ryan, "A hybrid granularity graph for improving adaptive ap plication partitioning efficacy in mobile computing environments," in 2011 IEEE 10th International Symposium on Network Computing and Applications, IEEE, pp.59-66, 2011.
  37. D. Kovachev, "Framework for computation offloading in mobile cloud computing," International Journal of Artificial Intelligence and Interactive Multimedia, Vol.1, No.7, pp.6-15, 2012. https://doi.org/10.9781/ijimai.2012.171
  38. M.-R. Ra, B. Priyantha, A. Kansal, and J. Liu, "Improving energy efficiency of personal sensing applications with heterogeneous multi-processors," in Proceedings of the 2012 ACM Conference on Ubiquitous Computing, pp.1-10, 2012.
  39. X. Gu, K. Nahrstedt, A. Messer, I. Greenberg, and D. Milojicic, "Adaptive of floading inference for delivering applications in pervasive computing envi ronments," in Proceedings of the First IEEE International Conference on Pervasive Computing and Communications, IEEE, pp.107-114, 2003.
  40. B. Hendrickson and R. W. Leland, "A Multi-Level Algorithm For Partitioning Graphs.," Proceedings of the ACM/IEEE Supercomputing Conference, Vol.95, No.28, pp.1-14, 1995.
  41. M. Yu, G. Huang, X. Wang, Y. Zhang, and X. Chen, "Javascript offloading for web applications in mobile-cloud computing," in 2015 IEEE International Conference on Mobile Services, IEEE, pp.269-276, 2015.
  42. R. K. Balan, D. Gergle, M. Satyanarayanan, and J. Herbsleb, "Simplifying cyber foraging for mobile devices," in Proceedings of the 5th International Conference on Mobile Systems, Applications and Services, pp.272-285, 2007.
  43. V. Jamwal, and S. Iyer, "Automated refactoring of objects for application partitioning," in 12th Asia-Pacific Software Engineering Conference (APSEC'05), IEEE, 2005.
  44. I. Giurgiu, O. Riva, and G. Alonso, "Dynamic software deployment from clouds to mobile devices," in ACM/IFIP/USENIX International Conference on Distributed Systems Platforms and Open Distributed Processing, Springer, pp.394-414, 2012.
  45. E. Abebe and C. Ryan, "Adaptive application offloading using distributed ab stract class graphs in mobile enviro nments," Journal of Systems and Software, Vol.85, No.12, pp.2755-2769, 2012. https://doi.org/10.1016/j.jss.2012.05.091
  46. T. Islam, D. Manivannan, and S. Zeadally, "A classification and characterization of security threats in cloud computing," International Journal of Next-Generation Computing, Vol.7, No.1, pp.268-285, 2016.
  47. R. Li, C. Shen, H. He, X. Gu, Z. Xu, and C.-Z. Xu, "A lightweight secure data sharing scheme for mobile cloud computing," IEEE Transactions on Cloud Computing, Vol.6, No.2, pp.344-357, 2017. https://doi.org/10.1109/tcc.2017.2649685
  48. N. Paladi, C. Gehrmann, and A. Michalas, "Providing user security guarantees in public infrastructure clouds," IEEE Transactions on Cloud Computing, Vol.5, No.3, pp.405-419, 2016. https://doi.org/10.1109/TCC.2016.2525991
  49. Q. Wang, C. Wang, J. Li, K. Ren, and W. Lou, "Enabling public verifiability and data dynamics for storage security in cloud computing," in European Symposium on Research in Computer Security, Springer, pp.355-370, 2009.
  50. R. Chow, P. Golle, M. Jakobsson, E. Shi, J. Staddon, R. Masuoka, and J. Molina, "Controlling data in the cloud:Outsourcing computation without outsourcing control," in Proceedings of the 2009 ACM workshop on Cloud Computing Security, ACM, pp.85-90, 2009.
  51. W. Wang, Z. Li, R. Owens, and B. Bhargava, "Secure and efficient access to outsourced data," in Proceedings of the 2009 ACM Workshop on Cloud Computing Security, ACM, pp.55-66, 2009.
  52. X. Xu, C. He, Z. Xu, L. Qi, S. Wan, and M. Z. A. Bhuiyan, "Joint optimization of offloading utility and privacy for edge computing enabled IoT," IEEE Internet of Things Journal, Vol.7, No.4, pp.2622-2629, 2019. https://doi.org/10.1109/jiot.2019.2944007
  53. Security Guidance for Critical Areas of Focus in Cloud Computing v4.0 [Internet], https://cloudsecurityalliance.org/artifacts/security-guidance-v4/ (Last accessed: 10/31/2020).
  54. G Suite Status Dashboard - Google [Internet], https://www.google.com/appsstatus (Last accessed: 10/31/2020).
  55. Folding@home: Together We Are Powerful [Internet], https://foldingathome.org/home/ (Last accessed: 10/31/2020).
  56. C. Gentry, "Fully homomorphic encryption using ideal lattices," in Proceedings of the Annual ACM Symposium on Theory of Computing, Vol.9, pp.169-178, 2009.
  57. C. Gentry, "Computing arbitrary functions of encrypted data," Communications of the ACM, Vol.53, No.3, pp.97-105, 2010. https://doi.org/10.1145/1666420.1666444
  58. S. Kumaresan and V. Shanmugam, "Time-variant attribute-based multitype encryption algorithm for improved cloud data security using user profile," The Journal of Supercomputing, pp.1-19, 2020.
  59. W. Ding, Z. Yan, and R. H. Deng, "Encrypted data processing with homomor phic re-encryption," Information Sciences, Vol.409, pp.35-55, 2017. https://doi.org/10.1016/j.ins.2017.05.004
  60. J. Liu, K. Kumar, and Y.-H. Lu, "Tradeoff between energy savings and privacy protection in computation offloading," in 2010 ACM/IEEE International Symposium on Low-Power Electronics and Design (ISLPED), IEEE, pp.213-218, 2010.
  61. S. Bajikar, "Trusted platform module (TPM) based security on notebook pcs-white paper," Mobile Platforms Group Intel Corporation, pp.1-20, 2002.