Decentralized Approach for Distributed Service Environments JIN Yuhan, TIAN Hui and Liu Zemin Key Laboratory of Universal Wireless Communication, Ministry of Education Beijing University of Posts and Telecommunications (BUPT) 10 Xitucheng Road, Beijing, P.R.China 100876 Email: jinyuhan.bupt@gmail.com, {tianhui,liuzemin}@bupt.edu.cn Abstract— Universal Service Terminal(UST) has been proposed as a novel virtual distributed terminal supporting pervasive applications. It provides proactive services via aggregating diverse capabilities of devices around the user and auto-configuring them accordingly to the capabilities, availability, user’s preference and application context, which results in Always the Best Experience (ABE). The issues related to concept, architecture, design, and simulation are addressed and some basic procedures are introduced. Moreover, the results of simulation comparing two scenarios are given to validate the mechanisms designed in UST. Keywords: PAN, UST, terminal, dynamic I. I NTRODUCTION Emerging technologies for short-range personal communication [1] and the ever-growing number of wireless terminals, such as smart phones, PDAs and laptops etc, both raised the need to set up, configure and reconfigure personal area networks (PANs) [2] in an easy and ergonomic way [3][4]. We envision a future cyberworld where pervasive or ubiquitous services will be reality. These kinds of services are mainly supported via pervasive facilities embedded in the living space surrounding the human beings and provided proactively and adaptively according to context and preference. In order to enable smart and portable devices surrounded user to work cooperatively to represent the services, we have proposed a novel concept called as Universal Service Terminal (UST) to present the characteristics of pervasive terminal environment and support the deployment of ubiquitous application, whether locally or remotely. UST is a virtual terminal, which can utilize pre-defined transport interconnection established by wireless or wired network technologies, e.g. PAN, BAN, VAN, etc., and dynamically aggregate components with one or more terminal capabilities. The components in UST range from cellular phones, apparatuses, laptops, PC, vehicle devices to gadgets like sensors and actuators. UST is also an intelligent terminal network, and it supports autoconfiguration of the capabilities according to user’s preference and temporal service context, which aims to provide users with Always the Best Experience (ABE) [5] mode services. From the point of view of applications and core networks, UST can be treated as a universal auto-configured entity rather than complex combination of components in terms of deployment and development. However, little is known about the actual performance of the combination, and no attempt has previously been made to directly compare the UST’s performance in different scenarios in a realistic manner. In this paper, we address the dynamic aggregation and component invocation of UST, by which the needs of ’ABE’ mode service provisioning can be fulfilled. Besides, we analyze the performance of UST in different scenarios and explain the design choices that account for the performance. The paper proceeds as following. In section II, the definition and architecture of UST are introduced. Section III shows the basic mechanisms designed for UST. In section IV, simulation is given to validate the concept and evaluate the performance. Finally, section V concludes the paper and discusses the future work. II. D ISTRIBUTED T ERMINAL S YSTEM A. Basic Concept of UST UST is an application layer middleware which can combine a set of ambient devices, i.e. laptop, PDA, TV. These devices have their own capabilities respectively and can use each other’s capabilities to provide a complex multimedia service, since in some cases it is difficult for an individual device to provide all the capabilities needed in a multimedia service. The combination of devices is based on user’s preference and the ubiquitous context information. UST can also cognize the changes of devices and environment and make re-configuration of the devices automatically. In this way, the combined devices act as a virtual terminal for the user and can provide the best service. B. Universal Service Terminal Architecture For the sake of proposing a network-supported terminal service environment, the design of UST architecture refers two kinds of service models, which are MExE [6] and OSA [7]. According to MExE, UST provides a service execution environment and interaction mechanisms for terminals, networks and service providers; by bringing in OSA’s framework mechanism, UST provides facilities for a distributed terminal system. We have proposed the UST architecture (Fig.1) for the distributed terminal system, which is mainly composed of Framework (FW), Execution Environment (EE), Capability Server(CS) and Aggregation Control (AC). FW takes the responsibility of the organization and information management 1144 1-4244-1457-1/08/$25.00 © IEEE This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE CCNC 2008 proceedings. Fig. 1. Architecture of UST of devices, as well as service composition and adaptation according to the application requirements. EE is configured by FW dynamically to support provision of composite services and harmony between the co-operative devices. In the system all the devices have the capability servers which abstract and encapsulate different service capabilities, such as video, audio and network communication. Also, AC may be regarded as a SC which takes charge of the registration to UST. FW and EE provide mechanisms to construct the virtual terminal, by which the management, configuration and service deployment will be facilitated in complex pervasive environment. C. Devices deployed with UST By using the UST to set up a personal area network, each device should be deployed with UST. But not all of the components in the UST architecture are necessary for each device. Depending on what capabilities devices have, we could divide them into two categories. 1) First level device. This kind of devices have FW. They can organize and manage the information of other devices and also takes responsibility of service composition and adaptation. So these devices are necessary in the process of setting up a personal area network. Devices like PDA, mobile phone, computer, etc. can be seen as the first level devices. 2) Second level device. These devices can provide some basic capacities they have for a multimedia application, which only rely on the first level devices to accomplish the task. Microphone, video box, TV, etc. belong to the second level devices. III. O RGANIZATION M ECHANISM To ensure the reliability and scalability of the system, we introduce some mechanisms in the UST procedure, e.g. the aggregation of the devices, attaching/detaching from the system, invocation of the capability servers and migration of the framework functionality. By facilitating mechanisms mentioned above, the devices can work cooperatively to provide the most appropriate capability servers under ambient environment and user preference. 1) The first step of the aggregation of the devices is to construct a minimum UST system. A first level device activates its Framework and Execution Environment functionalities, then registers its capability servers to Framework. After the minimum UST system has been established, other devices which want to join in the system begin to register their capabilities respectively. 2) When the user’s context information changes, the attaching/detaching procedure will occur. In the procedure, some devices modify the information registered to Framework and launch or shut down the relevant capability servers. Meanwhile, Framework updates the capability server information stored in the database and re-configures Execution Environment. Due to the changes of the capabilities provided by the system, the application running in Execution Environment has to react to ensure the seamless service provision to the user. 3) The invocation procedure consists of the discovery, acquisition and invocation of capabilities. First, the application requests the capability servers depending on the user preference, available capabilities and current system environment. Next, according some specific resource allocation policies, Framework distributes the most appropriate capabilities to the application. Then, the application acquires the invocation approaches of the capability servers and accesses them via remote method invocation. 4) Framework migration procedure occurs when a device is more suitable to be the master of the system than the current one. The candidate activates its Framework and Execution Environment functionalities, copies the capability server database and runtime Execution Environment information and informs all the devices within the system the migration of the framework. Then, the old master device shuts down its Framework functionality without influencing the application running in the system. IV. S IMULATION We use OPNET [8], a system simulation tool, to simulate the UST environment. The overall goal of our experiments are to measure the ability of UST to react to environment change when devices communicate among each other. In this section we first describe the simulation model. Then two kinds of simulation scenarios are presented to evaluate the performance of UST and a comparison is made between them. Finally, we analyze the results of the simulation. A. Simulation Model As described above, devices in the UST system can be divided into two kinds of level: the first level devices and the second level devices. Correspondingly, we use two kinds of node models to describe different devices. Figure 2 shows the first level devices’ node model. In figure 2, EE module stands for execution environment; FW module stands for the framework; AC module stands for the aggregation control; CS module stands for the capacity server. The capabilities contained in the devices have been set before simulation. Mobility module is used to control the node model moving in the network and I/O module is used to deal with the communication between node models. Figure 3 shows the second level devices’ node model. Second level devices have no functions of framework and 1145 This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE CCNC 2008 proceedings. Fig. 4. Fig. 2. The first level devices’ node model execution environment, so the model of them in figure 3 is not have EE module and FW module. Fig. 3. The second level terminals’ node model In the simulation, we only pay attention to some typical applications in a video phone scenario. So only the capabilities related with video phone application were referred. The simulation needs seven capabilities: User interface, SIP proxy, RTP transmit, Audio-in, Audio-out, Video-in, Video-out. Video phone application will use these seven capabilities during the simulation. We assume that video phone application must have the first five capabilities listed above. In the case of no video-in and video-out capabilities, the video phone application only performs audio service. B. Simulation Environment We first introduce a simple scenario, shown as figure 4. This scenario contains a PC and some affiliated equipment, including a camera, a sound box and a microphone. In the simulation of video phone application, we will only take one end into account and suppose the other end of the communication is a powerful device that can satisfy any need of capability for a multimedia communication. The devices configurations in figure 4 are shown in table 1. Under the present configuration, user can only initiate one video phone communication instance each time, for that the camera, sound box and microphone can only be used for A simple scenario one service instance meantime. This scenario contains one first level device which is PC.The PC has FW and can initiate a construction process of UST and sponsor one or more video phone communication instances via the execution environment. In the process of the simulation, if any device in the network will not move at all, the configuration of UST will not change. Under this situation, the UST can maintain a video phone communication instance continuously. In case that a device is departing from the UST and there is no other device substituting to provide the same capability, the communication will stop. In figure 4, we set a move track for the microphone which will move along the track clockwise at a constant speed. The cover range of the PC is within the four panes as shown in the figure 5. Once the microphone goes out of the cover range area, it will depart from the UST system. Reversely, if the microphones comes back to the cover range area of the PC, it will be detected by PC and can join in the UST system again. We set the simulation time as one hour. During the simulation, PC will initiate 20 times video phone communication instances to construct a UST system. The complicated scenario is the same as the simple scenario except that it has more devices, especially more first level devices. Figure 5 shows the complicated scenario. Besides containing the same devices as the simple scenario has, this scenario also has a wireless laptop, which is configured with a microphone, a PDA, a TV and an advanced sound box. Just like the simple scenario, PC will initiate a construction of the UST system. And the PDA, laptop and common microphone will move along their own tracks that have been set at the beginning of the simulation. They all move at a constant speed. The simulation time is set as one hour and there will be 20 times initiation communication instance to construct a UST system sponsored by the PC. The PC’s cover range is within 9 panes. C. Simulation Results In this section we will analyze the results of our simulation. We devote our mind on the aggregation and separation of the devices, the dynamic variety of the capability, the dynamic 1146 This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE CCNC 2008 proceedings. TABLE I T HE TERMINALS ’ CONFIGURATION Terminal name PC Camera Common sound box Advance mike Fig. 5. Terminal level First level Second level Second level Second level Basic terminal or not Yes No No No Capacity UI, SIP, RTP, Video-out Video-in Audio-out Audio-in Fig. 7. Existing communication instance number Fig. 8. Capacities used in the simulation process A complicated scenario support for the communication instance to compare the performance of UST system in two different scenarios. Firstly, Figure 6 shows the number of devices which can be used during the simulation. We could notice that the number of the available devices is variable. That’s because some devices in UST are moving during the whole process of simulation. Fig. 6. Available devices’ number during the simulation Figure 7 shows the effect caused by the number of available devices on the existing communication instances. Since there are more devices to be used in the complicated scenario than that in the simple scenario, the max number of communication instances meantime in the complicated scenario is larger than that in the simple scenario. We can conclude that the capability of UST system could be enhanced when there are more available devices. As the moving of the devices during the simulation, the available capability in the UST system is also variable. Figure 9 shows the number of capabilities used in the UST system. From the simulation figures above, we can get the results that UST has a better performance with more available devices. In the simple scenario the performance of UST is lower than that in the complicated scenario, and the performance is almost the same as the devices without UST which means that it has little enhancement with UST. Because in the simple scenario, the number of devices is very limited, if the communication instance is lack of one device, there is no other device could replace it to provide the same capability, the communication instance has to stop running. With the number of devices increasing, the support capability for the communication instance will also be strengthened. In the complicated scenario, it has more devices than that in the simple scenario. The basic terminal can utilize the idle terminals’ capabilities to support the video phone application. If the device’s cover range is extended and the device’s number increases, the performance of UST will be much more excellent than a common device. V. R ELATED W ORK In recent years, pervasive research on PAN technologies has been developed rapidly. MOBY [9] extends the Jini architecture to enable the exchange of services and data in a mobile peer-to-peer manner. The motivation of MOBY is to provide a seamless network for the user, integrate a wide rang of wired and wireless components into the network and provide open 1147 This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE CCNC 2008 proceedings. APIs for developers to ease the application integration. In [10] an approach for peer-to-peer capable mobile communication environment was presented. This environment was based on a concept of Personal Trusted Device (PTD) and its operation on some very local communication environment. A PTD constantly scans the changing environment for other devices. And the implementation is restricted to the Bluetooth communication technology as it allows limited neighborhood sizes. In [11] introduces the notion of Virtual Devices encapsulating and hiding multiple devices in the Personal Area Network (PAN) of the user to provide one interface. Meanwhile a middleware is proposed for the realization of Virtual Device.The Ninja project [12] targets robust, scalable, distributed internet services for highly heterogeneous devices. Ninja consists of the following components: Bases, which are powerful workstation cluster environments; Units, which are service access devices; Active Proxies, for unit or service based adaptation, and Paths, which tie together units, services, and active proxies. It has been shown that the Ninja architecture provides the needed flexibility, facilitates application integration, and rapid service evolution. Our approach mainly focuses on encapsulating the diverse capabilities of ambient devices and taking user preference into account. The proposed UST can be regarded as a middleware by which the status of the system and the information of the capabilities are hidden from the running application. [5] P. Zhang, Y. Ji, Y. Zhang, ”MUSE: a vision of service and architecture for beyond 3G networks,” Proc. of the International Symposium on Autonomous Decentralized Systems (ISADS’2005), pp.109-115, 2005. [6] 3GPP specification TS 23.057. [7] 3GPP specification TS 29.198. [8] Available Online. http://www.opnet.com/. [9] T. Horozov, A. Grama, V. Vasudevan and S. Landis, ”MOBY- A Mobile Peer-to-Peer Service and Data Network,” in Proceedings of the 2002 International Conference on Parallel Processing (ICPP02), 2002. [10] J. Porras, P. Hiirsalmi and A. Valtaoja, ”Peer-to-peer Communication Approach for a Mobile Environment,” in Proceedings of the 37th Hawaii Internation Conference on System Sciences, 2004. [11] T. E. Jonvik, P. Engelstad and D. van Tanh, ”Building a Virtual Device on Personal Area Network,” in Proceedings of the 2nd International Conference on Communications, Internet & Information Technology, Scottsdale, Arizona, Nov 17-19, 2003. [12] S. D. Gribble, M. Welsh, R. von Behren, E. A. Brewer and B. Y. Zhao, ”The ninja architecture for robust internet-scale systems and services,” Computer Networks, 35(4):473-497, 2001. VI. C ONCLUSION In this paper, we presented an innovative approach UST, which can provide user the best experience in PAN. The UST can make good use of the idle devices in the PANs to work cooperatively and use each other’s capabilities. This can not only enhance the performance of common devices, but also take full advantages of the present resources. UST hides the individual devices of the PAN and abstracts the capacities of these devices for user to use. The simulation results also clearly shows that it is very suitable for the dynamic environment in the distributed manner. ACKNOWLEDGMENT This work is supported by National High Tech R&D Program of China, No. 2006DFA11050 and National Natural Science Foundation of China (NSFC), No. 60502035. We thank the reviewers for their many valuable comments and our colleagues for their suggestion and encouragement. R EFERENCES [1] P. Johansson and Ericsson Research, ”Bluetooth: An Enabler for Personal Area Networking,” IEEE Network, Sep 2001. [2] E. L. Nygren, S. J. Garland and M. F.Kaashoek, ”PAN: A HighPerformance Active Network Node Supporting Multiple Mobile Code Systems,” Proceedings of the 1999 IEEE 2nd Conf, on Open Architecture and Network Programming,1999. [3] K. Sethom, M. Sabeur and B. Jouaber, ”Distributed Virtual Network Interfaces to support intra-PAN and PAN-to-infrastructure Connectivity,” IEEE Globecom 2005. [4] C. Bisdikian, P. Bhagwat and B. P. Gaucher, ”WiSAP: A Wireless Handheld Personal Access Network for Computing Devices,” IEEE Personal Communications, December 1998. 1148 This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE CCNC 2008 proceedings.