Sie sind auf Seite 1von 52

Mobile Enterprise & Cloud Computing

Mobile Enterprise & Cloud Computing


Dr. Satish Srirama
16th September 2009

Satish Srirama

1/51

Mobile Enterprise & Cloud Computing

Tartu

Aachen

Satish Srirama

Visakhapatnam

2/51

Outline
l
Mobile Enterprise & Cloud Computing

Background Mobile Hosts in Enterprise Service Integration


Mobile Host Mobile Host: Quality of Service (QoS) extensions Mobile Host in Peer to Peer (P2P) networks Mobile Web Services Mediation Framework Applications of Mobile Host

Satish Srirama

l l
3/51

Cloud Computing Research Directions

Mobile Hosts in Enterprise Service Integration (MHESI) - Motivation


l
Mobile Enterprise & Cloud Computing

Web services (WS)


Enable enterprise integration

UDDI Registry

Refer

WSDL

Describe Find Publish

Developments in wireless domain


Device capabilities Transmission capabilities

Service

Service Requester

SOAP

Service Provider

Satish Srirama

Mobile web services (MWS) [LA, OMA]


Weather, search, maps etc.

4/51

UDDI - Universal Description, Discovery and Integration WSDL - Web Services Description Language

Mobile web service provisioning


l
Mobile Enterprise & Cloud Computing

Remote patient tele-monitoring

WS

Satish Srirama

Distress call
Location information service Mobile picture service

5/51

Mobile web service provisioning continued


l
Mobile Enterprise & Cloud Computing

Service provisioning is necessary!!! But why web services?


Loose coupling Interoperable integration Mobile Hosts enable seamless integration of user specific services

Mobile services can be integrated with larger enterprise services


Services based on user profile & context Ex: Maps specific to user network

Satish Srirama

Multiple Mobile Hosts collaborate bringing value to enterprise


Collaborative journalism

6/51

Mobile Host
Challenges
Mobile Enterprise & Cloud Computing

[Srirama, 2004]

Full compatibility with usual web service interfaces Low resource considerations Mobile phones general purpose is not seriously effected

Implementation details
Implemented in PersonalJava Uses kSOAP2 SOAP over HTTP [JSR 172] Upgraded to J2ME

Satish Srirama

7/51

Mobile Host Performance


Mobile Enterprise & Cloud Computing

Acceptable performance levels for service delivery The WS processing time at the Mobile Host (< 10%) Directly proportional to achievable transmission rates High data transmission rates with 3G & 4G
Mobile web service invocation: Timestamps
6000 5300 5000 4456 4000 Duration in MS

Satish Srirama

3000

2000

1000 344 0 T_mwsp T_trans T_sd T_process T_ss 297 203

8/51

Mobile Enterprise Enterprise Service Integration


How can I collaborate? Mobile Enterprise & Cloud Computing Am I energy efficient !!! Am I protected from malicious attacks ?
WS

WS

WS

Where can I publish ?

Satish Srirama

What are the Application domains ?

Mobile Enterprise
WS

So many services !!! How can I find most relevant one?

WS

How many clients can I satisfy?

Do centralized nodes withstand such load ? Which services are expected from me ?

Do I have such infrastructure that is scalable? Can I have a bird view ?

$
Mobile operator

9/51

Mobile Host: QoS extensions Security issues


Mobile Enterprise & Cloud Computing

Can traditional security standards be adapted for mobile web services?

Scalability issues
How to improve the number of concurrent clients that the Mobile Host can support?

Satish Srirama

10/51

QoS extensions Security issues Security breaches


Mobile Enterprise & Cloud Computing

WS Requestors

Communication Network

WS Providers
Disclosure of Configuration Data

Spoofing Network Eavesdropping Tampering

Internet
Satish Srirama

Unauthorized Access Replay Attacks


GPRS GPRS WS

Mobile

Mobile

Operator

Operator DDOS Attacks

11/51

Security specifications End-to-end security


Mobile Enterprise & Cloud Computing

Secure Sockets Layer (SSL)

Security Standards for WS


XML Encryption [W3C] XML Signature [W3C] WSSE (WS-Security Standard) [OASIS] SAML (Security Assertion Markup Language) [OASIS]

Satish Srirama

Can we adapt WSSE for mobile web services?


Added performance overhead to the invocation cycle Increase in transportation delays with added size
12/51

Security realizations
Mobile Enterprise & Cloud Computing

Service-level authentication User-intervened authorization Message-level security


