44
Sangyoon Oh 1 Web Service Architecture for Mobile Computing Sangyoon Oh Department of Computer Science Indiana University

Web services and mobile architecture

Embed Size (px)

DESCRIPTION

presentation

Citation preview

Page 1: Web services and mobile architecture

Sangyoon Oh 1

Web Service Architecture for Mobile Computing

Sangyoon Oh

Department of Computer Science

Indiana University

Page 2: Web services and mobile architecture

Sangyoon Oh 2

Outline

Motivation Research Issues Our approach:

HandHeld Flexible Representation Architecture Performance Evaluation Conclusion Future work

Page 3: Web services and mobile architecture

3

Motivation and Research Problem

Page 4: Web services and mobile architecture

Sangyoon Oh 4

Web Service and Mobile Computing

Web Service inter-relates distributed functionalities (i.e. services) in an elegant and technology-neutral manner.

Mobile devices with wireless connections have become a vital part of people’s everyday life. Play audio/video, Access Web, Multiplayer gaming through

wireless connection, participate in collaboration session. 3G cellular network (downloading up to 500kbps), 802.11b/g

(54Mbps), or WiBro / WiMAX (practical bandwidth up to 2Mbps)

Page 5: Web services and mobile architecture

5

Important Obstacles in Integrating Web Services and Mobile Computing

Internet

Computing

Database

BaseStation

MobileStation

File Server

2. Processing (i.e. Parsing and Serializing) XML message (e.g. Increased the Size of Messages)

1. Bandwidth Problem

SOAP

SOAP

SOAP

SOAP

SOAP

3. HTTP Request/Response mechanism

Page 6: Web services and mobile architecture

Sangyoon Oh 6

Some Current Approaches

Compressing XML Document gzip, XMill Able to reduce a document size However, the additional layer required to

compress and to decompress add a significant overheads

Attaching binary data to SOAP message MTOM/XOP: MIME attachment

JPG, MP3: standardized format DIME: Wrapping binary data

Page 7: Web services and mobile architecture

Sangyoon Oh 7

Fast Infoset

Specifies a representation of an instance of the XML Infoset using binary encoding. XML Infoset Specification is

used to refer information in well formed XML.

Doesn’t tied up with XML API (e.g. DOM, SAX)

Use ASN. 1. for binary encoding

Page 8: Web services and mobile architecture

Sangyoon Oh 8

Fast Infoset: Example

<root><tag>one</tag><tag>two</tag><anotherTag>one</anotherTag>

</root>

{0}<root>{1}<tag>{0}one[1]<>{1}two{2}<anotherTag>[0]

Local Name Content

0 root 0 one

1 tag 1 two

2 anotherTag 2

•No end tags•Indexing repeated string•Indexing qualified names

Page 9: Web services and mobile architecture

Sangyoon Oh 9

Motivation

Performance has many aspects XML parsing and transmission overhead often can not be

afforded

A lot of research on message representation (e.g. binary XML) but not on the overall system framework overcome or bypass possible performance overheads

required to support optimizing messages

Security can be important and impact performance

Page 10: Web services and mobile architecture

Sangyoon Oh 10

Research Issues

Architecture of Interaction of mobile client and Web Service.

A negotiation architecture that allows protocol independent solutions

A data description language that allows conversion between multiple representations

Adopt database semantics to reduce message size and store negotiated characteristics

Page 11: Web services and mobile architecture

11

Our approach: HandHeld Flexible

Representation Architecture

Page 12: Web services and mobile architecture

Sangyoon Oh 12

Conventional Web Service Communication Model in Mobile Computing

SOAP Engine

SOAP

Parser

Service Provider Service ClientSOAP

Parser

SOAP

Page 13: Web services and mobile architecture

13

Our Approach: HHFR

Service Provider Service Client(HHFR-Capable) (HHFR-Capable)

Simple_DFDL Doc.Static Metadata

Context-Store(WS-Context Compliant

Information Service)

Stream Characteristcs

Store and retrieve static meta-data

Store and retrieve static meta-data

SOAP Engine

SOAP

Parser

SOAP

Parser

Negotiation(SOAP)

Message Stream HHFR

Architecture

Filter H

HFR

Architecture

Filter

Page 14: Web services and mobile architecture

Sangyoon Oh 14

Three Key Design Features

1. Distinguishes between message semantics and syntax Using data description language e.g. Data Format Description

Language (DFDL) style Simple_DFDL

2. Exchange messages in a streaming style Use streaming at protocol and semantic level

3. Using Context-store to hold static data Unchanging/redundant SOAP message parts

Simple_DFDL as a data representation

Negotiated stream characters

