Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide


  1. 1. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print), INTERNATIONAL JOURNAL OF COMPUTER ENGINEERING & ISSN 0976 - 6375(Online), Volume 5, Issue 2, February (2014), pp. 46-55 © IAEME TECHNOLOGY (IJCET) IJCET ISSN 0976 – 6367(Print) ISSN 0976 – 6375(Online) Volume 5, Issue 2, February (2014), pp. 46-55 © IAEME: www.iaeme.com/ijcet.asp Journal Impact Factor (2014): 4.4012 (Calculated by GISI) www.jifactor.com ©IAEME SYSTEMATIC REVIEW OF UBIQUITOUS COMPUTING SYSTEM MODELS SmritiMahajan1, 1,2,3 Anil Kumar Mishra2 and Latika Singh3 Dept of Computer Science and Engineering, ITM University Gurgaon, India ABSTRACT Ubiquitous computing forces computers to live in the world of humans. We can that ubiquitous computing is roughly the opposite of virtual reality. With advancement in technology we will soon see large number of ubiquitous devices. The services delivered by ubiquitous computing environment will require evolution of context-awareness, wireless network and mobility. Almost all applications of ubiquitous computing require a middleware for its implementation and a mechanism for discovery of available services. In this paper we will study about SenSay, the context-aware application of ubiquitous computing; the middleware architecture HOMEROS which allows high flexibility in the environment of heterogeneous devices and users; dynamic discovery and invocation mechanism for discovery of available services; Mobile Gaia a middleware for ad-hoc pervasive computing. Keywords: Dynamic discovery and invocation, HOMEROS, Mobile Gaia, Pervasive computing, SenSay, Ubiquitous computing. 1. INTRODUCTION The term Ubiquitous Computing was coined by Mark Weiser in 1991. His vision was to create environment saturated with computing and communicating capability, and integrated with human users [1]. This vision was too far ahead of its time and the hardware technology that was needed to achieve this did not exist. Ubiquitous computing is an advanced computing concept where computing is made to appear everywhere and anywhere [2]. In terms of technology, the term ubiquitous implies that technology is everywhere and we use it all the time. These technologies have been integrated in our lives so well that we tend to use them without thinking about the tool. Ubiquitous computing is also known as Pervasive Computing [3]. Both these terms can be used for the technology that has become almost invisible to us as it is now an integrated part of our life. It is an emerging field that includes technology that bridge the physical and digital world; systems and 46
  2. 2. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print), ISSN 0976 - 6375(Online), Volume 5, Issue 2, February (2014), pp. 46-55 © IAEME applications that incorporate such technologies; infrastructure that support these technologies. It is the prospect of connecting all the things in the world to internet in order to provide information on anything, anytime and anywhere. It relies on the convergence of wireless technology, advancement in electronics and the internet. Continuous advancement in technology will soon lead to abundance of very small and very cheap microprocessors which are equipped with sensors and have wireless communication capabilities. Processing of information will then become ubiquitous and permeate almost every type of object. In ubiquitous computing environment, the design of systems and applications needs to take care of different devices, mobile users and continuously changing contexts of both the users and the system. The agents can acquire contextual information easily using middleware, reason about it using different logics and then adapt themselves to changing contexts. In this paper we will study about: • • • A context-aware mobile phone SenSay. Two middleware architectures-HOMEROS and Mobile Gaia. Dynamic discovery and invocation mechanism. The rest of the paper has following structure: section 2 presents an application of Ubiquitous computing-SenSay; section 3 describes HOMEROS-the middleware used for mobile heterogeneous systems; section 4 elaborates the mechanism for dynamic discovery and invocation of service components and section 5describes Mobile Gaia-a middleware for Ad-hoc pervasive computing. 2. SENSAY: A CONTEXT-AWARE MOBILE PHONE SenSay(sensing & saying) is a context aware mobile phone that adapts to the dynamically changing environment[4]. It modifies its behavior based on its user’s state and surroundings. It gives the ability to communicate the urgency of their calls to the remote callers, suggests user to make calls when they are idle and gives the feedback on the current status of the SenSay user to the caller. SenSay introduces 4 states: uninterruptible, idle, active and the default state the normal state (fig 1). The architecture consists of 5 functional modules: Sensor box, sensor module, decision module (core), action module and phone module. 2.1 Sensor Box It consists of a printed circuit board (PCB) which consists of two subsystems: the sensors and the microcontroller. The microcontroller provides eight 10-bit analog-to-digital conversion channels as the interface to the sensors and a port for serial communication to interface with the sensor module. The various sensors integrated in the sensor box are the voice and the ambient microphones which can be mounted on various parts of the body; three accelerometers to capture three(x, y, z) degrees of motion which are mounted directly on the PCB; and the light sensor mounted on the phone. Each sensor in the sensor box has a unique ID. The sensor box polls its sensors periodically as quick as it can and stores the most current value in an array. 2.2 Sensor Module The sensor module queries the sensor box (once per second) and returns the data to the decision module. Standard RS232 serial connection issued to establish the connection between the microcontroller and the sensor module. At any time, the sensor module will query the sensor box for a particular sensor data using the unique ID of that sensor. When a query is processed, the microprocessor will respond with the 47
  3. 3. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print), ISSN 0976 - 6375(Online), Volume 5, Issue 2, February (2014), pp. 46-55 © IAEME most recent reading of the sensor by doing a table lookup rather than actually polling the sensor. This allows the microcontroller to respond immediately. 2.3 Decision Module The decision logic provides the logic used in state management. The sensor module transfers the sensor data to the decision module. It queries the sensor data and the electronic calendar of the user to determine the state of the user and issues phone actions. Sensor value history (of up to 10 minutes) is stored to help determine the user’s state so that the transitions can be done smoothly. 2.4 Action Module This module is controlled by the decision module and is responsible for issuing changes in setting and operation on the phone. The basic operations supported by the module are: 1. Ringer control: off/low/medium/high 2. Vibrate control: on/off 3. Send an SMS to the caller 4. Make call suggestions 5. Provide access to the electronic calendar. 2.5 Problem With distributed systems and mobile computing, privacy is a major concern and it becomes complicated by pervasive computing [5]. With context aware devices, the information about user’s movements, behavior patterns and habits becomes more knowledgeable with mechanisms like location tracking, smart spaces and use of surrogates. The knowledge of this information is necessary for successful proactivity and self-tuning but, the use of this information should be strictly controlled. If not, it can be put to a variety of unsavory uses ranging from targeted spam to blackmail. This may prevent knowledgeable users from using a pervasive computing system. To be reliable on infrastructure, the user must trust the infrastructure to a considerable extend. Also the infrastructure should be confident of the user’s identity and authorization level before responding to the request. 3. HOMEROS To support the computational needs of mobile users we need to maximize the use of available resources and minimize user distraction which is caused by dynamic and frequent changes in the resources. The middleware architecture HOMEROS satisfies these needs [6]. It allows high flexibility in the environment of heterogeneous devices and users. It consists of three layers- the core component management layer, the extended component service layer, and the system support layer. This architecture was designed to provide maximum flexibility in supporting service providers and user requirements. 48
  4. 4. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print), ISSN 0976 - 6375(Online), Volume 5, Issue 2, February (2014), pp. 46-55 © IAEME Figure 1: SenSay architecture depicting 5 modules 3.1 Core Component Management This module consists of core ORB components and interrelated set of basic services which allows collaboration of service component development vendors. It allows dynamic loading, unloading, transferring, creating, and destroying the components in the upper layers. HOMEROS offers seven basic services: Event Manager, Component Repository, QoSAdaptation, Configuration Manager, Resource Manager, and Security manager. All of the services could be built on top of existing middleware services to support HOMEROS service architecture. 3.2 Event Manager The event manager distributes events and implements a decoupled communication model based on suppliers and consumers for enhanced reliability and stability. It has a single entry point and one or more event factories. Applications can define and register their own factories for state changes. If a supplier fails, the service can automatically replace all the corresponding information entries from the factory and scheduling queue without disrupting the system. The current event manager implementation uses CORBA’s event service. 3.3 Component Repository The component repository stores information (name, type, services, and so on) about all the components available in the middleware and allows applications and component manager browse and retrieve entities on the basis of specific attributes. The current component repository uses standard SQL for query component entities. 49
  5. 5. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print), ISSN 0976 - 6375(Online), Volume 5, Issue 2, February (2014), pp. 46-55 © IAEME 3.4 Context Manager Mobile agent collects overall user information and hardware, software information for resource management, and the context manager provides proactive services using that information. It prepares personal data, user preferences, device characteristics, and organized data automatically available to other components. 3.5QoS Adaptation This module supports resource manager and configuration manager. It collects various devices monitoring information from resource manager, and then provides QoS information to the configuration manager. 3.6 Configuration Manager The configuration manager configures the new components and improves the component performance by optimizing system resource usages. It supports mobile agent for collecting environment information and running specific processes. 3.7 Resource Manager Resource manager allows dynamic reallocation of resources based on resource awareness. The middleware platform allows the system to be aware of the available configuration resources. It performs both self-inspection and self-adaption. 3.8Security Manager HOMEROS proposes platform registration and authentication, and stability evaluation of authentication. Registration can be done without user’s intervention, and platform authentication is to certify that relevant platform is reliable. Registered agents take part in the authentication process for other unregistered agents and platform. 4. DYNAMIC DISCOVERY AND INVOCATION MECHANISM Ubiquitous computing environment involves a variety of devices of different capabilities. The middleware takes a crucial role for efficiently coordinating the components and providing proper services. In the previous section we have read about a middleware architecture called HOMEROS. Figure 2: The HOMEROS Architecture 50
  6. 6. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print), ISSN 0976 - 6375(Online), Volume 5, Issue 2, February (2014), pp. 46-55 © IAEME All the service providing components in an environment registers them with the system, providing information about the services they provide [7]. Service proxy agent represents the service of the components in the world of agents. All the services that provide the same functionality are wrapped by a service proxy. The service proxy is also registered with the system. Fig3 illustrates the mechanism for dynamic discovery and invocation of services. All the providers of a specific service and the proxy of that service register to the system (step A and step B). The smart room agent (SRA) which acts as a gateway for all the services receives the service invocation request from the client (step 1). The SRA then searches the registry for a proxy for such a service (step 2) and forwards the request to it (step 3). The service proxy on receiving a request checks the registry for available service providers (step 4). The proxy then activates a selection algorithm to decide to which provider to forward the request (step 5). Figure 3: Dynamic discovery and invocation mechanism 5. MOBILE GAIA Mobile Gaia [8] [9] [10] is the middleware for ad-hoc pervasive computing. It is a service based middleware that integrates resources of various devices. Ad-hoc pervasive computing is a cluster of personal devices that can communicate and share resources among each other. The user 51
  7. 7. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print), ISSN 0976 - 6375(Online), Volume 5, Issue 2, February (2014), pp. 46-55 © IAEME can program the cluster through a common interface. This cluster is also referred as a personal active space. Mobile Gaia contains services which help in discovery of devices that form the personal space, maintaining the composition of the cluster, sharing resources among devices in the cluster and facilitate communication. It provides an application framework for development of applications for the device collection. This decomposes the application into smaller components that can run on different devices in this collection. The services are present in two roles-coordinator and client. The core services make up the kernel of Mobile Gaia and enable the devices in the cluster to share resources and data seamlessly. The component management core provides necessary low level support for creating and managing components. 5.1 Service Deployment Framework Services in Mobile Gaia are implemented as components and this framework forms a container for these service components. It installs new service components, load and unload components and remove components when they are no longer needed. It is based on the “What You Need Is What You Get” (WYNIWYG) model. When a service is deployed, it specifies the components that are to be loaded in the coordinator and client roles. Whenever a device changes roles from coordinator to client or vice versa, the cluster management service notifies the service deployment framework of this change. 5.2 Discovery and Cluster Management Service Mobile Gaia has the ability to dynamically discover nearby personal devices and bootstrap a personal active space on the discovered devices. Discovery protocols like Bluetooth or IrDA are used. When new personal devices are within range, they are added to the personal active space on the fly. Depending on the capabilities of the new device, the framework loads appropriate components and runs additional services that allow the system to utilize the device’s capabilities. Once a device is out of range, it is automatically removed from the personal active space. It also maintains a database of active devices and services in the personal active space and a list of components running locally on the device. 5.3 Event Service The event service is used to send events among devices in the cluster. These events include updates to location information; heartbeat messages events, it informing that the device is part of the cluster and location-based events. Events are implemented using event channels. When an application wants to send creates an event channel in the host device. The event service of the host device registers the event channel with the coordinator. The event service in the coordinator maintains a list of event channels in the cluster. When an application wants to subscribe to an event channel, it queries the local event service which in turn queries the event service of the coordinator for event channels. The event service of the coordinator acts like a repository that contains information about various event channels in the cluster. 5.4 Location Service The location service enables location awareness in the device cluster. Different devices in the cluster have different location-sensing technologies such as GPS, WiFi, RFID, Ubisense etc. It fuses location information from different devices and arrives at a probabilistic estimate of the location information. This location information is conveyed to all devices in the cluster. This cooperative approach to sharing location information enables devices to be location-aware in heterogeneous location-sensing environments. It supports a spatial database that contains a spatial model of the 52
  8. 8. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print), ISSN 0976 - 6375(Online), Volume 5, Issue 2, February (2014), pp. 46-55 © IAEME physical world. Spatial information is required for route planning, finding points-of interest and for location-based triggers. 5.5 Security Service Security which is essential in personal active spaces can be divided into two main parts – authentication and access control. Authentication is needed to ensure that only authorized devices are allowed to connect to a user’s personal active space, and a device can only connect to personal spaces approved by its owner. Access control identifies what information or resources a device can share with a specific space name. Authentication is done using public key. For access control, users are allowed to create simple security policies on the personal device, which specify what services may run on the device when connected to a certain space. 6. DISCUSSION In this paper we have discussed about an application of ubiquitous computing, middleware architecture and the mechanism for dynamic discovery and invocation. The application SenSay combines sensory data, user information and history information to create a context-aware phone. The smart features provided by the phone aim to improve the overall usability of the phone. It either notifies the user of an incoming call by adjusting ringer and vibration settings or eliminates unwanted interruptions. The middleware HOMEROS provides high flexibility by adopting a hybrid network model and dynamically configurable reflective ORB. All major ubiquitous computing projects have established sophisticated middleware architectures. These architectures however face challenges of integrating large number of perceptual components. These challenges require establishment of intelligent methods for discovering, invoking and managing distributed components. Dynamic Discovery and invocation mechanism registers all the service proxies and their related services available in a smart space. It then provides services to the clients on request. The middleware Mobile Gaia is a service based middleware which provides dynamic discovery of near by devices. The services in this architecture are decomposed in two roles- coordinator and client. It also supports an application framework that can decompose an application into components. A device can act either as a coordinator or as a client. Table 1 summarizes the various system models studied in the paper. 7. CONCLUSION AND FUTURE SCOPE Ubiquitous computing is an emerging field. Two decades ago, when the term was coined, Mark Weiser’s vision of ubiquitous environments was too far ahead of its time. The hardware technology that was needed to achieve this did not exist. But with continuous advancement in the field of wireless technology, microelectronics and World Wide Web, creating ubiquitous environments became possible. We can presently see some efforts involved in the construction of ubiquitous applications in domain areas such as ambient intelligence, pervasive healthcare, ubiquitous learning and urban spaces. The future projects in this field are smart homes [11] and ubiquitous city [12]. 53
  9. 9. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print), ISSN 0976 - 6375(Online), Volume 5, Issue 2, February (2014), pp. 46-55 © IAEME Table 1: SUMMARY TABLE Functionality SenSay HOMEROS Discovery and Invocation Mechanism Mobile Gaia Components It is a context-aware mobile phone that adapts dynamically to the user’s environment and modifies its behavior. It is a middleware which is designed to maximize the use of available resources and minimize user distraction caused by dynamic and frequent changes in the resources for mobile users. It is used to discover the devices in a smart space and register them with the system which provides information about their services. It is the middleware for ad-hoc pervasive computing that integrates the resources of various devices. Security Sensor Box, Sensor Module, Decision Module, Action Module and Phone Module. If not controlled, information about user’s movements and behavior can be put to a variety of unsavory uses. Three LayersIt provides security Core Component through platform Layer, Extended registration and Component Service authentication. Layer, System Support Layer. Service providing components, Service proxy agents and Knowledge base server. Service Development Framework, Discovery and Cluster Management, Event, Location, Context and Security Service. -- Future Scope Mechanisms that provide complete security to users’ information should be deployed. The proposed architecture needs to be compared with other middleware architectures proposed for PDAs and mobile devices. -- Security is Future work will provided by be address authentication and challenges posed access control. by mobility of nodes at application/servic e layer. REFERENCES [1] [2] [3] [4] [5] [6] Weiser, M. (1991).The computer for the 21st Century.In Scientific American, vol. 265, no. 3, 1991, pp. 66-75. Mattern, F. ,”The Vision and Technical Foundations of Ubiquitous Computing”, UPGRADE Vol II, No 5, 2001. Ferscha, A. , “What is Pervasive Computing?”. Siewiorek, D.;Smailagic, A. ; Furukawa, J. ; Moraveji, N. ; Reiger, K. , “SenSay: A contextaware mobile phone”,Seventh IEEE International Symposium on (2003), pp. 248-249,. Satyanarayanan, M.,”Pervasive computing: vision and challenges”, IEEE Personal Communications, 2001. Han, W. ; Bong, Y. ; Yoon ; Youn, H. ; Cho, W ,”A new middleware architecture for ubiquitous computing environment”, Proceedings of the Second IEEE Workshop on Software Technologies for Future Embedded and Ubiquitous Systems, 2004 IEEE. 54
  10. 10. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print), ISSN 0976 - 6375(Online), Volume 5, Issue 2, February (2014), pp. 46-55 © IAEME [7] [8] [9] [10] [11] [12] [13] [14] Pandis, I. ; Soldatos, J. ; Paar, A. ; Reuter, J. ; Carras, M. ; Polymenakos, L.; ”An Ontologybased framework for dynamic resource management in ubiquitous computing environment”, Proceddings of the second International Conference on Embedded Software and Systems, 2005 IEEE. Chetan, S. ;Muhtadi, J. ; Campbell, R., “Mobile gaia: A middleware for ad-hoc pervasive computing”, 2004 IEEE. Roman, M.; Hess, C.; Cerqueira, R.; Campbell, R.; Narhstedt, K., "Gaia: A middleware infrastructure to enable active spaces" IEEE Pervasive Computing Magazine, vol. 1, pp. 74-83, 2002. Chetan, S.;Muhtadi, J. ; Campbell, R.,”A middleware for enabling personal ubiquitous spaces”. Alam, M.;Reaz, M. ; Ali, M.,“A review of smart homes- past, present and future” IEEE Transactions on System, Man and Cybernetics-Part C: Applications and Reviews, Vol 42, No. 6, November 2012. Shin, D.,”A realization of pervasive computing: ubiquitous City”2010 IEEE. S.Mohan Raj, “Feasibility Study of Pervasive Computing Approach for Energy Management in Mobiles”, International Journal of Computer Engineering & Technology (IJCET), Volume 3, Issue 3, 2012, pp. 312 - 319, ISSN Print: 0976 – 6367, ISSN Online: 0976 – 6375. Aakash Shah, Gautami Nadkarni, Namita Rane and Divya Vijan, “Ubiqutous Computing Enabled in Daily Life”, International Journal of Computer Engineering & Technology (IJCET), Volume 4, Issue 5, 2013, pp. 217 - 223, ISSN Print: 0976 – 6367, ISSN Online: 0976 – 6375. 55