Bouncy Castle Lightweight cryptographic API WS Handler Upgraded KSoap2 MIDP2.0 (Mobile Information Device Profile) Strategy
Symmetric key encryption of message Asymmetric key exchange of key Signing the message
MPS

KSOAP
KXML

SOAP Processor

Security Handler

LWC API

Satish Srirama

Service Handler

WS

GPS

API - Application Programming Interface


13/51

Security results
Mobile Enterprise & Cloud Computing

WS-Security can be adapted for reasonable MWS message of 2-5 kb Best scenario (Highly secured and better performance)
AES-256 Symmetric key encryption RSA 1024 bit key exchange RSAwithSHA1 signature

Hardware support recommended


Can consume less power Examples:
Smart Card Processors [UMIC] ARM TrustZone technology Discretix CryptoCell technology

Satish Srirama

AES - Advanced Encryption Standard 14/51 IDEA - International Data Encryption Algorithm

DES - Data Encryption Standard DSA - Digital Signature Algorithm

Application level security


Ensuring end-point security
Mobile Enterprise & Cloud Computing

Achieving single sign-on (SSO) Liberty Alliance ID-FF protocols


Identity provider Third party identity validator

SourceID Liberty 2.0 Beta

Semantics-Based Access Control [Naumenko, 2007]


Satish Srirama

SBAC encompasses administration and enforcement of access control policies for semantic web services OWL (Web Ontology Language) ontologies for resources, operations, privilege, prohibitions etc. Prototyped using Jena

15/51

QoS extensions Scalability issues


Mobile Enterprise & Cloud Computing

Original Mobile Host was successful in handling 8 concurrent requests Scalability is inversely proportional to transmission delays Scalability can be improved by
Achieving higher data transmission rates Achieving less data to transmit
Improves battery life as transmission is major energy consumer [Raghunathan et
al., 2002]

Satish Srirama

Minimal encoding is not always the best option


Compression gain vs added performance latency

XML Compression
XMill [Liefke and Suciu, 1999] Fast Infoset [Sandoz et al., 2004] Efficient XML [AgileDelta]
16/51

Scalability analysis
BinXML [Ericsson and Levenshteyn, 2003]
Mobile Enterprise & Cloud Computing

XML tags replaced by Unique byte value 6 reserved bytes (0x00-0x03, 0xFE, 0xFF) Effective for SOAP messages

Analysis
BinXML enabled MH MIME media type application/soap+binxml Expert rating service ~ 15% gain
10000 9000 8000 Time in Milliseconds 7000 6000 5000 4000 3000 2000 1000 0

Comparision of mobile web service invocation times with and without BinXML compression
9297 8606 7964 6519 WithoutBinxml WithBinxml

Satish Srirama

1205 691 0 Total time at client 240 Transmission time

MWS compression gain:

Server Client processing time processing time

Tmwscg = Treqt + Trest Treqenc Treqdec Tresenc Tresdec


17/51

MIME - Multipurpose Internet Mail Extensions

Mobile Enterprise Discovery issues


How can I collaborate? Mobile Enterprise & Cloud Computing Am I energy efficient !!! Am I protected from malicious attacks ?
WS WS WS

Where can I publish ?

Satish Srirama

What are the Application domains ?

Mobile Enterprise
WS

So many services !!! How can I find most relevant one?

WS

How many clients can I satisfy?

Do centralized nodes withstand such load ? Which services are expected from me ?

Do I have such infrastructure that is scalable? Can I have a bird view ?

$
Mobile operator

18/51

Mobile Host in P2P networks Mobile web service provisioning in P2P networks
Mobile Enterprise & Cloud Computing

Variety of applications in domains like entertainment systems, ubiquitous computing etc.

Advantages for mobiles


Efficient use of resources Distribute responsibilities Save processing power
Gnutella Pure P2P Degree of decentralization Freenet Groove Bit Torrent Superpeer Kazaa Skype Jabber Magi Napster Client/Server SETI@Home Avaki JXTA

Satish Srirama

19/51

File Sharing

Collaborative/ Communication

Distributed Computing

Platforms

Mobile Host in JXTA network


Mobile Enterprise & Cloud Computing
JXTA Network JXTA Rendezvous peer Mobile Operator Network

JXTA Super peer (Relay & Rendezvous) BTS1

BTS2
WS

BTS3

WS

JXME edge peer

JXME edge peer Virtual P2P Network JXTA Relay peer JXME edge peer

Satish Srirama

WS

JXTA Rendezvous peer

JXME edge peer

Technical advantages to Mobile Host


Eliminating the need for Public IP Better identification/access mechanisms (Peer ID)
Web service invocation in JXTA [Hajamohideen, 2003; JXTA-SOAP] Port forwarding model
20/51