Page 15: Web services and mobile architecture

Sangyoon Oh 15

Messaging Style

Producer and Consumer of data have access to its Schema (Static data binding)

Stream -- set of related messages Messages in the stream the same structure

and same data type Mobile clients (e.g. PDAs or smart phones)

access to Grid job Message size is tend to be small (e.g. in

mobile computing)

Page 16: Web services and mobile architecture

Sangyoon Oh 16

Distinguishing XML Syntax and Semantics

Our XML data model is defined by XML Infoset specification.

Our approach Distinguish semantic (message content) and

syntax e.g. <year>2006</year> Its syntax and value, 2006

To define the XML syntax a) Use a data description language (Simple_DFDL )b) Use a data description file as a sample instance of messages

in the stream

Page 17: Web services and mobile architecture

Sangyoon Oh 17

Simple_DFDL and Processing Module

Mapping data between representations Processing architecture

Simple_DFDL describes data format Processor (DSParser) builds the HHFR Data model Filter converts data from and to the preferred

representation format

A follow-on project is to integrate HHFR with fully developed DFDL HHFR starts with Simple_DFDL and will move to DFDL.

Page 18: Web services and mobile architecture

Example:Simple_DFDL document

<xs:element name="HHFR">

<xs:complexType>

<xs:element name=“Float1" type=“float"/>

<xs:element name=“Float2" type=“float"/>

</xs:complexType>

</xs:element>

HHFR Data Model

DSParser(Simple_DFDL

Processor)

Streamer(i.e. Filter)

Data

SOAP NegotiationMessage

Simple_DFDLDocument

Data in the preferred representation on-the-wire

Page 19: Web services and mobile architecture

19

Message Handling

Filters Convert representations

XML-to-binary, binary-to-language specific data model

Handler for Headers Conventional Handler Approach: Convert back to SOAP Make a handler understand alternative representation

e.g. WS-RM handler could be taught alternative representation

Body Processor

Handler Handler

Filter

Body

... Header

Page 20: Web services and mobile architecture

20

Negotiation Process

Use conventional SOAP message Negotiate

HHFR-Capability A preferred representation Characteristics of Stream QoS issues (e.g. reliability, security)

ClientWeb

ServiceClient

Web Serrice

create

Negotiation Response

(False or Error)

SOAPMessage

Exchange

Negotiation Request

Negotiation Request

Negotiation Response

(True)

create

MessageStream

Page 21: Web services and mobile architecture

Sangyoon Oh 21

Streaming Related Issues

Transport: HTTP transport could be a performance

bottleneck well known fact TCP/IP connection setup overhead, Request/Response. Persistent Connection may be not guaranteed in Cellular

environment

Representation: Using Context-store saving of redundant /

unchanging data

Page 22: Web services and mobile architecture

Sangyoon Oh 22

Context-store

Strategy: archiving static meta-data and negotiated information Any WS enabled Database could be used

Guarantees semantically persistent recovery WS-Context specification

Use URI to store and retrieve Fault Tolerant High Performance Information

Service (FTHPIS) of CGL

Page 23: Web services and mobile architecture

Sangyoon Oh 23

Normal Runtime Scenario1. A HHFR-capable endpoint sends a negotiation request

to intended service endpoint over SOAP.

a) Send an input data description

b) Service endpoint sends an output data description

2. Two endpoints exchange message in stream fashion Messages in the stream are in the form of negotiated

representations

3. The redundant / unchanging static metadata and negotiation details are stored in Context-store

Page 24: Web services and mobile architecture

Sangyoon Oh 24

Summary Bandwidth problems in limited wireless connection

Optimized message representation Reducing message size using Context-store

Parsing & Serializing overhead to less powered processor in mobile device Avoiding conventional SOAP processing Simple_DFDL & Filters process message in efficient way.

HTTP request/response in high latency wireless connection Transport level message streaming

Intermittent Wireless Connection Context-store automates semantically persistent recovery

Page 25: Web services and mobile architecture

25

Performance and Analysis

Page 26: Web services and mobile architecture

Sangyoon Oh 26

Performance Evaluation

Experiments are intended to show Performance comparisons between a

conventional SOAP based client and a HHFR based client

Savings and gains from Context-store Analyzed optimal scalability using Context-store

Service clients are running on Treo600 Experiments run through actual 2G cellular

connections

Page 27: Web services and mobile architecture

Sangyoon Oh 27

Connection Setup

Internet

Treo 600

Wir

eles

s

Wir

ed

Cellular Tower

Cellular Gateway

Service A(String Concatenation)

Service B(Floating Point Number Addition)

Page 28: Web services and mobile architecture

