Web Service Architecture
for Mobile Computing
Sangyoon Oh
Outline
l
Motivation
l
Research Issues
l
Our approach:
HandHeld Flexible Representation Architecture
l
Performance Evaluation
l
Conclusion
Web Service and Mobile Computing
l
Web Service inter-relates distributed functionalities
(i.e. services) in an elegant and technology-neutral
manner.
l
Mobile devices with wireless connections have
become a vital part of people’s everyday life.
l
Play audio/video, Access Web, Multiplayer gaming through
wireless connection, participate in collaboration session.
l
3G cellular network (
downloading up to 500kbps)
, 802.11b/g
Important Obstacles
in Integrating Web Services and Mobile
Computing
Some Current Approaches
l
Compressing XML Document
l
gzip, XMill
l
Able to reduce a document size
l
However, the additional layer required to
compress and to decompress
add a significant
overheads
l
Attaching binary data to SOAP message
l
MTOM/XOP: MIME attachment
l
JPG, MP3: standardized format
Fast Infoset
l
Specifies a representation of
an instance of the XML
Infoset using binary encoding.
l
XML Infoset Specification is
used to refer information in well
formed XML.
l
Doesn’t tied up with XML API
(e.g. DOM, SAX)
l
Use ASN. 1. for binary
encoding
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]
1
tag
1
two
one
0
root
0
Content
Local Name
•No end tags
Motivation
l
Performance has many aspects
l
XML parsing and transmission overhead
often can not be
afforded
l
A lot of research on message representation (e.g.
binary XML)
but not on the overall system
framework
l
overcome or bypass possible performance overheads
required to support optimizing messages
l
Security can be important and impact performance
Research Issues
l
Architecture of Interaction of mobile client
and Web Service.
l
A negotiation architecture that allows protocol
independent solutions
l
A data description language that allows
conversion between multiple representations
l
Adopt database semantics to reduce
Our approach:
HandHeld Flexible
Our Approach: HHF
Three Key Design Features
l
Distinguishes between message semantics and syntax
l
Using
data description language
e.g.
Data Format Description
Language (DFDL) style
Simple_DFDL
l
Exchange messages in a
streaming
style
l
Use streaming at protocol and semantic level
l
Using Context-store to hold static data
l
Unchanging/redundant SOAP message parts
l
Simple_DFDL as a data representation
Messaging Style
l
Producer and Consumer of data have access
to its Schema (Static data binding)
l
Stream -- set of related messages
l
Messages in the stream
the same structure
and same data type
l
Mobile clients (e.g. PDAs or smart phones)
access to Grid job
l
Message size is tend to be small (e.g. in
mobile computing)
Distinguishing
XML Syntax and Semantics
l
Our XML data model is defined by XML
Infoset specification.
l
Our approach
l
Distinguish semantic (message content) and
syntax
l
e.g. <year>2006</year>
l
Its syntax and value, 2006
l
To define the XML syntax
l
Use a data description language (Simple_DFDL )
l
Use a data description file as a sample instance of messages
Simple_DFDL
and Processing Module
l
Mapping data between representations
l
Processing architecture
l
Simple_DFDL describes data format
l
Processor (DSParser) builds the HHFR Data model
l
Filter converts data from and to the preferred
representation format
l
A follow-on project is to integrate HHFR with
fully developed DFDL
l
HHFR starts with Simple_DFDL and will move to DFDL.
Example
Simple_DFDL document
<xs:element name="HHFR">
<xs:complexType>
<xs:element name=“Float1" type=“float"/>
<xs:element name=“Float2" type=“float"/>
</xs:complexType>
Message Handling
l
Filters
l
Convert representations
l
XML-to-binary, binary-to-language specific data model
l
Handler for Headers
l
Conventional Handler Approach: Convert back to SOAP
l
Make a handler understand alternative representation
l
e.g. WS-RM handler could be taught alternative representation
Negotiation Process
l
Use conventional SOAP message
l
Negotiate
l
HHFR-Capability
l
A preferred representation
l
Characteristics of Stream
Streaming Related Issues
l
Transport:
l
HTTP transport could be a performance
bottleneck
well known fact
l
TCP/IP connection setup overhead, Request/Response.
l
Persistent Connection may be not guaranteed in Cellular
environment
l
Representation:
l
Using Context-store saving of redundant /
unchanging data
Context-store
l
Strategy: archiving static meta-data and
negotiated information
l
Any WS enabled Database could be used
l
Guarantees semantically persistent recovery
l
WS-Context specification
l
Use URI to store and retrieve
l
Fault Tolerant High Performance Information
Normal Runtime Scenario
l
A HHFR-capable endpoint sends a negotiation request
to intended service endpoint over SOAP.
l
Send an input data description
l
Service endpoint sends an output data description
l
Two endpoints exchange message in stream fashion
l
Messages in the stream are in the form of negotiated
representations
l
The redundant / unchanging static metadata and
negotiation details are stored in Context-store
Summary
l
Bandwidth problems in limited wireless connection
l
Optimized message representation
l
Reducing message size using Context-store
l
Parsing & Serializing overhead to less powered
processor in mobile device
l
Avoiding conventional SOAP processing
l
Simple_DFDL & Filters process message in efficient way.
l
HTTP request/response in high latency wireless
connection
l
Transport level message streaming
l
Intermittent Wireless Connection
Performance Evaluation
l
Experiments are intended to show
l
Performance comparisons between a
conventional SOAP based client and a HHFR
based client
l
Savings and gains from Context-store
l
Analyzed optimal scalability using Context-store
l
Service clients are running on Treo600
l
Experiments run through actual 2G cellular
Connection Setup
Machine Configuration
Axis 1.2 (in Tomcat 5.5.8)
SOAP Engine
Java 2 platform, Standard Edition
(1.5.0-06)
Java Version
GNU/Linux (kernel release 2.4.22)
OS
100Mbps
Network Bandwidth
2GB total
RAM
Intel® Xeon™ CPU (2.40GHz)
Processor
Service Provider: Grid Farm 8
14.4Kbps (Sprint PCS Vision)
Network Bandwidth
32MB total, 24MB user available
RAM
ARM (144MHz)
Processor
System Parameters
l
t
hhfr: time per message in a HHFR performance model
l
t
soap: time per message in a conventional SOAP performance model
lO
a: overhead for accessing the Context-store Service
l
O
b: overhead for negotiation
l
C
hhfr: total time for finishing stream of the HHFR
l
C
soap: total time for finishing stream of the conventional SOAP framework
l
C
hhfr
= nt
hhfr
+ O
a
+ O
b
l
C
soap
= nt
soap
l
Breakeven point:
n
be
t
hhfr
+ O
a
+ O
b
=
n
be
t
soap
O
a
(WS) is roughly 20 milliseconds
Performance Model and Measurements
0.825
5.133±0.036
Negotiation (
Ob
)
0.516
4.127±0.042
Context-store Access (
Oa
)
Stddev (sec)
Average±error (sec)
O
a
: overhead for accessing the
String Concatenation
l
Measure the total
stream time i.e.
summation of RTT
l
Independent
variables
l
Number of
messages per
stream
l
Size of the
message
Floating Point Number Addition
l
Large Slope of
SOAP
l
high latency of
the HTTP
based
communication
l
SOAP parsing/
serialization
overhead
l
There exist in
Performance
saving by using Context-store
0.538
2.81±0.098
0.867
5.20±0.158
Large: 2.61KB (sec)
0.217
1.75±0.040
0.187
2.76±0.034
Medium: 513byte (sec)
Stddev
Ave.±error
Stddev
Ave.±error
Optimized Message
Full SOAP Message
Message Size
l
Experiments ran over HHFR
l
Optimized message exchanged over HHFR after saving
redundant/unchanging parts to the Context-store
l
We use WS-Addressing message for the experiment.
l
Save on average 83% of message size, 41% of transit time
Summary of the Round Trip Time (
T
RTT)
System Parameters
l
N: the maximum number of stream supported by
one server
l
T
wsctx
: time consumed to process (setContext) an
operation
l
T
time-in-server
: time consumed in Axis server
l
T
axis-overhead
: time consumed to process Axis
data-binding and HTTP request/response
Summary of T
time-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
Allowed Maximum Number of Stream
by Server
N: the maximum number of stream supported by one server
3N/T
stream≈ 1 / T
time-in-server(N/T stream starts and N/T stream ends)
N ≈ T
stream/ (3 * T
time-in-server)
e.g. T
stream= 600 (sec),
T
time-in-server= 0.035 (when the context-size is 1.2 Kbyte)
N ≈ 600 / {3 * 0.035}
N ≈ 5700
Conclusion
Summary of Contributions
l
Design and implement an overall system framework architecture:
The HHFR Architecture provides
l
A mechanism to negotiate the characteristics of a stream
l
A streaming communication channel
l
Simple_DFDL which distinguishes the semantics from the
representation of message content
l
An interface to Information service (Context-store)
l
A semantically persistent recovery framework
l
Detailed performance evaluation
l
Benchmark applications, approach to use a Context-store
Future work
l
Streaming channel integrated with a Web Service
Container.
l
Provide a plug-in API for filter implementation
l
Integration with fully developed DFDL
l
Support more message type
l
Secure Message stream using negotiation process
l
Bouncy Castle lightweight cryptography package
l
WS-Policy specifying the default strategy
l
Read from Context-store or negotiation message
Related publications
l
Sangyoon Oh
and Geoffrey Fox, “Optimizing Web Service Messaging
Performance in Mobile Computing,”
Future Generation Computer Systems
Journal
, Revision being processed.
l
M. Aktas,
S. Oh
, G. Fox, and M. Pierce, “XML Metadata Service”
Proc. of the
IEEE 2
ndInternational Conference on Semantics, Knowledge and Grid
(SKG2006)
, Nov. 2006
l
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
l
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.
Full list of publications (I)
l 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.
l 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.
l 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.
l 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.
l 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.
l 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.
Full list of publications (II)
l 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.
l 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
l 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.
l 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.
l 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.
l 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
Full list of publications (III)
l 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
l 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.
l 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.
l 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.
l Geoffrey C. Fox, Sunghoon Ko, Kangseok Kim,Sangyoon Oh and Sangmi Lee,Integration of