Provisioning Web Services From Resource Constrained Mobile Devices

1.Info: 2010 IEEE 3rd International Conference on Cloud Computing

2.Abstract:

     In this paper, the author propose a framework which partitions the workload of complex devices in a distributed environment and keeps the web service interfaces on mobile devices. And the framework provides support for hosting mobile  Web  services  involving  complex  business  processes  by partitioning  the  tasks  and delegating  the  heavy-duty  tasks  to remote  servers.  And different partitioning schemes analyzed. Finally, the author analyzed  the  proposed  framework using  a  sample  prototype using performance model given to show the improvement. 

3.Concepts:

  • KSOAP: is a ligth-weight and open source packages and is used for processing SOAP message.
  • KXML: is an XML parser based on pull parsing and is an implementation of XMLPULL parser API.

4.Motivation:

     Related work are focus on hosting simple Web Service applications on mobile devices. But there is no solution to address the issue that how to host heavy-duty(complex) services on mobile devices with limited computing resources.

     Because Most of the available mobile devices have low resource capabilities,e.g. less  memory,  slower  processing  speed,  and  unreliable communication  links.The author consider that  services should be designed in a way to put less workload on the mobile device and delegate heavy-duty tasks  to  backend  servers  on  the cloud.  Web  service hosting  on  mobile  devices  demands  a  flexible,  light-weight and  scalable   execution   environment.

5.Mobile web service partition scheme:

     Three partition schemes are given:

  • Backend node based scheme: (depicts in figure (a)),A backend node executes a part of an application of the WS provider and sends the results back to it. In  this  scheme,  the  mobile  WS  provider  itself  has  the control of coordinating the different  partitions (advantage of this scheme).
  • Intermediate node based scheme:(depicts in figure (b)), An  intermediate  node  intercepts  the  WS  client  requests and  processes  partly  before  forwarding  them  to  the  mobile WS provider, and also responsible for creating a final response and send it to the client. In this scheme, an intermediate node works as a proxy node. And this scheme is most suitable for design time application partitioning strategies.
  • Forwarding node based scheme:(depicts in figure (c)),  responsibility  of  sending  the  final  response  to  the client  is  delegated  to  the  forwarding  node.This  scheme  is  suitable  for  WS  applications  which require  the  partition  on  the  mobile  device  to  be  executed first. However, this scheme  allows  less  control  to  the  mobile  WS  provider  and introduces additional binding issues between the forwarding node and the client. 

6.Mobile web service partition Framework:

       The  key  objective  of  proposed framework  is  to  minimize  the execution load on the service provider mobile device.  And it is based on Backend node based scheme. And the proposed framework is shown in Figure 4. 

       The  framework  provides  a high level of design about ow to assign different tasks to be executed on a mobile device and backend nodes  on the cloud.

     

    The details of components are:

  • Transfer Hanlder: It processes the HTTP requests and extracts the SOAP messages to forward them to the execution engine.
  • Execution Engine: It is  responsible  for parsing the request message  (SOAP  message)  and  invokes  a  particular  method of a Web service class based on the requested Web service.  And the  partitioning technique is based on the processing of SOAP  messages. i)The  mobile  execution  engine  is deployed  on  the  mobile  device  and  is  responsible  to process the tasks that require local resources or need actions of the service provider. ii)The static execution engine is deployed on a backend node and is responsible for handling tasks that demand more computing resources. 
  • Mobile service controller: It splits the execution engine task. The controller decides whether or not to partition the execution , and which tasks are to be offloaded to the backend node.(Depending on the context of available resources.) And KSOAP and KXML is used in the implementation of the execution engine partitions.
  • Function Managers: The local function manager further  separates  the  data  and  templates from  the  message  blocks  to  reduce  the  processing  load significantly on the resource constrained mobile device. The   remote   function manager  forwards  message  blocks  to  the  Static  Execution Engine  on  a  backend  node.
  • Mobile Execution engine: It  is  responsible  for  executing  the  local WS execution tasks within the mobile WS provider. 
  • Context Manager: It monitors the available resources on the  mobile  host . And It helps  the  mobile  WS  controller  to allocate  tasks  accordingly  to  the  execution  engines calculating a context suitability using the following equation:
  •                       ,where,  CRi  is  the  current  context  value  of  the ith resource,  RRi is  the  required  context  value  of  the  ith resource, and  Wi  is the weight of the ith resource. 

7.Performance model:

The following equation  gives  an  estimate  of  the  time  required  to invoke  a  mobile  WS  that  is  partitioned  across  multiple nodes.

     where, "Tmws" is the overall response time;

               "Ten" is CPU time required by the execution environment;

               "" is the execution time on mobile device, where i=1,2,...m

               "" is the execution time on backend node ,where j=m+1,m+2,...n

               "△cd" is coordination time of different partitions;

               "△tn" is the transfer time of data between the partitions.

posted @ 2011-03-09 15:02  leon.wei  阅读(459)  评论(0)    收藏  举报