28

Machine Configuration

Service Provider: Grid Farm 8

Processor Intel® Xeon™ CPU (2.40GHz)

RAM 2GB total

Network Bandwidth 100Mbps

OS GNU/Linux (kernel release 2.4.22)

Java VersionJava 2 platform, Standard Edition (1.5.0-06)

SOAP Engine Axis 1.2 (in Tomcat 5.5.8)

Service Client: Treo 600

Processor ARM (144MHz)

RAM 32MB total, 24MB user available

Network Bandwidth 14.4Kbps (Sprint PCS Vision)

OS Palm 5.2.1.H

Java Version Java 2 platform, Micro Edition CLDC 1.1 and MIDP 2.0

Page 29: Web services and mobile architecture

29

System Parameters thhfr : time per message in a HHFR performance model tsoap : time per message in a conventional SOAP performance model Oa : overhead for accessing the Context-store Service Ob : overhead for negotiation Chhfr : total time for finishing stream of the HHFR Csoap : total time for finishing stream of the conventional SOAP framework

Context-store(Information Service)

Service Provider(Endpoint A)

Mobile Client(Endpoint B)

thhfrStream Communication

Channel of HHFR

Oa

Negotiation through SOAP

Ob

Page 30: Web services and mobile architecture

30

Chhfr = nthhfr + Oa + Ob

Csoap = ntsoap

Breakeven point:

nbe thhfr + Oa + Ob = nbe tsoap

Oa(WS) is roughly 20 milliseconds

Performance Model and Measurements

Average±error (sec) Stddev (sec)

Context-store Access (Oa) 4.127±0.042 0.516

Negotiation (Ob) 5.133±0.036 0.825

Oa : overhead for accessing the Context-store ServiceOb : overhead for negotiation

Page 31: Web services and mobile architecture

Sangyoon Oh 31

String Concatenation

Measure the total stream time i.e. summation of RTT

Independent variables Number of

messages per stream

Size of the message

0 5 10 15 20 25 30 350

20

40

60

80

100

120

140

Number Of Messages Per Stream

Tim

e fo

r F

inis

hing

Mes

sage

Str

eam

(se

c)

HHFR: 16 String Per MessageSOAP: 16 String Per Message

Page 32: Web services and mobile architecture

Sangyoon Oh 32

Floating Point Number Addition

Large Slope of SOAP

1. high latency of the HTTP based communication

2. SOAP parsing/ serialization overhead

There exist in non-zero locations breakeven point 0 5 10 15 20 25 30 35

0

20

40

60

80

100

120

140

Number Of Messages Per Stream

Tim

e fo

r F

inis

hing

Mes

sage

Str

eam

(se

c)

HHFR: 16 Floats Per MessageSOAP: 16 Floats Per Message

Page 33: Web services and mobile architecture

Sangyoon Oh 33

Performance saving by using Context-store

Message SizeFull SOAP Message Optimized Message

Ave.±error Stddev Ave.±error Stddev

Medium: 513byte (sec) 2.76±0.034 0.187 1.75±0.040 0.217

Large: 2.61KB (sec) 5.20±0.158 0.867 2.81±0.098 0.538

Experiments ran over HHFR Optimized message exchanged over HHFR after saving

redundant/unchanging parts to the Context-store We use WS-Addressing message for the experiment. Save on average 83% of message size, 41% of transit time

Summary of the Round Trip Time (TRTT)

Page 34: Web services and mobile architecture

Sangyoon Oh 34

System Parameters

N: the maximum number of stream supported by one server

Twsctx: time consumed to process (setContext) an

operation

Ttime-in-server: time consumed in Axis server

Taxis-overhead: time consumed to process Axis data-

binding and HTTP request/response

Tstream: length of stream in seconds

Page 35: Web services and mobile architecture

Sangyoon Oh 35

Summary of Ttime-in-server measurements

Ttime-in-server = Twsctx + Taxis-overhead

Twsctx =< 1 milliseconds

Axis 1.2 Beta3 is used

Data binding overhead

at Web Service Container

is the dominant factor to

message processing

1.2 1.4 1.6 1.8 2 2.20

50

100

150

200

250

300

Size of Context (KB)

Tim

e (m

sec)

T(time-in-server)

Page 36: Web services and mobile architecture

Sangyoon Oh 361.3 1.4 1.5 1.6 1.7 1.8 1.9 2 2.10

50

100

150

200

250

300

Size of Context (KB)

Tim

e (m

sec)

T(WSCTX)T(Data-Binding)T(SOAP-Sending-Receiving)

Page 37: Web services and mobile architecture

Sangyoon Oh 37