Better service discovery

Mobile web service discovery issues


Mobile Enterprise & Cloud Computing

Huge number of services are possible with Mobile Hosts Centralized UDDI not the best solution
Problems with bottlenecks

Mobile nodes are dynamic


Services are to be published again and again Problems with stale advertisements

Satish Srirama

21/51

VISR - View based Integration of Web Service Registries

Mobile web services discovery


Publishing mobile web services in JXTA / JXME (JXTA for J2ME)
Mobile Enterprise & Cloud Computing

JXTA Modules [Elenius, 2003] Life time of advertisements


<jxta:MSA> <MSID> . . . </MSID> ... <Parm> <WSDL> ... <WSDL> </Parm> ... </jxta:MSA>
Module class
Advertise the existence of a service

UDDI Registry

Module Specification
Advertise how to access a Service (API, messages)

Service Interface Service Implementation

WSDL

Satish Srirama

Module Implementation
Advertise a platform specific implementation

MCAs (Module Class Advertisement) specify the existence of MWS MSAs (Module Specification Advertisement) advertise mobile web services Discovery of MSAs with name & description
Works, but not very precise

Adapted UDDI categorization


22/51

Scalability evaluation of MWS discovery


Mobile Enterprise & Cloud Computing

JXTA Benchmarking project [java.net] Scalability test topologies MSAs are published into the group categorization hierarchy Scalability evaluation results
41% less latency achieved with categorization Discovery time grows linearly Observations with different test topologies shows mobile web service discovery with categorization is scalable

Satish Srirama

23/51

RDV Rendezvous peer

Mobile Enterprise Integration issues


How can I collaborate? Mobile Enterprise & Cloud Computing Am I energy efficient !!! Am I protected from malicious attacks ?
WS WS WS

Where can I publish ?

Satish Srirama

What are the Application domains ?

Mobile Enterprise
WS

So many services !!! How can I find most relevant one?

WS

How many clients can I satisfy?

Do centralized nodes withstand such load ? Which services are expected from me ?

Do I have such infrastructure that is scalable? Can I have a bird view ?

$
Mobile operator

24/51

Mobile Web Services Mediation Framework (MWSMF)


Mobile Enterprise & Cloud Computing

QoS analysis identified the need for intermediary node Similarly MWS discovery needs super peers How to integrate mobile web services and P2P domains taking care of QoS?
BTS2 BTS3

MWSMF
WS Client
BTS JXTA Super peer

UDDI
QoS Provisioning

Internet

Satish Srirama

Virtual P2P Network


JXME edge peer JXTA Relay peer JXME edge peer JXME edge peer JXME edge peer

JXTA Rende-

JXTA zvous peer Network


JXTA Rendezvous peer

JXME edge peer

JXME edge peer

WS Accessible to IP network

25/51

MWSMF design Enterprise Service Bus (ESB)


Mobile Enterprise & Cloud Computing

Enterprise Service Bus provides a set of infrastructure capabilities, implemented by middleware technology, that enable the integration of services in an SOA [Keen et al., 2004] QoS provisioning features include message persistence, guaranteed delivery, failure handling

Satish Srirama

Java Business Integration (JBI) [JSR 208]


A platform for building enterprise class ESB using a pluggable and service based design

ServiceMix
Open source ESB tool based on JBI
26/51

JBI basics
JBI framework supports two types of components
Mobile Enterprise & Cloud Computing

Service engine Binding component

Normalized messages
XML payload Conformance with WSDL

Satish Srirama

Normalized Message Router Message exchange patterns


In-Only Robust-In-Only In-Out In-Optional-Out

Endpoint
27/51

Service endpoint (Service QName + endpoint name)

MWSMF - Components
MWSMF
Mobile Enterprise & Cloud Computing
HttpReceiver
WS Client

Internet

Broker

N o r m a li z e d M e s s a g e R o u t e r

HttpInvoker

ContentBased Router
Mobile Host
WS

Satish Srirama

Binary Transformer XSLT Transformer

QoS Verifier

SAAJBinding

P2PMapper

Context Engine

28/51

Message flows in MWSMF Mobile web service message optimization scenario


Mobile Enterprise & Cloud Computing

Improving scalability of the Mobile Host

JBI Container MWSMF


3 4 9 10 8

Broker

Binary Transformer

Satish Srirama

Supplementary features of MWSMF


Hosts a UDDI registry Supports automatic startup of Mobile Hosts
PushRegistry of WMA (Wireless messaging API)

N M R
5

HttpReceiver

11

