Overcoming middleware heterogeneity in mobile computing applications

Recent technical advances have fuelled the popularity of mobile computing. Mobile devices such as smart phones and personal digital assistants are becoming more commonly used due to the reduction in their size and increase of computational power. In addition, wireless network hotspots (in airports, hotels and commercial outlets) are now beginning to populate the environment. With these advances, new types of mobile applications are becoming available to support users on the move. The mobile environment presents a number of challenges to application developers (including frequent network disconnection and variable bandwidth); therefore mobile middleware platforms have emerged to simplify the development process of distributed mobile applications. However, the range of platforms now available introduces the new problem of middleware heterogeneity, i.e., applications developed upon different types of middleware do not interoperate with one another. Hence, the next generation of mobile computing applications must be developed independently of specific middleware implementation to allow them to continue interoperating in new locations. This thesis investigates the problem of middleware heterogeneity in the mobile computing environment. The approach taken to solve this problem involves the development of a component-based, higher-level middleware framework (named ReMMoC) that can dynamically adapt its underlying behaviour between different concrete middleware implementations e.g. in one location CORBA is utilised, whereas at the next location SOAP is used. Furthermore, this framework promotes a higher-level programming abstraction based upon the abstract services concepts of the Web Services Architecture. The ReMMoC framework is evaluated to ensure that middleware transparency is achieved and that applications can be developed that will operate in unknown locations across unpredictable middleware implementation. Inevitably, the ability to overcome heterogeneity comes at the cost of an incurred performance overhead; hence, this thesis also evaluates the impact of this overhead in the domain of mobile computing.

[1]  M. Rahnema,et al.  Overview of the GSM system and protocol architecture , 1993, IEEE Communications Magazine.

[2]  Steve Vinoski,et al.  Web Services Interaction Models, Part 1: Current Practice , 2002, IEEE Internet Comput..

[3]  Vinny Cahill,et al.  Mobile RMI: supporting remote access to Java server objects on mobile hosts , 2001, Proceedings 3rd International Symposium on Distributed Objects and Applications.

[4]  Keith Cheverst,et al.  A platform supporting coordinated adaptation in mobile systems , 2002, Proceedings Fourth IEEE Workshop on Mobile Computing Systems and Applications.

[5]  Nigel Davies,et al.  A CORBA-based Proxy Architecture for Mobile Multimedia Applications , 1998 .

[6]  Gordon S. Blair,et al.  The Design and Implementation of Open ORB 2 , 2001, IEEE Distributed Syst. Online.

[7]  Paul J. Leach,et al.  Simple Service Discovery Protocol/1.0 , 1999 .

[8]  David Wong,et al.  Concordia: An Infrastructure for Collaborating Mobile Agents , 1997, Mobile Agents.

[9]  Robbert van Renesse,et al.  Operating system support for mobile agents , 1995, Proceedings 5th Workshop on Hot Topics in Operating Systems (HotOS-V).

[10]  James H. Aylor,et al.  Computer for the 21st Century , 1999, Computer.

[11]  Mahadev Satyanarayanan,et al.  Mobile Information Access , 1996 .

[12]  Sun Microsystems,et al.  RPC: Remote Procedure Call Protocol specification: Version 2 , 1988, RFC.

[13]  Chen Jian-xun,et al.  Wireless access and terminal mobility in CORBA , 2004 .

[14]  David Gelernter,et al.  Generative communication in Linda , 1985, TOPL.

[15]  Jim Waldo,et al.  The Jini Specification , 1999 .

[16]  Felix C. Freiling,et al.  Evaluating advanced routing algorithms for content-based publish/subscribe systems , 2002, Proceedings. 10th IEEE International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunications Systems.

[17]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[18]  Amy Wohl,et al.  Apple computer, Inc. , 2003 .

[19]  Mads Haahr,et al.  Towards a generic architecture for mobile object-oriented applications , 2000, IEEE Globecom '00 Workshop. 2000 IEEE Service Portability and Virtual Customer Environments (IEEE Cat. No.00EX498).