Allowed Maximum Number of Stream by Server

N: the maximum number of stream supported by one server

3N/Tstream ≈ 1 / Ttime-in-server (N/T stream starts and N/T stream ends)

N ≈ Tstream / (3 * Ttime-in-server)

e.g. Tstream = 600 (sec),

Ttime-in-server = 0.035 (when the context-size is 1.2 Kbyte) N ≈ 600 / {3 * 0.035} N ≈ 5700

Page 38: Web services and mobile architecture

38

Conclusionsand Future Work

Page 39: Web services and mobile architecture

Sangyoon Oh 39

Summary of Contributions

Design and implement an overall system framework architecture: The HHFR Architecture provides

A mechanism to negotiate the characteristics of a stream

A streaming communication channel

Simple_DFDL which distinguishes the semantics from the

representation of message content

An interface to Information service (Context-store)

A semantically persistent recovery framework

Detailed performance evaluation

Benchmark applications, approach to use a Context-store

Page 40: Web services and mobile architecture

Sangyoon Oh 40

Future work

Streaming channel integrated with a Web Service Container.

Provide a plug-in API for filter implementation Integration with fully developed DFDL

Support more message type

Secure Message stream using negotiation process Bouncy Castle lightweight cryptography package

WS-Policy specifying the default strategy Read from Context-store or negotiation message

Relevance to non mobile (conventional ) case

Page 41: Web services and mobile architecture

Sangyoon Oh 41

Related publications Sangyoon Oh and Geoffrey Fox, “Optimizing Web Service Messaging

Performance in Mobile Computing,” Future Generation Computer Systems Journal, Revision being processed.

M. Aktas, S. Oh, G. Fox, and M. Pierce, “XML Metadata Service” Proc. of the IEEE 2nd International Conference on Semantics, Knowledge and Grid (SKG2006), Nov. 2006

Sangyoon Oh, Mehmet Aktas, Marlon Pierce, and Geoffrey Fox, “Architecture for High-Performance Web Service Communications using an Information Service,” World Scientific and Engineering Academy and Society Transactions on Information Science and Applications, May 2006

Sangyoon Oh, Hasan Bulut, Ahmet Uyar, Wenjun Wu, and Geoffrey Fox, “Optimized Communication using the SOAP infoset For Mobile Multimedia Collaboration Applications,” Proc. Of the IEEE 2005 International Symposium on Collaborative Technologies and Systems (CTS 2005), May 2005.

Page 42: Web services and mobile architecture

Sangyoon Oh 42

Full list of publications (I) Wonil Kim, Sangyoon Oh, Sanggil Kang, Kyungro Yoon, A Novel Approach in Sports Image

Classification, Lecture Notes in Computer Science (Proc. of the International Conference on Intelligent Computing ICIC 2006), August 2006.

Wonil Kim, Sangyoon Oh, Sanggil Kang, Dongkyun Kim, Multi-module Image Classification System, Lecture Notes in Artificial Intelligence (Proc. of the 7th International Conference on Flexible Query Answering Systems FQAS 2006), June 2006.

Sangyoon Oh, Mehmet S. Aktas, Geoffrey C. Fox, Marlon Pierce, Architecture for High-Performance Web Service Communications Using an Information Service, World Scientific and Engineering Academy and Society Transactions on Information Science and Applications, May 2006.

Geoffrey C. Fox, Mehmet S. Aktas, Galip Aydin, Hasan Bulut, Harshawardhan Gadgil, Sangyoon Oh, Shrideep Pallickara, Marlon E. Pierce, Ahmet Sayar, and Gang Zhai, Grids for Real Time Data Applications, Lecture Notes in Computer Science (Proc. of the 6th International Conference on Parallel Processing and Applied Mathematics PPAM 2005), Poznan Poland, September 11-14 2005.

Sangyoon Oh, Sangmi Lee Pallickara, Sunghoon Ko, Jai-Hoon Kim, Geoffrey Fox, Cost Model and Adaptive Scheme for Publish/Subscribe Systems on Mobile Environments, Lecture Notes in Computer Science (Proc. of the 2nd International Workshop on Active and Programmable Grids Architectures and Components APGAC05), May 2005.

Sangyoon Oh, Sangmi Lee Pallickara, Sunghoon Ko, Jai-Hoon Kim, Geoffrey Fox, Publish/Subscribe Systems on Node and Link Error Prone Mobile Environments, Lecture Notes in Computer Science (Proc. of Wireless and Mobile Systems Workshop in ICCS 2005), May 2005.

