mobile cloud computing: big picture

Post on 09-May-2015

4.474 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Presented at Computer Science Department, University of California Irvine (Distributed Systems Course).

TRANSCRIPT

Mobile Cloud Computing: Big Picture

M. Reza Rahimi,DONALD BREN SCHOOL OF INFORMATION AND

COMPUTER SCIENCE, Irvine, CA.

2

“You don't generate your own electricity. Why generate your own

computing?” Jeff Bezos, CEO, Amazon

3

Outline

• Cloud Computing: Concepts and Terminologies• What is Cloud Computing?• Essential Characteristics• Service Models• Deployment Models

• Cloud Computing Modeling• Cloud Computing Modeling: Functional View• Cloud Computing Modeling: Qos View

• Mobile Cloud Computing Application: Toward Pervasive Computing• Motivation• Related Works: Cloudlet , MapGrid and Calling the

Cloud• Mobile Cloud Computing Architecture

• Conclusions• References

4

Cloud Computing: Concepts and Terminologies

5

What is Cloud Computing?

• Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) [Mell_2009], [Berkely_2009].

• It can be rapidly provisioned and released with minimal management effort.

• It provides high level abstraction of computation and storage model.

• It has some essential characteristics, service models, and deployment models.

6

Essential Characteristics

• On-Demand Self Service: • A consumer can unilaterally provision computing

capabilities, automatically without requiring human interaction with each service’s provider.

• Heterogeneous Access: • Capabilities are available over the network and

accessed through standard mechanisms that promote use by heterogeneous thin or thick client platforms.

7

• Resource Pooling: • The provider’s computing resources are pooled to

serve multiple consumers using a multi-tenant model.

• Different physical and virtual resources dynamically assigned and reassigned according to consumer demand.

• Measured Service: • Cloud systems automatically control and optimize

resources used by leveraging a metering capability at some level of abstraction appropriate to the type of service.

• It will provide analyzable and predictable computing platform.

Essential Characteristics (cont.)

8

Service Models

• Cloud Software as a Service (SaaS): • The capability provided to the consumer is to use the

provider’s applications running on a cloud infrastructure.

• The applications are accessible from various client devices such as a web browser (e.g., web-based email).

• The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems, storage,…

• Examples: Caspio, Google Apps, Salesforce, Nivio, Learn.com.

9

• Cloud Platform as a Service (PaaS): • The capability provided to the consumer is to

deploy onto the cloud infrastructure consumer-created or acquired applications created using programming languages and tools supported by the provider.

• The consumer does not manage or control the underlying cloud infrastructure.

• Consumer has control over the deployed applications and possibly application hosting environment configurations.

• Examples: Windows Azure, Google App.

Service Models (cont.)

10

• Cloud Infrastructure as a Service (IaaS): • The capability provided to the consumer is to

provision processing, storage, networks, and other fundamental computing resources.

• The consumer is able to deploy and run arbitrary software, which can include operating systems and applications.

• The consumer does not manage or control the underlying cloud infrastructure but has control over operating systems, storage, deployed applications, and possibly limited control of select networking components (e.g., host firewalls).

• Examples: Amazon EC2, GoGrid, iland, Rackspace Cloud Servers, ReliaCloud.

Service Models (cont.)

11

Service Model at a glance: Picture From http://en.wikipedia.org/wiki/File:Cloud_Computing_Stack.svg

Service Models (cont.)

12

Deployment Models

• Private Cloud: • The cloud is operated solely for an organization. It

may be managed by the organization or a third party and may exist on premise or off premise.

• Community Cloud: • The cloud infrastructure is shared by several

organizations and supports a specific community that has shared concerns.

• It may be managed by the organizations or a third party and may exist on premise or off premise.

13

• Public Cloud: • The cloud infrastructure is made available to the

general public or a large industry group and it is owned by an organization selling cloud services.

• Hybrid cloud: • The cloud infrastructure is a composition of two or

more clouds (private, community, or public).

Deployment Models (cont.)

14

Service Model at a glance: Picture From http://en.wikipedia.org/wiki/File:Cloud_computing_types.svg

Deployment Models (cont.)

15

Cloud Computing Modeling

16

Cloud Computing Modeling: Functional View

• Two categories could be considered: Functional Modeling and Non-Function Model (Qos Model ).

• Functional Model:• Cloud Pool is the set of different clouds or :

• Service Pool is the set of all supporting services in the system or:

• Cloud-Service Matching Graph is the bipartite graph which matches the clouds to their related services.

},...,,{ ||21 poolCpool cccC

},...,,{ ||21 poolSpool sssS

17

c1

c2

c3

c4

cn

s1

s2

s3

s4

sn

cloud-service matching graph

Cloud Computing Modeling: Functional View (cont.)

18

• Workflow, Plan or Application is a Directed Acyclic Graph (DAG) with the following properties and semantics [Zeng_2003], [Chen_2003], [Ko_2008]:

• Node Semantic:• It has only one node which is called Start Node.• It has only one node which is called End Node.• Except for start and end nodes, each node is

annotated with an object from service pool.• Edge Semantic:

• If a node has only one outgoing edge to the other node then it is called sequential edge (Sequential Semantic). si sj sk

Sequential edges

Cloud Computing Modeling: Functional View (cont.)

19

• If a node has more than one outgoing edges to the other nodes then it is called concurrent edges (Fork Concept or AND-Parallel):

• If a node has two outgoing edges with weight then it is called conditional edges (or XOR-Parallel).

si sj sk

sl

sm

Concurrent edges Sequential edges

p1

p2

si sj sk

slConditional edges Sequential edges

p1+p2=1; 0<p1,p2<1

Cloud Computing Modeling: Functional View (cont.)

20

• The loop node is considered as:

• It could be easily converted to sequence edges with the upper bound loop limit.

• The loop in this graph could be avoided as:

sj

While/Loop

sj

While/Loop

sj sj sj sjLoop Bound=4

sj si sjsj si

Cloud Computing Modeling: Functional View (cont.)

21

• Critical Service: The services in the plan with the highest number of inputs and outputs edges.

Cloud Computing Modeling: Functional View (cont.)

22

Cloud Computing Modeling: Qos View

• The cloud quality of service is defined as:

• Some important Single Cloud Qos are:

),...,,(: 21 npoolpool qqqSCQos

.or level service define also could we serviceFor

. cloudon

of received are results theandsent isrequest awhen

moment ebetween th secondsin Delay ),(

. cloudon service using of Price),(

Leveljj

ij

jiduration

ijjiprice

ss

cs

scq

csscq

23

),,,,,(:

[0,5]Amazon like

service theofRank Social ),(

time.specific within accessible is

service y that teprobabilit The ),(

recieve. could on

that clients of maximum The),(

time.specific

whithin answeredcorrectly is

request y that theprobabilit The ),(

reputationtyavailabiliCapacityyreliabilitdurationpricepoolpool

jireputation

jityavailabili

i

jjiCapacity

jiyreliabilit

qqqqqqSCQos

scq

scq

c

sscq

scq

Cloud Computing Modeling: Qos View (cont.)

24

Job Qos (end-to-end Qos)

• The Qos is also defined for work flow.

job. executablein

services all of reputation avaerage The)(

1. else 0 services

critical-nonfor )(

1. else 0 services

critical-nonfor )(

job. executablein path longest The)(

job. executablein prices theof Sum)(

1

),(

1

),(

wf

z

ewf

z

ewf

wf

wf

Qos

Qos

Qos

Qos

Qos

reputation

i

N

i

zscq

tyavailabili

i

N

i

zscq

yreliabilit

duration

price

ijityavailabili

ijiyreliabilit

25

• The typical optimization problem that happens in this area is to find appropriate cloud compositions that satisfied the required constraints and maximize or minimizes the utility function.

• The following is the general architecture for cloud computing system.

Task Query+ Desired Qos

Task Query to Job (DAG)

Cloud Composition to Satisfy Qos Model

26

spaces. service and cloudsover isselection The

5

11

)(

)(

)(

)(

)(

:Subject to

max)

)(

)((5)

)(

)((4

))(

)((3)

)((2)

)((1

i iw

reputationcwfQosreputation

tyavailabilicwfQos tyavailabili

yreliabilitcwfQos yreliabilit

durationcwfQosduration

pricecwfQos price

wfQosreputation

reputationcwfQosreputationw

wfQos tyavailabili

tyavailabilicwfQos tyavailabiliw

wfQos yreliabilit

yreliabilitcwfQos yreliabilitw

durationc

wfQosdurationc durationwpricec

wfQospricecprice

w

one possibleoptimization problem

when the target function is linear.

27

Mobile Cloud Computing: Toward Pervasive

Computing

28

“The most profound technologies are those that

disappear. They weave themselves into the fabric of every day life until they are indistinguishable from it.”

“Mark Weiser”, Xerox Scientist

29

Motivation

• Pervasive computing names the third wave in computing, just now beginning.

• First were mainframes, each shared by lots of people.

• Now we are in the personal computing era, person and machine staring uneasily at each other across the desktop.

• Next comes Pervasive computing, or the age of calm technology, when technology recedes into the background of our lives.

• Alan Kay of Apple calls this "Third Paradigm" computing.

Evolution of Computing Environment: [Satyanarayanan_2001] :

Toward Pervasive Computing environment30

Cloud Computing

Promises

Motivation (cont.)

31

• Mobile Cloud computing technology promises the realization of pervasive computing era.

• Many different application could be considered in this area, such as M-Commerce, M-learning, M-entertainment.

• In this work we consider the M-Multimedia application in mobile computing environment.

• It is called multimedia streaming in mobile computing area.

Motivation (cont.)

32

33

• In the next section we are trying to review some important works done related to mobile cloud computing.

• Based on the previous work we are going to propose an architecture for mobile cloud computing for multimedia streaming application.

Motivation (cont.)

34

Related Works: Cloudlet MapGrid

and Calling the Clouds

35

Cloudlet

• It has been shown that one hop connection from mobile device to internet is not efficient.

• Human are sensitive to the current delay in clouds.

• It seems that latency is unlikely to be improved.

• Considering different layer for software such as security and firewall it is unlikely that latency improves (although increase in bandwidth).

• This motivate us to use cloudlet between mobile devices and cloud pools (Infrastructure).

• A cloudlet (I refer it as the micro edition of cloud)only contains soft states such as cache copies of data or code.

36

Cloudlets are as the infrastructure for mobile cloud computing. From: [Satyanarayanan_2009]

The prototype based on this systems is implemented in CMU and called Kimberley [Satyanarayanan_2009] .

Cloudlet (cont.)

37

MapGrid (Mobile Application on Grid)

• Base on the work [Huang_2002] , [Huang_2005] , [Huang_2007] which is middleware approach.

• It uses Grid as the cache proxy for mobile applications.

• Resources on grid (storage and computation) are intermittently available.

• MapGrid uses the interval tree data structure for storing the information about available resources on grid.

• Mobility pattern has been used to optimal data replication policy in MapGrid.

• The proposed middleware does:1. Execute load-base adaptive Grid source

selection.2. Satisfy User Qos.3. Bound the number of grid source switches.

38

Mobile Client

Broker

Mobile ClientMonitoring

Directory Service

Request Scheduler

Resource Reservation

Placement Management

Tertiary Storage

Volunteer Servers(Grids)

Grid Monitoring

MapGrid Middleware Service Architecture

Req

Info

Moving_Profile

Req Req*

Req#

Req@

Data

1. Resource Discovery2. Schedule Planning

Reports changes in grid resources

Admission Control

Contains information about available resources on Grid

and Clients

Replace the data to grid resources

Mobility Pattern detection

39

MapGrid Definitions and Notations

• Request: R(VID, itinerary) where VID is the video and itinerary is mobility information.

• Grid Loading Factor:

• Grid Factor:

10 j. gridon resource available to

resource requested of ratio theis X where

},,,max{),(

a

j

aaaaj

LF

DBWNBWMEMCPUtRLF

),(),(

),(),(

RjDisttRLF

tjtyAvailabilitRGf

jj

If grid j is available at time t equal 1 else 0.

Distance of grid J from request R.

40

• Segment size: Sd the unit size of data.• The MapGrid algorithm has the following tree

steps:• PartitionServicePeriod():

• partition the request according to the segment size or other fast startup policies (to start the service as fast as possible).

• VolunteerGridAllocation():• Maps chunks to the specific grid according to

LF and proximity. The biggest Grid factor could be selected. The start point could be used to initialized the algorithm.

• MobilityBasedRescheduling():• Keep track of the mobility pattern and if

needed reschedule.

MapGrid Definitions and Notations (cont.)

41

MapGrid Optimization• With the knowledge of the mobility pattern,

we could optimize the first two function, service period and grid resource allocation.

• Service Period Optimization:• Policy 1: MajoritySpreadOver attempts to

minimize number of Grid switches. • Assign the chunks of data according to the duration

that mobile client spends in each cell.• Weakness: Delay in startup.

• Policy 2: DistancePartition partition the service time according to distance traversal. Long distance long chunk of data.

)],(),...,,[( 11 nn CellTimeCellTimeitinenary

42

• Volunteer Service Optimization:• With knowing the mobility pattern and the

time duration that mobile client spend in each cell our task is to find grid resources to maximize the following utility function.

location. grid theis y)(x, andcenter cell is

)b,(a .cellin spendsclient mobile

the timeofduration theis where

)()(),(

iii

22

1

i

ii

n

ii

D

byaxDyxf

MapGrid Optimization (cont.)

43

Calling The Cloud

• It is based on the optimal task migration between server and mobile client [Giurgiu_2009].

• They have used OSGi (Open Services Gateway Initiative) and AlferedO platform (component based architecture) for prototype implementation.

• The key Idea is to make an application graph and try to make a cut (some tasks will be done on server side and remaining will be done on mobile side) to meet the required optimization issues.

• The following figure shows the main idea.

44

S1 S2 S3

S4

S5S7

S6

S8

S1 S2 S3

S4

S5S7

S6

S8

Mobile CutMobile Cut

S1 S2 S3

S4

S5S7

S6

S8

Original Plan

45

“You usually use your cell phone for communication service. Why not getting computation service?” 

Reza, UCI Student

46

• Lesson that we have learned:• For pervasive environment location-based services

considered as the important element in design.• So we should consider the location of cloud as an

important optimization factor which is lead to cloudlet as mentioned before.

• This suggests 3-tier architecture.• Cloudlet has minimum capability, usually storage and

limited processing (for example Multimedia Streaming).

• The following figure shows this architecture.

47

Cloud Pool(Amazon, Google, Microsoft,….)

Cloudlet or Wireless Cloud

Cloudlet or Wireless Cloud

Cloudlet or Wireless Cloud

48

Location-Base Service Composition

• For mobile computing application we could define the Time Location Workflow.

• It is the same as general work-flow with additional information about the location of the service.

• Based on different criteria we could optimize the solution for different mobile and movment pattern.

S1|L0|T6 S2|L1|T7 S3|L2|T1

S4|L3|T5

S5|L4|T4S7|L1|T2

S6|L0|T0

S8|L0|T3

Time_LocationWorkflow

49

Mobile Cloud Computing Applications (cont.)

• We are thinking about the middleware approach as the solution for achieving Qos.

• Before going ahead let’s see what sort of atomic and implementable elements and technology we have in the cloud pool.

• Web Service: Application Programming Interfaces (API) or web APIs that can be accessed over a network and executed on a remote system hosting the requested services. It has 3 important protocols:1. WSDL (Web Service Description Language): XML-based

interface for definig Web Service functionality.2. SOAP (Simple Object Access Protocol): Protocol for

exchanging structured information in the implementation of web services.

3. UDDI (Universal Description Discovery and Integration): For publishing and registering web services in the internet.

50

• UDDI has tree parts:• White Pages: Address, contact, and known

identifiers;• Yellow Pages: Industrial categorizations based on

standard taxonomies;• Green Pages: Technical information about services

exposed by the business.• Some people are thinking about the Blue

Pages which described the quality of services.• IBM [IBM], also introduced WSLA (Web

Service Language Agreement) where obligation factors related to Qos between service provider and client are specified.

Mobile Cloud Computing Applications (cont.)

51

UDDI Registry Important API

• [Alonso_2004] UDDI Inquiry API: find_business(), find_service(), find_tmodel() get_businessDetail(), get_serviceDetail(),

get_tmodelDetail().• [Alonso_2004] UDDI Publishers API:

save_business(), save_service(), save_tmodel() delete_business(), delete_service(),

delete_tmodel().• [Alonso_2004] UDDI Security API:

get_authToken(), discard_authToken().

Mobile Client Middleware(Broker) Cloudlet and Cloud Pool

Cloud Service Registry and Discovery

AdmissionControl

Mobile Profile Monitoring

Qos Monitoring , Service Discovery

Scheduler

Mobile Client

Cloudlet Pools

Mobile Profile Analyzer

Qos Analyzer

Cloud Pools

Qos Monitoring

53

Functionalities Middleware Blocks

Accepts or rejects mobile client requests according to the resources available and mobile profile (it could be power-aware, resource –aware and…. Policies, Maybe Game Theory could be used for optimal admission policy).

Admission Control

Monitors mobile profile. Mobile Profile Monitoring

Analyzes mobile profile specially power level, location pattern,… for optimal scheduling.

Mobile Profile Analyzer

It schedules the accepted requests and design a plan according to the negotiations done with Cloudlets (Schedule Queue).

Scheduler

It discovers cloudlets (maybe based on ontology and semantics) in the area (like UDDI), its Qos during service from mobile client. It also registers its services and middleware business on UDDI for accessing mobile clients.

Qos Monitoring, Service Discovery (Cloud and Cloudlets)

It is analyzing the Cloudlets services and make a list of suitable cloudlets and policy of admission.

Qos Analyzer

Functionalities Mobile Client Block

Reports the Middleware about the Qos of the cloudlets.

Qos Monitoring

54

Sample Prototype

• Simple barcode reader service has been implemented.

• In this scenario the user takes a picture of the barcode for getting some information about the object, for example the cheapest price location.

• The picture is send to cloudlet for processing.• The cloudlet extract the information and

query Amazon or other clouds for the price.• The price will be return back to user.• The next picture shows the scenario sequence

diagram [Rahimi_2008].

55

CloudCloudlet

56

Cloud(Amazon)

Cloudlet

Cloud(Yahoo)

Yahoo Cloud (Flicker) as a Cache.

58

Class Diagrams:

Mobile Client

59

60

61

62

63

Class Diagrams: Cloudlet

64

65

66

67

Conclusions and Research Direction

• We talked about the new era in Information Technology which is know as cloud computing.

• Several different aspects of this area have been reviewed and discussed.

• The deployment of cloud computing in mobile environment were discussed.

• This middleware could be implemented as the Local web services (as in barcode reader example).

• Good simulation environment should be considered in this area (Currently I am working on OMNet++ to develop for service composition in mobile environment)

68

References1. [Alonso_2004] G. Alonso, F. Casati, H. Kuno, V. Machiraju “Web

Services, Concepts, Architectures and Applications” , Springer 2004.

2. [Berkely_2009] “Above the Clouds: A Berkeley View of Cloud Computing”, Tech. Report 2009.

3. [Chen_2003] H. Chen, T. Yu and K. Lin. “QCWS: An Implementation of QoS-Capable Multimedia Web Services”, In Proc. of IEEE 5 th Symposium on Multimedia Software Engineering (MSE03), Taiwan, Dec 2003

4. [Giurgiu_2009] Giurgiu, I., Riva, O., Juric, D., Krivulev, I., and Alonso, G ” Calling the Cloud: Enabling Mobile Phones as Interfaces to Cloud Applications” In Proceedings of the 10th ACM/IFIP/USENIX international Conference on Middleware (Urbana, Illinois, November 30 - December 04, 2009).

5. [Huang_2007] Huang, Y. and Venkatasubramanian, N. “ Supporting Mobile Multimedia Applications in MAP Grid ” In Proceedings of the 2007 international Conference on Wireless Communications and Mobile Computing (Honolulu, Hawaii, USA, August 12 - 16, 2007).

69

6. [Huang_2005] Huang, Y., Mohapatra, S., and Venkatasubramanian, N ”An Energy-Efficient Middleware for Supporting Multimedia Services in Mobile Grid Environments” In Proceedings of the international Conference on information Technology: Coding and Computing (Itcc'05) - Volume II - Volume 02 (April 04 - 06, 2005).

7. [Huang_2002] Y. Huang, N. Venkatasubramanian, "QoS-Based Resource Discovery in Intermittently Available Environments," pp.50, 11th IEEE International Symposium on High Performance Distributed Computing , 2002.

8. [IBM], "WSLA Web Service Level Agreement“ http://www.research.ibm.com/wsla/

9. [Ko_2008] Ko, J. M., Kim, C. O., and Kwon, “Quality-of-Service Oriented Web Service Composition Algorithm and Planning Architecture”. J. Syst. Softw (Nov. 2008).

10. [Mell_2009] P. Mell, T. Grance, "The NIST Definition of Cloud Computing", Version .15, Oct 2009.

References (cont.)

70

11.[Mabrouk_2009]N. Mabrouk, S. Beauche, E. Kuznetsova, N. Georgantas, and Issarny “ QoS-Aware Service Composition in Dynamic Service Oriented Environments ” In Proceedings of the 10th ACM/IFIP/USENIX International Conference on Middleware (Middleware '09).

12.[Rahimi_2008] M. R. Rahimi, J. Hengmeechai, N. Sarshar “Ubiquitous Application of Mobile Phones for Getting Information from Barcode Picture”, in the iCORE2008, Edmonton, Canada.

13.[Satyanarayanan_2001] Satyanarayanan, M. "Pervasive Computing: Vision and Challenges“ IEEE Personal Communications, August 2001.

14.[Satyanarayanan_2009] Satyanarayanan, M., Bahl, P., Caceres, R., and Davies, N. 2009. “The Case for VM-Based Cloudlets in Mobile Computing” IEEE Pervasive Computing 8, 4 (Oct. 2009), p. 14-23.

15.[Zeng_2003] Zeng, L., Benatallah, B., Dumas, M., Kalagnanam, J., and Sheng, Q. Z. 2003. “Quality Driven Web Services Composition”. In Proceedings of the 12th international Conference on World Wide Web (Budapest, Hungary, May 20 - 24, 2003).

References (cont.)

top related