HttpInvoker

12

Internet

Mobile Host
WS

29/51

Performance evaluation of MWSMF


Mobile web service message optimization scenario
Expert rating service
Mobile Enterprise & Cloud Computing

ApacheBench load generator [WSO2] Established on a laptop Successful in handling 110 concurrent requests Mean value of handling a client ~ 130 ms Evaluation proved that MWSMF can handle large number of concurrent clients

Time-Diagram

TPS-Diagram
16 Transactions per second (TPS) 14 12 10 8 6 4 2 0
11 0 16 0

Satish Srirama
Time to handle single client (ms)

35,000.00 30,000.00 25,000.00 20,000.00 Time 15,000.00 10,000.00 5,000.00 0.00

TPS

20 0

11 0

13 0

16 0

24 0

28 0

50

70

10

30

90

No of concurrent requests

No of concurrent requests

30/51

28 0

13 0

20 0

24 0

10

30

50

70

90

Mobile Enterprise Applications


How can I collaborate? Mobile Enterprise & Cloud Computing Am I energy efficient !!! Am I protected from malicious attacks ?
WS WS WS

Where can I publish ?

Satish Srirama

What are the Application domains ?

Mobile Enterprise
WS

So many services !!! How can I find most relevant one?

WS

How many clients can I satisfy?

Do centralized nodes withstand such load ? Which services are expected from me ?

Do I have such infrastructure that is scalable? Can I have a bird view ?

$
Mobile operator

31/51

Applications of Mobile Host Monitoring power networks


Mobile Enterprise & Cloud Computing

Field maintenance crews collect information Operators and experts can prescribe suggestions and changes

Avoid polling
Satish Srirama

WS GPRS Mobile Infrastructure Journalist 1 GPRS GPRS WS Internet GPRS

WS

Ex: Checking for updates of RSS feeds

Journalist 2

Communities of practice
Collaborative journalism MobileHost CoLearn system
Collaborative M-Learning
32/51

WS

Journalist 4

Journalist 3

Editor

RSS - Really Simple Syndication

MobileHost CoLearn system Features & modules hierarchy


Mobile Enterprise & Cloud Computing

[Ivanova, 2007]
Satish Srirama

Usability analysis is conducted Software Usability Measurement Inventory (SUMI) [UCC, 2007] System Usability Scale (SUS) [Brooke,
2007]

33/51

Summary of MHESI results


QoS aspects
Mobile Enterprise & Cloud Computing

[IJWET, 2009]

MWS security can be provided with modest performance penalties Identified best scenario for securing MWS Scalability is critical for Mobile Hosts performance Adapted BinXML for MWS to improve battery life

Scope of Mobile Host in P2P networks


Discovery of mobile web services Alternative addressing and invocation mechanisms for MWS are identified
Satish Srirama

Architecture, features and realization details of MWSMF are identified


Evaluation proved MWSMF can handle large number of concurrent clients Deployment scenario is feasible

Validation
Detailed usability analysis of MobileHost CoLearn system proves the adaptability of Mobile Host by different communities
34/51

Outline
Mobile Enterprise & Cloud Computing

Background Mobile Hosts in Enterprise Service Integration


Mobile Host Mobile Host: Quality of Service (QoS) extensions Mobile Host in Peer to Peer (P2P) networks Mobile Web Services Mediation Framework Applications of Mobile Host

Satish Srirama

Cloud Computing Research Directions


35/51

What is Cloud Computing? Computing as a utility


Mobile Enterprise & Cloud Computing

Utility services e.g. water, electricity, gas etc Consumers pay based on their usage

Satish Srirama

Gartner: Cloud computing is a style of computing where massively scalable IT-related capabilities are provided as a service across the Internet to multiple external customers

36/51

Cloud Computing - Services


Software as a Service SaaS
Mobile Enterprise & Cloud Computing

A way to access applications hosted on the web through your web browser

Level of Abstraction

SaaS
Facebook, Flikr, Myspace.com, Google maps API, Gmail

Platform as a Service PaaS


A pay-as-you-go model for IT resources accessed over the Internet

Infrastructure as a Service IaaS


Satish Srirama

PaaS
Google App Engine, Force.com, Hadoop, Azure, Amazon S3, etc

Use of commodity computers, distributed across Internet, to perform parallel processing, distributed storage, indexing and mining of data Virtualization

IaaS
Amazon EC2, Joyent Accelerators, Nirvanix Storage Delivery Network, etc.

37/51

Cloud Computing - Themes


Mobile Enterprise & Cloud Computing

Massively scalable On-demand & dynamic Elastic


