Beruflich Dokumente
Kultur Dokumente
Satish Srirama
1/51
Tartu
Aachen
Satish Srirama
Visakhapatnam
2/51
Outline
l
Mobile Enterprise & Cloud Computing
Satish Srirama
l l
3/51
UDDI Registry
Refer
WSDL
Service
Service Requester
SOAP
Service Provider
Satish Srirama
4/51
UDDI - Universal Description, Discovery and Integration WSDL - Web Services Description Language
WS
Satish Srirama
Distress call
Location information service Mobile picture service
5/51
Satish Srirama
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
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
8/51
WS
WS
Satish Srirama
Mobile Enterprise
WS
WS
Do centralized nodes withstand such load ? Which services are expected from me ?
$
Mobile operator
9/51
Scalability issues
How to improve the number of concurrent clients that the Mobile Host can support?
Satish Srirama
10/51
WS Requestors
Communication Network
WS Providers
Disclosure of Configuration Data
Internet
Satish Srirama
Mobile
Mobile
Operator
11/51
Satish Srirama
Security realizations
Mobile Enterprise & Cloud Computing
KSOAP
KXML
SOAP Processor
Security Handler
LWC API
Satish Srirama
Service Handler
WS
GPS
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
Satish Srirama
AES - Advanced Encryption Standard 14/51 IDEA - International Data Encryption Algorithm
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
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
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
Satish Srirama
Mobile Enterprise
WS
WS
Do centralized nodes withstand such load ? Which services are expected from me ?
$
Mobile operator
18/51
Mobile Host in P2P networks Mobile web service provisioning in P2P networks
Mobile Enterprise & Cloud Computing
Satish Srirama
19/51
File Sharing
Collaborative/ Communication
Distributed Computing
Platforms
BTS2
WS
BTS3
WS
JXME edge peer Virtual P2P Network JXTA Relay peer JXME edge peer
Satish Srirama
WS
Huge number of services are possible with Mobile Hosts Centralized UDDI not the best solution
Problems with bottlenecks
Satish Srirama
21/51
UDDI Registry
Module Specification
Advertise how to access a Service (API, messages)
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
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
Satish Srirama
Mobile Enterprise
WS
WS
Do centralized nodes withstand such load ? Which services are expected from me ?
$
Mobile operator
24/51
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
JXTA Rende-
WS Accessible to IP network
25/51
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
ServiceMix
Open source ESB tool based on JBI
26/51
JBI basics
JBI framework supports two types of components
Mobile Enterprise & Cloud Computing
Normalized messages
XML payload Conformance with WSDL
Satish Srirama
Endpoint
27/51
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
QoS Verifier
SAAJBinding
P2PMapper
Context Engine
28/51
Broker
Binary Transformer
Satish Srirama
N M R
5
HttpReceiver
11
HttpInvoker
12
Internet
Mobile Host
WS
29/51
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)
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
Satish Srirama
Mobile Enterprise
WS
WS
Do centralized nodes withstand such load ? Which services are expected from me ?
$
Mobile operator
31/51
Field maintenance crews collect information Operators and experts can prescribe suggestions and changes
Avoid polling
Satish Srirama
WS
Journalist 2
Communities of practice
Collaborative journalism MobileHost CoLearn system
Collaborative M-Learning
32/51
WS
Journalist 4
Journalist 3
Editor
[Ivanova, 2007]
Satish Srirama
Usability analysis is conducted Software Usability Measurement Inventory (SUMI) [UCC, 2007] System Usability Scale (SUS) [Brooke,
2007]
33/51
[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
Validation
Detailed usability analysis of MobileHost CoLearn system proves the adaptability of Mobile Host by different communities
34/51
Outline
Mobile Enterprise & Cloud Computing
Satish Srirama
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
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
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
Satish Srirama
Service oriented
Easy to use SLAs
38/51
Community cloud
Cloud infrastructure jointly owned by several organizations
Public cloud
Satish Srirama
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
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
42/51
43/51
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
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
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
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
Gather output of Map, sort and partition on key Run Reduce tasks
Perform aggregations, transformation, normalizations on the data (e.g. Log files) and load into RDBMS/ data mart
Satish Srirama
49/51
Virtualization
Semantic discovery of vms
50/51
51/51
Thank you
Satish Srirama
52/51
satish.srirama@ut.ee