QoS-Aware Middleware for Optimal Service Allocation in Mobile Cloud Computing
Upcoming SlideShare
Loading in...5
×
 

QoS-Aware Middleware for Optimal Service Allocation in Mobile Cloud Computing

on

  • 2,476 views

 

Statistics

Views

Total Views
2,476
Views on SlideShare
2,434
Embed Views
42

Actions

Likes
1
Downloads
26
Comments
0

2 Embeds 42

https://twitter.com 35
https://www.rebelmouse.com 7

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

QoS-Aware Middleware for Optimal Service Allocation in Mobile Cloud Computing QoS-Aware Middleware for Optimal Service Allocation in Mobile Cloud Computing Presentation Transcript

  • QoS-Aware Middleware for Optimal Service Allocation in Mobile Cloud Computing Reza Rahimi, SCHOOL OF INFORMATION AND COMPUTER SCIENCE, University of California, Irvine, CA.
  • Prologue Next Generation of Mobile Apps Sensory Based Applications Location Based Services (LBS) Mobile Music: 52.5% Mobile Video:25.2% Mobile Gaming: 19.3% Augmented Reality Mobile Social Networks and Crowdsourcing Multimedia and Data Streaming M. Reza Rahimi, Jian Ren, Chi Harold Liu, Athanasios V. Vasilakos, and Nalini Venkatasubramanian, "Mobile Cloud Computing: A Survey, State of Art and Future Directions", in ACM/Springer Mobile Application and Networks (MONET), Speciall Issue on Mobile Cloud Computing, Nov. 2013. 2
  • • Cloud computing is a style of computing where massively scalable and elastic IT-related capabilities are provided “as a service” to external customers using Internet technologies. • Mobile cloud computing simply refers to an infrastructure where both the data storage and the data processing could happen outside of the mobile device mainly on cloud. Mobile Cloud Computing Cloud Computing Mobile Computing 3
  • Research Objectives (Big Picture) Computation /Storage as a Service: ex: computation, Storage, Platform,.. Network as a Service: ex: Wireless connectivity (Wi-Fi, 3G/4G, Bluetooth,…) Context as a Service: Optimal service allocation based on mobile users or providers criteria ex: Mobility patterns, Service Usage in different location and time, Group-Aware, Social Context, … 4
  • Related Work Framework Description Theory ISLPED2012: Analytical framework based on game theory for energy saving. WiFi connection. Theory InfoCom 2012: Analytical framework based on convex optimization for reducing energy and execution time. CloneCloud Eurosys2011: Objective: Energy saving, Reduction in execution time, Virtualization framework using Wi-Fi and 3G MobiCloud SOSE2010: Objective: Energy saving and price, Virtualization Framework using Wi-Fi and 3G Description Objective: Energy saving, Reduction in execution time , Virtualization Framework using Wi-Fi and 3G -Not scalable due to cloning, they only considered local cloud, Mobility issue on performance. MAUI MobiSys2010: Framework Cuckoo MobiCase 2010: Objective: Energy saving, Reduction in execution time , Client/Server Wi-Fi ,3G and Bluetooth Calling The Cloud Middleware 2009: Objective: Reduction in execution time, code size and proxy cost Client/Server Framework using Wi-Fi and Bluetooth -any scalability studies, energy issues, public and local cloud modeling, mobility affect on performance. Chroma MobiSys2003: Objective: Reduction in execution time Client-Server using Wi-Fi. • • • Cloudlet PerCom2009: Objective: Reduction in execution time, Virtualization framework using Wi-Fi • Mobility issues, Different Cloud Types (public/local), Public Cloud Important criteria like price, Scalability Study. 5
  • Research Contributions: • 2-Tier Cloud architecture as the cloud computing platform. • Location-time workflow as the modeling framework for mobile applications in mobile cloud computing. • Different heuristics to solve optimal service allocation in mobile cloud computing. • MAPCloud as a QoS-middleware for service allocation in mobile cloud computing. • Scalable version of service allocation algorithm in mobile cloud computing. 6
  • 2-Tier Cloud Architecture 7
  • What is Cloud Computing? A style of computing where massively scalable and elastic IT-related capabilities are provided “as a service” to external customers using Internet technologies (Computing as a Utility). 3 different services could be considered as: Software as a Service (SaaS): Platform as a Service (PaaS): Infrastructure as a Service (IaaS): 8
  • • There are two different approaches to use remote resources for mobile applications: • First Approach: Connect to Public Cloud for resource intensive tasks! • Long WAN delay [Satyanarayanan_2011] , [ Cavilla_2007] : • unlikely to be improved while the prime target of WAN improvement is security, management. • Second Approach: Connect to Local Clouds (Local proxies, Cloudlets) in proximity of the users for resource intensive tasks, [Clone Cloud], [MAUI], [PARM]. • LAN delay is always order of magnitude better that WAN delay [Satyanarayanan_2011] . • Near user resources could not scale up well. [Satyanarayanan_2011] Mahadev Satyanarayanan, “Mobile Computing: The Next Decade”, in SIGMOBILE Mobile 2011. [ Cavilla_2007] Lagar-Cavilla and et al. “ Interactive Resource-Intensive Applications Made Easy”, In Proceedings MIDDLEWARE2007. [Clone Cloud] Byung-Gon Chun and et al. " CloneCloud: Elastic Execution between Mobile Device and Cloud", EuroSys 2011. [MAUI] E. Cuervo, A. Balasubramanian and et al. " MAUI: Making Smartphones Last Longer with Code Offload",MobiSys 2010. [PARM] S. Mohapatra and et al. ”Power-Aware Middleware for Mobile Applications”, Chapter 10 of the Handbook of Energy-Aware and Green Computing, Chapman Hall/CRC, 2011. 9
  • Tier 1: Public Cloud (+) Scalable and Elastic (-) Price, Delay Tier 2: Local Cloud (+) Low Delay, Low Power, Almost Free (-) Not Scalable and Elastic 3G Access Point RTT: ~290ms Wi-Fi Access Point RTT: ~80ms M. Reza. Rahimi, N. Venkatasubramania "Cloud Based Framework for Rich Content Mobile Applications", poster in the IEEE/ACM CCGrid 2011. M. Satyanarayanan, P. Bahl, R. Cáceres, N. Davies " The Case for VM-Based Cloudlets in Mobile Computing", PerCom 2009. 10
  • • Due to different characteristics of local and public cloud services, service allocation for mobile users/group of users on this 2-Tier cloud is a hard task (we will show it is NP-Hard!). • In this research we investigate how to optimally assign services for mobile user/ group of users on this 2-Tier cloud architecture considering power consumed on mobile device, delay that user experienced and price as the main criteria for optimization. • We need a formal framework to model mobile users, different cloud services, mobile applications an their QoS. 11
  • • Service Oriented Computing (SOC) provides strong formal framework for defining the concepts of Services, Workflow, QoS for generic applications. • We will use and extend these concepts to mobile cloud computing in the next section. • More precisely we will: • Formally define cloud and service concepts, • Mobile users and its related properties, • Mobile group concept to define group-ware application. 12
  • Mathematical Formulation of the Service Allocation Problem in MCC 13
  • Clouds, Services, and Location 14
  • Single Mobile User Properties ln l1 l2 l3 15
  • Mobile Group Properties 16
  • Workflow • It consists of number of logical and precise steps known as a function (for application modeling). • Functions could be composed together in different patterns [Mabrouk_2009] , [Zheng_2004] : k F1 F2 F3 F1 SEQ 1 LOOP F3 F1 P1 F4 1 F2 AND: CONCURRENT FUNCTIONS F3 F1 F4 P2 F2 XOR: CONDITIONAL FUNCTIONS N. B. Mabrouk, S. Beauche, E. Kuznetsova, N. Georgantas, and V. Issarny " QoS-aware Service Composition in Dynamic Service Oriented Environments", In Middleware 2009. L. Zeng, B. Benatallah, A. H. NGU, M. Dumas, J. Kalagnanam, and H. Chang "QoS-Aware Middleware for Web Services Composition ", In IEEE Trans. Software. Eng., 2004. 17
  • Workflow (Cont.) 3 1 Start F3 F1 P1 F4 1 F2 F6 F5 F8 P2 End F7 18
  • Location-Time Workflow (LTW) • Intuitively it is composed of user requested workflow in location and time. t1 l1 t2 ln t4 tN W1 l2 l3 t3 Wk+1 Wj+1 Wj Wk Location-Time Workflow M. Reza. Rahimi, N. Venkatasubramania "Exploiting an Elastic 2-Tiered Cloud Architecture for Rich Mobile Applications“, Poster in the IEEE/ACM WoWMoM 2012 19
  • Quality of Service (QoS) • The QoS could be defined in two different Levels: • Atomic service level • Composite service level or workflow level. • Atomic service level could be defined as: M. Reza. Rahimi, Nalini Venkatasubramanian, Athanasios Vasilakos, "MuSIC: On Mobility-Aware Optimal Service Allocation in Mobile Cloud Computing", In the IEEE Cloud 2013. M. Reza. Rahimi, Nalini Venkatasubramanian, Sharad Mehrotra and Athanasios Vasilakos, "MapCloud: Mobile Applications on an Elastic and Scalable 2-Tier Cloud Architecture", In the 5th IEEE/ACM International Conference on Utility and Cloud Computing , USA, Nov 2012. 20
  • QoS (Cont.) • The workflow QoS is based on different patterns. Qos SEQ AND XOR LOOP • LTW QoS: 21
  • Normalization • • As it can be understood different QoSes have different dimensions (Price->$, power->joule, delay->s) We need the normalization process to make them comparable. It could be defined in different levels: Service, Workflow. • Services, Max and Min Services (example): • 22
  • Normalization (Cont.) • The higher Normalized Power/Price/Delay are the better services are (low power/price/delay). • The same procedure could be used to define the normalized workflow as: 23
  • Summary • We define location-time workflow for modeling mobile applications in pervasive environment. • We define QoS for LTW and how to do the normalization. • The normalized power, price and delay is the real number in interval [0,1]. • The higher the normalized QoS the better the execution plan is. • We need to answer the following two questions: – For single mobile users: Knowing the Mobile user LTW; what is the optimal service allocation considering price, power and delay? 24
  • – For mobile groups what is the optimal service allocation when they have shared services (such a shared storage) considering price, power and delay? • These questions have missing parts which are Utility Functions. • Many has been defined in the operational research literature, we use the Fairness Utility for our problem. 25
  • Optimal Service Allocation for Single Mobile User 26
  • 27
  • Optimal Service Allocation for Mobile Group 28
  • • Both these optimization problems are NP-Hard (Knapsack is the special case) so we look for heuristic to solve this problem. 29
  • Mobility-Aware Service Allocation Algorithms on Cloud 30
  • Brute-Force Search (BFS) Simulated Annealing Based Service Allocation Algorithms for Single Mobile User and Mobile Group-Ware Applications Genetic Based Greedy Based Random Service Allocation (RSA) • • We start with our main one, which we call it MuSIC: Mobility Aware Service AllocatIon on Cloud. Its core is based-on simulated annealing approach. 31
  • MuSIC: Simulated Annealing-Based Algorithm: Simulated Annealing Core 32
  • Find Service (Cont.) 33
  • Genetic Algorithm Based Approach • Choose initial population (usually random) Constraint • Repeat (until terminated) Satisfaction Genetic Algorithm Core – Evaluate each individual's fitness – Prune population (typically all; if not, then the worst) – Select pairs to mate from best-ranked individuals (Ranked, Roulette Wheel) – Replenish population (using selected pairs) • Apply crossover operator • Apply mutation operator – Add/Replace generated member to population – Check for termination criteria • Loop, if not terminating 34
  • Greedy-Based Service Allocation M. Reza. Rahimi, Nalini Venkatasubramanian, Sharad Mehrotra and Athanasios Vasilakos, "On Optimal and Fair Service Allocation in Mobile Cloud Computing", submitted to IEEE Trans. on Mobile Computing, 2013 35
  • MapCloud Middleware 36
  • • MapCloud Middleware is the QoS-Aware service allocation in Mobile Cloud Computing. • We Implement MapCloud v1.0 prototype as a web application using Grails/Groovy framework (SOC framework based on JAVA). • We used Amazon Web Services as the cloud framework. More information could be found at: http://www.youtube.com/watch?v=yEmQug0pomE&feature=youtu.b e 37
  • MapCloud Middleware Architecture Cloud Service Registry Mobile Client MAPCloud Web Service Interface MAPCloud Web Service Interface MAPCloud Runtime MAPCloud LTW Engine and Analytics QoS-Aware Service DB Mobile User Log DB Local and Public Cloud Pool Admission Control and Scheduler MAPCloud Middleware 38
  • MapCloud Middleware Sequence Diagram Mobile User Logger DB and QoS Analyzer User Logs like: Web Service Usage, Experienced QoS like: delay, power consumption LocationTime Analytics QoS-Aware Service Scheduler 2-Tier QoS-Aware Cloud Registry 2-Tier Cloud Service Pool User Web Service Usage Log with Experienced QoS . Save User service pattern As location-Time workflow . Run MuSIC/Genetic Greedy/RSA or Use previous Result on previous collected data from mobile users to find best Recommended service allocation. Web Services with their URL. It analyzes user experienced QoS and updates cloud registry
  • MapCloud Snapshots
  • Experimental and Simulation Results 41
  • Mobile Applications (Case Studies) Video Augmented Reality (VAR): OCR+ Speech (OCRS): Multimedia File Sharing (MFS): You Tube Link Mobile Apps Processing Storage Bandwidth Group-Aware/Sharing OCRS VAR MFC 42
  • Mobile Applications (Case Studies) Local Cloud Public Cloud Averaged Delay (in ms) and power consumption (in mjole) of different wireless network types regarding to data size when using local cloud ( Fig. a and b) and Amazon Public Cloud (Fig. c and d). 43
  • Simulation Setup Profiling sample applications has been used for tune the system Environment. Java Network simulator (JNS) used for modeling the delay between Local clouds. RWP and Manhattan mobility models are used as the mobility models (V[0/ms-10/ms]). The delay modeling used in MapCloud for large system simulation. S1 . . . Sn Amazon EC2,S3 large instance: equivalent to a PC with 7.5GB of memory, 850 GB of storage Local Cloud 4 Local Cloud 1 LAN Speed S1 . . . Sn S1 . . . Sn Local Cloud 2 Local Cloud 5 Local Cloud: 64bit Windows dual-core server, with 8GB of memory and 500GB of storage. S1 . . . Sn Local Cloud n Local Cloud 7 S1 . . . Sn 44
  • Simulation Setup • Simulation used to evaluate the performance of the proposed algorithms. 45
  • Simulation Results MuSIC, Genetic, Greedy, RSA and G-MuSIC (5-Groups) algorithms average throughput with uncertainty in the range of [0%,30%] 46
  • Simulation Results(Cont.) MuSIC and G-MuSIC algorithm real averaged values for delay and power consumption 47
  • Simulation Results(Cont.) • Local Cloud+Public Cloud: • How could we measure the performance of 2-Tiered Cloud Architecture? • What are the reasonable metrics? Local Cloud+ Public Cloud Local Cloud+ Public Cloud Local Cloud+ Public Cloud Same Delay Same Power Same Price Public Cloud Public Cloud Public Cloud 48
  • Simulation Results(Cont.) 2-Tier Cloud Performance Results: Single User (100 mobile users) 2-Tier Cloud Architecture Performance Constant Delay Constant Power Constant Price Price Power Price Delay Power Delay MuSIC [0%-30%] Uncertainty Genetic [0%-30%] Uncertainty Greedy [0%-30%] Uncertainty RSA [0%-30%] Uncertainty 27% 2% 22% 4% 17% 15% 17% 6% 16% 1% 8% 13% 18% 5% 14% 2% 10% 12% 10% 3% 13% 2% 7% 10% 49
  • Simulation Results(Cont.) 2-Tier Cloud Performance Results: Group of Users (5 groups, average group size ~20) 2-Tier Cloud Architecture Performance Constant Delay Constant Power Constant Price Price Power Price Delay Power Delay G-MuSIC G-Genetic G-Greedy [0%-30%] [0%-30%] [0%-30%] Uncertainty Uncertainty Uncertainty 20% 3% 15% 4% 10% 10% 15% 4% 10% 4% 9% 11% 13% 4% 11% 2% 10% 8% G-RSA [0%-30%] Uncertainty 9% 2% 10% 3% 8% 8% 50
  • Scalability 51
  • ~3 Tera of Feasible Solutions 52
  • ~10 Exa of feasible solutions 53
  • General Approach For Making Parallel Solution Mobile User Clustering and Grouping : 1. Fixed Grid Clustering 2. K-mean Clustering Assign Public and Local Cloud Resources to each Cluster Mobile User LTW Ordering : 1. Random Ordering 2. Utility Based Ordering 3. Optimal Ordering Running Service/Resource Allocation Algorithms in Parallel for each Cluster : 1. RSA 2. Greedy 3. MuSIC 4. Genetic Algorithm 54
  • -Partition mobile users and local clouds based on their proximities and run service allocation algorithms for each region in parallel. Public Cloud Local Cloud Local Cloud Local Cloud Local Cloud Local Cloud Local Cloud Local Cloud Local Cloud 55
  • 56
  • Mobile Users Service 1 Service n Pig Latin pseudo codes: /*Load Data*/ LOAD mobile users , services…. Apply System CONSTRAINTS Compute UTILITY FUNCTION of each solution for Mobile Users /*Cartesian product to produce solution space*/ CROSS Mobile users, Service1,… /*Apply Optimization Constraints to solution space */ FILTER by Constraints1,… GROUP Solutions for each Mobile Users /*Find Best Solution*/ FOREACH Mobile User GENERATE utility value Find the MAXIMUM UTILITY for each Mobile Users and emit as the best solution GROUP Solution By Mobile Users FOREACH Solution GENERATE MAX 57
  • Experimental Results Constants: Variables: processing time per user according to different number of parralell machines. Cluster Information: Amazon EC2 large Instance, 64bit linux, ~8Gib Mem, ~800Gib Storage 2000 1800 Processing Time in Seconds 10,000 mobile users, uniformly distributed. 6 different services per mobile users and for each service we have 10 different candidates (on local or public clouds) # of local clouds: 50 , uniformly distributed. # public cloud : 10 EC2 Large Instance (64-bit linux, 8Gib Mem, 800 Gib Storage). # number of different regions: 10 RSA-Par 1600 MuSIC-Par 1400 Greedy-Par 1200 GA-Par 1000 800 600 400 200 0 4 6 8 10 12 Number of Parralel Machines (Amazon EC2 Large Instance) 58
  • Experimental Results (Continue) 500 Constants: Variables: processing time per user according to different number of parallel machines. 450 Processing Time in Seconds 10,000 mobile users, uniformly distributed 6 different services per mobile users and for each service we have 10 different candidates (on local or public cloud) # of local clouds: 50 , uniformly distributed # public cloud :10 amazon Large instance # number of different regions: 10 # number of different groups: 500 groups G-RSA-Par 400 G-MuSIC-Par 350 G-Greedy-Par 300 G-GA-Par 250 200 150 100 50 0 4 6 8 10 12 Number of Parralel Machines (Amazon EC2 Large Instance) 59
  • Experimental Results (Continue) Processing Time in Seconds 6000 Pig-Based for Single User 5000 Pig-Based for Mobile Groups 4000 3000 2000 1000 0 4 6 8 10 12 Number of Parralel Machines (Amazon EC2 large Instance) RSA-Par/Pig-Based MuSIC-Par/Pig-Based Greedy-Par/Pig-Based GA-Par/Pig-Based Single 48% 77% 67% 70% Group 47% 71% 69% 68% 60
  • Conclusion and Future Direction • Talk Summary: – LTW proposed as the modeling framework for mobile service usage. – MuSIC (and other service allocation algorithms ) were proposed and their optimality were studied for different class of mobile applications. – MapCloud middleware has been reviewed. • Future Work: – The beauty of this work is its level of Abstraction: LTW could contain user behavior/context . – Future work will be focused on extracting context (defined based on ontology) using data mining techniques. – This will lead to have efficient mobile cloud computing ecosystem which could optimize different players (mobile users, service providers) criteria automatically. 61