Web Service Adaptation for Mobile Computing

DOI : 10.17577/IJERTV2IS1460

Download Full-Text PDF Cite this Publication

Text Only Version

Web Service Adaptation for Mobile Computing

Shwe Thinzar Aung

Information and Communication Technology Department, Technology University Yatanarpon Cyber City, Pyin Oo Lwin, Myanmar

Dr Aung Win

Information and Communication Technology Department, Technology University Yatanarpon Cyber City, Pyin Oo Lwin, Myanmar

Abstract

Mobile devices and server application run on different platforms, which can make integration problematic. The web services is the best solution for this problem because it provides distributed functionalities which are independent of the hardware platform, the operating system and programming languages. But the web services include XML protocols that are heavy for mobile devices .Moreover the overhead involved in XML processing presents a huge problem for mobile devices because of the mobile environments constraints. To adapt web service to mobile devices using proxy-based content adaptation system based on dynamic process selection .This system also offers dynamic content adaptation. In dynamic content adaptation, the system gathers characteristics of users device, call context or device profile, and adapt the content accordingly. The proxy-based content adaptation system eliminates XML processing on mobile devices and adapts the content from web service to be more suitable for mobile environment. So the proposed system can minimize computational load on client and server that lead to improve response time. Moreover, the system can remove SOAP-message transferring over wireless links that can lessen the transferred data rate over connection.

  1. Introduction

    Traditionally, access to the Web has been via fixed- line services on large-screen laptops and desktop computers. However, the Web is becoming more

    accessible by portable and wireless devices and according to ITU (International Telecommunication Union) with current growth rates, web access by people on the move via laptops and smart mobile devices is likely to exceed web access from desktop computers within the next five years. Mobile Web access today still suffers from interoperability and usability problems [12]. Web service must offer a solution for interoperability problem [5]. The W3C defines a "Web service" as "a software system designed to support interoperable machine-to-machine interaction over a network". Interoperability of Web Services mainly stems from its Extensible Markup Language (XML) based open standards. Although the integration of mobile computing with Web Services technology will give many advantages to both sides, it will lead to unacceptable performance overhead. This problem comes from two factors. First, the overhead of the XML processing that the SOAP Web services rely on does not match with the limited hardware capabilities that mobile devices present nowadays. Second, network bandwidth limitation and the unreliable wireless communication on mobile devices are also decreasing the over-all support for web services consuming on handheld devices [7]. Moreover, the content (images, text, audio and video) that returns from web services is not suitable for mobile devices because of the small physical size of the mobile phone form factors (limits on display resolution).

    In order to overcome the terminal and network limitations, we need to support adaptations of XML message from web service. Adaptation means a process of selection, generation or modification of content (text, images, audio and video) to suit to the users computing environment and usage context [2]. So in

    this paper we propose the proxy- based content adaptation framework. This framework acts as a gateway between mobile devices and web services. This gateway take care of the burden of the encoding and decoding of verbose XML-based SOAP on behalf of client and offer dynamic content adaptation for web service's response according to physical specification of mobile device.

  2. Related Work

    To decrease the heavy load of XML processing for mobile web service environment, many researchers introduce the faster parser, XML compression, binary encoding or protocol optimizations and middleware components. The SOAP messages must be parsed using two different types of parsers, DOM (Document Object Model) and SAX (Simple API for XML).the DOM parser demand more resources both in memory and CPU usages[3]. Although the SAX is faster than DOM, it is significantly more complicated and complex. Applying XML parser to mobile device for SOAP messages parsing may result in performance overhead. The XML-traffic between the client and the server can be compressed using the SOAP Extensions mechanism and any compression algorithm, e.g. the free library called SharpZipLib which contains the following compression formats Bzip2, Gzip [4]. The percentage of compression is about 90%, which means that the XML file is decreased about 10 times using compression algorithm. Compression reduces server performance during high demand. But, the existing proposed solutions in the research area is to enforce the belief that any feasible communication architecture for mobile devices must include a middleware component that exists outside the device and takes the responsibility and heavy load of XML processing needed in communicating with the Web service. Those middleware components will act like gateway servers that communicate lightly with the device (thus ensuring a small bandwidth usage for limited GPRS data communication – and little chance for failure in unreliable wireless networks) and take the load of retrieving the response from the Web service [6]. This type of architecture can bring many more opportunities towards ensuring a more reliable communication with the Web service. The wireless communication is prone to fluctuant behaviour on mobile devices thus making wireless network access prone to failure [6].

  3. Web Service

    A web service is any piece of software that makes itself available over the internet and uses a standardized XML messaging system. Because all communication is in XML, web services are not tied to any one operating system or programming language [7]. The three main characteristics of web services are Simple Object Access Protocol (SOAP), Web Service Description Language (WSDL) and Universal Description Language (UDDI).The SOAP provides an XML-based messaging framework to exchange data between peers in a decentralized, distributed environment. The Web Service Description Language (WSDL) is a de-facto standard for describing service interfaces in XML. To describe a service interface, the provided operations and the messages that are associated with those operations are detailed in a WSDL document [11]. UDDI allows setting up public Web services directories, which allow service providers to publish their Web services. Service consumers can discover Web services; retrieve their interface description in the WSDL format; and finally invoke the Web services.

  4. Content Adaptation

    Adaptation means a process of selection, generation or modification of content (text, images, audio and video) to suit to the users computing environment and usage context [2]. Content adaptation can be classified into two types: Static Adaptation and Dynamic Adaptation. Static adaptation refers to automatically creating multiple versions on the authored content, at any time after the content has been created [11]. It will make content management more cumbersome and requiring more storage. Dynamic adaptation refers to performing an on-the-fly adaptation as each request comes in. The adaptation results in additional computationalload and resource consumption [11]. Based on location of the adaptation process, adaptation approaches are classified into Client-side, Server-side, Proxy-based content adaptation.

    In server based approach, the content adaptation process is performed by sever. In this approach better adaptation results could be achieved as it is closed to the content. However clients experience performance degradation due to additional computational load and resource consumption on the server [1].

    The client-side approach can be done in two ways; performing transformation by client device or selection of the best representation after receiving the response from the origin server. This approach can be more efficient than server-side or proxy-based. However, all of the clients may not be able to implement content

    adaptation techniques due to processor, memory and network bandwidth limitation [1].

    In proxy based approach, a proxy server analysis and transcodes the content on-the-fly, before the result to the client. Intermediate adaptation can shift

    User

    HTTP

    Messaging

    Communication Module

    SOAP Messaging A

    computational load from content servers to proxy servers [2]

  5. Proposed System

    Useragentstring

    Device Capability Parser

    SOAP Message

    SOAP Message Parser

    Web Service

    1. Proxy-based Content Adaptation Framework

      Device Profile Object

      Content Object

      Adaptation Process

      Adapted

      The Proxy-based content adaptation infrastructure is described in fig. The infrastructure consists of five components. The details of components and their function are discussed in the following section. The proxy is access points to web service instead of client devices. It converts the request of client into the SOAP request. The main task of the system is extraction and adaptation of the content from the SOAP response. To accomplish this, the system is responsible for parsing the SOAP message, retrieving and processing context profile (user, terminal), decide the type and number of adaptation processes, and plan execution of the adaptation processes to meet context constraints. The proposed infrastructure is flexible and open as new adaptation process can be added by registering its

      Device DB

      Adapntation Process (Param)

      Decision Module

      Process list

      Execution Module

      Adapted Content

      Description File

      Adaptation Process

      Content

      capabilities in the adaptation description file.

        1. Communication Module

          When it receives the web service request from the user via the HTTP messaging, it extract UserAgent string that identify the clients device model from the header of the HTTP request to deliver Device Capability Module for identifying the client devices capabilities and it converts the clients HTTP request to form the SOAP request message and then request the desire the web service from service provider. Moreover, it sends the response of the web service to the SOAP message parser module to adapt the content and reply the adapted content to the client through the HTTP messaging.

          Figure 1: Overview of Proposed System

        2. Device Capability Module

          To make dynamic selection of adaptation processes , the system need to detect the capabilities of the clients devices. Device Capability Module retrieves the device profile that match Useragent string from the 51Degrees.mobi mobile devices database. The 51Degrees.mobi device database contains a vast number of useragents and their associated hardware, software and browser capabilities. The Foundation employs a variety of techniques to match the UserAgent provided by the requesting browser to a device held in the mobile database. The device profiles are provided as an efficient binary form and also in XML form for those wishing to inspect the data or integrate it into other applications. So the xml form of device profile is parsed and represented as a java object.

          DeviceType=BlackBerry 7750 ScreenWidth=240 ScreenHeight=240 ColorCapable=yes ImageCapable=yes Memory=14MB

          DeviceType=BlackBerry 7750 ScreenWidth=240 ScreenHeight=240 ColorCapable=yes ImageCapable=yes Memory=14MB

          file is implemented in the form of XML file. The new process can easily add by predefined its rule in the adaptation process file without disrupting to the other components. To make optimal adaptation plan, the module search the adaptation process that match the constraints in the process description file according to the content and device profile object. It sends the selected processes list with their parameter to the execution module.

          Figure 2: Example of device profile object

        3. SOAP message parser module

          After receiving the SOAP message (reply of the web services) from communication module, the content (text or image) of messages are extracted from the SOAP message using XML parser. The module specifies the characteristic of the content in the form of java object. The content object consists of information about the content such as media type, file format, file size, media resolution and colour information, location etc.

          Title =Trader Hotel Type =image Format=JPEG Width =660pixels Height = 445pixels Colorcapable=yes

          Identifier = file///image/image1.jpeg

          Title =Trader Hotel Type =image Format=JPEG Width =660pixels Height = 445pixels Colorcapable=yes

          Identifier = file///image/image1.jpeg

          Figure 3: Example of content object

        4. Decision engine module

          The decision engine module is the main components of the framework. It is responsible for creating an optimal adaptation plan according to delivery context. In order to decide appropriate adaptation processes, decision must be made by considering all the factors. So it uses the content profile object, device profile object and Adaptation process Description file .The content profile and device profile objects generate a set of adaptation process required to meet the constraints. The adaptation process description file specifies each adaptation process along with a precondition constraints and input parameters for this process. This

        5. Execution module

      When it receives the selected adaptation processes list, it executes the process in the list, passing the retrieved media content and the parameters given by the decision engine module. The adaptation process returns the adapted content to execution module. The module collects and stores the adapted content in the form of XML file. The XML file is converted into the appropriate format (WML or HTML) according to the constraints of clients browser. Finally the adapted messages are sent back to communication to reply the client.

      <? xml version=1.0 encoding=UTF-8>

      <processes>

      <process name=greyscale class= class path>

      <precondition>

      <and>

      <equal value=true> ContentProfileObject.Colorcapable

      </equal>

      <equal value=no> DeviceProfileObject.colorcapable

      <equal>

      </and>

      </precondition>

      <input ype=image> ContentProfileObject.identifier

      </input>

      </process>

      </processes>

      </xml>

      <? xml version=1.0 encoding=UTF-8>

      <processes>

      <process name=greyscale class= class path>

      <precondition>

      <and>

      <equal value=true> ContentProfileObject.Colorcapable

      </equal>

      <equal value=no> DeviceProfileObject.colorcapable

      <equal>

      </and>

      </precondition>

      <input ype=image> ContentProfileObject.identifier

      </input>

      </process>

      </processes>

      </xml>

      Figure 4: Example of Adaptation Description file for greyscale process

  6. Conclusion

    The proxy-based adaptation can eliminate XMLprocessing on mobile clients. So it can remove SOAP- message transfer over wireless links and performance in terms of response time and data loading. Moreover, it can minimize computational load on server and client. The system can adapt the message to suit the specification of mobile device that lead to maximize the users satisfaction

  7. References

  1. Girma Berhe, Lionael Brunie, Jean-Marc Pierson, Realization of distributed content adaptation with service-based approach for pervasive systems"

  2. TeliaSonera, "Web Content Adaptation"

  3. R. Elfwing, U. Paulsson, and L. Lungberg, Performance of SOAP in Web Service Environment Compared to CORBA, Proc. 9th Asia-Pacific Software Eng.Conf. (APSEC 02), IEEE CS Press, 2002, p. 84.

  4. H. Liefke,XMill: An Efficient Compressor for XML Data,Proc.ACM SIGMOD Conf. on Management of Data, ACM Press, 2000, pp. 153164.

  5. M. Adaçal and A. B. Bener, Mobile Web Services: A New Agent-Based Framework, Internet Computing,

    IEEE 10(3), pp. 58-65, 2006

  6. Alin COBÂRZAN," Consuming Web Services on Mobile Platforms "Informatica Economic vol. 14, no. 3/2010

  7. Hatem Hamad, Motaz Saad, and Ranzi Abed, " Performace Evaluation of Restful Web services for mobile Devices", International Arab Journal of e-

    Technology, Vol.1,No.3,January 2010

  8. 51Degrees.mobi",http://51degrees.codeplex.com

  9. Francisco Curbera, Matthew Duftler, Rania Khalaf, William Nagy, Nirmal Mukhi, and Sanjiva Weerawarana.Unraveling the web services web: An introduction to SOAP, WSDL, and UDDI. IEEE Internet Computing, 6(2):8693, 2002.

  10. Hongjiang Zhang,Adaptive Content Delievery: A New Application Area for Media Computing Research.

  11. Mobile web , http:// en.wikipedia.org / wiki / Mobile_Web.

International Journal of Engineering Research & Technology (IJERT)

ISSN: 2278-0181

Vol. 2 Issue 1, Januaryr- 2013

Leave a Reply