No upfront commitments, use on short term basis

Satish Srirama

Accessible via Internet, location independent Transparent


Complexity concealed from users, virtualized, abstracted

Service oriented
Easy to use SLAs
38/51

SLA Service Level Agreement

Cloud Models Internal (private) cloud


Mobile Enterprise & Cloud Computing

Cloud with in an organization

Community cloud
Cloud infrastructure jointly owned by several organizations

Public cloud
Satish Srirama

Cloud infrastructure owned by an organization, provided to general public as service

Hybrid cloud
Composition of two or more cloud models

39/51

Virtualization
Mobile Enterprise & Cloud Computing

Satish Srirama

Virtualization techniques are the bases of the cloud computing Virtualization technologies partition hardware and thus provide flexible and scalable computing platforms Virtual machine techniques
VMware and Xen OpenNebula Amazon ec2

40/51

Amazon Elastic Compute Cloud (EC2)


Mobile Enterprise & Cloud Computing

Virtual machine images with dynamic or static IP addresses Provides on-demand processing power From $0.10/instance * hour + bandwidth

Satish Srirama

41/51

EC2 Templates
Mobile Hosts in Enterprise Service Integration

EC2 node configuration stored as Amazon Machine Image (AMI) 100s of stock AMIs available
Generic Linux distributions Hadoop configurations Web server / database installations

Satish Srirama

Existing AMIs can be customized & saved for later reuse

42/51

Amazon Simple Storage Service (S3)


Mobile Hosts in Enterprise Service Integration

Virtually infinite storage capacity Cost: $0.15/GB*month + bandwidth


Free high-speed access to/from EC2 nodes

Secure data transfer via SSL Encrypted storage is also possible


Satish Srirama

43/51

Google App Engine


Mobile Hosts in Enterprise Service Integration

Integrated cloud computing platform Users can run Web applications written using Python Compute resources with GFS- and BigTable - backed storage Not many architectural details are public

Satish Srirama

44/51

GFS Google File System

Hadoop
Mobile Hosts in Enterprise Service Integration

Satish Srirama

Open source implementation of Google MapReduce parallel processing framework Flexible infrastructure for large scale computation and data processing on a network of commodity hardware Top level Apache Foundation project In production use at Yahoo, Facebook, Amazon, IBM etc. Very active development Hosted internally or externally (like on ec2)

45/51

Hadoop File System (HDFS)


Mobile Enterprise & Cloud Computing

Satish Srirama

A distributed file system for large data (Petabytes) Based on Google file system (GFS) Data is replicated Built-in redundancy, resiliency to large scale data On commodity hardware Intelligent distribution across racks

46/51

Hadoop Programming model : MapReduce


Mobile Enterprise & Cloud Computing

Offline computing engine Sort/Merge based distributed computing model Very simple programming model
Map (anything) -> key, value sort, partition on key Reduce (key, value) -> key, value

Satish Srirama

Metaphor
input | map | shuffle | reduce > output cat * | awk | sort | uniq -c > file
47/51

Hadoop Processing Model


Mobile Enterprise & Cloud Computing

Create or allocate a cluster Put data onto the file system


Data is split into blocks Replicated and stored in the cluster

Run your job


Satish Srirama

Copy Map code to the allocated nodes


Move computation to data, not data to computation

Gather output of Map, sort and partition on key Run Reduce tasks

Results are stored in the HDFS


48/51

Hadoop Usage Patterns Extract, transform, and load (ETL)


Mobile Enterprise & Cloud Computing

Perform aggregations, transformation, normalizations on the data (e.g. Log files) and load into RDBMS/ data mart

Reporting and analytics


Run ad-hoc queries, analytics and data mining operations on large data

Satish Srirama

Data processing pipelines Machine learning & Graph algorithms


Implement machine learning algorithms on huge data sets Traverse large graphs and data sets, building models and classifiers

49/51

Research questions Scientific computing on the cloud


Mobile Enterprise & Cloud Computing

How to reduce scientific problems to MapReduce

Virtualization
Semantic discovery of vms

Application domains for cloud computing


Satish Srirama

Scope for collaboration applications on clouds

Application and data integration across clouds


Scope for EAI and ESB technologies

50/51

Research questions - continued Service management


Mobile Enterprise & Cloud Computing

Users can plug to multiple clouds Discovery and composition of services

Decision models for clouds


Parameters for deploying applications on clouds
Satish Srirama

51/51

Mobile Enterprise & Cloud Computing

Thank you
Satish Srirama

52/51

satish.srirama@ut.ee

Das könnte Ihnen auch gefallen