qos-aware middleware for optimal service allocation in mobile cloud computing
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.
2
Prologue
Mobile Music: 52.5%Mobile Video:25.2%Mobile Gaming: 19.3%
Sensory Based Applications
Augmented Reality
Mobile Social Networks and Crowdsourcing
Multimedia and Data Streaming
Location Based Services (LBS)
Next Generation of Mobile Apps
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.
3
• 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
Mobile Computing
Cloud Computing
Research Objectives (Big Picture)
4
Context as a Service:
ex: Mobility patterns, Service Usage in different
location and time, Group-Aware, Social
Context, …
Network as a Service:
ex: Wireless connectivity
(Wi-Fi, 3G/4G, Bluetooth,…)
Computation /Storage as a
Service:ex: computation,
Storage, Platform,..
Optimal service allocation based on mobile users or providers
criteria
5
Related Work
Framework Description
TheoryISLPED2012:
Analytical framework based on game theory for energy saving. WiFi connection.
TheoryInfoCom 2012:
Analytical framework based on convex optimization for reducing energy and execution time.
CloneCloudEurosys2011:
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.
MAUIMobiSys2010:
Objective: Energy saving, Reduction in execution time, Virtualization framework using Wi-Fi and 3G
MobiCloudSOSE2010:
Objective: Energy saving and price, Virtualization Framework using Wi-Fi and 3G
CloudletPerCom2009:
Objective: Reduction in execution time, Virtualization framework using Wi-Fi
Framework Description
CuckooMobiCase 2010:
Objective: Energy saving, Reduction in execution time , Client/Server Wi-Fi ,3G and Bluetooth
Calling The CloudMiddleware 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.
ChromaMobiSys2003:
Objective: Reduction in execution time Client-Server using Wi-Fi.
• Mobility issues,• Different Cloud Types
(public/local), • Public Cloud Important criteria like
price,• Scalability Study.
6
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.
7
2-Tier Cloud Architecture
8
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).
What is Cloud Computing?
3 different services could be considered as:Software as a Service (SaaS):
Platform as a Service (PaaS):
Infrastructure as a Service (IaaS):
9
• 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.
• There are two different approaches to use remote resources for mobile applications:
• 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.
10
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.
Tier 2: Local Cloud
(+) Low Delay, Low Power,
Almost Free (-) Not Scalable and
Elastic
Tier 1: Public Cloud (+) Scalable and Elastic
(-) Price, Delay
Wi-Fi Access Point
3G Access Point
RTT: ~290ms
RTT: ~80ms
11
• 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.
12
• 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.
13
Mathematical Formulation of the Service Allocation
Problem in MCC
14
Clouds, Services, and Location • Cloud Service Set is the set of all supporting
services on Cloud (usually implemented as a web service ):
• User Service Set is the set of all supporting services of the user (computation, storage, transcoding, …):
,…, }• Local Cloud Capacity: It is defined as the
maximum number of mobile clients that could be served using local cloud ().
• Location in space is defined as:L
15
• Trajectory is defined as:
• Center of Mobility: is the location where (or near where) a mobile user spends most of its time near it. It is calculated as follows:
l1
l2
l3
ln
Single Mobile User Properties
16
• Mobile Group: It is defined as a group of users which have the shared services for example in storage sharing and mobile social applications. It is presented by in which is the power set (the set that contains all subset of Mobile users). We could define it formally as:
• Center of Mobility : is the location that a mobile group users belong to spends most of their time in or near it. It could be formally defined as:
Mobile Group Properties
17
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] :
F1 F2 F3
F1
F2
F4
F3
F1
F1
F2
F4
F3
SEQ LOOP
AND: CONCURRENT FUNCTIONS XOR: CONDITIONAL FUNCTIONS
k
1
1
P1
P2
𝑷𝟏+𝑷𝟐=𝟏 ,𝑷𝟏 ,𝑷𝟐 ∈{𝟎 ,𝟏}
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.
18
Workflow (Cont.)• Typical workflow (showed by ):
• Each in workflow could be realized and implemented by some services.
• We define as:
• Feasible solution or execution plan for a workflow W consists of n Functions is defined as:
F1
F2
F4
F3
F5
F7
F8
F61
1
P1
P2
3
Start End
Location-Time Workflow (LTW)
• Intuitively it is composed of user requested workflow in location and time.
19
t1 t2 t4t3 tN
l2
l1
l3
ln
W1
Wk+1
Wk
Wj+1
Wj
Location-Time Workflow
• It could be formally defined as:,….,
M. Reza. Rahimi, N. Venkatasubramania "Exploiting an Elastic 2-Tiered Cloud Architecture for Rich Mobile Applications“, Poster in the IEEE/ACM WoWMoM 2012
20
Quality of Service (QoS)
power consumed on cellphone when he is in l using.
price of executing for when he is in l
delay of executing for when he is in l.
• 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.
21
QoS (Cont.)
• The workflow QoS is based on different patterns.Qos SEQ AND XOR LOOP
• LTW QoS:),.…,
),.…,
),.…,
22
• 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):
The maximum power consumed on cellphone when he is in region considering all services which implements Function.
The minimum power consumed on cellphone when he is in region considering all services which implements function.
Normalization
23
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:The maximum power consumed on cellphone considering all feasible plans for workflow W.
The minimum power consumed on cellphone considering all feasible plans for workflow W.
‖𝑾 (𝒖𝒌)𝒑𝒐𝒘𝒆𝒓‖≝¿‖[𝑾 (𝒖𝒌)𝜯
𝑳 ]𝒑𝒐𝒘𝒆𝒓‖≝¿
24
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?
25
– 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.
26
Optimal Service Allocation for Single
Mobile User
• In this optimization problem our goal is to maximize the minimum saving of power, price and delay of the mobile applications.
27
𝑭𝒂𝒊𝒓𝒏𝒆𝒔𝒔 𝑈𝑡𝑖𝑙𝑖𝑡𝑦
28
Optimal Service Allocation for Mobile
Group
29
𝑮𝒓𝒐𝒖𝒑 𝑭𝒂𝒊𝒓𝒏𝒆𝒔𝒔𝑈𝑡𝑖𝑙𝑖𝑡𝑦
•Both these optimization problems are NP-Hard (Knapsack is the special case) so we look for heuristic to solve this problem.
30
Mobility-Aware Service Allocation Algorithms
on Cloud
31
Service Allocation Algorithms for Single Mobile User and
Mobile Group-Ware Applications
Brute-Force Search (BFS)
Simulated Annealing Based
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.
32
Simulated Annealing
Core
MuSIC: Simulated Annealing-Based Algorithm:
Utility0=InitialValue;It=0;Compute
While(It<MaxIt):CandidateService= FindService(Utility1=Compute(CandidateService)Δ=Utility1-Utility0
If Δ > 0Utility0=Utility1
𝒎𝒊𝒏{‖[𝑾 (𝒖𝒌)𝜯𝑳 ]𝒑𝒐𝒘𝒆𝒓‖,‖[𝑾 (𝒖𝒌)𝑻
𝑳 ]𝒑𝒓𝒊𝒄𝒆‖,‖[𝑾 (𝒖𝒌)𝑻
𝑳 ]𝒅𝒆𝒍𝒂𝒚‖ }Else if ()
Utility0=Utility1
It++EndWhile
Return CandidateService,Utility1
33
Find Service (Cont.)
34
Genetic Algorithm Based Approach
• Choose initial population (usually random)• Repeat (until terminated)
– 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
Constraint Satisfaction
𝒎𝒊𝒏{‖[𝑾 (𝒖𝒌)𝜯𝑳 ]𝒑𝒐𝒘𝒆𝒓‖,‖[𝑾 (𝒖𝒌)𝑻
𝑳 ]𝒑𝒓𝒊𝒄𝒆‖,‖[𝑾 (𝒖𝒌)𝑻
𝑳 ]𝒅𝒆𝒍𝒂𝒚‖ }
Genetic Algorithm
Core
35
Greedy-Based Service Allocation
• For each user/mobile user, find the best (Highest Total Normalized QoS ) required service.
• Total Normalized QoS could be defined as:
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
36
MapCloud Middleware
37
• 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.be
38
QoS-Aware Service DB
Mobile User Log DB
Admission Control and Scheduler
Cloud Service Registry
Mobile Client
MA
PC
lou
d W
eb S
ervi
ce I
nte
rfac
e
MAPCloud Middleware
MAPCloud Runtime
Local and Public
Cloud Pool
MAPCloud LTW Engine and
Analytics
MAPCloud Web Service Interface
MapCloud Middleware Architecture
Mobile User
Logger DB and QoS Analyzer
Location-Time
Analytics
QoS-Aware Service
Scheduler
2-Tier QoS-Aware Cloud Registry
2-Tier Cloud Service
Pool
MapCloud Middleware Sequence Diagram
Save User service pattern As location-Time workflow .
Recommended Web Services
with their URL.
User Web ServiceUsage Log with Experienced QoS .
Run MuSIC/Genetic Greedy/RSA or Use previous Result on previous collected data from mobile users to find best service allocation.
It analyzes user experienced QoS and updates cloud registry
User Logs like:Web Service Usage, Experienced QoS like:delay, power consumption
MapCloud Snapshots
41
Experimental and Simulation Results
Mobile Applications (Case Studies)
42
OCR+ Speech(OCRS):
Video Augmented Reality (VAR):You Tube Link
Multimedia File Sharing (MFS):
Mobile Apps
Processing Storage Bandwidth Group-Aware/Sharing
OCRS × ×
VAR × × ×
MFC × × × ×
43
Mobile Applications (Case Studies)
Averaged Delay (in ms) and power consumption (in mjole) of differentwireless network types regarding to data size when using local cloud
( Fig. aand b) and Amazon Public Cloud (Fig. c and d).
Local Cloud
Public Cloud
44
Simulation Setup
Amazon EC2,S3
Local Cloud 1
Local Cloud 5
Local Cloud 2
Local Cloud 7
Local Cloud 4
Local Cloud n
S1...Sn
S1...Sn
S1...Sn
S1...Sn
S1...Sn
large instance:
equivalent to a PC with 7.5GB of memory, 850 GB of storage
Local Cloud: 64bit Windows
dual-core server,with 8GB of
memory and 500GB of
storage.
LAN Speed
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.
45
• Simulation used to evaluate the performance of the proposed algorithms.
• Brute-Force Search was used to find the optimal solution.
• Optimality Metrics:Single User:
Group of Users:MuSIC-
• Genetic (Genetic Algorithm ), RSA (Random Service Allocation) and Greedy approach are also tested on System:
Simulation Setup
46
Simulation Results
MuSIC, Genetic, Greedy, RSA and G-MuSIC (5-Groups) algorithms average throughputwith uncertainty in the range of [0%,30%]
47MuSIC and G-MuSIC algorithm real averaged values for delay and
power consumption
Simulation Results(Cont.)
Simulation Results(Cont.)
• Local Cloud+Public Cloud: • How could we measure the performance of 2-
Tiered Cloud Architecture? • What are the reasonable metrics?
48
Local Cloud+Public Cloud
Public Cloud
Same Delay
Local Cloud+Public Cloud
Public Cloud
Same Price
Local Cloud+Public Cloud
Public Cloud
Same Power
Simulation Results(Cont.)
49
2-Tier Cloud Performance Results: Single User (100 mobile users)
2-Tier Cloud Architecture
Performance
MuSIC [0%-30%]
Uncertainty
Genetic[0%-30%]
Uncertainty
Greedy [0%-30%]
Uncertainty
RSA [0%-30%]
Uncertainty
Constant Delay
Price 27% 17% 18% 10%Power
2% 6% 5% 3%
Constant Power
Price 22% 16% 14% 13%Delay 4% 1% 2% 2%
Constant Price
Power
17% 8% 10% 7%
Delay 15% 13% 12% 10%
Simulation Results(Cont.)
50
2-Tier Cloud Architecture
Performance
G-MuSIC [0%-30%] Uncertain
ty
G-Genetic[0%-30%]Uncertain
ty
G-Greedy [0%-30%] Uncertain
ty
G-RSA [0%-30%]
Uncertainty
Constant Delay
Price 20% 15% 13% 9%Power 3% 4% 4% 2%
Constant Power
Price 15% 10% 11% 10%Delay 4% 4% 2% 3%
Constant Price
Power 10% 9% 10% 8%Delay 10% 11% 8% 8%
2-Tier Cloud Performance Results: Group of Users (5 groups, average group size ~20)
51
Scalability
52
• Motivation: suppose that in average each mobile user need 10 different functionalities.– For each functionality we have 20
different services (provided by different vendors)
– Question 1: what are the different combinations?
• Best Answer (combination) = • Worst Answer (permutation) =
– Question 2: What are the different combinations for 1000,000 mobile users?
• Best Answer = ~3 Tera of Feasible Solutions
53
• Worst Answer=
• So the mentioned service allocation problems could have very large search space.
• Need to make MuSIC scalable.• Two different solutions:
– Making current proposed algorithm parallel.– Making parallel version based on Data Flow
Model for Big data.
~10 Exa of feasible solutions
54
General Approach For Making Parallel Solution
Mobile User Clustering and Grouping :
1. Fixed Grid Clustering2. K-mean Clustering
Mobile User LTW Ordering : 1. Random Ordering
2. Utility Based Ordering3. Optimal Ordering
Running Service/Resource Allocation Algorithms in Parallel
for each Cluster : 1. RSA
2. Greedy3. MuSIC
4. Genetic Algorithm
Assign Public and Local Cloud Resources to each Cluster
55
-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
56
• Single User/ Group of Mobile User :– Based on center of mobility of each mobile user/
Group of Mobile User, cluster mobile users/ Group of Mobile User into K cluster using k-Means [.
– Find the user density in each cluster as / – Find number of local clouds close to the as the
dedicated local cloud (the same for public cloud)
– Go to Round Robin for assigning services to each cluster.
– Run the mention service allocation algorithms for each region in parallel regarding to assigned local and public cloud.
57
Service 1
Service n
Mobile Users
Pig Latin pseudo codes:
/*Load Data*/LOAD mobile users , services….
/*Cartesian product to produce solution space*/CROSS Mobile users, Service1,…
/*Apply Optimization Constraints to solution space */FILTER by Constraints1,…
/*Find Best Solution*/FOREACH Mobile User GENERATE utility value
GROUP Solution By Mobile Users
FOREACH Solution GENERATE MAX
Apply System CONSTRAINTS
Compute UTILITY FUNCTION of each solution
for Mobile Users
GROUP Solutions for each Mobile Users
Find the MAXIMUM UTILITY for each Mobile
Users and emit as the best solution
58
Experimental Results
Constants: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
Variables:processing time per user according to different number of parralell machines.
Cluster Information:Amazon EC2 large Instance, 64-bit linux, ~8Gib Mem, ~800Gib Storage
4 6 8 10 120
200
400
600
800
1000
1200
1400
1600
1800
2000
RSA-ParMuSIC-ParGreedy-ParGA-Par
Number of Parralel Machines (Amazon EC2 Large Instance)
Pro
cess
ing
Tim
e in
Sec
ond
s
59
Experimental Results (Continue)
Constants:10,000 mobile users, uniformly distributed6 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
Variables:processing time per user according to different number of parallel machines.
4 6 8 10 120
50
100
150
200
250
300
350
400
450
500
G-RSA-ParG-MuSIC-ParG-Greedy-ParG-GA-Par
Number of Parralel Machines (Amazon EC2 Large Instance)
Pro
cess
ing
Tim
e in
Sec
ond
s
60
Experimental Results (Continue)
4 6 8 10 120
1000
2000
3000
4000
5000
6000
Pig-Based for Single UserPig-Based for Mobile Groups
Number of Parralel Machines (Amazon EC2 large Instance)
Pro
cess
ing
Tim
e in
Sec
ond
s
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%
61
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.