G. Fox, S Ko, M Pierce, O Balsoy, J Kim, S Lee, K Kim, S Oh, X Rao, M Varank, H Bulut, G Gunduz, X Qui, S Pallickara, A Uyar, Grid Service for Earthquake Science, Concurrency and Computation: Practice and Experience in ACES Special Issue, 14, 371-393, October 2002.

Page 43: Web services and mobile architecture

Sangyoon Oh 43

Full list of publications (II) Wenjun Wu, Ahmet Uyar, Hasan Bulut, Sangyoon Oh, Geoffrey Fox, Grid Service Architecture for

Videoconferencing, to appear as chapter in book "Grid Computational Methods" Edited by M.P. Bekakos, G.A. Gravvanis and H.R. Arabnia.

M. Aktas, G. Aydin, H. Bulut, H. Gagdil, G. Fox, M. Nacar, M. Pierce, A. Sayar and S. Oh, XML Metadata Services and Application Usage Scenarios, Proc. of The IEEE 2nd International Conference on Semantics, Knowledge and Grid (SKG2006), Guilin China, Oct. 31 – Nov. 3, 2006

Sangyoon Oh, Mehmet S. Aktas, Marlon Pierce, Geoffrey C. Fox, Optimizing Web Service Messaging Performance Using a Context Store for Static Data, Invited paper for 5th WSEAS International Conference on TELECOMMUNICATIONS and INFORMATICS (TELE-INFO '06), Istanbul, Turkey, May 27-29, 2006.

Geoffrey C. Fox, Mehmet S. Aktas, Galip Aydin, Andrea Donnellan, Harshawardhan Gadgil, Robert Granat, Shrideep Pallickara, Jay Parker, Marlon E. Pierce, Sangyoon Oh, John Rundle, Ahmet Sayar, and Michael Scharber, Building Sensor Filter Grids: Information Architecture for the Data Deluge, Proc. of The IEEE International Conference on Semantics, Knowledge and Grid (SKG2005), Beijing China November 27-29 2005.

Sangyoon Oh, Hasan Bulut, Ahmet Uyar, Wenjun Wu, Geoffrey C. Fox, Optimized Communication using the SOAP Infoset For Mobile Multimedia Collaboration Applications, Proc. of the IEEE 2005 International Symposium on Collaborative Technologies and Systems (CTS 2005), St. Louis, Missouri, USA, May. 2005.

Sangyoon Oh, Geoffrey C. Fox , Sunghoon Ko, GMSME: An Architecture for Heterogeneous Collaboration with Mobile Devices, Proc. of the Fifth IEEE/IFIP International Conference on Mobile and Wireless Communications Networks (MWCN 2003), Singapore, October, 2003

Page 44: Web services and mobile architecture

Sangyoon Oh 44

Full list of publications (III)

Geoffrey Fox, Sunghoon Ko, Kangseok Kim, Sangmi Lee, and Sangyoon Oh, Universal Accessible Collaboration Frameworks for Ubiquitous Computing Environments, Proc. of International Conference in Ubiquitous Computing (ICUC 2003) in Seoul, Korea, October 2003

Sangmi Lee, Sunghoon Ko, Geoffrey Fox, Kangseok Kim, and Sangyoon Oh, A Web Service Approach to Universal Accessibility in Collaboration Services, Proc. of the 1st International Conference on Web Services (ICWS ’03), Las Vegas, USA, June 2003.

Geoffrey Fox, Hasan Bulut, Kangseok Kim, Sung-Hoon Ko, Sangmi Lee, Sangyoon Oh, Shrideep Pallickara, Xiaohong Qiu, Ahmet Uyar, Minjun Wang, Wenjun Wu, Collaborative Web Services and Peer-to-Peer Grids, Proc. of the 2003 International Symposium on Collaborative Technologies and Systems (CTS 2003), Orlando, Florida, USA, Jan. 2003.

Hasan Bulut, Geoffrey Fox, Dennis Gannon, Kangseok Kim, Sung-Hoon Ko, Sangmi Lee, Sangyoon Oh, Xi Rao, Shrideep Pallickara, Quinlin Pei, Marlon Pierce, Aleksander Slominski, Ahmet Uyar, Wenjun Wu, Choonhan Youn, An Architecture for e-Science and its Implications, Proc. of the 2002 International Symposium on Performance Evaluation of Computer and Telecommunication Systems (SPECTS 2002), San Diego, CA, USA, July 2002.

Geoffrey C. Fox, Sunghoon Ko, Kangseok Kim, Sangyoon Oh and Sangmi Lee, Integration of Hand-Held Devices into Collaborative Environments, Proc. the 1st International Workshop on Wired/Wireless Internet Communications (WWIC 2002), Las Vegas, NV, USA, April 2002.