[20]  Andrew S. Tanenbaum,et al.  The Globe Distribution Network , 2000, USENIX Annual Technical Conference, FREENIX Track.

[21]  Stephen Paul Wade,et al.  An investigation into the use of the tuple space paradigm in mobile computing environments , 1999 .

[22]  Nigel Davies,et al.  The flexible ubiquitous monitor project , 1996 .

[23]  Felix C. Freiling,et al.  Supporting Mobility in Content-Based Publish/Subscribe Middleware , 2003, Middleware.

[24]  Thomas Plagemann,et al.  Enabling Flexible QoS Support in the Object Request Broker COOL , 2000, ICDCS Workshop on Distributed Real-Time Systems.

[25]  George Coulouris,et al.  Distributed systems - concepts and design , 1988 .

[26]  Marvin Theimer,et al.  The Bayou Architecture: Support for Data Sharing Among Mobile Users , 1994, 1994 First Workshop on Mobile Computing Systems and Applications.

[27]  Manish Parashar,et al.  Latency Performance of SOAP Implementations , 2002, 2nd IEEE/ACM International Symposium on Cluster Computing and the Grid (CCGRID'02).

[28]  Alfonso Fuggetta,et al.  The JEDI Event-Based Infrastructure and Its Application to the Development of the OPSS WFMS , 2001, IEEE Trans. Software Eng..

[29]  Gordon S. Blair,et al.  On the performance of reflective systems software , 2004, IEEE International Conference on Performance, Computing, and Communications, 2004.

[30]  Charlie Kindel,et al.  Distributed Component Object Model Protocol -- DCOM/1.0 , 1998 .

[31]  Márcio Eduardo Delamaro,et al.  Mobile Code in .NET: A Porting Experience , 2002, Mobile Agents.

[32]  Franco Zambonelli,et al.  Tuples on the air: a middleware for context-aware computing in dynamic networks , 2003, 23rd International Conference on Distributed Computing Systems Workshops, 2003. Proceedings..

[33]  Fabio Kon,et al.  Dependence management in component-based distributed systems , 2000, IEEE Concurr..

[34]  Gregory D. Abowd,et al.  The Conference Assistant: combining context-awareness with wearable computing , 1999, Digest of Papers. Third International Symposium on Wearable Computers.

[35]  Flavio Muratore UMTS: Mobile Communications for the Future , 2000 .

[36]  John Reece,et al.  General Packet Radio Service (GPRS) , 2002 .

[37]  Klara Nahrstedt,et al.  A Middleware Infrastructure for Active Spaces , 2002, IEEE Pervasive Comput..

[38]  Rajeev R. Raje,et al.  Interoperability between Mobile Distributed Components using the UniFrame Approach , 2003 .

[39]  Bill Segall,et al.  Supporting disconnectedness - transparent information delivery for mobile and invisible computing , 2001, Proceedings First IEEE/ACM International Symposium on Cluster Computing and the Grid.

[40]  Danny B. Lange,et al.  Programming and Deploying Java¿ Mobile Agents with Aglets¿ , 1998 .

[41]  Keith Cheverst,et al.  Caches in the Air: Disseminating Information in the Guide System , 1999 .

[42]  Dag Johansen,et al.  Ubiquitous devices united: enabling distributed computing through mobile code , 1999, SAC '99.

[43]  Kimmo E. E. Raatikainen,et al.  Wireless Java RMI , 2000, Proceedings Fourth International Enterprise Distributed Objects Computing Conference. EDOC2000.

[44]  Fabio Kon,et al.  Monitoring, Security, and Dynamic Configuration with the dynamicTAO Reflective ORB , 2000, Middleware.

[45]  David Wood,et al.  Adaptive service binding middleware to support mobility , 2003, 23rd International Conference on Distributed Computing Systems Workshops, 2003. Proceedings..

[46]  Gregory D. Abowd,et al.  Rapid prototyping of mobile context-aware applications: the Cyberguide case study , 1996, MobiCom '96.

[47]  Jean Bacon,et al.  Generic Support for Distributed Applications , 2000, Computer.

[48]  Aleksander Slominski,et al.  Web Services Invocation Framework (WSIF) , 2001 .

[49]  Adrian Friday,et al.  Infrastructure support for adaptive mobile applications , 1996 .

[50]  Clemens A. Szyperski,et al.  Component software - beyond object-oriented programming , 2002 .

[51]  I Chih-Lin,et al.  Wireless Communications and Networks , 2004 .

[52]  Stephan Preuß JESA Service Discovery Protocol , 2002, NETWORKING.

[53]  Mads Haahr,et al.  A Dynamic Proxy Based Architecture to Support Distributed Java Objects in a Mobile Environment , 2002, CoopIS/DOA/ODBASE.

[54]  Cecilia Mascolo,et al.  XMIDDLE: A Data-Sharing Middleware for Mobile Computing , 2002, Wirel. Pers. Commun..

[55]  Venkatesh Choppella,et al.  Requirements for and Evaluation of RMI Protocols for Scientific Computing , 2000, ACM/IEEE SC 2000 Conference (SC'00).

[56]  Gordon S. Blair,et al.  MARE: Resource Discovery and Configuration in Ad Hoc Networks , 2002, Mob. Networks Appl..

[57]  Srinivasan Seshan,et al.  A network architecture for heterogeneous mobile computing , 1998, IEEE Wirel. Commun..

[58]  李幼升,et al.  Ph , 1989 .

[59]  Douglas C. Schmidt,et al.  Design and performance of a dynamically configurable, messaging protocols framework for real-time CORBA , 2003, 36th Annual Hawaii International Conference on System Sciences, 2003. Proceedings of the.

[60]  Valérie Issarny,et al.  AdHocFS: sharing files in WLANs , 2003, Second IEEE International Symposium on Network Computing and Applications, 2003. NCA 2003..

[61]  Karsten Schwan,et al.  Efficient Wire Formats for High Performance Computing , 2000, ACM/IEEE SC 2000 Conference (SC'00).

[62]  Clemens Szyperski,et al.  Component software , 1997 .

[63]  Miguel Mira da Silva,et al.  Motivation and Requirements for the AgentSpace: A Framework for Developing Agent Programming Systems , 1997, IS&N.

[64]  张晓丽,et al.  Enterprise Java Beans技术架构分析 , 2001 .

[65]  Axel Uhl,et al.  Model-Driven Architecture , 2002, OOIS Workshops.

[66]  Eyal de Lara,et al.  Reducing the Energy Usage of Office Applications , 2001, Middleware.

[67]  Yi-Bing Lin,et al.  Wireless and Mobile Network Architectures , 2000 .

[68]  David M. Booth,et al.  Web Services Architecture , 2004 .

[69]  Gordon S. Blair,et al.  Cooperating sentient vehicles for next generation automobiles , 2004 .

[70]  Gordon S. Blair,et al.  Exploiting reflection in mobile computing middleware , 2002, MOCO.

[71]  Gordon S. Blair,et al.  L2imbo: A distributed systems platform for mobile computing , 1998, Mob. Networks Appl..

[72]  John B. Shoven,et al.  I , Edinburgh Medical and Surgical Journal.

[73]  Massachusett Framingham,et al.  The Common Object Request Broker: Architecture and Specification Version 3 , 2003 .

[74]  Fabio Kon,et al.  Reflective Middleware: From Your Desk to Your Hand , 2001, IEEE Distributed Syst. Online.

[75]  A. A. Samjani General Packet Radio Service [GPRS] , 2002 .

[76]  Steve Vinoski It's Just a Mapping Problem , 2003, IEEE Internet Comput..

[77]  George Coulouris,et al.  Context-aware multimedia computing in the intelligent hospital , 2000, ACM SIGOPS European Workshop.

[78]  M. Frans Kaashoek,et al.  Rover: a toolkit for mobile information access , 1995, SOSP.

[79]  Klara Nahrstedt,et al.  Gaia: A Middleware Infrastructure to Enable Active Spaces1 , 2002 .

[80]  Amy L. Murphy,et al.  LIME: a middleware for physical and logical mobility , 2001, Proceedings 21st International Conference on Distributed Computing Systems.

[81]  Gordon S. Blair,et al.  A resource management framework for adaptive middleware , 2000, Proceedings Third IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC 2000) (Cat. No. PR00607).

[82]  George Coulouris,et al.  Distributed systems (3rd ed.): concepts and design , 2000 .

[83]  D. Box,et al.  Simple object access protocol (SOAP) 1.1 , 2000 .

[84]  John Zahorjan,et al.  The challenges of mobile computing , 1994, Computer.

[85]  Chris Schmandt,et al.  Location-Aware Information Delivery with ComMotion , 2000, HUC.

[86]  Yasuhiko Yokote,et al.  The Apertos reflective operating system: the concept and its implementation , 1992, OOPSLA.

[87]  S. Krishnan,et al.  2 XLANG : Web Services for Business Process Design , 2002 .

[88]  Vinny Cahill,et al.  STEAM: event-based middleware for wireless ad hoc networks , 2002, Proceedings 22nd International Conference on Distributed Computing Systems Workshops.

[89]  Akinori Yonezawa,et al.  Reflection in an object-oriented concurrent language , 1988, OOPSLA '88.

[90]  Douglas C. Schmidt,et al.  Applying patterns to develop extensible ORB middleware , 1999, IEEE Commun. Mag..

[91]  Mahadev Satyanarayanan,et al.  Coda: A Highly Available File System for a Distributed Workstation Environment , 1990, IEEE Trans. Computers.

[92]  Jerry R. Hobbs,et al.  DAML-S: Semantic Markup for Web Services , 2001, SWWS.

[93]  K. Raatikainen,et al.  Using CORBA to support terminal mobility , 1997, Proceedings TINA '97 - Global Convergence of Telecommunications and Distributed Object Computing.

[94]  Eric Newcomer,et al.  Understanding Web Services: XML, WSDL, SOAP, and UDDI , 2002 .

[95]  Mahadev Satyanarayanan,et al.  Fundamental challenges in mobile computing , 1996, PODC '96.

[96]  Harry Chen,et al.  Centaurus: a framework for intelligent services in a mobile environment , 2001, Proceedings 21st International Conference on Distributed Computing Systems Workshops.

[97]  Wesley Chan,et al.  Project Voyager : building an Internet presence for people, places, and things , 2001 .

[98]  Julia L. Lawall,et al.  Proceedings of the 2002 Usenix Annual Technical Conference Think: a Software Framework for Component-based Operating System Kernels , 2022 .

[99]  David S. Rosenblum,et al.  Design and evaluation of a wide-area event notification service , 2001, TOCS.

[100]  Mandayam T. Raghunath,et al.  Application design for a smart watch with a high resolution display , 2000, Digest of Papers. Fourth International Symposium on Wearable Computers.

[101]  Gordon S. Blair,et al.  An Efficient Component Model for the Construction of Adaptive Middleware , 2001, Middleware.

[102]  E. Carrapatoso,et al.  A reflective component-based and architecture aware framework to manage architecture composition , 2001, Proceedings 3rd International Symposium on Distributed Objects and Applications.

[103]  Cecilia Mascolo,et al.  Adaptable Mobile Applications: Exploiting Logical Mobility in Mobile Computing , 2003, MATA.

[104]  Andrew Herbert,et al.  FlexiNet—a flexible component oriented middleware system , 1998, EW 8.

[105]  Gregory D. Abowd,et al.  CybreMinder: A Context-Aware System for Supporting Reminders , 2000, HUC.

[106]  Cecilia Mascolo,et al.  Reflective Middleware Solutions for Context-Aware Applications , 2001, Reflection.

[107]  Patrick C. K. Hung Specifying conflict of interest in web services endpoint language (WSEL) , 2002, SECO.

[108]  W. Stephen,et al.  An investigation into the use of the tuple space paradigm in mobile computing environments , 1999 .

[109]  Cecilia Mascolo,et al.  A micro-economic approach to conflict resolution in mobile computing , 2002, SIGSOFT '02/FSE-10.