Lecture Notes in Computer Science Commenced Publication in 1973 Founding and Former Series Editors: Gerhard Goos, Juris Hartmanis, and Jan van Leeuwen
Editorial Board David Hutchison Lancaster University, UK Takeo Kanade Carnegie Mellon University, Pittsburgh, PA, USA Josef Kittler University of Surrey, Guildford, UK Jon M. Kleinberg Cornell University, Ithaca, NY, USA Alfred Kobsa University of California, Irvine, CA, USA Friedemann Mattern ETH Zurich, Switzerland John C. Mitchell Stanford University, CA, USA Moni Naor Weizmann Institute of Science, Rehovot, Israel Oscar Nierstrasz University of Bern, Switzerland C. Pandu Rangan Indian Institute of Technology, Madras, India Bernhard Steffen TU Dortmund University, Germany Madhu Sudan Microsoft Research, Cambridge, MA, USA Demetri Terzopoulos University of California, Los Angeles, CA, USA Doug Tygar University of California, Berkeley, CA, USA Gerhard Weikum Max-Planck Institute of Computer Science, Saarbruecken, Germany
6294
Sergey Balandin Roman Dunaytsev Yevgeni Koucheryavy (Eds.)
Smart Spaces and Next Generation Wired/Wireless Networking Third Conference on Smart Spaces, ruSMART 2010 and 10th International Conference, NEW2AN 2010 St. Petersburg, Russia, August 23-25, 2010 Proceedings
13
Volume Editors Sergey Balandin Nokia Research Center Office of CTO Itamerenkatu 11-13 00180 Helsinki, Finland E-mail:
[email protected] Roman Dunaytsev Tampere University of Technology Department of Communications Engineering Korkeakoulunkatu 10 33720,Tampere, Finland E-mail:
[email protected] Yevgeni Koucheryavy Tampere University of Technology Department of Communications Engineering Korkeakoulunkatu 10 33720, Tampere, Finland E-mail:
[email protected]
Library of Congress Control Number: 2010931611 CR Subject Classification (1998): C.2, H.4, D.2, K.6.5, D.4.6, H.3 LNCS Sublibrary: SL 5 – Computer Communication Networks and Telecommunications ISSN ISBN-10 ISBN-13
0302-9743 3-642-14890-5 Springer Berlin Heidelberg New York 978-3-642-14890-3 Springer Berlin Heidelberg New York
This work is subject to copyright. All rights are reserved, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, re-use of illustrations, recitation, broadcasting, reproduction on microfilms or in any other way, and storage in data banks. Duplication of this publication or parts thereof is permitted only under the provisions of the German Copyright Law of September 9, 1965, in its current version, and permission for use must always be obtained from Springer. Violations are liable to prosecution under the German Copyright Law. springer.com © Springer-Verlag Berlin Heidelberg 2010 Printed in Germany Typesetting: Camera-ready by author, data conversion by Scientific Publishing Services, Chennai, India Printed on acid-free paper 06/3180
Preface
We welcome you to the joint proceedings of the anniversary 10th NEW2AN 2010 (Next Generation Teletraffic and Wired/Wireless Advanced Networking) and Third ruSMART 2010 (Are You Smart) conferences held in St. Petersburg, Russia during August 23–25, 2010. Originally the NEW2AN conference was launched by ITC (International Teletraffic Congress) in St. Petersburg in June 1993 as an ITC-Sponsored Regional International Teletraffic Seminar. The first implementation was entitled “Traffic Management and Routing in SDH Networks” and was hosted by R&D LONIIS. In 2002 the event received its current name, NEW2AN. In 2008 NEW2AN was joined by a new counterpart in smart spaces, ruSMART, hence boosting interaction between researchers, practitioners and engineers from different areas of ICT. This year, in its 10th implementation, NEW2AN/ruSMART is an established conference with a unique cross-disciplinary mix of telecommunications science in Russia. NEW2AN/ruSMART has always featured outstanding keynotes from universities and companies from Europe, USA and Russia. The 10th NEW2AN technical program addressed various aspects of nextgeneration network architectures. New and innovative developments for enhanced signaling protocols, QoS mechanisms, cross-layer optimization, traffic characterization were also addressed within the program. In particular, issues of QoS in wireless and IP-based multiservice networks were dealt with, as well as financial aspects of future networks. It is also worth mentioning that emphasis was place on wireless networks, including, but not limited to, cellular networks, wireless local area networks, personal area networks, mobile ad hoc networks, and sensor networks. The Third Conference on Smart Spaces, ruSMART 2010, provided a forum for academic and industrial researchers to discuss new ideas and trends in the emerging area of smart spaces that creates new opportunities for making fully customized applications and services for the users. The conference brought together leading experts from top affiliations around the world and there was active participation and strong interest from Russian attendees with a good reputation for high-quality research and business in innovative service creation and applications development. This year the technical program of both conferences benefited from two keynote speakers: – Vladimir Gorodetsky, St. Petersburg Institute for Informatics and Automation of Russian Academy of Sciences, Russia – Ian Oliver, Nokia Research Center, Finland – Alexey Vinel, St. Petersburg Institute for Informatics and Automation of Russian Academy of Sciences, Russia
VI
Preface
We wish to thank the Technical Program Committee members of both conferences and associated reviewers for their hard work and important contribution to the conference. This year the conferences were organized in cooperation with the FRUCT Program, ITC (International Teletraffic Congress), IEEE, Tampere University of Technology, Popov Society, and supported by NOKIA, Nokia Siemens Networks and Sententia Ltd. The support of these organizations is gratefully acknowledged. Finally, we wish to thank many people who contributed to the organization. In particular, Jakub Jakubiak (TUT) carried a substantial load of the submission and review process, the website maintenance, did an excellent job on the compilation of camera-ready papers and in the interaction with Springer. Many thanks go to Natalia Avdeenko, Ekaterina Antonyuk and Ekaterina Akimova (Monomax Meetings & Incentives) for their excellent local organization efforts and the conference’s social program preparation. We believe that the work done for the 10th NEW2AN and Third ruSMART conferences provided an interesting and up-to-date scientific program. We hope that participants enjoyed the technical and social conference program, the Russian hospitality and the beautiful city of St. Petersburg. June 2010
Sergey Balandin Roman Dunaytsev Yevgeni Koucheryavy
Organization NEW2AN International Advisory Committee Nina Bhatti Igor Faynberg Jarmo Harju Andrey Koucheryavy Villy B. Iversen Paul K¨ uhn Kyu Ouk Lee Mohammad S. Obaidat Michael Smirnov Manfred Sneps-Sneppe Ioannis Stavrakakis Sergey Stepanov Phuoc Tran-Gia Gennady Yanovsky
Hewlett Packard, USA Alcatel Lucent, USA Tampere University of Technology, Finland ZNIIS R&D, Russia Technical University of Denmark, Denmark University of Stuttgart, Germany ETRI, Republic of Korea Monmouth University, USA Fraunhofer FOKUS, Germany Ventspils University College, Latvia University of Athens, Greece Sistema Telecom, Russia University of W¨ urzburg, Germany State University of Telecommunications, Russia
NEW2AN Technical Program Commitee TPC Chair Roman Dunaytsev Mari Carmen Aguayo-Torres Ozgur B. Akan Khalid Al-Begain Sergey Andreev
Tampere University of Technology, Finland
University of Malaga, Spain METU, Turkey University of Glamorgan, UK State University of Aerospace Instrumentation, Russia Tricha Anjali Illinois Institute of Technology, USA Konstantin Avrachenkov INRIA, France Francisco Barcelo UPC, Spain Sergey Balandin Nokia, Finland Thomas M. Bohnert SAP Research, Switzerland Torsten Braun University of Bern, Switzerland Chrysostomos Chrysostomou University of Cyprus, Cyprus Nirbhay Chaubey Institute of Science and Technology for Advanced Studies and Research (ISTAR), India Ibrahim Develi Erciyes University, Turkey Eylem Ekici Ohio State University, USA Sergey Gorinsky Washington University in St. Louis, USA Markus Fidler NTNU Trondheim, Norway Giovanni Giambene University of Siena, Italy Stefano Giordano University of Pisa, Italy Ivan Ganchev University of Limerick, Ireland Vitaly Gutin Popov Society, Russia
VIII
Organization
Andreas Kassler Maria Kihl Tatiana Kozlova Madsen Yevgeni Koucheryavy Jong-Hyouk Lee Vitaly Li Leszek T. Lilien Saverio Mascolo Maja Matijaˇsevic Paulo Mendes Pedro Merino Ilka Miloucheva Dmitri Moltchanov Edmundo Monteiro Se´an Murphy Marc Necker Nitin Nitin Jaypee Mairtin O’Droma Evgeni Osipov George Pavlou Veselin Rakocevic Simon Pietro Romano Alexander Sayenko Dirk Staehle Sergei Semenov Burkhard Stiller Weilian Su Arvind Swaminathan Dmitry Tkachenko Vassilis Tsaoussidis Christian Tschudin Andrey Turlikov Kurt Tutschku Alexey Vinel Lars Wolf
Karlstad University, Sweden Lund University, Sweden Aalborg University, Denmark Tampere University of Technology, Finland (Chair) INRIA, France Kangwon National University, Republic of Korea Western Michigan University, USA Politecnico di Bari, Italy University of Zagreb, FER, Croatia INESC Porto, Portugal University of Malaga, Spain Salzburg Research, Austria Tampere University of Technology, Finland University of Coimbra, Portugal University College Dublin, Ireland University of Stuttgart, Germany University of Information Technology, India University of Limerick, Ireland Lulea University of Technology, Sweden University of Surrey, UK City University London, UK Universita’ degli Studi di Napoli “Federico II”, Italy Nokia Siemens Networks, Finland University of W¨ urzburg, Germany Nokia, Finland University of Z¨ urich and ETH Z¨ urich, Switzerland Naval Postgraduate School, USA Qualcomm Inc., USA IEEE St. Petersburg BT/CE/COM Chapter, Russia Demokritos University of Thrace, Greece University of Basel, Switzerland State University of Aerospace Instrumentation, Russia University of Vienna, Austria SPIIRAN, Russia Technische Universit¨ at Braunschweig, Germany
NEW2AN Additional Reviewers V.V. Govindaswamy C. Hoene J. Jakubiak
N. Nitin S. Poryazov M. Smirnov
N. Vassileva
Organization
ruSMART Executive Technical Program Committee Sergey Boldyrev Nikolai Nefedov Ian Oliver Alexander Smirnov Vladimir Gorodetsky Michael Lawo Michael Smirnov Dieter Uckelmann Cornel Klein Maxim Osipov
Principle Scientist, Nokia Research Center, Helsinki, Finland Senior Research Engineer, Nokia Research Center, Zurich, Switzerland Principle Scientist, Nokia Research Center, Helsinki, Finland Head of laboratory, SPIIRAS, St. Petersburg, Russia Head of laboratory, SPIIRAS, St. Petersburg, Russia Professor, Center for Computing Technologies (TZI), University of Bremen, Germany Fraunhofer FOKUS, Germany LogDynamics Lab, University of Bremen, Germany Program Manager, Siemens Corporate Technology, Germany Siemens CT, Embedded Linux, Russia
ruSMART Technical Program Committee Juha Laurila Sergey Balandin Alexey Dudkov Didem Gozupek Kim Geunhyung Reto Krummenacher Prem Jayaraman Michel Banˆ atre Sergei Bogomolov Gianpaolo Cugola Dimitri Konstantas Markus Taumberger Bilhanan Silverajan Aaron J. Quigley Pedro Merino Victor Govindaswamy
Nokia Research Center, Switzerland Nokia Research Center, Finland University of Turku, Finland Bogazici University, Turkey Dong Eui University, Republic of Korea STI Innsbruck, Austria Monash University, Australia IRISA, France LGERP R&D Lab, Russia Politecnico di Milano, Italy University of Geneva, Switzerland VTT, Finland Tampere University of Technology, Finland University College Dublin, Ireland University of Malaga, Spain Texas A&M University, USA
ruSMART Additional Reviewers M. Baqer J. Jakubiak
Y. Koucheryavy
IX
Table of Contents I
ruSMART
Smart Spaces Use Cases Extending Context Spaces Theory by Proactive Adaptation . . . . . . . . . . . Andrey Boytsov and Arkady Zaslavsky
1
Context-Awareness Enabling New Business Models in Smart Spaces . . . . Boris Moltchanov, Christian Mannweiler, and Jose Simoes
13
A Middleware Architecture for Safety Critical Ambient Intelligence Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Antonio Coronato and Giuseppe De Pietro
26
Ranking Algorithm by Contacts Priority for Social Communication Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Natalia Dudarenko, Juwel Rana, and K˚ are Synnes
38
CrysP: Multi-Faceted Activity-Infused Presence in Emerging Social Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Saguna, Arkady Zaslavsky, and Dipanjan Chakraborty
50
Smart-M3 Platform Multichannel System of Audio-Visual Support of Remote Mobile Participant at E-Meeting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Andrey L. Ronzhin, Victor Yu Budkov, and Alexey A. Karpov On-the-Fly Ontology Matching in Smart Spaces: A Multi-model Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Alexander Smirnov, Alexey Kashevnik, Nikolay Shilov, Sergey Balandin, Ian Oliver, and Sergey Boldyrev
62
72
Access Control in Personal Localized Semantic Information Spaces . . . . . Alexey Koren and Alexander Buntakov
84
Integration of an Answer Set Engine to Smart-M3 . . . . . . . . . . . . . . . . . . . . Vesa Luukkala and Jukka Honkola
92
A Video Monitoring Model with a Distributed Camera System for the Smart Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Andrey L. Ronzhin, Maria Prischepa, and Alexey Karpov
102
XII
Table of Contents
Smart Spaces Solutions Physical Approach in Smart Homes: A Proposition and a Prototype . . . . Michele Dominici, Giulio Zecca, Fr´ed´eric Weis, and Michel Banˆ atre SMEO: A Platform for Smart Classrooms with Enhanced Information Access and Operations Automation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Akshey Jawa, Sudip Datta, Sujeeth Nanda, Vishal Garg, Vasudeva Varma, Suresh Chande, and Murali Krishna Punaganti Venkata Creative Approach to the Design and Prototyping of Experimental Smart Spaces, Case Studies from the Interactive Environments Minor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tomasz Jaskiewicz, Walter A. Aprile, and Aadjan van der Helm Event Recognition via Energy Efficient Voting for Wireless Sensor Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mohamed Baqer
II
111
123
135
148
NEW2AN
Performance Evaluation Evaluation of Multi-service CDMA Networks with Soft Blocking . . . . . . . Villy B. Iversen Design of MPLS over DWDM Architecture for Unicast and Anycast Flows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Jakub Gladysz and Krzysztof Walkowiak Comparative Analysis of Sleep Mode Control Algorithms for Contemporary Metropolitan Area Wireless Networks . . . . . . . . . . . . . . . . . Alexey Anisimov, Sergey Andreev, Olga Galinina, and Andrey Turlikov Determining Normalized Measure of Dispersion for Evaluating the Performance of IEEE 802.11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Faisal Iradat and Sayeed Ghani Development of a System to Promote Eco-Driving and Safe-Driving . . . . Ryosuke Ando, Yasuhide Nishihori, and Daisuke Ochi
160
172
184
196 207
Performance Modeling Oligopoly Game Modeling for Cognitive Radio Environments . . . . . . . . . . Ligia C. Cremene, D. Dumitrescu, and R´eka Nagy
219
Table of Contents
Reducing the Number of States for Markovian Model of Optical Slotted Ring Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mateusz Nowak and Piotr Pecka Performance Modelling of Automatic Identification System with Extended Field of View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Troels Laursen, Hans Peter Mortensen, Nikolaj Bisgaard Pedersen, Ulrik Wilken Rasmussen, Tatiana K. Madsen, and Jens Dalsgaard Nielsen Performance Measures Computation for a Single Link Loss Network with Unicast and Multicast Traffics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Irina Gudkova and Olga Plaksina Realization of a Method of Matrix-Geometric Progression . . . . . . . . . . . . . Yuri Ryzhikov
XIII
231
242
256
266
Delay-/Disruption-Tolerant Networking and Overlay Systems Mobility Pattern Based Routing Algorithm for Delay/Disruption Tolerant Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ManKyu Park, SeokHong Min, SangHo So, DeockGil Oh, ByungChul Kim, and JaeYong Lee
275
Heuristic Congestion Control for Message Deletion in Delay Tolerant Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Lertluck Leela-amornsin and Hiroshi Esaki
287
The FDPOO: A Flexible Delivering Platform with at-One-time and On-time guarantees in Opportunistic Networks . . . . . . . . . . . . . . . . . . . . . . Yuan-Tse Yu, Chung-Ming Huang, and Hsing-Cheng Wang
299
A Distributed Telematics Peer-to-Peer (D-TP2P) Networking System for Service Discovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chung-Ming Huang, Chia-Ching Yang, and Chun-Yu Tseng
311
Empirical Predictor of TCP Throughput on a Multihop Wireless Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Anna Chaltseva and Evgeny Osipov
323
A Framework for Connectivity in Inter-working Multi-hop Wireless Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Oladayo Salami, Antoine Bagula, and H. Anthony Chan
335
XIV
Table of Contents
Integrated Wireless Networks Practical Vertical Handover Mechanisms between Satellite and Terrestrial Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MinSu Shin, ManKyu Park, DeockGil Oh, ByungChul Kim, and JaeYong Lee Geo-aware Handover of Mission Agents Using Opportunistic Communication in VANET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Edison Pignaton de Freitas, Tales Heimfarth, Fl´ avio Rech Wagner, Armando Morado Ferreira, Carlos Eduardo Pereira, and Tony Larsson
353
365
Comparison and Evaluation of the Most Efficient Mobility Management Protocols for Integrated Wireless Networks . . . . . . . . . . . . . . . . . . . . . . . . . . Asimakis Lykourgiotis and Stavros Kotsopoulos
377
Functional Model and Service Scenarios for QoS Enabled Mobile VoIP Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Kyu Ouk Lee, Sang Soo Lee, and Tae Whan Yoo
389
Heuristic Approaches to the Multi-objective Network Design and Optimization for Wireless Data Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . Chutima Prommak and Naruemon Wattanapongsakorn
398
Resource Management Call Admission Control in Single and Two-Tier Cellular Networks . . . . . . Manfred Schneps-Schneppe and Janis Sedols
411
Joint Admission Control and Resource Allocation for Multiuser Loading in LTE Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V. Venkatkumar, T. Haustein, and M. Faulkner
421
Data Traffic Scheduling Algorithm for Multiuser MIMO-OFDM System with the Throughput Maximization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Jerzy Martyna
436
Multimedia Communications Scalable Video Coding Based on Three-Dimensional Discrete Pseudo Cosine Transform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Eugeniy Belyaev, Timofey Sukhov, and Liu Kai
448
NTRULO: A Tunneling Architecture for Multimedia Conferencing over IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A. Amirante, T. Castaldi, L. Miniero, and S.P. Romano
460
Table of Contents
XV
Seamless Streaming Service Session Migration Support Architecture for Heterogeneous Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Geun-Hyung Kim and Bong-Hwan Lee
473
Author Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
485
Extending Context Spaces Theory by Proactive Adaptation Andrey Boytsov and Arkady Zaslavsky Department of Computer Science and Electrical Engineering Luleå University of Technology, SE-971 87 Luleå {Andrey.Boytsov,Arkady.Zaslavsky}@ltu.se
Abstract. Context awareness is one of the core features of pervasive computing systems. Pervasive systems can also be improved by smart application of context prediction. This paper addresses subsequent challenge of how to act according to predicted context in order to strengthen the system. Novel reinforcement learning based architecture is proposed to overcome the drawbacks of existing approaches to proactive adaptation. Context spaces theory is used as an example of how existing context awareness systems can be enhanced to achieve proactive adaptation. This recently developed theory addresses problems related to sensors uncertainty and high-level situation reasoning and it can be enhanced to achieve efficient proactive adaptation as well. This article also discusses implementation options and possible testbed to evaluate the solutions. Keywords: Context awareness, context prediction, context spaces theory, pervasive computing, reinforcement learning, proactive adaptation, act-ahead adaptation.
1 Introduction Pervasive computing is a paradigm where computing systems are integrated into the everyday life in a non-intrusive, graceful and transparent manner. Some implementations of pervasive computing paradigm include smart homes, elderly care systems, smart mobile devices, GPS navigators, RFID tracking systems, social networks. Context awareness is one of the basic features of pervasive computing. Context prediction is also recognized as a challenge and an opportunity. However, for context prediction and especially for acting on predicted context there is a definite lack of universal approach to the problem. This paper proposes and motivates the approach for contextual act-ahead adaptation – proactive adaptation to predicted context. The strengths and challenges of proposed approach are discussed. The article is structured as follows. Section 2 describes related work and current challenges of proactive adaptation to predicted context. Section 3 further elaborates identified challenges and proposes and explains the solution approach. Section 4 describes the essentials of context spaces theory and introduce ECORA framework. Sections 5 and 6 discuss the integration of proposed approach into context spaces S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 1–12, 2010. © Springer-Verlag Berlin Heidelberg 2010
2
A. Boytsov and A. Zaslavsky
theory and introduce CALCHAS – Context Aware aCt aHead Adaptation System. Section 7 introduces a sample testbed scenario. Section 8 makes a summary, provides future research plans and concludes the paper.
2 Context Prediction and Acting on Predicted Context Most of context prediction approaches use machine learning techniques. Predictive models that were applied to context prediction task include sequence predictors [5], neural networks [22], Bayesian networks [17], branch predictors [16], decision tree learning [11], time series prediction [19], Markov models [7], trajectory extrapolation [1]. Some authors actually do recognize acting on predicted context as a specific problem ([3], [4]), but still there is not much research done for the challenge of proactive adaptation. Generally most of the ways to act on predicted context can be classified in two groups. 1. Rule-based engines. For every particular prediction result there is a rule that defines an action. Improving behavior of the system is achieved by improving efficiency of context prediction. 2. Learning by example. That approach was applied mostly in smart home environments. Pervasive computing system tracks user actions and then it starts executing the actions for the user. On the basis of studying and analyzing existing approaches, summary representation can look like expression set (1). state(t)=SenseAndProcessData(t) prediction(t)=PredictionModel(state(t),history(t),prediction(t-1 ) history(t+1)=addToHistory(state(t),history(t) ) action(t)=actOnPrediction(state(t),prediction(t),history(t)) .
(1)
Where state(t) is entire context state at the time t, including the results of sensor data acquisition, validation and processing. Entire aggregated history up to time t, but not including time t, is stored in history(t). Prediction results at time t for time t+1 and maybe subsequent steps are referred to as prediction(t). Usually they depend on the current state and on the dependencies learned from history. Sometimes previous prediction results can influence them as well, if time horizons of prediction attempts do overlap. System is acting on predicted context, so action at time t ܽܿ݊݅ݐሺݐሻ depends on prediction results and current state. In case learning by example is implemented, action also has some learning mechanisms and therefore depends on history. The model presented in (1) has a very serious drawback – it cannot handle mutual dependency between system actions and prediction results. Those drawbacks and solution opportunities will be addressed in section 3. Notable exceptions that do not fall in that model are the applications of Markov decision processes and Q-learning based approaches to context prediction [24],[6],[13]. They will be mentioned further in section 3 when discussing reinforcement learning solutions.
Extending Context Spaces Theory by Proactive Adaptation
3
3 Proactive Adaptation as Reinforcement Learning Task Sometimes the system has to provide results of context prediction in quite specific conditions. Here are some motivating use cases. Consider elderly care system. Users need some assistance in accomplishing everyday tasks. System is able to give an advice, call a caregiver or just do nothing if the user is performing quite well. The task is to predict the probability of successful outcome of the activity and to act to maximize that probability, but not at the cost of wasting the time of the caregiver or annoying the user with unnecessary advices. Use case is partially based on [10]. Another motivating use case can be a smart home, where user satisfaction can be estimated according to both direct questioning and the number of user manual interventions into a configuration of home parameters. The task is to predict user’s cumulative satisfaction and act to increase it. Also the system should do its best to behave in non-intrusive manner and not to annoy the user with too many questions. One more example might be prediction and prevention of memory shortage in pervasive system. If memory shortage was predicted with the certainty above the threshold, the system takes actions to avoid memory shortage condition (e.g. searches for additional resources to share the work). But if those preventive actions are successful, the predictor would have learning problem. Formally if there was no memory shortage, it is a prediction failure. In reality most likely it is not, but we cannot claim it for sure. Actually, when the system starts decision making, predictor becomes unable to learn properly - predictor cannot distinguish between prediction failure and successful prevention. For all those cases, neither rule-based system, nor learning by example can solve the problem completely. The solution for this and many similar use cases is to take decision making process into account while making predictions. The dependencies for those use cases can be described like the expressions (2). state(t)=SenseAndProcessData(t) prediction(t)=PredictionModel(state(t),history(t),prediction(t-1) , action(t)) history(t+1)=addToHistory(state(t),history(t) ) action(t)=actOnPrediction(state(t),prediction(t),history(t)) .
(2)
The meaning of state(t), history(t), action(t) and other elements in (2) is the same as in expressions (1). The difference between (2) and (1) is marked in bold. The additional dependency makes most current proactive adaptations methods inapplicable. System acts on predicted context, but in turn predicted context depends on system actions. Most of the context prediction approaches we mentioned previously use predictive models, which do not take into account the mutual dependency between system actions and prediction results. Usually this problem is avoided by completely splitting the context in two independent parts: the one that is affected by actions and the one that is predicted. For example, if the system intends to proactively open the door before the user comes into the room, the choice whether the system opens the door or leaves it closed will not change user intentions and, therefore, prediction results. Learning by example is also the way to avoid mutual dependency problem, but this approach has very limited applicability: it works only if possible user actions and
4
A. Boytsov and A. Zaslavsky
system actions significantly overlap and only with the assumption that imitating user actions grants acceptable effectiveness of the system. We propose an enhanced method to solve mutual dependency problem between actions and predictions. That problem can actually be viewed as reinforcement learning task. Reinforcement learning problem is a problem faced by an agent that should find an acceptable behavior in a dynamic environment and learn from its trial and errors [12]. Reinforcement learning in application to pervasive computing task is almost not researched. Notable exceptions are Markov decision processes and Q-learning approaches [24],[6],[13]. However, as it will be discussed further in this section, Markov decision processes have very limited applicability due to the features of pervasive computing systems. Recent advancements in reinforcement learning include the approaches, which to the best of our knowledge were not applied to pervasive computing at all, including predictive state representation [23], most cases of neural network control [8], different applicable cases of actor-critic model (like [9]), selforganizing maps and Q-learning integration [20] and many more. To the best of our knowledge, there was no attempt to address particular features of reinforcement learning in pervasive computing area. Those features are: • Continuous action spaces. Actuators sometimes provide the choice from practically continuous range of values. • Continuous state spaces. Many kinds of sensors produce values from practically continuous range as well. However, this problem can be resolved by the means of situation awareness. • Mobility of nodes. Mobility of nodes in pervasive computing system can cause the loss of connection to certain sensors and actuators. Or, on the contrary, new connections to different sensors and actuators can be established. • High dimensionality. The count of sensors and actuators in pervasive computing system can be very high. • High heterogeneity of data. Discrete-valued, continuous-valued or event-based sensors and actuators can appear in any combination. • Ability to incorporate prior knowledge. Sometimes common sense or expert estimations can give some sketches of good acting strategies. Ability to incorporate them can significantly reduce learning time. • Explicit prediction result can also provide some insight into the problem. • Limited exploration capabilities. Pervasive system cannot just do a random thing to see what happens. • Limited time for decision making. • Goals of the user can change instantly. The features mentioned above seriously limit the scope of reinforcement learning solutions that we can try. In particular, those features mean that Markov decision process – the dominating model for reinforcement learning – can be used only in limited set of special cases. The main reason here is MDPs’ discrete state and action spaces, which might be not suitable for pervasive computing solutions. In sections 4-6 we will discuss in more details, how we can address pervasive computing challenges presented in the list above.
Extending Context Spaces Theory by Proactive Adaptation
5
4 Context Spaces Theory – Main Concepts Some features of proactive adaptation in pervasive computing can be addressed by improving context spaces theory. The theory of context spaces [14] is a recently developed approach for context awareness and reasoning which addresses the problems of sensors uncertainty and unreliability. It also deals with situation reasoning and the problems of context representation in a structured and meaningful manner. Context spaces theory is designed to enable context awareness in clear and insightful way. This theory uses spatial metaphors for representing context as a multidimensional space. To understand context spaces theory we need to introduce several new terms. Any kind of data that is used to reason about context is called context attribute. Context attribute usually corresponds to a domain of values of interest, which are either measured by sensors directly or calculated from other context attributes. It can be either numerical value or a value from pre-defined set of non-numerical options. Context state represents the set of all relevant context attributes at a certain time. A set of all possible context states constitutes application space. Therefore, application space can be viewed as a multi-dimensional space where the number of dimensions is equal to the number of context attributes in the context state. The state of the system is represented by a point in the application space and the behavior of the system is represented by a trajectory moving through the application space over time. Situation space is meant to represent real life situation. It can be defined as subspace of the application space. So if context state is in the subspace representing situation S, it means that situation S is occurring. Situation S has the level of occurrence certainty. It depends on the probability of the context state to be within S and it also depends on the subspace within S. See Figure 1 for simple illustration.
Fig. 1. Context spaces theory
In context spaces theory several methods were developed for reasoning about the context. Bayesian reasoning [21] or Dempster-Schafer algorithm [18] are used to get overall confidence in the fact that a situation is occurring. Algebraic operations on situations and some logic-based methods were developed for reasoning in terms of situations [14].
6
A. Boytsov and A. Zaslavsky
Some solutions were developed to integrate various context prediction methods into the theory of context spaces [2]. However, those prediction methods are based on pure forecasting and do not take into account decision making aspects. Context spaces theory was implemented in ECORA [15] – Extensible Context Oriented Reasoning Architecture. ECORA is a framework for development of contextaware applications. That framework provides its functionality as a set of Java classes to be integrated into the prototypes of context-aware systems. The presented research introduces proactive adaptation methods that can be used to extend the context spaces theory and enhance ECORA-based applications.
5 Integrating Proactive Adaptation into Context Spaces Theory Context spaces theory has all the necessary capabilities to ensure context awareness. However, when it comes to proactive adaptation, some enhancements have to be made. At first, the actuators need to be introduced into the model. Actually, those actuators can constitute a separate space in the manner much like the context space itself. That actuator space can be treated as action space for reinforcement learning. Considering different meaning of sensors and actuators, it seems that the better solution is to separate the spaces for sensors and actuators. Situation spaces in the space of actuators are not likely to have any value (or, in case a set of discrete actions can be elicited, those situations will just look like points, not spaces). In case of the lost connection to actuator, the corresponding axis is removed. Most likely, it will take some time for the system to learn how to act in new conditions, but previously learnt data can provide a good starting point and reduce adaptation time. Similar refers to introducing new actuators – combining old data with exploration can provide adaptation to new capabilities. Another question is how to define reinforcement learning state space for context spaces theory. Having discrete state space is likely to make the task simpler. One solution is to take situations as states for reinforcement learning and trigger the state if the certainty of situation occurring is above some threshold. To fit the Markov property (that is essential for different kinds of Markov decision processes), situation decomposition algorithm presented in [2] can be used. That kind of situation decomposition approach can also help to overcome node mobility problem from sensor point of view: if the sensor loses the link or if new sensor is introduced, situation properties are recalculated (see [14] for the details), but it is transparent for the upper layer, including the proactive adaptation. Also taking context space as state space for reinforcement learning is an option. One more option is to take the degrees of certainty in different situations as continuous state space. To summarize, context spaces theory can be enhanced to incorporate proactive adaptation solutions. Those context spaces theory enhancements can deal with one of the main features of pervasive computing – the mobility of sensors and actuators – using geometrical metaphors and situation awareness. Addressing other features of proactive adaptation depends mostly on exact reinforcement learning method and the architecture of proactive adaptation solutions of upper layers.
Extending Context Spaces Theory by Proactive Adaptation
7
6 CALCHAS Prototype The proposed approach can be implemented by creating a general-purpose middleware for context prediction and proactive adaptation based on context spaces theory. CALCHAS (Context Aware Long-term aCt aHead Adaptation System) prototype is now under development. Integrated with ECORA, it will allow achieving efficient proactive adaptation for context spaces theory. The architecture was designed to address all the features of pervasive computing area that were mentioned in section 3. That middleware solution should incorporate a library of different context prediction and proactive adaptation methods. Middleware development is in progress and the prototype is being implemented. We propose the following architecture for CALCHAS (see Figure 2).
Fig. 2. CALCHAS general architecture
The architectural blocks have following purpose. Run-time goal and efficiency engine translates user input into exact goals for pervasive system in terms of context and timing. Sensor fusion and low-level validation block provides preliminary low-level processing of context data. Retraining database provides bulk of recent low-level data on request, in case there is a need to retrain the model (e.g. due to goal change) or
8
A. Boytsov and A. Zaslavsky
Fig. 3. CALCHAS adaptation engine
provide faster model start. Feedback is implicit – every actuator action will affect future state of the system, which will in turn be tracked by sensors. Adaptation and prediction engine is responsible for inferring adaptation sequences – sequences of actions for the actuator to do. Also it is responsible for providing explicit prediction results. Adaptation engine has the following structure (see Figure 3). All the translation blocks are used to translate between the format of internal model (e.g. states of Markov decision process, its reward functions) and the format of the outer system (e.g. vectors of values of sensor data and exact commands for actuators). The adaptation core is responsible for generating the actions according to the model and learning engine is responsible to adapt the model to new data. All translation blocks are heavily dependent on specific task, but for most of other blocks general purpose solutions can be developed. Supplied with a comprehensive library of reinforcement learning methods, the system can facilitate the development of pervasive computing applications, which will be aware of current and predicted context and which will be capable of smart proactive adaptation to predicted context.
7 Sample Scenario for Proactive Adaptation Methods In order to validate proactive adaptation solutions, we introduce “Moonprobe” model. “Moonprobe” is the result of subsequent development of application scenario presented in [2]. The “Moonprobe” model is an imitation of a vehicle in 2D environment. The aim of the vehicle is to reach destination point safely and not crash or run out of fuel on its way. “Moonprobe” was developed using XJ Technologies AnyLogic modeling tool [25].
Extending Context Spaces Theory by Proactive Adaptation
9
Although not representing pervasive system on its own, the “Moonprobe” model deals with the problems that are common for every pervasive system like sensor uncertainty, sensor failures, acting under uncertainty, fusing heterogeneous sensor data. The moonprobe has a set of specific situations to be aware of. These are sensor failure conditions, progress of going to the destination point and safety conditions. “Moonprobe” uses around 20 context parameters to reason about the situations. Also the moonprobe has some actuators to trigger: engines can help the probe to land safely or to keep the speed. However, working engines require fuel, and the amount of fuel is limited. The actions based on actuators can be considered continuous (direction and power of engine) as well as discrete (like “do nothing”, “keep velocity”, “dampen the fall” etc.). In a very simplified manner the model can be described by the following set of equations (see formula (3)).
N
If probe is in the air: 0 If probe is on the ground: projection of M g on the axis perpendicular to the ground
Fen
(3)
|Fen|
Where t is time, X is probe coordinate, V is probe velocity, M is mass of the probe (known system parameter), N is support reaction (directed perpendicular to the ground), Fl – fuel level remained, g – gravity, FCR – fuel consumption rate (known system parameter), Fen – engine force vector (value and direction set by probe). In some cases probe can leave the ground. When probe lands, it will experience ground collision. Ground collisions are dangerous for the probe. Engines can be used to slow down the landing and avoid the crash.
Fig. 4. “Moonprobe” system architecture
The architecture of the model is following (see Figure 4). System consists of several components. •
“Environment and probe” component. It implements the physical model of the system. Also it monitors what happens to the probe (crash, sensor outage etc.).
10
• • •
A. Boytsov and A. Zaslavsky
“Sensors” component. Sensors measure the data from the probe in certain moments of time and introduce some errors. “Controlling engine” component. It takes sensed data and provides control information. All proactive adaptation logic is embedded there. “Main” component provides overall assessment of experimental results.
The design of exact learning approaches in CALCHAS is in progress. Rule-based decision making engine with quantified actions was introduced into “Moonprobe” model to act as a benchmark for different reinforcement learning solutions. Rules were defined based on common sense. Screen dump of running “Moonprobe” is depicted on Figure 5.
Fig. 5. "Moonprobe" system working
8 Conclusion and Future Work In this work we addressed the task of proactive adaptation to predicted context and proposed reinforcement learning based architecture, which will allow pervasive computing systems to address more complicated use cases. The features of proactive adaptation task in pervasive computing systems were identified. The architecture of proactive adaptation solution – CALCHAS system – was developed to address them. Context spaces theory was used as particular example of integration between context awareness system and proactive adaptation solution. Context spaces-based testbed for proactive adaptation solution was implemented. Our future plans are to implement the entire middleware with a comprehensive library of available reinforcement learning approaches. Also the plan is to extend reinforcement learning solutions methods to suit the core challenges pervasive computing area.
Extending Context Spaces Theory by Proactive Adaptation
11
References 1. Anagnostopoulos, C., Mpougiouris, P., Hadjiefthymiades, S.: Prediction intelligence in context-aware applications. In: Proceedings of the 6th international conference on Mobile data management, Ayia Napa, Cyprus, pp. 137–141. ACM, New York (2005) 2. Boytsov, A., Zaslavsky, A., Synnes, K.: Extending Context Spaces Theory by Predicting Run-Time Context. In: Balandin, S., Moltchanov, D., Koucheryavy, Y. (eds.) ruSMART 2009. LNCS, vol. 5764, pp. 8–21. Springer, Heidelberg (2009) 3. Cook, D.J., Augusto, J.C., Jakkula, V.R.: Ambient intelligence: Technologies, applications, and opportunities. Pervasive and Mobile Computing 5, 277–298 (2009) 4. Cook, D.J., Das, S.K.: How smart are our environments? An updated look at the state of the art. Pervasive and Mobile Computing 3, 53–73 (2007) 5. Das, S.K., Cook, D.J., Bhattacharya, A., Heierman III, E.O., Lin, T.-Y.: The role of prediction algorithms in the MavHome smart home architecture. IEEE Wireless Communications 9(6), 77–84 (2002) 6. Feki, M., Lee, S., Bien, Z., Mokhtari, M.: Context Aware Life Pattern Prediction Using Fuzzy-State Q-Learning. Pervasive Computing for Quality of Life Enhancement, 188–195 (2007) 7. Gellert, A., Vintan, L.: Person Movement Prediction Using Hidden Markov Models. Studies in Informatics and Control 15(1) (2006) 8. Hagan, M.T., Demuth, H.B.: Neural networks for control. In: Proceedings of the 1999 American Control Conference, San Diego, CA, pp. 1642–1656 (1999) 9. van Hasselt, H., Wiering, M.: Reinforcement Learning in Continuous Action Spaces. In: Proceedings of IEEE International Symposium on Approximate Dynamic Programming and Reinforcement Learning (ADPRL’07), Honolulu, HI, USA, pp. 272–279 (2007) 10. Hoey, J., Von Bertoldi, A., Poupart, P., Mihailidis, A.: Assisting persons with dementia during handwashing using a partially observable Markov decision process. In: Proceedings of International Conference on Vision Systems, p. 66 (2007) 11. Hong, J., Suh, E., Kim, J., Kim, S.: Context-aware system for proactive personalized service based on context history. Expert Systems with Applications 36(4), 7448–7457 (2009) 12. Kaelbling, L.P., Littman, M.L., Moore, A.W.: Reinforcement learning: A survey. Journal of Artificial Intelligence Research 4, 237–285 (1996) 13. Mozer, M.C.: Lessons from an adaptive home. In: Smart environments: technologies, protocols, and applications, pp. 273–294. Wiley, Chichester (2004) 14. Padovitz, A., Loke, S.W., Zaslavsky, A.: Towards a theory of context spaces. In: Proceedings of the Second IEEE Annual Conference on Pervasive Computing and Communications Workshops, pp. 38–42 (2004) 15. Padovitz, A., Loke, S.W., Zaslavsky, A.: The ECORA framework: A hybrid architecture for context-oriented pervasive computing. Pervasive and Mobile Computing 4(2), 182–215 (2008) 16. Petzold, J., Bagci, F., Trumler, W., Ungerer, T.: Context Prediction Based on Branch Prediction Methods. Technical Report, Institute of Computer Science, University of Augsburg (2003) 17. Petzold, J., Pietzowski, A., Bagci, F., Trumler, W., Ungerer, T.: Prediction of Indoor Movements Using Bayesian Networks. In: Strang, T., Linnhoff-Popien, C. (eds.) LoCA 2005. LNCS, vol. 3479, pp. 211–222. Springer, Heidelberg (2005) 18. Shafer, G.: A Mathematical Theory of Evidence. Princeton University Press, Princeton (1976)
12
A. Boytsov and A. Zaslavsky
19. Sigg, S., Haseloff, S., David, K.: Minimising the Context Prediction Error. In: Proceedings of IEEE 65th Vehicular Technology Conference VTC 2007, Dublin, Ireland, pp. 272–276 (Spring 2007) 20. Smith, A.J.: Applications of the self-organising map to reinforcement learning. Neural Networks 15, 1107–1124 (2002) 21. Russell, S.J., Norvig, P.: Artificial Intelligence: A Modern Approach, 2nd edn. Prentice Hall, Englewood Cliffs (2003) 22. Lin, T., Wang, C., Lin, P.-C.: A neural-network-based context-aware handoff algorithm for multimedia computing. ACM Transactions on Multimedia Computing, Communications, and Applications (TOMCCAP) archive 4(3), 1–23 (2008) 23. Wolfe, B., James, M.R., Singh, S.: Approximate predictive state representations. In: Proceedings of the 7th international joint conference on Autonomous agents and multiagent systems, vol. 1, pp. 363–370. International Foundation for Autonomous Agents and Multiagent Systems, Estoril (2008) 24. Ziebart, B.D., Maas, A.L., Dey, A.K., Bagnell, J.A.: Navigate like a cabbie: probabilistic reasoning from observed context-aware behavior. In: Proceedings of the 10th international conference on Ubiquitous computing, Seoul, Korea, pp. 322–331. ACM Press, New York (2008) 25. How to Build a Combined Agent Based / System Dynamics Model Logic in AnyLogic (2008), http://www.xjtek.com/file/161
Context-Awareness Enabling New Business Models in Smart Spaces Boris Moltchanov1, Christian Mannweiler2, and Jose Simoes3 1
Telecom Italia S.p.A., via Reiss Romoli 274, 10148-Torino, Italy
[email protected] 2 University of Kaiserslautern, Wireless Communications and Navigation Group 67663 Kaiserslautern, Germany
[email protected] 3 Fraunhofer Institute FOKUS, Kaiserin-Augusta-Alle 31, 10589 Berlin, Germany
[email protected]
Abstract. This paper describes how emerging context-awareness technologies will act as a driving force for introduction of intelligently personalized services in smart spaces. The according context-awareness framework is taken from the results of the EU FP 7 project “C-CAST”. Major novelties include a highly scalable context management architecture as well as a context prediction methodology. The paper considers business models and financial structures as well as service and application examples that might be realized in smart spaces enriched with environmental, personal, social, and network context information. From a commercial perspective on context-aware applications in smart spaces, these examples differ from traditional Telecom and IT services and demonstrate how Telecom and IT companies may strengthen and leverage their business based on context information about customers, services and their environments that is abundantly available in smart spaces. Moreover, this paper includes the description of a field trial with new applications in quasi-smart space environments. Keywords: Business model, smart space, sensor, context, prediction.
1 Introduction The number of mobile user terminals permanently connected to the web over wireless technologies as potential context sources (e.g., embedded sensors, cameras) and the sensors creating large interworking Wireless Sensor Networks (WSN) interconnected with Building Sensor Network and Automotive Sensor Networks is expected to increase significantly creating really ubiquitous systems. All these information sources create heterogeneous and very pervasive environments collectively identifiable as Smart Spaces. Users surrounded by this technology expect more sophisticated and useful services and richer multimedia content. S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 13–25, 2010. © Springer-Verlag Berlin Heidelberg 2010
14
B. Moltchanov, C. Mannweiler, and J. Simoes
In parallel, the advent of Web 2.0 technologies and their consequent application deployments revealed that user generated content, when tied to a certain geographical location and part of the augmented reality and virtual social communities became a trend in what concerns user most used services. Leveraging smart space technology with a context-aware framework will allow objects, devices, persons and entities to be characterized and interact in real time. Among all players involved in the business value chain of the innovative services, users themselves are the ones demanding for appealing services. To satisfy this demand, a mentality shift needs to occur, as the technological one occurred with the emergence of context-awareness and WSN technologies that enabled new business models and revenue schemes. The context management technology used in this work, has been designed in the European research project C-CAST [1], which aims at combining mobile distribution techniques (both unicast and multicast) and context-awareness in order to optimize multimedia content distribution. This papers shows how it can be used for new business models in smart spaces. The remainder of the paper is organized as follows. Section 2 presents the state-of-the-art in context-awareness for smart spaces. The technical and business aspects of our context management framework are presented in sections 3 and 4, respectively. Then, section 5 describes some context-aware commercial services and trials built within Telecom Italia (TI) infrastructure. Finally, section 6 concludes the paper and introduces future work.
2 State of the Art This section introduces the terminology and provides an overview of related research activities in the areas of context management. 2.1 Definitions and Terminology Context – Ryan et al. [2] referred to context as the user’s location, environment, identity and time. Dey [3] defines context as the user’s emotional state, focus of attention, location and orientation, date and time, as well as objects and people in the user’s environment. Hull et al. [4] describe context as the aspects of the current situation. Brown [5] defines context to be the elements of the user’s environment, which the computer knows about. The notion of situation is closely related to the concept of context. Zimmermann [6] defines it as “the state of a context at a certain point (or region) in space at a certain point (or interval) in time, identified by a name”. Smart Space – a smart space is any real or virtual location equipped with passive and active artifacts. These artifacts can be any kind of sensors and actuators, mobile devices, software agents, autonomous vehicles, management systems, and also human beings. In smart spaces, these artifacts have the processing and communication capabilities to interact with each other in a (mutually) beneficial way. Examples include smart homes, smart factories, smart transportation, smart grid or ambient assisted living environments [7], [8].
Context-Awareness Enabling New Business Models in Smart Spaces
15
2.2 Types of Context for Smart Spaces Context information can be derived from the physical environment or a physical state of an entity (e.g., temperature, humidity, light, noise levels, etc.) and logical (e.g., activity, friend, parent, preferences, etc.). Moreover, context may be of primary origin or derived origin, which effectively is reasoned out of primary context data. There is also meaningful context, a type considered in the literature as linguistic context. For this work, we will basically abstract from the context type, i.e. consider all types. 2.3 Context-Aware Systems for Smart Spaces The history of context-aware systems started when Want et al. [9] introduced the Active Badge Location System, considered to be one of the first context-aware applications. Ailisto et al., [10] and Dey and Abowd [11] proposed a layered conceptual architecture that augments layers for detecting and using context by adding interpreting and reasoning functionalities. In middleware-based systems, the Service-Oriented ContextAware Middleware (SOCAM) project [12] introduced an architecture for building and rapid prototyping context-aware mobile services. One further extensible centralized middleware approach designed for context-aware mobile applications is a project called Context-Awareness Sub-Structure (CASS) presented in [13]. Chen [14] presents a Context Broker Architecture (CoBrA), which is an agent-based architecture, for supporting context-aware systems in smart spaces (e.g., intelligent meeting rooms, smart homes, and smart vehicles). Other well-known examples for broker-based approaches are the SOUPA, and GAIA [15]. Many EU projects have explored contextawareness aspects, for example, SPICE [16] and MUSIC [17]. One of the main reasons of little context-awareness usage, despite the mentioned efforts, was lack of end user devices that could host the context-aware applications for users. With the wide scale availability of such devices, including the WSN sensors, it is now possible to harness the possibilities of context-awareness. There are many types of the services where context-aware smart-spaces could play a significant role, namely advertisement, e-recommendations, e-tourism, gaming, etc, opening the path for personalized content creation and distribution, enabling new business models of contextualized applications and service delivery over smart spaces.
3 Technical Aspects of Context-Aware Smart Spaces Before focusing on the business aspects, it is important to understand the technical requirements of smart spaces and how context is managed and represented, using our framework, throughout the entire value chain. 3.1 Context Management Requirements of Smart Spaces The vision of smart spaces includes intelligent environments and context-aware services that react in a sensitive and adaptive way to the presence of humans and/or objects. Telecom related applications as well as energy saving, gaming, chatting, info and payment services are important constituent parts of such smart spaces. The design of such context management system should therefore consider objectives and
16
B. Moltchanov, C. Mannweiler, and J. Simoes
requirements from various domains, like data management, communication, user ID management, system reliability, privacy, security, etc. The novelty here lies in the utilisation of information from smart spaces for supporting conventional, as well as community created context applications, in a way that has not been attempted before. This section gives an overview of the most common high-level objectives and requirements [7],[18]. 1) Enhance and leverage context data through • filtering mechanisms as well as evaluating and improving its (multidimensional) quality; • aggregation, fusion, inference, and prediction. 2) Efficiently exchange data and provide context services within and between different smart spaces by • establishing rules for context discovery, storage, and distribution; • designing common interfaces for communication within and across smart spaces; • specifying communication mechanisms between smart space artifacts • establishing management procedures for smart space entities owning context data. 3) Ensure end-to-end data security by • monitoring and assuring the non-violation of privacy, security, and trust within and across smart spaces; • guaranteeing the enforcement of rules and policies. These overall objectives yield a set of design requirements for the desired smart space system functionalities. The system needs to be capable of obtaining and representing context data from a wide range of sources, as well as processing and storing it according to rules and policies defined by the artifacts (users, objects, etc.) present in a smart space. Moreover, mechanisms for computation of semantically more abstract context, obtained from simple types of contexts (aggregation, fusion, reasoning, prediction, and inference) have to be made available. This includes the usage of widely used, standardized communication protocols and interfaces. A smart space has to dispose of a (preferably distributed, as described in [19]) context service directory that stores different types of information. Namely, what context services are available and at which location within a smart space. This will allow autonomous reconfigurations depending on the load and the capabilities of the smart space artifacts. Hence, a protocol for handling the arrival of new context sources joining a smart space needs to be available. Finally, mechanisms for identification, authentication and authorization guaranteeing end-to-end security and privacy of user context within and across smart spaces have to be included. 3.2 Context Management Architecture Context, “embedded” into our world and around our lives, can be exploited to enrich communication systems. The architecture proposed in this section is based on a topdown, service scenario-to-architecture component analysis. It is further scrutinized by a bottom-up synthesis of available underlying technologies for service creation and
Context-Awareness Enabling New Business Models in Smart Spaces
17
deployment to potential customers within a mobile environment, which possesses already context information regarding its customers. The proposed architecture is based on the producer consumer role paradigm. The system is built upon three basic functional entities: Context Consumer (CxC), Context Broker (CxB) and Context Provider (CxP), where a CxP is a source of the context information, a CxB is an arbitral node handling the context data as a reference point for the overall context in a smart space and CxCs are consumers of context information. The decoupling of provisioning and consumption is important as it impacts on the overall scalability of the system. Further details about this implementation can be found in [20] and [21]. 3.3 Context Modeling and Representation Context information needs to be represented and modeled for being machine interpretable and exchangeable using well-defined interfaces. The goals are to support easy manipulation on many devices, including resource constrained mobile devices, achieve low overhead in keeping the model up-to-date, easy extension, efficient search and query access, having cheap and simple mechanisms for adding new types of information and scalability. In the literature, different approaches for representing contextual knowledge and semantic information can be found [22]. To improve the limitations identified, our work proposes an appropriate option for representation and exchange of context information in smart space environments is ContextML [23], which is based on the XML format. ContextML can handle several layers of abstraction in a context-aware system, as illustrated in Fig. 1, and any context-aware middleware or architecture must therefore be capable of building representations and models of these layered abstractions.
Fig. 1. Layered Context Model
18
B. Moltchanov, C. Mannweiler, and J. Simoes
The main context management features are context acquisition, context aggregation & fusion, context dissemination, discovery and lookup. Adapting such a structure to existing infrastructures could allow a context handling interface to be embedded into a service exposure layer as a SOA-like web service, allowing secure and controlled access to context information. Nevertheless, privacy issues need to be addressed efficiently in order for such services to become a reality. To accomplish such vision, the work done in [24] addresses some of the most relevant issues.
4 The Business Aspects of Context-Awareness in Smart Spaces This chapter shows how the outcome of the proposed context-aware system can enable new business models in smart spaces. 4.1 Types of Context Before getting into the possible business models, it is important to understand what kind of context can be made available. In this sense, we will separate context into three different categories: real-time, historical and reasoned context. Nevertheless, only real-time information is considered as context in the real meaning of this term. Table 1 provides some examples of these context types. Table 1. Types of Context Available within a Smart Space Real-Time Location Orientation
Historical Previous locations Previous orientation
Temperature Humidity Brightness Noise level
Previous temperatures Previous humidity Previous brightness Previous noise levels
Proximity
Previous proximity
Call/VAS Log Phone profile settings HW version, FW release and SW packages installed Battery level
Previous Call/VAS Logs Previous profile settings Previous devices settings
…
Reasoned Movement Movement, destination Weather Weather Weather, Time User activity, user location Friends, colleagues, customers Relationship Proximity Service type, capability, content format Service usage
4.1.1 Real-Time Context This type of context represents the data available in the cache of the CxB, meaning that the context retrieved is still valid (has not expired). This is particularly useful to trigger events based on real time actions. It can be requested per user, per context or per object (e.g., retrieve users that viewed a specific content in a determined location).
Context-Awareness Enabling New Business Models in Smart Spaces
19
4.1.2 Context Prediction for Generating Higher-Level Knowledge Reasoning refers to information that can be inferred from analyzing data and combining different context information. This is usually more complex to obtain and should have a confidence level associated with it. One example for reasoning includes context prediction [25] Context prediction deals with the issue of generating awareness for future context. This implicitly includes the proactive control and adaptation of a system such as a smart space according to (expected) future user behavior. Generally, an entity of a context management system (e.g. context consumer, CxC) can query the future value of the specified context. An exhaustive prediction contains the following parameters: • • •
Name of context scope to be predicted Name of entity the scope belongs to Future point in time the context should be computed for
On the one hand, current context information of the specified entity will be queried in order to get the starting state for the prediction algorithm. On the other hand, historical data of the specified scope and as well as other (related) scopes of that entity will then be retrieved from other entities, e.g. from other CxPs or from context history databases. For example, in case of a location prediction, additional interesting context data could be speed, acceleration and orientation. For the actual prediction process, a set of algorithms for analysis of historical data are available. Suitable candidates include tendency predictors, first or higher order Markov models, hidden Markov models, or Bayesian networks. Depending on the prediction request, the most appropriate algorithm is selected. Again, relevant criteria include time horizon of prediction, type of context (i.e. expected data characteristics), performance of previous predictions for specific applications (e.g. service execution in smart space environments) as well as real time requirements. Another important aspect is the degree to which the algorithm needs supervision, i.e. human interaction. In principal, for smart space environments, prediction should be performed completely unsupervised. As such, the combination or parallel execution of different algorithms shall provide predictions with higher confidence and reliability. 4.2 Relevant Applications and Business Models Context-aware smart spaces may be used by many applications and services. The most interesting application classes that can benefit from context-awareness in smart paces are the following: • • •
sustainability – including assisted living, smart cities, traffic management, intelligent energy management, tele-working, smart remote (business) process control machine to machine communications – including smart factories, logistics, and vehicular communication e-health – including smart hospitals, personalized fitness programs, elderly support from remote, advanced national health and wellness program
20
B. Moltchanov, C. Mannweiler, and J. Simoes
• •
emergency management, recovery and rescue teams support – fast recovery from catastrophes, remote monitoring, support for rescue forces and efficient material allocation Gaming – including distributed and remote entertainment, education and tourism systems.
Any type of company from both the Telecom and IT industries may leverage on the potential of the presented context-aware applications in smart spaces. Some of the most promising business models applicable in this area will be described in the following sections. 4.2.1 The In-House Model One of the best ways to avoid churn is to offer users what they want and need. Using context intelligence to improve services customization and personalization became a trend and operators are starting to use context to improve or create, existing or new services, respectively. A great example of such deployment is provided by some Telcos where a service merges a simple address book into an immersive social experience. Similar ideas can be employed for enhancing user experience in smart spaces. Although very often third party applications (e.g., Facebook, Twitter) are used, there is not any sort of revenue sharing. With this approach, they improve not only customer satisfaction but also revenue generation resulting from the associated data consumption from the operators' network. Furthermore, as these services are usually associated with fidelity plans, this helps operators to rethink long-term strategies. 4.2.2 The Revenue Sharing Model This particular method can exist in two variants. The first occurs when the Telco improves its offer by using context information from external sources (e.g., social networks, traffic or news provider). This is similar to the outside-in methodology or to a white labeling product/service where the operator leverages its customer base to a new offering and earning a percentage out of it. The second approach resembles the inside-out approach, where third party applications are built not only based on operator infrastructure (using APIs) but also its context information. In this situation, although the Telecoms do not own the end user of these applications; they still earn a part of the revenue generated from this service. 4.2.3 The Advertising Model Advertising can be leveraged by a smart space infrastructure in a myriad of ways. It can be done in a non-intrusive way when the customer requests a specific service (e.g. in a shopping mall), which is then sponsored by advertising. In any case, advertisement can be targeted according to a user’s preferences and context. Therefore, advertisers are no longer limited to little customer segmentation options. In a way, this model is a mix of revenue sharing and context exposure selling as they earn money by using both their infrastructure (e.g., SMS or MMS) and their context information (e.g., location). The main challenge of this model is to provide advertisements in an unobtrusive way, simultaneously considering users’ interests for a specific moment in time. These targeted events will consequently improve the probability of service sales since the offer will match his or her needs, interests and context.
Context-Awareness Enabling New Business Models in Smart Spaces
21
4.2.4 Context Exposure Selling Model Operators can extend the usage of their customers’ context to outside their domain in order to improve their long-tail experience and creating revenues from businesses build by third parties. In this model there is no strict correlation between the service offered by third party providers and the operator. In this sense, the Telco exposes context through well-defined APIs. Then, depending on what is necessary the context can be accessed by: • •
•
Request – can be done per user, per group of users, or per context. In this case, the billing is performed on a per request basis or per response basis (both models could work). Subscription – for some services, in case an application needs to keep an updated status of the context (e.g., to track movement you need to update location regularly). For this case, a fee can be applied for the subscription to certain context, to certain users, group of users or a combination of all as the updates can occur without any specific pattern and therefore is difficult to estimate a price per notification. Bundling – bundling context decreases the offer price when compared to single purchases while significantly improving or completing the service offer.
4.2.5 Self-service Model In today’s interactive networks, users are no longer just consumers but also producers. Although for now this concept is mainly associated with content, it is predictable that in the future the same tendency is reflected on service composition and execution, where people can build their own applications based on intuitive graphical interfaces that represent logical interfaces of a myriad of context enablers. In this scenario the operator would also need a service orchestrator based on context. This would pave the way to a whole new way of service creation and consequently revenue generation. In a first instance, it would allow customers to engage with the service and network providers and would accelerate new service development paying back the network operator’s investments in customer tailored services. In a way, this can be seen as the “Application Stores” business model, where customers could then publish their services, using both the operators’ infrastructure and context information. For this to happen, a revenue sharing model together with context exposure billing model should be defined to charge an intermediate or an end user. 4.3 Limitations Despite the simplicity and flexibility in which these business models can be implemented, the processing and management of personal data obviously raises security and privacy issues that need to be addressed. In this sense, users need to stay in control of the whole process, enabling them to specify when, what, why, who, where and how the data is or can be accessed. In other words, user context should be disclosed according to contextual privacy policies and settings. Even the most primitive model should allow users to opt-in and opt-out from such profiling. Currently, on an average, only 3% of an operator’s costumer base opts-in for such services. Therefore, it is necessary to improve these business models in order to attract more end users. Otherwise, largescale context exposure and distribution will never be available.
22
B. Moltchanov, C. Mannweiler, and J. Simoes
In addition, it is necessary to achieve a consensus and agreement among different stakeholders so that information can be provided in a standardized way. This will allow for compatibility within and across different smart spaces and it will facilitate the reusability of applications in different smart spaces. Examples include developerindependent software APIs, as well as manufacturer-independent “hardware APIs”. Moreover, context shall be efficiently acquired, encoded and transformed into a determined high-level context, distributed and provided to requesting entities for consumption, while simultaneously maintaining its real-time properties. This is a very complex and resource-consuming task requiring appropriate context sources, very efficient supporting context management systems with embedded intelligence, employment of interoperable and lightweight standards, fast communication channels and secured interfaces for context retrieval and distribution. The main difficulty in the creation of intelligent and comprehensive smart spaces is “filling” the spaces with myriads of the sensors, which require huge investments. Therefore the users’ mobile terminals should be considered as sensor devices in smart spaces.
5 Trials of New Applications and Services Quasi-smart Space Environments TI is already providing some context-aware services tied to a certain location or a territory to its customers especially for mobile users in the eTourism field, where the B2B2C model is implemented with the following elements: • • • • •
the development of a model of integrated and aggregated offer on a local basis, or "under the patronage" of public administrations responsibility; the involvement of the PAs (Public Administrations) for the sponsorship of the model and the involvement of the proper actors active on the business value chain; the collection and delivery of content (e.g., information for the enhancement of heritage artists); a strong leverage on mobile devices for the end customer and on TI’s infrastructure based on assets (connectivity, data centers, Telco Capabilities) solutions; the hypothesis of conditional business to the establishment of a collaborative model based on a local public-private integration.
The different roles and their interactions in the TI’s eTourism scenario are shown in Fig. 2 where the CA&SA Provider is responsible for integrating context information and self-adapts it into its services. To some actors in the network this context information has an economic value. Therefore, it is assumed that actors do not give away data or services without an adequate compensation. Consequently, the analysis here has been done in terms of value exchanges between the different actors. By playing the role of context enabler, TI limited its involvement to providing network data that could enable context reasoning. In any case, it could be an important distributor of context data in the market of CA&SA services. By playing the role of context
Context-Awareness Enabling New Business Models in Smart Spaces
23
provider, TI would increase the involvement in the organization of these services and would trade context data from different sources. There are no sensor networks involved in the described services as abovementioned, however, mobile terminals and location-aware services can be considered as sensors. Therefore, the described environment is a first step towards a field trial smart-space facilitated by a Telecom operator. In the presented scenario, it plays the role of network operator, service provider and seller. This combination of roles puts TI in a privileged position to collect user and network context data.
CA&SA Service Provider
Fig. 2. View of different roles and their interactions in a general eTourism service scenario
The business model used in the aforementioned services was based on the bundling of a customized platform/service solution to third parties interested in a promotion of certain initiatives and events at large national, regional and local scales. These entities, (e.g., City Hall, Government, Event sponsors) interested to involve and to attract, for any reason (e.g., advertisement, social visibility, tourism), as much people as possible, have now a way to target this offer within a specific and contextualized scope. A prepared ad-hoc system usually involves context management platforms, preparation and customization of the website and its continent, where users can register and upload their content. Then different interactions are offered, voting, rating, the best content, the most popular place, as well as interactive game scenarios where every participant is invited and potentially involved. All these web portals [26] leverage User Generated Content (UGC) upload and sharing capabilities, mainly based on the user location, including the proximity to objects and other people, presence status, willingness proposition, preferences, and social contexts.
24
B. Moltchanov, C. Mannweiler, and J. Simoes
6 Conclusions and Future Work In this work we have presented the business potential of context-aware systems, demonstrated by a technical solution implemented at TI premises for trial concepts and scenarios. Moreover, we have highlighted context management requirements for smart spaces. As seen, most use cases involve more than two entities (a smart space consists of many active entities), therefore disrupting the traditional business models. Despite the presented limitations, we have shown that small variations to well-known models can generate positive financial flows. Furthermore, it became clear that the application of context-awareness as wide spread technology, oriented to the social usage and treating personal data, shall be further analysed for potential issues regarding privacy, business models and law regulations before it can be widely adopted and deployed in smart spaces. Nevertheless, when context-awareness and context-data are exposed as a business enabler to third parties, in a guaranteed and protected way, all entities within the value chain will be able to deliver attractive solutions. Still lacking is the definition of the right pricing structure with an appropriate revenue sharing scheme. Altogether, this work will leverage context exposure over Web2.0 interfaces and other new business propositions.
Acknowledgments This work is supported by the European ICT project “C-CAST” - Context Casting (Contract-No. ICT-216462) as well as by the project “G-Lab” (funding reference 01 BK 0808) funded by the German Ministry for Education and Research.
References 1. Context Casting (C-CAST), FP7-ICT-2007-1, http://www.ict-ccast.eu/ 2. Ryan, N., Pascoe, J., Morse, D.: Enhanced reality fieldwork: the context-aware archaeological assistant. In: Proceedings of 25th Anniversary Computer Applications in Archaeology (1997) 3. Dey, A.K., Abowd, G.D.: Towards a better understanding of context and contextawareness. In: Proceedings of Work on the What, Who, Where, When and How of Context-Awareness. ACM Press, New York (2000) 4. Hull, R., Neaves, P., Bedford-Roberts, J.: Towards situated computing. In: Proceedings of the First International Symposium on Wearable Computers (ISWC ’97), p. 146 (1997) 5. Brown, P.J.: The stick-e document: a framework for creating context-aware applications. In: Proceedings of Electronic Publishing, Palo Alto, pp. 259–272 (1996) 6. Zimmermann, A.: Context Management and Personalisation, p. 260 (2007) 7. Oh, Y., et al.: A Context Management Architecture for Large-Scale Smart Environments. IEEE Communications Magazine (March 2010) 8. Casdell-Oliver, R., Liu, W.: Representation and recognition of Situations in Sensor Networks. IEEE Communications Magazine (March 2010) 9. Want, R., Hopper, A., Falcao, V., Gibbons, J.: The active badge location system. ACM Transactions on Information Systems 10(1), 91–102 (1992)
Context-Awareness Enabling New Business Models in Smart Spaces
25
10. Ailisto, H., Alahuhta, P., Haataja, V., Kylloenen, V., Lindholm, M.: Structuring context aware applications: Five-layer model & example case. In: Proceedings of Workshop on Concepts & Models for Ubiquitous Computing, Sweden (2002) 11. Dey, A.K., Abowd, G.D.: A conceptual framework and a toolkit for supporting rapid prototyping of context-aware applications. HCI Journal 16(2-4), 7–166 (2001) 12. Gu, T., Pung, H.K., Zhang, D.Q.: A middleware for building context-aware mobile services. In: Proceedings of IEEE Vehicular Technology Conference (VTC), Milan, Italy (2004) 13. Fahy, P., Clarke, S.: CASS – a middleware for mobile context-aware applications. In: Workshop on Context Awareness, MobiSys 2004 (2004) 14. Chen, H., Finin, T., Joshi, A.: An Intelligent Broker for Context-Aware Systems. In: Article, Adjunct Proceedings of Ubicomp 2003 (2003) 15. Roman, M., et al.: GAIA: A Middleware Infrastructure to Enable Active Spaces. IEEE Pervasive Computing 1(4), 74–83 (2002) 16. Service Platform for Innovative Communication Environment (SPICE), FP6 EU Project, http://www.ist-spice.org 17. Salis, N., Licciardi, C., Hallsteinsen, S., Geihs, K.: Telecom Italia’s MUSIC Exploitation: Mobile eTourism, D13.12, FP6 EU Project MUSIC (December 2009) 18. Mannweiler, C., et al.: A Robust Management Platform for Multi-Sensor Location Data Interpretation. In: Proceedings of the 19th Future Network and Mobile (2010) (to be published in June 2010) 19. Mannweiler, C., Amann, B., Schneider, J., Klein, A., Schotten, H.D.: A Distributed Context Service Architecture for Heterogeneous Radio Environments. To be published in ITG-Fachbericht der 15. ITG Fachtagung Mobilkommunikation, Osnabrück, Germany (May 2010) 20. Moltchanov, B., Knappmeyer, M., Licciardi, C.A., Baker, N.: Context-Aware Content Sharing and Casting. In: Proceedings of ICIN 2008, Bordeaux, France (October 2008) 21. Liaquat, S., Knappmeyer, M., Baker, N., Moltchanov, B.: A Federated Broker Architecture for Large Scale Context Dissemination. To be published in Proceedings of The 2nd International Symposium on Advanced Topics on Scalable Computing, in conjunction with The 10th IEEE International Conference on Scalable Computing and Communications (ScalCom-2010), Bradford, UK, June 29-July1 (2010) (to be published in July 2010) 22. Baldauf, M., Dustdar, S., Rosenberg, F.: A survey on context-aware systems. International Journal of Ad Hoc and Ubiquitous Computing 2(4), 263–277 (2007) 23. Knappmeyer, M., Liaquat, S., Frà, C., Baker, N., Moltchanov, B.: ContextML A LightWeight Context Representation and Context Management Schema. In: Proceedings of IEEE International Symposium on Wireless Pervasive Computing, Modena, Italy, May 5-7 (2010) 24. Simoes, J., Weik, P., Magedanz, T.: The Human side of the Future Internet. In: Towards the Future Internet, pp. 183–192. IOS Press, Amsterdam (2010) doi:10.3233/978-1-60750539-6-183 25. Mayrhofer, R.M.: An Architecture for Context Prediction. Dissertation, Johannes Kepler University Linz (2004) 26. http://teamlife.telecomitalia.it/lucca, http://teamlife.telecomitalia.it/lecce, http://teamlife.telecomitalia.it/venezia, http://beta.teamlife.it/bs
A Middleware Architecture for Safety Critical Ambient Intelligence Applications Antonio Coronato and Giuseppe De Pietro Institute of High Performance Computing and Networking ICAR-CNR Via P. Castellino 111, 80131, Naples - Italy
[email protected],
[email protected] Abstract. Ambient Intelligence (AmI) technologies are more and more often adopted in scenarios, like healthcare, environments monitoring and control, ambient assisted living, etc, which are critical for human safety and assets preservation. This requires that such a kind of applications be designed taking into account stringent dependability requirements. This paper presents a service-oriented middleware architecture for safety critical Ambient Intelligence applications, which provides services that enable the designer to develop runtime verification mechanisms; that is, it is possible to continuously monitor the verification of correctness properties defined at design time.
1
Introduction
Ambient Intelligence (AmI) is the emerging computing paradigm, which derives from Pervasive Computing, that refers to electronic environments that are sensitive and responsive to the presence of people [4]. In the past few years, many pervasive computing environments have been developed and deployed to realize smart rooms, active spaces and context-aware applications. All these environments have been devised with the aim of enabling users to derive benefit from technology without being distracted by it, in order to augment productivity, collaboration, and access to technology. A recent trend is to use these technologies in new domains like hospitals, old people’s homes, emergency scenarios, etc. But, such kinds of environment present a new criticality especially concerning the issues of expressing requirements, verifying and validating them, ensuring functional correctness, etc. These applications must be considered safety critical and, consequently, should be designed taking into account such a criticality. As an example, let us consider the application described in [14]; it mainly consists in a tele-monitoring system that processes the stream of physiological data coming from an Electrocardiogram (ECG) sensor monitor of a cardiopathic patient at home. Data must be processed in real-time; i.e. by granting ”results” within a certain temporal period. Moreover, in the case of critical values, alerts must be raised and processed by a temporal threshold. As also emphasized by the authors, functional incorrectness or run time failures may result in catastrophic consequences for the patients monitored. As a consequence, such considerations require that this class S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 26–37, 2010. c Springer-Verlag Berlin Heidelberg 2010
Safety Critical Ambient Intelligence Applications
27
of systems be designed and developed taking into account intrinsic and stringent dependability requirements. In this paper, we present a service oriented middleware architecture that provides a set of basic mechanisms for rapidly prototyping safety critical Ambient Intelligence applications. In addition to other middleware infrastructure, the one proposed in this paper presents a specific section (set of services) that enables the specification of correctness properties and their check while the system is running. So called runtime verification techniques are adopted both to tune the system in its early running and to monitor its correct behavior once deployed definitively. The rest of this paper is organized as follows. Section 2 presents our motivation and related work. Section 3 describes the middleware architecture. Section 4 focuses on runtime verification mechanisms for correctness properties. Section 5 presents a case study. Finally, Section 6 concludes the paper.
2
Motivation and Related Work
A remarkable example of safety critical AmI applications is the class of Ambient Assisted Living (AAL), which regards the realization of Smart Environments to monitor elderly and ill people. A middleware infrastructure for AAL applications is the PERSONA project (Perceptive Spaces prOmoting iNdepentent Aging) [15], which aims at developing a scalable open standard technological platform for building a broad range of Ambient Assisted Living Services. This is an ongoing project funded by the European Commission. The main technical challenge is the design of a self-organizing middleware infrastructure allowing the extensibility of component/device ensembles. The communication patterns of the infrastructure are based on distributed coordination strategies for service discovery and utilization. The current prototype of the PERSONA middleware, implemented on the OSGi platform [12], uses connectors based on UPnP, Bluetooth, and R-OSGi [18]. However, the development of such a kind of applications presents new criticalities depending on their intrinsic characteristics, as for an example the dependency of the system behavior from the user and resources location and movements. Such criticalities can partly be faced by means of formal methods [17]. On the other hand, the use of formal methods in the field of pervasive computing is a relatively new trend and most of existing applications rely on Ambient Calculus (AC ) [3] that provides interesting primitives for the designer of pervasive systems. As an example, Campbell and Ranganathan [2] have argued the need for the formal specification of pervasive computing environments and have proved the correctness of some elements of their system GAIA by means of AC. In previous papers, we have defined a methodology that enables the designer to specify formally an Ambient Intelligence or a Pervasive Computing application [5] [6]. However, formal methods are typically not confined to the specification phase. Indeed, they can be adopted to prove the correctness of the specification or the
28
A. Coronato and G. De Pietro
implementation. In particular, Model Checking, that along with Theorem Proving and Static Analysis is a technique aiming at static program verification [13], which is concerned with checking if all possible traces derived from a program (or abstract model) satisfy a property of interest. In contrast to these techniques, this paper focuses on runtime verification which is concerned with checking traces of events generated from the program run against properties described in the proposed logic. When a property is violated or validated, the program can take actions to deal with it. The technique can be used both for testing before deployment of the software, and for monitoring after deployment. In the first case, one must come up with test cases [1] that might uncover a bug. In this setting, runtime verification is considered as an auxiliary tool to automate the creation of oracles that detect errors. In the second case, runtime verification is used to monitor a program during its execution so to take actions in response to the violation of properties. With this perspective in mind, a runtime verification tool may be used to define how the program reacts to bugs, possibly steering it to the correct behavior [11]. It is useful to note that runtime verification techniques can be adopted also to tune the system. This is particularly true for pervasive applications whose behavior can strongly depend on operating conditions. As an example, an RFID reader can fail to detect a tagged user depending on i) the orientation of the antenna, ii) the power of the antenna itself, iii) the position of the tag on body, iv) the existence of an object between the tag and the reader at the time of reading, etc. All these conditions may be very difficult to verify with static techniques. In contrast, runtime verification of the prototype system in the real domain of application can make possible the collecting of traces that can be used to tune the system. It is important to note that runtime verification techniques typically concern real-time properties [16], but in this paper we extend the verification to properties related to physical locations.
3
Middleware Architecture
In this section, we describe the overall middleware architecture. Figure 1 shows the key services, layers and modules of the proposed middleware. The bottom-left section regards Human Computer Interaction. It includes mechanisms for handling natural and advanced interactions in a smart environment. Indeed, one of the grand challenges for future smart environment applications is making interaction with technology-rich environments intuitive, natural, unobtrusive, intelligent, and distraction free. Currently, two services have been developed, a TextToSpeech Service, which is in charge of synthesizing vocal indications, and a Messaging Service that is in charge of sending textual messages to the user’s mobile device [7]. The bottom-right section is about Sensing and Controlling. This section includes hardware sensors and actuators. These two sections are structured in different layers. The lowest layer includes hardware devices. The heterogeneity of the components at this layer is handled by means of software components,
Safety Critical Ambient Intelligence Applications
29
Fig. 1. Middleware architecture
namely facilities, which hide the hardware components to upper layers. For example, the RFID Facility provides support to handle an RFID antenna; thus, each RFID antenna has its own facility that will handle interactions between the hardware component and the rest of the software system. Upon this layer, a Facility Service handles the set of homogeneous facilities that stand below; i.e. a facility service catches information coming from the set of facilities that are related to the same kind of hardware device, RFID antenna for the case of RFID. These services are in charge of capturing data coming from hardware components and handling them as an integrated set of information for the upper levels. Thus, the RFID Facility Service (one of the facility services not shown in the figure) collects information coming from any RFID antenna deployed within the environment. The middle section offers communication functionalities. In particular, in addition to RPC, an asynchronous communication mechanism is exposed by the Event Service. This service is in charge of dispatching events between software components. It supports the publish-subscribe mechanism. Further details can be found in [8]. The topmost section concerns the context. The services defined in this layer are: – Topology Service - This service provides a unique and uniform representation for the topology of the environment. In particular, locations are classified as semantic locations (buildings, floors, rooms, an area in front of a wall monitor, etc) and physical locations (the area sensed by an RFID antenna, the area covered by a WiFi access point, etc.) [9]. – Tracking Service - This service offers a mechanism to track all movements of a mobile resource or user.
30
A. Coronato and G. De Pietro
– Location Service - This component is in charge of handling physical location information for mobile resources and users. In particular, it locates mobile users by means of the RFID technology and WiFi enabled mobile devices by means of classic location techniques [9]. – User Service- This service provides basic authentication mechanisms for users and handles the list of all users active in the environment. – Resource Service - This component extends standard mechanisms for registering and monitoring resources, like laptops, PDAs and sensors. Finally, the correctness section includes mechanisms for runtime verification. The correctness properties are defined with respect to the state of an ambient, which is a physically bounded entity of the domain. An ambient may be i) a location of the environment (e.g. a room in which only authorized people can enter); ii) a resource (e.g. a constrained mobile device that can execute only lightweight software agents); or iii) a person (e.g. a user that can invoke some services only after having been identified); etc. The correctness properties can also be defined with respect to temporal properties (i.e. real-time constraints). The set of services defined for runtime verification consists of: – RunTimeStateHolder Service - This is the component that holds and exposes the state of an ambient. – RunTimeChecker Service - This is the component that checks, on behalf of an ambient, the properties of hosted, entering and leaving ambients. – Timer Service - This is the component that holds and verifies temporal constraints. – Monitoring Service- This service provides basic mechanisms for monitoring the entire system.
4
Runtime Verification
In this section, the services for runtime verification are described. Runtime verification is divided into two parts: instrumentation and event observation. A monitor receives events from the executing program, emitted by event generators inserted during instrumentation, and dispatches them to a collection of algorithms, each of which performs a specialized trace analysis. In the following, both the structural and behavioral models are presented. The structural model is reported in figure 2 and consists of a set of software components that instrument the running system in order to be monitored by an external monitor, the Monitoring Service. It is important to note that in addition to real-time properties we are interested in correctness properties that are related to locations. 4.1
Structural Model
The detailed architecture is: RunTimeStateHolder This component supports the following structure:
Safety Critical Ambient Intelligence Applications
31
– S - This is the state of the current ambient; – ES - This is the list of all admissible states for an entering ambient; i.e. another ambient must verify one of these states in order to enter the current ambient; – LS - This is the list of all admissible states for a leaving ambient; – HS - This is the list of all admissible states for a hosted ambient; – getState - This operation returns the current state; – setState - This operation updates the current state to a new value; – getHostedStates - This operation returns the list of admissible states for a hosted ambient; – setHostedStates - This operation sets the list of admissible states for a hosted ambient; – getEnteringStates - This operation returns the list of admissible states for an entering ambient; – setEnteringStates - This operation sets the list of admissible states for an entering ambient; – getLeavingStates - This operation returns the list of admissible states for a leaving ambient; – setLeavingStates - This operation sets the list of admissible states for a leaving ambient; RunTimeChecker This component supports the following operations: – canEnter - This is the operation that verifies whether an ambient (say for example b) can enter or not the current ambient (a); i.e., when the ambient b tries to enter into a, this method verifies whether the current status of b is admitted by a, or not; – canLeave - This is the operation that verifies whether an ambient (b) can leave or not the current ambient (a); – canHost - This is the operation that verifies whether an ambient can be hosted or not by the current ambient. Timer This component supports the following structure: – TimeToExpire - This is the time the timer has to wait before expiring; i.e., this is the temporal range to complete a real-time operation; – TimeToAlert - This is the time the timer waits before raising an alert. It holds the property (TimeToAlert < TimeToExpire). This parameter, which is optional, is used to send an alert a certain time before the timer expires; – setTimer - This is the operation that sets the timer’s parameters; – startTimer - This is the operation that starts the timer; – ariseAlert - This is the operation that raises an alert before the timer expires; – expire - This is the operation that sends a message when the timer expires.
32
A. Coronato and G. De Pietro
Fig. 2. Pattern Structural View
4.2
Behavioral Models
The case of an action of type enter in is detailed. In particular, the ambient b wants to enter the ambient a. For this case, two alternative interaction models are specified. In figure 3(a), the ambient b itself is in charge of verifying that the condition Enabled for entering the ambient a is satisfied. Eventually, the ambient b is considered trustworthy. In contrast, in figure 3(b), the ambient a is in charge of verifying incoming ambients, but, it must be notified of this action in some way.
(a) Incoming centered responsibility
(b) Hosting centered responsibility
(c) Change of the State of a Hosted Ambient Fig. 3. Capability in - Pattern Behavioral Views
Finally, in figure 3(c) the case of change of the state for a hosted ambient is reported. In this case, the hosted ambient (b in the figure) must notify its new state to the hosting one (a). After that, the hosting ambient verifies that the new state is compliant with the states admissible for hosted ambients.
Safety Critical Ambient Intelligence Applications
5
33
Case Study
In this section, we present a case study. The system being designed is a Pervasive Healthcare Application for the Department of Nuclear Medicine of the University Hospital ”Secondo Policlinico” of Naples. 5.1
Informal Description
Within the Department, patients are injected with a small amount of a radioactive substance in order to undergo specific examinations (e.g. Blood Volume Study, Bone Scan, Brain Scan, etc.). Once injected, patients emit radiation (gamma rays) and have to stay in a specific room to wait for the examination to be performed. The time patients have to wait depends on the kind of examination that has to be performed and the time the radioactive substance takes to propagate -within the body- and to decay to the right level. In fact, examinations can be executed only if the radiation level is in a certain range. After the examination, patients return to the waiting room until the level of radiation becomes less than a specific threshold and, so, harmless. The department consists of the following rooms: 1) Acceptance Room (AcceptanceRoom) -This is the room where patients are accepted within the department and wait for injection; 2) Injection Room (InjectionRoom) -This is the room where patients receive the injection; 3) Hot Waiting Room (HotWaitingRoom) -This is the room where patients wait for the examination after having been injected and until the radiation level reaches the correct range; and 4) Diagnostic Room (DiagnosticRoom) -This is the room where examinations are performed. Currently, patients are accompanied by nurses when moving within the department. The goal is to have an automatic system that would lead them. The system will adopt RFID readers and tags to identify and locate patients within the department. Mobile devices will also be used to send messages to patients in order to invite them to move (e.g. ”Move to the injection room”, ”exit the department”, ”you are not allowed to enter this room”, etc.). In this way, nurses will no longer be necessary to guide patients within the department. This will have two benefits: lower costs and fewer people exposed to radiation. 5.2
A Peace of the Formal Specification
First, the following classes of ambients are concerned: {Department, Room, Patient, RFIDReader, RFIDTag, MobileDevice, Message}
It is possible to specify the status of each ambient. The injection room and diagnostic room can be either ’WORKING’ or ’NON WORKING’. When ’WORKING’, it can be ’IDLE’ -no patient inside- or ’BUSY’. The patient is ’WAITING TO BE INJECTED’ (W) before having the injection and ’INJECTED’ (I) after the injection. Next, when the radioactive substance decays to the right level for the examination, he is ’READY’ (R) to be examined. After the examination his status
34
A. Coronato and G. De Pietro
is ’EXAMINED’ (E). Finally, when the radioactive substance becomes harmless, he is ’DECAYED’ (D). It is also possible to assume that other classes of ambients are stateless. The following formulas specify these possible states: Room ∈ {NON WORKING,WORKING*IDLE,WORKING*BUSY}
(1)
Patient ∈ {W,I,R,E,D}
Now, let us focus on some dynamic aspects. As an example, it is possible to formalize the path of a patient who has to move from the hot waiting room to the diagnostic room in order to undergo the examination. Before this, some constraints regarding this movement are expressed. Indeed, concerning the hot waiting room, a patient can enter only when he is just injected or examined and can exit only when ready to be examined or decayed. Therefore, the following constraints must be guaranteed: Patient canEnter(HotWaitingRoom), iff Patient ∈ {I,E}
(2)
–A patient can enter the hot waiting room only if he is INJECTED or EXAMINED Patient canLeave(HotWaitingRoom), iff Patient ∈ {R,D}
(3)
–A patient can leave the hot waiting room only if he is READY or DECAYED HotWaitingRoom canHost(Patient), iff Patient ∈ {I,R,E,D}
(4)
–A patient can stay in the hot waiting room only if he is INJECTED, READY, EXAMINED or DECAYED
It is worth noting that, on one hand, the specification proposed so far describes in an unambiguous way part of the application domain and behavior of its users; on the other hand, constraints and properties (e.g. canEnter ) will affect the software system. One of the most important constraints for the application regards the minimum and maximum time to wait for the examination after the patient has received injection. This is specified by the following formula: T MIN
(5)
where TMIN is the time to wait until the radioactive substance is sufficiently decayed to enable examination; TMAX is the maximum time to wait after the patient has been injected; Tk is the time when the patient is injected; and, Tj is the time when the examination is completed. 5.3
System Architecture and Runtime Verification
In this section, an implementation for runtime verification is provided. For the sake of brevity, the focus is on correctness properties related to the hot waiting room. Monitoring and runtime verification is accomplished by means of the following services: – PatientStateHolder - This is the component that holds and exposes the state of a patient by means of the operations getState and setState. Such operations act accordingly with what defined previously (1);
Safety Critical Ambient Intelligence Applications
35
– HotWaitingRoomStateHolder - The ambient hot waiting room is stateless; but, it must specify which are the states admissible for patients who try to get in/out of, or are hosted by the room. Then, it supports all the features of the RunTimeStateHolder component (figure 2) with the exception of S, getState and setState; – HotWaitingRoomChecker - This is the component that checks, for the hot waiting room, the properties of hosted, entering and leaving patients. Specifically, it supports the operations: canEnter, canLeave and canHost. Thus, the operation canEnter is in charge of verifying the correctness property (2), the operation canLeave refers to the property (3), whereas the operation canHost verifies the correctness property (4). – Timer - This is the component that verifies the temporal constraint (5); – EventService - This service is in charge of dispatching events between software components; – LocationService - This service is able to identify and locate RFID tagged entities; – MessagingService - This service offers functionalities in order to send messages to patients through their mobile devices; – Graphic User Interfaces - Two user interfaces are available: InjectionRoomInterface and DiagnosticRoomInterface. Both enable a doctor to select a patient from a waiting list and next to update the patient status. For an example, in the case of injection, a bottom Injection allows to change the status of the selected patient to ’INJECTED’. Now, let us analyze three possible scenarios. Scenario 1. The operator in the hot waiting room uses the InjectionRoomInterface to select and call a patient for the injection (see figure 4), let us call him Massimo Rossi. Next, the software interface component invokes the MessagingService to send a message to the patient by means of the operation MoveToRoom. Subsequently, the message is received and shown by the Massimo Rossi’s mobile device. Next, after the injection has been performed, the operator pushes the bottom ’INJECTED’, which produces three events: 1) the state of the patient is changed to ’INJECTED’ by means of the setState operation; 2) the Timer is set by the setTimer operation; and, 3) the patient is required to move to the hot waiting room by the operation MoveToRoom. Scenario 2. Let us suppose that after having received the message that requires to move to the injection Room, by mistake Massimo Rossi moves to the hot waiting room. Once at the door, he is located and identified by the LocationService, which alerts the HotWaitingRoomChecker. The HotWaitingRoomChecker asks the PatientStateHolder for the state of the patient. After that, it verifies that the state of Massimo Rossi is not compatible with any admissible by the hot waiting room since he has not yet been injected. Then, a message is sent to the Massimo Rossi’s mobile device in order to require he move away.
36
A. Coronato and G. De Pietro
Fig. 4. Case Study - A piece of system architecture
Scenario 3. Let us suppose the case that the Timer expires while the patient is within the hot waiting room and he has not undergone the examination yet; i.e. the correctness property (15) is not verified. In this case an event is generated by the Timer and notified to the EventService. Next, the Timer updates the state of the patient to ’DECAYED’ by invoking the setState operation. Successively, the HotWaitingRoomChecker, which periodically verifies the state of the patients in the room, detects the new state for Massimo Rossi and concludes that he can no longer stay in the room. Consequently, a message is sent to his mobile device.
6
Conclusions
Ambient Intelligence is one of the most exciting fields of application for pervasive, wireless and embedded computing. Indeed, promising prototypes are continuously being proposed by both academia and industry. However, the design and realization of real -non prototype- systems that may affect the safety of their users must be conducted by means of software engineering approaches and taking into account dependability issues. This paper has presented some middleware mechanisms for runtime verification of Ambient Intelligence applications. Such mechanisms are part of a methodology that relies on the use of formal methods for i) specifying AmI applications in an unambiguous way; ii) statically verifying the correctness of the specification; and iii) dynamically verifying the correctness of the implementation. This
Safety Critical Ambient Intelligence Applications
37
choice is due to the consideration that the correctness of specifications does not imply the correctness of implementation. In contrast, runtime verification of the prototype system in the real domain of application can make possible the collecting of traces that can be used to tune the system or to monitor the system itself in order to execute recovery strategies whenever a correctness proprty is violated.
References 1. Artho, C., et al.: Combining test case generation and runtime verification. Theor. Computer Science 336 (2005) 2. Campbell, R., Ranganathan, A.: Provably Correct Pervasive Computing Environments. In: Proc. of PerCom 2008 (2008) 3. Cardelli, L., Gordon, A.D.: Mobile Ambients. Theor. Computer Science (2000) 4. Cook, J., Augusto, J.C., Jakkula, V.R.: Ambient Intelligence: Technologies, applications, and opportunities. Pervasive and Mobile Computing 5(4) (2009) 5. Coronato, A., De Pietro, G.: Formal Specification of Wireless and Pervasive Healthcare Applications. ACM Transactions on Embedded Computing Systems (to appear in the SI on Wireless Healthcare) 6. Coronato, A., De Pietro, G.: Formal Specification of Dependable Pervasive Applications. In: The Proc. of APSCC 2009 (2009) 7. Coronato, A., De Pietro, G.: Middleware mechanisms for supporting multimodal interactions in smart environments. Computer Communications 31(18) (2008) 8. Coronato, A., De Pietro, G.: MiPeG: A Middleware Infrastructure for Pervasive Grids. Journal of Future Generation Computer Systems 24(1) (2008) 9. Coronato, A., De Pietro, G., Esposito, M.: A Multimodal Semantic Location Service for Intelligent Environments: An Application for Smart Hospitals. Personal and Ubiquitous Computing 13(7) (2009) 10. Crisler, K., Anneroth, M., Aftelak, A., Pulil, P.: The human perspective of the wireless world. Computer Communications 26(1) (2003) 11. d’Amorim, M., Havelund, K.: Event-based runtime verification of java programs. In: Proc. of WODA 2005 (2005) 12. Hall, R.S., Cervantes, H.: An OSGi implementation and experience report. In: Proc. of Consumer Communications and Networking (2004) 13. Karlsson, D., Eles, P., Peng, Z.: Formal verification of component-based designs. Journal of Design Automation for Embedded Systems 11(1) (2007) 14. Lee, R.G., Chen, K.C., Hsiao, C.C., Tseng, C.L.: A Mobile Care System With Alert Mechanism. IEEE Transactions on Information Technology In Biomedicine 11(5) (2007) 15. PERSONA, http://www.aal-persona.org/ 16. Rosu, G., Havelund, K.: Rewriting-based techniques for runtime verification. Automated Software Engineering 12(2) (2005) 17. Saha, G.K.: Software fault avoidance issues. ACM Ubiquity 7(46) (2006) 18. Wu, J., Huang, L., Wang, D., Shen, F.: R-OSGi-based architecture of distributed smart home system. IEEE Trans. on Consumer Electronics 54(3) (2008)
Ranking Algorithm by Contacts Priority for Social Communication Systems Natalia Dudarenko, Juwel Rana, and Kåre Synnes Department of Computer Science and Electrical Engineering Luleå University of Technology, SE-971 87 Luleå, Sweden {natalia.dudarenko,juwel.rana,kare.synnes}@ltu.se
Abstract. The paper presents the ranking algorithm by contacts priority with application for social communication services. This algorithm makes it possible to rank contacts in different social communication services by their priority for the user, and find a preferable communication tools for every contact in the social graph. It is proposed to determine priorities of the contacts using communication history. The ranking algorithm is based on the Markov chains theory and social strength calculation approach. The paper exploits the opportunities for measuring social strength for the contacts and also prioritizes communication tools for simplifying communication. The results are supported by an example. Keywords: Ranking algorithm, Markov chains, Social strength, Communication service, Contacts priority.
1 Introduction The social networking and communication services (Facebook, MySpace, Twitter, etc.) have a large impact on our daily life due to enormous applications and large number of users (e.g., Facebook have 400 Milion active users) [1, 6]. In general, the services form social graph among the contacts, provide online interactions among the contact individuals, facilitate content sharing mechanism, and also offer different kind of group communication tools. In a way, this forwards the traditional communication services (e.g., Email, SMS) to new directions (e.g., Google Wave) where Web technologies and mobile devices are playing a very important role [2]. However, that increased numbers of communication services (social networking and communication services) generates huge amount of contents (e.g., picture, video, presence information, etc), which add new challenges for maintaining contacts, and contents, and initiating group communication [4, 10]. Therefore, this paper addresses to the problem of social ranking of the contact individuals by providing an algorithm and discusses possible application scenarios for that. The paper proposes the ranking algorithm by contacts priority (CP-Rank algorithm) that allows classifying the contacts by their priority for the user and finding a preferable communication tools for every contact. The proposed method prioritizes the contacts based on communication history. However, aggregating communication history log is S. Balandin et al. (Eds.): NEW2AN/ruSMART 2010, LNCS 6294, pp. 38–49, 2010. © Springer-Verlag Berlin Heidelberg 2010
Ranking Algorithm by Contacts Priority for Social Communication Systems
39
not addressed in the paper. The focus of the paper is to provide sophisticated algorithm for ranking social contacts and communication tools. The CP-Rank algorithm is based on Markov chain theory. The social strength calculation algorithm [20] generates the values for the transition probability matrix with respect to the CP-rank algorithm. The rest of the paper is organized as follow. Section 2 provides related work of the research problem. Section 3 describes social strength as a building block of this research. Section 4 proposes CP-Ranking followed by the algorithm. Section 5 includes an example. Section 6 provides evaluation. Finally, Section 7 contains the discussion and future work. The conclusion is in Section 8.
2 Related Work Reto et al., do a survey for group communication and collaboration in mobile settings where they come to the result that contact ranking is an important problem [16]. They apply the CONGA algorithm for detecting group or community of contacts. In our work, the contacts are ranked in more generalized manner to form groups based on social strength rather detecting communities from the communication log. Ranking algorithms for example Pagerank or hypertext induced topic search [17, 18] are specialized for Web link searching. In the paper, we also develop an algorithm called CP-ranking for ranking the contacts and their communication tools in the online social networks. HITS or Pagerank algorithms consider in-links and out-links to form the utility functions used in the algorithm, while in our proposed algorithm we considered number of interactions using different communication tools in online social networking and communication services to measure social strength. Bao et al., propose two algorithms SocialSimRank and SocialPageRank for capturing the popularity of Web pages [7]. The algorithms take feedback of the user in form of social annotations. In our work, we consider frequency of communication with particular tools to identifying the popularity of particular communication tools. We also consider different threshold values based on popularity of tools to get good result. Different approaches for dealing with social strength are described in [5, 9, 16, 20]. In those papers different kind of quantitative methods are applied to capture social strength. The Markov chain theory is applied for finalizing social strength. As opposed to Zhang X. et al., who take into account the importance of the in-links and out-links and the different link weights, we use the social strength to form transition probability matrix [19].
3 Social Strength Calculation This section discusses how social strength can be calculated from different communication and social networking services. In the paper, social strength defines as numerical values to rank the contacts of a particular user’s social graph. For example, if a user has a social graph of three contacts (A, B and C) then their corresponding social strengths can be represented as 0.30, 0.50 and 0.20, which exposes that the user is
40
N. Dudarenko, J. Rana, and K. Synnes
highly connected with the contact B. Since the algorithm was described in an earlier work [20], we limit ourselves to a short description for the self-containment of this paper. Fig. 1 shows a conceptual overview of how social data (e.g., calendar data, sensor data, etc) is collected from different communication and social networking services and processed through aggregated social graph framework. When the user interacts in social media the interactions are captured by the framework [3]. Then the framework applies social strength calculation algorithm to generate rank of contacts in the social graph. For instance, Strength measurement block in the Fig. 1 applies social strength calculation algorithm and provides strongest network of contacts.
Fig. 1. Conceptual Architecture
Communication history log is processed (see Table 1) by following the approach of [20]. According to the approach, each of the frequency parameter f includes three dimensions where, i implies to communication service, j implies to communication tools and k implies to contacts (Fig. 2). In the Table 1, the field where i=1, j=1, k=1 means that Johan, a contact of the social graph interacts with the user through the Facebook messaging tool. The overall social strength of the user U (U is the main user which forms the aggregated social graph for all of his/her contacts) is n
S = ∑ sk = 1 , k =1
(1)
Ranking Algorithm by Contacts Priority for Social Communication Systems
41
k(Contact) j(Communication tool)
f
i(Communication service)
Fig. 2. Frequency Data Type
In the proposed CP-Ranking algorithm, the sum of strength of all values in a row of transition matrix is 1. In [20], utility functions are used to formulate social strength calculation algorithm. The utility function for social strength calculation is q
si , a = ∑ j =1
f i , j , a thresij n
∑ k =1
fi, j , k
,
(2)
where parameter si,a in equation (2) provides the strength of the user U with the contact a, considering all interactions in particular communication service i; q is the number of communication tools of the service i. The parameter thresij is the threshold value estimated over the usage on communication tool j of the communication service i. For instance, if the user has 4 contacts, 4 communication services, in which each services has 2 different communication tools and each of the communication tools has threshold to signify the effects of that particular communication tool, then the equation will provide 4 different strengths for the 4 contacts. The overall sum of the strength will be 1, as mentioned before. p
sa = ∑ thresi si , a .
(3)
i =1
Equation (3) accumulates strengths collected from Si,a to measure global rank of the contacts. Here, the parameter sa provides the overall strength of the user U with the contact a. The parameter thresi is the threshold value estimated over the usage on communication service i. Utility based approach is able to tune threshold values for the different communication tools and services, which is discussed more in [20]. Usage of the tools and services are taken into consideration for tuning threshold parameter dynamically.
42
N. Dudarenko, J. Rana, and K. Synnes Table 1. Frequency logs
Name
Johan (k=1) Natalia (k=2) Kare (k=3) Juwel (k=4)
FB/Message (i=1,j=1) 3 2 1 3
FB/Photo (i=1,j=2) 0 2 0 4
FB/Comments (i=1,j=3) 0 1 6 2
Mobile-phone/Call (i=2,j=1) 5 1 2 2
In the next section the proposed CP-ranking algorithm allow to aggregate the result, rank the contacts and find the preferable service/tools for the user/contacts using social strength.
4 The Proposed CP-Rank Let us consider the communication process in any communication system as a finite Markov chain [13], where S={Si: i=1÷n} is the states set of stochastic process with interactions between the user and his contacts, and between the contacts and communication tools of the different services; P={Pij: i=1÷n, j=1÷n} is the set of probabilities Pij (i=1÷n, j=1÷n) of moving from the state Si to the state Sj. P is a stochastic matrix, the Markov chain is a random walk on the graph defined by the interactions structure of the contacts. The probabilities set satisfies the equation [13,14] n
∑ P =1, i =1
i
(4)
that P = P1
P2 … Pi … Pn = row{Pi : i = 1, n} ;
(5)
Ptr =col{|row(Pij): j=1÷n|, i=1÷n} is the transition probability matrix from the state Si into the state Sj (i,j=1÷n); K={k:0≤k<∞} is the finite number of discrete sample time such that the stochastic process is in the state S(k+1) with probability vector P(k+1) and in the state S(k) with probability vector P(k) satisfy the equation P(k + 1) = P(k ) Ptr (k ) , P(0) = P{S (0)} ,
(6)
where P(0)=P{S(0)} is the initial probability vector of stochastic process being in the initial state S(0). In our problem statement the transition probabilities matrix is based on the values of the social strengths of interactions between the user and contacts which is discussed in the previous section. Let us consider the aggregated social graph as the graph representation of the communication process. For instance, the user U has 3 contacts k1, k2, k3. The
Ranking Algorithm by Contacts Priority for Social Communication Systems
43
connections between the user and his contacts can be realized with 2 services. One of the services has two communication tools (f11, f12), and another one has only one communication tool (f21). The contact k1 apply the communication service 1 with tools f11 or f12; the contact k2 likes to use the communication tools f11 of the service 1 or the tool f21 of the service 2. The third contact k3 prefers to connect by one of the all possible tools. Notice that every contact has individual preference about communication service and communication tool for interaction with the user. The social graph of the system S is shown in Figure 3. Using the social graph we get the next transition probabilities matrix 0 0 0 0 0 0 0 ⎡0 sk (i, f ,k1) sk (i, f , k2) sk (i, f ,k3) ⎤ ⎢0 ⎥ 0 0 0 sk (1, i f 1, k1) sk (1 i , f 2, k1) 0 0 0 0 0 ⎢ ⎥ ⎢0 ⎥ 0 0 0 0 0 sk (1 i , f 1,k2) sk (i2, f 1,k2) 0 0 0 ⎢ ⎥ 0 0 0 0 0 0 0 sk (1, i f 1,k3) sk (1, i f 2,k3) sk (i2, f 1,k3)⎥ ⎢0 ⎢0 ⎥ 0 0 0 1 0 0 0 0 0 0 ⎢ ⎥ Ptr = ⎢0 0 0 0 0 1 0 0 0 0 0 ⎥ ⎢0 ⎥ 0 0 0 0 0 1 0 0 0 0 ⎢ ⎥ 0 0 0 0 0 0 1 0 0 0 ⎢0 ⎥ ⎢ ⎥ 0 0 0 0 1 0 0 0 0 0 ⎢0 ⎥ ⎢0 ⎥ 0 0 0 0 0 0 0 0 1 0 ⎢ ⎥ 0 0 0 0 0 0 0 0 0 1 ⎣0 ⎦
(7)
Fig. 3. Social graph
Let us find the solution of equation (8) using recurrent method [15] ⎧ P (1) = P ( 0 ) Ptr , ⎪ 2 ⎪ P ( 2 ) = P (1) Ptr = P ( 0 ) Ptr Ptr = P ( 0 ) Ptr , ⎨ 2 3 ⎪ P ( 3) = P ( 2 ) Ptr = P ( 0 ) Ptr Ptr = P ( 0 ) Ptr . ⎪ ⎩…
(8)
44
N. Dudarenko, J. Rana, and K. Synnes
So, the solution of (8) is
P ( k ) = P ( 0 ) Ptr k .
(9)
The final probability vector Pf = lim { P ( k ) = P ( 0 ) Ptrk } satisfies the next equation k →∞
[13] Pf = Pf Ptr .
(10)
The solution of equation (10) with respect to the final probability vector Pf allows ranking the probabilities of stochastic process being in the state Si; then we obtain priorities of the user’s contacts and priorities of the contacts with respect to the communication tools. Now, we can describe CP-Rank algorithm.
5 The CP-Rank Algorithm The CP-Ranking algorithm follows the steps mentioned below: 1. Build the graph of communication process, where states are the user, his contacts, and communication tools. 2. Using the social strength calculation algorithm, find the social strength of all interaction between the user and his contacts, and calculate the social strength of every communication tool that are used by the contacts. 3. Form the transition probability matrix Ptr in form (7). 4. Solve the matrix equation (10). 5. Sort the user’s contacts in descending order with respect to the final probabilities. 6. Sort the communication tools in descending order with respect to every contact of the user by the final probabilities.
6 Example Let us consider the graph representation of communication process as graph in figure 3, where the social strengths for every user’s contact and every communication tool are the next values sk (i, f ,k1) =6/16; sk (i, f ,k2) =3/16; sk (i, f ,k3) =7/16; sk (1, i f 1,k1) = 2/6; sk (1, i f 2,k1) = 4/6; sk (1, i f1,k2) = 2/3; sk (i2, f1,k2) =1/3; sk (1, i f 1,k3) =1/7; sk (1, i f 2,k3) = 4/7; sk (i2, f 1,k3) =2/7.
Ranking Algorithm by Contacts Priority for Social Communication Systems
45
In this case, we get the transition probability matrix in the form ⎡0 6/16 3/16 7/16 0 0 ⎢0 0 0 0 2/6 4/6 ⎢ ⎢0 0 0 0 0 0 ⎢ 0 0 0 0 ⎢0 0 ⎢0 0 0 0 1 0 ⎢ Ptr = ⎢0 0 0 0 0 1 ⎢0 0 0 0 0 0 ⎢ 0 0 0 0 ⎢0 0 ⎢ 0 0 0 0 0 0 ⎢ ⎢0 0 0 0 0 0 ⎢ 0 0 0 0 ⎣0 0
0 0 2/3 0 0 0 1 0 0 0 0
0 0 0⎤ 0 0 0 ⎥⎥ 0 0 0⎥ ⎥ 1/7 4/7 2/7⎥ 0 0 0⎥ ⎥ 0 0 0⎥ 0 0 0⎥ ⎥ 0 0 0⎥ ⎥ 1 0 0⎥ 0 1 0⎥ ⎥ 0 0 0 1⎦
0 0 1/3 0 0 0 0 1 0 0
Using (16), we obtain the final probability vector Pf Pf 1 = 6 / 16 Pf 2 + 3 / 16 Pf 3 + 7 / 16 Pf 4 ; Pf 2 = 2 / 6 Pf 5 + 4 / 6 Pf 6 ; Pf 3 = 2 / 3Pf 7 + 1/ 3Pf 8 ; Pf 4 = 1/ 7 Pf 9 + 4 / 7 Pf 10 + 2 / 7 Pf 11 ; Pf 5 = Pf 5 ; Pf 6 = Pf 6 ; Pf 7 = Pf 7 ; Pf 8 = Pf 8 ; Pf 9 = Pf 9 ; Pf 10 = Pf 10 ; Pf 11 = Pf 11 ; Pf 1 + Pf 2 + Pf 3 + Pf 4 + Pf 5 + Pf 6 + Pf 7 + Pf 8 + Pf 9 + Pf 10 + Pf 11 = 1. The priorities for the user’s contacts can be found from the first row of the transition probability matrix and satisfy the next sequence: P3, P1, P2. The solution for searching the prevalent communication tools is Pf = 0 0 0 0 0.1111 0.2222 0.2222 0.1111 0.0476 0.1905 0.0952 . It is obvious that contact k1 prefers the communication tool f12; the contact k2 like to use the communication tool f11; the contact k3 usually connects with the user by the communication tool f12.
7 Evaluation We run an experiment over a simulated data-set to test the algorithm. The data-set is generated using random interaction generator and it is represented in MXML form of data-set to apply mining operations [11]. The generator follows Weibull distribution to produce more realistic interactions [12]. Using the CP ranking method, the ranks of the contacts is measured considering the user’s all interactions stored in the data-set. After that, we made different queries to form groups. To form the groups, group generation factors are used as search-key, for example, communication tools or locations. We preset counters in the interaction generator to log total number of properly
46
N. Dudarenko, J. Rana, and K. Synnes
generated groups using the group generation factors. Also, at the query time, we get total number of properly formed group and total number of returned groups. Using these numbers, we calculate precision and recall, which is quite standard method to evaluate performance of search techniques. The precision and recall satisfy the next form Precision= (number of properly formed group)/total formed group Recall= (number of properly formed group)/total number of properly formed group The result is not fully-completed, yet it is found that the measured precision and recall for group formation factors using different factors are satisfactory, except for the cases where context data have direct influence on group formation. To increase performance for that case, it is needed to have sophisticated method for capturing realtime context, which is not focus of the current paper.
8 Discussion and Future Work The paper exploits Markov chain theory to address the problem of social ranking. In the proposed approach, social strength calculation mechanism provides a strong background to apply the Markov chain theory in the problem space. The problem targets initiation of group communication by exploiting social strength, social rank and finally social contexts in the paper. It investigates how Markov chain theory provides the strength of current state based on probability transition matrix. The transition matrix is formed on the calculated social strength of the previous states. It is not defined yet how the approach could be utilized for predicting suitable communication tools to initiate a group communication or predicting communication patterns. Therefore, the current contribution can be motivated by a simple scenario of group initiation problem where the user would like to have a decentralized social networks (i.e., personalized social network from user perspective) to maintain the contacts and communication tracks. The user wants to have support to discover micro-community to initiate communication and also be able to identify the tools through which reachability to the contacts are higher. For example, an application which groups the Tweet messages (i.e., presence information) from different social networks is based on social strength and able to filter the information overloads could be interesting. Fig. 4 illustrates such a proof-of-concept prototype, where the user’s social interest is considered to group contacts in (high, medium, and low) levels and illustrates the presence information about the interested group. The work is not addressed the problem of social data collection and aggregation in unified manner [8], rather it aims at providing sophisticated algorithm for ranking contacts and predicting preferable communication tools of the contacts. Markov chain approach is comparatively new to apply in social strength problem domain which opens up new challenges. For example, how to prove reliability of such approach in context of other possible approaches of social ranking or is Markov chain based approach scalable enough to deal with large size of transition matrix. All these questions will be addressed in future work.
Ranking Algorithm by Contacts Priority for Social Communication Systems
47
Fig. 4. Twittering Client
9 Conclusion The proposed ranking algorithm by contacts priority with application for social communication services is based on the using social strength calculation algorithm and Markov chains theory. The algorithm allows grouping the contacts in different social communication services with respect to priorities of the individual user. The CP-Rank algorithm enables prediction of user's preferences for different communication services. The CP-Rank algorithm is effective in practice for applications made aware of the social strength between users. However, there are the challenges with respect to data about real-world interactions limited by ensuring privacy. Acknowledgments. This work was partly funded by the Research Area Multimedia Technologies of Ericsson Research, where Stefan Håkansson and Dr Johan Kristiansson have been vital for the direction and execution of the research. The work was also supported by the Centre for Distance-spanning Technology (CDT) at Luleå University of Technology, the Norrbotten Research Council and by the Satin-II research project, funded by the European Regional Funds (mål-2), the Swedish Agency for Economic and Regional Growth, the County Administrative Board of Norrbotten, Norrbotten County Council, and the City of Luleå.
References 1. Banerjee, N., Chakraborty, D., Dasgupta, K., Mittal, S., Nagar, S., Saguna: R-u-in? - exploiting rich presence and converged communications for next-generation activity-oriented social networking. In: MDM ’09: Proceedings of the 2009 Tenth International Conference on Mobile Data Management: Systems, Services and Middleware, pp. 222–231. IEEE Computer Society, Washington (2009)
48
N. Dudarenko, J. Rana, and K. Synnes
2. Rana, J., Kristiansson, J., Josef, H., Synnes, K.: Challenges for mobile social networking applications. In: EuropeComm 2009: Proceedings of the First International ICST Conference Communications Infrastructure. Systems and Applications in Europe, pp. 275–285. Springer, Heidelberg (2009) 3. Campbell, A.T., Eisenman, S.B., Fodor, K., Lane, N.D., Lu, H., Miluzzo, E., Musolesi, M., Peterson, R.A., Zheng, X.: Cenceme: Injecting sensing presence into social network applications using mobile phones (2009) (demo abstract), http://citeseerx.ist.psu.edu/viewdoc/summary? doi=?doi=10.1.1.136.6257 4. Jones, Q., Moldovan, M., Raban, D., Butler, B.: Empirical evidence of information overload constraining chat channel community interactions. In: CSCW ’08: Proceedings of the 2008 ACM conference on Computer supported cooperative work, pp. 323–332. ACM, New York (2008) 5. Ankolekar, A., Szabo, G., Luon, Y., Huberman, B.A., Wilkinson, D., Wu, F.: Friendlee: a mobile application for your social life. In: MobileHCl ’09: Proceedings of the 11th International Conference on Human-Computer Interaction with Mobile Devices and Services, pp. 1–4. ACM, New York (2009) 6. Messinger, P.R., Stroulia, E., Lyons, K., Bone, M., Niu, R.H., Smirnov, K., Perelgut, S.: Virtual worlds - past, present, and future: New directions in social computing. Decis. Support Syst. 47(3), 204–228 (2009) 7. Bao, S., Xue, G., Wu, X., Yu, Y., Fei, B., Su, Z.: Optimizing web search using social annotations. In: WWW ’07: Proceedings of the 16th international conference on World Wide Web, pp. 501–510. ACM, New York (2007) 8. Amitay, E., Carmel, D., Har’El, N., Ofek-Koifman, S., Soffer, A., Yogev, S., Golbandi, N.: Social search and discovery using a unified approach. In: 18th International World Wide Web Conference, WWW2009 (2009), http://data.semanticweb.org/conference/www/2009/paper/186 9. Aleman-Meza, B., Nagarajan, M., Ding, L., Sheth, A., Arpinar, I.B., Joshi, A., Finin, T.: Scalable semantic analytics on social networks for addressing the problem of conflict of interest detection. ACM Trans. Web 2(1), 1–29 (2008) 10. Baatarjav, E.-A., Dantu, R., Phithakkitnukoon, S.: Privacy management for facebook. In: Sekar, R., Pujari, A.K. (eds.) ICISS 2008. LNCS, vol. 5352, pp. 273–286. Springer, Heidelberg (2008) 11. Rozinat, A., Wynn, M.T., van der Aalst, W.M.P., ter Hofstede, A.H.M., Fidge, C.J.: Workflow simulation for operational decision support. Data Knowl. Eng. 68(9), 834–850 (2009) 12. Pinder III, J.E., Wiener, J.G., Smith, M.H.: The weibull distribution: A new method of summarizing survivorship data. Ecology 59(I), 175–179 (1978), http://www.jstor.Org/stable/l936645 13. Romanovsky, I.V.: Discrete analysis. Spb: Nevsky Dialect; BHV Peterburg (2003) (in Russia) 14. Akunov, T.A., Alisherov, S., Omorov, R.O., Ushakov, A.V.: Matrix equations in research of discrete processes over the finite and infinite fields. Ilim, Bishkek (1993) (in Russia) 15. Ushakov, A.V., Habalov, V.V., Dudarenko, N.A.: Mathematical base of systems theory: elements of theory and practical work. SPbSU ITMO, SPb (2007) (in Russia) 16. Grob, R., Kuhn, M., Wattenhofer, R., Wirz, M.: Cluestr: mobile social networking for enhanced group communication. In: Proceedings of the ACM 2009 international Conference on Supporting Group Work, GROUP ’09, Sanibel Island, Florida, USA, May 10-13, pp. 81–90. ACM, New York (2009)
Ranking Algorithm by Contacts Priority for Social Communication Systems
49
17. Page, L., Brin, S., Motwani, R., Winograd, T.: The PageRank citation ranking: Bringing order to the web. Technical report, Stanford Digital Library Technologies Project (1998) 18. Liu, B.: Web Data Mining - Exploring Hyperlinks, Contents and Usage Data ISBN 354037881 19. Zhang, X., Fan, X., Liu, X., Hongyu.: A Ranking Algorithm via Changing Markov Probability Matrix Based on Distribution Factor. In: Fifth International Conference on Fuzzy Systems and Knowledge Discovery, pp. 3–7 (2008) 20. Rana, J., Kristiansson, J., Josef, H., Synnes, K.: Enriching and Simplifying Communication by Social Prioritization. In: ASONAM 2010: Proceedings of the The 2010 International Conference on Advances in Social Networks Analysis and Mining, Odense, Denmark, August 9-11 (2010)
CrysP: Multi-Faceted Activity-Infused Presence in Emerging Social Networks Saguna1 , Arkady Zaslavsky1,2, and Dipanjan Chakraborty3 1 2
CaSIT, Monash University, Melbourne, Victoria, Australia Lule˚ a University of Technology, SE-971 87, Lule˚ a, Sweden 3 IBM Research, India Research Lab, New Delhi, India
[email protected],
[email protected],
[email protected]
Abstract. This paper presents Crystal Presence (CrysP) approach where we fuse presence and activity in the realm of social networking. CrysP functions on the basis of the activity-infused multi-faceted presence information. This information is derived from user’s involvement in multiple activities at any point in time. We propose and develop the CrysP System (CrysPSys) to determine CrysP from the user and his/her environmental context information (mainly relating to user activity, moods/emotions and cognition/thoughts) and then sharing the relevant CrysP with the appropriate devices, services and social-networks (corporate, personal and interest networks) and blogs (text, micro, video, photo and voice). We also highlight the benefits and challenges faced in developing such a system. This paper proposes the architecture and its test-bed and prototype implementation. Keywords: Presence, activity analysis, social networks, context, prototype.
1
Introduction
Activity analysis is an area of extensive research in domains such as healthcare, industry/workshop environments and sports. Current research focuses on lower granularities of activities where activities such as walking and running reveal information about user fitness and encourages user to be more active [8]. In this paper our focus is on inferring higher level activities which the user can share with other people, devices or services in the form of user presence. Presence is defined as the availability of a person for communication in the instant messaging (IM) domain [2]. This presence has later been extended as rich presence [11] to include other context information apart from mere availability. We state that presence extensions like RPID (RFC4480) [3] from existing PIDF (RFC 3863) [4], though a step forward, still needs further consideration. We also believe that both presence aggregation [1] which is the incorporation of presence from multiple sources (devices) and presence federation [1] which allows it to be shared S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 50–61, 2010. c Springer-Verlag Berlin Heidelberg 2010
CrysP: Multi-Faceted Activity-Infused Presence
51
across multiple technological domains (IMs, social-networking sites, etc) are also taking presence in the right direction. As new communication tools such as social networking sites [5] (like Facebook, LinkedIn and bookmarking sites like Delicious, Digg, StumbleUpon), blogging tools (micro-, video-, photo-, voice-blogs like Twitter, YouTube, Flickr, Bubbly respectively), citizen journalist and community news sites (Newsvine) are gaining popularity, we see a new form of communicating real-time information (relating to the user or his/her environment) in the form of status updates, tweets, etc. In this paper, we make an attempt to merge presence with activity information as we see it in the new realm of communication tools which are not limited to IM alone and include devices, services, social-networking, microblogging and community news sites. Such social interaction tools provide users with a means to communicate and share real-time information about them like activities undertaken, places visited, and the events related to the user as well as those happening in surrounding environments or which the user comes across from different media. This is a continuous process in time and space and updates are made using a number of devices from stationary (home and office) and mobile locations. This information is shared in real-time with people (family, friends, colleagues, acquaintances, complete unknowns, etc) having different types of relationships with the user. Also, we notice that the content of updates on each social networking site is related to the type of domain of that site and in turn, to the type of relationships the user has with the people in those sites. If a user is a member of the professional site LinkedIn, he/she will most likely make work-related status updates on this site and personal status updates may go to Facebook, for example if the user is writing a report and listening to music in library at the same time, he/she may want to share the information “writing a report in the library” on LinkedIn and “listening to music in library” on Facebook. Thus, to automate this process, we infuse user’s multiple activities to determine user’s multiple presence. We believe a) that presence information is linked closely with the user’s activity information, this is also evident from RFC 4480 on RPID, b) that presence is not merely linked with availability on IMs but transcends through all types of social networking tools mentioned previously, c) presence is now multi-faceted i.e., user can have different presence on different tools, and d) users can also have multiple types of presence information at the same point in time since it is linked closely to the user’s activity information as mentioned in a). Thus, in this paper we present Crystal Presence (CrysP) which is the user’s multiple activity infused presence information, implement the CrysP System (CrysPSys) to determine user’s CrysP from their sensed multiple activity information and then intelligently share CrysP using a number of social networking tools. In section 2, we present the related work, followed by the CrysP concept in section 3. The architecture of CrysPSys is presented in section 4 and section 5 gives the details of the test-bed and prototype implementation. Section 6 and 7 present the discussion and conclusion and future work respectively
52
2
Saguna, A. Zaslavsky, and D. Chakraborty
Related Work
In recent years the growth of social-networking and micro-blogs have gained immense popularity and have paved the way for new means of communicating. Location is becoming an important context parameter, and geo-tagging is on the rise, for example, portals like Plazes [6] are being used for location based applications and activities by users. At the same time, there is considerable amount of research in the field of activity analysis being undertaken. An increasing number of sensors are used to detect user’s physical as well as physiological activity. This research is mainly focussed in healthcare or industry environments, but we discuss some of those projects which look outside those two domains and closer to our research domain. Though, there are some similarities here with existing research but we highlight that our system looks at multiple activities of user and then its fusion with a user’s multiple presence information. In [9], the authors have built a context-aware IM client, called Nomatic IM. The main context information incorporated is location using Place Lab WLAN positioning in the campus which is then tagged by the user manually to a particular activity that they might be doing in that location. In the future the system assumes that the user will be doing the same activity at that location. CenceMe system [12], senses low level user activity information (standing/walking/running and stationary/driving are the activities sensed currently) and shares the same presence information across all social networking sites. Sensors inbuilt like the accelerometer on the Nokia N95, Nokia 5500 Sport mobile phone or the Nike+ and microphones and web cameras on the mobile phone were used. A mobile based CenceMe system where majority of the processing is done using light weight classifiers is also built. Personal Environmental Impact Report (PEIR, a Nokia funded research) [7] is an online tool to study the impact of users commuting using different types of transport and to encourage teenagers to use their bikes or public transport. A large-scale people-centric sensor network in [9] is proposed and implemented using two application scenarios: SkiScape and BikeNet. A mobile sensing platform (MSP) in [8], is a wearable device used to detect a person’s activity. The system is tested in different applications like the UbiFit Garden and UbiGreen. A Micro-Blog is researched and implemented as a prototype for users in [10], which leverages localization techniques (like GPS, Wi-Fi and GSM) to spatially geo-tag user micro-blogs. The aforementioned research does not consider identifying multiple user activities simultaneously and then reason about how to share user’s multiple activity information on different social networking sites.
3
Crystal Presence
In this section, we present the following definitions and terminology related to CrysP. Crystal Presence (CrysP) - activity-infused, multi-faceted presence information of a person shared with the relevant devices, services and people.
CrysP: Multi-Faceted Activity-Infused Presence
53
Audience - can include devices which interact with the user in different locations, services that the user might be interested in using and the user’s contacts on multiple social-networking sites such as his/her family, friends and colleagues, as well as those who read the user’s blogs and follow him/her on micro-blogging sites and contacts on IMs. CrysP can be derived from the user’s availability, moods, thoughts and activities. We currently focus only on activity of the user. Figure 1 shows the concept of CrysP. A user’s CrysP is the multi-faceted presence information which is determined using user and environmental context information and user audience consists of everyone who is interested in this real-time information related to the user. As shown in figure 1, we can see that the user’s CrysP can be of many types at different points in time and space for example, based on personal activity information such as “cooking pasta”, “baking a cake”, “reading a novel”, “planning a vacation”. Similarly, this can be based on professional activity information such as “working on research project”, “writing thesis”, and “reading references”.Thus, we present CrysP in figure 1 which shows that, at one point in time, the user’s CrysP can be a combination of these different types of activities (every facet of the crystal depicts a different type of activity at the same point in time); for example, the user can be “Cooking Pasta” and “Reading References” or “Baking a Cake” and “Watching News” or “Writing Code” and “Listening to Pink Floyd” and “Uploading images to Flickr”. These activities can overlap one another. For example, we can start cooking pasta at the start of time (ti ) t1 =1min, and at t2 = 5min we can be reading a reference paper, then resume to cooking pasta at t3 =10min, at t4 =12min we resume reading the reference paper while the pasta cooks on till t4 =20min. Thus, from t1 =1min to t4 =20min, we were involved with two activities which were not related to each other, but overlapped each other in time slots. So, CrysP for the user will be “Cooking Pasta” and “Reading References” in a spatio-temporal domain. The user and his/her audience interact with each other using a wide array of social-networking tools [5] (web portals like Facebook, Orkut, LinkedIn, IMs like Gtalk, Skype, micro-blogs like Twitter, etc). Table 1 shows a wide-array of tools that are available to the user to share his/her multi-faceted presence information (CrysP) with their audience. Some of these tools can be put into broad categories like, social networks, corporate social networks, social bookmarking sites, interest networks, blogs, micro-blogs, video-blogs, photo-blogs, voice-blogs, email and instant messengers. The user shares certain types of information on each of these networks depending on what type of network it is, what type of relationships he/she shares with people on that network along with what type of information related to the user people in that network are interested to see. Therefore, in this research we aim to automate the process of: a) determining CrysP based on activity analysis and b) share the presence and status updates with the relevant audience. Our proposed CrysP System (CrysPSys) can be seen as having the following advantages: a) it helps to reduce the amount of time people usually spend in making status updates; b) people who are unable to update their status information as often as they would like to, are able to
54
Saguna, A. Zaslavsky, and D. Chakraborty
Fig. 1. Crystal Presence (CrysP)
do so via CrysPSys, c) a user can send different updates to different audience sharing only that information which is of interest to a particular set of people; d) the previous point helps in privacy concerns of the user as well; e) this provides an interesting means of passively communicating what you want to with whom you want to in real-time; f) it also opens a lot of opportunities for providing value-added services to the user based on their activities in real-time; g) it can help in reducing energy consumption in smart homes and offices as shown in scenario A below; h) such updates can also help in increasing the revenue of service providers such as telecom companies, when the updates are made from mobile devices. Table 1. Social Network tools for sharing user’s multi-faceted presence Types of Social Networks
Social-networks
Personal Corporate Interest Blogs MicroBlog (Text, Voice Video, Photo, Mood)
Facebook, Orkut, MySpace LinkedIn, Xing HealthRanker, Newsvine, Plaxo, Blogger, Technocrati, Wordpress Twitter, Tumblr, Bubbly, YouTube, TwitPic, I rate my day, Moodmill, GTalk, Skype, MSN, Jaiku
Instant Messengers
Use case scenarios: Scenario A: John and Rhea are a couple living in one house. On Monday, John tells Rhea that he would be working late at office. Rhea reaches home at 7:00PM eats her dinner and leaves John’s dinner in the
CrysP: Multi-Faceted Activity-Infused Presence
55
oven on a timer for three hours later, at 10:00PM, but John is delayed further by an hour. John’s food gets heated at 10:00PM and then gets cold again. John reaches home at 11:30PM and has to reheat his food. This wastes John’s time as well as electricity. If the oven could be switched on after knowing that John has reached home or when John was driving to his home, it could save the need to reheat/recook the food. Similarly, on Tuesday, Rhea was about to finish work half an hour after John, but she was unable to communicate this to him as she was in a meeting with a client. John was driving home, from work and if he was able to learn this information in real-time, John instead of going home and then returning back to pick her up, could have gone straight to Rhea’s office and picked her up. If Rhea was able to share her activity information in real-time with John, this would help save John the time spent in driving again and help the couple save on their fuel costs. Scenario B: Iris is a student at university, from the time she wakes up in the morning, till she sleeps at night, she performs a wide range of activities. She usually makes updates of random activities thoughts, moods, news/articles which she has read, study or research related documents read or experiments conducted to her social-networking sites, IM presence, micro-blog, and blog. These updates are read by a number of people which include as mentioned earlier, her family members, friends, colleagues, advisors, students, and the general public depending on where the updates are made and which tool she uses to make a particular update. This is a time consuming job and can also be distracting when you have too much work on hand. The problem of not being able to make updates and share the right information with the right audience in real time needs to be addressed. This is where our novel architecture is used to determine and detect the presence information based on activity intelligently and then share it with the audience automatically.
4
CrysP System Architecture
The proposed architecture is shown in Figure 2. Our architecture consists of three components, Sensing Component, CrysP Determination Component, and CrysP Sharing Component. 4.1
Sensing Component
The Sensing Component (SC) is responsible for collecting context information from the different wearable sensors such as accelerometers, gyroscopes, location sensors, video cameras, RFID tags, microphones, physiological sensors, and other sensors in the user’s environment. Context information related to the user includes activity information and physiological information which helps to determine his/her cognitive activities as well as moods or emotions. The context information related to the user’s environment is also collected such as location of the user (spatial context), time, day of week, date of the year (temporal context), proximity to other people, the type of social activity, etc. This context information is collected and passed on to the CrysP Determination Component where activity determination is performed.
56
Saguna, A. Zaslavsky, and D. Chakraborty
4.2
CrysP Determination Component
The CrysP Determination Component (CDC) determines the user’s CrysP i.e., the activity infused presence. As shown in figure 2, firstly, activities are inferred by performing segmentation and classification on the raw context information which is received from the sensors. For activity inference we use decision trees to infer body motion activities, we use RFID object interaction with temporal analysis to infer activities linked to objects. We use the Context Spaces Model [13] to infer activities at a higher level of granularity which is then further shared with any device, services or people who may be interested in this information. The pseudo code for inferring user CrysP set is as follows: Repeat for every activity start match if (activity start match) then place time stamp on activity start; iterate through activity sequence till activity end match is not found; if(activity end match) then place time stamp on activity end; Record inferred activity with time stamp; Add every inferred activity with a set time duration to CrysP activity set; Check for each value of CrysP Set in Activity-Presence Ontology; Return(semantic CrysP Set); After the preliminary activity inference is done, we also determine multiple activities (level 2) based on the temporal analysis. In other words, this would also mean activities which overlap each other, or where one activity is paused to perform another activity, and the previous activity is resumed after the completion of the second activity. We only look at activities which are not related to each other i.e., they are not sub-activities of a higher level activity. The activity presence ontology is used to provide us with key sub-activities which are part of higher level activities along with the spatial and temporal aspects of each sub and higher level activity. For example, an activity like “studying in the library” can be inferred by user sitting and interacting with a word document related to his/her studies on a laptop. There can be other ways of inferring the user studying and these can be populated in the ontology. Also, if the user’s location is “in library” it further adds to construct the activity “studying in library”. If user is also interacting with their lunch box while sitting in the library we can add the activity “user is studying and eating food in the library”. This higher level activity can then be shared others. In CDC, the activity-presence ontology is further used to give semantic readability to the inferred activities which creates the activity fused presence information (CrysP). This semantic meaning provides more readability as well as it removes the otherwise plain update of mere activity update, like “walking”, to
CrysP: Multi-Faceted Activity-Infused Presence
57
Fig. 2. Architecture of CrysP System
“walking to catch a tram”, “walking towards the mall”, etc. The use of such ontology gives the advantage of adding more information in the way we would like to express the same activity. Here location information, distances between semantic locations and direction in which user is moving can also be used. The activity-presence diary provides the user a tool to view the CrysP information at later points in time. A user can also provide feedback to the system to help it learn and modify its behaviour, accordingly. 4.3
CrysP Sharing Component
In the CrysP Sharing Component (CSC), we use semantic reasoning to decide how to disseminate and share the CrysP information with the user’s audience. The semantic reasoning allows for sharing the relevant CrysP information with the relevant user audience. The presence-sharing ontology is built which contains the linkages between the different social-networking tools, services and devices with the user, i.e. the type of relationship the user has with the audience. We argue that the user shares a similar class of relationship with all the contacts in each tool he/she uses in regards to the CrysP information that he/she wants to share using a particular tool. Though, such lines are getting blurred with social networking tools and in the future perhaps individual or group based sharing mechanisms may be required. Since, most social networks do not allow currently to share presence information in such a way and a presence update to a network is visible to all friends within that network we hereby take a homogenous
58
Saguna, A. Zaslavsky, and D. Chakraborty
approach. The CSC also includes within it a number of adapters for sharing the CrysP information with the user audience. These adapters can be added or removed based on which tools the user uses to share his/her CrysP information. Another important point to note is that the semantic rules for sharing CrysP across different tools are user-specific. Everyone can have different levels of privacy; some people are more comfortable in sharing personal information with everyone while others find it uncomfortable to do the same. Thus, the semantic rules should be easily modifiable by user intervention. The following is the pseudo code to check the type of CrysP element and then share it with the correct tool. We have built a preliminary ontology and this will be further enhanced in the future. Load Presence Sharing Ontology; For every CrysP element; Check relationship of user with each social tool; If(matched) Send CrysP element as update to that tool; Else Send CrysP as direct message to individual contact in the form of IM/Email/SMS;
5
Test-Bed and Prototype Implementation
We have built a test-bed comprising of several sensors such as accelerometer (body motion), indoor and outdoor positioning systems (location), temperature sensor, RFID tags and reader (object interaction) and other sophisticated software based context collection threads (user’s activity on devices such as laptop and mobile phone). We place a Mulle v3 sensor (which has on it an accelerometer and a temperature sensor) on the user’s waist to gather information about user body motion. Based on previous research in body motion detection using accelerometer we use chose the waist of the user as the most appropriate position [8]. The Mulle sends data at 15Hz which is collected on our laptop where we use Java based Weka API to process the acceleration data. We use J48 decision tree which is an extension of C4.5 to infer three body motion related low-level activities such as sitting, standing, and walking. We achieved an accuracy of 92.56%1. An RFID reader is attached to the user’s wrist which detects RFID tagged objects such as coffee mug, lunch box, etc. The RFID reader scans for tags once every second. Each tag is labeled in terms of an activity, and the RFID readings are inferred as activities using varying time windows for different activities. This eliminates the problem of reading a tag when the object is not intentionally been touched. Multiple readings of an object over time are inferred as an intentional activity. The user’s activity on the laptop and the mobile phone are inferred using both Java and .Net based plug-ins. A .Net based hook is used to infer the user’s interaction with an application running on the device by logging mouse clicks which log current activity on the laptop such as the current 1
This was achieved by using a single user.
CrysP: Multi-Faceted Activity-Infused Presence
59
Fig. 3. CrysP Portal
application (adobe reader, word document, power point presentation, eclipse, etc). A URL logging tool Slogger is used to log URLs visited by the user in a text file and are retrieved every second to monitor user’s browsing activity such as email, online news, Google search, Google scholar search, library website, airline booking site, Flickr photos, etc. Location information is collected using three methods, GPS (outdoor), Wi-fi positioning (Ekahau WLAN positioning is deployed on university campus office of the user), and RFID based location (at home). We use the inbuilt AGPS on an android development phone (ADP1) to gather the location, speed and temperature. The RFID smart home helps in locating the user at home using multiple fixed tags. We have built a web-based GUI as shown in figure 3 to view the user’s CrysP information along with the sensor/context streams. In order to share CrysP we infer activities of the user with varying time windows. The user’s current location and activity can be viewed in the pop-up on the map. Also, the user’s movement patterns and activities at different locations and time can be viewed by clicking anywhere on the user’s path. We are further building the web-interface to make it more interactive as well as to get user feedback. We are working towards running longer experiments on a variety of users to gather different types of information. We are also building the adapters on the mobile phone to infer activity and send updates to the correct social-network/blog directly from the mobile phone. It is also important to note that these activity updates could be shared with devices and services that the user uses in different locations and at different times
60
Saguna, A. Zaslavsky, and D. Chakraborty
in the day. Currently we share these updates only in the social networking domain. Adapters for sharing CrysP were written for a number of social-networking tools like LinkedIn (using OpenSocial Java API) and Facebook (using Facebook Java API); micro-blog like twitter (using Twitter Java API, twitter4j); IM like Skype (using skype win32.jar API) and GTalk (using smack.jar API). We send CrysP updates to each of these tools depending on the preliminary presence sharing (PS) ontology. The PS ontology is written to classify the various tools and various categories of CrysP information along with the relationships between them and the user. We have only assumed five categories, personal, very personal, work, private work and public at present. We send personal updates to Facebook, very personal updates to GTalk, private work updates to Skype, public work updates to LinkedIn and public updates to Twitter. We use the Jena API to interact with the two ontologies and they are written in OWL 1.0 and RDF. Further details of the ontology are omitted here due to lack of space. Figure 4 shows how the CrysPSys shares an element of the user’s CrysP with the user’s Facebook audience.
6
Discussion
The CrysP System (CrysPSys) is currently tested in a scenario limited to a student’s life. We used a specific set of sensors to infer our activities; there is a need to build the system further so that more different types of sensing technology can be incorporated into the same test-bed. There is also a requirement that labeling of activities and creating the relationships between higher and lower level activities can be easily created with limited user interaction. The higher level activity models should be built using these relationships. In our test-bed we currently infer activities using a laptop but we intend to use the mobile phone for inference and sharing of higher level activities, though this would significantly affect the battery life of the device. The system needs to be further evaluated on multiple sets of users on longer periods of time. Further evaluation on reducing user interaction is also important.
Fig. 4. Dissemination of user’s CrysP to Facebook via CrysP plug-in adapter
7
Conclusion and Future Work
In this paper, we present the concept of Crystal Presence (CrysP) which opens new avenues of communicating the user’s activity information with the user’s
CrysP: Multi-Faceted Activity-Infused Presence
61
audience and thus allows users to passively communicate at all times in the day. Our novel system determines activity-infused multi-faceted presence information at a point in time and each facet of this activity infused presence is shared accordingly with the intended audience. We also present a test-bed and prototype which infers multiple higher level activities of a user and then share this information with devices, services and with other people on social networking tools. In future, we will further develop and extend our architecture to incorporate more complex activities and in different scenarios with more number of users.
References 1. Jabber: The XMPP Cloud: Building a Presence-Enabled Infrastructure for RealTime Communication, White Paper (2008) 2. RFC 2778, A Model for Presence and Instant Messaging, http://www.ietf.org/rfc/rfc2778.txt (access date: January 12, 2009) 3. RFC 4480, RPID: Rich Presence Extensions to the Presence Information Data Format (PIDF), http://www.rfc-editor.org/rfc/rfc4480.txt (access date: January 12, 2009) 4. RFC 3863, Presence Information Data Format (PIDF), http://tools.ietf.org/html/rfc3863 (access date: January 12, 2009) 5. Social Networking Sites, http://en.wikipedia.org/wiki/List_of_social_networking_websites (access date: January 12, 2009) 6. Plazes, http://plazes.com/ (access date: January 12, 2009) 7. Agapie, E., et al.: Seeing our signals: Combining location traces and web-based models for personal discovery. In: HotMobile ’08: Proceedings of the 9th workshop on Mobile computing systems and applications, pp. 6–10. ACM, New York (2008) 8. Choudhury, T., et al.: The mobile sensing platform: An embedded activity recognition system. Pervasive Computing 7(2), 32–41 (2008) 9. Eisenman, S.B., et al.: Metrosense project: People-centric sensing at scale. In: WSW 2006 at Sensys (2006) 10. Gaonkar, S., Li, J., Choudhury, R.R., Cox, L., Schmidt, A.: Micro-blog: sharing and querying content through mobile phones and social participation. In: MobiSys ’08: Proceeding of the 6th international conference on Mobile systems, applications, and services, pp. 174–186. ACM, New York (2008) 11. Jachner, J., Petrack, S., Darmois, E., Ozugur, T.: Rich presence: A new user communications experience. Alcatel Telecommunications Review - 1st Quarter (2005) 12. Miluzzo, E., Lane, N.D., Eisenman, S.B., Campbell, A.T.: CenceMe – injecting sensing presence into social networking applications. In: Kortuem, G., Finney, J., Lea, R., Sundramoorthy, V. (eds.) EuroSSC 2007. LNCS, vol. 4793, pp. 1–28. Springer, Heidelberg (2007) 13. Padovitz, A., Loke, S.W., Zaslavsky, A.: Towards a theory of context spaces. In: Proceedings of the Second IEEE Annual Conference on Pervasive Computing and Communications Workshops (2004)
Multichannel System of Audio-Visual Support of Remote Mobile Participant at E-Meeting Andrey L. Ronzhin, Victor Yu Budkov, and Alexey A. Karpov SPIIRAS, 39, 14th line, St. Petersburg, Russia {ronzhin,budkov,karpov}@iias.spb.su
Abstract. Web-based collaboration using the wireless devices that have multimedia playback capabilities is a viable alternative to traditional face-to-face meetings. E-meetings are popular in businesses because of their cost savings. To provide quick and effective engagement to the meeting activity, the remote user should be able to perceive whole events in the meeting room and have the same possibilities like participants inside. The technological framework of the developed intelligent meeting room implements multichannel audio-visual system for participant activity detection and automatically composes actual multimedia content for remote mobile user. The developed web-based application for remote user interaction with equipment of the intelligent meeting room and organization of E-meetings were tested with Nokia mobile phones. Keywords: E-meeting, smart space, remote collaboration, mobile communication, voice activity detection; multimodal interfaces.
1 Introduction Internet applications for teleconference and distant learning (E-meeting and E-lecture) become more popular in business, research, education and other organizations. Such systems allow us to save cost and provide self-paced education and convenient content access and retrieval. However the main part of the secretary work on documentation and connection of remote participants is performed by a human-operator. Another constraint of E-meeting systems is the capacities of the communication network and the capacities of the audio and video user devices that influence on the user interface features and sufficiency of remote participant possibilities. Key issue of remote communication is high uncertainty, caused by the spatial and temporal distance between co-participants [1]. The physical and psychological barriers that exist in hybrid meetings make difficult for remote partners to attend a selected conversational flow, which the participants share the same room and to initiate a new topic of discussion. Thus the main task of the research is to make remote meetings more engaging by giving remote participants more freedom of control in discussions and decision making processes. Research projects AMI [2], CHIL [3], AMIGO [4], CALO [5] were targeted to study various aspects of arrangement of meetings or teleconferencing in smart environments and development of meeting support technology, multi-modal meeting S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 62–71, 2010. © Springer-Verlag Berlin Heidelberg 2010
Multichannel System of Audio-Visual Support of Remote Mobile Participant
63
browsers, as well as automatic audio-, and video-based summarization systems. Meeting support includes (semi-) automatic retrieval of information needed for support remote participation in hybrid meetings, in which one or more participants are remote and others stay in a shared room [6]. Development of technologies for automatic selection of the best camera view, switching on the projector or whiteboard output and selection of microphone of the current speaker is capable to improve audio-visual support for a remote mobile participant. The novelty of the proposed web-based application for hybrid meeting consists in automatic selection of web-camera of active speaker by multichannel speech activity algorithm and designing a user interface adaptive to mobile device features of remote participant. Section 2 introduces the speaker diarization task and discusses algorithms for speech activity detection in multichannel audio stream. A technological framework of intelligent meeting room and a model of media stream fusion used for designing actual content of the web-based application are considered in Section 3.
2 Methods for Speech Activity Detection in the Multichannel System Audio recordings of meetings in most cases contain spontaneous speech that complicates their automatic processing because of: (1) "overlapped" speech when several persons talk simultaneously; (2) artefacts of speech (lip smack, tongue clucking) and nonverbal pauses (cough, laughter); (3) short remarks and frequent speaker changes. Besides, quality of recordings is strongly affected by environment, layout of speakers and characteristics of the recording equipment [7]. ICSI and CHIL European projects are devoted to the given problem, and the NIST RT-07S standard on evaluation of performance of the systems for meeting transcription [8] has been developed. At present there are some annotated corpora (for example, ISL, AMI, ICSI, NIST) containing up to tens of hours of speech, which have been recorded during formal meetings and impromptu meetings both in natural and informal conditions. The task of speaker diarization (SD), also known under the name «Who Spoke When» consists in detecting the speaker turns within an audio document and in grouping together all the segments belonging to the same speaker [8]. Most of the state-ofthe-art speaker diarization systems perform several key sub-tasks, which are: speech detection, speaker change detection, gender classification and speaker clustering [9]. In some systems the re-training of speaker’s models is made on-line taking into account last speech segments for improvement of system’s performance [10]. A preliminary segmentation of the signal on frames containing silence or speech allows the system to reduce considerably the level of speech recognition errors and to raise speed of processing. Unfortunately, the methods for voice activity detection (VAD) based on an estimation of the level of energy of the signal or its spectrum, well proved at the single channel speech recognition, give poor results at the processing of multichannel audio records with several speakers [11]. For solution of this problem the methods based on a normalization of energy of the multichannel signal [12], an estimation of channel cross-correlation, or Hidden Markov Models containing not 2 states (speech/silence) as usually in VAD methods, but 2K states,
64
A.L. Ronzhin, V.Y. Budkov, and A.A. Karpov
where K is the number of speakers [13], are used. The peculiarity of the latter approach is preliminary training of the models, therefore at the current stage of the research for speech detection in the multichannel system simpler approaches without any training of the models are used. Implementation of crosscorelation methods is possible with the synchronous multichannel recordings. The methods based on channel normalization, calculation of relative signal energy and its spectrum, considering the phonetic rules for speech activity detection are most effective in the case of distributed meetings and using independent devices for recording and processing of audio signals. The developed multichannel system uses a set of web-cameras with built-in microphones for recording speech of participants that provide automatic selection of the current speaker and transmit his/her image to remote participants. The proposed algorithm RESW (Relative Energy estimation in Sliding Window) determines the current active speaker (number of webcam) ωˆ t at the time t by calculating the relative channel energy in the sliding window, thus the random deviation of energy values in the particular channels are suppressed:
ωˆ t = arg max[log10 { n
1 N −1 n 1 M N −1 j ⋅ (∑ κ Amp ⋅ En (t + i ) − ⋅ ∑∑ κ Amp ⋅ E j (t + i))}] , N i =0 M j =1 i =0
n where κ Amp is an amplification of the channel n , which allows the system to take
into account the different gain levels of microphones, N is the size of the sliding window, M is the number of audio channels, En (t + i ) is the short-term energy of L −1
segment of speech: En (t + i ) = ∑ xL2 ( t +i )+ j . To improve the robustness of speech activj =0
ity detection, in the selected channel ωˆ t we use an additional analysis, in which an indicator W is calculated as the number of segments in a sliding window of length N with the value of energy Eωˆ exceeding the threshold E sil : t N −1 ⎧ 0, Eωˆt (t + i ) ≤ Esil . W = ∑ f (t , i ), where f (t , i ) = ⎨ overwise i =0 ⎩1, The threshold function f (t , i) preliminarily classifies audio segment as silence f (t , i) = 0 or speech f (t , i ) = 1 . Two cases for assessment of the indicator W were proposed. Decision on presence of speech in the current sliding window in the channel is made only if the indicator W : a) is greater than zero (an algorithm RESW1 ), or b) exceeds a certain value Wsil (an algorithm RESW sil ). A maximal pause d max between speech segments was taken into account for suppression of single false speech segments. If the number of silence segments between the current segment and the nearest speech segment from left or right exceeds value d max , then the current segment is classified as silence:
W sd
⎧ ⎡ i +d max ⎤ ⎪ 1, ⎢ ∑ f (t + l , i)⎥ − 1 > 0 . , where φ (t , i ) = ⎨ l =i−dmax = ∑ [ f (t , i) ∧ φ (t , i)] ⎣ ⎦ i =0 ⎪0, overwise ⎩ N −1
Multichannel System of Audio-Visual Support of Remote Mobile Participant
65
In the given algorithm ( RESWsil+dist ) the sliding window consists of speech if the following condition was is: W sd > Wsil . The performance of audio stream segmentation of speakers was estimated by calculation of miss rate ( MS ) and false alarm rate ( FA ). The estimates are summed by at analysis of the multichannel system [13]: M channels M
M
M
M
M
M
k =1
k =1
k =1
k =1
k =1
k =1
(S ) MS = ∑ Tk( MS ) /(∑ Tk( S ) + ∑ Tk( MS ) ) , FA = ∑Tk( FA) /(∑Tk( S ) + ∑Tk( FA) ) , where Tk is
quantity of speech segments in the channel k determined by the system as speech;
Tk( MS ) is quantity of speech segments in the channel k missed by the system;
Tk(FA)
is quantity of non-speech segments in the channel k determined by the system as speech. A trade-off between the miss rate and the false alarm rate is chosen at optimization of parameters of the speaker activity detection algorithm [8]. We use the detection error trade-off curve (DET) as the evaluation tool. The DET plot shows the miss rate MS as a function of the false alarm rate FA . For a detection error curve, we can also compute the equal error rate (EER), which corresponds to the threshold, where MS = FA . The database containing five-channel audio recording was prepared for experimental verification of the speech activity detection algorithms. The signal was digitized with the sampling rate of 16 kHz, then samples are combined in the segments (1600 samples per segment). The size of sliding window was 10 segments. The window was shifted with step of 1 segment. Total duration of the database was 28 minutes. In the experiment, five participants consistently said sentences of various lengths from the prepared text. The printed sheets of paper with the text laid on the table in front of each participant. Thus, in this experiment some artificial situation was modeled: participants did not interrupt each other, and read the sentences consistently; no obstacles (hand, paper or other items) arose between the microphone and participant’s mouth; the presenter's face was directed whole toward the microphone over the period of recording. The phrases boundaries in each channel with accuracy up to one audio segment were manually segmented listening all the records. The obtained labeling was used as a standard one for matching and assessment of the performance of automatic segmentation. The obtained dependencies for the error rates MS and FA at several values of E sil for the algorithms RESW1 , RESWsil and RESWsil +dist are coordinated with results of similar researches. In this experiment the phrase boundaries were determined by the algorithm RESW sil + dist more accurately ( EERRESW = 9.16% ). sil + dist
3 Web-Based Application for Organization of Hybrid E-Meetings The developed intelligent meeting room is equipped by projector, touchscreen TV for smart desk application, several cameras for video monitoring of audience and presentation area, personal web-cameras for analysis of behavior of participants sitting at the conference table, as well as three microphone array for sound processing. A combination of the desktop web-cameras and microphone arrays provides both spatial localization of
66
A.L. Ronzhin, V.Y. Budkov, and A.A. Karpov
sound sources and record of participants’ speech with high quality. Multimedia content compiled from audio and video signals captured by the referred devices are used in the web-based application for organization of hybrid E-meetings. Graphical interface of the web-page, on which remote participants could observe a meeting organized inside the intelligent meeting room, contains several basic forms F = {F1 , F2 ,...FN } , where N F is a number of the forms depending on current meeting F
state and features of browser used in a client device. Content of the forms could be changed during meeting, but it always includes a graphical component from a set G = {G1 , G2 ,...GNG } , where N G is a number of used components (in the current version N G = 10 ):
G1 is a component representing current image on the projector; G2 is a component representing current image on the smart desk; G 3 is a component representing current image captured by the video camera
directed to main speaker; G4 is a component representing current image captured by the video camera directed to audience; G5 is a component representing a assemble of current images captured by personal web-cameras directed on participants sitting at the conference table in the meeting room; G6 is a component representing current image captured by a web-camera assigned with a participant, which currently gives a speech comment; G7 is a component representing an indicator of speech duration; G8 is a component representing a clock with time labels of the current meeting; G9 is a component representing a logo of the current meeting; G10 is a component representing main data about the current meeting. The enumerated components connected with corresponding source, which transmits graphical data (the projector – a presentation slide; the smart desk – window with handwriting sketches; the video and web-cameras – frames with an image; the software services – time indicators, logo and other data about meeting). Receiving new data on a source leads to updating content of corresponding form in the web-page. Two main states in meeting process were selected and corresponding notation of forms was used for the current version of web-page software: (1) registration (preparations before meetings), forms F reg ; (2) presentations (main part of meeting), F meeting . Further the number of the meeting states will be increased taking into account peculiarities of participant behavior and necessity of use of specific technical equipment during the discussion, voting and other formal stages. Another important factor influencing on the web-page content is the display resolution and correspondingly maximal size of browser window used for remote view of the meeting. So two classes of device, which have especially different sizes of screen, and corresponding notation of the forms were selected: (1) personal computer, forms F (PC) , (2) mobile device, forms F (MD) . Table 1 shows basic variants of the webpage layout depending on the current state of meeting and type of the client device.
Multichannel System of Audio-Visual Support of Remote Mobile Participant
67
Table 1. The layout variants of the web-page for E-meeting translation
F PC
F MD
F reg
F meet ing
Symbol “/” designates that several variants of graphical content are possible in the form. For instance, the current image G1 on the projector or the current image G2 on the smart desk will be represented in fourth form F4meeting ( PC ) during presentations on the web-page browsed by a personal computer. A list of parameters of objects (equipment, software, participants), which are located inside the intelligent meeting room and influenced on changing the graphical content of the web-page, is presented in Table 2. Values of parameters of hardware and software are determined by a query of its states via TCP/IP protocol or by means of Object Linking and Embedding Automation. Behavior of participants sitting at the conference table, as well as the main speaker located in the presentation area is analyzed by developed technologies of sound source localization, video tracking of moving objects, seeking and tracking of human face.
68
A.L. Ronzhin, V.Y. Budkov, and A.A. Karpov Table 2. The list of parameters influenced on graphical content of the web-page
Object in the Parameters meeting room Notation Values Description Projector 0 Projector turned-off p1 1 Projector turned-on 0 Presentation is not started p2 1 Presentation is started 0 Current slide of a presentation is shown longer, than τ slide , p3 ( t cur
Smart desk
d1 d2
d3
1
Slide of a presentation was changed (time of the changing t slide is
0 1 0 1 0
saved) Wide touchscreen TV is turned-off Wide touchscreen TV is turned-on Smart desk application is not loaded Smart desk application is loaded Touch input was not used longer than τ desk , ( t cur − t desk > τ desk ).
1 Main speaker (presenter)
Personal webcameras assigned with participants sitting at the conference table
0 1
Personal web-camera
0
s2
1 0 1
s3
0 1
c1
0 1
c3i
c4i
c5i
Touch input was used (beginning time of touchscreen using t desk is saved) A speaker in the presentation area is not observed by the video monitoring system Speaker is found in the presentation area Speaker face is not found Speaker head is directed to (the face tracking system founded presenter face) Speech activity in the presentation area is not detected A presenter gives a speech (the sound source localization system detected an activity in the presentation area) Currently there are no speakers at the conference table Currently a participant at the conference table gives a speech comment Personal web-camera i is turned-off
s1
c2i
− t slide > τ slide , where tcur is current time).
i
is turned-on
0
No participant in front of the web-camera
1
There is a participant in front of the web-camera i (the video monitoring system estimates degree of changing image background recorded before the meeting) No speech activity of the participant sitting in front of the webcamera i
0
i
1
A participant sitting in front of the web-camera i gives a speech comment (the multichannel speech activity detection system determines useful signal in the audio channel of the web-camera i )
0
Face of the participant sitting in front of the web-camera i is not found Face position of the participant sitting in front of the web-camera i is detected (the face tracking system found the participant face)
1
Let’s consider the process of graphical content compilation in the forms. Each graphical form F j on the web-page is described by the following tuple
F j = l j , u j , w j , h j , g j , where l j is upper left corner position of the form at the
Multichannel System of Audio-Visual Support of Remote Mobile Participant
69
abscissas axis, u j is upper left corner position of the form at the ordinates axis, w j is the form width, h j is the form height, g j is a graphical content of the form, which is actual and was chosen from the set G . Sizes of the forms could be changed depending on the current features of browser used in the client device. In the forms meeting ( PC ) , F2meeting ( MD ) the number of graphical component is F2meeting ( PC ) , F4 changed depending on the parameter values mentioned in Table 3. In other forms the graphical component numbers are kept during the whole meeting. Selection of the current graphical component g ∈ G for the referred forms is realized by a logicaltemporal model of compiling the graphical interface web-page. The following set of logical rules is an essence of the model: ⎧G3 , s1 ∧ s 2 ∧ s3 ∧ ¬c1 , ⎪G , ¬s ∧ ¬c ∧ (( p ∧ p ) ∨ (d ∧ d )), , ⎪ 4 2 1 1 2 1 2 g 2meeting ( PC ) = ⎨ G s c , ¬ ∧ , 3 1 ⎪ 6 ⎪⎩G9 , overwise. ⎧G1 , ( p1 ∧ p 2 ∧ (¬d 1 ∨ ¬d 2 )) ∨ ( p1 ∧ p 2 ∧ p 3 ∧ d 1 ∧ d 2 ∧ ¬d 3 ) ∨ ⎪ ( p ∧ p ∧ p ∧ d ∧ d ∧ d ∧ (t slide > t desk )), 1 2 3 1 2 3 ⎪ , ⎪ , (( ) ) ( ¬ ∨ ¬ ∧ ∧ ∨ ∧ G p p d d p p 2 ∧ ¬p 3 ∧ d 1 ∧ d 2 ∧ d 3 ) ∨ ⎪ 1 2 1 2 1 g 4meeting ( PC ) = ⎨ 2 ⎪ ( p1 ∧ p 2 ∧ p 3 ∧ d 1 ∧ d 2 ∧ d 3 ∧ (t slide < t desk )), ⎪G 9 , (¬p1 ∨ ¬p 2 ) ∧ (¬d 1 ∨ ¬d 2 ), ⎪ ⎪⎩G 4 , overwise . ⎧G1 , (( p1 ∧ p 2 ∧ (¬ d 1 ∨ ¬d 2 )) ∨ ( p1 ∧ p 2 ∧ p 3 ∧ d 1 ∧ d 2 ∧ ¬ d 3 ) ∨ ⎪ ( p1 ∧ p 2 ∧ p 3 ∧ d 1 ∧ d 2 ∧ d 3 ∧ (t slide > t desk ))) ∧ ¬ s 2 ∧ ¬c1 , ⎪ ⎪G 2 , (((¬ p1 ∨ ¬ p 2 ) ∧ d 1 ∧ d 2 ) ∨ ( p1 ∧ p 2 ∧ ¬ p 3 ∧ d 1 ∧ d 2 ∧ d 3 ) ∨ . ⎪ ( p1 ∧ p 2 ∧ p 3 ∧ d 1 ∧ d 2 ∧ d 3 ∧ (t slide < t desk ))) ∧ ¬ s 2 ∧ ¬c1 , ⎪ meeting ( MD ) = ⎨ g2 ⎪G 3 , ¬ p 3 ∨ ¬ d 3 ∧ s1 ∧ s 2 ∧ s 3 ∧ ¬c1 , ⎪G 4 , ¬ p 3 ∨ ¬ d 3 ∧ ¬ s 2 ∧ ¬c1 , ⎪ ⎪G 6 , ¬ p 3 ∨ ¬ d 3 ∧ ¬ s 3 ∧ c1 , ⎪current component is saved , overwise . ⎩
The component G5 , which consists of actual images of participants sitting at the conference table, is compiled by an analysis of states of personal web-cameras and presence of participants and faces on frame. Let’s identify an set of images from the web-cameras as W = {W1 ,W2 ,...WN } , where N W is a number of the web-cameras W
mounted on the conference table (in the developed meeting room N W = 10 ). Then the component G5 consists of the images captured by turned-on web-cameras, in which a NW
participant is detected: G5 = ∪ (Wi c2i ∧ c3i = 1) . Taking into account limited sizes of i =1
the forms used for representing the component G5 , the number of displayed participants is reduced by an analysis of his speech activity c4 i and/or presence of his face
70
A.L. Ronzhin, V.Y. Budkov, and A.A. Karpov
in the frame c5i . Particularly, the form F1meeting ( MD ) for mobile device contains up to three participant images, so both parameters are used for selection of more active participants: NW
F1meeting ( MD ) = ∪ (Wi c2i ∧ c3i ∧ c4i ∧ c5i = 1) . i =1
The proposed logical-temporal model of compilation of web-page graphical interface was tested on a personal computer and several models of smartphones donated by the Nokia company. Table 3 presents some examples of web-page content during a meeting. The sound source localization system and multichannel speech activity detection system were used for selection of source of audio stream transmitted to remote participant. Speech of a presenter is recorded by the microphone of the web-camera closest to the presentation area. The built-in microphone of the web-camera assigned with the presently active participant sitting at the conference table is used for recording his/her speech. Table 3. Content examples of the web-based application for meeting Screen of client device Personal computer
Mobile device
Presentations
Registration
Meeting state
The developed web-page layout is oriented on passive remote participants. To enhance his potentials a toolbar allowing a participant located outside the meeting room to give a question to the presenter and to share the current discussion.
Multichannel System of Audio-Visual Support of Remote Mobile Participant
71
4 Conclusion Development of the multichannel system for speech activity analysis, which is used for preparation the multimedia reports of distributed meetings, contributes to saving costs of verbatim record preparation, improving quality of teleconferences, as well as provides statistics of meetings and convenient archive access and retrieval. The developed speaker diarization system uses the algorithm for speech activity detection in the multichannel audio stream that provides appropriate quality of phrase boundaries determination and automatic selection of the web-camera of the active speaker. The proposed logical-temporal model of compilation of web-page graphical interface allows remote participants to perceive whole events in the meeting room via a personal computer or smartphones. Acknowledgments. This work is supported by The Russian Program “Research and Research-Human Resources for Innovating Russia in 2009-2013” (contract П2360), RFBR (projects 08-08-00128-а, 08-07-90002-СТ_а) and Nokia.
References 1. Yankelovich, N., Kaplan, J., Simpson, N., Provino, J.: Porta-person: telepresence for the connected meeting room. In: Proceedings of CHI 2007, pp. 2789–2794 (2007) 2. McCowan, I., Gatica-Perez, D., Bengio, S., Moore, D., Bourlard, H.: Towards computer understanding of human interactions. In: Aarts, E., Collier, R.W., van Loenen, E., de Ruyter, B. (eds.) EUSAI 2003. LNCS, vol. 2875, pp. 235–251. Springer, Heidelberg (2003) 3. Waibel, A., Steusloff, H., Stiefelhagen, R.: CHIL—Computers in the human interaction loop. In: Proc. of 5th IAMIS Workshop (2004) 4. Danielson, T., Panoke-Babatz, U., et al.: The AMIGO project: Advanced Group Communication Model for Computer-based Communication Environment. In: Proc. of CSCW’86 (1986) 5. Kaiser, E.: Can Modeling Redundancy in Multimodal, Multi-Party Tasks Support Dynamic Learning? In: CHI ’05 Workshop: CHI Virtuality 2005 (2005) 6. Op den Akker, R., Hofs, D., Hondorp, H., op den Akker, H., Zwiers, J., Nijholt, A.: Supporting Engagement and Floor Control in Hybrid Meetings. In: Esposito, A., Vích, R. (eds.) COST Action 2102 2008. LNCS (LNAI), vol. 5641, pp. 276–290. Springer, Heidelberg (2009) 7. Fredouille, C., Evans, N.: The influence of speech activity detection and overlap on speaker diarization for meeting room recordings. In: INTERSPEECH 2007, pp. 2953– 2956 (2007) 8. The 2009 (RT-09) Rich Transcription Meeting Recognition Evaluation Plan (2009), http://www.itl.nist.gov/iad/894.01/tests/rt/2009 9. Tranter, S., Reynolds, D.: An Overview of Automatic Speaker Diarization Systems. IEEE Trans. ASLP 14(5), 1557–1565 (2006) 10. Markov, K., Nakamura, S.: Never-Ending Learning System for Online Speaker Diarization. In: IEEE ASRU Workshop, pp. 699–704 (2007) 11. Pfau, T., Ellis, D., Stolcke, D.: Multispeaker Speech Activity Detection for the ICSI Meeting Recorder. In: IEEE ASRU Workshop, pp. 107–110 (2001) 12. Dines, J., Vepa, J., Hain, T.: The segmentation of multi-channel meeting recordings for automatic speech recognition. In: ICSLP 2006, pp. 1213–1216 (2006) 13. Laskowski, K., Jin, Q., Schultz, T.: Crosscorrelation based multispeaker speech activity detection. In: INTERSPEECH 2004, pp. 973–976 (2004)
On-the-Fly Ontology Matching in Smart Spaces: A Multi-model Approach Alexander Smirnov1, Alexey Kashevnik1, Nikolay Shilov1, Sergey Balandin2, Ian Oliver2, and Sergey Boldyrev2 1 SPIIRAS, 39, 14 line, 199178, St. Petersburg, Russia {smir,alexey,nick}@iias.spb.su 2 Nokia Research Center, Itämerenkatu 11-13, 00180, Helsinki, Finland {sergey.balandin,ian.oliver,sergey.boldyrev}@nokia.com
Abstract. Proper functioning of smart spaces demands semantic interoperability between knowledge processors connected to it. As a consequence it is required to develop models that would enable knowledge processors to translate on-the-fly between the internal and smart space ontologies. This paper presents the developed multi-model approach to the above problem, where the major elements of the selected approach are described in detail. Keywords: Smart spaces, ontology matching, semantic similarity, semantic interoperability.
1 Introduction Smart-M3 is an open source software platform [1] that aims to provide "Semantic Web" [2] information sharing infrastructure between software entities and various types of devices. The platform combines ideas of distributed, networked systems and Semantic Web [3]. The major application area for Smart-M3 is the development of smart spaces solutions, where a number of devices can use a shared view of resources and services [4, 5]. Smart spaces can provide better user experience by allowing a user to flexibly bring in new devices and seamlessly access all the information in the multi-device system from any of the devices. The reference model of the Smart-M3 smart spaces is shown in Fig. 1 and it is close to the Linda ideology [6, 7]. The smart space is implemented by one or several Service Information Brokers (SIBs) connected to the common space. SIB is a part of the Smart-M3 platform and it is responsible for information management within the smart space. Knowledge Processors (KPs) represent different applications that use the smart space and implement protocols defined by the Smart-M3 platform for communicating with SIBs. The information exchange is organized through transfer of information units (represented by RDF triples “subject-predicate-object”) from KPs to the smart space and back. The information submitted to the smart space becomes S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 72–83, 2010. © Springer-Verlag Berlin Heidelberg 2010
On-the-Fly Ontology Matching in Smart Spaces: A Multi-model Approach
Application
KP
73
Smart Space
SIB …
Application
KP
Knowledge Base
Fig. 1. Smart space based on Smart-M3: reference model
available to all KPs participating in the smart space. The KPs can also transfer references to the appropriate files/services into the smart space, since not all information can be presented by RDF triples (e.g., a photo or a PowerPoint presentation). As a result the information is not really transferred but shared between KPs by using smart space as a common ground. However, real life implementation of smart spaces faces a number of problems. Let’s consider a simple case study when a user is having his/her mobile device with KP running on it. The user KP (UKP) is going to make a presentation. The LCD projector represented in the smart space by Projector KP (PKP) is a key enabler of this functionality. But in order for the presentation to be shown, the UKP has to share the information about the presentation location (URI) with the PKP. As a result the following conditions have to be fulfilled: 1. 2.
The UKP has to know that the PKP is a part of the smart space; The UKP has to share the presentation’s URI in such a way that the PKP can understand it.
Even from this simple example we can see that proper functioning of the smart space requires semantic interoperability between knowledge processors connected to it. As a result it is required to develop models that would enable knowledge processors to translate on-the-fly between their internal and smart space’s ontology to a certain extent. The paper presents the developed multi-model approach for the above stated problem. Section 2 introduces the main principle of the suggested approach. Sections 3 to 5 describe the major elements of the approach in more details. Section 6 presents the developed demo use case that illustrates the approach. The main results and findings are summarized in Conclusions.
2 Multi-model Approach for On-the-Fly Matching KPs and SIB Ontology In order to analyze the existing ontology matching techniques an extensive state-ofthe-art review has been done, which covered about 20 systems/approaches/projects related to ontology matching. Among them the following ones are worth to be mentioned: GLUE System 8, 9, Falcon-AO 10, MLMA 11, Hovy 12, SKAT 13, ONION
74
A. Smirnov et al.
14, Promt 15, H-Match 16, CTX-MATCH 17, SMART 18, Cupid 19, COMA 20, Similarity Flooding Algorithm 21, AgreementMaker 22, Pattern Based Approach 23, MinSMatch 24, OntoView 25, Chimaera 19. The below proposed approach allows matching of KPs and SIB ontology for the interoperability purposes and is based on the ontology matching model illustrated by Fig. 2. The approach takes into account that the matching procedure has to be done “on-the-fly” by mobile devices with limited resources and remembering the fact that knowledge processors are responsible for performing certain concrete and welldescribed tasks, which means that the corresponding ontology generally should be small – to – medium size and describe only very limited domains. Ontology is represented as RDF triples, consisting of the following ontology elements: subject, predicate, object. Degree of similarity between two ontology elements is in the range [0, 1]. The approach consists of the following steps: 1. Compare ontology elements taking into account synonyms of both ontologies. The degree of similarity between equal elements is set to 1 (maximum value of the degree of similarity). 2. Compare all elements between two ontologies and fill the matrix M using similarity-based model described in Section 2. Matrix M is of size m to n, where m is the number of elements in the first ontology and n is the number of elements in the second ontology. Each element of this matrix contains the degree of similarity between the string terms of two ontology elements using the fuzzy string comparison method described in Section 3.2. 3. For knowledge processors, which can access Internet, e.g. WordNet or Wiktionary, the model of searching semantic distances was developed and presented in Section 3. 3.1. Compare all elements of two ontologies and fill the matrix M’. Matrix M’ is of size m to n, where m is the number of elements in the first ontology and n is the number of elements in the second ontology. Each element of this matrix represents the degree of similarity between two ontology elements. Matching model
Method class
Comparison of elements of two ontologies using synonyms
Combined
Comparison of elements of two Comparison of elements of two ontologies using similarityontologies using semanticbased method based distances search method
Linguistic
Graph-based distance improvement
Contextual
Fig. 2. Multi-model approach to on-the-fly matching KP and SIB ontology
On-the-Fly Ontology Matching in Smart Spaces: A Multi-model Approach
75
3.2. Update values in matrix M, where each new value of elements of M is the maximum value of (M, M’) 4. Improve distance values in the matrix M using the graph-based distance improvement model described in Section 4. As a result the matrix M contains degrees of similarity between ontology elements of two knowledge processors. This allows determining correspondences between elements by selecting degrees of similarities which are higher than the threshold value. The next sections describe major elements of the proposed approach in details.
3 Similarity-Based Model for Matching Ontology The similarity-based model for the ontology matching is presented in Fig. 3. It contains a stemming procedure to normalize words, improved fuzzy string comparison procedure, and normalization procedure. The normalization procedure makes it possible to reduce the resulting similarity for its easier interpretation (Section 3.3). Improved FSC Stemming
Conventional Fuzzy string comparison (FSC)
Normalization
Fig. 3. Similarity-based model for the ontology matching
3.1 Stemming To improve the matching quality the application of the stemming procedure is proposed. This operation makes it possible to identify ontology elements even if they are written in different forms. The following conversions can be done: “looking” → “look”, “device” → “devic”, “vertical” → “vertic”, and “horizontal” → “horizont”. This procedure is uniquely tuned for each supported language. 3.2 Fuzzy String Comparison The basis of the string comparison algorithm is the well-known conventional algorithm that calculates occurrence of substrings from one string in the other string. The algorithm can be illustrated by the following example from matching the iCal and vCal formats. Table 1 presents the comparison of strings “DTSTART” and “START_D”. Number of substrings of the first string contained in the second string: 16 Total number of substrings: 28 The result: string “DTSTART” is contained in the string “START_D” with similarity of 0.57 or 57%. However, this algorithm does not take into account the length of the second string. As a result it was decided to introduce the following additional modifications:
76
A. Smirnov et al. Table 1. Fuzzy string comparison example
Substrings of the first string
Contained in the second string
Substrings of the first string
Contained in the second string
D
+
TST
-
T
+
STA
+
S
+
TAR
+
T
+
ART
+
A
+
DTST
-
R
+
TSTA
-
T
+
STAR
+
DT
-
TART
+
TS
-
DTSTA
-
ST
+
TSTAR
-
TA
+
START
-
AR
+
DTSTAR
-
RT
+
TSTART
-
DTS
-
DTSTART
-
1. Perform the comparison based on the above algorithm twice: FC1 = FuzzyCompare(Element1, Element2) and FC2 = FuzzyCompare(Element2, Element1). 2. Calculate the result as an aggregation of the above results in accordance with the following formula: Re’=n*FC1+(1-n)*FC2, where n is a weight, n∈[0;1]. n = 0.5 sets the same weight to the both strings, n = 0 searches only Request within Class, and n = 1 searches only Class within Request. It is proposed to set n = 0.5 . 3.3 Normalization of Results Since the similarity metrics are obtained by via different techniques they have to be normalized. This is proposed to be done via the following formula: ⎛1 Re = ⎜ − ⎜2 ⎝
1 1⎞ + ⎟ − 4 a ⎟⎠ a * Re ′+
1 1 ⎛1 ⎜ − ⎜2 ⎝
1 1⎞ + ⎟ 4 a ⎟⎠
,
On-the-Fly Ontology Matching in Smart Spaces: A Multi-model Approach
77
where a is a coefficient, a∈(0;+∞). Values of a close to 0 (e. g., 0.00001) produce almost no normalization, values of a more than 1 significantly decrease the resulting similarity level. The value of a should be set empirically.
4 Model of Searching Semantic Distances of Ontology Elements For measuring the semantic distances between ontology elements we use the machine readable dictionary extracted by direct access to Wiktionary and WordNet. This dictionary includes: 1) a set of words defined in dictionary along with 2) definitions given for each word, 3) a set of synonyms for each word, and 4) a set of associated words for each word. Words associated to a word are considered as hyperlinked words occurring in the Dictionary definition given for this word. The nodes of ontology are linked to nodes representing their synonyms and associated words as this is given in the machine-readable dictionary. The links between the nodes are labeled by the distance of relations specified between the concepts represented by these nodes in the machine-readable dictionary. Weight w of a relation specified between two ontology elements t i and t j is assigned as: ⎧0,5 − t i , t j are synonyms ⎪ w = ⎨0,3 − t i , t j are associated words ⎪∞ − t , t are the same word i j ⎩
The values for the weights were evaluated based on the following principles: 1. Semantic distances between synonyms are assumed to be smaller than semantic distances between associated words; 2. Semantic distance is proposed to be calculated as inversely proportional to weights raised to a power. The power is proportional to the path between the compared words. The longer path the greater the semantic distance for the two different words is expected to be. To meet this expectation with reference to the way of the semantic distance calculation, a weight of the relation between two different words should be in the range (0, 1) and ∞. Taken into account the first principle, we empirically selected the weights: 0,5 - for the relation between the synonyms; and 0,3 - for the relation between the associated words; 3. The semantic distance between the same words is equal to 0. For searching semantic distance between elements of two ontologies, nodes of the first ontology are checked for their similarity to nodes of the second ontology. As a measure of similarity the semantic distance (Dist) is used.
Dist (t i , t j ) =
1 sj
∑ ∏ wk S k = si
78
A. Smirnov et al.
where t i , t j – ontology elements; w – weight of lexical relation existing between t i and t j ; S – a set of paths from t i to t j , where a path s is formed by any number of links that connect t i and t j passing through any number of nodes. The degree of similarity depends inversely on distance.
5 Graph-Based Distance Improvement Model The graph-based improvement model for propagation similarities from one ontology element to another is presented in Fig. 4. The main goal of this model is to propagate the degree of similarity between closely matching ontology elements to ontology elements related to them through RDF triples. Ontology 1
Ontology 2 d(xi, xj)
xi
d(ri, rj)
ri
d(x’i, x’j)
x’i
xj rj x’j
Fig. 4. Matching of two ontology model
Set X=(x1, x2, ..., xn) is the set of subjects and objects in the ontology of two knowledge processors. Set Dx = (d(xi, xj), ...) is a degree of similarity between xi and xj. Set R = (r1, r2, ..., rn) is a set of predicates in the ontology of two knowledge processors. Set Dr = (d(ri, rj), ...) is a set of degrees of similarity between ri and rj. Constant Tr is a threshold value that determines whether two ontology elements mapped to each other or not. The following algorithm allows propagating similarity distance to RDF subjects and objects. d(xi, xj) = maximum(Dx) while (d(xi, xj) > Tr) do for each d(x’i, x’j) as xi rm x’i and xj rl x’j do if d(rm, rl) > Tr then d(x’i, x’j) = endif endfor Exclude d(xi, xj) from Dx d(xi, xj) = maximum(Dx) endwhile
2
d (x i , x j ) ∗ d (x i′ , x ′j )
On-the-Fly Ontology Matching in Smart Spaces: A Multi-model Approach
79
The following algorithm allows propagating similarity distance to RDF predicates. for each d(xi, xj) > Tr do for each d(x’i, x’j) > Tr as xi rm x’i and xj rl x’j do d(rm, rl) = 3 d (x i , x j ) ∗ d (x i′ , x ′j ) ∗ d (r m, r l
)
endfor endfor
6 Smart-Room Case Study This is an extended scenario originally proposed in one of our previous papers [6]. The meeting takes place in an “intelligent room” including LCD projector, whiteboard, and access to Internet-based translation service. Users that are planning to make presentation have the special knowledge processor (called User Knowledge Processor or UKP) on their Nokia MAEMO devices, that implements the required functionality as described below. Upon event of user entering to the smart space meeting room, at least the following information from users’ mobile devices become accessible for other smart space UKPs: -
the user profile information (name, photo, domain of interests, e-mail, and phone number, etc.); presentation information (title, keywords, URI).
Before the meeting starts the agenda has to be automatically built and shown on the whiteboard including the speakers’ names, photos, and presentation titles. The current presentation is highlighted on the screen. All meeting participants can see the detailed agenda on the screens of their personal mobile devices. Users can change their user profile items. When the user changes the information about his/her presentation in the profile, UKP changes the appropriate rules in the smart-space. A GUI interface for visualizing the detailed agenda in the screen of participants’ Nokia MAEMO devices has been implemented as well. At the scheduled time the appropriate presentation starts automatically, i.e. the LCD projector is switched ON and the appropriate presentation is shown. The user can control the slideshow directly from the mobile device. Five minutes before the presentation ending time and when the presentation time is about to be over the whiteboard reminds the speaker about the time restrictions. The architecture of this case study is presented in Fig. 5. It includes the following knowledge processors: KP1 – whiteboard (PC); KP2 – projector (PC); KP3 – translator (PC + Internet service); KP4 – coordinator (PC); KP5… N – UKPs (e.g. Nokia N810). The application of the matching procedure is shown in Fig. 6. Let’s consider the following example. The user having mobile device with a knowledge processor (User KP or UKP) running on it and he/she is going to give a lecture. The corresponding ontology is presented in Fig. 7.
80
A. Smirnov et al. Whiteboard
Projector KP1
KP2
Participants’ UKPs
Translator
SIB
KP5
KP3
KP…
Coordinator KP4
KPN
Fig. 5. The case study architecture
The LCD projector represented in the smart space by Projector KP (PKP) is capable of this function, as it is shown by ontology of the projector KP in Fig. 8. This ontology currently located in the smart space. In order for the presentation to be shown UKP has to share the information about the presentation location (URI) with PKP. Participants’ UKPs
Projector PKP SIB
UKP Ontology
PKP
Ontology Matching
Ontology
Matching
Fig. 6. The extended case study architecture user gives
lecture part of
current slide
is of has
type
is
number
file location
Fig. 7. Ontology of user KP
For this purposes the UKP and PKP ontology have to be merged. The element “lecture” from UKP is merged with the “presentation” from PKP as a result of the semantic-based distances search method. Distance between these elements is 0.3 since
On-the-Fly Ontology Matching in Smart Spaces: A Multi-model Approach
projector
81
has
state
show
presentation part of
slide
is of has
is
number
type URI
synonym
file location
synonym
URL
Fig. 8. Ontology of projector KP
they are synonyms according to the Wiktionary. The element “file location” from UKP is merged with the “URI” from PKP as a result of checking the synonyms rules of the PKP ontology. The element “Current slide” is merged with the element “Slide”. The degree of similarity between these elements estimated via the fuzzy string comparison method is 0.59. As a result of this matching UKP knows that the following rule has to be added to the smart space to start the lecture: (“URI”, “is”, “http://myexample.com/presentation1.ppt”).
7 Conclusion The paper proposes the multi-model approach to on-the-fly ontology matching in smart spaces. The approach has been developed integrating the most efficient techniques applicable to Smart-M3 and based on analysis of the state of art. It takes into account that the matching has to be done “on-the-fly” by mobile devices with limited capacities and uses the fact that knowledge processors are responsible for performing certain concrete and well-described tasks. The experiments showed that the matching procedure based on the proposed algorithm (without using on-line dictionaries) takes less than a second on a Nokia N810 mobile device. Any measurement of similarity comes with a certain probability. In this study the minimal probability when the nodes are considered to be the same is captured by comparison to a certain threshold value. The state-of-the-art study discovered that at the moment there are no methods for automatic (without involvement of experts) setting of the threshold value for the matching procedure. Hence, within scope of this project we had to spend significant efforts to minimize as much as possible the need for the expert involvement in the future. As a result, the developed model assumes involvement of experts only at two stages of the design phase and no expert involvement at the run time. First, the experts are obviously needed at the development of the ontology for KPs. At this stage they also define synonyms for the appropriate domain that will be used during matching.
82
A. Smirnov et al.
Another stage when the experts are required is at the setting of the threshold value. This could be done either during the ontology design or postponed till the designed ontology is matched against some other existing ontology from the appropriate domain. For example, it could be specially developed testbed ontology, or accumulated ontology from the real world, depending on the availability. If the threshold is defined when the KP ontology is designed, its quality would be usually worse than when its definition is postponed because of the lack of the matching results with other existing ontology. However, it is not always possible to postpone since the testbed or real world ontology is not be available in many cases, e.g. in case of developing KPs for new domains. In this study we could not find fully automated solution for defining threshold value, but we are continuing to think in this direction and your ideas on how it can be solved are very welcome.
Acknowledgement The presented work is a result of the joint project between SPIIRAS and Nokia Research Center. Part of the implementation work has been also supported by Open Innovations Framework Program FRUCT – www.fruct.org.
References 1. SourceForge, Smart-M3 Retrieved: 10.4, (2010), http://sourceforge.net/projects/smart-m3 2. Semantic Web site, http://www.semanticweb.org (retrieved 10.4.2010) 3. Smart-M3 Wikipedia page, http://en.wikipedia.org/wiki/Smart-M3 (retrieved 10.4.2010) 4. Oliver, I., Honkola, J.: Personal Semantic Web Through a Space Based Computing Environment. In: Middleware for Semantic Web 08 at ICSC’08, Santa Clara, CA, USA (2008) 5. Oliver, I., Honkola, J., Ziegler, J.: Localized Space Based Semantic Webs. In: WWW/Internet Conference, Freiburg, Germany (2008) 6. Carriero, N., Gelernter, D.: Linda in context. Artificial Intelligence and Language Processing 32(4), 444–458 (1989) 7. Wells, G.: Coordination Languages: Back to the Future with Linda. In: Proceedings of the Second International Workshop on Coordination and Adaptation Techniques for Software Entities (WCAT’05), Glasgow, Scotland, pp. 87–98 (2005) 8. AnHai, D., Jayant, M., Pedro, D., Alon, H.: Ontology Matching: A Machine Learning Approach. In: Handbook on Ontologies in Information Systems, p. 660. Springer, Heidelberg (2004) 9. Doan, A., Madhavan, J., Domingos, P., Halevy, A.: Learning to map between ontologies on the semantic web. In: Proceedings of the 11th international conference on World Wide Web, pp. 662–673 (2002) 10. Hu, W., Jian, N., Qu, Y., Wang, Y.G.: A Graph Matching for Ontologies. In: K-CAP Workshop on Integrating Ontologies, pp.43–50 (2005) 11. Alasoud, A., Haarslev, V., Shiri, N.: An Effective Ontology Matching Technique. In: 17th International Symposium ISMIS 2008, Toronto, Canada, May 20-23, pp. 585–590 (2008) 12. Hovy, E.: Combining and standardizing largescale, practical ontologies for machine translation and other uses. In: The First International Conference on Language Resources and Evaluation (LREC), Granada, Spain, pp. 535–542 (1998)
On-the-Fly Ontology Matching in Smart Spaces: A Multi-model Approach
83
13. Mitra, P., Wiederhold, G., Jannink, J.: Semi-automatic Integration of Knowledge Sources. In: 2nd International Conference on Information Fusion (FUSION 1999), Sunnyvale, CA (July 6-8, 1999) 14. Mitra, P., Kersten, M., Wiederhold, G.: Graph-Oriented Model for Articulation of Ontology Interdependencies. In: Zaniolo, C., Grust, T., Scholl, M.H., Lockemann, P.C. (eds.) EDBT 2000. LNCS, vol. 1777. Springer, Heidelberg (2000) 15. Noy, N., Musen, M.: Anchor-PROMPT: Using Non-Local Context for Semantic Matching. In: Workshop on Ontologies and Information Sharing at the Seventeenth International Joint Conference on Artificial Intelligence (IJCAI-2001), Seattle, USA (2001) 16. Castano, S., Ferrara, A., Montanelli, S.: H-Match: an Algorithm for Dynamically Matching Ontologies in Peer-based Systems. In: Proc. of the 1st VLDB Int. Workshop on Semantic Web and Databases (SWDB 2003), Berlin, Germany (2003) 17. Serafini, L., Bouquet, P., Magnini, B., Zanobini, S.: An algorithm for matching contextualized schemas via SAT. Technical report, DIT University of trento, Italy (2003) 18. Noy, N., Musen, M.: SMART: Automated Support for Ontology Merging and Alignment. In: 12th Workshop on Knowledge Acquisition, Modeling, and Management, Banff, Alberta (1999) 19. McGuinness, D.L., Fikes, R., Rice, J., Wilder, S.: An Environment for Merging and Testing Large Ontologies. In: Proceedings of the Seventh International Conference on Principles of Knowledge Representation and Reasoning (KR’2000). Breckenridge, Colorado, USA (2000), http://www.ksl.stanford.edu/software/chimaera/ (retrieved, 10.4.2010) 20. Aumueller, D., Do, H., Massmann, S., Rahm, E.: Schema and Ontology Matching with COMA++. In: Proceedings of the 2005 ACM SIGMOD International Conference on Management of Data, pp. 906–908 (2005) 21. Melnik, S., Garcia-Molina, H., Rahm, E.: Similarity flooding: a versatile graph matching algorithm and its application to schema matching. In: Proceedings of the 18th International Conference on Data Engineering, USA, pp. 117–128 (2002) 22. Cruz, I., Antonelli, F., Stroe, C.: Efficient Selection of Mappings and Automatic Qualitydriven Combination of Matching Methods. In: The Fourth International Workshop on Ontology Matching, Washington DC, USA (2009) 23. Ritze, D., Meilicke, C., Šváb-Zamazal, O., Stuckenschmidt, H.: A pattern-based ontology matching approach for detecting complex correspondences. In: The Fourth International Workshop on Ontology Matching, Washington DC, USA (2009) 24. Giunchiglia, F., Maltese, V., Autayeu, A.: Computing Minimal Mappings. In: The Fourth International Workshop on Ontology Matching, Washington DC, USA (2009) 25. Klein, M., Kiryakov, W., Ognyanov, D., Fensel, D.: Ontology Versioning and Change Detection on the Web. In: 13th International Conference on Knowledge Engineering and Knowledge Management (EKAW02), Sigiienza, Spain (2002) 26. Smirnov, A., Kashevnik, A., Shilov, N., Oliver, I., Lappetelainen, A., Boldyrev, S.: Anonymous Agent Coordination in Smart Spaces: State-of-the-Art. In: Balandin, S., Moltchanov, D., Koucheryavy, Y. (eds.) ruSMART 2009. LNCS, vol. 5764, pp. 42–51. Springer, Heidelberg (2009)
Access Control in Personal Localized Semantic Information Spaces Alexey Koren and Alexander Buntakov State University of Aerospace Instrumentation, Bolshaya Morskaya 67, Saint-Petersburg, Russia {alexey.koren,alexander.buntakov}@extendedmobile.net
Abstract. Leading by global convergency of devices and software from different domains (mobile, desktop, web) information exchange platforms are also evolve into form of smart spaces, personal localized semantic information clouds. New architectures appear, fulfilling needs of crossplatform interaction, semantic reasoning and many other novel functions. In this paper we discuss access control problem for such kind of platforms. Several achievements are described briefly highlighting features that are most interesting in given context, requirements for access control framework are suggested and finally we introduce model of access control framework for one of the most promising smart spaces architecture. Keywords: Smart spaces, access control, personal semantic web.
1
Introduction
Despite of tremendous growth of World Wide Web in last decades and appearance of huge number of social services that affect volumes of information shared on the Web, most information sources are still private and open to limited number of trusted users. That is in human nature and most probably situation will not change in short time. People are about to create personal spaces and share it only with chosen person. On the other hand there are blogs, online diaries, social networks where exactly the same people publish a lot of information with everybody. But during the sharing people still want to hold ownership and control of all published information. Explaining in terms of Tim Berners-Lee’s idea of Giant Global Graph [1]: actors (both corporate or individuals) want personal subgraph of it to be under their control. One of the most promising architectures for fulfilling such need is localized personal semantic spaces (we will use term ”smart space” in this paper) described in [2, 3]. It takes advantage of many concepts, which are now popular in discussions about semantic technologies: automated reasoning, context-awareness, personalization etc. Such technologies and platforms emerge rapidly and we can say that it is predictable and fits common trend of device and software domains convergency [4]. Basic architecture is simple and it is shown on figure 1. Each smart space obtains a shared place for information exchange called ”whiteboard”. This is a S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 84–91, 2010. c Springer-Verlag Berlin Heidelberg 2010
Access Control in Personal Localized Semantic Information Spaces
85
canvas for creating semantic subgraph. For representing information open standards such as RDF [5] and OWL [6] are used. Agents, also called ’knowledge providers’ (KPs), connect to SIB during simple protocol allowing ”Insert”, ”Retract”, ”Query”, ”Subscribe” and ”Unsubscribe” actions, where: Insert - insert a set of triples; Retract - remove a set of triples; Query - query information store for a set of triples; Subscribe - set up a subscription for a given query; Unsubscribe - terminate processing of the given subscription. This set of actions could be easily represented as traditional [SELECT, INSERT, REMOVE] or [GET, PUT, DELETE] actions set, which seems more clear and strict for defining access.
Fig. 1. Smart space architecture
Agent could potentially connect to any number of spaces, combining information from them for more complex reasoning or simple aggregation for user. 1.1
Smart Spaces’ Security Requirements
Such way of organizing information makes traditional access control methods not applicable for providing security in pervasive highly dynamic systems filled with semantic information. New model of information interaction imposes new security requirements. We consider following as basic ’must have’ features for smart spaces oriented access control methods: 1) Access control on information (RDF) level. Security administrator should be able to restrict or permit explicitly any atomic piece of information, in terms of RDF (as it is standard de-facto for semantic technologies) - any particular triple or a set of triples. 2) Flexible semantic policies definition. From the other hand ability to define access policies on high semantic level is also important. It is more handy way to manage security permissions when it is no need to work on information pieces
86
A. Koren and A. Buntakov
level but on information types level. For example instead of restricting access to every person’s credit card information for anonymous it is more correct way (both from usability and security points of view) to restrict access to all triples of type [*, ”hasCreditCardNumber” ,*]. On higher level it should be possible to group different triple patterns into sets according to its semantics and work with such semantic categories instead of single patterns. In this example all personal financial information which could consist of several card numbers, bank accounts etc. may be combined in one group and administrator will permit or restrict access to this high-level object. Common way for organizing this is using ontologies. 3) Context-awareness and dynamic permission management. In novel ubiquitous multi-agent systems environmental conditions are changing very rapidly. And the same time state of environment sometimes affects permissions of agents. Most usual example is location - mobile agents located in particular area, lets say hotel main hall, may be able to access hotel’s internal services and the same time agents located outside the building are not permitted. Security system must handle all possible context situation gracefully, associating rights to agents in real-time after context changing. 4) Support for reasoning. Many semantic platform gain advantage of reasoning process. During reasoning new portions of information may appear in the system. After this security system must perform secure reasoning to determine what security attributes should be assigned new objects. It should be done not only to prevent unwanted access to private information but also for measuring trust for newly appeared information: may other users take into account these information in some sensitive reasoning processes or not? Lets look at one more example from financial world. Knowledge providers perform reasoning to recalculate estimations of air transport company after messages about planes’ crashes. If somebody will add untrusted information about several incidents - it should not affect stock prices before information will be confirmed officially. 5) Simple lightweight design. It is worth to note that multi-agents environment such as smart spaces are often consist of small devices restricted on energy, memory and/or processing power like mobile phones or consumer electronics. In order to minimize resource consumption for security subsystem it is very important to reuse as much as possible existing infrastructure and make security solution as resource-efficient as possible.
2
Related Work
Rebecca Montanari, Alessandra Toninelli et al. in a series of works dedicated to security for mobile agents [7, 8] achieved significant results in observing area of semantically-rich context-aware security policies based on rules and onthologies. Authors proposed hybrid approach which combines description logic and logical programming for definition of security policies for ubiquitous dynamically changing multi-agent environments. Benefits of this approach is very well-reasoned and these results affects architecture proposed in this paper pretty much.
Access Control in Personal Localized Semantic Information Spaces
87
One more example of using logical programming of context-aware security policies is Cerberus [9], security service of Gaia project. Cerberus is a ubiquitous security mechanism integrating context-awareness and reasoning over security policies for providing access control in ubiquitous computing environments. Interesting idea is to use confidence values for different types of authentication and several probabilistic methods to combine them to net value. But theoretically interesting idea is difficult for implementation in real world. For every system security administrator should manually define confidence levels for every authentication method and their combinations. For really complicated system it might be painful and lead to multiple vulnerabilities (or will require development of verification process). And in most cases confidence levels will anyway be created by administrator which uses Boolean logical clauses to determine permissions in every case, so it is more convenient to don’t use fuzzy conditions instead of natural logical programming and strict statements for defining security. Covington et al. proposed a mechanism of environmental roles [10] as a method of assigning security permissions to subjects and groups basing on state of system (environment). An environmental role can be activated if set of environmental variables (day of week, time, location etc.) satisfies a policy defined by security administration. This set is stored in a role definition. Such kind of encapsulation seems reasonable in many cases but sometimes it could be not very handy in situation when there are many roles which are pretty similar in general but different in details. In this case administrator should either place piece of logic into role definition (not good semantically and from encapsulation point of view) or create a very big set of environmental roles each of them is a small modification of base one. That is one more argument for separation logic of assigning roles basing on system’s state and roles itself. This way usage of environmental variables together with logically programmed security policies is a better way. There were several attempts to describe security infrastructures for RDF stores. In [11] authors propose a policy based access control method for an RDF stores. Idea is clear and simple and most applicable architecture detail is that all metadata and security policies is stored into RDF store itself. In [12] it is proposed to store security object for every triple or triple pattern. This object will define access rights for given triple. Also two-level conflict resolution policy mechanism is described. Main disadvantage of RDF-based security approaches (in our case) is that there is no possibility to define policies on high semantic level using ontologies and context.
3 3.1
Access Control Model Access Control on Low Level
Main functionality of smart spaces is to provide information and knowledge exchange in unified open format. Thereby main functionality of its access control system is to manage access to these information and knowledge. As vice as information mainly represented in RDF format - security will also work with RDF format and RDF stores at lowest level.
88
A. Koren and A. Buntakov
Common representation of RDF data set is oriented graph. Security check for given user and given may be presented as taking a subgraph in accordance with user’s access rights for every vertex and edge. We can manage access to RDF graph by assigning access right to different triple templates. Vertices are represented as triples like [John Smith, ?, ?] or [?, ?, John Smith], which corresponds to ’subject’ or ’object’ position of Mr. Smith in triple accordingly. Edges are represented as triples like [?, foaf:knows, ?]. Given triple describes simple relation between two subjects in social network using FOAF ontology [13]. Managing access to such kind of triple it is easy to make all contacts of person invisible to any group of users, let say ’anonymous’, ’banned’ or ’not friends’. Also it is possible to define access to any particular triple using same notation: [John Smith, ”salaryIs”, ”2000000 euro cash”]. Triple templates may be grouped together by any thematic, access or other property to simplify policy definition and changing. For managing access in dynamically changing environments it is most reasonable to use role-based access control model (RBAC) [14], instead of mandatory or discretionary as most flexible. We suppose P to be set of possible actions [PUT, GET, REMOVE] for all triple templates and template groups. Roles could be assigned to user in two ways: statically and dynamically. We don’t distinguish common roles and environmental or context-based roles explicitly. Secure reasoner is just assigning common roles to user basing on its context and/or state of environment. User can not only gain roles during environment check, but also lose some of roles statically assigned to him/her earlier. Consider the following example. Mr. Smith could be member of ’sales managers’ groups and thereby have access to some sensitive company information. But if he will trying to access this information from public computer or through insecure connection, then during security reasoning process he will temporary lose ’sales managers’ privileges and gain weaker privileges from role ’sales manager in untrusted environment’ and all security check for his queries will be done against this role, instead of his membership statically assigned before. It will have place until he will return to trusted corporate network or will set up VPN connection. 3.2
High-Level Policies Definition
Common way to define high-level security constraints is using ontologies (most likely in OWL format). Security administrator can describe any clause relevant to his/her domain in semantic way, like ’colocatedWithUser’, ’customerOfOurCompany’ or ’memberOfDependentProject’. Roles should also be described in OWL because ownership of some roles could be part of another role’s or policy’s description. Alessandra Toninelli et al in [8] suggest architecture of policy framework for pervasive computing to exploit logical programming [LP] in addition to description logic [DL] for encoding strict and clear rules operating high-level constraints and entities derived from ontology. In such manner we separate and encapsulate 3 main domains:
Access Control in Personal Localized Semantic Information Spaces
89
1) Description of all possible constraints, entities, actors, environment states etc. given in form of ontology; 2) Set of roles, independent from any environmental or other constraints, defining access right for different types of users and/or automated agents; 3) Set of logical rules, defining which user will grant which permissions in current context. At the same time all of 3 domains could be expressed in RDF form and be put into regular RDF storage without need to upgrade its structure for storing new data formats, that is important for small weak devices. 3.3
Support for Reasoning
Dynamic rules-based policy also should be applied to newly added triples. If triple fits any template defined in access policy it automatically gains according information group membership and access constraints. In case when triple doesn’t fit any template its access constraints may be chosen basing on user’s roles set or it can be assigned to default category. Trust maintenance is organized via adding ’trust level’ attribute to information groups or triple templates. Once system controls access to information group it could guarantee that information in given group may be changed only by authorized entities (users or automated agents) with proper level of trust. If triple appears as a result of reasoning process - KP should take trust level of all information considered during the process and set the lowest level from presented to resulting triples. Problems may appear when KP aggregates information from different smart spaces to perform reasoning. They most probably will have totally different trust policies which have no common semantics. In this case KP could treat resulting information as having trust lowest level from different spaces, because at the time when they don’t have common semantics in general and can not be comparable, KP knows meaning of every trust level and is able to decide is information combined from pieces with given trust levels trusted enough or not. Consider example with 2 news resources, each has authorized information from its journalists, verified by editors, and forum where any guy could leave his/her message. Thus first type of information is trusted (has trust level = ”1”) for both resources and forum threads has no trust in general (trust level = ”0”). Mathematically they are equal but let us say first resource is very old and respectful periodical and second one has doubtful reputation. In this case user will treat information appeared by reasoning on main news lines of both resources as not trusted enough, as he knows reputation of both resources. 3.4
Summary
Summarizing all details described above we see effective access control framework for dynamic, localized space based semantic webs as it shown on figure 2.
90
A. Koren and A. Buntakov
Fig. 2. Smart space architecture with security modules
All system information is stored into regular RDF store. Logical programming rules are not RDF-based itself usually, but they can be serialized to unify storage mechanism. Context is integrated with secure reasoning module which analyzes system’s state and assign or remove roles to users. We don’t analyze authentication and authorization methods in this paper that’s why there are no changes at all at the agents’ side. Trust maintenance need some changes on agents’ side but it also not actually a part of access control architecture.
4
Conclusion and Future Work
This paper describes our vision smart spaces access framework architecture. Multi-agent pervasive environment and semantic personalized webs are extremely new and intensively developing areas. All trends in World Wide Web, mobile devices and consumer electronics faster or slower but going in these directions. As soon as pure information now is the only possible level of interaction, research and development in area of security should also evolve to fulfill novel needs. In this paper we done review of related work in these areas and tried to build solution utilizing some of achievements to apply them to providing access control in smart spaces based environments. Practically, this paper leaves too much interesting questions out of scope. Authentication and authorization in multi-spaces environment is very interesting area for research as well as advanced support of reuse and reasoning over information from different sources, which can be described using different ontologies and have totally different trust levels. Solution given in this paper is far too simplistic and we will work further to make this concept-level model to work in dynamic environment with high level of uncertainty.
Access Control in Personal Localized Semantic Information Spaces
91
Acknowledgement The authors would like to thank FRUCT (Finnish-Russian University Collaboration in Telecommunications) program [15] for support and assistance provided and also would like to acknowledge importance of the financial help provided by Nokia and Nokia Siemens Networks.
References 1. Shadbolt, N., Berners-Lee, T., Hall, W.: The Semantic Web Revisited. IEEE Intelligent Systems 21(3), 96–101 (2006) 2. Oliver, I., Honkola, J., Ziegler, J.: Dynamic, Localised Space Based Semantic Webs. In: WWW/Internet Conference, Freiburg, Germany (2008) 3. Oliver, I., Honkola, J.: Personal Semantic Web Through A Space Based Computing Environment. In: Middleware for Semantic Web 08 at ICSC’08, Santa Clara, CA, USA (2008) 4. Koren, A., Balandin, S.: The Road to Smart Spaces: Convergence of Consumer Electronics with a Change of Content Management and Application Design Principles. In: Proceedings of 6th FRUCT Seminar, Helsinki, Finland (2009) 5. Resource Description Framework (RDF): Concepts and Abstract Syntax. In: W3C Recommendation, http://www.w3.org/TR/rdf-concepts/ (retrieved 03-08-2009) 6. OWL Web Ontology Language Overview, W3C Recommendation, http://www.w3.org/TR/owl-features/ (retrieved 03-08-2009) 7. Montanari, R., Toninelli, A., Bradshaw, J.M.: Context-Based Security Management for Multi-Agent Systems. To be published Proc. of the Second IEEE Symposium on Multi-Agent Security and Survivability. IEEE Press, Philadelphia (2005) 8. Toninelli, A., Kagal, L., Bradshaw, J.M., Montanari, R.: Rule-based and Ontologybased Policies: Toward a Hybrid Approach to Control Agents in Pervasive Environments. In: Proc. of the Semantic Web and Policy Workshop (SWPW), in conj. with ISWC 2005, Galway, Ireland (2005) 9. Al-Muhtadi, J., Ranganathan, A., Campbell, R., Mickunas, M.D.: Cerberus: A Context-Aware Security Scheme for Smart Spaces. In: Proceedings of 1st IEEE Annual Conference on Pervasive Computing and Communications (PerCom 2003), Fort Worth, TX, pp. 489–496 (2003) 10. Covington, M.J., Long, W., Srinivasan, S., Dey, A.K., Ahamad, M., Abowd, G.D.: Securing Context-Aware Applications Using Environment Roles. In: SACMAT’01, May 3-4, Chantilly, Virginia, USA (2001) 11. Dietzold, S., Auer, S.: Access Control on RDF Triple Stores from a Semantik Wiki Perspective 12. Jain, A., Farkas, C.: Secure Resource Description Framework: an Access Control Model. In: SACMAT’06, Lake Tahoe, California, USA (2006) 13. FOAF Vocabulary Specification, http://xmlns.com/foaf/spec/ (retrieved, 10-042010) 14. Sandhu, R., et al.: Role based access control models. IEEE Computer 29(2) (February 1996) 15. Finnish-Russian University Collaboration in Telecommunications (FRUCT) program official webpage, http://www.fruct.org (retrieved, 10-04-2010)
Integration of an Answer Set Engine to Smart-M3 Vesa Luukkala and Jukka Honkola Nokia Research Center, Itämerenkatu 11, Helsinki, Finland
[email protected],
[email protected]
Abstract. We present our work in integrating an answer-set engine smodels to Smart-M3 interoperability platform. This gives user a possiblity of programming and trialing logic program reasoning in Smart-M3 environment. The smodels programming model guarantees that evaluation of rules is terminating. We add reactive features on top of the answer-set programming model and discuss its implications.
1
Introduction
Nowadays, a lot of devices with considerable computing power and connectivity mechanisms are present in the everyday environment. The potential of these devices has also increased the interest in getting them to interoperate. Currently, interoperability standards mostly apply for single domains, such as UPnP and DLNA for home entertainment, or are controlled by a single company, such as the Apple ecosystem. The domain specific interoperability standards are challenging for nomadic devices such as smart phones, which ideally should be able to interoperate with any device it can connect to at any given time. A nomadic device will currently have to implement multiple standards to be able to participate in the different domains. Furthermore, the existing standards often target specific use cases instead of attempting to specify a more general interoperability framework. One initiative to target a generic interoperability framework is the semantic web [1]. The goal of the semantic web is to provide machine readable information about the World Wide Web in order to allow automating many tasks that the web is currently used for manually. Eventually this would result in one giant global graph describing the resources of the web in RDF [10] according to ontologies defined in dedicated languages such as in OWL [9]. However, the web is not the best platform for sharing the rapidly changing, dynamic local information about the immediate environment of a device. Smart-M3 is an interoperability platform that allows devices to easily share and access local semantic information, while also allowing the more global semantic information to be available. The information is represented by using same mechanisms as in semantic web, thus allowing easy exchange of global and local information. The RDF representation also allows extremely easy linking of S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 92–101, 2010. c Springer-Verlag Berlin Heidelberg 2010
Integration of an Answer Set Engine to Smart-M3
93
data also between different ontologies, thus making cross-domain interoperability straightforward. While the used semantic web technologies have been designed to allow reasoning over the information, Smart-M3 currently supports only limited reasoning. Queries in Smart-M3 understand subclass relations, and the query engine also understands the owl:sameAs property. The implemented reasoning mechanisms in Smart-M3 are currently domain-independent, that is, they can take into account properties defined in RDFS or OWL, but not information defined in domain ontologies. However, in many applications creating domain-specific reasoners would be useful. We present an approach where we use logic programming for defining the domain specific reasoning rules. As each RDF triplet can be interpreted as a fact of arity two, there is a straightforward link between RDF content and rulebases. Therefore, various logic programming approaches can be used in a natural manner to deduce new information by means of user constructed rules executed over the fact base. The logic programming approach is useful in creating domain specific instructions for searching and abstracting over the RDF content. Also searching for configurations and policies are natural to express using logic programming means. Furthermore it is possible to generate consitency rules based on ontologies. In short, a rule mechanism can be used to provide additional functional semantics to accompany ontologies. Rules can also be thought of as views in the underlying RDF-base. In this way the logic programming mechanism provides a flexible alternative to query languages like SPARQL [12] or Wilbur Query Language [5]. This approach is not new, for instance Wielemaker et. al. [13] have proposed Prolog to be fundament for application development for semantic web for similar reasons. The smodels [6] is a system for answer set programming. It consists of lparse front end which transforms rule language to input suitable for smodels, which is a solver based on stable model semantics of logic programming. Here we refer to the combination of lparse front end and smodels solver simply as smodels. smodels allows constructing programs using extended logic programming concepts, atoms and inference rules, but by language construction the programs are always decidable. ssls 1 is a command-line tool giving access to Smart-M3 operations with some additional convenience features as well as a possiblity of interfacing external tools to operate on the results of the operations. We use ssls to integrate smodels with Smart-M3 as a node of the system. We do not expect this work to provide a complete programming environment for applications (even though it in principle could be one), but rather as a component in Smart-M3 technology stack. In section 2 we introduce the Smart-M3 interoperability platform, in section 3 we present the integration between smodels and ssls, in section 4 we give an example of use and finally in section 5 we present our conclusions and possibilities for future work. 1
Available at http://sourceforge.net/projects/ssls
94
2
V. Luukkala and J. Honkola
Smart-M3
Smart-M3 is a space-based interoperability platform consisting of two main components: semantic information broker (SIB) and knowledge processor (KP). A smart space is defined as a named search extent of information, where the information is stored in one or more SIBs. The architecture of the system is presented in Figure 1. In the simplest case, one SIB will store all information in a smart space, but there is a possibility of connecting multiple SIBs to make up a smart space. The SIBs making up a smart space will be connected with a protocol that provides distributed deductive closure [2]. Thus, any KP sees the same information content in the smart space regardless of the SIB it connects to2 . The information in the smart space is stored as an RDF graph, usually according to some defined ontology. The use of any specific ontology is not mandated, however. Neither is the consistency of the stored information guaranteed in any way. The KPs may modify and query the information using the insert, remove, update, query and subscribe operations by using the Smart Space Access Protocol (SSAP). Join Leave
: Join a KP to a named space : Leave a named space. After leaving, no more operations may be performed until a join operation Insert : Atomically insert a graph in the space Remove : Atomically remove a graph from the space Update : Atomically update a graph in the SIB. Update is a combination of remove followed by insert, executed atomically Query : Query for information in the space using any supported query language Subscribe : Set up a persistent query in the space; changes to the query results are reported to the subscriber Unsubscribe : Cancel an existing subscription The communication between KPs and SIB may be implemented by using any SOA style service network such as the Network on Terminal architecture [7], or by using a suitable transport protocol such as XMPP or TCP/IP. This approach allows using already deployed communication mechanisms and protects previous investments. Furthermore, it also means that KPs can connect to smart spaces by using the mechanism most suited to them. 2
Distributed deductive closure is not implemented in the current Smart-M3 implementation.
Integration of an Answer Set Engine to Smart-M3
95
Agent Agent
Agent
Agent
M3 Space SIB SIB SIB
Fig. 1. A diagram of the general system architecture: Agents, M3 spaces and SIBs
2.1
Notion of Application
The notion of application in a smart space differs from the concept of traditional application. Instead of a monolithic application running on a single screen, the smart space applications are better seen as scenarios that can be executed to meet the goals of the user. The scenario emerges from the observable actions, taken by the participating knowledge processors, based on the information in the smart space, and also from the use of available services. The scenarios may also be transient: the scenario will change as the participating KPs join and leave the smart space, and also as services become available or unavailable. One of the targets of Smart-M3 has been to make combining the scenarios easy. This is achieved by the loose coupling between the KPs, as they only communicate by modifying and querying the information in the smart space. Thus, any effect that appearance or disappearance of KPs may have on the rest of the environment is limited to the information seen in the smart space. KPs may, of course, communicate with each other by any available means. but this is outside the scope of Smart-M3. A KP understands its own, non-exclusive set of information. This information may be thought of as the ontology of a KP. It is rarely defined formally, and is mostly an implicit concept which can be useful in some situations. Overlap of the sets of information understood by KPs is an essential precondition for achieving interoperability, as otherwise the KPs will never see each others actions. Smart-M3 has been used as an interoperability platform for a number of case studies. The case studies illustrate the applicability of the concept to a variety of areas. A case study of cross domain interoperability is described in [4]. The scenario involved a wellness domain represented by SportsTracker application, home entertainment domain represented by music streaming using a UPnP service, gaming domain represented by SuperTux game, and telecom domain represented by a phone call observer application. All domains share information using a M3 smart space, resulting in improved user experience compared to the case where the components operate independently. For example, when a call is received, the
96
V. Luukkala and J. Honkola
game and music player see the information that a call is ongoing in the smart space and can take appropriate action, in this case pause the music and game. When the call ends, music continues automatically. Furthermore, the played music changes according to the state of the game, for example, when the player loses lives, the music changes appropriately. Finally, the game may award extra lives if the player has been exercising lately. Other case studies include a building automation case [3], a smart meeting room case [11], a home sensor network case [8], and a health care case developed by University of Bologna. In the building automation case, information from the installed sensors and systems is shared for others by using Smart-M3, allowing also devices that do not implement the oBIX or other building automation protocols to access the information. In the smart meeting room case, Smart-M3 is used to coordinate access to the resources of a meeting room, such as a projector for presentations. The home sensor network case is remarkable in that all the hardware used is commercially available. The demo shows input from several sensors on multiple devices, such as Apple iPhone, Nokia N810 and laptop. The health care case uses information from temperature and humidity sensor and patient’s heartrate monitor to determine if the external conditions may be hazardous for the patient. Furthermore, a demonstration showing a combination of the home sensor network and healthcare demos where the information from the sensors used in home sensor network demo was used in the healthcare system, illustrating the ease of creating mash-up applications, has been created. All of these scenarios have been implemented by using various kinds of wrappers on top of SSAP protocol and ontological concepts on procedural languages, like C, C# and Python. All of these scenarios contain KPs whose essential behaviour can easily be expressed as a set of rules and a part of the effort involves re-implementing a specific ruleset and its support mechanisms in the host language.
3
Integrating smodels Using ssls
For this work the purpose of ssls is to integrate the smodels system as a node local rule execution environment. This allows us to easily trial various functionalities, which may later on be integrated to SIB itself. We assume that at least some part of the SIB contents is fetched to the node for the duration of the rule execution. The basic operation of rule execution is that given a command, ssls fetches the contents of the SIB and generates a rulebase from them. The rules themselves have been defined locally in a file or within ssls and they are executed against the rulebase using smodels. The result will be a set of triples to be inserted in the SIB and set of triples to be deleted from the SIB, which are then committed to
Integration of an Answer Set Engine to Smart-M3
97
the SIB. There are mechanisms for limiting the amount of fetched information as well as adding a degree of reactivity, which are described later on in this section. The conversion of the SIB contents is straghtforward: the SIB is queried for all triples and they are converted from subject, predicate, object triplet to fact predicate(subject, object). In order to satisfy the lparse syntax checker all URIs are quoted, which poses some problems for distinguishing between literals and URIs. This is solved by doublequoting the URIs with < and >. For example, a triplet :abcd-2ew4, rdf:type, wp1:Person would produce a fact "
"("<:abcd-2ew4>", "<wp1:Person>"). The rules are written in a text file, which is given to ssls as a parameter. It is also possible to define rules within the ssls interpreter, but only a subset of lparse language features are supported. The result of the smodels execution over the fact base and the rules is parsed for predefined facts which trigger adding content to insert and delete buffers, which are then committed to SIB. The facts for adding triples to insert and delete buffers are correspondingly i and d, both of arity three. Note that both i and d are ssls commands for adding triples to the buffers, which are then committed by the SSAP command update. After all generated facts have been parsed the update command is issued which will cause atomically the deletions to occur, followed by the insertions. In addition to the above i and d there are specific facts which cause ssls to print their arguments. During the rule execution several facts beside the ones which are interpreted (described above) may have been deduced. Unless these facts have been “marshalled” by means of i and d to the SIB, they will disappear after the rule execution. In this way the node with the rule engine is stateless. Of course it may be that the SIB is modified inbetween two rule executions and thus the results will be different for the same rules. However, it may be useful to have a hidden state, which is not published to the SIB. This may be due to security issues or performance reasons. This can be achieved by adding facts to the file with rules, but there is also a mechanims which allows to create a new persistent fact by means of rules themselves. If the fact ssls_fact with arity two is deduced, ssls calls its own rule command to add a new fact to its internal rulebase with the given arguments. The downside of introducing hidden state is that the state is local and the distribution of rules which use ssls_fact may be harder. Above we mentioned that the whole SIB is transferred to the node as the factbase for rule execution. Since the transferral is done by means of the SSAP query command, it is possible to limit the amount of information transferred. ssls contains a view mechanims which allows constructing a query with a set of triple patterns. So far we do not have any mechanism to check whether a view enables all rules, so this is an ad-hoc mechnism of reducing the amount traffic and requires an understanding of the particular rules to be safe. Finally, we may automatically trigger execution of rules by using the SSAP subscription mechanism. The mechanism allows setting up a persistent query and whenever there are changes in SIB pertaining to the query, the node is informed
98
V. Luukkala and J. Honkola
about them. ssls allows naming subscriptions and whenever a subscription with its name prefixed by smls fires, the rule execution is initiated. This provides for a simple reactive mechanism to execute the rules. Note that so far each single execution of the rule-engine is decidable, but the above mechanism together with the notion of state (either in SIB or locally in the node) makes it impossible to determine the behaviour of such a chaining of single rule-engine executions. On the other hand this enables more generic programming, but the required mechanisms and sensibility of this approach needs further research.
4
A Rule Example
We have chosen smodels over other similar alternatives (like Prolog) for couple of reasons: firstly, the execution is decidable, removing a whole class of errors. Secondly, the execution order of the rule body is not relevant. This enables future distribution strategies for rule execution. Thirdly, the system is well established with several implementations. Finally, the smodels language contains several features, which are very useful in constructing rules, namely: possiblity of choosing a defined number of facts, a negation which works as set negation and weighing facts. const threshold = 10. % Rule 1 3 { power_save_on(X),i(X,"<mob:pmode>","low"),d(X,"<mob:pmode>","high") } 3 :""(X,"<mob:Device>"), "<mob:battery_level>"(X,Y), not connection_active(X), lt(Y,threshold). % Rule 2 connection_active(X) :1 {"<mob:gsm>"(X,"on"), "<mob:wlan>"(X,"on")}. % Rule 3 3 { power_save_off(X),i(X,"<mob:pmode>","high"),d(X,"<mob:pmode>","low") } 3 :""(X,"<mob:Device>"), "<mob:battery_level>"(X,Y), ge(Y,threshold). Fig. 2. smodels rules for a simple power manager
We give a simplistic example highlighting the two first features. In this case we have a mobile device, which monitors its battery level and if the level falls
Integration of an Answer Set Engine to Smart-M3
99
under a preset value, puts the device to a power saving mode unless a connection is active. We define connection as either GSM being active or a WLAN connection being active. Figure 2 shows three rules to achieve this. Rule 1 derives three facts power_save_on, i and d for a device instance X, if the battery level is less than threshold and the fact connection_active does not exist in the rulebase. The head has three facts surrounded by minimum and maximum bounds, here both are three. This means that if the body matches, smodels should choose precisely three facts from the three possible choices. Here this is used as shorthand to avoid writing the same body for three different heads, but with different bounds we could choose subset(s) of the facts. Rule 2 states that we can derive connection_active if at least one of the listed possibilities exists. Rule 3 acts as a complement of Rule 1, turning power saving off when needed. Note, that power_save_on and power_save_off facts are not used anywhere in here. They are redundant as we expect that the information produced by i and d will trigger the appropriate behaviour by some other node in the system. However, if there will be other rules, these two facts can be used as components in those. In a way these facts act as an interface that this set of rules is offering for other rules.
5
Conclusions and Future Work
We have presented an integration of an answer-set programming system smodels to Smart-M3. The mechanism we have presented is simple and not specific to smodels, any other logic-programming system could be integrated by similar means. smodels does not as such contain any reactive features but Smart-M3 applications are by their nature reactive. This is why we have introduced a simple reactive mechanism in our system, which allows us the possiblity of implementing those kinds of programs using logic programming mechanisms. This comes at a price as the behaviour of the system when chaining several rule executions may not be easily predictable. One of our future research items is to understand and solve the challenges arising from this. As Smart-M3 does not currently have advanced reasoning capabilities, we use this approach to trial possible solutions to be included in the Smart-M3 system. One interesting possibility is to embed the rule engine in the SIB, and define an ontology for expressing the rulesets. This would allow executing rules defined by KPs in the SIB. For KPs with limited computing power this could be used as a mechanism to offload some of the computation from a small device to a more powerful device. Furthermore, as mentioned in section 2.1, in most scenarios there seems to be a need to utilize reasoning which is well suited to be expressed succinctly using rules. This reasoning could be performed conveniently in the SIB with the embedded rules engine. However, the exact benefits, e.g. less network traffic, and tradeoffs, e.g. performance of SIB, need to be further researched.
100
V. Luukkala and J. Honkola
The previous issues yield more particular technical research topics and work items pertaining to our rule based approach, such as: – how to derive a suitable query expression from the rules to reduce the amount of traffic needed – how to parallelize the execution of rules – implement publishing and reading in rules from SIB, enabling reflective creation of rules – how to derive rules from an ontology to enforce consistency of SIB contents – implement an ssls primitive to start subscriptions from the rules We also aim to reimplement parts of the existing scenarios using the rule based approach.
Acknowledgement This work was supported by SOFIA (Smart Objects For Intelligent Applications) project and funded by Tekes (the Finnish Funding Agency for Technology and Innovation) and the European Commission, and DIEM (Devices and Interoperability Ecosystem) funded by Tekes.
References 1. Berners-Lee, T., Hendler, J., Lassila, O.: The semantic web. Scientific American (May 2001) 2. Boldyrev, S., Oliver, I., Honkola, J.: A mechanism for managing and distributing information and queries in a smart space environment. In: Proceedings of MDMD 2009 (May 2009) 3. Främling, K., Oliver, I., Honkola, J., Nyman, J.: Smart spaces for ubiquitously smart buildings. In: Proceedings of UBICOMM 2009 (October 2009) 4. Honkola, J., Laine, H., Brown, R., Oliver, I.: Cross-domain interoperability: A case study. In: Balandin, S., Moltchanov, D., Koucheryavy, Y. (eds.) ruSMART 2009. LNCS, vol. 5764, pp. 22–31. Springer, Heidelberg (2009) 5. Lassila, O.: Programming Semantic Web Applications: A Synthesis of Knowledge Representation and Semi-Structured Data. PhD thesis, Helsinki University of Technology (November 2007) 6. Niemelä, I., Simons, P.: Smodels – an implementation of the stable model and wellfounded semantics for normal logic programs. In: Fuhrbach, U., Dix, J., Nerode, A. (eds.) LPNMR 1997. LNCS, vol. 1265, pp. 420–429. Springer, Heidelberg (1997) 7. Network on terminal architecture (November 2008), http://www.notaworld.org 8. Openm3 demonstration release, http://sourceforge.net/projects/smart-m3/files/OpenM3.tar.gz/download 9. Web ontology language, http://www.w3.org/2004/OWL/ 10. Resource description framework, http://www.w3.org/RDF/ 11. Smirnov, A., Kashevnik, A., Shilov, N., Oliver, I., Balandin, S., Boldyrev, S.: Anonymous agent coordination in smart spaces: State-of-the-art. In: Balandin, S., Moltchanov, D., Koucheryavy, Y. (eds.) ruSMART 2009. LNCS, vol. 5764, pp. 42–51. Springer, Heidelberg (2009)
Integration of an Answer Set Engine to Smart-M3
101
12. W3c recommendation: Sparql query language for rdf, http://www.w3.org/TR/2008/REC-rdf-sparql-query-20080115 13. Wielemaker, J., Hildebrand, M., van Ossenbruggen, J.: Using Prolog as the fundament for applications on the semantic web. In: Heymans, S., Polleres, A., Ruckhaus, E., Pearse, D., Gupta, G. (eds.) Proceedings of the 2nd Workshop on Applicatiions of Logic Programming and to the web, Semantic Web and Semantic Web Services, Porto, Portugal. CEUR Workshop Proceedings, vol. 287, pp. 84–98. CEUR-WS.org (2007)
A Video Monitoring Model with a Distributed Camera System for the Smart Space Andrey L. Ronzhin, Maria Prischepa, and Alexey Karpov SPIIRAS, 39, 14th line, St. Petersburg, Russia {ronzhinal,prischepa,karpov}@iias.spb.su
Abstract. The developed model of video monitoring based on distributed camera system is intended for automation of registration of meeting participants. The problem of detecting position of participants simultaneously attended in the room and their faces is solved by joint use of wide-angle, omni-directional and PTZ cameras located on walls and ceiling of the room, as well as implementation of face detection technology for photographing the zones of possible occurrence of participants faces. The quality of photos was estimated by accuracy of pointing the PTZ camera and the diagonal value of a face in the captured image. The deviation of face in the frame relatively the center averaged 8% and the square of face was no less than 7% of the image. Also it was observed that the mean time of registration increases, when the number of participants increases and the level of illumination decreases. Further development of the model is aimed at the automation of capturing the main speaker, discussion, vote and other key phases of events. Keywords: Multi-camera tracking, pointing PTZ camera, face detection, meeting support technology, smart space.
1 Introduction Due to the rapid development of broadcast networks, advances in processing and transmitting multimedia information, creation of Internet applications for videoconferencing and distant education, the so-called systems of E-meeting and E-lecture become more popular in business, academic institutes and universities at organization of distributed events. Such systems allow us to save on transportation costs, to choose an individual way of learning and to provide convenient facilities for searching and accessing information. Technological advances in recording, analysis, searching and transmission of multimedia data are already used in several research systems for video conferencing. Below, we analyze the range of problems holding the development of remote learning and collaboration, and methods for their solutions implemented so far in research systems only. Distributed events organized via specialized web-applications are real alternative to traditional meetings and lectures, where participants interact "face to face." Development of multimedia technologies allows video conference systems not only recording and output of audio and video data, but they also use more sophisticated S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 102–110, 2010. © Springer-Verlag Berlin Heidelberg 2010
A Video Monitoring Model with a Distributed Camera System for the Smart Space
103
techniques, such as analysis, pattern recognition and structuring of multimedia data, that certainly enhances services for participants and leads to new ways of access to events in real-time and archive processing [1]. The most of the research, conducted in this area, was devoted to development of software and hardware for audio- and videoprocessing. At present, panoramic camera, tablet for handwritten notes, whiteboard, tools for multimedia presentations, technology of synchronization and integration of data and an analysis of behavior and ways of cooperation between the participants during the event are widely employed. The automatic analysis of audio-visual data of meetings or lectures is complicated by the fact that such events are usually held in large halls with lots of participants, who arbitrarily change positions of their body, head and gaze. To improve the capturing and tracking of many participants, arrays of microphones, panoramic cameras, intelligent cameras (PTZ - Pan / Tilt / Zoom) and distributed camera systems are used. In the system Cornell Lecture Browser [2], two video cameras with subsequent synchronization and integration of video streams are used. In the eClass, also known as Classroom 2000 [3], videos of lectures were combined with the handwritten notes on a whiteboard. The system AutoAuditorium [4] detects participants by the PTZcamera, as well as carries out an automatic selection of video from one of three cameras, installed in the room. In the system [5], it is proposed to use the spatial sound source localization to control the PTZ-cameras and to track speakers and listeners. Also a list of rules and recommendations for professional operators, assisting to select optimal positions of the cameras in the hall, is defined. In the system [6], eight PTZcameras are controlled by video stream analysis, sound source and data localization from ultrasonic motion sensors. In the system FlySpec [7], the PTZ and omnidirectional cameras, management of which is remotely carried out by several participants with the automatic control system adjusting the direction of PTZ-cameras, are applied. Application of the panoramic camera allows us to capture images of all the events taking place in the room and to find locations of each participant [8]. Motion sensors [9] and microphone arrays are used additionally to video monitoring, in order to detect positions of participants and the active speaker. Sound source localization with the microphone arrays is effective in small lecture or conference rooms only. To record audio signals in a large room, participants and speaker often use personal microphones [4] or apply a system of microphone arrays, distributed in the room [6]. Various approaches have been proposed to record presentation slides projected on the screen during the event. Some systems require presentation slides loaded in advance or special software installed on user's computer, which says the number of the current slide to the server. In papers, in order to capture and record the presentation slides, a separate video camera, directed to the projection screen, is used. Another approach is to automatically capture video data directly from the VGA output of the computer or the projector, and to save data in a separate thread [8]. Whiteboards and blackboards play important role in meetings and lectures for making handwritten notes using a special pen or a hand with the sensor surface [10]. In the paper [11], image from the board is captured by the PTZ-camera. The system of image capturing, presented in [12], automatically identifies most interesting areas of the board and scales them for a better representation of information. Automatic handwriting recognition is used in the system [13] for processing sketches made on whiteboards.
104
A.L. Ronzhin, M. Prischepa, and A. Karpov
2 The Video-Monitoring Model of Meeting Participants The given research is focused on solution of the following problems: (1) finding and tracking active speaker with PTZ-cameras; (2) analysis of human beings’ motion for gesture recognition and activity classification; (3) registration of event participants; (4) detection and identification of users’ faces; (5) detection of gaze direction to find an object of attention of participants. The efficiency of events and conferences is improved with the development of hardware for recording and output of multimedia data. At the same time, a new range of unresolved issues was identified; so, development of methods for searching, tracking and recognition of objects by means of multichannel processing still remains very important. While designing the smart meeting room, ergonomic aspects of use of multimedia equipment have been taken into account, as well as location of audio and video recorders has been chosen that which enables to capture many participants at once. Choosing the number of cameras, their location, resolution, viewing angles and other settings for the video monitoring system, coverage zone, the number of objects that require simultaneous monitoring, degree of details of analyzed objects, the level of illumination have to be taken into account. Figure 1 shows places of seats, multimedia equipment (TV set, Projector), five AXIS Internet-cameras (PTZ-camera Cam3, Cam5, wireless cameras Cam2, Cam4, camera with wide angle lens Cam1, installed on the ceiling in the center of the room),10 personal webcams Logitech AF Sphere, four groups of lighting. Three microphone arrays located in the center of the left and right walls and over the sensor plasma (touch screen) serve for sound sources localization and recording phrases of participants. Each array of microphones has T-shaped configuration [14]. The aim of this paper is description of the developed system for video monitoring; so, the microphones are not shown in figure. Analysis of model-algorithmic software for processing multi-channel audio streams is used at development of multimodal information kiosk and smart rooms [15]. The conference table with installed personal webcameras for placement of participants of small meetings (round tables) up to 10 people is located on the left side of the hall. The right side of the hall contains rows of seats, which can accommodate up to 32 participants, tracking of which is implemented by the distributed system of cameras and microphone arrays. Three non-overlapping areas were identified, which require non-stop video monitoring: (1) the main speaker zone, (2) zone of participants, sitting at the conference table, (3) zone of participants in seats. Video monitoring of all three zones is carried out with the camera Cam1 having the viewing angle of 140 degrees and the resolution of 2048x1536 pixels. The stationary cameras Cam2, Cam4 have the viewing angle of 74 degrees and the resolution of 1280x1024 pixels. Two cameras Cam3, Cam5 with viewing angles of 51.6 degrees and the resolution of 704x576 pixels, equipped with the functions of tilt, rotation and scaling make capturing of any point of the space in the smart room.
m3 Ca
C C am
C
C
C
Third group of light
Second group of light
5
7150мм
105
C
C
m4 Ca
A Video Monitoring Model with a Distributed Camera System for the Smart Space
Cam2
Fig. 1. Scheme of the smart room and positions of cameras
The camera Cam2 installed at the height of 2 meters on the opposite wall of the projection screen is used for recording audio-visual data of events. The camera Cam1 has the wide-angle lens and locates on the ceiling in the center of the room. It covers the entire space of the room and allows to determine coordinates of all the participants in the horizontal plane. The stationary camera Cam4 was installed on the left from the door and designed in such a way, in order to cover all the users on seats at once. PTZcamera Cam3 and camera Cam2 were installed near each other and work simultaneously. The analysis of frames from the camera Cam2 allows to determine position of an observed object and to generate a command for rotation of the camera Cam3 in needed direction. The PTZ-camera Cam5 was installed in the center of the left wall at the height of 2 meters from the floor level and serves to capture video-data of the active speaker. The developed multi-functional model carries out the video monitoring of the event and allows us to automate main modes, such as: registration of participants, taking pictures of the speaker, active participants in the room during the discussion and vote. Based on the key stages of the events, different modes of the multifunctional model have been developed. Table 1 describes main functions in three basic modes: observation, registration of participants, event support. There are 3 cases in the mode “Event support”. The first case is the “Speaker’s talk”, where the system tracks movements of the speaker analyzing changes in neighboring frames received from the camera Cam1. On the basis of the speaker coordinates in the horizontal plane, angles of rotation and zoom are calculated to control the camera Cam5. The mode "Discussion" begins at the end of the speaker’s talk. In this mode, the control system of the intelligent room is managed by the sound sources localization module and determines active participants in the seat zone and directs the
106
A.L. Ronzhin, M. Prischepa, and A. Karpov
camera Cam3 there. The camera Cam5 keeps tracking of the presenter during the given mode. In the mode "Vote", the camera Cam1 determines participants in the seat zone, and counts raised hands of participants of the event using the camera Cam4. At the same time, the camera Cam3 with a minimum scale factor records the process of voting. The camera Cam2 directed to the projection screen is used for recording of the event. Table 1. Camera’s functions in various modes of video monitoring Camera
Mode Observation
Cam1
Tracking changes in the entrance zone
Registration
Tracking of movements and detection of seated participants
Speaker’s talk Tracking of movements of speaker
Event support Discussion
Vote
Detection of seated participants
Detection of seated participants
Cam4
Detection of faces of seated participants
Identification of the active speakers
Calculation of votes
Cam3
Photographing of the participants
Recording of the discussion of active speakers
Recording of the voting process
Cam5 Cam2
Recording of an active speaker
Recording of an active speaker
Recording of the screen and the room
Recording of the screen and the room
Figure 2 shows the scheme of transitions from one mode to others, which are initiated by the operator with the help of the control system of the intelligent room. The system changes its mode to "Observation", if a moving object is found in the entrance zone, located in front of the entrance door. Also, the system performs tracking of user movements and monitoring of seats. The system changes its mode to "Registration", when one of the participants sits in the chair. The system changes its mode to "Event support" with the sub-mode “Speaker’s talk”, when all the participants of the event have been registered and the command on appearance of the first speaker has been received. When the presentation of the speaker has been completed, the system changes the mode to "Discussion". The system transmit to the mode “Speaker’s talk”, when the command on starting a new presentation has been received. The mode
A Video Monitoring Model with a Distributed Camera System for the Smart Space
107
Fig. 2. Scheme of mode transitions of the video monitoring model
“Vote” starts, when the system finds raised hands. The model goes to the sleep mode, when the system receives a command on the end of event and this mode works until starting of a new event. In the mode "Registration", three cameras are used for monitoring of each seated participant, so the algorithm can be divided into 3 phases. At the beginning of the first phase, the frame is captured by the camera Cam1, after which a cycle with the number of seats in the hall starts and a fragment from the frame corresponding to the concrete seat is extracted. Then, for each fragment colors distribution histogram is calculated. Decision on presence of a person in the chair is made depending on the value of correlation between histograms of the current fragment and of the original fragment, created for the given empty seat in advance. After processing all the seats in the room the frame is captured by the camera Cam4, in which the search of a face is performed. The zone of possible occurrence of a face increases by 60 pixels, if a face is not found during the processing of 30 frames and the second search is made. Then, the Cam3 is directed to each person, so that to make picture of his/her face with a large resolution. If a face is found, the control system receives the photo of the participant and the number of his/her chair. The model goes into the standby mode after processing of all the participants.
3 Experimental Results Series of experiments with different numbers of participants (1, 3, 5, 10) and four variations of illumination: (1) groups of light 1, 2, 3, 4, are turned on; (2) groups of light 1, 2, 4 are turned on; (3) groups of light 3, 4, are turned on; (4) group of light 4 is turned on, were made for testing the algorithm. The results were evaluated by two criteria: (1) the accuracy of the model, which is equal to the ratio of the total number of registered participants to the number of participants in the chair zone; (2) the average time of registration.
108
A.L. Ronzhin, M. Prischepa, and A. Karpov
The results of preliminary experiments show that the accuracy deteriorates and the average time of registration increases, when the number of participants increases and the level of illumination decreases. The model performance was higher with lighting options 1 and 3 that can be justified by the given location of groups of light; for example, when the projector for displaying presentations is used, the first two groups of light should be switched off for better visibility of slides. Two classes of problems affecting the accuracy of the algorithm of the registration have been revealed: (1) the system-independent errors such as personal hairstyles of participants, active movements, (2) technical limitations, such as the channel bandwidth transmitted by the video stream, as well as the technical characteristics of the PC, where the model is installed. Figure 3 shows an example of the model work in the mode "Registration", where (1), (2), (3) are frames taken from Cam1, Cam4, Cam3, respectively. Here the camera Cam1detects 6 participants in the zone of seats (one false object was detected as a participant). Seat numbers with participants were used for the analysis of the respective zones in the frame recorded by the camera Cam4. In this example, the frame analysis shows the presence of four faces in the areas assigned to these seats. The resulting list of seats controls the PTZ-camera Cam3, which is consistently directed in such a way, in order to photograph the face of each participant with a required quality. Several Frames are recorded and a face is searched in them, since the participants randomly change their positions. The frame is stored only after detection of an object with the dimensions that satisfy with the model of a face.
Fig. 3. Model work in the mode “Registration”
The quality of photos taken by the model in the mode "Registration" depends on the accuracy of the PTZ-camera Cam3 and can be estimated by two criteria: (1) precision of pointing the camera to the face, (2) the dimensions of the photos. The first test shows: how accurately were selected angles of rotation, and the second test is responsible for the correctness of calculation of the scaling factor. The deviation D between the center of the face and the center of the frame is calculated. The deviation is determined in percents to avoid the impact of changes in scale. The relative size R of face is calculated as the ratio of the diagonal of the face image to the diagonal of frame. In the case, if no face in the frame, the deviation is set to 100% and the relative size of the face is 0%. Relative and absolute squares of the face (S and A, respectively) were calculated in addition to the relative size of the face and the deviation. Table 2 shows the results of evaluation of photographing accuracy.
A Video Monitoring Model with a Distributed Camera System for the Smart Space
109
Table 2. Assessment of face detection accuracy of the model in the "Registration" mode R,% Min Max 27
53
D,%
S,%
A, Mpixel
Mean
Min
Max
Mean
Min
Max
Mean
Min
Max
Mean
38
0
23
8
7
29
14
0.03
0.12
0.06
These experiments show that the majority of errors in the camera pointing are connected with detection of fake face objects. As the result, the camera focuses not on a face, but on an object, which looks like a human being’s face. A minimum size of a face is taken into account for the face detection in order to overcome this limitation. Most photos from false targets have been identified after this modification of the algorithm. Another problem is motion of people during the photographing that leads to blurred photos. In most cases, recording a series of frames and subsequent filtration allow to get photos with the optimal quality. For camera status monitoring, all the information is sent to the control system of the intelligent room, in which the dialog window displays registered objects, including participants seated at the conference table and in the zone of seats, as well as moving objects. Photos of the registered participants are displayed in the dialog window in accordance with the occupied seats.
4 Conclusion Tracking of moving objects is difficult and important task, solution of which allows automating support of meetings, teleconferences and other events. In the developed model of video monitoring, the technologies for detecting and tracking the participants are implemented and investigated. The developed multi-functional system of Internet cameras is able to work in three modes: “Registration”, “Observation” and “Event support”. Currently, the mode is manually selected by the operator, as well as the analysis of events, factors, equipment states and other situational information, which determines the transition to a particular stage and time of the switching on the cameras, is made. All the modes of operation have been tested in the course of lectures and meetings in the smart room of SPIIRAS. A particular attention was paid to the mode “Registration”. The influence of lighting level, the number of participants and their positions on the accuracy and speed of face searching and the subsequent photographing has been analyzed. At the next stage of the development of the model, other work modes will be tested and a method for automatic selection of the modes of cameras will be offered, as well as mathematical and software tools will be analyzed, and a system for automatic counting of the votes based on recognition of gestures will be investigated. Acknowledgments. This work is supported by The Russian Program “Research and Research-Human Resources for Innovating Russia in 2009-2013” (contract П2360), RFBR (projects 08-08-00128-а, 08-07-90002-СТ_а) and Nokia.
110
A.L. Ronzhin, M. Prischepa, and A. Karpov
References 1. Erol, B., Li, Y.: An overview of technologies for e-meeting and e-lecture. In: IEEE International Conference on Multimedia and Expo., pp. 6–12 (2005) 2. Mukhopadhyay, S., Smith, B.: Passive capture and structuring of lectures. ACM Multimedia, 477–487 (1999) 3. Brotherton, J.A., Bhalodia, J.R., Abowd, G.D.: Automated capture, integration, and visualization of multiple media streams. IEEE Multimedia (1998) 4. Bianchi, M.: AutoAuditorium: A fully automatic, multicamera system to televise auditorium presentations. In: Joint DARPA/NIST Smart Spaces Tech. Workshop (1998) 5. Rui, Y., Gupta, A., Grudin, J., He, L.: Automating lecture capture and broadcast: Technology and videography. ACM Multimedia Systems Journal (2004) 6. Kameda, Y., Nishiguchi, S., Minoh, M.: CARMUL: Concurrent automatic recording for multimedia lecture. In: ICME (2003) 7. Liu, Q., Kimber, D., Foote, J., Wylcox, L., Boreczky, J.: FLYSPEC: A multi-user video camera system with hybrid human and automatic control. ACM Multimedia (2002) 8. Lee, D.S., Erol, B., Graham, J., Hull, J.J., Murata, N.: Portable meeting recorder. ACM Multimedia, 493–502 (2002) 9. Sun, X., Foote, J., Kimber, D., Manjunath, B.: Panoramic video capturing and compressed domain virtual camera control. ACM Multimedia, 229–238 (2001) 10. Friedland, G., Knipping, L., Rojas, R., Tapia, E.: Teaching with an intelligent electronic chalkboard. In: ACM Workshop on Effective Telepresence (2004) 11. Saund, E.: Image mosaicing and a diagrammatic user interface for an office whiteboard scanner. Technical Report, Xerox Palo Alto Research Center (1999) 12. Onishi, M., Izumi, M., Fukunaga, K.: Production of video image by computer controlled camera operation based on distribution of spatiotemporal mutual information. In: ICPR, pp. 102–105 (2000) 13. Wienecke, M., Fink, G., Sagerer, G.: Towards automatic video-based whiteboard reading. In: ICDAR (2003) 14. Maurizio, O., Piergiorgio, S., Alessio, B., Luca, C.: Speaker Localization in CHIL Lectures: Evaluation Criteria and Results. In: Renals, S., Bengio, S. (eds.) MLMI 2005. LNCS, vol. 3869, pp. 476–487. Springer, Heidelberg (2006) 15. Ronzhin, A.L., Budkov, V.Y.: Multimodal Interaction with Intelligent Meeting Room Facilities from Inside and Outside. In: Balandin, S., Moltchanov, D., Koucheryavy, Y. (eds.) ruSMART 2009. LNCS, vol. 5764, pp. 77–88. Springer, Heidelberg (2009)
Physical Approach in Smart Homes A Proposition and a Prototype Michele Dominici, Giulio Zecca, Fr´ed´eric Weis, and Michel Banˆ atre INRIA, Rennes-Bretagne Atlantique, Campus Universitaire de Beaulieu 35042 Rennes Cedex, France {Michele.Dominici,Giulio.Zecca,Frederic.Weis,Michel.Banatre}@inria.fr http://www.irisa.fr/
Abstract. The state-of-the-art solutions in the Smart Home domain rely on a logical approach, based on a heavy instrumentation of the environment and on complex techniques that analyze very large amounts of data, collected by sensing devices disseminated in the environment. These aspects negatively influence the delivery of transparent and effective user services. This paper proposes the adoption of a physical approach, in which the information and the computations are carried and executed directly by augmented physical entities, allowing small, meaningful exchanges of data that need less complicated processing. The result is a seamless delivery of useful, transparent and effective user services. The paper describes this approach in detail, analyzes some drawbacks of the state-of-the-art Smart Homes, shows how the physical approach can address those issues and illustrates a prototype that demonstrates the feasibility of the proposed solution. Keywords: Smart Homes; Physical approach; Ubiquitous Computing; Augmented objects; Home automation.
1
Introduction
The 20th century saw a dramatic revolution in domestic technology, a revolution that culminated at the close of the century with the emergence of the concept of Smart Home. A Smart Home is a residence equipped with computing and information technology devices conceived to collaborate in order to anticipate and respond to the needs of the occupants, working to promote their comfort, convenience, security and entertainment while preserving their natural interaction with the environment [1]. When talking about natural interaction, one of the most precious resources is user attention: during their activities, users should be assisted invisibly, reducing interruptions and explicit interactions with the system as much as possible.
The authors would like to thank EDF that has funded this research.
S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 111–122, 2010. c Springer-Verlag Berlin Heidelberg 2010
112
M. Dominici et al.
A possible way to achieve the goals of this scenario is the application of the human-computer interaction paradigm called Ubiquitous Computing. The aim of this paradigm is to seamlessly and invisibly integrate in the physical environment a multitude of digital devices that provide services to the users without asking for their attention [2]. To this end, Ubiquitous Computing applications are typically context-aware. It has already been highlighted in [3] that the notion of context is not unambiguous and depends on the application domain. Generally speaking, it can be defined as the execution environment of applications, represented as a collection of information regarding the digital, the physical and the user-related environments. When applications are aware of the context, they can easily provide much more useful services, because they “penetrate” their environment and recognize the situations. For example, if a PDA application can sense that a user is currently driving his car, it can automatically switch from visual to audio output [4]. The idea of using the Ubiquitous Computing paradigm in the Smart Home domain is not new. However, the state-of-the-art solutions only partially adhere to its principles. Often the adopted approach consists in a heavy deployment of sensor nodes, which continuously send a lot of data to a central elaboration unit, in charge of the difficult task of extrapolating meaningful information using complex techniques. This is what we call a logical approach. In this paper, we propose instead the adoption of a physical approach, in which the information is spread in the environment, carried by the entities themselves, and the elaboration is directly executed by these entities “inside” the physical world. This allows performing meaningful exchanges of data that will thereafter need a less complicate processing compared to the current solutions. The result is a Smart Home that can, in an easier and better way, integrate the context in its functioning and thus seamlessly deliver more useful and effective user services. Our contribution aims at implementing the physical approach in a domestic environment, showing a solution for improving both comfort and energy savings. The goal of our proposal is twofold. From the one side, it aims at showing the open issues and possibilities in this domain of the ubiquitous computing. From the other side, we present the implementation of a prototype, which intends to be a first step towards the distribution of the information in the environment following a physical approach. Our work is divided as follows. In Section 2 we describe the physical and the logical approaches to the Ubiquitous Computing, explaining how the proposed physical approach can address some open issues of the logical one. In Section 3 we introduce some examples of the logical approach in the Smart Home domain, showing its limits. In Section 4 we describe in detail how the physical approach can be advantageously used in the Smart Home domain, we talk about the rationale that brought us to such kind of solution and we present a prototype that we developed, together with the technologies adopted to implement it. Finally, in Section 5 we draw the conclusions of our study and then lay the foundations for our future research.
Physical Approach in Smart Homes
2
113
Logical vs. Physical Approach in Ubiquitous Computing
As we introduced in the previous Section, we can identify two main approaches to the Ubiquitous Computing: the logical and the physical one. In the logical approach, the participating entities are well identified and the elaboration of the collected data is centralized, decoupling the representation and the elaboration from the physical world. In the physical approach, the information is carried by the entities themselves, and the computation is directly executed by them “inside” the physical world. As an example of logical approach in the Smart Home domain, we can choose the monitoring of the heating conditions in a room. Consider a group of sensors that frequently send surveys about the temperature (see Fig. 1.a), and compare that solution to the corresponding physical one, made of an augmented heater that can publish sensitive information about its status (goal temperature, consumption, heating mode, etc.) to other devices in its proximity (see Fig. 1.b). The logical approach relies on a heavy deployment of sensors in the environment, which continuously collect a lot of information that is sent to a central elaboration unit to extrapolate meaningful data. Following a physical approach, information is spread in the environment, distributed closer to the real entities that compose the system, and the objects can carry different kinds and granularity of information [5]. With a physical approach, sensitive information is brought directly in the objects and devices composing the environment. This allows having meaningful exchanges of data that will thereafter need a less complicate computation compared to a complete feedback from the sensors in the environment. What makes this approach doable is the large number of common objects than can be modified to provide augmented information without changing the way a user employs it. The above-cited example of the heater shows how easier it is to exploit meaningful information provided by the entity itself, instead of having to parse raw data in order to extract a context representation (see Fig. 1.b).
3
Current Approach in the Smart Home Domain
In this section, we identify three main structural and functional components of a Smart Home and present some state-of-the-art prototypes from the point of view of these dimensions. The goal is to characterize the logical approach in the Smart Home scenario and show its limits. 3.1
Characterization of Smart Home Solutions
We can identify three main components of a Smart Home system: Architecture – To reach the goal of assisting and helping inhabitants, Smart Homes are instrumented with the necessary technological equipments. These can
114
M. Dominici et al.
Fig. 1. Logical (a) and physical (b) approach
include communication infrastructures, processing units, sensing and actuating devices (often equipped with computation and wireless communication capabilities), “augmented” appliances, etc. Sensing devices are used to capture context information from the environment and actuating devices are in charge of reflecting on the environment the decisions of the application logic or to provide notifications to the users. Sensing capabilities can include user detection, localization [6, 7] and identification [8], user movements and activity recognition [9–11], as well as monitoring of the physical condition of the house (temperature, light, humidity, etc.). Actuators include lights, heating, ventilation, and air conditioning systems, alarm triggering mechanisms, but also displays, voice synthesizers and other user output devices. Augmented (or smart ) devices are everyday appliances equipped with computational capabilities and communication interfaces. We will refer to these aspects as the architecture of prototypes of Smart Homes. The typical architecture of systems adopting the logical approach is characterized by a heavy instrumentation of the environment (in terms of number of deployed sensing devices), of the users (in terms of imposed constraints and equipments, provoked distractions and privacy invasion) and by the presence of a single, central processing unit. Context Acquisition – The systems have to collect data from the sensing devices in order to use them, in a later phase, to gain some knowledge about the context. The choices that can be made to support this task mostly concern the sensor query algorithms, including the raw sensor data preprocessing, filtering and in-network aggregation techniques [12]. We will refer to these aspects of the
Physical Approach in Smart Homes
115
systems as the context acquisition choices. Generally, systems adopting the logical approach continuously collect all the available raw sensor readings without preprocessing them, delegating their elaboration to the central processing unit. Context Representation and Exploitation - This functional block of Smart Home systems is in charge of promoting the acquired sensing device data to exploitable context information, in order to learn about behavior, choices and preferences of the users and possibly to predict the context changes. The complexity of this task directly depends on the choices adopted in the previous dimensions. Possible approaches consist in building and reasoning on model-based context representations [13, 14] or in directly analyzing raw sensor readings [9–11, 15]. Systems that adopt the logical approach generally analyze the collected raw sensor readings using machine learning techniques with some use of probability, like Bayesian rules, Markov chains, pattern recognition, adaptive control and so on. 3.2
Critical Analysis of State-of-the-Art Smart Homes
We now introduce some prototypes of Smart Homes that adopt the logical approach and analyze them from the point of view of the proposed characterization, highlighting the emerging drawbacks. Starting from a large literature, we selected three projects that, in our opinion, represent good examples that show the principles of the logical approach and its limits. They in fact share common aspects that are typical of the logical approach: i) they adopt an architecture that includes infrared motion detectors, used to localize inhabitants, and a single central unit; ii) to acquire context, the central unit of each prototype continuously collects raw sensor readings from the whole house; iii) no structured representation of the context is built and its exploitation is made applying machine learning and statistical techniques directly to the raw sensor readings. The PROSAFE project [16, 17] proposes a prototype system capable of monitoring elderly or disabled people and of triggering an alarm when a dangerous situation is detected. The approach is based on thresholds, used for calculating and analyzing user habits. The testing of the prototype showed a high frequency of false alarms, the most impacting cause being the difficulty to calculate trustworthy thresholds and to build a truthfully representative model of user behavior, which can be in practice very unpredictable. The ERGDOM project [18, 19] proposes a solution that manages the house heating system in order to create a comfortable environment for the inhabitants while reducing energy consumption and user intervention. The system predicts user occupation and calculates the comfort temperature analyzing the history of detections and user choices. Tests of the ERGDOM prototype showed that, due to technological limits of the sensors, the system fails to correctly detect user presence in many situations. The Adaptive House [20, 21] aims to automatically manage the lighting, heating and ventilation systems in an energy-efficient way. The core of the system is the capability of determining and predicting the user occupation of each area of the house. Tests performed on the prototype showed that, due to the complexity
116
M. Dominici et al.
of the sensor reading analysis, prediction errors and unmotivated actions of the system are frequent and cause user discomfort and frustration. Analyzing the results of the proposed prototypes, we understand that the logical approach, based on the analysis of continuously collected raw sensor readings, shows important drawbacks in terms of complexity of instrumentation, high cost, low reliability and usability. In the following section, we show how a physical approach can deal with these limitations.
4
Physical Approach in Smart Homes: Benefits and Feasibility
In this section, we propose to adopt the physical approach to the Smart Home domain in order to overcome the highlighted issues. To this end, we present the numerous benefits of this approach and show its feasibility illustrating a prototype. 4.1
Physical Approach in a Smart Home Scenario
In a classical approach, all the intelligence of the Smart Home is condensed in a single entity that takes care of every device in the house. The sensors distributed in the environment have to send back all the gathered data to the central entity, that takes all the burden of parsing the sensitive information and infer the policies to be implemented. Our vision is instead focused on a physical approach, where every device carries a part of the global intelligence: every single entity can analyze the part of information sensitive for its goal, derive useful data, and communicate meaningful information to the other devices. Considering a home scenario, we discover that many of the daily living appliances and objects can be augmented with computational, communication or sensing capabilities without much effort. This results in a new potential for application development and deployment, without an increase in the perceived “complexity” of the environment from the inhabitant point of view. Appliances that can be augmented with communication and computational capabilities in a typical home scenario include, among others, electric heaters, lights and white goods (ovens, refrigerators, washing machines, dishwashers, etc.). Even parts of the house like doors (see Sect. 4.2), floors [7, 8] or electrical systems [6] can be augmented with sensing capabilities. Leveraging these smart objects, we can move the complexity of the system from a central unit (where it is localized in the prototypes showed in Sect. 3.2) to several, distributed devices. The application logic is thus performed directly by the entities of the real world. This approach has the following important characteristics and advantages: 1. There is no more need for an exhaustive collection of information coming from sensors disseminated in the whole house, but a local processing can be performed by the smart appliances. This allows using lighter and less expensive communication infrastructures. Furthermore, this results in a decentralization of the system, which allows users to interact directly with the augmented appliances, reducing the need for a central management unit.
Physical Approach in Smart Homes
117
2. The fact that information is collected locally and comes directly from the physical objects enhances its value. A new importance can be given to every communication and new criteria can be adopted to filter the events: information acquires a new, physical meaning. Therefore, the computation, the application logic and the entire system “enter” inside the physical world, becoming a part of it. The processing of sensor readings and events becomes easier, more immediate and there is no more need of complex machine learning and statistical analysis techniques. 3. The environment and inhabitants are instrumented in a lighter way but, exploiting the augmented objects, the system is still able to retrieve the needed context information. The system is therefore characterized by an easier and less costly deployment and by a higher degree of acceptance by the inhabitants. The design choices involved in the adoption of the physical approach mostly refer to the instrumentation and depend on the desired user services and scenarios. The selection of the appliances to instrument and in which way and the choices of the equipments used to sense the environment and to recognize user activities have to consider the possible user scenarios and situations. The next sections present a prototype that we realized following the principles of the physical approach and discuss the issues encountered during its design and implementation. The prototype has been realized in collaboration with EDF (Electricit´e De France) group, the leading electricity producer in France. 4.2
Analysis of the Constraints
The realized prototype had to face the problem of the management of the heating system in a domestic environment; a few issues arose when we evaluated the requirements. First of all, thanks to some of our previous works in the ubiquitous computing domain [22–24], we could state that a normal user is not keen on being instrumented for accomplishing everyday tasks. Furthermore, having to make explicit actions or movements to trigger the response of the system would distract the user from acting as naturally as possible. Planning the interaction of the user with the environment had thus to consider these constraints to build a usable system where the transition from the real to the virtual world is quite seamless. Having in mind these criteria, we moved on searching a way to bring some of the intelligence closer to the physical world. The goal was obtaining a home automation system that could autonomously manage the main consumer of energy in the domestic environment: the heating system. Indeed, a clever management of the heaters can bring to significant energy saving just by optimizing the timers to switch them on and off. To obtain such a goal, the devices must interact one with the other, so we needed communication capabilities. In order to exploit the spatial configuration and relative positions of the devices, we relied on a light version of a tuple communication engine, SPREAD [3]. This allows any device to communicate ordered information to other entities within its communication
118
M. Dominici et al.
range (or bubble) and thus publish useful content in its vicinity. This is a first, basic step to bring capabilities directly into the objects in the environment: as we explained in the above section 4.1, there are a lot of commonly used objects that can be augmented to bring meaningful information that are directly accessible. Once the possibility of information exchange was in place, we needed the objects to provide useful data to describe the environment and the current context. To manage the heating system with a good granularity, we wanted to know the number of users in a room, in order to associate an absence timer that will gradually lower the heating as the room remains empty. A timer has been coupled with each heater, so that the temperature does not change rapidly, but gracefully. This choice has a double overall impact: on the one hand, it avoids continuously switching heaters on and off as a user goes in and out of a room several times, which brings to a energy waste; on the other hand, it increases the perceived comfort, since the room temperature will not instantly decrease just because the user leaves it for a few minutes. In order to fulfill the global goal, different technologies have been analyzed, but we were looking for simple and cost-effective solutions. For this reason we finally adopted a quite novel approach based, on the contrary, on a well-known technology: Infrared (IR) sensors. This approach allowed us to augment a simple and common object, the door, by hiding IR sensors in the frame, which is another step for accomplishing what we are proposing, i.e., exploiting objects in the environment to provide meaningful information. Once provided the infrastructure, we had to take care of the real core of the system, made by the heaters. A way to implement a physical approach to analyze the context was by providing heaters augmented with a little intelligence, needed both to compute the status and to communicate with other neighbors. We equipped each heater with the capability of knowing its location, the ongoing consumption, the temperature and some configuration parameters. Thus, differently from the classical Home Automation systems, part of the intelligence and decision mechanism of our system is executed by the distributed devices. In a “pure” physical approach, the augmented heaters would receive the user presence information directly from the IR sensors. Because of time and resource constraints, however, we decided to use an IR sensor technology that is not equipped with wireless communication interface or computation capabilities. Thus, we introduced an additional device that we call box, which controls the heaters and receives, interprets and publishes the signals from the infrared sensors. This choice doesn’t influence the validity of our prototype and should be seen as a limit that we will overtake in our future work. Nevertheless, the box can perform important tasks that will be kept in our future prototypes: first of all, it can publish in the environment useful information about, e.g., electricity price or meteorological conditions, that it can retrieve from the Internet, acting as a gateway; second, it is suited to our demonstration purposes because it allows having a coherent view of the number of users in each room of the habitat (see Fig. 2). We used it to provide a graphical interface to ease the visual comprehension of the system at runtime, where each room is shown together with
Physical Approach in Smart Homes
119
the number of occupants and the heating mode of the corresponding heater. In order to represent in a simple way the actual heating mode, we chose a color for each heating level (from colder to hotter: blue, green, orange and red). Therefore, at every instant, a user can visually figure out the temperature range just by looking at the interface (see Fig. 2). Furthermore, every heater has a LED in front of it to show the same color code, so as to ease the user in intuitively accessing heating information distributed in the environment.
Fig. 2. Overview of the prototype
4.3
Prototyping
Implementation. Having in mind the principles illustrated in the previous Sections, we decided to implement a prototype to show which capabilities of the physical approach can be put into practice. The configuration of the system was thus put in place as follows: in the environment we have three rooms, and to enter a room a user has to go through the door, which has two couples of infrared (IR) sensors to detect the movement. One couple is in fact adequate to detect someone crossing the IR flow, but not enough to understand the direction of the user. So, if for example the system detects that the IR couple A has been crossed
120
M. Dominici et al.
before the IR couple B, this means that a user is going in the direction from A to B (see Fig. 2). The heater receives then just a tiny communication about the state change, and applies the agreed policy for changing the heating mode, computing locally the necessary information. An additional feature allows the user to retrieve information on his Personal Digital Assistant (PDA) just by entering the communication bubble of a heater, leaving the possibility of changing the heating mode at will. The devices distributed in the environment are: 1. Infrared Sensors – the movement sensors, directly connected to the box, to detect when a user passes through a door, and in which direction. 2. Heaters – the actuators. In our configuration, each room has a single heater, but this is not a constraint, since the wireless communication capabilities allow a good fine-tuning of their behavior. 3. PDA – the portable device used for having general information, statistics, and to remotely modify the behavior of the heater. In the next future, a common Smartphone could play this role. 4. Box – the central entity that collects readings from IR sensors, sends control messages to heaters and logs all the activity. For the evolution of our solution this component could disappear or just act as a gateway to the Internet. It should be noticed that the real implementation followed some practical constraints of resources and time, but it has to be seen as the first step towards the realization of our vision. Hardware. The choice of the hardware has been made according to our needs, so the box is simulated by a common Laptop Computer, each heater is a mini-pc Norhtec Microclient Jr, and the infrared sensors are Cedes ELS-300 coupled with an acquisition module LabJack U12. In addition to that, an optional functionality is offered by an HP iPAQ 214 Enterprise PDA. The PDA can be used to obtain information of a single heater in proximity. This is possible by combining the power of the 802.11 Wi-Fi communication with the spatial hints provided by RFID tags coupled to each heater.
5
Conclusions and Open Issues
In this paper we proposed a novel way of using a physical approach to develop a Smart Home. As a first step, we analyzed the existing solutions, and we realized that most of them were based on a logical approach. This method relies on lots of sensors that send raw data to a central entity, which in turn takes care of digitally representing the environment. In this case the physical world is not directly coupled with its representation. The physical approach, instead, exploits devices that carry their own part of information, so that meaningful communication occurs among entities and local computation is performed whenever a relevant event is detected. Moreover, we exploit physical properties of the environment and physical proximity between entities to enrich communications and events with an additional value, which simplifies information processing.
Physical Approach in Smart Homes
121
We developed a first prototype using simple, cost-effective devices and augmented everyday objects distributed in the environment. This led to achieve natural, context-sensitive and implicit interaction with the inhabitants, which in our proposition are not instrumented with wearable sensors or tags and don’t have to face the privacy concerns of video cameras or microphones as in other solutions. Our work lays the foundations for further enhancements of the implementation, so as to strengthen the validity of our vision. The physical approach demonstrated to be not only feasible, but also suitable for the Home Automation domain, validating our research and motivating us to continue delving in the same direction. We will explore new techniques and technologies that allow exploiting the contextual information implicit in domestic interactions and events. We are particularly interested in modeling and recognizing inhabitant activities, which can allow realizing transparent and assistive user services.
References 1. Harper, R.: Inside the smart home. Springer, London (2003) 2. Weiser, M.: The computer for the 21st century. SIGMOBILE Mob. Comput. Commun. Rev. 3(3), 3–11 (1999) 3. Couderc, P., Banˆ atre, M.: SPREADing the web. In: Conti, M., Giordano, S., Gregori, E., Olariu, S. (eds.) PWC 2003. LNCS, vol. 2775, pp. 375–384. Springer, Heidelberg (2003) 4. Schiele, G., Handte, M., Becker, C.: Good manners for pervasive computing–an approach based on the ambient calculus. In: Proc. Fifth Annual IEEE International Conference on Pervasive Computing and Communications Workshops PerCom Workshops ’07, March 19-23, pp. 585–588 (2007) 5. Lee, H., Choi, J.S., Elmasri, R.: A classification and modeling of the quality of contextual information in smart spaces. In: PERCOM ’09: Proceedings of the 2009 IEEE International Conference on Pervasive Computing and Communications, pp. 1–5. IEEE Computer Society, Washington (2009) 6. Patel, S.N., Truong, K.N., Abowd, G.D.: PowerLine positioning: A practical subroom-level indoor location system for domestic use. In: Dourish, P., Friday, A. (eds.) UbiComp 2006. LNCS, vol. 4206, pp. 441–458. Springer, Heidelberg (2006) 7. Valtonen, M., Maentausta, J., Vanhala, J.: Tiletrack: Capacitive human tracking using floor tiles. In: Proc. IEEE International Conference on Pervasive Computing and Communications PerCom 2009, March 9-13, pp. 1–10 (2009) 8. Orr, R.J., Abowd, G.D.: The smart floor: a mechanism for natural user identification and tracking. In: CHI ’00: CHI ’00 extended abstracts on Human factors in computing systems, pp. 275–276. ACM, New York (2000) 9. Gu, T., Wu, Z., Tao, X., Pung, H.K., Lu, J.: epSICAR: An Emerging Patterns based approach to sequential, interleaved and Concurrent Activity Recognition. In: Proc. IEEE International Conference on Pervasive Computing and Communications PerCom 2009, March 9-13, pp. 1–9 (2009) 10. Gu, T., Wu, Z., Wang, L., Tao, X., Lu, J.: Mining emerging patterns for recognizing activities of multiple users in pervasive computing. In: 6th Annual International Mobile and Ubiquitous Systems: Networking & Services, MobiQuitous, MobiQuitous ’09, July 2009, pp. 1–10 (2009)
122
M. Dominici et al.
11. Zhang, Z.: Ubiquitous human motion capture using wearable micro-sensors. In: Proc. IEEE International Conference on Pervasive Computing and Communications PerCom 2009, March 9-13, pp. 1–2 (2009) 12. Yao, Y., Gehrke, J.: The cougar approach to in-network query processing in sensor networks. SIGMOD Rec. 31(3), 9–18 (2002) 13. Boytsov, A., Zaslavsky, A., Synnes, K.: Extending context spaces theory by predicting run-time context. In: Balandin, S., Moltchanov, D., Koucheryavy, Y. (eds.) NEW2AN ’09 and ruSMART ’09. LNCS, vol. 5764, pp. 8–21. Springer, Heidelberg (2009) 14. Weis, T., Becker, C., Br¨ andle, A.: Towards a programming paradigm for pervasive applications based on the ambient calculus. In: International Workshop on Combining Theory and Systems Building in Pervasive Computing, part of PERVASIVE, Citeseer (2006) 15. R¨ omer, K., Mattern, F.: Event-based systems for detecting real-world states with sensor networks: a critical analysis. In: Proceedings of the 2004 Intelligent Sensors, Sensor Networks and Information Processing Conference, December 2004, pp. 389– 395 (2004) 16. Campo, E., Chan, M.: Detecting abnormal behaviour by real-time monitoring of patients. In: Proc. of the AAAI-02 Workshop Automation as Caregiver, pp. 8–12 (2002) 17. Chan, M., Hariton, C., Ringeard, P., Campo, E.: Smart house automation system for the elderly and the disabled. In: IEEE International Conference on Systems, Man and Cybernetics, Intelligent Systems for the 21st Century, October 1995, vol. 2, pp. 1586–1589 (1995) ´ Chan, M., Est`eve, D.: L’apprentissage des modes de vie: une base 18. Campo, E., indispensable au d´eveloppement d’un habitat “intelligent”. Annals of Telecommunications 58(5), 850–865 (2003) 19. Bonhomme, S.: M´ethodologie et outils pour la conception d’un habitat intelligent. PhD thesis, Institut National Polytechnique de Toulouse (2008) 20. Mozer, M.C.: Lessons from an adaptive home. In: Cook, D.J., Das, S.K. (eds.) Smart Environments, pp. 271–294. John Wiley & Sons, Inc., Chichester (2004) 21. Mozer, M.: The neural network house: An environment that adapts to its inhabitants. In: Proceedings of the American Association for Artificial Intelligence Spring Symposium on Intelligent Environments, Citeseer, pp. 110–114 (1998) 22. Le Bourdon, X., Couderc, P., Banˆ atre, M.: Spontaneous hotspots: Sharing contextdependant resources using bluetooth. In: International Conference on Autonomic and Autonomous Systems (ICAS’06) (July 2006) 23. Couderc, P., Becus, M., Banˆ atre, M.: Ubi-board: A smart information diffusion system. In: Balandin, S., Moltchanov, D., Koucheryavy, Y. (eds.) NEW2AN 2008. LNCS, vol. 5174, pp. 318–329. Springer, Heidelberg (2008) 24. Couderc, P., Banˆ atre, M.: Ubi-check: a pervasive integrity checking system. In: Balandin, S., Moltchanov, D., Koucheryavy, Y. (eds.) ruSMART 2009. LNCS, vol. 5764, pp. 89–96. Springer, Heidelberg (2009)
SMEO: A Platform for Smart Classrooms with Enhanced Information Access and Operations Automation Akshey Jawa1, Sudip Datta2 , Sujeeth Nanda1 , Vishal Garg3 , Vasudeva Varma4 , Suresh Chande5 , and Murali Krishna Punaganti Venkata5 1
Centre for IT in Building Science, IIIT Hyderabad, Hyderabad, India {aksheyjawa,sujeeth}@research.iiit.ac.in 2 Search and Information Extraction Lab, IIIT Hyderabad, Hyderabad, India [email protected] 3 Centre for IT in Building Science, IIIT Hyderabad, Hyderabad, India [email protected] 4 Search and Information Extraction Lab, IIIT Hyderabad, Hyderabad, India [email protected] 5 Nokia Devices R&D Helsinki, Finland {suresh.chande,murali-krishna.punaganti}@nokia.com
Abstract. This paper explores the area of creating smart spaces using mobile Internet devices to develop intelligent classrooms. We propose a suite of applications that leverage the recent progress made in the domains of mobile computers and information access, resulting in a richer classroom experience where knowledge is dispensed with greater efficiency while also making it possible to access it efficiently from the Internet as well as peers. We attempt to achieve this by introducing novel means of classroom teaching and management and an intelligent information access system while harnessing the computational capabilities of mobile Internet devices. Though the current work is still in progress, this paper elaborates on our attempts in reducing the gap between technological progress in various domains and the existing pedagogy. Keywords: Smart Spaces, Intelligent Classrooms, Teaching Methodologies, Information Access.
1
Introduction
The last couple of years have seen advent of a number of novel and powerful mobile computers which have revolutionized the mobile market. A couple of years back mobile devices had low processing power, limited multimedia functionalities, poor web connectivity, and restricted memory and storage capacities, S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 123–134, 2010. c Springer-Verlag Berlin Heidelberg 2010
124
A. Jawa et al.
leaving a wide gap between the capabilities of a mobile device and that of a desktop PC. In recent times, handy mobile Internet devices with higher processing powers and availability of a large array of features has largely bridged this gap for a number of functionalities, opening new vistas for application of these capabilities. At the same time, rapid growth of Internet has resulted in an unprecedented increase of content on the web. Availability of large amounts of information on the web resulted in a pressing need for development of ‘Information Access’ systems that would assist users with an information need in identifying relevant information and producing it in a concise form. This led to research and development in various modes of Information Access such as Information Retrieval, Text Categorization, Text Summarization, among others. Over the years, these generic systems have matured considerably leading to opportunities for their application in new scenarios and systems. While there has been remarkable growth in technology, the classroom pedagogy has been largely oblivious of these technological gains, with the instructors still employing boards and presentations while the students take notes on paper notebooks. In the current teaching methodology, a students learning is constrained by the knowledge of the instructor while the opportunities for learning from peers remain largely untapped. Also, the vast pool of knowledge that exists on the web is not effectively consumed because it is not available on the go, coupled with issues of retrieving the needed information in a precise and swift manner. In this work we attempt to address the stated issues by introducing smart mobile Internet devices in a classroom environment where efficient classroom teaching and management, and intelligent information access can be provided using the 3Cs of the device namely, context, communication and computation. We next elaborate on the 3Cs of the device, claiming that their presence can be utilized to harness the technological growth in enhancing learning. The context of classroom environment helps us in knowing that only documents that are academic in nature should constitute the repository. Moreover, knowledge about the topic to be discussed in next class can be taken as a factor to determine the temporal importance and relevance of a document. In fact, the context of which user makes a query is used as a parameter to customize the choice and ordering of results. Communication capabilities of the device are used extensively for the project. To cite a few examples, it is used to connect devices over remote framebuffer protocol using VNC. Similarly, course content sharing both in real time as well as through archive happens over the network. From the computation perspective, the device’s touchscreen capability allows the instructor to annotate over the slides during the presentation, students to view slides, make notes and pass their queries vocally to the instructor, making it particularly useful when they are remotely connected. In future, with improved Optical Character Recognition (OCR) capabilities, annotations will be converted into text, thus making it searchable.
SMEO: A Platform for Smart Classrooms
125
Recent years have seen a number of attempts to technologize the classroom pedagogy. Some of these systems, like the closed source Blackboard1 system, have been commercially used in niche classroom management market, providing functionalities for course and content management system. Classroom presenter [1], [2] is an open source research oriented system largely focusing on distance learning. It also provides functionalities for lecture archiving, including voice and annotations. One drawback of this system is that it does not work on mobile devices. Ubiquitous [3], is a system that attempts to get over this drawback by using platform independent web-based front end while still depending on classroom presenter in the back end. DyKnow [4], another closed source commercial product, in addition to classroom teaching functionalities, also provides the instructor with ability to monitor student devices. Online conferencing systems like Dimdim2 are also occasionally used in classrooms providing functionalities like collaborative document viewing and annotations with voice streaming. In this paper we propose SMEO, a system that in addition to classroom teaching and management using mobile devices also provides functionalities for smart information access. While, the classroom teaching and management module provides tools to stream and archive lecture, and to manage attendance, classroom facilities, queries, and quizzes, the most unique contribution of this work is integration of smart information access techniques which to the best of our knowledge is the first such attempt. Focusing on contextual personalized search, summarization and collaborative learning, it aims at providing improved means of learning in a classroom environment. While the current work is still under progress, we present the inspiration for this work along with it current status, besides stating the goals of this work. The remainder of this paper is organized as follows: in Section 2 we discuss the architectural setup that we used. We follow this with a broad outline of the proposed platform in Section 3. Section 4 elaborates our ideas on improving classroom teaching and management using the mobile computer devices while Section 5 expands on how intelligent information access techniques could enhance learning. Finally, in Section 6 we state the conclusions drawn from this work along with suggestions for future improvements.
2
Architecture
SMEO requires the following infrastructure to be present in the classroom: 1. 2. 3. 4. 5. 6. 7. 1 2
A Linux server for handling the classroom teaching and management module A Linux server for running the information access module A projector High speed Wi-Fi Internet connection A mobile computer for the instructor A mobile computer for each student
http://www.blackboard.com http://www.dimdim.com
126
A. Jawa et al.
Fig. 1. Architectural Setup
As shown in Fig. 1 the classroom teaching and management Linux server is directly connected to the projector, so the slides which the instructor wants to project on to the projector are kept on this server. But the instructor views, controls and annotates the slides from the mobile computer which is connected to this server through VNC which shows the remote computer’s display on the local computer which is the mobile computer in this case. All the communication between the instructor and student mobile computers, whether it is student queries to the instructor or conducting of quiz by the instructor, happens through the classroom teaching and management server. The information access module, on the other hand is responsible for running all search related jobs, such as crawling, indexing, maintenance of profiles, among others. This should be accessible to the devices and connected to the Internet. Both the servers are internally connected because sharing of information among them, is required at various steps, such as extending the operations of search and summarization to the course content.
3
The Application
SMEO is a platform for creating smart spaces in a classroom environment providing a suite of applications on high performance mobile Internet devices that can broadly be categorized into - Classroom teaching and management: focusing on smarter delivery of lectures and Intelligent information access: focusing on smarter means to access information. We attempt to enhance classroom learning by providing relevant applications from both these class of applications through a simple interface to the instructor and the students. In the following sections we elaborate on the methodology and work-flow of each of these applications. Because of the large number of tools and limited space we show the screenshots of only few of these applications. The set of applications and the underlying functionalities to which an individual has access, varies according to their privileges, depending on whether the
SMEO: A Platform for Smart Classrooms
Fig. 2. Instructor’s Interface of Applications
127
Fig. 3. Manage Lecture Display
individual accessing the application is an instructor or a student. The start interface for the instructor is shown in Fig. 2. Student interface, though similar, is not shown because of paucity of space.
4
Classroom Teaching and Management
Once SMEO authenticates a user through a pre-registered username and password, the classroom teaching and management module provides interface for all interactions between the user and the application. There exist separate interfaces for instructors and students and corresponding to their roles and privileges a set of applications are displayed. While we discuss most applications provided by SMEO (from instructor’s perspective as well as student’s perspective) in this section, we devote a separate section for the information access functionalities because of the uniqueness of its applicability in a classroom environment. 4.1
Lecture Delivery/Attendance
This module allows the instructor to use the mobile computer to navigate the slides and annotate over them. The lecture is streamed to the students in real time and is also archived so that students can download it for offline use. Students can also make private annotations which can serve as their notes. Before the teacher starts the lecture, he needs to upload the presentation to the classroom management server. The system ensures that the instructor has filled meta-fields of title and keywords, which are required by the information access module, before uploading. Fig. 3 shows the screen for managing lectures. The instructor can either add or remove a lecture, publish (making it accessible to students) or unpublish it, or request retrieval and indexing of documents related to the current lecture. As soon as lecture is published, crawling and indexing of documents related to the topics to be covered, is started. Thus, an instructor is required to publish the lecture content, a couple of hours before the lecture to allow crawling and indexing of relevant documents, ahead of the lecture, enabling the availability of updated information access applications. When the teacher wants to take a lecture, he connects to the server using VNC (Virtual Network Computing) system. Next, controlling the server through VNC,
128
A. Jawa et al.
Fig. 4. Lecture streaming
instructor opens the presentation on the server with FreOffice (koffice port for Maemo). The original version of FreOffice did not have the capability to annotate but the extended version on which we are working, allows annotations on slides. The transmission of server’s display, annotations and audio over the network is explained in Fig. 4. Through VNC, when the instructor annotates the slides by scribbling over them using the stylus, each annotation stroke is stored as a separate file. The directory in which the annotation stroke files are created is kept in sync with a directory on student side using rsync. Also, instructor’s voice is streamed to student devices, besides being recorded for archival purposes. On the server side, an XML file is maintained, which stores the names of the annotation stroke files and the time stamps of the annotation stroke with the associated slide number. When the lecture finishes, this XML file and the annotation stroke files are pushed to the archive so that students or the instructor can download them for offline use. When working in offline mode, our extended FreOffice parses the XML containing the time stamps and the annotation stroke file names, and displays them over the slides in a time sequence. Students are also allowed to make their own annotations which can be shared among peers, thus allowing community sharing of notes. For reducing clutter on the displayed presentation, students can switch on/off one or more of the annotation layers. If a student only wants to view the instructor’s annotations with the slides, he can simply connect to the VNC server running on the server machine in ‘view only mode’. This can be done anytime during the course of a lecture. This allows a student to observe activities on the display of the server (which is also displayed on the projector screen) by running VNC server in ‘view-only’ mode. Note: The tool described in this Section can also be used by the instructor to correct assignments by making annotations or by recording vocal comments,
SMEO: A Platform for Smart Classrooms
129
which are sent to students once the correction is done. This makes the assignment evaluation more interactive and swift. 4.2
Intelligent Information Access
This is a web based suite of tools for efficiently accessing contextual information available on the web along with that generated in the course. It has tools for contextual personalized search, summarization and collaborative learning, enabling access to relevant information in a well presented format. While it provides an interface for quick search and accessing other ‘information access’ services to students, the instructor’s interface is supplemented with options to specify indexing process, corresponding ‘seed topics’, besides other functionalities. Services provided by the information access suite are further elaborated in Section 5. 4.3
Classroom Question Answering
This application provides an efficient question answering mechanism for the classroom. During the lecture, students can send requests to ask queries. These requests are queued on the server. The instructor can look at the set of queued queries and approve acceptance of one request at a time. When a request is approved, a message “Ask your question!” is flashed on the referred student’s device. When the question is asked, the voice is forwarded to all the students devices which are part of that course. This enables the discussion in the class to be audible, making it suitable for large classes to be handled well, as many times the queries as well as the responses are very useful learning experience for the listeners. Since we have the voice channel open between several devices, it makes the overall session audible to all the students connected to the lecture. 4.4
Design/Attempt Quiz
This module helps the instructor to create a password protected quiz and share it with the students. It also allows the student to open the quiz, answer it using a user friendly quiz form and view the grades once it is graded. An instructor can create a quiz using the ‘quiz creator’, either on laptop or a mobile computer. It creates an encrypted file containing the questions and the answers in an XML format, which is uploaded on the server and a start time for the quiz is announced. The encryption key is known only to the instructor. The instructor then uploads this file on to the server and announces a start time for the quiz. Students download the quiz file at their convenience and at the start time, the key is made public. This key needs to be fed to the quiz client for accessing the quiz. The quiz client decrypts the file using the key, and creates a user friendly form to allow the students to answer the quiz and submit the answers to the server. It allows the students to mark certain questions for review,
130
A. Jawa et al.
filter questions and search questions. Another thing to note is that this quiz XML follows Moodle quiz XML schema so it can also be used with Moodle [5]. At the finishing of the quiz duration the grades are calculated by the client, sent to the server for archiving and displayed to the student on his mobile computer. 4.5
Classroom Feedback
One unique feature of our project is the feedback system. It allows the instructor to have real-time feedback on how many students are understanding the presentation. This feedback is integrated with our extended FreOffice. It allows the student to rate any particular slide for its difficulty. This gives the instructor a real-time feedback if students are finding some topic difficult to comprehend. Students also have an option to give feedback for the whole lecture. The difficulty rating is kept anonymous, but for the lecture feedback student has a choice to reveal his identity. 4.6
Facility Control
This module enhances classroom comfort by controlling classroom facilities, like fans, lights, A/Cs, projectors, window films, and dimmable lights, automatically or by minimal manual intervention. We are working on a building automation gateway that connects with any building automation backends which can work with known building automation protocols such as LonTalk, or bacnet, and can connect to various facilities through relays, Wi-Fi, Zigbee [6] or IR. The gateway, which is an embedded server, stores the coordinates of available facilities and different mode settings for the classroom in an XML file which the instructor can download. Using the XML file, the instructor side application constructs a map of the classroom, showing the facilities and their on/off status. Clicking on any of the buttons in the map switches the appliance on or off and also changes the color of the button. The instructor can also select one of the various modes, “Presentation” mode, “All lights off” mode, etc, to switch on/off a number of appliances at a single click. The gateway also has an access control mechanism which does not allow anybody other than the instructor to control the facilities. For making the classroom energy efficient, the gateway dynamically controls the operating parameters based on the current needs and also uses feed forward and feedback controls. The devices help in getting a feedback in terms of number of people present and their comfort requirements which helps the system to optimize the energy consumption while still maintaining the comfort requirements. Methods such as demand based fresh air, enthalpy based control, etc are also used. 4.7
Remote Classroom Presence
Another interesting feature of the system is that the students or the instructors can attend or give a lecture from any corner of the world. They just need a
SMEO: A Platform for Smart Classrooms
131
working Internet connection on their mobile computers which can connect them to the classroom over a Virtual Private Network. This makes all the above mentioned tools accessible to them. This feature can also allow the subject matter experts to give lectures remotely or even take a whole course remotely. Similarly, students from different universities can be given access to attend the lectures remotely. 4.8
Classroom Attendance
This is a simple application that allows the instructor to know the number of students connected to the server, either remotely or locally.
5
Intelligent Information Access
The most unique aspect of this project is the incorporation of ‘Intelligent Information Access’ in a classroom environment and its integration with classroom management modules. By ‘Intelligent Information Access’ we imply the ability to retrieve, extract and access the information as needed in the context of a classroom. We provide the stated capability through a wide-range of information access techniques, primarily focused on contextual search, personalization and summarization technologies while also exploring the domain of collaborative learning. We next elaborate on each of these techniques along with a discussion on their adaptation to the classroom environment. 5.1
Corpus Building and Contextual Search
By contextual search we imply that the system is aware that it is catering to queries given in a classroom environment and hence has to produce results that are academic in nature. Moreover, the system also takes into consideration the courses currently being studied by a student while producing search results for a user query. In fact, it attempts to provide results that are contextually more relevant to the topics covered in recent classes. To achieve this we used a twopronged approach of selectively constructing a corpus of relevant documents and its deep-indexing which is complemented by personalization (explained in section 5.2) of results. This module also builds the corpus by indexing relevant documents retrieved from the web along with course content stored in classroom management folder, making it searchable. The first step to contextual search is corpus building. It is depicted in Fig. 5 and works in the following manner: as mentioned in Section 4.1, with each lecture presentation, the instructor must fill the meta-fields of title and keywords. These keywords serve as the ‘seed topics’ for retrieving other related topics. These topics are given to Wikipedia Miner [7], a toolkit for navigating and making use of the structure and content of Wikipedia, to retrieve semantically related topics. A combination of ‘seed’ and related topics, serving as queries, are submitted to generic search engines and top-hits are crawled. These documents are then
132
A. Jawa et al.
Fig. 5. Contextual Search: Flow Diagram
deeply indexed for classroom consumption. By deep-indexing we imply that the index contains much richer information than a conventional inverted index, such as named entities, other semantic entities and meta-information like the course and lecture associated with it. This index can now be searched and the search returns much more contextually relevant results. 5.2
Personalization
Personalization aims to sort search results based on the specific needs and interests of individuals, instead of producing same results to anyone giving an identical query. Personalization of search tools adds an extra step to the search process. Thus, the query is first matched against the corpus of documents to retrieve relevant results. This is followed by matching results with user profiles to sort the results according to user preferences. The profile of a user contains explicitly gathered information such as the content of courses done in the past and those that are currently being pursued along with implicitly gathered dynamic information such as search history consisting of queries and the corresponding hits. This information is used by the system to customize the search results so as to produce more relevant results for a user. We also attempt at extending personalization to a group level because individuals with similar profiles might benefit from the search history of each other. Thus we also attempt at maintaining group profiles and customizing results for users with similar profiles at a group level, as well. 5.3
Summarization
Document summarization is defined as an automatic procedure aimed at extraction of information from multiple text documents. It is the process of condensing text information to its most essential facts. Thus, a well composed and coherent summary is a solution for information overload. In the current work, while we do not make claims about improving the document summarization algorithms, we worked on employing existing summarization systems in a smart way. While we used [8] in this work, any other high precision generic multi document summarizer can be substituted as a replacement to our summarizer. Besides providing an interface for conventional multi-document summarization we also provided two novel manifestations of text summarizers. In the first of these, a user expresses information need in the form of a query for which the contextual search engine displays results. The user can seek a summary of any subset of these
SMEO: A Platform for Smart Classrooms
133
results by selecting check-boxes provided next to the results and clicking on the summarize button. In the second case a user expresses information need in the form of a set of questions, and the system produces a single text as the summarized version of a single or multiple documents containing the relevant information. That is, given a user’s information need the system identifies a set of relevant documents from the corpus and further creates, from the document set, a summary which answers the expressed information need. 5.4
Collaborative Learning
In this module we explored group learning aspects wherein knowledge acquired by one student could be utilized by the student community using the system. In the current work we introduced some simple yet effective features for collaborative learning. For example, we took explicit (in the form of link recommendation) and implicit (in the form of page hits for a given query) feedback from the search module to improve the results. We also collected statistics such as the most queried terms and the most viewed documents for each course, over different time periods, to make recommendations. We also had a feature for collaborative bookmarking and their tagging. Making this information searchable came handy while looking for links pertaining to topics identified by tags. We also attempted to make the annotations made by students, searchable. This would have helped students in getting better insights to the text mentioned in a slide utilizing the comprehension of their peers. Unfortunately, this was hampered by the limited OCR capabilities of the mobile computers that we used in our work. Future devices, with improved OCR capabilities should make it feasible to convert annotations into text which can easily be made searchable, thereby greatly enhancing the scope of collaborative learning. We believe that we only touched the surface of group learning and there is considerable scope of enhanced learning in this domain.
6
Conclusion and Future Work
We believe that the system which we have described is yet another step in the direction of digitizing the classrooms. Since the whole system is open source it can be extended to support the future needs of the classrooms. There still remain a number of issues and challenges to overcome in the attempt to digitize classrooms. While technical advances will happen and newer functionalities and features will be introduced, probably the greatest challenge is the introduction and acceptance of such means of teaching and learning in the classroom setup. But, we should remember that it was not too long ago that the community was apprehensive about the success of teaching through presentation slides but now their use is widespread. While presentation slides only made classroom teaching more structured and orderly, development of classrooms on our lines might influence and enhance learning more drastically. We believe that further experiments and evaluative studies are required in this direction to ascertain their influence.
134
A. Jawa et al.
In the current work we proposed a prototype for improving and enhancing classroom teaching and learning, there still remain some critical issues that need to be worked on, before the success of current work can be ensured. As the next step, we need to work on issues such as ensuring confidentiality and reliability of the system while identifying alternative means of working, in cases of device failures. We also need to employ the system in an actual classroom environment to determine the resource requirements of the system and to resolve issues of scalability, should it arise. As the mobile devices become more powerful and technologies like OCR help replace pen and paper with digital pen (stylus) and digit paper (touch screen) we hope that the classrooms of tomorrow, in addition to being user friendly, environmental friendly and energy efficient, will be fully digital, remotely accessible and will have efficient techniques for retrieving and presenting relevant information.
References 1. Anderson, R., Anderson, R., Simon, B., Wolfman, S.A., VanDeGrift, T., Yasuhara, K.: Experiences with a tablet pc based lecture presentation system in computer science courses. In: SIGCSE ’04: Proceedings of the 35th SIGCSE technical symposium on Computer science education, pp. 56–60. ACM, New York (2004) 2. Anderson, R.J., Anderson, R.E., Linnell, N., Pervaiz, M., Saif, U., Videon, F.: Collaborative technologies in international distance education. In: CSCWD, pp. 522– 527 (2009) 3. Wilkerson, M., Griswold, W.G., Simon, B.: Ubiquitous presenter: increasing student access and control in a digital lecturing environment. In: SIGCSE ’05: Proceedings of the 36th SIGCSE technical symposium on Computer science education, pp. 116– 120. ACM, New York (2005) 4. Dave, B.: Pushing forty(courses per semester):pen-computing and dyknow tools at depauw. In: The Impact of Tablet PCs and Pen-based Technology on Education, pp. 31–39. Purdue University Press (2006) 5. Dougiamas, M., Taylor, P.: Moodle: using learning communities to create an open source course management system. In: Proceedings of World Conference on Educational Multimedia, Hypermedia and Telecommunications, AACE 2003, vol. (1), pp. 171–178 (2003) 6. Fang, A., Xu, X., Yang, W., Zhang, L.: The Realization of Intelligent Home by ZigBee Wireless Network Technology. In: PACCS, pp. 81–84. IEEE Computer Society, Los Alamitos (2009) 7. Milne, D., Witten, I.: An open-source toolkit for mining wikipedia (2009) 8. Bysani, P., Bharat, V., Varma, V.: Modeling novelty and feature combination using support vector regression for update summarization. In: 7th International Conference on Natural Language Processing, NLP Association of India (2009)
Creative Approach to the Design and Prototyping of Experimental Smart Spaces, Case Studies from the Interactive Environments Minor Tomasz Jaskiewicz1, Walter A. Aprile2, and Aadjan van der Helm2 1
Faculty of Architecture, Delft University of Technology Julianalaan 134, 2628 BL, Delft, The Netherlands +31 15 2785954 [email protected] http://www.hyperbody.nl 2 Faculty of Industrial Design Engineering, Delft University of Technology Landbergstraat 15,2628 CE, Delft, The Netherlands +31 15 2784966 [email protected], [email protected] http://studiolab.io.tudelft.nl
Abstract. This paper attempts to challenge the established practice of design and engineering of smart environments in two ways. Its first premise is that smart spaces should be formed by systems that comprise not only home or office appliances, but also embedded building component agents. The second premise of this paper is a consequent call for an interdisciplinary approach to creation of smart spaces. Experimental undergraduate course is used to provide a set of case studies to illustrate benefits and threats of such approach, as well as the relevance of the integration of iterative prototyping already in the earliest phases of design processes. Keywords: Context-aware systems, interactive architecture, interaction design, swarm modularity, prototyping.
1 Introduction 1.1 Smart Buildings The sister notions of smart homes, smart buildings or more generally; smart spaces or smart environments have become synonymous to the concept of "a physical world that is richly and invisibly interwoven with sensors, actuators, displays, and computational elements, embedded seamlessly in the everyday objects of our lives, and connected through a continuous network"[1]. The common justification for much of the research in this domain, as well as for numerous commercial projects in the field of home automation is the technological facilitation of everyday chores of typical users of such environments. Consequently, a “smart home” can be defined as “a residence equipped with computing and information technologies which anticipates and responds to the needs of the occupants, working to promote their comfort, convenience, S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 135–147, 2010. © Springer-Verlag Berlin Heidelberg 2010
136
T. Jaskiewicz, W.A. Aprile, and A. van der Helm
security and entertainment through the management of technology within the home and connections to the world beyond”[2]. In larger and non-residential buildings, building energy efficiency, security, as well as in many cases also building flexibility become main drives, whereas user comfort maintains its relevance, but is not paramount. Overall, it is commonly acknowledged that “the essence of the smart building is comprised of advanced and integrated systems for building automation, life safety and telecommunications systems. (…) smart buildings are integrating these systems from a physical and logical perspective.” [3]. Definitions given to this point do not fully justify the use of the term “smart”. It is commonly acknowledged that users should be able to interact with building systems in “an intelligent and unobtrusive way” and in order to achieve this kind of interaction “these environments should be aware of the needs of people, customizing requirements and forecasting behaviours” [4]. Achieving this is the goal of the domain of ambient intelligence (AmI), which provides solutions for achieving the said “smartness”, often through application of multi-agent, adaptive computational models. There are many clichés that can be commonly encountered around the domain of automated/smart buildings. These can be illustrated by a quote from the popular publication “Smart Homes for Dummies”; “Your smart home can seep into all aspects of your life. It helps you to choose day-to-day tasks that can take up so much time, such as opening the draperies, dimming the lights, and flipping on the Weather Channel to see whether the kids have a snow day.” [5]. The fallacy in this example is the assumption that an activity of dimming the lights or changing channels on television is indeed a notable burden to home inhabitants. Typically, solutions attempting to automate such trivial tasks tend to be over-complex, relatively costly and can ultimately create more annoyance than actual benefit to the users. Clearly, the real drive behind many projects, including do-it-yourself smart homes hinted by “Smart Homes for Dummies” is their technological “coolness”, rather than real daily-life benefits for their users. This paper attempts to challenge the established practice of design and engineering of smart environments in two ways. Its first premise is that smart spaces should be formed by systems that comprise not only home or office appliances, but also embedded building component agents. It is common to neglect architectural building components as potential smart embedded agents of building systems (with the exception of few unique experimental projects such as “The Media House”[6]). Such approach is not only expected to deliver unprecedented range of sensing and actuating possibilities to enhance smart building systems. It also opens new doors between the domains of embedded systems and architectural design. The second premise of this paper is a consequent call for an interdisciplinary approach to creation of smart spaces. It is clear to us that in order to design and engineer successful smart environments it is necessary to integrate knowledge of different disciplines in order to address not only technological, but also cultural, social, structural and aesthetical aspects of such systems that are all inherently interdependent on each other. 1.2 Designing Buildings as Systems Considering buildings to be dynamically performing entities, engaging multiple users and external factors in interactive exchange of information means that architecture has
Creative Approach to the Design and Prototyping of Experimental Smart Spaces
137
to be treated as a system. Thinking of architecture as a system inevitably opens the issue of drawing border, that’s to say defining where the system ends. Contemporary design of complex entities brings in the concept of systems being made up of hierarchies and graphs of interacting smaller and bigger systems. Defining the edges and the reach of the system depends entirely on the designer’s purpose: there are no “natural” borders, since what could be outside of a system from an electrical engineer’s point of view may very well be a key constituent from the point of view of an economist. The systemic way of dealing with architecture and architectural design implies taking the approach of treating architectural constructs not as finite singularities, but as multidimensional multiplicities. These multiplicities or “systems of systems” are the field of inquiry of systems theory and cybernetics (the study of regulatory systems). These fields have much to give to architecture. Traditionally, architects are limited to providing only a very limited number of variants of their designs for each project, with no more than few scenarios of how it could change over time. Creating buildings as systems means delivering wide and flexible ranges of design solutions depending on multiple parameters such as environmental conditions or the development of socio-spatial ecologies. It also means accepting the transitory nature of a building, its site and its pattern of use: it is a way of increasing the flexibility and the future survivability of the chosen architectural solution. One may be tempted to create a building system from a constrained set of logical or physical elements and a mesh of formal relations between them. However, the intricacy of problems that architecture has to deal with makes that simplification unlikely to succeed, as only a very limited amount of design factors can be accounted for in this way. Therefore, architecture has to be seen as a complex system - a system composed of a very high number of interconnected parts. Such parts can be nested (sets of parts may constitute higher order parts). What is also important to note here is that such complex systems may exhibit properties (including behavior) not evident from the properties of its individual parts. Architectural systems, particularly when their users are brought into the picture, are prime candidates for phenomena of “emergence”1, in which very complex behavior materializes out of very simple rules. We can also expect “strange loops” in buildings, a phenomenon where an abstract look crosses levels of abstraction as in an Escher drawing. For instance, in a building the lowest level of architectural detail (a molding, a handle) can influence sharply emotions and development of the building users. Conversely, the moods, beliefs and behaviors of inhabitants can destroy or modify even the best built apartment block. 1.3 Problem There are no established methodologies for creative design of architectural structures as complex interactive systems, however many lessons can be learned from the domains of human-computer interaction and interaction design [7], [8], [9], [10], [11]. 1
For a history of the fortune of the concept, see Corning, P. A. (2002). “The re-emergence of emergence: A venerable concept in search of a theory”. Complexity, 7(6), 18-30.
138
T. Jaskiewicz, W.A. Aprile, and A. van der Helm
Numerous relevant projects exist that explore the overlap of art, design and technology by means of creation of complexly interactive spatial installations, such as Philip Beesley’s “Hylozoic Soil” or Usman Haque’s “Open Burble”, typically developed for art-technology festivals, exhibitions and other public events. However, in such projects emphasis is put on creativity and rarely on direct practical applicability of proposed solutions. These projects are being developed following a subjective artistic vision or concept. On the other hand, typical engineering projects involved in creation of “smart spaces” are limited to technological facilitation of generic user activities, without consideration to the larger context of cultural or social problems that may be of significant relevance to the ultimate success of these projects. What’s more, typically “smart spaces” augment existing building spaces with technology, rather than being inherently integrated into building structures. In this way they are not having an active, conscious role in creation of resulting architectural qualities. A new approach is needed to merge these two trends, promote and encourage a creative attitude to design and engineering of “smart spaces”. Such an approach requires integration of knowledge and skills from disparate fields, including but not limited to; human-computer interaction (HCI), interaction design (IxD), architectural design, industrial design, embedded systems and structural engineering. A novel strategy should facilitate out-of-the-box design of “smart spaces” with emphasis on both; inventive problem posing and their creative solving using state-of-the-art technology.
2 Case Study Project At the Delft University of Technology, a “minor” is a six-month project that occupies groups of students in the last semester of their BA. The university encourages the creation of minors that include students and staff from more than one faculty. In the particular case of the Interactive Environments minor, students came from Architecture, Industrial Design and Engineering, while the teaching staff was from Architecture (research group Hyperbody2) and Industrial Design (ID-StudioLab3). It has been coordinated, co-organized, and co-taught by the authors. The main purpose of the programme was to create an experimental framework where interdisciplinary researchers, practitioners and students could be brought together to work on the ideas of embedding interaction in architecture. Rather than working on these ideas on a purely theoretical level, the goal was to design and build in full-scale an operational, spatial interactive environment prototype. Without neglecting conceptual validity and development, we decided to insist on the concept of “prototyping an environment”, as a way to bring as soon as possible into the design process as much reality as possible, a very important practice when dealing with speculative forms and new and uncertain 2
Hyperbody is a research group at the Faculty of Architecture at the Delft University of Technology directed by prof. ir. Kas Oosterhuis. The goals set for the group’s research are to explore techniques and methods for designing and building of non-standard, virtual and interactive architectures. Cutting edge techniques and methods are taught and applied by researchers and students.” http://www.hyperbody.nl 3 “The ID StudioLab is a group of designers, researchers, and students in the department of Industrial Design […] The StudioLab aims at integrating multidisciplinary knowledge on user, technology, and the product usage context.” http://studiolab.io.tudelft.nl
Creative Approach to the Design and Prototyping of Experimental Smart Spaces
139
technologies [12]. This setup has become an ultimate test field for verifying the applicability of various design methods for design and creation of architectural interactive systems. 2.1 Minor Setup, Brief and Design Process The minor has been a semester long activity, divided in two parts. In the first two months students have been engaged in various skill- and knowledge building assignments, while teachers have been closely monitoring the students, as well as exchanging knowledge and design approaches. Throughout the whole semester, five Delft teachers4 have been continuously involved in the project; their backgrounds included architecture, industrial design, computer science, interaction design, new media and digital music. In addition to the regular faculty, during the course many other specialists were invited as lecturers, workshop teachers and consultants5. The brief given to the students was “the lounge space”: a building or a part of a building where people interact casually and informally, listen to music, eat, drink and relax. In the first part of the semester students were engaged in a series of short design and prototype assignments where they could build up their skills and experiment on simple interactive objects for specific functional or experiential purposes. Gradually, the scale of their design was shifted from individual objects to networks of objects interacting with each other and with their users. In parallel to these assignments, students were also conceptually designing an interactive lounge environment, based on the ideas explored in their quick prototypes. The rationale behind this course organization was, on one hand to allow informed and playful exploration of a variety of concepts, while achieving situated learning of technological and technical abilities in a designerly context (i.e. not technology driven). The first half of the semester ended with the delivery by each of the three student groups of a general design for an interactive lounge installation. During the second half of the semester, the three groups were helped by the teaching staff to realize their design visions as small pavilion structures. As we have mentioned, students arrived to the minor with very diverse backgrounds. Among 21 students, one third were students of architecture, one third of industrial design and engineering and the remaining ones were studying at faculties including aerospace engineering, computer science, applied physics and mechanical engineering. This mix of experiences allowed (or even mandated) a process of creative rethinking of the design approach. One of the early issues was the lack of compatibility between very directed, waterfall type engineering and scientific development processes and more iterative, loop-oriented approaches typical of designers and 4
Main studio teachers were: Walter Aprile, Aadjan van der Helm, MarkDavid Hosale, Tomasz Jaskiewicz, Dieter Vandoren. 5 Responsible professors and guest critics of the course are: prof. Kas Oosterhuis and prof. David Keyson. Guest consultants and workshop teachers include: Ruairi Glynn(interactivearchitecture.org), Jerome Decock (lab[au]), Denis Oudendijk(Refunc), Jan Korbes(Refunc), Dan Overholt, Daan Roosegaarde(Studio Roosegaarde), Marco Verde, Kees Baardolf, Rob Luxen, guest lecturers include: prof. Tetsuo Tomiyama, Alisa Andrasek, Axel Killian, Philippe Rahm, Christian Derickx.
140
T. Jaskiewicz, W.A. Aprile, and A. van der Helm
architects. Just like the groups had to work out their social structure and process, a common language of interactive architecture had to emerge from the process, to make collaboration possible. It was empirically proven very early in the process that the typical architectural design approach is not suitable for an interactive design assignment. Even though the function of the space that students had to create has been defined as a “lounge”, the interaction requirements made it impossible to design fixed pavilion forms that would allow for maintaining a continuous reciprocal interaction between users and the pavilion. As an alternative process, the students have proceeded by defining lists of user activities that their pavilions should accommodate. Following that, lists of specific spatial affordances were created. To help with achieving design coherence, each group defined a concept that would in an abstract way guide the experience that each installation was trying to provide for their users. These mottos, later on in the process put aside, were “parallel universe”, “artificial nature” and “immersive ecology”.
Fig. 1. Students engaged in building a “distributed ecology” of interacting robotic agents during workshop with Ruairi Glynn
A big change could be clearly observed throughout the skill-building workshops in the way students were thinking and talking about their projects. In the beginning of the course their descriptions and ideas about their design’s behaviour were rather naively approaching stated problems, even the most technologically demanding ones were not going beyond the reactive manner of operation that could be entirely described using a series of if... then... statements. Gradually the students have gotten to understand the systemic nature of their designs. An important trigger for this understanding was a three day workshop with Ruairi Glynn6, where the students in sub-groups had to design small, light-sensitive robotic “creatures” and build a “performative ecology” out of all robots combined together (see Figure 1). The horizons of the students became broader, and their thoughts more complex, after a group visit to the Ars Electronica exhibition. This provided a series of very important common references of classic interactive pieces and a useful snapshot of the state of the art. While of course a common background can be acquired also from a textbook, a visit to an event could prove capable of forming much stronger memories – not 6
Ruairi Glynn is a lecturer at the Bartlett School of Architecture and Central Saint Martin college in London, he runs the online blog interactivearchitecture.org.
Creative Approach to the Design and Prototyping of Experimental Smart Spaces
141
to mention the fact that interactive pieces, obviously, are made to be interacted with, not so much read about. Gradually the descriptions of projects became more oriented towards explaining the experiences of users in their space and attempting to define those experiences through a multitude of localized interactions between users and the designed installation components, among the components and, what’s important, also among the users. In this way all designs have drifted towards becoming ecologies in which both users and installation components are actors. The step in which student projects have shifted from top-down and centralized ideas of interaction to the understanding of their projects as complex, adaptive ecologies has been in all three cases a noticeable breakthrough. The profoundness of the considered interactions and resulting formal complexity of projects has quickly increased and the projects presented at the midterm review were very satisfactory. 2.2 Case 1 - Odyssey The project of the group of the students7 who named themselves the “Odyssey” team, envisioned a setup where the space of the installation has a clearly differentiated outside and inside character, creating a surreal feeling of an immersive, continuous space on the inside and a crude, mechanical form on the outside of the pavilion (see Figure 2). The behaviour of the pavilion is organized by the concept of virtual waves emitted by people entering the space of the pavilion. These waves would be received by the kinetically actuated structure of the installation, the distributed ambient lighting elements and 40 small actuators embedded in the floor of the space. The centrally placed, large sitting cushion connected to the ceiling of the pavilion would act as a heart of the system, collecting signals from all dynamic installation components and based and translating their
Fig. 2. Design, building and user testing of the “Odyssey” group’s prototype 7
Students in the Odyssey group are: Govert Flint, Lieke Kraan, Bob Groeneveld, Jesse Timmermans, Merijn Pen, Thomas van Oekelen, Melisa Garza Vales.
142
T. Jaskiewicz, W.A. Aprile, and A. van der Helm
behaviour into continuously generated sound, while occasionally creating an energy explosion and sending out its own wave. It became empirically verified upon the completion of the project that as envisioned, this behaviour leads to the perception of the space as intelligent and that through repeated interactions users can learn how to meaningfully engage in a dialogue with the Odyssey installation. 2.3 Case 2 – GEN The project of the second group8, called “GEN”, includes a static canopy structure, kinetically actuated vertical spatial separators that resemble leaves and a complex pneumatic floor “landscape” (see Figure 3). The group intended to create an installation that would display a non-repetitive, yet cyclical behaviour in which the space would constantly try to create conditions that it perceives as most favourable by its occupants. By tracking the faces of people inside and outside the installation area, the installation maintains a continuous record of occupant activity. Components of the installations that are in use (e.g. being sat on) are seen as successful and gain virtual “kudos”. In the process they can trade kudos among each other to overrule the behaviour of their neighbours. The kudo economy is a way to optimize the system in a computationally light and fairly robust way. The installation also included a small amount of random perturbation factors, to make sure that new behavioural patterns can spontaneously evolve from the process.
Fig. 3. Design, building and the final prototype of the “GEN” group
2.4 Case 3 – sCAPE The third project, for which the students9 chose the name “sCAPE” aims at creating a pavilion based on a fully distributed system. “LEDwork” computation and display nodes can be freely connected to each other to create a three dimensional spatial network that is supported by and integrated with the pavilion (see Figure 4). Each element has its own simple behaviour and can locally exchange information with other elements it is physically connected to. The basic elements are light-emitting ones, free to be moved around. All other parts of the installations are mutations of those. The 8
Students in the GEN group are: Altynay Imanbekova, Joris Hoogeboom, Ben van Wijk, Hanneke Hoogewerf, Tino de Bruijn, Patrick Pijnappel, Alexander de Mulder. 9 Students in the sCAPE group are: Iris van Loon, Marieke Dijksma, Teun Verkerk, Fons van der Berg, Tom Goijer, Cees-Willem Hofstede.
Creative Approach to the Design and Prototyping of Experimental Smart Spaces
143
Fig. 4. Design and building of the “sCAPE” group’s prototype
structure of the pavilion is built out of struts and nodes, where each node is regarded as a LEDwork node fixed in place that can be connected to all mobile nodes. Other fixed nodes include additional lighting elements, sound emitting components and more. The intention is to create a dynamic ecosystem in which the visitor to the installation can submerge himself completely. The family mutation resemblance among the components of the system has been observed to stimulate the right behaviours in the users, such as rearranging the LEDwork nodes or attaching them to the pavilion walls for recharging (see Figure 5).
Fig. 5. Autonomous node prototypes of the “sCAPE” group’s design
The second part of the semester has been entirely devoted to building the installations in full-scale. It has been explicitly stated that projects upon which the designs were based were not to be seen as final blueprints, but to the contrary, they were supposed to be modified and evolve throughout the entire building and testing process.
144
T. Jaskiewicz, W.A. Aprile, and A. van der Helm
The construction of interactive environments cannot be, currently, detached from the process of prototyping. The technology of interaction is developed and integrated at construction time: the traditional split between architecture, engineering and design cannot hold at this level of innovation. If the first quarter could be described as an iterative skill building period, the second quarter has been devoted to the iterative building of complete design prototypes. Students had to fit their installations in a tight budget, thus they had to experiment with various materials, many of which were recycled waste or leftovers from industrial production. Their designs had to be constantly adjusted, based on the structural and aesthetic properties of the used materials. For this, invaluable support was provided by quest teachers Denis Oudendijk and Jan Korbes from the Refunc (http://www.refunc.nl) group. The interactions have been tested and adjusted on the fly, based on ongoing experiments with embedding sensors, actuators and effectors into the built structures. To facilitate the prototyping process, the groups were further subdivided and each subgroup of two or three students that were made responsible for a different part of the installation. In this way, installation elements were prototyped individually and gradually integrated into a bigger system. The process of building the installations was thus interactive in itself. By interacting with the materials and component prototypes, students were adapting their designs and adjusting what was being built. In this way many creative solutions were found for difficult problems. All installations were finished in time, and are already partly operational while still being built.
3 Evaluation 3.1 Multi-agent Design Systems What can be observed in the developed installations is the logical application of distributed systems to interactive architectural applications. Each interactive installation component may be seen as a node in a complex network of interactions with other components and users. Such strategy allows developing installations iteratively and permits simultaneous working on their different parts. What’s more, distributed systems yield many advantages over centralised ones when it comes to resulting behaviours. An interactive installation without a centralized controlling core naturally becomes developed as an adaptive system, which in turn results in its nondeterministic operation. Applying such models to architecture means that buildings can be seen as distributed networks of dynamically interrelated building components. Such networks in their principles are easily extensible and adaptable. However, their most important feature is capability of exhibiting what is referred to as “swarm intelligence”. It is a holistic concept of intelligent behaviour that can emerge from systems which consist of a high number of simple interconnected agents. Those agents in case of buildings are active building components communicating with each other, with users of building spaces and with their environment. Complex adaptive system models applied to architectural design can lead to formulating a new methodology for creation of architectural processes. Such a new approach could lead to combining multiple current, yet still separate trends that are
Creative Approach to the Design and Prototyping of Experimental Smart Spaces
145
currently emerging on the border of architecture and information technology and to creating architecture that is inherently dynamic and adaptive in the most efficient manner. 3.2 Computer Aided Interactive Architectural Design It has been observed among the students of the Interactive Environments Minor that despite general proficiency with the use of computer aided design (CAD) software; the use of this software did not have any explicit effect on the course of student design processes. It became clear that students would greatly benefit from an integrated software toolkit that would have allowed them to create a virtual model of their installations and test the designed interactions and behaviours, as well as structural performance of designed installations virtually on that model before its physical realisation. Looking at commonly used digital design tools in architecture, even though achieving interactive quality of architecture in itself is not a direct goal for most practicing architects, contemporary digital design tools to some extent already allow creation of building designs as dynamic systems. An example here can be a parametric building design, storing all design data in shared building information model (for example in Gehry Technologies Digital Project CAAD environment). As a result of employment of those new technological means, we can already witness a radical shift in architectural design methodology. Linear and centrally steered “top-down” designing becomes gradually replaced or supplemented by creation of parametric, procedural and relational digital design models. Consequently, those models become final design products themselves, making traditional, fixed plan drawings less important or even completely redundant. We can imagine that in the next future, mass production will be replaced by the mass customization of building elements, made possible with datadriven manufacturing technologies and building environment. In many cases, it will not make a difference whether a building consists of repetitive modular components, or if its every single component is a different custom part. Ultimately after being built buildings are often also equipped with sophisticated control systems that dynamically govern HVAC installations, lighting, security, accessibility, media systems, and many other aspects of building’s functionality. This shows that although they are hardly interactive, contemporary buildings are already commonly designed, constructed and used as dynamic systems. However the structure of these systems tends to repress any degree of indeterminacy, thus interactive qualities cannot emerge.
Fig. 6. Swarm Toolkit design platform prototype
146
T. Jaskiewicz, W.A. Aprile, and A. van der Helm
The research work of one of us (Jaskiewicz) required the development of a design software application prototype under the working name of SwarmToolkit. The prototype includes a graphical interface and an open framework allowing virtual creation of autonomously operating elements and execution of their behaviour in real-time10. This solution allowing for integrated design and behavioural operation of a virtual model would seamlessly complement the workflow in projects similar to ones presented, allowing for a radical increase of component and installation design. Direct link to component fabrication can be established. What’s more, the virtual model can operate alongside the physical prototype in a real-time feedback loop, making it possible to fine tune interactions and instantly simulate proposed modifications. Controllers embedded in the physical installation may be early on in the prototyping process controlled by this software and ultimately they can be detached and operate autonomously, communicating only locally with each other11. 3.3 Future Prospects Interactive architecture as a domain is still in its infancy. Only continuous exploration of new methods, tools and techniques can ultimately lead to creation of full featured interactive buildings. Developing interactive installations in an iterative adaptive manner has proven successful and approaching interactive architecture as an adaptive multi-agent system appears as a promising strategy. In his manifesto Bruce Mau has written: "Make your own tools. Hybridize your tools in order to build unique things. Even simple tools that are your own can yield entirely new avenues of exploration. Remember, tools amplify our capacities, so even a small tool can make a big difference.” [13]. It becomes clear that architecture, as never before, is tied to digital tools that we develop to open up new possibilities for architectural design. Nevertheless, it’s not the digital tools that are the true essence of the new kind of “digital architecture”. It is architecture’s ability to read, process and communicate information that’s about to revolutionise the architectural profession.
References 1. Cook, D., Das, S.: Smart Environments: Technology, Protocols and Applications. WileyInterscience, Hoboken (2004) 2. Aldrich, F.K.: Smart Homes: Past, Present and Future. Inside the Smart Home, For Dummies (2003) 3. Sinopoli, J.: Smart Buildings (2006) 4. Ramos, C.: Ambient Intelligence – A State of the Art from Artificial Intelligence Perspective. In: Neves, J., Santos, M.F., Machado, J.M. (eds.) EPIA 2007. LNCS (LNAI), vol. 4874, pp. 285–295. Springer, Heidelberg (2007) 10
By real-time is meant an iterative process operating at more than 15 iterations per second, therefore perceived as continuous operation. 11 Arduino microcontrollers are used in the current setup. They can operate as devices slaved to a PC through the Firmata protocol, or they can be directly programmed to operate autonomously. Scripts written to control parts of the virtual model in Swarm Toolkit can be translated to Arduino code and seamlessly ported to the fully autonomous physical node. The solution is not microcontroller specific, other microcontrollers can be in further versions integrated in the system.
Creative Approach to the Design and Prototyping of Experimental Smart Spaces
147
5. Briere, D., Hurley, P.: Smart Homes For Dummies (2007) 6. Guallart, V.: Media House Project: The House Is The Computer The Structure The Network. Actar (2005) 7. Laurel, B.: The Art of Human-Computer Interface Design. Addison-Wesley Professional, Reading (1990) 8. Lidwell, W., Holden, K., Butler, J.: Universal Principles of Design. Rockport Publishers (2003) 9. Sharp, D.H., Rogers, P.Y., Preece, D.J.: Interaction Design: Beyond Human-Computer Interaction. Wiley, Chichester (2007) 10. Buxton, B.: Sketching User Experiences: Getting the Design Right and the Right Design. Morgan Kaufmann, San Francisco (2007) 11. Moggridge, B.: Designing Interactions. The MIT Press, Cambridge (2007) 12. Kelley, T.: Prototyping is the shorthand of innovation 12, 35–42 (2001) 13. Mau, B.: An Incomplete Manifesto for Growth (1998)
Event Recognition via Energy Efficient Voting for Wireless Sensor Networks Mohamed Baqer Department of Computer Engineering, College of Information Technology, University of Bahrain, Kingdom of Bahrain [email protected]
Abstract. Physical world event monitoring and detection are two of the most dominating applications of wireless sensor networks. Combining sensor networks with artificial intelligence and pattern recognition is envisaged to deliver smart application to end-users. In this paper, a new distributed energy efficient pattern recognition approach is proposed to first depict events of interest as patterns and then detect the occurrence of events of interest, namely: the Voting with Random Node Selection (VRNS) approach. Sensor nodes may leverage their processing and storage capabilities by collectively handling sensory data to translate local sensory information of individual sensor nodes into meaningful results that depict the global status of the environment. In contrast to classical pattern recognition approaches, the VRNS approach operates within the constrained sensor network’s resources and infrastructures. Instead of utilising the entire sensor network, events of interest are recognised by employing an arbitrary sample of sensor nodes. The results show that the VRNS approach is capable of prolonging the longevity of the network’s lifetime, recognising event patterns effectively, and avoiding over-utilisation hotspots in the network. Keywords: Wireless sensor networks, energy conservation, lifetime, pattern recognition, voting, distributed detection.
1
Introduction
Wireless sensor network research is a discipline that prospered with the increase in users that need to understand their physical world and be alerted with changes in their surroundings. Sensor nodes are envisaged to bridge the physical world with the human-driven context of the Internet [1], [2], [3]. Battery operated sensor nodes are being deployed in the environment to ubiquitously convey sensory information [4]. Sensory applications are event-driven applications used for inferring the physical world’s status from sensory data [5], [6]. Sensor networks are envisaged to facilitate smart living by seamlessly providing a constant flow of information about the environment to end-users and machines to improve our lifestyle. Information from sensor networks will allow us to depict our physical S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 148–159, 2010. c Springer-Verlag Berlin Heidelberg 2010
Event Recognition via Energy Efficient Voting for Wireless Sensor Networks
149
world surroundings in highly sophisticated relationships and to optimise these relationships to attain efficient and effective performance. The processing and storage capabilities of sensor nodes facilitate the implementation of complex sensory applications and allow sensory data to be processed within the network close to their sources. Generally, replacing or recharging the sensor node’s battery is infeasible; hence the services that the sensor node provides are restricted by the depletion of the sensor node’s battery. A typical Mica2 sensor node has about 4Kbytes of RAM and 128Kbytes of flash memory and operates on two AA batteries [7]. Thereby, sensory applications need to be designed whilst considering the resource constraints of the sensor nodes. Two primary energy conservation models are employed in sensor networks, namely: information processing and sleep mode strategies. Communication is the highest energy consumer in sensor networks [8]. The processing capability of sensor nodes is utilised to process sensory data whilst being routed to its destination, and consequently reduce the amount of energy consumed in communication [9], [10]. Moreover, information processing approaches are utilised to produce global results beyond the capability of any individual sensor node. Innetwork processing and collaborative signal and information processing (CSIP) approaches are commonly used to establish node collaboration for processing data whilst en-route to the base-station [9], [10]. The design of sensor node hardware incorporates various energy modes: active, idle, and sleep modes [11], [7]. It is generally desirable to switch off sensor nodes by setting them to the sleep mode since non-negligible amounts of energy are consumed in the active and idle modes [12], [13]. In sensor networks a sensory event pattern could be a weather map, the behaviour data of sea birds, or stress levels in a bridge [14], [15]. Pattern recognition approaches may be employed for automatic extraction and discovery of valuable information from the constant flow of sensory data [16]. Furthermore, pattern recognition techniques can detect interesting phenomena in the environment by using spatio-temporal patterns that depict the global status of events of interest. Using sensory patterns instead of handling individual sensory data points provides a practical method for capturing multidimensional and complex events of the physical environment [17], [18]. Classical pattern recognition approaches, however, are designed for typical computers with ample processing, storage, and power supply, and are not designed for the ad hoc and dynamic nature of the sensory infrastructure. Therefore, it is necessary to examine the pattern recognition approaches beyond their classical algorithm efficiency to incorporate their demand on the resources of the sensory infrastructure.
2
Related Work
Pattern recognition and neural network techniques may detect phenomena of interest in the environment by using spatio-temporal patterns that encapsulate the features and attributes of events of interest. Pattern recognition approaches for sensor networks operate to detect large non-local events. Sensor nodes within
150
M. Baqer
a network collaborate amongst each other to translate their local sensory data into global patterns. Two neural networks for data processing using sensor networks were proposed by Kulakov et al. [19]. The authors argue that classical neural network algorithms are well suited for sensor networks for data dimensionality reduction. Adaptive Resonance Theory (ART) and FuzzyART are implemented using sensor nodes for digital signal and analogue signal processing, respectively. A complete ART neural network is implemented on a single sensor node to cluster data from various sensor modules. Input sensory data are categorised based on their similarities to the stored reference patterns. Moreover, the authors then propose topologies that support different distributed data fusion schemes for in-network data processing. In essence, this approach functions as an information fusion approach commonly used in sensor networks. Although the authors discuss neural networks as a distributed approach, the implementation of the ART neural network is limited to individual nodes. The approach uses three topologies to improve data reduction, however, it does not discuss the time overhead required to cluster the data using the various topologies, and the correctness of the sensory data clusters. The user may not be able to correctly capture the status of the physical environment due to information loss resulting from the dimensionality reduction of sensory data. Finally, the approach consumes additional processing power and time by processing all of the sensory data despite their correlation or redundancy. Oldewurtel et al. [20] employed Hopfield Network and self organising maps (SOM) to process sensory data within the network. First, Hopfield Network (HN) was implemented on a single node to make the most of the parallelism and low computation costs of neural networks to replace resource demanding traditional signal processing algorithms. The node uses HN to deal with erroneous data and loss of data to avoid wasting energy in retransmissions. Information is processed within the network by means of node collaboration using SOM and in-network processing. SOM is implemented in a distributed manner over the network to reduce the dimensionality of the sensory data and thus reduce the energy consumed for transmissions. Finally, an in-network data processing approach is proposed as an alternative to the SOM approach. The authors utilised in-network approaches for data reduction and filtering and employed several approaches to process sensory data. Despite the analogy presented in the aforementioned papers between sensor networks and neural networks, the implementation of neural networks on sensor nodes is not trivial. The authors have implemented off-the-shelf neural network algorithms on sensor networks without incorporating any energy conservation mechanisms. For instance, SOM and ART algorithms require a fully-connected network which may not be feasible in sensor networks and demands a significant amount of network communication. Consequently, these algorithms consume non-negligible amounts of energy and may reduce the lifetime of the sensor network drastically.
Event Recognition via Energy Efficient Voting for Wireless Sensor Networks
151
Previously we have proposed the Voting Graph Neuron, VGN, approach as an energy efficient distributed event recognition model for wireless sensor networks in [21]. Initial research with respect to designing pattern recognition approaches that can operate within the resource-constraint and energy limitations of sensor networks was proposed. Event patterns that describe events of interest were employed for event monitoring. The VGN approach proposed a model for node collaboration where sensor nodes may exchange their results to reach a global consensus that reflects the status of the environment. The VGN approach’s performance was affected by the similarity amongst patterns. Patterns of high similarity consumed more energy than other patterns. Moreover, the model involved all nodes in every pattern recognition cycle which reduced the lifetime of the network. Finally, the VGN approach suffered from performance hotspots that showed that some sensor nodes are over-utilised more than others. This paper contributes by proposing a pattern recognition approach that suits the resource-constrained infrastructure of sensor networks. First, sensory event patterns are proposed and defined for sensory applications. Classical pattern recognition approaches do not take into consideration the dynamic and ad hoc nature of sensor networks and were originally designed for computers with ample processing and storage capabilities. Pattern storage and recognition is attained in a distributed manner to balance the operations load evenly throughout the network. As a result, the energy consumption is reduced by reducing the amount of communicated sensory data and balancing the sensor node utilisation in the network.
3
The VRNS Approach
The VRNS approach is proposed to perform distributed in-network pattern recognition. Events of interest are depicted as reference patterns and stored in a distributed manner in the sensor network. The pattern recognition operations are preformed in a distributed manner where each sensor node produces votes - the result of matching the local sensory measurement with the locally stored sub-patterns. The global event is matched with the predefined pattern of interest that receives the largest number of votes. The following present the main components and operations of the VRNS approach. 3.1
Sensory Event Patterns
The VRNS approach assumes that a sensory event pattern is represented by a M × N matrix. Each cell of the matrix is associated with one sensor node and corresponds to a specific region of the monitored area. Moreover, the number of active sensor nodes is equal to the number of cells (M × N ). In scenarios where the number of deployed sensor nodes might be greater than M × N, cell leaders may be elected to represent the cells and aggregate the sensory data of sensor nodes belonging to their cell [9]. Consequently, a matrix of sensor nodes of size M × N is created to correspond to event patterns. The matrix, however, can be
152
M. Baqer
of regular or irregular shape depending on the deployment scheme. Therefore, an event pattern may be defined as an M × N snapshot matrix of sensory data at a particular time t in a specific area A monitored by M × N matrix of sensor nodes, as illustrated in Figure 1.
Fig. 1. Mapping the status of the real world using event patterns
3.2
Pattern Storage
A set of reference patterns are used as a training set to detect events in the environment. In classical approaches the natural choice will be to store the training patterns in a centralised manner in the base-station. In sensor networks, as a result of the limited storage capacity of individual sensor nodes, a single sensor node cannot store all reference patterns, and storing the reference patterns at the base-station is not desirable due to the problems associated with centralised designs in sensor networks [22], [10]. The VRNS approach overcomes this problem by partitioning the patterns into sub-patterns. A sub-pattern is the fundamental pattern element comprising sensory information of a particular location. Each sub-pattern represents the local physical world status and is assigned to a dedicated sensor node deployed in same geographical location. The implementation details of the memory and data structures used for storing the patterns are out of the scope of this research. Nevertheless, the patterns should be stored in a manner which optimises the space and time required to store and to retrieve them, respectively. 3.3
Pattern Recognition
Event patterns are recognised by a voting mechanism. Input event patterns are recognised and matched to the winning reference pattern in a distributed manner. Each sensor node produces a vote set comprising the labels of reference
Event Recognition via Energy Efficient Voting for Wireless Sensor Networks
153
patterns that matches the local sensory measurements. Votes sets from various nodes in the network are collected and aggregated into vote polls. An information aggregation approach that allows the fusion of data enroute should be utilised to improve the longevity of the network [23], [24]. Amongst m stored patterns, the winning reference pattern is the pattern from the stored training set of pattern label Li that received the highest number of votes and the received votes count exceeds a threshold value, as depicted in Formula 1. Li if maxm i=1 (P olli ) ≥ α · M M atch = (1) Lm+1 otherwise The threshold value α provides a guarantee that the winning reference pattern received sufficient votes from the sensor nodes of the network. For instance, setting α=0.5 or α=1.0 implements simple majority and unanimity voting, respectively. On the other hand, the input pattern is rejected by setting the winning vote to Lm+1 . Furthermore, input patterns may be rejected or mismatched when the correct pattern label does not receive the largest number of votes and the number of votes received by any label is less than the confidence threshold value. Input patterns are rejected when none of the vote polls have satisfied the confidence threshold. Formula 2 describes the states of the pattern recognition conditions of the VRNS approach in terms of the number of votes and the value of α, where Pollcorrect and Pollincorrect ≥ α · M. ⎧ P ollcorrect > P ollincorrect ⎨ match Result = mismatch P ollcorrect ≤ P ollincorrect (2) ⎩ reject otherwise 3.4
Node Selection
The node selection technique incorporated in the VRNS approach leverages the benefits of the sleep mode. The sensor nodes may be switched entirely or partially by switching the radio antenna to conserve energy. In either situation, significant amounts of energy can be conserved. The VRNS employs a subset of sensor nodes to recognise patterns. A sample of sensor nodes is selected from the network instead of involving the entire network in the voting and pattern recognition process. Thereby, the selected nodes will actively cooperate to recognise the input patterns whilst setting the rest of the network into the sleep mode. Additionally, the sensor nodes enters the sleep mode after communicating their vote sets. There have been many node selection techniques proposed for sensor nodes which may be integrated with the VRNS approach. The node selection technique, however, should be implemented in a distributed manner to avoid any dependency on any centralised entity. As a result, each sensor node should be able to autonomously determine whether to participate in the voting process or to enter the sleep mode. Moreover, the selection criteria should be highly arbitrary and
154
M. Baqer
nodes should be selected in a fair manner from the entire network to attain uniform energy consumption across the sensor network.
4
Results
In order to explore the efficiency of the VRNS approach, a number of simulations were conducted using MATLAB [25] and tested using patterns from the MNIST pattern library [26]. Patterns of the MNIST are patterns of digit patterns of numbers from 0 to 9. The simulation evaluated the VRNS approach with respect to pattern recognition performance and energy consumption. The advantage of employing performance patterns is to exploit them to visually discover locations of unbalanced energy consumption. The simulation results whilst using a training set of 512 patterns are presented in this paper. 4.1
Pattern Recognition Performance
An input pattern may be matched, mismatched, or rejected. In the following simulations, the true positive and true negative tests were used to explore the pattern recognition performance. The true positive experiments explored the ability of the VRNS approach to recognise unknown input patterns when they are selected from the training set. On the other hand, the true negative experiments simulate the ability of the VRNS approach to reject patterns. In the true negative experiments, the unknown input patterns were selected from patterns not included in the training set. Therefore, it is desirable to attain maximum true positive results while reducing the true negative outputs. True Positive. Figure 2 comprises 6 sub-graphs which depict having the input pattern affected by 0% to 50% variability (noise). Each sub-graph plots the successful recognition rate with the increase in the number of selected nodes, from 10% to 100%. The results show that the pattern recognition performance decreases with the increase in the amount of variability and more variability is tolerated whilst using small α values. In the figure, sub-graphs depicting low variability influence show better pattern recognition performance than sub-graphs with high variability influence. Moreover, the sub-graphs show that a variety of pattern recognition performances is attained whilst using various α values. The VRNS approach, whilst selecting all sensor nodes, α of 1.0, fails entirely when 10% or more of any input pattern is affected by variability, as shown in Figure 2-2. Other α values show better variability robustness. For instance, variability of 20% is shown in Figure 2-3 and when using an α value of 0.5, the pattern matching the VRNS approach attains pattern recognition performance above 0.6. When the variability is 30%, however, the approach whilst using α of 0.5 is entirely unable to recognise any patterns as shown in Figure 2-4. All α values fail to recognise any patterns when the variability is ≥ 50%.
Event Recognition via Energy Efficient Voting for Wireless Sensor Networks
155
Fig. 2. True positive for a sensor network storing 512 patterns while various α and values. Figures 1 to 6 depict the network true positive performance while having 0.0% till 50% variability incremented by 10%.
True Negative. In event monitoring and detection settings, not all events occurring in the environment are of interest to end-users. The VRNS approach is designed to reject patterns when the number of votes received by any reference pattern does not satisfy the confidence threshold of α. The simulated network utilised digit patterns of number 3 as a training set and used patterns of number 1 as input test patterns. The true negative simulations follow the simulation settings as the true positive settings. Figure 3 shows that the pattern recognition performance of 1.0 is attained when the VRNS approach utilises α value of 1.0, regardless of the amount of variability. The pattern recognition performance whilst using other α values improves with the increase in the amount of variability. For instance, utilising α value of 0.5, the pattern recognition starts improving when 20% variability is affecting the patterns. All α values except 0.1 attain pattern matching of 1.0 when the variability is ≥ 50%. The value of α of 0.1 is significantly small to reject any input pattern and hence fails to successfully recognise any patterns. Node Selection and Pattern Recognition Performance. The number of nodes selected to recognise events is an important factor influencing the longevity of the sensor network. Instead of using all nodes, as in the base-station model, the sample size specifies the number of nodes randomly selected to recognise the event patterns. The true negative and true positive simulation results of only using 20% of nodes are approximately equal to the results attained when all
156
M. Baqer
Fig. 3. True negative for a sensor network storing 512 patterns of number 3 and tested with patterns of number 1 while utilising various α and values. Figures 1 to 6 depict the network true positive performance while having 0.0% to 50% variability incremented by 10%.
nodes (100%) are used to recognise patterns, as shown in all Figures 2 and 3. The figures show that there is no improvement attained while using all sensor nodes instead of only 20% of the nodes. In addition to attaining a pattern recognition performance equal to utilising all nodes by using only 20% of the network, the network can significantly prolong the lifetime of the network by 5 times by switching off the rest of the sensor nodes. 4.2
Energy Consumption
The average node communication, ANC, is proposed to provide energy consumed in communication. In addition to studying the performance of the VRNS approach in respect to classical pattern recognition measurement, it is essential to study the energy consumption of the approach. The ANC measures the amount of energy consumed in communicating vote sets for recognising event patterns. ANC Simulations. Figure 4 shows the ANC energy distribution in the sensor network depicted in colour maps. In each of these figures, an increasing trend in the ANC value with the increase in the sample of selected sensor nodes can be observed, as seen in the colour maps 1 to 4 of each of the figures. The ANC value is increased with the increase in the sample size as the result in the increase in the probability of reselecting nodes to recognise patterns. When the sample
Event Recognition via Energy Efficient Voting for Wireless Sensor Networks
157
size is large enough to include all nodes of the network, all nodes have ANC = 1.0. This means that all nodes are chosen to communicate their vote sets for each event pattern. The figures show that the node selection technique of the VRNS approach provides fairness in the communication and processing loads amongst nodes. The majority of nodes have approximately equal ANC values proportional to the sample size. Sensor nodes are evenly selected and rarely over or under-utilised and the network does not suffer from hotspots.
(1)
(2)
(3)
(4)
Fig. 4. ANC of 32×32 nodes storing 512 patterns and employing a sample of sensor nodes of sizes 64, 128, 512, and 1024 nodes
5
Conclusion
The VRNS approach was proposed to provide energy efficient and decentralised pattern recognition for event monitoring applications using sensor nodes by employing in-network information processing and sleep-mode techniques. The pattern storage and pattern recognition operations are evenly performed over the network. Moreover, energy distribution maps are utilised to visually evaluate the energy consumption performance of sensor networks, namely the ANC metric. These patterns are beneficial to highlight any redundancy or hotspots in the sensor network. The ANC results show that the VRNS approach provides balanced node utilisation and thereby is able to prolong the sensor network’s lifetime. The effectiveness of the energy conservation is further improved by using a sub-set of randomly selected sensor nodes instead of involving the entire network. Consequently, the VRNS approach attained an effective pattern recognition performance whilst prolonging the lifetime of the network. Acknowledgments. The author would like to thank Dr. A. I. Khan and Prof. Bala Srinivasan from Monash University for their input and review of this work.
158
M. Baqer
References 1. Estrin, D., Culler, D., Pister, K., Sukhatme, G.: Connecting the physical world with pervasive networks. IEEE Pervasive Computing 1(1), 59–69 (2002) 2. Tolle, G., Polastre, J., Szewczyk, R., Culler, D., Turner, N., Tu, K., Burgess, S., Dawson, T., Buonadonna, P., Gay, D., Hong, W.: A macroscope in the redwoods. In: Proc. ACM Conference on Embedded Networked Sensor Systems (SenSys’05), San Diego, California, November 2005, pp. 51–63 (2005) 3. Baqer, M., Kamal, A.: S-sensors: Integrating physical world inputs with social networks using wireless sensor networks. In: Proceedings of the 5th International Conference on Intelligent Sensors, Sensor Networks and Information Processing (ISSNIP), pp. 213–218. IEEE, Los Alamitos (2009) 4. Akyildiz, I., Su, W.S., Sankarasubramaniam, Y., Cayirci, E.: A survey on sensor networks. IEEE Communications Magazine 19(2), 102–114 (2002) 5. R¨ omer, K., Mattern, F.: The design space of wireless sensor networks. IEEE Wireless Communications 11(6), 54–61 (2004) 6. Karl, H., Willig, A.: Protocol and Architecture for wireless sensor networks. Wiley, Chichester (June 2005) 7. Crossbow: Mica2 datasheet, http://www.xbow.com/Products/Product pdf files/Wireless pdf/ MICA2 Datasheet.pdf (last accessed June 21, 2009) 8. Raghunathan, V., Schurgers, C., Sung Park Srivastava, M.: Energy-aware wireless microsensor networks. IEEE Signal Processing Magazine 19(2), 40–50 (2002) 9. Krishnamachari, B., Estrin, D., Wicker, S.: The impact of data aggregation in wireless sensor networks. In: Proceedings of the 22nd International Conference on Distributed Computing Systems (ICDCSW ’02), pp. 575–578. IEEE Computer Society Press, Los Alamitos (2002) 10. Madden, S., Franklin, M.J., Hellerstein, J.M., Hong, W.: Tag: a tiny aggregation service for ad-hoc sensor networks. In: 5th Annual Symposium on Operating Systems Design and Implementation (OSDI), pp. 131–146 (2002) 11. Ye, W., Heidemann, J., Estrin, D.: An energy-efficient mac protocol for wireless sensor networks. In: Proceedings of the 21st International Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM), vol. 3, pp. 1567–1576. IEEE, Los Alamitos (2002) 12. Cao, Q., Abdelzaher, T.F., He, T., Stankovic, J.A.: Towards optimal sleep scheduling in sensor networks for rare event detection. In: Proceedings of the Fourth International Conference on Information Processing in Sensor Networks (ACM/IEEE IPSN), April 2005, pp. 129–143. IEEE, Los Alamitos (2005) 13. Keshavarzian, A., Lee, H., Venkatraman, L.: Wakeup scheduling in wireless sensor networks. In: Proceedings of the seventh ACM international symposium on Mobile ad hoc networking and computing (MobiHoc ’06), pp. 322–333. ACM, New York (2006) 14. Mainwaring, A., Culler, D., Polastre, J., Szewczyk, R., Anderson, J.: Wireless sensor networks for habitat monitoring. In: WSNA ’02: Proceedings of the 1st ACM International Workshop on Wireless Sensor Networks and Applications, pp. 88–97. ACM Press, New York (2002) 15. Kim, S., Pakzad, S., Culler, D., Demmel, J., Fenves, G., Glaser, S., Turon, M.: Wireless sensor networks for structural health monitoring. In: SenSys ’06: Proceedings of the 4th International Conference on Embedded Networked Sensor Systems, pp. 427–428. ACM Press, New York (2006)
Event Recognition via Energy Efficient Voting for Wireless Sensor Networks
159
16. Bishop, C.M.: Pattern Recognition and Machine Learning. Springer, Heidelberg (2006) 17. Xue, W., Luo, Q., Chen, L., Liu, Y.: Contour map matching for event detection in sensor networks. In: Proceedings of the 2006 ACM SIGMOD international conference on Management of data (SIGMOD ’06), pp. 145–156. ACM, New York (2006) 18. Li, M., Liu, Y., Chen, L.: Nonthreshold-based event detection for 3d environment monitoring in sensor networks. IEEE Educational Activities Department 20, 1699– 1711 (2008) 19. Kulakov, A., Davcev, D.: Distributed data processing in wireless sensor networks based on artificial neural-networks algorithms. In: In proceedings of the 10th IEEE Symposium on Computers and Communications (ISCC’05), pp. 353–358. IEEE, Los Alamitos (2005) 20. Oldewurtel, F., M¨ ah¨ onen, P.: Neural wireless sensor networks. In: Proceedings of the International Conference on Systems and Networks Communication (ICSNC ’06), pp. 28–36. IEEE, Los Alamitos (2006) 21. Baqer, M., Khan, A.I.: Energy-efficient pattern recognition approach for wireless sensor networks. In: Proceedings of the 3rd International Conference on Intelligent Sensors, Sensor Networks and Information (ISSNIP’07), pp. 509–514. IEEE Computer Society, Los Alamitos (2007) 22. Ye, W., Heidemann, J., Estrin, D.: An energy-efficient mac protocol for wireless sensor networks. IEEE 3, 1567–1576 (2002) 23. Madden, S., Franklin, M.J., Hellerstein, J.M., Hong, W.: Tag: a tiny aggregation service for ad-hoc sensor networks. In: 5th Annual Symposium on Operating Systems Design and Implementation (OSDI), pp. 131–146 (2002) 24. Boulis, A., Ganeriwal, S., Srivastava, B.: Aggregation in sensor networks: an energy - accuracy tradeoff. In: Proceedings of the International Workshop on Sensor Network Protocols and Applications, May 2003, pp. 128–138 (2003) 25. MATLAB: Matlab, http://www.mathworks.com/ (last accessed July 2009) 26. MNIST: Mnist database, http://yann.lecun.com/exdb/mnist/ (last accessed July 2009)
Evaluation of Multi-service CDMA Networks with Soft Blocking Villy B. Iversen Department of Photonic Engineering, Technical University of Denmark Building 343, 2800 Kongens Lyngby, Denmark [email protected]
Abstract. This paper presents a new approach for calculating the capacity of multi-service CDMA networks with soft blocking using general insensitive traffic models. The system is modeled as a multi-rate traffic flow model with state dependent blocking probabilities which have to fulfil specific requirements for maintaining reversibility of the model. By a new state-based algorithm performance measures are obtained for each individual service. An example for solving a realistic case is given. The granularity of the basic bandwidth unit can be chosen arbitrarily. Keywords: CDMA, soft blocking, state-based algorithm, granularity, BPP multi-rate traffic.
1
Introduction
Universal Mobile Telecommunication System (UMTS) networks, being new entrants on the market, are trying to prove their existence and secure a position in the future. One of the innovations UMTS brings is multi-band Wide-Band Code Division Multiple Access (WCDMA), which allows many users to transmit simultaneously within the same frequency band. Novelty in WCDMA compared with GSM networks systems is that single-user transmission in the system to all other users located around the air-interface is noise. Every time a new call is accepted, the signal-to-noise ratios for all other users are decreased. Because of that, WCDMA systems have no hard limits on call capacity. In order to preserve the quality of already accepted calls, a new call should not be accepted by the system if this call increases the noise for any other existing call above the tolerable level. Staehle & M¨ ader [11] have dealt with the same problem in a different approximative way. This paper presents a powerful and flexible model for evaluation of blocking probabilities of WCDMA system and related teletraffic parameters as traffic, call and time congestion. At the end, the paper gives an example of how to use the described model and algorithms. An earlier model was described in a conference paper [8]. In this paper we have modified the state dependent blocking probabilities and introduced a new numerical stable algorithm for BPP (Poisson - Binomial - Pascal) multi-rate traffic, which is a generalization of the classical recurrence Erlang-B formula, and a generalization of earlier algorithms S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 160–171, 2010. c Springer-Verlag Berlin Heidelberg 2010
Evaluation of Multi-service CDMA Networks with Soft Blocking
161
by Fortet and Grandjean (otherwise known as Kaufman and Roberts’ algorithm) and Delbrouck. This new algorithm includes global-state-dependent blocking probabilities. In section 2 we review the basic principles of calculating the capacity of WCDMA for services with different bandwidth and Quality-of-Service (QoS) requirements. In section 3 we introduce state dependent blocking probabilities as they appear in WCDMA. Section 4 presents a new compact recursive algorithm. New results on conditions for product-form and reversibility are presented, and the above algorithm is generalized to global-state-dependent blocking probabilities. A realistic large scale case is presented in section 5, and conclusions are given in section 6.
2
WCDMA Capacity
WCDMA networks are designed to provide multi-rate services with diverse Quality-of-Service (QoS) parameters as different speed and bit error rates. In the following we consider a single UMTS cell for capacity analysis. Influence from neighbor cells is modeled by the noise, which is expressed by neighbor cell interference ratio ι introduced below. The usual way to describe WCDMA capacity is through signal and noise power levels and their ratio. Such modeling comes very close to physical network layer and has been used by radio engineers ([5] [12]). However, for teletraffic calculations, it is preferable to convert all power levels and decibels into channels, offered traffic and blocking probabilities. Furthermore, only the up-link traffic direction (from mobile station towards the base station) will be considered. The down-link can be modeled in similar way. For that we need to express UMTS service definition by bandwidth resources needed from the particular traffic channel by the considered service. The relevant WCDMA cell capacity defining parameters are the following [6]: – WCDMA chip rate, W = 3.84 Mcps. – Noise-rise is defined as the ratio of the total received wide-band power to the noise power. It is functionally related to the cell up-link utilization factor ηUL ([6] formula 8.9: Noise rise = 1/(1 − ηUL )). The value of 3 dB noise-rise corresponds to ηUL = 50% utilization. – Neighbor cell interference ratio ι: cell interference ι = other own cell interference Interference ratio depends on cell environment, type of antenna used, and other factors. Common assumed values are 0.55 or 0.65. This reduces the cell capacity n by a factor 1/(1 + ι). In this paper we include other cell interference by state dependent blocking probabilities bx , discussed further below. Service classes in UMTS are described by following three parameters:
162
V.B. Iversen
– Service bit-rate Rj . – Signal energy per bit divided by noise spectral density level Eb /N0 that is required to provide predefined QoS. – Activity factor νj . For data services this equals 1, for voice 0.67 (50% voice activity plus overhead). Let N denote the total number of active calls (or users) in the cell for all services. The mathematical relation between above entities is ([6] formula 8.12): ηUL =
N j=1
1 1+
Eb N0
W Rj νj
.
(1)
j
Let us denote the service-related entities product by κj : Eb κj = · Rj · νj . N0 j
(2)
Then the maximum number of channels of service j (alone) in one cell is: W Nmax,j = ηUL 1 + . κj
(3)
Let us denote by Rs,j the spread bit rate of service j, which is the proportion of W utilized by one connection of service Rj (the chip rate of the connection): κ2j W 1 . (4) Rs,j = = κj − Nmax,j ηUL κj + W The formula above provides the technique to obtain unified measure unit for calculating traffic in multi-service and multi-QoS WCDMA systems. An example of calculations using above formulæ is shown in the Table 1. In the following we need to specify the total capacity and bandwidth requirement by a basic bandwidth unit (BBU) which we name a channel. The higher the required accuracy, the smaller is the unit we have to choose. As an approximation we may choose the unit-channel to be equal to 13.5 kcps, and Table 1. Capacity of a WCDMA cell. Assumptions for calculations for cell parameters: ηUL = 0.5 and W = 3840 kcps. Eb Eb j Service Rj [kbps] νj [dB] N κj Nmax,j Rs,j [kcps] N0 0 j
1 2 3 4
Voice Voice/moving Data Data
7.95 7.95 32 64
0.67 0.67 1 1
4 7 3 2
j
2.51 5.01 2.00 1.58
13.38 144.0 26.70 72.4 63.85 30.6 101.43 19.4
27 53 126 198
Evaluation of Multi-service CDMA Networks with Soft Blocking
163
then approximate the bandwidth of the above services by 2, 4, 3, 5, 10, 16, 32 channels, respectively. The cell capacity is then 3840/13.5 = 284 channels. In principle, the performance of a system should be independent of the granularity chosen.
3
State-Dependent Blocking
The blocking probability of a call attempt should be independent of the granularity chosen if the Basic Bandwidth Unit is a integral multiple of the largest common divisor of the bandwidth demands. In practice a rough granularity may waste more bandwidth than a fine granularity because we will overbook the capacity needed. So if a call with a given granularity is a single-slot connection, then with the double (finer) granularity the same call becomes a two-slot connection. Denoting by bx,x+1 the blocking probability for a call arriving in state x and requiring one slot, then for these two cases the acceptance probability for a call attempt becomes (1 − bx,x+2 ) respectively (1 − bx,x+1 )(1 − bx+1,x+2 ) In CDMA, the capacity limiting factor is the power transmitted by user terminals and antennas. The total power is made up of contributions from own cell, other cells, and background noise. The contribution from other cells is typically around 35–40 % (with i = 0.55 – 0.65), and it is often assumed to be an independent Log-Normal distributed random variable. Therefore, the blocking probability of a new connection is a random variable depending on the state of the system (own cell, neighbor cells) and the bandwidth (noise-rise) of the new connection. We have to assume that the neighbor cell interference is varying slowly as compared with the mean holding times, so that we don’t risk that already accepted connections run out of capacity. Thus we assume that if we are in state x, then the neighbor cell interference at most occupy the bandwidth n − x. If the variations were fast, then we would not be able to guarantee any quality-ofservice. If our own cell is in state x then the remaining capacity is n − x and the bandwidth d is either available for the new connections or used by connections in neighboring cells. Let us denote the distribution function of the random variable describing the neighbor cell interference by F (x) (density function f (x). Conditioning on being in state x we know the inter-cell interference is within the interval [0, n − x]. If we request the bandwidth d, then a call attempt will be blocked if the neighbor cell interference is within [n − x − d, n − x]: n−x f (u) du (5) bd (x) = u=n−x−d F (n − x) F (n − x) − F (n − x − d) = (6) F (n − x) F (n − x − d) =1− . (7) F (n − x)
164
V.B. Iversen
In a similar way we get for a single-slot call in state x + d: bd (x + d) = 1 −
F (n − x − 2d) . F (n − x − d)
(8)
A call attempt requesting bandwidth 2d in state x experiences the blocking probability: F (n − x − 2d) b2d (x) = 1 − . (9) F (n − x) It is easy to se that this is the same as the blocking probability for two call attempts each requesting one bandwidth unit d: F (n − x − 2d) F (n − x) F (n − x − d) F (n − x − 2d) = · F (n − x) F (n − x − d) = {1 − bd (x)} · {1 − bd (x + d)}
1 − b2d (x) =
(10) (11) (12)
Thus a two-slot call attempt has the same blocking probability as two single-slot calls. The same results was obtained by a different approach for multi-rate traffic in [9].
4
Algorithms for Traffic Performance
We consider the BPP traffic paradigm. BPP traffic models include Binomial (finite source, Engset) traffic, Poisson arrival traffic, and Pascal traffic. Binomial traffic is more smooth than Poisson traffic. Pascal traffic is more bursty than Poisson and is equivalent to Poisson batch arrival with geometric batch size distribution. The state of the system x is defined as the number of busy channels. The arrival rate of service j (j = 1, 2, . . . , N ) is supposed to depend on the number of connections of this type. So the arrival rate of service j is λj (x) when we have x channels occupied by this type. The bandwidth demand of service j is dj , so that each connection requires dj channels (= Basic Bandwidth Units = BBU). The holding time of a connection of type j is exponentially distributed with rate dj μj (the factor dj is chosen only for convenience, the connection terminates all channels at the same time). In the mode considered (reversible scheduling), this model will be insensitive to the service time distribution, so that results obtained for exponential distributions are valid for more general distributions. For service j, the offered traffic in channels is Aj = λj /μj , and each connection needs di channels. Finite source traffic is characterized by number of sources Sj and offered traffic per idle source βj . Alternatively, we in practice often use the offered traffic Aj and the peakedness Zj . We have the following relations between the two representations: Aj = Sj ·
βj , 1 + βj
Zj =
1 , 1 + βj
(13)
Evaluation of Multi-service CDMA Networks with Soft Blocking
βj =
γj 1 − Zj = , dj μj Zj
Sj =
Aj . 1 − Zj
165
(14)
dj is the data rate required by service j, and bj (x) is the blocking probability in state x for a call of type j requesting dj channels (soft blocking), which characterizes the current other-cell interference level. We have: ⎧ 0 x<0 ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ p(0) x=0 p(x) = (15) N ⎪ ⎪ ⎪ ⎪ pj (x) x = 1, 2, . . . , n ⎪ ⎩ j=1
where pj (x) denotes the contribution of service j to the global state probability p(x): pj (x) =
dj Sj γj x − dj γj · p(x − dj ) − · pj (x − dj ) · · x μj x μj
pj (x) = 0
x < dj .
(16) (17)
The state probability p(0) is obtained by the normalization condition: n
p(x) = p(0) +
x=0
n N
pj (x) = 1 ,
(18)
x=1 j=1
as pj (0) = 0, whereas p(0) = 0. Above we have used the parameters (Sj , βj ) to characterize the services. Alternatively we may also use (Aj , Zj ) related to (Sj , βj ) by the formulæ (13). Then (16) becomes: pj (x) =
dj Aj x − dj 1 − Zj · · · p(x − dj ) − · pj (x − dj ) x Zj x Zj
(19)
Therefore, we may normalize the state probabilities after each step in the iteration to avoid numerical problems as described in [7] [10]. 4.1
CDMA Traffic Model
In Fig. 1 we show a system with two multi-rate services. Let us denote the global state by x (e.g. x = i + j in state (i, j)). If the state-dependent blocking probability bx in state x for a single slot call is zero, then the state transition diagram is reversible and has product form. The reversibility is ensured when the flow among the four neighbour states is the same clockwise and counter-clockwise (Kolmogorov cycles). The passage factor is defined as 1 − bx . When bx is greater than zero, then we may choose bx so that the diagram is still reversible, but the product form will be lost. For a d–slot call we have to choose the passage factor in state x as
166
V.B. Iversen
.. .
.. .
.. .
.. .
... ........ ... ... ... ... ..
... ... ... ... ... .. ........ ... .
. .. ........ .... .. ... ... ..
... ... ... ... ... .. ......... ..
.... .... .. .. ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . ......... ..
.... .... .. .. ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . ......... ..
(1−b 1 i+j+1 )(1−bi+j+2 ) λ ............................................................................................................................................................ ...................................... · · · .............................................. ··· i, j +1 i+2, j +1 .. .......................................................................................................................................................... .................................... · · · ........................................... ··· ... ... ... .... i+2 .... .... ........ ........ μ . ... ... 1 . .... . 2 .. .. .. .
(1−bi+j ) λ2
· · · .............................................. i, j .. · · · ........................................... ... .. . ........ ... .. ... ... ..
.. .
... ... ... ... ... ........ .. .
(j +1) μ2
(1−bi+j+2 ) λ2
(1−bi+j )(1−bi+j+1) λ1
............................................................................................................................................................ ..........................................................................................................................................................
i+2 μ1 2
.. .
(j +1) μ2
i+2, j
. .... ........ .... ... .. ... ..
.. .
... ... ... ... ... .. ........ ...
··· ···
....................................... ....................................
.. .
Fig. 1. State-transition diagram for state-dependent blocking probabilities for a multirate traffic. In this example the arrival processes are Poisson processes (λ1 , λ2 ), and the slot size is d1 = 2, d2 = 1, respectively.
a function of number of channels occupied in the cell and the bandwidth of the call attempt: x+d−1 1 − bx,d = Πj=x (1 − bj )
= (1 − bx )(1 − bx+1 ) . . . (1 − bx+d−1 ) . This corresponds to a d-slot call choosing one single channel at a time (d times), and the call is only accepted if all d channels are successfully obtained. This is a quite natural requirement as we assume full accessibility to idle resources, and it can be shown to be a necessary and sufficient condition for maintaining the reversibility of the process. If the process is not reversible, then we have to solve a very large set of linear equations to find the state probabilities, and only very small systems can be solved. The product form will be lost. As the blocking probability only depends on the global state and the QoS & bandwidth requirements (noise-rise) of the new connection, we may introduce the statedependent blocking probability by modifying (19) as follows: dj Aj x − dj 1 − Zj · · p(x − dj ) − · · pj (x − dj ) · (1 − bx−dj ,dj ) . pj (x) = x Zj x Zj (20) (16) is modified in a similar way.
Evaluation of Multi-service CDMA Networks with Soft Blocking
4.2
167
Performance Measures
By this algorithm we are able to obtain performance measures for each individual service as described in [7]. Time congestion: Call attempts of service j require dj idle channel and will be blocked with probability: n Ej = bi,i+dj · p(i) . (21) i=0
Traffic congestion: From the state probabilities pj (x) we get the total carried traffic of service j: Yj =
n
i · pj (x) .
(22)
x=1
Thus the traffic congestion of service j becomes: Cj =
Aj · dj − Yj . Aj · dj
(23)
The total carried traffic is Y =
N
Yj ,
(24)
A−Y , A
(25)
j=1
so the total traffic congestion becomes: C=
where A is the total offered traffic measured in channels: A=
N
dj Aj .
j=1
Call congestion: This is obtained from the traffic congestion by using the general formula: Bj =
(1 + βj ) Cj . 1 + βj Cj
(26)
We are thus able to obtain the exact global state probabilities for a system with global-state dependent blocking probabilities as they appear in CDMA systems, even if the system does not have a product-form.
168
V.B. Iversen
Table 2. Input parameters for the case considered. A is offered traffic, Z peakedness and d bandwidth requirement in channels. The total number of channels is 284. Class 1 2 3 4
5
A 30.00 15.00 6.00 3.75
Z 2.00 1.00 0.40 0.25
d 2.00 4.00 10.00 16.00
Case Study
We consider an example with 4 services from table 1 with the parameters shown in table 2. The offered traffic A is given in number of connections, and the bandwidth demand d in number of bandwidth units (channels). The maximum number of channels is n = 284. In addition to these parameters, the model and program also allows for minimum guaranteed allocation of capacity and maximum allowed capacity for each service and other features not included here. We introduce log-normal distributed random variable for the neighbor cell interference with parameters: ι ·n (27) μ= ι+1 σ=μ The mean value of the interference process μ is equal to the average capacity lost in our cell because of the neighbor cell. σ is chosen to be equal to the μ as proposed by (Staehle & M¨ ader [11]). Then bx is expressed by (7). F (x) is the cumulative distribution function of the log-normal distribution: 1 ln(x) − M √ F (x) = 1 + erf (28) 2 S 2 where M and S are corresponding parameters of normal distribution and are obtained from μ and σ 2 by the following calculations: μ2 M = ln μ2 + σ 2 σ2 2 S = ln 1 + 2 μ We choose the other cell interference factor ι = 0.55 and the cell capacity n = 284 (channel rate - 13.5 kcps). Then the interference process mean value μ = 100.7 and we assume multiplicative variance σ 2 = 10140.495. In Fig. 2 the blocking probabilities are shown for different bandwidths for parameters given in the case study. The performance measures are shown in Table 3 for a full accessible system with no state-dependent blocking. In table 4 the same model is considered with state dependent blocking. We consider three congestion measures. Numerical results are obtained in [1].
Evaluation of Multi-service CDMA Networks with Soft Blocking
169
1 Class 1 Class 2 Class 3 Class 4
0.9 0.8
Blocking probability
0.7 0.6 0.5 0.4 0.3 0.2 0.1 0
0
50
100 150 State of the system
200
250
Fig. 2. State-dependent blocking probabilities for slot sizes 1, 2, 5, 8
– The time congestion E is the proportion of time a service is blocked. – The call congestion B is the proportion of call attempts which are blocked. – The traffic congestion C is the proportion of offered traffic which is blocked, where we define the offered traffic as the traffic carried when the capacity is unlimited. For Poisson arrival processes (Z = 1) we have the PASTA–property and the three measures are identical. In all other cases the traffic congestion is the most relevant. The carried traffic is measured in channels. We notice that the four services have almost the same performance because Z · d = 4 is constant. If we choose another granularity, then we get the same blocking probabilities. Thus we have solved the granularity problem raised in [4]. Table 3. Performance measures for the parameters given in table 2 and without statedependent blocking Class Time cong. E 1 0.010234 2 0.021427 3 0.061116 4 0.110452 Total
Traffic cong. C 0.022448 0.021427 0.018435 0.015695 0.019502
Call Cong. B 0.011352 0.021427 0.044847 0.059957
Carried Traffic 58.6531 58.7142 58.8939 59.0583 235.3195
170
V.B. Iversen
Table 4. Performance measures for the parameters given in table 2 and with statedependent blocking Class Time cong. E Traffic cong. C 1 0.046072 0.090925 2 0.091624 0.091624 5 0.224254 0.093372 6 0.349032 0.094529 Total 0.092613
6
Call Cong. B 0.047628 0.091624 0.204753 0.294578
Carried Traffic 54.5445 54.5026 54.3977 54.3283 217.7730
Conclusions
The paper presents a new and innovative approach to evaluate CDMA systems. We first show a way to calculate Rs using a common unit and describing speed and QoS of WCDMA services in a particular cell. Then we discuss statedependent blocking probabilities and show how they should be chosen to conform with reality and at the same time maintain reversibility of the process. Even if the product-form of the model is lost by introducing blocking, we are able to calculate the exact state probabilities by a new algorithm applicable for BPP (Poisson - Binomial - Pascal) multi-rate traffic. The generalized state-based algorithm is presented in a modified form only requiring a minimum of memory and maintaining full numerical accuracy when we normalize in each step. The model described is flexible and can be applied for different services and state dependent blocking probabilities for any system size.
References ´ 1. Che´cko, A., Sniady, A.: State-dependent blocking probabilities for W-CDMA systems. Student report. Photonic Engineering, Technical University of Denmark (2010) 2. Delbrouck, L.E.N.: On the steady–state distribution in a service facility carrying mixtures of traffic with different peakedness factor and capacity requirements. IEEE Transactions on Communications COM-31(11), 1209–1211 (1983) 3. Fortet, R., Grandjean, C.: Congestion in a loss system when some calls want several devices simultaneously. Electrical Communications 39(4), 513–526 (1964); Paper Presented at ITC–4, Fourth International Teletraffic Congress, London, England (July 15-21, 1964) 4. Garcia-Roger, D., Casares-Giner, V.: Teletraffic analysis of the uplink–WCDMA networks with soft capacity. In: HETNET Conference, Karlskrona, Sweden, February 18-20, p. 7 (2008) 5. Gilhousen, K.S., Jacobs, I.M., Padovabi, R., Viterbi, A.J., Weaver, L.A., Wheatley, C.E.: On the capacity of a cellular CDMA system. IEEE Tranasactions on Vehicular Technology 40(2), 303–312 (1991) 6. Holma, H., Toskala, A. (eds.): WCDMA for UMTS: Radio Access for Third Generation Mobile Communications, 2nd edn., p. 412. Wiley, Chichester (2002) 7. Iversen, V.B.: Teletraffic Engineering and Network Planning. Photonic Engineering, Technical University of Denmark, p. 374 (2010), http://oldwww.com.dtu.dk/education/34340/material/telenook2010pdf.pdf
Evaluation of Multi-service CDMA Networks with Soft Blocking
171
8. Iversen, V.B., Benetis, V., Ha, N.T.: Evaluation of Multi-Service CDMA Networks with Soft Blocking. In: Proceedings of ITC 16th Specialist Seminar on Performance Evaluation of Mobile and Wireless and Mobile Systems, August 31-September 2, pp. 212–216, 297. University of Antwerp, Belgium (2004) 9. Iversen, V.B.: Modelling restricted accessibility for wireless multi-service systems. In: Cesana, M., Fratta, L. (eds.) Euro-NGI 2005. LNCS, vol. 3883, pp. 93–102. Springer, Heidelberg (2006) 10. Iversen, V.B.: Reversible fair scheduling: The teletraffic theory revisited. In: Mason, L.G., Drwiega, T., Yan, J. (eds.) ITC 2007. LNCS, vol. 4516, pp. 1135–1148. Springer, Heidelberg (2007) 11. Staehle, D., M¨ ader, A.: An analytic approximation of the uplink capacity in a UMTS network with heterogeneous traffic. In: Proceedings of ITC, Berlin, September 2003, vol. 18, pp. 81–91. Elsevier, Amsterdam (2003) 12. Viterbi, A.M., Viterbi, A.J.: Erlang capacity of a power controlled CDMA system. IEEE Journal on Selected Areas in communications 11(6), 892–900 (1993)
Design of MPLS over DWDM Architecture for Unicast and Anycast Flows Jakub Gladysz and Krzysztof Walkowiak Chair of Systems and Computer Networks, Faculty of Electronics, Wroclaw University of Technology, Wybrzeze Wyspianskiego 27, 50-370 Wroclaw, Poland [email protected], [email protected]
Abstract. In this work we present models and computational results of CFA (Capacity and Flow Assignment) problem in two-layer networks based on MPLS over DWDM architecture. We assume that unicast and anycast demands are used in the upper layer and the lower layer DWDM is responsible for physical transmission. The unicast (one-to-one) is the most popular traffic in the Internet. The anycast (one-to-one-of-many) has the goal to deliver a packet to or from one of many hosts. To obtain optimal solution we intend to use CPLEX linear programming package. The considered problem is NP-complete - with a growing size of the network, finding the optimal solution may be difficult in reasonable time. Therefore, to solve larger problem instances we propose new heuristic algorithms. To our best knowledge this is the first paper that applies heuristic algorithms for unicast and anycast traffic in multi-layer networks.
1
Introduction
Recently we can observe a growing of optimization problems of multi-layer networks. Multi-layer modeling across the network layers (at least 2) consists of different technologies, protocols and functionalities (e.g. IP oved DWDM, IP over ATM over SONET etc.). In the literature there are many research works touching optimization of single-layer networks. Because in single-layer method each layer is optimized separately, global optimality of the solution cannot be guaranteed. In recent years we can also witness an increasing popularity of network services using anycast flows. Common examples of network services using anycasting are: Domain Name Service (DNS), Web Service, overlay network, peer-to-peer (P2P) systems, Content Delivery Networks (CDN), video streaming, software distribution, sensor networks [9], [19]. Unicast - defined as an one-to-one transmission - is the most popular transmission approach in the Internet. Anycast one-to-one-of-many transmission technique - has the objective to send a packet to one of many hosts, since the same information is replicated in many replica servers located in the network, the user can select one of these servers according to some criteria including also QoS parameters. Consequently, the anycasting can reduce the network traffic and avoid congestion causing big delays in data delivery. For these two reasons, this work concentrates on multi-layer computer S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 172–183, 2010. c Springer-Verlag Berlin Heidelberg 2010
Design of MPLS over DWDM Architecture for Unicast and Anycast Flows
173
networks using simultaneously unicast and anycast flows. As a model of multilayer network we propose two-layer, based on MPLS over WDM architecture. The idea of two-layer, based on MPLS over DWDM architecture, is as follows. The logical links given by paths allocated to demands of the upper layer are constructed using lightpaths of the lower layer. In the upper layer we introduce two kinds of traffics: unicast and anycast. First time MPLS over WDM model for unicast and anycast flows was formulated in [19] as a FA (Flow Assignment) problem - the capacity of lower layer is assumed to be fixed. In our work we are not given capacity of physical links and the main goal of the paper is to minimize linear cost function of operating upper and lower layer. Model of MPLS over DWDM network for modular links was showed in work of authors [3]. We focus on connection-oriented networks. Note that connection-oriented network techniques like Multi-Protocol Label Switching (MPLS) and Dense Wavelength Multiplexing (DWDM) gain much attention especially in transport backbone networks [14]. This follows from the fact that connection-oriented transmission enables delivering of traffic engineering capability and QoS performance including reliability issues [7]. Wavelength Division Multiplexing (WDM) is a technology, which multiplexes multiple optical carrier signals on a single optical fibre by using various wavelengths (colors) of laser light to carry different signals. Since a single fiber using WDM can carry many (e.g. 128) wavelengths 40 Gb/s each, the overall capacity of a fiber grows to terabits per second. Because the majority of Internet traffic is now IP, it is an substantial issue to examine various aspects of network architectures which transport IP traffic on WDM networks. Due to the growing demand for QoS (Quality of Service) and traffic engineering functionality we assume that MPLS technique is applied to carry IP traffic [19]. The MPLS proposed by the Internet Engineering Task Force (IETF) [15] is a networking technology that enables delivering of traffic engineering capability and QoS performance for carrier networks. MPLS node that is capable of forwarding IP packets and supports MPLS is called a label switching router (LSR). The path through one or more LSRs at one level of the hierarchy followed by a packet in a particular FEC (Forwarding Equivalence Class) is known as a label switched path (LSP). MPLS and constraint-based routing (CR) enables traffic engineering operations in the network. The major objective of CR is to find a network path that meets a set of requirements or constraints and optimizes some scalar metric, e.g. the number of hops. The particular route starts at an ingress/source router and ends at an egress/destination router. The result of a CR operation is a constraint-based routed LSP (CR-LSP) - an LSP that is subjected to a set of constraints [18]. Because in multi-layer architecture more layers are considered, the size of the optimization problem grows harder that in single-layer network. Because both of presented models are NP-complete, the heuristic algorithms can be used to find solution for larger networks. We propose two heuristic algorithms: first is based on Flow Deviation method, the second is based on tabu-search algorithm. Because our problems are linear - to find optimal solution we use CPLEX linear programming package [10]. The first model uses modular link modeling, the second applies candidate link modeling. The
174
J. Gladysz and K. Walkowiak
results of algorithms will be compared with optimal solution yielded by CPLEX solver. We want to examine the performance of two-layers networks as a function of anycast traffic percentage, various number of distribution centers (servers or replicas) and the different size of network (number of nodes, links). Moreover, we report results showing that the use of anycast paradigm can reduce the network cost. The rest of this paper is organized in the following way. In the next section we present briefly the related work on multi-layer networks and anycasting. In section 3 we formulate and discuss the MPLS over DWDM two-layer architecture for modular and candidate type of links. Next two points state on two heuristic algorithms - flow deviation and tabu-search method. Section 6 includes results of computational results. The last section summarizes this work.
2
Related Work
In the literature there are many papers touching anycast paradigm. During few last years have been published papers that address locating and forwarding network traffic to any one of servers in network, especially for mobile or optical networks [1], [12], [17]. Most of interest in the context of QoS dynamic routing has been focused on the unicast traffic. This is obvious, since unicast routing between a specified pair on network nodes is relatively well understood in best effort networks. However, various techniques applying anycast flow paradigm have gained much attention in recent years. Anycast is a one-to-one-of-many technique to deliver a packet to one of many hosts. Comparing to unicast transmission, in anycasting one of the endpoints of the transmission must be selected among many possible nodes. One of the most well-known technologies that applies anycast traffic is Content Delivery Network (CDN). CDN is a mechanism to transport a range of content to end users on behalf of the origin Web servers. Information is offloaded from source sites to other content servers located in different locations in the network. For each request, CDN tries to find the closest server offering the requested Web page. CDN delivers the content from the origin server to the replicas that are much closer to end-users. The set of content stored in CDNs servers is selected carefully [13]. Other applications of anycast paradigm in computer networks are Domain Name Service, Web Service, Distributed Database System, host auto-configuration, overlay network, peer-topeer (P2P) systems, sensor networks [3]. Most of previous work on anycasting concentrates on IP networks using connection-less transmission modeled as bifurcated multicommodity flows [6],[8],[13]. Since we consider a connection-oriented network (e.g. MPLS), we model the network flow as non-bifurcated multicommodity flow. Consequently, the anycast request (demand) must consist of two connections: one from the client to the server (upstream) and the second one in the opposite direction (downstream). Upstream connection sends user’s requests. Downstream connection carries the requested data. Each anycast demand is defined by client node, volume of upstream and volume of downstream demand. In contrast, a unicast demand is defined by a following triple: origin node, destination node and volume of demand. Both connections (upstream and downstream)
Design of MPLS over DWDM Architecture for Unicast and Anycast Flows
175
associated with a particular anycast demand must connect the same pair of network nodes and one of these nodes must host a server. The MPLS layer consists of nodes - MPLS routers and logical links which are formed from lightpaths. The lower DWDM layer is responsible for physical transmission - in this layer we assume only one-to-one connection which are realized logical links in upper layer. In work [1] is formulated WDM anycast routing problem (WARP). The problem consists in finding a set of lightpaths, one for each source, for anycasting messages to one of the member in the anycast destination group such that not any path using the same wavelength passes through the same link. The objective of the WARP is to minimize the number of used wavelengths.
3
Optimization Models
The network model addressed in this paper is a two-layer model: MPLS over DWDM. The lower layer - optical transport layer applying DWDM - consists of nodes represented by optical cross-connects (OXCs) that perform wavelength routing operations and optical links - fibers. The upper layer - MPLS layer includes nodes represented by MPLS routers. A set of lightpaths (wavelengths) provisioned by WDM layer forms a logical topology for the MPLS routers. i.e. lightpaths represent in MPLS layer. In Fig. 1 we show a simple example to illustrate MPLS over DWDM architecture. The logical link between LSR4 and LSR3 consists of two lightpaths (wavelengths). These two lightpaths are routed in two various paths in the DWDM layer: OXC4-OXC2-OXC3 and OXC4-OXC5OXC3 [11]. The network is modeled as two graphs consisting of nodes and links. Nodes represent network devices like routers, switches in upper layer or optical cross-connects in lower layer. Links e = 1, 2, . . . , E denote logical links of MPLS network or physical links of lower layer, e.g. fibers. We are given the cost of one capacity module on link e in upper layer, cost of one module capacity on link g in lower layer and set of connections denoted by index d = 1, 2, . . . , D. We assume that connections a = 1, 2, . . . , A are anycast connections including both upstream and downstream connections. If connection a is an upstream
Fig. 1. MPLS over WDM architecture
176
J. Gladysz and K. Walkowiak
(downstream) connection, connection tau(a) denotes the associated downstream (upstream) connection. Connections u = A + 1, . . . , D are unicast. Notice that to distinguish anycast and unicast connection we use indices a and u, respectively. Let hd denote the volume of connection d = 1, 2, . . . , D [3]. In this paper we assume that network topology of both layers, localization of server-replicas, unicast and anycast demand, set of routes in MPLS upper layer and set of lightpaths for each MPLS logical links are given. indices: d = 1, 2, . . . , D connections (directed demands) both unicast and anycast a = 1, 2, . . . , A anycast connections (directed demands) u = A + 1, . . . , D unicast connections (directed demands) p = 1, 2, . . . , Pd candidate paths for demand d e = 1, 2, . . . , E network links in upper layer q = 1, 2, . . . , Qe candidate paths for link e in lower layer g = 1, 2, . . . , G network links in upper layer constants: δedp = 1 if link e belongs to path p realizing demand d, 0 otherwise = 1 if link g belongs to path q realizing capacity of link e, 0 otherwise γgeq M size of the link capacity module in upper layer N size of the link capacity module in lower layer volume of demand d hd ke cost of one capacity module on link e in upper layer κg cost of one capacity module on link g in lower layer o(p) origin node of path p t(p) destination node of path p τ (d) index of the anycast upstream (downstream) demand associated with anycast downstream (upstream) demand d variables: = 1 if path p is chosen to realize demand d, 0 otherwise (binary) xdp zeq number of paths q selected to realize capacity of link e, 0 otherwise (integer, non-negative) number of modules M to be installed on link e ye in the upper layer (integer, non-negative) number of modules N to be installed on link g ug in the lower layer (integer, non-negative) objective min subject to
p
d
p
p
e
ke ye +
g
κg u g
xdp = 1 d = 1, 2, . . . , D
δedp xdp hd ≤ M ye e = 1, 2, . . . , E
xap o(a, p) =
p
xτ (a)p t(a, p) a = 1, 2, . . . , A
(1)
(2) (3) (4)
Design of MPLS over DWDM Architecture for Unicast and Anycast Flows
q
e
q
zeq = ye e = 1, 2, . . . , E
γgeq zeq ≤ N ug g = 1, 2, . . . , G
177
(5) (6)
The objective (1) is to minimize the cost of operating two layer. Constraint (2) guarantees that only one route can be chosen for one connection (one for unicast connection, one for anycast connection upstream and one for anycast connection downstream) in upper layer. Condition (3) states that flow in each arc can’t be bigger than its capacity. Equation (4) guarantees that two routes associated with the same anycast demand connect the same pair of nodes. (5) is a demand flow constraint, i.e. the upper link is realized by a set of lower layer paths. Condition (6) states that flow in each link in lower layer can’t be bigger than its capacity. An important aspect of the presented model is modularity. Module size M is a capacity of one wavelength. For instance, if demands of MPLS layer are presented in STM-1 size (155.52 Mbps) and the wavelength has capacity STM-64 (9.952 Mbps), than M = 64. The module size N can be interpreted as the number of wavelengths in one fiber [11]. The next model is very similar to the former one, but uses different modeling of link costs, i.e. we are given a set of link proposal and we must select only one of them. This formulation denotes the situation that many telecom operators offer price list including links with decreasing costs of unit capacity with the increase of overall link capacity. For instance, link 10 Mb/s costs 1000 USD, while link of capacity 30 Mb/s costs 2000 USD. Note that in the first model the cost of link 30Mb/s would be 3000 USD. Decreasing link cost is introduced in MPLS upper layer, in DWDM layer the physical layer is realized using modular link cost. indices (additional) l = 1, 2, . . . , Ze candidate link types for link e constants (additional) capacity of link type k for link e cel cost of link type k for link e kel variables (additional) yel = 1 if link of type l is selected for link e, 0 otherwise (binary) objective min
e
l
kel yel +
κg u g
(7)
cel yel e = 1, 2, . . . , E
(8)
g
subject to (2), (4), (6) and d
p
δedp xdp hd ≤ l
q
l
yel = 1 e = 1, 2, . . . , E
zeq =
l
cel yel e = 1, 2, . . . , E
(9) (10)
178
J. Gladysz and K. Walkowiak
Comparing to the former model we modify the objective (7) and right-hand side of (8) and (10) way of calculating capacity in links. Condition (9) assures that only one value of capacity can be selected for each link.
4
Flow Deviation
In this section we present a heuristic algorithm developed for the problem (7)(11). The main idea of the algorithm is based on the Flow Deviation method. Our algorithm based on CFD LCF Algorithm [4]. Let r be the algorithm’s iteration number. Let fr = [f1r , f2r , . . . , fEr ] denote a vector of link flows calculated according to variables xdp obtained in the iteration r of the algorithm. Furthermore, we assume that g andv denote vectors of link flows, K(fr ) denote the first part of objective function ( l kel yel ) and ke (fr ) denote metric of link e in r iteration, B denote set including connections (unicast or anycast) that have not been already processed and SR(fr ) denote set of shortest path for each connection under metric ke (fr ) in upper layer. We assume that s is the algorithm’s iteration number in lower layer. For each links of upper layer we have given set of lightpaths in lower layer. Let hs = [h1s , h2s , . . . , hGs ] be a vector of link flows calculated according to variables zeg obtained in the iteration s of the algorithm for capacity of links in upper layer. Let c and n denote vectors of link flows in lowerlayer and |c| = |n| = G, K(hs ) denote the second part of objective function ( g κg ug ) and g(hs ) denote metric of link g in s iteration, D denote set including lightpaths that have not been already processed and SR(hs ) denote set of shortest path for each connection under metric κg (hs ). We can write our algorithm using the following steps: Step 1. Set r = 1. Compute initial selection f1 and metric k1 (f1 ). For each link e set k1 (f1 ) = ke1 . Then for unicast and anycast connection compute set SR(f1 ) using metric k1 (f1 ). For anycast demands, condition (4) must be satisfied. Then, for vector f1 find capacity of links in upper layer. Condition cel ≥ fe1 must be satisfied. Go to step (3). Step 2. Calculate metric ke (fr ). For each link e set ke (fr ) = min{kel } where cel ≥ fer . Then for unicast and anycast connection compute set SR(fr ) using metric ke (fr ). For anycast demands, condition (4) must be satisfied. Step 3. Let g = fr a) Find v from g by deviating flow of connection unicast d = A + 1, . . . , D or anycast d = 1, 2, . . . , A and τ (d) to the shortest path included in SR(fr ). Path for other connections remain unchanged. Compute K(v). Go to Step (5). b) If K(v) ≤ K(g) then set g = v. c) If B = ∅ go to step 4. Otherwise set B = B − {d} for unicast or B = B − {d, τ (d)} for anycast connection and go to step 3a. Step 4. If g = fr stop Algorithm. Since the solution cannot be improved. Otherwise set r = r + 1 and fr = g and go to step (2).
Design of MPLS over DWDM Architecture for Unicast and Anycast Flows
179
Step 5. Compute initial selection h1 and metric κ1 (h1 ). For each link g set κ1 (h1 ) = κg ug . Condition N ug ≥ hg1 must be satisfied. Then for each link of upper layer compute set SR(h1 ) using metric κ1 (h1 ). Go to Step 7. Step 6. Calculate metric κg (hs ). For each link g set κg (hs ) = min{ug } where N ug ≥ hgs . Then for each links of upper layer compute set SR(hs ) using metric κg (hs ). Step 7. Let c = hs a) Find n from c by deviating flow of link of upper layer e to the shortest lightpath included in SR(hs ). Path for other links remain unchanged. Compute K(n). b) If K(n) ≤ K(c) then set c = n. c) If D = ∅ go to step 7. Otherwise set D = D − {e} and go to step 7a. Step 8. If c = hs set K(v) = K(v) + K(c) and go to Step 3b. Since the solution cannot be improved. Otherwise set s = s + 1 and hs = c and go to step 6.
5
Tabu Search Algorithm
In this section we propose a new Tabu Search (TS) heuristic algorithm applied for the CFA problem with simultaneous unicast and anycast flows in two-layer, MPLS over DWDM architecture. The idea of this method was introduced in [2]. The first Tabu-Search method for unicast and anycast flows for CFA problem in single-layer network was presented in work of authors for linear function of cost. In this algorithm we extended the problem with optimization of the lower layer. The algorithm for lower layer uses the FD Algorithm, which was described in previous point. Our Tabu Search method uses the provided initial solution as a starting point and tries to improve this solution. First, using Top-Down and SRP algorithms we obtain an initial, feasible solution [5]. We assume that r denotes the number of algorithm’s iteration. Let IS denote the initial solution, CS denotes the current solution, BS denotes the best solution and let N S denote the neighborhood which is a set of neighbors N . As a neighbor we assume the solution similar to the current solution - it means that for each current solution the neighborhood is defined as a set of solution which has different selected paths for unicast or anycast demands. Let K(CS) denote a value of the objective (1) for the current solution CS. Our algorithm has three input parameters: number of iteration R, size of tabu-list L and maximal number of iterations with no improvement to the best solution K. The length of the tabu-list is an important parameter of our algorithm and it states for how many iteration given move (selected in last iteration unicast or anycast demand) is forbidden. To implement the tabu-list we use short-term memory. To evaluate each move we use the objective (1), i.e. if we switch the path of a selected demand and calculate the new objective function, which is compared against the previous value of the K(Z). The algorithm terminates according to one of two stopping conditions: (1) R iterations were run, (2) in subsequent K iterations there was no improvement of the solution.
180
J. Gladysz and K. Walkowiak
The main idea of Tabu Search algorithm can be described using the following steps. Step 1. Find an initial solution IS. Set CS = IS and BS = IS, r = 0. Calculate K(BS) as a cost of upper and lower layer (1). Go to step 2. Step 2. Set r = r + 1. Calculate N S: for each unicast and anycast demand which are not on the tabu-list change path included in CS (for anycast both upstream and downstream connection). Then for each change of path calculate k y . Then for each link in upper layer select light-path e e e in lower layer using FD Algorithms (Steps 5 - 8 in previous section). Calculate g κg yg and objective (1). Go to Step 3. Step 3. Select N from N S with minimal value of objective (1). If K(N ) ≥ K(BS), then BS = N , K(BS) = K(N ), k = 0 and put demand in selected N on tabu-list. Otherwise set k = k + 1. Go to Step 4. Step 4. If r = R or k = K then stop algorithm. Otherwise go to Step 2.
6
Computational Results
In this section we will show results related to both models introduced above. We run tests on the 3 networks - Poland, Germany and Atlanta. On Fig. 2 is presented upper layer of Topology Atlanta. Topologies of layers are taken from the library of test instances for telecommunication Network Design [16]. As it was described in previous points the capacity of links of the upper layer is realized by lightpaths flows in the neighboring nodes of lower layer. Poland Topology [16] has 12 nodes and 36 links. Nodes 1, 2, 3, 4, 6, 7, 8, 9, 11 are connected with nodes of upper layer. Nodes 5, 10, 12 are used in lower layer as a transit nodes. To obtain optimal solutions we used the CPLEX 11.0 [10] solver. Several demand patterns were created (e.g. for Polska Topology we created 50 unicast and 9 anycast demands). Various proportions between the summary volume of unicast demands and summary volume of anycast demands were used: 80%
Fig. 2. Topology Atlanta of upper layer
Design of MPLS over DWDM Architecture for Unicast and Anycast Flows
181
Table 1. Parameters of Tested Networks Network
Nodes
Polska Germany Atlanta
9 17 26
Polska Germany Atlanta
12 20 32
Links
Unicast
Upper Layer 20 50 52 119 82 234 Lower Layer 36 74 122
-
Anycast 9 13 22 -
unicast/20% anycast and 70% unicast/30% anycast. For each demand in the upper layer there are three proposals of candidate paths. Each link of the upper layer is constructed using two paths of the lower layer. In Table 1 we show main parameters of the networks and number of demands. The first aim of experiments was to tune the Tabu Search algorithm - we found the best values of tabu-list length L and the number of iterations R. The length of tabu-list was changed from 2 to 100 and the number of iterations was changed from 10 to 50 for each network. Results for Polska topology are presented on Fig. 3 and Fig. 4. Each curve represents results obtained with a particular number of iterations. We can notice that the cost decreases with the increase of iteration number. Taking into account the execution time of the Tabu Search algorithm, we suppose than we can obtain the most favorable values of objective for R between 20 and 40 and for L no less than 30 and no more than 40 [5]. According to results we set the number of iteration and size of tabu-list on 30. The next goal of experiments was to evaluate the Flow Deviation and Tabu Search approach against optimal solutions. Various proportions of the overall volume of unicast demands and anycast demands were used. In Table 2 we report the comparison between optimal results and Flow Deviation and Tabu Search for various scenarios in terms of the number of replicas and unicast/anycast proportion. The average gap of TS to optimal results is 2.44% and average gap
Fig. 3. The cost as a function of the tabu-list size and number of iterations
182
J. Gladysz and K. Walkowiak
Fig. 4. The execution time as a function of the tabu-list size and number of iterations Table 2. Avergae Gaps of Flow Deviation and Tabu Search Number of replicas
Optimal
FD
Gap
TS
Gap
70% unicast30% anycast 2 3 4 2 3 4 2 3 4 2 3 4
46 354 50 096 44 959 49 048 43 837 47 963 46 819 50 893 45 328 49 557 44 420 48 531 80% unicast20% 47 45 44 47 45 44
129 815 398 557 948 885
51 50 48 51 50 49
329 266 930 890 591 683
8,07% 47 9,09% 46 9,41% 45 8,70% 47 9,33% 46 9,25% 45 anycast
439 007 151 749 413 601
2,34% 2,33% 2,99% 1,98% 2,39% 2,66%
8,91% 9,71% 10,2% 9,11% 10,1% 10,68%
081 767 365 775 070 162
2,02% 2,07% 2,18% 2,56% 2,44% 2,85%
48 46 45 48 47 46
of FD to optimal is 9,1%. We can notice that execution time of CPLEX package is between 300 - 2400 seconds, execution time of FD is between 5 and 10 seconds and for TS time is about 30-60 seconds.
7
Conclusions
In this paper we have addressed the problem of flows and link capacity joint optimization with simultaneous anycast and unicast flows for two-layers, based on MPLS over DWDM architecture. The main contributions of this work are: presentation of two new optimization models, optimal solutions and new heuristic algorithms based on Tabu Search and Flow Deviation method. We can notice that for tested networks the TS algorithm provides results very close to optimal solutions - the average gap to optimality is 2-3%. The algorithm based on FD method departs about 9-10% from the optimal solutions. In the future we want to examine more, larger networks for different number of routes, more number of replicas and for different value of size of module - M and N .
Design of MPLS over DWDM Architecture for Unicast and Anycast Flows
183
References 1. Din, D.: Anycast Routing and Wavelength Assignment Problem on WDM Network. IEICE Transactions on Communications E88-B(4), 3941–3951 (2005) 2. Glover, F., Laguna, M.: “Tabu Search”. Kluwer Academic Publishers, Dordrecht (1997) 3. Gladysz, J., Walkowiak, K.: Optimization of cost function in mutli-layer networks for unicast and anycast flows. In: Proceedings of the 16th Polish Teletraffic Symposium PTS 2009, pp. 45–48 (2009) 4. Gladysz, J., Walkowiak, K.: A Flow Deviation Algorithm for Simultaneously Unicast and Anycast Routing in CFA Problem with Linear Cost Function. In: MOSIS 2009, MARQ 2009, pp. 121–128 (2009) 5. Gladysz, J., Walkowiak, K.: Tabu Search Algorithm for Survivable Network Design Problem with Simultaneous Unicast and Anycast Flows. Electronics and Telecommunications 56(1), 39–45 (2010) 6. Gouveia, L., Patricio, P., de Sousa, A.F., Valadas, R.: MPLS over WDM network design with packet level QoS constraints based on ILP models. In: Proceedings of INFOCOM 2003, pp. 576–586 (2003) 7. Grover, W.: Mesh-based Survivable Networks: Options and Strategies for Optical, MPLS, SONET and ATM Networking. Prentice Hall PTR, Upper Saddle River (2004) 8. Hao, F., Zegura, E., Ammar, M.: QoS routing for anycast communications: motivation and an architecture for DiffServ networks. IEEE Communication Magazine (6), 48–56 (2002) 9. Hofmann, M., Beaumont, L.: Content networking: architecture, protocols, and practice. Morgan Kaufmann, San Francisco (2005) 10. ILOG CPLEX 11.0 User’s Manual, France (2007) 11. Kubilinskas, E., Pioro, M.: An IP/MPLS over WDM network design problem. In: Proceedings of International Network Optimization Conference, INOC (2005) 12. Park, V., Macker, J.: Anycast Routing for Mobile Networking. Published in the Proceedings of MILCOM ’99, Atlantic City, USA, pp. 1–5 (1999) 13. Peng, G.: CDN: Content Distribution Network, Technical Report (2003), sunysb.edu/tr/rpe13.ps.gz 14. Perros, H.: Connection-oriented Networks, SONET/SDH, ATM, MPLS and Optical Networks. John Wiley & Sons, Ltd., Chichester (2005) 15. Rosen, E., Viswanathan, A., Callon, R.: Multiprotocol Label Switching. Architecture. RFC 3031 (2001) 16. SNDLIB Library of test instances for Survivable fixed telecommunication Network Design (2008), http://sndlib.zib.de/home.action 17. Szymaniak, M., Guillame, P., van Steen, M.: Versatile Anycasting with Mobile IPv6. In: ACM International Conference Proceeding Series, vol. 198(2) (2006) 18. Walkowiak, K.: Modelling of MPLS over WDM anycast and unicast flow allocation problem. Advanced Simulation of Systems, 45–50 (2007) 19. Wu, J.: Theoretical and Algorithmic Aspects of Sensor, Ad Hoc Wireless and Peerto-Peer Networks, Auerbach Publications 2006 Smith, T.F., Waterman, M.S.: Identification of Common Molecular Subsequences. J. Mol. Biol. 147, 195–197 (1981)
Comparative Analysis of Sleep Mode Control Algorithms for Contemporary Metropolitan Area Wireless Networks Alexey Anisimov1 , Sergey Andreev2 , Olga Galinina3 , and Andrey Turlikov4 1
4
H&NM Motorola Software Organization, Russia [email protected] 2 Tampere University of Technology (TUT), Finland [email protected] 3 Speech Technology Center, Russia [email protected] State University of Aerospace Instrumentation (SUAI), Russia [email protected]
Abstract. Recently, broadband wireless networks, such as IEEE 802.16 [1] and LTE, receive more and more attention from the researchers. Increasing the energy efficiency of the end clients in these systems is an important research task and the evaluation of the energy efficient mechanisms remains an open problem. In this paper we consider the sleep mode control algorithm of the novel metropolitan area networking standard, known as IEEE 802.16m. Also we introduce an alternative enhanced algorithm that contains the features described by the previous standard versions. We compare the sleep mode performance under the control of both standard and proposed algorithms for different arrival flow types and QoS restrictions. A relation between the parameters of the proposed algorithm and the standard IEEE 802.16m algorithm is also established. Keywords: IEEE 802.16, wireless network, energy efficiency, sleep mode.
1
Introduction and Background
Nowadays wireless networks receive increasing research attention due to the growing number of such networks and their clients. One of the core advantages provided by the wireless technology is the mobility of the end clients. However, mobile clients have limited battery power. For that reason, contemporary wireless networks impose additional restrictions on the energy efficiency of their clients. In this paper we conduct a comparative analysis between the various modifications of the sleep mode control algorithms for IEEE 802.16 standard designed specifically to increase the energy efficiency of the end clients. IEEE 802.16 standard defines a high speed wireless access system with support for various multimedia services. The standard contains specifications of S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 184–195, 2010. c Springer-Verlag Berlin Heidelberg 2010
Comparative Analysis of Sleep Mode Control Algorithms
185
Media Access Control layer (MAC) and of Physical layer (PHY). There are several possible realizations of the PHY layer. However, the most popular one is Orthogonal Frequency Division Multiple Access (OFDMA) [2]. Originally, IEEE 802.16 [3] has been designed for fixed Subscriber Stations (SSs), but the most recent IEEE 802.16-2009 standard [1] has support for mobile clients (Mobile Stations, MSs). Therefore, power saving is one of the constitutive issues and increasing client energy efficiency is an important objective. There are several proposals to make sleep mode operation more flexible and more effective [4], [5]. These proposals can be included into the future IEEE 802.16m standard [6], which is currently being processed for standardization. The most part of existing research papers considers sleep mode defined by IEEE 802.16-2009 standard. Zhang and Fujise [7] provide an analytical model to calculate the power consumption during the sleep mode. The model takes into account both types of traffic: downlink and uplink. However, the model estimates power consumption during a sleep period only (without awake periods) and packet delay is not taken into account. In [8] the authors consider the average power consumption and the average delay under the sleep mode operation (including awake period). Moreover some information is provided about sleep mode parameters influence on the average delay and on the average power consumption. Another research direction is summarized in [9]. The authors provide full analysis of the sleep mode operation for the efficient power saving mechanism and delay-guaranteed services. They use the M/GI/1/K queueing system with multiple vacations. Moreover, optimal parameters for sleep mode operation are presented. However, this analysis considers the sleep mode operation of IEEE 802.16-2009 standard. In [10] sleep mode operation proposed by Samsung for IEEE 802.16m is analyzed. There only power consumption is considered without any delay analysis. One more option to increase client energy efficiency is scheduling mechanism improvement. It is considered in [11]. The rest of the paper is organized as follows. In Section 2 we detail the sleep mode operation as described by various versions of IEEE 802.16 standard, including the proposed algorithm. Section 3 introduces the simulation methodology we follow to assess the performance of the sleep mode control algorithms. The obtained simulation results are presented in Section 4. Finally, Section 5 concludes the paper.
2
Sleep Mode Description
The most recent version of IEEE 802.16 standard [1] defines two energy efficient operation modes, namely, sleep mode and idle mode. Idle mode is used by the client’s MS in between data transmission sessions. By contrast, sleep mode is used during a data transmission session. In the idle mode an MS closes the network connection, which should be re-established to proceed with data transmission and/or reception. In what follows we concentrate on the sleep mode, whereas the idle mode is considered in [12]. The main property of the sleep mode operation is that an MS alternates listening and sleep periods with predefined durations. During a sleep period the
186
A. Anisimov et al.
MS temporarily switches off its radio interface and, consequently, reduces own energy consumption. The set of parameters for the sleep mode control algorithm is termed a Power Saving Class (PSC). According to the standard there are three types of PSC. PSC of type I defines the sleep mode with the variable sleep window. This type of PSC is recommended for Best-Effort (BE) and NonReal-Time Variable Rate (NRT-VR) connections and it specifies the following parameters: – Listening window size, L. – Initial sleep window size, S1 . – Maximum sleep window size, Smax . PSC of type II defines sleep mode operation with the constant sleep window size and is recommended for Unsolicited Grant Service (UGS) and Real-Time Variable Rate (RT-VR) connections. As such, the only parameters of this type of PSC are: – Listening window size, L. – Sleep window size, S. PSC of type III specifies a single sleep period after which an MS resumes its normal active operation. An example operation of the sleep mode for IEEE 802.16-2009 is given in Fig. 1. In order to initiate the sleep mode an MS sends a request to the Base Station (BS). In its response the BS specifies the time instant starting from which the MS may enter the sleep mode. During the listening periods the BS notifies the MS about the buffered data, if any, destined to this MS. If the BS outgoing buffer is empty, the MS may continue with the next sleep period. Therefore, for the PSC of type I the following sleep window size is given by: Si = min(2 · Si−1 , Smax ),
(1)
where Si−1 is the size of the previous sleep window and Smax is the size of the maximum sleep window. When BS notifies the MS about the buffered data, the MS exits the sleep mode and the downlink data transmission starts. In case of PSC of class II data transmission may take place during the listening period without explicit termination of the sleep mode by an MS. As such, the MS exits the sleep mode when the listening period duration is insufficient to transmit all the pending data packets. Today the novel version of the standard IEEE 802.16m is nearly being completed. It will incorporate several important extensions and amendments, including the advanced sleep mode control. An example operation of the modified sleep mode control algorithm is presented in Fig. 2. The operation time is broken into the sleep cycles. Each cycle comprises a listening period and a sleep period with the exception of the first cycle, which contains only a sleep period. Denote the duration of the i-th sleep cycle by Ci and the durations of listening and sleep periods by Li and Si , respectively. For PSC of type I the duration of the sleep
Comparative Analysis of Sleep Mode Control Algorithms
187
Sleep mode deactivation
1
2
3
4
5
6
7
9 10 11 12 13 14 15 16 17 18 19
8
Fig. 1. IEEE 802.16-2009 sleep mode operation example
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16 17 18
Fig. 2. IEEE 802.16m sleep mode operation example
cycle is variable. The duration of the following sleep cycle is calculated exactly as in the legacy IEEE 802.16-2009 standard. One major improvement in the sleep mode operation of IEEE 802.16m is that the data transmission may occur without explicit termination of the sleep mode regardless of the PSC type. Therefore, the duration of the listening period increases either until all the pending packets are transmitted to the particular MS, or until the sleep cycle ends. In case of PSC of type I the duration of the sleep cycle is reset to its initial value of C1 . The MS enters the sleep mode either when BS notifies it that the outgoing packet buffer is empty, or after a time-out value T expires after the last data packet transmission. Below we propose and evaluate an alternative sleep mode control algorithm as a possible candidate for consideration by IEEE 802.16m standard. This algorithm is a combination of those defined by IEEE 802.16-2009 and IEEE 802.16m versions of the standard. An example operation of the proposed algorithm is shown in Fig. 3. On the one hand, the main difference between the new algorithm and the legacy one of IEEE 802.16-2009 is that an MS does not terminate
188
A. Anisimov et al.
the sleep mode during the reception of data packets. On the other hand, the difference from the IEEE 802.16m sleep mode control is that there is no explicit division into the sleep cycles. According to the IEEE 802.16m sleep mode control algorithm an MS always knows when the following sleep cycle starts. In the proposed algorithm the start time of the next sleep cycle is unknown. This is explained by the fact that for the IEEE 802.16m algorithm the data transmission time is included into the overall sleep cycle duration, whereas in the proposed algorithm the respective time is not included.
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
Fig. 3. Proposed IEEE 802.16 sleep mode operation example
Clearly, the sleep mode operation not only decreases the power consumption of an MS, but also increases the data packet transmission delay. Therefore, one should account for both performance metrics, when analyzing the efficiency of the sleep mode operation. Several metrics may be used to assess the energy efficient performance of the system. Below we consider two main options. Firstly, we account for the number of bits that may be received successfully by spending one Joule of energy. This value is measured in bits per Joule [13]. Additionally, we consider the reverse value, that is, the number of Joules to receive a bit reliably. Secondly, we account for the energy efficiency coefficient [14]. This coefficient shows, which part of total operation time an MS resided in the sleep state and may be calculated as follows: η = lim
t→∞
TS , TS + TA
(2)
where η is the energy efficiency coefficient, TS is the amount of time the MS spent in the sleep state and TA is the amount of time it spent in the active state. In order to simplify the subsequent derivations below we concentrate on the energy efficiency coefficient for the system energy efficiency evaluation. However, the considered model may be easily extended to allow for the consideration of
Comparative Analysis of Sleep Mode Control Algorithms
189
the actual energy efficiency value. To perform this, it is sufficient to account for the packet length value. Considering the QoS requirements predefined for a particular data flow, one may formulate several optimization problems. We consider a practical optimization task that accounts only for the restriction on the mean packet delay: Maximize fη (S1 , Smax , L, T ) under the restriction fD (S1 , Smax , L, T ) ≤ Dmax , where Dmax is the mean packet delay. However, some data flows are also sensitive to the packet delay variation (jitter) at the receiver side. As such, the above optimization task could be extended to account for the explicit restriction on the jitter value. There are also several alternative optimization task formulations. For instance, instead of the mean packet delay the maximum delay value could be subject to a restriction, or the probability of the event that the delay exceeds some threshold value. One may establish the maximum energy efficiency coefficient as: ηmax = 1 − ρ,
(3)
where ρ is the system load, that is the stationary proportion of time during which the server is busy.
3
Simulation Methodology and Analysis
In this section we detail the system model used for the development of the IEEE 802.16m MAC simulator. The model is based on the following assumptions. Assumption 1. Data transmission between the BS and a single MS is considered. Assumption 2. The BS has an outgoing data packet buffer of infinite size. Assumption 3. Only the downlink data flow is accounted for (from the BS to the MS). Assumption 4. Data packets are served by the BS in the order of their arrival. Assumption 5. The transmission time of a data packet takes exactly one frame. Assumption 6. The model accounts for two power consumption levels. Active state consumes the power PA and sleep state consumes the power PS . Below we discuss the assumptions of the simulation methodology. In practice the operation of an MS influences the work of the other MSs. However, this influence is dependent mostly on BS scheduling algorithms. Accounting for the
190
A. Anisimov et al.
fact that the scheduling algorithm is out of scope of the standard, there are numerous proposals of such an algorithm in the research literature, such as [15], [16] and [17]. All these algorithms are based on the particular set of input parameters. In order to reduce the number of parameters in the developed simulation model it was decided to focus on the system with one BS and one MS. The service discipline is FIFO and the transmission time of a packet equals to a frame duration for the sake of simplicity. Accounting for the Assumption 5 we rewrite expression (3) as: η ≤ ηmax = 1 − λ,
(4)
where λ is the mean arrival rate measured in data packets per frame. Below we introduce a technique to numerically evaluate the mean packet delay and energy efficiency coefficient for the proposed sleep mode control algorithm. This technique uses the regenerative approach from [18]. A regeneration cycle begins when time-out starts, conditioning on the fact that there was no data transmission during this time-out. A cycle ends when BS buffer empties. As such, there is at least one data packet transmission per regeneration cycle. For more details the reader is referred to our previous work [19]. 3.1
Mean Packet Delay Analysis
The value of the mean packet delay may be established by the following expression: E[W ] =
E[T 2 ] λ · E[X 2 ] + + Wt , 2 · (1 − ρ) 2 · E[T ]
(5)
where λ is mean arrival rate, E[X] is the service time, ρ is the system load, E[T ] is the estimated time interval between two consecutive data packet transmissions, which are separated by at least one sleep period and E[T 2 ] is its second moment. Wt is the transmission delay of a packet. The values of E[T ] and E[T 2 ] may be obtained as follows: E[T ] =
∞ i=1
E[T ] = 2
t
Π0i−1 · (1 − Π0L+Si ) · ti , and ∞
t
Π0i−1 · (1 − Π0L+Si ) · t2i ,
(6)
i=1
where ti stand for the possible duration of a regeneration cycle, that is t0 = 0, t1 = L + S1 , t2 = t1 + L + S2 , etc. Here Π0ti is probability that there are no packet arrivals during ti . In the case of Poisson arrivals it equals to: Π0ti = e−ti ·λ .
(7)
Comparative Analysis of Sleep Mode Control Algorithms
3.2
191
Energy Efficiency Coefficient Analysis
The value of the energy efficiency coefficient may be established by the following expression: TS TA −1 η= = (1 + ) = (1 + TS + TA TS
E[m] + ∞ i=1
∞ i=1
Si ·
t
i · Π0i−1 · (1 − Π0L+Si )
t Π0i−1
· (1 −
Π0L+Si )
)−1 , (8)
where E[m] is the mean number of packets transmitted per regeneration cycle.
4
Simulation Results
Poisson arrival flow. Consider Poisson arrival flow as an example. Fig. 4 shows the dependence of the energy efficiency coefficient on the mean data packet delay restriction for two sleep mode control algorithms. We notice that the two algorithms demonstrate nearly the same values of the energy efficiency coefficient. We, therefore, conclude that the analysis from our previous work [19] may be applied for both sleep mode control algorithms. However, for the case of the IEEE 802.16m algorithm it is not straightforward to obtain the optimal parameters.
η
0.85
0.8 IEEE 802.16, proposed IEEE 802.16m η
0.75
max
0.7
50
100 D max , ms
150
Fig. 4. Energy efficiency coefficient for Poisson arrival flow
200
192
A. Anisimov et al.
Below we introduce a simple expression to derive the optimal parameters of the IEEE 802.16m algorithm as a function of the optimal parameters of the proposed algorithm: ∞ (Se + 1) · λi+1 , C= (9) i=0
where Se is the optimal duration of the sleep period for the proposed algorithm obtained as shown in [19] and C is the optimal duration of the sleep cycle for the IEEE 802.16m algorithm. HTTP arrival flow. In order to compare the considered versions of the sleep mode control algorithms for different traffic arrival flows, we implemented the HTTP flow model from [20]. Fig. 5 demonstrates the dependence of the energy efficiency coefficient on the mean data packet delay restriction for HTTP arrival flow. As we can see, the proposed sleep mode control algorithm outperforms the standard IEEE 802.16m algorithm. However, increasing the mean delay restriction we notice the convergence between the two algorithms. We note that HTTP belongs to the BE QoS class, which imposes no limitations on the QoS parameters. Therefore, sleep period durations (and, consequently, the delay) may be considerably high. At the same time, the traffic of this QoS class uses the residual bandwidth after scheduling all the other higher-priority QoS classes. Consequently, if MS takes too long sleep periods, the amount of the unused residual bandwidth grows and, as such,
0.9
η
0.85
0.8
IEEE 802.16m IEEE 802.16, proposed ηmax
0.75 50
100 D max , ms
150
Fig. 5. Energy efficiency coefficient for HTTP arrival flow
200
Comparative Analysis of Sleep Mode Control Algorithms
193
system spectral efficiency drops. As a consequence, the economical attractiveness of the system decreases. By contrast, the proposed algorithm allows for the increase in the energy efficiency coefficient of end clients and at the same time accounts for the service provider interests. VoIP arrival flow. This flow type imposes a restriction not only on the data packet delay, but also on the jitter value. Accounting for the jitter restriction, the sleep mode control algorithm of IEEE 802.16m standard provides higher energy efficiency coefficient than the proposed algorithm.
5
Conclusions
In this paper we proposed a novel sleep mode control algorithm that is a combination of the algorithms proposed in IEEE 802.16-2009 and in IEEE 802.16m standards. Also we introduced a technique to evaluate the energy efficiency of the sleep mode operation accounting for the QoS restrictions. Additionally, we compared the two considered control algorithms for different traffic arrival flow types. We established that for the case of Poisson arrival flow the performance of the two algorithms is approximately the same. Therefore, the method to numerically analyze the performance of the sleep mode described in our previous work [19] may also be applied for the evaluation of the energy efficiency and the mean packet delay for the novel IEEE 802.16m standard. Moreover, a simple relationship between the optimal parameters of the proposed and IEEE 802.16m sleep mode control algorithms was established. Further, we conducted the comparative analysis of the two considered sleep mode control algorithms for the case of the bursty traffic. As follows from our results, for the case of HTTP traffic the proposed algorithm demonstrates the higher value of the energy efficiency coefficient. In particular, the highest gain of the proposed algorithm is noticed for the sufficiently small values of the mean packet delay restriction. Increasing the value of the mean delay restriction, the energy efficiency coefficients of the two algorithms converge and, in the end, become equal. We also note that HTTP traffic generally belongs to the best effort QoS service class and, as such, has no explicit QoS parameters. At the same time, the use of the high sleep mode durations leads to the decrease in the system spectral efficiency, which contradicts the service provider interests. Therefore, the proposed algorithm accounts for the interests of the end clients (in particular, the reduction in their power consumption and the increase in their operation time), as well as for the interests of the service providers (in particular, preserving the high value of the spectral efficiency). We also established that the use of the proposed algorithm for the VoIP arrival flow type is impractical, since IEEE 802.16m sleep mode control algorithm demonstrates higher energy efficiency coefficient for this case. We remind that this is due to the fact that VoIP traffic has strong restriction on the jitter value.
194
A. Anisimov et al.
Summarizing, we conclude that the proposed sleep mode control algorithm may be used for the bursty traffic without explicit restriction on the jitter value, or when this restriction is rather flexible.
Acknowledgments This work is supported by the Russian Foundation for Basic Research (projects # 10-08-01071-a and # 08-08-00403-a), as well as by the Branch of Nano- and Information Technologies of Russian Academy of Sciences (project 2.3)
References 1. IEEE 802.16-2009. IEEE Standard for Local and metropolitan area networks (May 2009) 2. WiMAX System Evaluation Methodology, Version 2.1, WiMAX Forum (July 2008) 3. IEEE 802.16-2004, Part 16: Air Interface for Fixed Broadband Wireless Access Systems (October 2004) 4. Sleep Mode Operation for IEEE 802.16m, C802.16m-08/721r1 (July 2008) 5. Sleep Mode for IEEE 802.16m System, C802.16m-08/688r1 (July 2008) 6. The Draft IEEE 802.16m System Description Document, IEEE 802.16m-08/003r5 (October 2008) 7. Zhang, Y., Fujise, M.: Energy management in the IEEE 802.16e MAC. IEEE Communications Letters 10(4), 311–313 (2006) 8. Han, K., Choi, S.: Performance analysis of sleep mode operation in IEEE 802.16e mobile broadband wireless access systems. IEEE VTC 3, 1141–1145 (2006) 9. Park, Y., Hwang, G.U.: An efficient power saving mechanism for delay-guaranteed services in IEEE 802.16e. IEEE VTC (2007) 10. Baek, S., Son, J.J., Choi, B.D.: Performance analysis of sleep mode operation for IEEE 802.16m advanced WMAN. In: MACOM (2009) 11. Kim, J.Y., Kwon, T., Cho, D.-H.: Resource allocation scheme for minimizing power consumption in OFDM multicast systems. IEEE Communications Letters 11(6), 486–488 (2007) 12. Kim, B., Park, J., Choi, Y.-H.: Power saving mechanisms of IEEE 802.16e: sleep mode vs. idle mode. In: Min, G., Di Martino, B., Yang, L.T., Guo, M., R¨ unger, G. (eds.) ISPA Workshops 2006. LNCS, vol. 4331, pp. 332–340. Springer, Heidelberg (2006) 13. Himayat, N., et al.: Improving client energy consumption in 802.116m, C802.16m09/107r6 (January 2009) 14. Kong, L.: Performance analysis and optimization for MAC-layer IEEE 802.16e power saving mechanism. Master’s thesis, Hong Kong University of Science and Technology (2007) 15. Wan, L., Ma, W., Guo, Z.: A cross-layer packet scheduling and subchannel allocation scheme in 802.16e OFDMA system. In: IEEE Wireless Communications and Networking Conference, vol. 1, pp. 1865–1870 (2007) 16. Singh, V., Sharma, V.: Efficient and fair scheduling of uplink and downlink in IEEE 802.16 OFDMA networks. In: IEEE Wireless Communications and Networking Conference (2006)
Comparative Analysis of Sleep Mode Control Algorithms
195
17. So-In, C., Jain, R., Tamimi, A.K.: Scheduling in IEEE 802.16e mobile WiMAX networks: Key issues and a survey. IEEE Journal on Selected Areas in Communications 27(2), 156–171 (2009) 18. Crane, M.A., Lemoine, A.J.: An Introduction to the Regenerative Method for Simulation Analysis, Berlin, Heidelberg, New York (1977) 19. Anisimov, A., Andreev, S., Turlikov, A.: IEEE 802.16m energy-efficient mode operation analysis with mean delay restriction. In: ICUMT (2009) 20. Traffic Model for 802.16 TG3 MAC-PHY Simulations. IEEE 802.16.3c-01/30r1 (March 2001)
Determining Normalized Measure of Dispersion for Evaluating the Performance of IEEE 802.11 Faisal Iradat and Sayeed Ghani Faculty of Computer Science, Institute of Business Administration, Karachi Pakistan {firadat,sghani}@iba.edu.pk
Abstract. In this paper we attempt to establish patterns for the Normalized Measure of Dispersion in order to compute the total average end-to-end packet delay in IEEE 802.11 wireless local area network. In order to achieve this, we adopt a reverse engineering approach in which the normalized measure of dispersion is used for determining variation in service times which when applied to the traditional M/G/1 queueing system points toward developing a complete model based on this normalized measure of dispersion and offered load dependency study. From this analysis we have driven nonlinear equations through best fit model for computing the average packet delay. Our analysis can further be extended by deriving nonlinear equations with network parameters for accurately modeling IEEE 802.11 DCF. Keywords: Coefficient of Variation, Delay, M/G/1, IEEE 802.11 DCF, Simulation.
1 Introduction Popular for its ease of deployment and lower costs, IEEE 802.11 based wireless local area networks (WLAN) are one of the most researched upon and widely used wireless networks. The IEEE 802.11 defines two channel access mechanisms, the Distributed Coordination Function (DCF) and the Point Coordination Function (PCF). In DCF, a mobile station ceases to transmit packets until it senses the channel idle. The DCF mechanism uses the CSMA/CA protocol with binary exponential backoff algorithm for contention based channel access. In this paper we limit our investigations to DCF only, as it is the most widely accepted mechanism by the research community. Existing work on the performance of IEEE 802.11 DCF has been limited primarily to throughput [1]. Recently the focus has shifted to analyzing the performance in terms of average end-to-end packet delay [2],[3],[4]. However due to the complexity and inaccuracies in these models it has lead us to further investigate the performance of IEEE 802.11 DCF. As an example, [2] and [3] have extended the existing work of [1] to analyze the average end-to-end packet delay performance of IEEE 802.11 DCF, however recent extensive studies [5] reveals that these models are inaccurate and also not conforming to each other. In [4] it has been shown that as the channel utilization is gradually increased to 100% the average end-to-end packet delay still remains S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 196–206, 2010. © Springer-Verlag Berlin Heidelberg 2010
Determining Normalized Measure of Dispersion
197
under 5 secs which is much lower than expected [6]. A detailed overview of the related work can be found in [5]. To improve the results, we have taken the average packet processing rate equation from [2] and used it in our model for computing total average end-to-end packet delay provided that the network is in saturation conditions. In this paper we compare the results of our model with Pham, Perreau, and Jayasuria [2]. In order to develop a model for computing the delay performance of IEEE 802.11 DCF, we have adopted a reverse engineering approach for the analysis. The advantage of this approach is that performance theory can be developed on the basis of results generated through simulations. The resulting model can then be used for accurately measuring performance. Our model is summarized below. Each node in the network is modeled as a traditional M/G/1 queue. To compute the average end-to-end packet delay we take the average packet processing rate equation from [2], and express the second moment of the service rate as a function of coefficient of variation , and average service time . We then apply these quantities to the waiting time equation of M/G/1 to determine average end-to-end packet delay. Now by varying in the range (0.0001 to 1.0), a set of values for average end-to-end packet delays are generated which are then compared with the actual simulation results. For an exact match, the value of and corresponding offered load are recorded. This process is repeated at different loads for packet sizes of 1000 and 1500 bytes, as well as with varying number of nodes. On plotting versus we find that the normalized measure of dispersion of and offered load have a mutual dependency. This service time distribution dependency results in a pattern to which we apply a best-fit-model. By this model fitting process we get a set of nonlinear equations which can be solved by varying the offered load for computing generic values of . We then use the computed , in the waiting time equation of the M/G/1 queuing system for computing the total average packet end-to-end delays. The results of our model have been extensively verified through simulations and are found to be better than those in [2]. However the results can be further improved by deriving equations in terms of network parameters in the future. The rest of the paper is organized as follows. In section 2 we provide all the necessary background for developing the analytical model. In section 3 we verify and present our results by comparison with simulation and finally conclude our paper in section 4.
2 Preliminaries In this section we present the model developed for determining the performance of IEEE 802.11 DCF. In our model we assume that each node behaves like a traditional / /1 queue. The network topology used consists of nodes surrounding a center node to which all nodes send data. Packets arrive according to a Poisson process with an arrival rate of and service time follows a general distribution with average packet processing rate . The normalized offered load of the system can now be expressed as ⁄ . To ensure saturation conditions we assume that the queue is never empty. For channel reservations RTS and CTS packets are exchanged.
198
F. Iradat and S. Ghani
2.1 Packet Processing Rate Derivation To determine the average packet processing rate we rely on Pham’s model [2] which is summarized below. Pham’s model complements Binachi’s model [1]. In [1], Bianchi has modeled the exponential backoff process of IEEE 802.11 DCF using a very simple analytical model. The key assumption in Bianchi’s model is that the retransmission suffered by a packet is modeled as constant and independent collision probability . A node in transmitting mode can be easily modeled if the probability that a node transmits in a given slot is known. In IEEE 802.11 DCF, the time after Distributed Inter Frame Space (DIFS) is slotted and a node transmits only at the beginning of each slot conditioned on its backoff timer value reaching zero. The backoff timer is generated from the range 0, 1 , where is the contention window size and depends on past failed transmissions. Details of IEEE 802.11 DCF mechanism and the exponential backoff algorithm can be found in [7]. To derive , consider a situation where the backoff timer for a particular node has decremented to zero. Regardless of the contention stage the node is in, the node transmits with probability under the assumption that the packet collides with a constant and independent probability . From [1], can be written as follows: τ
2 1
2p ⁄ 1
2p W
1
pW 1
2p
(1)
Now if we assume a situation in which nodes are contending for channel access and at least one node from 1 transmits in the same slot. This results in collision which can be expressed as follows: p
1
1
τ
(2)
Equations (1) and (2) are nonlinear with two unknowns, and . One can easily derive the values of and by applying numerical analysis techniques for different values of and . The values for and are taken from [7]. From [2], the average packet processing rate can now be expressed as follows: µ
τ 1
⁄σ
τ
(3)
Equation (3) can be described as a given node in saturation condition, successfully transmitting a packet in a given slot . Where is the average slot [2] and expressed as follows: σ
1
P N σ
P N P N T
P N 1
P N T
Following are the states of a slot: Table 1. States of Slot Idle slot Non-Idle slot
1 1 Collision
Successful
(4)
Determining Normalized Measure of Dispersion
199
As each node in the network transmits with the probability τ, P N and P N can be written as follows: P N
Nτ 1
⁄P N ; P N
τ
1
1
τ
is the probability that there is at least one transmission in a slot time, is the probability that exactly one station from successfully transmit on the is the average time when the channel is busy due to a successful channel, is the average time of collision. transmission, and Here
T
T
SIFS δ T DIFS δ T
SIFS
T
δ
DIFS
T
SIFS
δ
δ
T
(5)
(6)
, and are propagation delay, packetization delay and Here parameters , Short Inter Frame Space respectively. All quantities in (5) and (6) are expressed in the same unit. Having the complete set of equations we can now compute the average end-to-end packet delay . Pham [2] used / /1/ queue for modeling nodes in order to evaluate the performance of IEEE 802.11 DCF, where is the maximum number of packets in the system. In this queueing system packets arrive at the nodes according to a Poisson process and the service times are exponentially distributed. The following equations derived in [2] are used for computing the total average end-to-end packet delay :
⁄ 1
;
1
⁄
1
and 1 are average number of packets in the queue (One can easily derive through / /1/ queueing analysis as arrivals are Poisson) the equation for and effective packet arrival rate (packets that are not dropped) respectively, and ⁄ . 2.2 The Queueing Model To improve Pham’s [2] result, we change the queueing model and develop an analysis by employing a reverse engineering approach. In our model each node behaves like a traditional / /1 queue where packets arrive according to a Poisson process and service times have a general distribution. The reason for modeling nodes with a traditional / /1 queue is due to the fact that it gives rise to a solution that is better than / /1 queueing system and also approximates better at all points in time [8]. By using a reverse engineering approach and developing a model from it, we hope that it would provide a basis for determining a better service time distribution. However by modeling each node in the network as a traditional / /1 queue makes the analysis more difficult, due to the computation required of the second moment of the service time . The general method for computing the variance is by subtracting the average service time from each service time score, however due to the
200
F. Iradat and S. Ghani
unavailability of service time scores we have adopted a much simpler approach for computing variation in service time, which is the normalized measure of dispersion for service time distribution (or coefficient of variation, ). As each node is modeled as an / /1 queue, to compute performance we rely on the waiting time equations derived in [8]. Using the Pollaczek-Khinchin (P-K) formula in [8], we can express the total time that a packet has to wait in queue and in service as follows: T
X
λX
2 1
(7)
ρ
1⁄ µ Where In IEEE 802.11, the queue length for each node is finite (50 packets), hence we , packets which are not dropped from the queue, and ρ replace λ with 1 ⁄ . Equation (7) can now be rewritten as follows: (offered load) with 1 T
X
λ 1
p
X
2 1
λ 1
(8)
⁄µ
p
However, to determine the service time variation, we express X as a function of coefficient of variation and average service time (X ) which is as follows: X Substituting T
C X
in equation (8) we get X
λ 1
p
C X
2 1
λ 1
p
⁄µ
(9)
From equation (9), we can now generate a set of values for average end-to-end packet delay by varying from 0.0001 to 1.0 and comparing it with simulation results in order to establish the normalized measure of dispersion for service time distribution and offered load dependency study. We then best-fit a model to the pattern (dependency) and derive a set of nonlinear equations for different packet sizes, offered load and nodes.
3 Model Validation and Simulation Results To verify our findings, we have conducted extensive simulations in Qualnet [9]. Our simulation model consists of nodes topologically arranged in a circle around one node. Each node on the circle sends packets to the center node at a variable bit rate and saturation conditions are ensured i.e. the queue in never empty. All nodes are at a transmission range of 250 from the center node spread over an area of 400 400 . The value of the network parameters used in both theory and simulations are taken from [7]. All simulations results have been obtained with 95% confidence level with 3 repetitions with different seeds. In order to further strengthen the validity of our study we have conducted simulations for two different packet sizes, 1000 bytes and 1500 bytes.
Determining Normalized Measure of Dispersion
201
3.1 Normalized Measure of Dispersion and Offered Load Pattern In figures 1 and 2 we show on a linear scale the mutual dependency of the normalized measure of dispersion for service time distribution versus the offered load for packet size of 1000 and 1500 bytes respectively. We also observe that the curve for different nodes resembles an exponential curve.
Fig. 1. Packet size of 1000 Bytes
Fig. 2. Packet size of 1500 Bytes
In figures 3 and 4 we see a similar trend at different data rates and packet sizes, which proves that the the normalized measure of dispersion and offered load dependency study can be used for accurately computing the saturation performance of IEEE 802.11 DCF.
202
F. Iradat and S. Ghani
Fig. 3. Varying data rates for packet size of 1000bytes
Fig. 4. Varying data rates for packet size of 1500bytes
Our main objective is to show that normalized measure of dispersion and offered load have a mutual dependency. In the future if such a model is proposed based on this study one can determine accurate saturation performance of IEEE 802.11 DCF. 3.2 Average End-to-End Packet Delay As a simple example to prove the validity of this dependency, we show that if a single exponential fit is applied to all the curves in figure 1 and similarly in figure 2, where the exponential fit best approximates a curve for a particular value of offered load we see that the results are quite accurate in comparison to simulation as shown in figures 5, 6, 9, 10 and 11. In figures 7 and 8 we notice that the results are less accurate. This pattern has been observed in our results, that for smaller packet sizes (e.g. 1000 Bytes) the accuracy of the result reduces at very high loads (e.g. =0.95, 1.0). This study can be extended by expressing coefficients of the exponential fit in terms of
Determining Normalized Measure of Dispersion
203
network parameters, resulting in a model that will accurately determine the saturation performance of IEEE 802.11 DCF. Details of model fitting is described below. To determine average end-to-end packet delay we apply a single exponential fit to all the curves in figure 1 and similarly in figure 2. The following coefficients a and b are determined: (10) Value of is from the range (0.85 - 1.0 with an interval of 0.5) for case 1 and from this range (0.9 - 1.0 with an interval of 0.5) for case 2, as these are the offered loads in which the system is in saturation. Case 1(1000 Bytes) – coefficients with 95% confidence bounds and RMSE = 0.0399: 1.594
006
6.572
17.32
005, 3.846
006 ;
18.96, 15.68
The values in the bracket specify the lower and upper bound regions. Case 2(1500 Bytes) – coefficients with 95% confidence bounds and RMSE = 0.03668: 6.763
005
5.79
15.74
005, 1.932
006
17.78, 13.71
Substituting the generic values of C derived in the earlier section in equation (9), we then compute the average end-to-end packet delay. Figures 5 to 8 show the average end-to-end packet delay curves for packet size of 1000 bytes with varying load (refer to case 1).
Fig. 5. Average end-to-end packet delay (Packet size = 1000bytes and ρ=0.85)
204
F. Iradat and S. Ghani
Fig. 6. Average end-to-end packet delay (Packet size = 1000bytes and ρ=0.9)
Fig. 7. Average end-to-end packet delay (Packet size = 1000bytes and ρ=0.95)
Fig. 8. Average end-to-end packet delay (Packet size = 1000bytes and ρ=1.0)
Determining Normalized Measure of Dispersion
205
Figures 9 to 11 show the average end-to-end packet curves for a packet size of 1500bytes with varying load (refer to case 2):
Fig. 9. Average end-to-end packet delay (Packet size = 1500bytes and ρ=0.9)
Fig. 10. Average end-to-end packet delay (Packet size = 1500bytes and ρ=0.95)
Fig. 11. Average end-to-end packet delay (Packet size = 1500bytes and ρ=1.0)
206
F. Iradat and S. Ghani
Except for cases where the exponential fit is not so accurate, we have improved significantly the results of [2] in overall. Substituting the values of and in equation (10) and varying the offered load for each case, we are able to derive the generic values of . Our model is at a very preliminary stage, however it provides direction for accurately modeling IEEE 802.11 DCF using a simple approach.
4 Conclusion In this paper we present an alternative methodology as compared to [2] to evaluate the performance of IEEE 802.11 DCF in terms of average end-to-end packet delays in saturation conditions. We have used a reverse engineering approach to develop a model for computing average packet delays. Our main contribution is showing that normalized measure of dispersion for service time distribution and offered load have a mutual dependency. This dependency results in a pattern to which we apply a best fit model for developing equations which can be used for calculating average end-to-end packet delays through a simple method. Our analytical model has been extensively verified using simulations and shows significant improvement in results.
References 1. Bianchi, G.: Performance Analysis of the IEEE 802.11 Distributed Coordination Function. IEEE Journal on Selected Areas in Communication, vol 18(3m), 535–547 (2000) 2. Pham, P., Perreau, S., Jayasuriya, A.: Performance Analysis of the IEEE 802.11 DCF. In: IEEE Asia-Pacific Conference on Communications (2005) 3. Vardakas, J.S., Papapanagiotou, I., Logothetis, M.D., Kotsopoulos, S.A.: On the End to End Delay Analysis of the IEEE 802.11 Distributed Coordination Function. In: IEEE International Conference on Internet Monitoring and Protection (2007) 4. Linfang, D., Yantai, S., Haiming, C., Maode, M.: Estimation and Application of End-to-End Delay Under Unsaturation Traffic in Wireless and Adhoc Networks. In: 2nd International Conference on Mobile Technology Applications and Systems (2005) 5. Iradat, F., Ghani, S.: Limitations of Using Existing Queuing Models for Modeling IEEE 802.11 DCF. To appear in International Conference on Computer, Electrical, and Systems Science, and Engineering (ICCESSE 2010), Paris, France (2010) 6. Tickoo, O., Sikandar, B.: Queuing Analysis and Delay Mitigation in IEEE 802.11 Random Access MAC based Wireless Networks. In: IEEE INFOCOM (2004) 7. IEEE 802.11 Working Group, IEEE Std. 802.11-1999, Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications, IEEE Std. (1999) 8. Betsekas, D., Gallager, R.: Data Networks, 2nd edn. Prentice-Hall Inc., Englewood Cliffs (1992) 9. Scalable Network Technologies. Qualnet Simulation 5.01, http://www.scalablenetworktechnologies.com
Development of a System to Promote Eco-Driving and Safe-Driving Ryosuke Ando1, Yasuhide Nishihori1, and Daisuke Ochi2 1
Research Department of TTRI (Toyota Transportation Research Institute), Wakamiya-cho 1-1, Toyota, Aichi 471-0026, Japan [email protected] 2 Trans Field, Inc.
Abstract. This study aims to develop a system by applying the mobile information and communication technology to promote eco-driving and safe- driving. A probe-person unit developed by author et al. is changed to be functional with the above purposes through adding some devices. Then the system is proposed and developed to network the operators and users. On the basis of the information provision through the mobile phone and website, the social experiments for the promotion of the eco-driving and the safe-driving are implemented. Keywords: Service and application, Eco-driving, Safe-driving, Green mobility and Probe-person.
1 Introduction 1.1 Background and Aim In Japan, 13 cities had been selected as the Environmental Model Cities by the central government by January of 2009. Toyota City is one of them. Toyota City is the city where the Toyota Motor Corporation was founded and located. Most of the residents drive cars everyday and the car-use shares the largest percentage of all travel modes. Hence, in order to approach to the goal set in the Action Plan of Toyota Environmental Model City, the eco-driving had been treated as one of the most important and effective measures. To promote the eco-driving is a very hard work. Up to now, the most widely used approaches may be just calling the people’s attention for the climate change problem/the global environment issue or providing the information on the reduced amount of the fuel consumed when making eco-driving. However, there is still no obvious effect in Japan. We think that one reason is because the drivers do not know what kinds of effects evidently. Thus we proposed our idea to the Ministry of Economy, Trade and Industry (METI) of Japan. And then we developed a system to promote the eco-driving by considering the promotion of the safe-driving under the funding from the METI. In this paper, the system we developed is introduced and its expected effects are reported. S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 207–218, 2010. © Springer-Verlag Berlin Heidelberg 2010
208
R. Ando, Y. Nishihori, and D. Ochi
A description of data collection unit is given in Section 1.2 as an introduction. Chapter 2 is the outline of the system. Chapter 3 is the results of the social experiment. Chapter 4 is the summary and conclusions. 1.2 Description of Data Collection Unit A unit called BCALs (Behavioral Context Addressable Loggers in the Shell, refer to Fig.1) was first developed by Trans Field, Inc. [1] several years ago for the probeperson survey and has been improved for this study by adding up the device to measure the accelerations. The sizes of the unit are 98 mm long, 61 mm wide and 18 mm high. Its weight is only 100 g. The operation needed is just only to switch power on or off. Therefore, the people can easily put it into their pockets like a mobile phone or put it on the dashboard of their cars. The power may be from the cigar-socket in the car or just from the rechargeable battery with the capacity of 750 mAh inside. As it can catch the GPS (Global Positioning System) signal, we can obtain the position and time information so that we can compute the travel speed, too. The sensor of the accelerations in three directions equipped in the BCALs let us be able of knowing the accelerations of the car in three directions. The accelerations in three directions may be used to understand the driving is smooth and safe or not. Furthermore, the communication module of a Japanese mobile phone carrier has been installed inside, too. This communication module makes us be able to get the real time data about the driving when the BCALs unit is equipped. In addition, the function of A-GPS (assisted GPS) can be applied for positioning even under the ground such as the subway station et al. The measuring time intervals can be set between 1 to 1800 seconds (2 seconds was used in this study). The communication time intervals can be set between 60 to 1800 seconds or before sleeping. The sleeping mode may be set to automatically occur after the certain time period since the engine-off of the car (1800 seconds after the engine-off was adopted in this study). Moreover, all parameters given here may be changed on-line and remotely.
2 Outline of the System 2.1 Communication Network and Data Transmission Communication network of the system is depicted in Fig. 1. The driving data are collected by the BCALs put on the dashboard of the cars. Reasons for that we adopted the BCALs are its relative low cost and its relative high performance. The data include the longitude, the latitude, the time, the acceleration in the three directions etc. of the car. The collected data are sent to server PC by the packet transmission through the mobile phone communication module. The received data in the server PC are processed automatically by program which has been prepared by managers in advance and then some of them are sent to the mobile phones of users and upload to website. Therefore, the users may access the website and check all respective with the defined indicators, too.
Development of a System to Promote Eco-Driving and Safe-Driving
209
System manager
④
In driving
At home or office
Collection of data on driving Network of data transmission
Internet
①
③ Server PC
②
BCALs
After driving Mobile phone By e-mail: visualization of driving -record of driving -evaluation of eco-driving & safe-driving etc.
Through website: visualization of driving ・record of driving in detail ・ evaluation of eco-driving and safe-driving ・result of ranking ・eco-points etc.
Fig. 1. Depiction of communication network of system
2.2 Indicators for Evaluating Eco-Driving What should be done for the eco-driving? In Japan, 10 recommendations are normally listed to be good for the eco-driving [2] although some of them are different with that in Germany [3]. 1. 2. 3. 4.
Tenderly starting: to limit starting speed to be 20 km/h in the first 5 seconds. Less change of speed: to drive without speed change too often as possible. Early accelerator off: to use engine brake as possible. Limitation of using air conditioner: to make use of air conditioner by considering weather conditions. 5. Idling stop: to switch engine off when stopping. 6. Warming engine stop: it isn’t necessary to warm engine before starting. 7. Making use of traffic information: to check the traffic information and choose route without traffic jam. 8. Frequent checking air pressure of tires: to keep air pressure in an adequate level. 9. Lifting down unnecessary load: to keep car not to transport unnecessary load. 10.Attention for parking: to park car without influencing on traffic flow. Among the above recommendations, three of them, 1.tenderly starting, 2.less change of speed and 5.idling stop can be evaluated directly by using the data collected by the BCALs. We define three indicators respective with these three recommendations as the followings.
210
R. Ando, Y. Nishihori, and D. Ochi
• Starting indicator = (number of starts have been accelerated faster than 20 km/h in five seconds) / (total number of starts) • Travel indicator = (accumulated time to change speed faster than 20 km/h in five seconds) / (total travel time) • Idling indicator = (accumulated time of engine on when stopping) / (total stopping time) Furthermore, to evaluate the CO2 emission for each trip, the following indicator is proposed. • Emission indicator = (estimated CO2 emission amount per kilometer) / (standard CO2 emission amount per kilometer) Here, the estimated CO2 emission amount is calculated by the following equation proposed by Oguchi et al. in 2002 [4]. ( .&7'ȊțN9N9N
(1)
Where E = CO2 emission amount (kg- CO2) T = Travel time (sec) D = Travel distance (m) k = Number of points where the speeds are observed δk= 1 (when speed is greater than that at the previous point) or 0 (others) Vk = Travel speed at point k (m/sec) KC = Coefficient of CO2 emission (0.002322kg- CO2/gasoline (cc)) On the other hand, the standard CO2 emission amount is obtained as the computed amount when the car runs by following JC08 mode. The JC08 mode is a test run mode of fuel consuming newly defined by Japanese Government in 2006 and is shown in Fig. 2. This newly defined mode has been evaluated much more suitable for the real driving conditions than the old specified mode by the Japanese government. Speed (km/h)
Time (sec)
Fig. 2. JC08 mode of test runs for fuel consuming defined by Japanese government [5]
Finally, evaluation indicator of eco-driving is defined as the summation of points respective with each indicator given above. The points of 5 to 1 are converted from the grades of A to E evaluated by each indicator. Then the eco-driving evaluation indicator can be ranked by five grades in terms of the total points.
Development of a System to Promote Eco-Driving and Safe-Driving
211
2.3 Indicators for Evaluating Safe-Driving In order to evaluate safe-driving, three indicators have been proposed on the basis of the data collected by the BCALs. • Steep acceleration = when an acceleration being bigger than 0.2G (G=0.98m/s2) is detected in the direction of moving forward, the place and the action is recorded. • Steep deceleration = when a deceleration being smaller than -0.2G is detected in the direction of moving forward, the place and the action is recorded. • Steep handling = when the absolute value of an acceleration or deceleration being bigger than 0.2G is detected in the left or right direction when moving forward, the place and the action is recorded. 2.4 Tools and Contents of Information Provision As explained in 2.1, information is provided by two tools. One is e-mail by the mobile phone. Another one is the website. Considering the communication speed etc. of mobile phone and the data transmission cost, contents of the e-mail are limited to be as the followings. Here, all are about the trip. − − − − − − − − − − −
Name of user Starting time of the trip Ending time of the trip Grade evaluated by the emission indicator Travel distance (km) Average travel speed (km/h) Travel time (min) Driving time (min) Number of steep acceleration Number of steep deceleration Number of steep handling
On the other hand, the information provided in the website is quite much. Fig. 3 is the main page when the user login the website. Part A shows a calendar by month. The user may click on the day to see the driving records of that day. Part B gives the list of the trips on the day specified by a click in Part A. Part C is the grade by the eco-driving evaluation indicator and the radar-chart of the four other ecodriving indicators with a comparison with the average evaluation. Part D is the advice for the user in terms of the evaluation by four eco-driving indicators. The last part, Part E is the gate going to answer questionnaire where the user can answer the predesigned questions and write down his/her requests and comments. Fig. 4 is to show trends of the evaluations by the indicator and by day for a specified month. Part F allows the user to specify the month and indicator. Part G shows the result respective with the specified indicator only. And Part H gives the results in detail for all indicators. Fig. 5 shows the user’s position when ranking up over all users, and the standard scores and their trends for all indicators of the eco-driving.
212
R. Ando, Y. Nishihori, and D. Ochi
Part C Part A
Calendar
Radar chart of evaluation results
Part D
Part B List of trips Advice for driving Gate of questionnaire
Part E
Fig. 3. Main page of eco-driving evaluation
Part F Choosing month and contents to be shown Part G Change of evaluation during the specified month Part H
Fig. 4. Historical data and trends of eco-driving evaluation
Fig. 6 gives the comparison of all eco-driving indicators between the normal driving and the eco-driving by the evaluations and the standard scores together with comments. Fig. 7 is about each trip. Part I shows the driving route drawn on the basis of GPS data. The places of the steep acceleration, the steep deceleration and the steep handling are depicted in the map by different colors. Furthermore, Part J lists the detail information of the specified trip including the origin, the destination, the starting time, the ending time, the travel distance, the average travel speed, the percentage of the driving time, the percentage of the stopping time. There are also numbers of the steep acceleration, the steep deceleration and the steep handling, and their numbers per kilometer as well as the average numbers over all users.
Development of a System to Promote Eco-Driving and Safe-Driving
Change of ranking results
Fig. 5. Ranking results and standard scores by eco-driving indicators
Comparison results and comments
Fig. 6. Comparison results of all eco-driving indicators
Part I Travel route of a specified trip
Part J Description of the specified trip
Evaluation results of three safe-driving indicators
Fig. 7. Travel route and results of steep acceleration, deceleration and handling
213
214
R. Ando, Y. Nishihori, and D. Ochi
2.5 Definition of Grades Respective with All Indicators Although we have not described in detail in the above sections, all evaluation respective with each eco-driving indicator shown in Fig. 3 to Fig. 6 are expressed by Grade A (the best) to E (the worst). The introducing of the grades is to make the users understand the evaluation results easily. On the other hand, the reasonable evaluation and advice based on the evaluation are very important to affect the users to improve their driving. To define the grades logically, we divide the groups in terms of the normal distribution of the values of each indicator. As we have no any data at the beginning to construct system, we made a test for a small group with 3 monitors and then defined the grade. However we found the definitions not having been good enough to fit the real situation after we began our services for all users (refer to Chapter 3). Thus, the all grades have been re-defined according to the enough data to draw a quite beautiful line of the normal distribution. 350
120%
300
100%
250
80%
200
60%
150 40%
100
20%
50 0
0.5
0.55
0.6
0.65
0.7
0.75
0.8
0.85
0.9
0.95
1
1.05
1.1
1.15
1.2
1.25
1.3
1.35
1.4
1.45
1.5 1.5~
0%
Fig. 8. Distribution of rates respective with definition of emission indicator (line is the accumulated percentage) 900
120%
800
100%
700 600
80%
500
60%
400 300
40%
200
20%
100 0
A
B
C
D
E
0%
Fig. 9. Distribution of numbers respective with five grades of emission indicator (line is the accumulated percentage from Grade A to Grade E)
For example, regarding the emission indicator, in terms of the distribution of the rates as given in Fig. 8, the A grade is defined as being smaller than 0.78. Consequently, the B grade is between 0.78 and 0.88, the C grade is between 0.88 and 1.05, the D grade is between 1.05 and 1.32, and the E grade is bigger than 1.32. Then the numbers of all 5 grades are distributed as shown in Fig. 9.
Development of a System to Promote Eco-Driving and Safe-Driving
215
Similarly, the grades respective with the starting indicator, the travel indicator and the idling indicator have been defined as A to E. Finally, when we express the grades of E to A by the score 1 to 5 respectively, then the eco-driving evaluation indicator can be defined to be expressed by the total score of the above four indicators as an integrated evaluation indicator. Accordingly, the grades of A to E are defined to make its distribution be near to the normal distribution. [6]
3 Results of Social Experiment By using the system stated in Chapter 2, we have conducted a social experiment in Toyota City during October 1, 2009 to January 31, 2010. Regarding the total number of the monitors (users), 146 vehicles have been finally participated our project. Here that we don’t use the word “person” but the word “vehicle” is because some vehicles are the companies owned ones so that many different persons may drive the same cars. As a result, we collected the data of 7,900 vehicle-days totally over 519,000 kilometers and 21,000 hours. The monitors can be divided into two different groups: one is the normal monitors with the 50 persons and the other one is the unspecified monitors who made use of the companies owned cars, 96 vehicles in total. For the former group, all information provision has been carried out as we described in Chapter 2. However, regarding the latter group, the information provision was sent to a specified person or the clerk being charge in the management of the companies owned cars as the drivers would be different everyday. Considering the behavior of the monitors made use of the companies owned cars is quite different with that of the normal monitors, we report the results of the social experiment in terms of the analysis for the normal monitors here and leave that referring to the other monitors for another opportunity. 3.1 Results on Eco-Driving The changes of the eco-driving evaluation indicator, the emission indicator and the idling indicator are shown in Fig. 10 to 13 respectively. The values of the vertical axis (y) in Fig. 10 mean the average grades during one week when we express the grade E to A as 1 to 5 respectively. The values of the vertical axis (y) in Fig. 11 to 13 are respective with the definitions in Section 2.2. Then we can understand that all four indicators have shown the better values as the progressing of the project. This means the provision of the information on the monitors’ driving has made the monitors improve their driving behaviors. However, regarding the starting indicator, the score was changing to be a little worse although we do not show the graph here. The reasons can be searched from the answers for the questionnaire we implemented at the end of the social experiment. The people thought that they had influenced the cars following them in the traffic flow. The tenderly starting was felt as the slow starting and the slow starting may make the following drivers to claim to the monitors. This is why the monitors changed not doing the tenderly starting.
216
R. Ando, Y. Nishihori, and D. Ochi
)y 4.0 r(o ta ci dn i 3.5 no tia ul av e 3.0 ngi vir doc 2.5 E
↑ good
bad ↓ 1
y=0.019x+3.071
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 18 x(week)
Fig. 10. Change of values of eco-driving evaluation indicator 1.00
↑ bad
)y (r ot ac 0.95 din i no is 0.90 si m E
good ↓
y=-0.002x+0.935
0.85 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 18 x(week)
14
15
16
17 18 x(week)
Fig. 11. Change of values of emission indicator 0.0300
)y (r ot 0.0275 ac id inl ev 0.0250 ar T
↑ bad
good ↓
y=-0.0001x+0.027
0.0225 1
2
3
4
5
6
7
8
9
10
11
12
13
Fig. 12. Change of values of travel indicator
Of the monitors, about 62% answered they checked the email having been sent to their mobile phone and 78% said they checked the website about their driving. As a result, 82% have become practicing with the eco-driving and 54% have improved their driving techniques to be effective with the eco-driving. All of these results told us the system had been functional by the information provision. Furthermore, as the purposes to do the eco-driving, the top answer by 65% of the monitors is “to cut the fuel cost”.
Development of a System to Promote Eco-Driving and Safe-Driving
217
0.30 ) y ( r o t a ic d in g in l d I
↑ bad 0.25 y=-0.005x+0.295
0.20 good ↓ 0.15 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
x(week)
Fig. 13. Change of values of idling indicator
3.2 Results on Safe-Driving The safe-driving is evaluated by three indicators, the steep acceleration, the steep deceleration and the steep handling. The changes of the three indicators are expressed in Fig. 14 to Fig. 16 respectively. Here, the values of the vertical axis (y) are as described by the definitions in Section 2.3. 0.020
no it ar lee cc a pe et S
↑ bad
0.015
y=-0.0004x+0.0130
) m k/ se 0.010 im t( 0.005
good ↓
0.000 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
x(week)
Fig. 14. Change of steep acceleration indicator 0.0750
no tia re le ce d pe et S
↑ bad
0.0625
) m k/ se 0.0500 im t( 0.0375
y=-0.0001x+0.0454
good ↓
0.0250 1
2
3
4
5
6
7
8
9
10
11
12
13
Fig. 15. Change of steep deceleration indicator
14
15
16
17 18 x(week)
218
R. Ando, Y. Nishihori, and D. Ochi 0.20
gn lid na H pe et S
↑ bad
) 0.15 m k/ se m ti( 0.10
good ↓
y=-0.0005x+0.1267
0.05 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 18 x(week)
Fig. 16. Change of steep handling indicator
Each indicator has shown a satisfactory result that tells us the users tend to be safer than before although there are some unexpected variations. In fact, the second top answer for the question why to practice the eco-driving is to realize the safe-driving which shared 52%. About the change of their driving behaviors, 42% told us they had behaved much safer.
4 Summary and Conclusions In this paper, the authors report on the study having been implemented during March 2009 to March 2010. This study is to develop a system and then apply it as a trial for promoting the eco-driving and the safe-driving. The system makes use of BCALs that is a unit to collect data and to make the data transmission through the module of a mobile phone carrier. In the study, eight (five for the eco-driving and three for the safe-driving) evaluation indicators have been proposed on the basis of the data collected. As the results of the social experiment, it can be conclude that this system is effectively accepted by the users and is functional to change the people’s behaviors to be much greener and safer. Surely, a detail analysis should be carried out to make the relationship among the factors such as the characteristics of the users and the information provided as the further studies.
References 1. Trans Field, Inc., http://probe-person.jp/?page_id=188 (in Japanese) 2. Association for Promotion of Eco-Drive, http://www.ecodrive.jp/eco_10.html (in Japanese) 3. Ford, http://www.ford-eco-driving.de/ (in German) 4. Oguchi, T., Katakura, M., Taniguchi, M.: Carbon-dioxide Emission Model in Actual Urban Road Vehicular Traffic Conditions. Journal of Infrastructure Planning and Management (JSCE) 695/IV-54, 125–136 (2002) (in Japanese) 5. Carview Corporation, http://www.carview.co.jp/green/ecoword/20/83/ (in Japanese) 6. Council for Green Mobility: Report on Green Mobility Model Project for Constructing a Low-Carbon Transport System, Ch. 2, Outline of the Technical Development (by Trans Field, Inc.) & Ch. 4, The Social Experiment in Toyota Area, by TTRI (2010) (in Japanese) 7. Beusen, B., et al.: Using On-board Logging Devices to Study the Longer-term Impact of an Ecodriving Course. Transportation Research Part D 14, 514–520 (2009)
Oligopoly Game Modeling for Cognitive Radio Environments Ligia C. Cremene1, D. Dumitrescu2, and Réka Nagy2 1
Technical University of Cluj-Napoca, Memorandumului, 28, 400114, Romania 2 Babes-Bolyai University, Kogalniceanu, 1, 400084, Cluj-Napoca, Romania [email protected], [email protected], [email protected]
Abstract. The problem of dynamic spectrum access in cognitive radio environments is addressed using a game theoretic approach. In order to investigate the relevance of certain equilibrium concepts for this problem, two oligopoly game models – Cournot and Stackelberg – are considered. For a more realistic formulation of the game, a modified rationality paradigm is considered. Within this paradigm agents may have approaches and biases towards different equilibrium concepts. We investigate the Pareto equilibrium and a new equilibrium concept – the joint Nash-Pareto equilibrium. Keywords: Cognitive radio, dynamic spectrum access, joint equilibria, metarationality, adaptive strategies.
1 Introduction Game Theory has recently emerged as an effective framework for the design of wireless networks. The suitability of using game theoretic concepts to model some problems in communications systems has been well argued during the last decade [1], [2], [6], [7]. Seen as a promising approach for analyzing the interactions of adaptive and cognitive radios, Game Theory can address important issues such as: steady state existence, steady state identification, convergence and steady state optimality [1] in cognitive radio environments. The problem of dynamic spectrum access in cognitive radio environments is addressed. Standard Game Theory deals with the study of strategic interactions between rational agents. For a more realistic modeling, a modified rationality paradigm is considered here. Within this paradigm agents/players may have several approaches and biases towards different equilibrium concepts [4]. Radio resource allocation and dynamic spectrum access may be described as a game between cognitive radios [1], [12]. We consider some well known oligopoly game models such as Cournot and Stackelberg. Several equilibrium concepts are studied as game solutions. The aim is to investigate the relevance of certain equilibrium concepts for spectrum access and resource allocation in cognitive radio environments. The standard Nash-equilibrium approach has been extensively studied [1], [4], [6]. In our approach we go beyond and investigate the Pareto equilibrium and a new equilibrium concept – the joint Nash-Pareto equilibrium [5]. The considered generalization S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 219–230, 2010. © Springer-Verlag Berlin Heidelberg 2010
220
L.C. Cremene, D. Dumitrescu, and R. Nagy
involves heterogeneous players that are allowed to be biased towards different equilibrium types. In other words, players may act based on different rationality types [4]. The paper is structured as follows: Section 2 provides some basic insights to game equilibria generation and detection. The game theoretic approach in analyzing cognitive radio interactions is detailed in Section 3. Section 4 presents spectrum access scenarios that are formulated using Cournot and Stackelberg oligopoly game models; numerical results are discussed. The paper conclusions are presented in Section 5.
2 Game Theory. Equilibria - Generative Relations and Detection A game may be defined as a system G = ((N, Si, ui), i = 1,…, n) where: (i) N represents the set of n players, N = {1,…, n}. (ii) for each player i є N, Si represents the set of actions Si = {si1, si2, …, sim}; S = S1 x S2 x … x SN is the set of all possible game situations; (iii) for each player i є N, ui :S → R represents the payoff function. A strategy profile (strategy or action vector) is a vector
s = ( s1 ,..., sn ), where
si ∈ S i is a strategy (or action) of the player i. By
( si , s −*i ) we denote the strategy profile obtained from s* by replacing the strat-
egy of player i with si, i.e.
( si , s −*i ) = ( s1* , s2* ,..., si*−1 , si , si*+1 ,..., s1* ). 2.1 Nash Equilibrium Game Theory provides a number of tools for analyzing games. The most frequently used steady-state concept is the Nash Equilibrium (NE). Informally, a strategy profile is an NE if no player can improve her payoff by unilateral deviation. Formally, a strategy profile, x is an NE if and only if
ui ( x ) ≥ ui ( yi , x −i ), ∀i ∈ N , yi ∈ S i . An NE may be interpreted as “A steady state where each player holds a correct expectation of the other players’ behavior and acts rationally.” [6]. 2.2 Generative Relation for Nash Equilibrium A particular relation between strategy profiles can be used to describe Nash equilibrium. We consider here two generative relations. Let us consider the quantity
a ( x ) = card {i : ∃t ∈ Si , ui (t , x −i ) > ui ( x )} a(x) is the number of players improving strategy x by unilateral deviation.
Oligopoly Game Modeling for Cognitive Radio Environments
221
Definition. Strategy x dominates strategy y, and we write x
k ( x, y ) = card {i : ui ( xi , y −i ) ≥ ui ( y ), xi ≠ yi } The generative relation induced by k is defined as
x < y <=> k ( x, y ) < k ( y , x ) . 2.3 Generative Relation for Pareto Equilibrium Let us consider two strategy profiles x and y from S. Definition. The strategy profile x Pareto dominates the strategy profile y (and we write x < P y) if the payoff of each player using strategy x is greater or equal to the payoff associated to strategy y and at least one payoff is strictly greater. More formal we can write x < P y iff ui ( x ) ≥ ui ( y ) , for each i = 1, ... , n, and there is some index j that
u j ( x) > u j ( y) . The set of all non-dominated strategies (Pareto frontier) represents the set of Pareto equilibria of the game [5]. 2.4 Generative Relation for Joint Nash-Pareto Equilibrium Consider a game with n players. Consider that each player acts based on a certain type of rationality. Let us denote by ri the rationality type of the player i = 1,…, n. We may consider a two-player game where r1 = Nash and r2 = Pareto. The first player is biased towards the Nash equilibrium and the other one is Pareto-biased. In this case a new type of equilibrium, called the joint Nash-Pareto equilibrium, may be considered [5]. Let us consider an n player game where each player may be either Nash or Paretobiased. Let us denote by IN the set of Nash biased players (N-players) and by IP the set of Pareto biased players (P-players). Therefore we have
I N = {i ∈ {1,..., n}: ri = Nash},
I P = {j ∈ {1,..., n}: rj = Pareto}. An operator for measuring the relative efficiency of profile strategies has been introduced [5].
E : S × S → N,
222
L.C. Cremene, D. Dumitrescu, and R. Nagy
defined as
E ( x, y ) = card {i ∈ I N : ui ( xi , y −i ) ≥ ui ( y ), xi ≠ yi }
+ card {j ∈ I P : u j ( x ) < u j ( y ), x ≠ y}.
E(x, y) measures the relative efficiency of the strategy profile x with respect to the strategy profile y. The relative efficiency enables us to define a generative relation for the joint Nash-Pareto equilibrium. Consider a relation
E ( x, y ) < E ( y , x ). The relation
3 Game Theoretic Approach of Cognitive Radio Environments Game Theory is a powerful tool in developing adaptive strategies in multiagent environments where multiple agents interact trying to achieve their own interests. In many cases their objectives conflict with each other. Cognitive radio environments are such environments – where the problem of dynamic spectrum sharing and issues of planning and decision-making have to be addressed. Eventually, adaptive strategies enable system components to learn a satisfactory policy (equilibrium) for action through repeated interaction with their environment [7]. WRAN IEEE 802.22 is the first wireless standard based on cognitive radios. The 802.22 groundbreaking wireless air interface is defined for use by license-exempt devices in the spectrum that is currently allocated to the Television service. In this range there is much unused or underused frequency spectrum. Since the new air interface is required to reuse the fallow TV spectrum without causing any harmful interference to incumbents (i.e., the TV receivers), cognitive radio techniques are of primary importance in establishing/supporting adaptive strategies that facilitate coexistence. Such adaptive strategies regard dynamic spectrum access and radio environment characterization [9].
Oligopoly Game Modeling for Cognitive Radio Environments
223
Cognitive radios (CRs) are seen as the solution to the current low usage of the radio spectrum [9], [10], [13]. CRs have the potential to utilize the large amount of unused spectrum in an intelligent way while not interfering with other incumbent devices in frequency bands already licensed for specific uses [9]. Mechanisms based on frequency hopping have been widely used to enable wireless networks to use resources from the unlicensed spectrum without frequency planning [8]. A cognitive radio has to manage a dynamic interaction profile. In the radio environment this is reflected in the interference profile that may be prompted to change whenever another radio changes its profile. Such an interactive decision process can be analyzed using Game Theory models and techniques [2], [3]. We can assume that the cognitive radios know the form of the other cognitive radios’ utility functions if all the interacting radios have the same objective (e.g., maximizing SINR) or if the radios can poll the other radios in the environment. However, due to the variability of channel conditions it is unlikely that a cognitive radio will know the precise values of other radios’ utility functions. Even without any ability to infer other players’ utility functions, the equilibrium concept has a significant implication for cognitive radio algorithms modeled as a repeated game [1]. A CR is defined as a radio that can sense its environment and then modify its behavior, based on a set of rules (policy), and without operator intervention [13]. Reaction to the changes in the operation environment may be modeled as a game against nature but this is not the approach in this paper. Instead we chose to model the interactions between cognitive radios as interactions between players on an oligopoly market, which in this case is the frequency spectrum. For a more realistic formulation of the game, a modified rationality paradigm is considered. Within this paradigm radios may have several approaches and biases towards different equilibrium concepts [4]. We investigate the Pareto equilibrium and a new equilibrium concept – the joint Nash-Pareto equilibrium.
4 Oligopoly Game Modeling of Cognitive Radio Environments In order to assess dynamic spectrum access scenarios of cognitive radios, two oligopoly game models are considered: Cournot and Stackelberg. The commodity of this oligopoly market is the frequency spectrum. These models are computationally simple and therefore suitable for implementation in resource-limited software-defined radio transceivers. To illustrate the oligopoly environment models we consider an environment with only two radios (duopoly) so that the radios’ strategies and their equilibria can be represented two-dimensionally. However, the same approach can be applied to the case of more than two radios. 4.1 Cournot Game Modeling of a Cognitive Radio Access Scenario We consider a cognitive radio access scenario that can be modeled as a simple reformulation of the Cournot oligopoly game. Suppose there are n cognitive radios attempting to access the radio environment. Each radio i is free to decide the number ci ∈ 0, ∞ ) of simultaneous frequency hopping channels the radio implements. How
[
224
L.C. Cremene, D. Dumitrescu, and R. Nagy
many simultaneous channels should each radio implement in order to maximize its operation efficiency? Based on the above scenario, a Cournot game can be formulated as follows: The players are the cognitive radios attempting to access a certain frequency band. The strategy of each player i is the number ci of simultaneous implemented (active) channels. A strategy profile is a vector c = ( c1 ,..., cn ) . The payoff of each player is the difference between a function of goodput and power consumption (cost of implementing ci simultaneous channels). Let us denote by P(c) the fraction of symbols that are not interfered with. The goodput for radio i is P(c)ci . Radio i cost for supporting ci simultaneous channels is Ci(ci) . The payoff of player (radio) i is thus:
ui ( c ) = P( c )ci − Ci ( ci ) . In general, P decreases with the total number of implemented channels and Ci increases with ci (more bandwidth implies more processing resources and more power consumption). If these effects are approximated as linear functions, the payoff function can be rewritten as n ⎛ ⎞ ui ( c ) = ⎜ B − ∑ ck ⎟ci − Kci k =1 ⎝ ⎠
where B is the total bandwidth available for frequency hopping, K is the cost of implementing a channel. The Nash equilibrium is considered as the solution of this game
ci* = ( B − K ) /( N + 1), ∀i ∈ Ν . 4.2 Numerical Experiments – Cournot Modelling Numerical performance evaluation results are presented for the Cournot duopoly competition to illustrate emerging behavior in cognitive radio environments. We consider a linear inverse demand function in which the number of noninterfered symbols P(c) is determined from the total number ci of implemented channels (occupied bandwidth). This function can be defined as:
⎧ B − C , ifC < B, P (C ) = ⎨ ⎩0, otherwise, where B > 0 is the parameter of the inverse demand function and n
C=
∑c
i
, is the aggregate number of implemented channels.
i =1
The Cournot model simulation parameters are B = 10 and K = 1. For equilibria detection the evolutionary technique from Section 2 is considered. A population of 100
Oligopoly Game Modeling for Cognitive Radio Environments
225
strategies has been evolved using a rank based fitness assignment technique. In all experiments the process converges in less than 20 generations. The detected Nash, Pareto, Nash-Pareto, and Pareto-Nash equilibria are depicted in Figure 1. These equilibria have been obtained in four separate runs. c2
c1 Fig. 1. Detected strategies representing Nash, Pareto, Nash-Pareto, and Pareto-Nash equilibria. Cournot modeling (B = 10, K = 1).
NE corresponds to the scenario where each CR activates three channels. The Pareto equilibrium describes a more unbalanced situation where the number of active channels lies in the range [0, 4.5] for each CR. Although each CR tries to maximize its utility, none of them can access more than half of the available channels. Moreover, the sum of active channels is less than that for the NE. In some cases, the Nash-Pareto strategy enables the CR to access more channels than for the NE strategy. In this particular case, the PN equilibrium is symmetric to the NP equilibrium with respect to the first bisecting line. It is interesting to notice that none of the NP strategies can reach NE. The corresponding payoffs of the four detected equilibria are depicted in Figure 2. The payoffs of P-players (payers from the Pareto front) are in the range [0, 20] and their sum is always larger than NE payoff. For each strategy of the Nash-Pareto equilibrium the Pareto-player has a higher payoff. The Nash-player payoff is smaller in a Nash-Pareto situation than in a case where all the players play Nash (are Nashbiased). Even if the NP strategies allow the CRs to access more channels, the payoffs are smaller than for the Pareto strategies. This is due to interference increasing with the number of accessed channels.
226
L.C. Cremene, D. Dumitrescu, and R. Nagy
u2(c1,c2)
u1(c1,c2)
Fig. 2. Payoffs corresponding to the detected equilibria. Cournot modeling (B = 10, K = 1). In this case the Pareto-Nash equilibrium is symmetric to the Nash-Pareto equilibrium.
The evolutionary method for detecting equilibria is scalable with respect to the available frequency spectrum. Figure 3 illustrates the results obtained for a larger hopping bandwidth (B=100), keeping the same cost of implementing a channel (K=1). Similar results are obtained by increasing the magnitude degree of B (103, 104…) – no bandwidth constraints. c2
c1
Fig. 3. Detected strategies representing Nash, Pareto, and Nash-Pareto equilibria. Cournot modeling (B = 100, K = 1).
Oligopoly Game Modeling for Cognitive Radio Environments
227
u2(c1,c2)
u1(c1,c2)
Fig. 4. Payoffs of the detected equilibria – Cournot modeling (B = 100, K = 1)
4.3 Stackelberg Modeling of a Cognitive Radio Access Scenario The traditional spectrum access approach ensures co-existence of multiple systems by splitting the available spectrum into frequency bands and allocating them to licensed (primary) users. The dynamic spectrum access in cognitive environments improves the spectrum utilization by detecting unoccupied spectrum holes or whitespaces and assigning them to unlicensed (secondary) users. This situation, where we have incumbent monopoly and new entrants, may well be modeled using a Stackelberg game model. The players are the cognitive radios – licensed and unlicensed (primary and secondary) users. The strategy of player i is the number ci of simultaneous implemented channels. The payoff of each player is the difference between the goodput and the power consumption (cost of implementing ci simultaneous channels). Using the same notations as for Cournot modeling, the payoff function of player i can be defined as
ui ( c1 , c2 ) = ci Pd ( c1 + c2 ) − Ci ( ci ), for i = 1,2. considering c2 = b2(c1) as the output of the secondary user for primary user’s output c1 [6]. We consider a constant unit cost and a linear inverse demand function Pd(c) with the same definition as for the Cournot model. The outcome of the equilibrium [6] is that radio 1 activates c1* = taneous channels and radio 2 activates c2* = b2 ( c1* ) =
1 ( B − K ) simul2
1 ( B − K ) simultaneous channels. 4
4.4 Numerical Experiments - Stackelberg Modeling The simulation parameters of the Stackelberg model are C1(c1) = C2(c2) = 1 and B = 10. Detected Nash, Pareto, NP, and PN equilibria are depicted in Figure 5.
228
L.C. Cremene, D. Dumitrescu, and R. Nagy
We may notice that any strategy from the Pareto front is also an NP strategy. If the primary user plays Nash then the secondary user may maximize its payoff by choosing any strategy. If the secondary user plays Nash then the maximum payoff of the primary user is NE.
c2
c1 Fig. 5. Detected strategies representing Nash, Pareto, Nash-Pareto, and Pareto-Nash equilibria Stackelberg modeling ( C1(c1) = C2(c2) = 1 and B = 10 )
u2(c1,c2)
u1(c1,c2) Fig. 6. Payoffs of the detected equilibria – Stackelberg modeling. Payoffs are maximized for all users if the incumbents are Nash oriented and the new entrants are Pareto driven.
Oligopoly Game Modeling for Cognitive Radio Environments
229
Even if the secondary user can access less than three channels (Cournot NE), its maximum payoff remains un affected (20). Instead, the primary user’s payoff is half. For Stackelberg formulation of the game, the NE payoff for the secondary user is less then in the Cournot case (5,5 instead of 9). For the primary user it is slightly increased (10 instead of 9). This situation is relevant for interference control in dynamic spectrum access scenarios. The Stackelberg modeling of such a scenario may provide particular answers to the fundamental question [10] of autonomy versus regulation in heterogeneous radio environments.
5 Conclusions Two oligopoly game models have been considered in order to investigate the relevance of certain equilibrium concepts for the problem of dynamic spectrum access in cognitive radio environments. Besides standard Nash equilibrium and Pareto equilibrium a new approach based on heterogeneous players has been considered. In this last model players are biased towards several equilibrium types. This is a more realistic game formulation for interactions in cognitive radio environments. Numerical experiments indicate the effectiveness of the proposed approach. The observations may be especially relevant for designing new rules of behavior for heterogeneous radio environments. Acknowledgments. This paper was supported by the project "Develop and support multidisciplinary postdoctoral programs in primordial technical areas of national strategy of the research - development - innovation" 4D-POSTDOC, contract nr. POSDRU/89/1.5/S/52603, project co-funded from European Social Fund through Sectorial Operational Program Human Resources 2007-2013. This research was supported by project PNCDI2 – Program 4 – Parteneriate 2120/2007 of the NURC Romania.
References 1. Neel, J.O., Reed, J.H., Gilles, R.P.: Game Models for Cognitive Radio Algorithm Analysis (2004), http://www.mprg.org/people/gametheory/presentations.shtml 2. MacKenzie, A., Wicker, S.: Game Theory in Communications: Motivation, Explanation, and Application to Power Control. In: Globecom 2001, pp. 821–825 (2001) 3. Huang, J.W., Krishnamurthy, V.: Game Theoretic Issues in Cognitive Radio Systems. J. of Comm. 4(10), 790–802 (2009) 4. Dumitrescu, D., Lung, R.I., Mihoc, T.D.: Evolutionary Equilibria Detection in NonCooperative Games. In: Giacobini, M., Brabazon, A., Cagnoni, S., Di Caro, G.A., Ekárt, A., Esparcia-Alcázar, A.I., Farooq, M., Fink, A., Machado, P. (eds.) EvoStar 009. LNCS, vol. 5484, pp. 253–262. Springer, Heidelberg (2009) 5. Dumitrescu, D., Lung, R.I., Mihoc, T.D.: Generative relations for evolutionary equilibria detection. In: Genetic and Evolutionary Computation Conf GECCO ’09, pp. 1507–1512 (2009)
230
L.C. Cremene, D. Dumitrescu, and R. Nagy
6. Osborne, M.J.: An Introduction to Game Theory. Oxford Univ. Press, Oxford (2004) 7. Maskery, M., Krishnamurthy, V., Zhao, Q.: Game Theoretic Learning and Pricing for Dynamic Spectrum Access in Cognitive Radio. In: Hossain, E., Bhargava, V.K. (eds.) Cognitive Wireless Communication Networks. Springer, New York (2007) 8. Popovski, P., Yomo, H., Prasad, R.: Strategies for Adaptive Frequency Hopping in the Unlicensed Bands. IEEE Wireless Communications, 60–67 (2006) 9. Cordeiro, C., Challapali, K., Birru, D.: IEEE 802.22: An Introduction to the First Wireless Standard based on Cognitive Radios. J. of Comm. 1(1), 38–47 (2006) 10. Srinivasa, S., Jafar, S.A.: The Throughput Potential of Cognitive Radio: A Theoretical Perspective. IEEE Communications Magazine, 73–79 (2007) 11. Niyato, D., Hossain, E.: Microeconomic Models for Dynamic Spectrum Management in Cognitive Radio Networks. In: Hossain, E., Bhargava, V.K. (eds.) Cognitive wireless communication networks. Springer, New York (2007) 12. Luise, M., Bacci, G.: A Noncooperative Approach to Joint Rate and Power Control for Infrastructure Wireless Networks. In: Proc. of ICST Int. Conf. on Game Theory for Networks, Istanbul, pp. 33–42 (2009) 13. Mitola, J.: Cognitive radio: An integrated agent architecture for software defined radio, PhD Dissertation Royal Inst. Technol. (KTH), Stockholm, Sweden (2000) 14. Deb, K., Agrawal, S., Pratab, A., Meyarivan, T.: A Fast Elitist Non-Dominated Sorting Genetic Algorithm for Multi-Objective Optimization: NSGA-II. In: Schoenauer, M., Deb, K., Rudolph, G., Yao, X., Lutton, E., Merelo, J.J., Schwefel, H.P. (eds.) PPSN 2000. LNCS, vol. 1917, pp. 849–858. Springer, Heidelberg (2000)
Reducing the Number of States for Markovian Model of Optical Slotted Ring Network Mateusz Nowak and Piotr Pecka Institute of Theoretical and Applied Informatics Polish Academy of Sciences ul. Bałtycka 5, 44-100 Gliwice, Poland [email protected], [email protected]
Abstract. Modelling with use of Markov chains is difficult from computational point of view, because of a rapid increase in the number of states occurring even when there is only a slight increase in the model’s scale. However, thanks to the appropriate description of the model the number of states can be significantly reduced. This paper discusses a synchronous slotted-ring network with optical packet switching modelled by means of markovian chains with continuous time. Simplifying the description has made it possible to significantly reduce the model’s dimension without significantly diminishing the results’ accuracy.
1
Introduction
Computer networks are examined in theory with various modelling methods. The most common method is simulation, which reproduces the system’s way of operating in the computer’s memory step by step. It is also necessary to apply analytical methods, whose primary task is to verify the results obtained in simulations. One of the popular methods of analytical modelling is modelling with use of Markov chains. In the markovian model the system is described with states, which the modelling process can occupy. Each event influencing the system’s stateis reflected in the transition to another state in the markovian chain. In the model possible transitions between states are described with their intensity in time (in models with continuous time) or with probability (in models with discreet time). Each increase of the model’s scale causes a rapid increase in the number of possible model states. In the case of computer networks adding a network node operating independently of other nodes, which can be in one of k states, causes the previous number of the system’s possible states to be multiplied by the factor k. A lot of relatively small network models are described by means of dozens or a dozen hundred millions of states. The markovian method presumes the solution of the system of algebraic linear equations, which, even considering that the majority of the system’s coefficients equals zero, is a difficult task from the computational point of view. Therefore each method of reducing the number
The work was sponsored by MNiSW grant no. N N516 407138.
S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 231–241, 2010. © Springer-Verlag Berlin Heidelberg 2010
232
M. Nowak and P. Pecka
of states in a given model’s description is valuable since it makes it possible to describe a bigger model accelerate the calculation and diminish the impact of numerical errors on the result.
2
Optical Synchronous Slotted Ring Network
Modern computer networks of a medium and big range usually use optical fibres to transmit data. They are usually built on the basis of such technologies as SONET/SDH or the optical Ethernet and employ the optical fibre as a medium transmitting digital signals encoded by means of a modulated light wave. The transmitted information can be managed in intermediate nodes only after the light wave has been transformed into an electrical signal. It is only then that the information can be read, interpreted, processed in routing and movement management algorithms and subsequently, after a possible modification, sent to the next network segment or to the final client. Farther transmission usually requires another conversion, in this case from the electrical into the optical form. Many centres around the world conduct research on fully optical networks. Switching of packets, that is directing them to subsequent network segments, takes place without the optical-electrical conversion and the other way round. Such networks are defined as networks with the optical packet switching (OPS networks). Optical switching involves large hopes, as it is much faster than the electronic one. OPS technology already turned from the theoretical stage to the construction of prototype devices. In Europe a number of companies and research organisations are engaged in both construction of OPS devices and in working out management methods, i.a. gathered in research projects like ECOFRAME or CARRIOCAS[1]. In the paper we present research, which concern synchronous slotted-ring networks. Ring-type architecture is easy to configure and manage, as opposed to complex mesh-type networks, and it is often applied in metropolitan networks (MANs). It originates from Cambridge-Ring architecture[2] whose successors are the widely used networks like Token-Ring[3], FDDI[4] or ATMR[5]. The network subjected to modelling is based on proposals presented within the framework of the ECOFRAME project, described among others in [6], [7], and also [8],[9] and [10]. It consists of a fully optical ring which connects a certain number of access nodes. Nodes of access to the network are an interface between the electronic and optical network. They are equipped with buffers collecting data from the client (connected electronically) arriving asynchronously to the node. The node is equipped with separate buffers for traffic of various QoS classes, corresponding to different priorities. The buffers are of the dimension of Bi blocks, each containing b bytes. At optical side of the nodes work in synchronous way, which means that optical frames arrive at all the nodes simultaneously as well as leave them simultaneously, in equal intervals. The data-transmitting unit is a frame with a constant (in a given network) capacity of p blocks of data. The frame may transmit data
Reducing the Number of States for Markovian Model
233
of different priority, it can also be empty, if the nodes don’t have any data to transmit. At a given time in each segment of the network there is one frame. In a simplified model adopted for the purposes of presenting research it is assumed that the content of the frames has a homogeneous nature i.e. each non-vacant frame contains blocks of one class addressed to one recipient. Nodes are equipped with the Add/Drop[11] mechanism, which makes it possible to retrieve data from the frame and mark it as empty as well as send data by means of a frame, which arrived as empty. The Add/Drop mechanism is QoSaware, as data in the network can be of many QoS classes. There can be K≥2 QoS classes of data, from which highest priority class is defined as Premium, and lowest priority as Best Efforty (BE). Add/Drop mechanism is able to replace low-priority frame content with high-priority content. If in the buffer for a movement of given class in a given node there are p blocks of data, the node sends data by the next empty frame. If in several buffers there are data ready for transmission the highest-priority data are sent first. In addition BE content can be removed from the frame for the benefit of Premium traffic. What’s more, a mechanism defined as sending timeout [12] has been introduced. It guarantees that blocks awaiting transmission longer than a certain τ time will be sent even though a full frame has not been completed. However, this mechanism has not been used in the examined model.
3
The Model of the Optical Network
For the purposes of modelling the network’s operation it has been assumed that each node sends packets to other nodes, distributing the recipients evenly. This means that none of the packets returns to the transmitting node but is collected by one of the remaining nodes - with the same probability. The accurate model provided that each transmitted packet will be equipped with a counter c of passages with the initial value c = 0. When a packet with a counter of value c < N − 2 approached the node, it was removed from the frame (read) with the probability of pr = 1/(N − 1) and sent further with the probability of 1 − pr = N/(N − 1) whereas the counter c was increased by 1. When a packet with a counter of the c = N − 2 value approached the node, it was always read and removed from the network. When an empty frame arrived at the node, the node sent data, giving the meter a value of c = 0 as long as it had data to send. Furthermore, the expropriating mechanism caused the frame’s content of BE class to be replaced by new data of Premium class when BE class data arrived at the node and the node had Premium class data to send. A small model with the following parameters was used in researching the possibility of reducing the number of markovian chain states: – – – – –
number of nodes N = 3 size of frame p = 1 block size of block b = 50 bytes number of QoS classes K = 2 (Premium and BE classes only) buffer size for each class B1 = B2 = 4
234
M. Nowak and P. Pecka
The model was implemented with use of an object-oriented library OLIMP-2, beeing developed by the paper authors (previous version of the software, OLIMP, is described in [13]). The node’s state is described by buffer states for each class of services. The state vector for a node j with two buffers has the form (n1j , n2j ), whereas the buffer state can take the values 0≤nij ≤Bi . Accordingly, each node brings to the model Sj = (B1 + 1)(B2 + 1) states. The ring is described with the vector Vr = (f, v1 , v2 , v3 , c1 , c2 , c3 ), where vi means the frame state in the i segment and takes value 0 for an empty frame, 1 for a frame transporting the Premium packet and 2 for a frame transporting the BE packet, whereas ci means the state of the passage meter described above. The f variable, taking the values 1..5 is a number of Erlang’s distribution state, which approximates constant time between frame passages well for as few as 5 states. The number of vector states describing a ring equals then Sr = F · (N − 1)N · (K + 1)N , where F stands for a number of Erlang’s phases, N - number of nodes, K - number of packet classes. Data sources have Poisson’s distribution, which in the markovian model means that they don’t have a state vector and don’t contribute additional states to the model. However, thanks to the model’s object-oriented description replacing Poisson’s sources with sources of a different distribution is very simple (it should be borne in mind however that other types of sources have their own state vectors and the number of the entire model’s states should be multiplied by the number of each source’s states). Consequently, the complete vector describing the model has the following form: V = ((n11 , n21 ), (n12 , n22 ), (n13 , n23 ), (f, v1 , v2 , v3 , c1 , c2 , c3 ))
(1)
The total maximum number of model states equals: S = SnN ·Sr = ((B1 + 1)(B2 + 1))N ·F ·(N − 1)N ·(K + 1)N
(2)
which, for the adopted values, amounts to the value of S = 16, 875, 000. In fact, not all constituent value combinations of the state’s vector can be present. The actual number of states, which the system can occupy, is S = 9, 765, 625 Transitions description Let’s introduce a vector u = (u1 , u2 , u3 ), whose constituent parts assume the values of 0..2, in order to describe a change in the system’s state. The 0 value of the constituent part ui means that the frame has passed through the node i without any changes (transit), the value of 1 that the packet is collected by the node and the value of 2 that the node sent a packet. The probabilities of changing the node’s i state are as follows: – – – –
if if if if
ci < N ci < N ci = N vi = 0,
−2 − 2 and vi > 0, ui = 0 (transit) with probability N N −1 , − 2 and vi > 0, ui = 1 (packet reception) with probability N 1−1 , − 2 and vi > 0, ui = 1 (packet reception) with probability 1, ui = 2 (packet sending) with probability 1,
Reducing the Number of States for Markovian Model
235
– if vi = 2 and n1i > 0, ui = 2 with probability N1−1 (BE packet is expropriated by the Premium packet awaiting in the buffer). Probability of other state changes is equal to 0. When system is in Erlang phase F other than 5, only possible transition is change f → f + 1. When system is in last phase of Erlang’s generator (f = 5), possible transition, for all possible values of u, are enumerated below. In transitions description vi is a changed value of vector v, connected with receiving of the packet. After the transition all states of the ring are shifted right, because frames (changed or not) are passed to the next segment of the optical ring.
S(v1 ,v2 ,v3 ),(c1 ,c2 ,c3 )
S(v3 ,v1 ,v2 ),(c3 +1,c1 +1,c2 +1)with P(0,0,0) · μ for u = (0, 0, 0) with P(0,0,1) · μ for u = (0, 0, 1) S(0,v1 ,v2 ),(0,c1 +1,c2 +1) S(v3 ,v1 ,v2 ),(0,c1 +1,c2 +1) with P(0,0,2) · μ for u = (0, 0, 2) S(v3 ,v1 ,0),(c3 +1,c1 +1,0) with P(0,1,0) · μ for u = (0, 1, 0) with P(0,1,1) · μ for u = (0, 1, 1) S(0,v1 ,0),0,c1 +1,0) S(v3 ,v1 ,0),0,c1 +1,0) with P(0,1,2) · μ for u = (0, 1, 2) S(v3 ,v1 ,v2 ),(c3 +1,c1 +1,0) with P(0,2,1) · μ for u = (0, 2, 0) with P(0,2,1) · μ for u = (0, 2, 1) S(0,v1 ,v2 ),0,c1 +1,0) S(v3 ,v1 ,v2 ),0,c1 +1,0) with P(0,2,2) · μ for u = (0, 2, 2) S(v3 ,0,v2 ),(c3 +1,0,c2 +1) with P(1,0,0) · μ for u = (1, 0, 0) S(0,0,v2 ),(0,0,c2 +1) with P(1,0,1) · μ for u = (1, 0, 1) S(v3 ,0,v2 ),(0,0,c2 +1) with P(1,0,2) · μ for u = (1, 0, 2) S(v3 ,0,0),(c3 +1,0,0) with P(1,1,0) · μ for u = (1, 1, 0) with P(1,1,1) · μ for u = (1, 1, 1) ⇒ S(0,0,0),(0,0,0) S(v3 ,0,0),(0,0,0) with P(1,1,0) · μ for u = (1, 1, 2) S(v3 ,0,v2 ),(c3 +1,0,0) with P(1,2,0) · μ for u = (1, 2, 0) S(0,0,v2 ),(0,0,0) with P(1,2,2) · μ for u = (1, 2, 1) S(v3 ,0,v2 ),(0,0,0) with P(1,2,2) · μ for u = (1, 2, 2) S(v3 ,v1 ,v2 ),(c3 +1,0,c2 +1) with P(2,0,0) · μ for u = (2, 0, 0) S(0,v1 ,v2 ),(0,0,c2 +1) with P(2,0,1) · μ for u = (2, 0, 1) S(v3 ,v1 ,v2 ),(0,0,c2 +1) with P(2,0,2) · μ for u = (2, 0, 2) with P(2,1,0) · μ for u = (2, 1, 0) S(v3 ,v1 ,0),(c3 +1,0,0) S(0,v1 ,0),(0,0,0) with P(2,1,1) · μ for u = (2, 1, 1) S(v3 ,v1 ,0),(0,0,0) with P(2,1,2) · μ for u = (2, 1, 2) S(v3 ,v1 ,v2 ),(c3 +1,0,0) with P(2,2,0) · μ for u = (2, 2, 0) with P(2,2,1) · μ for u = (2, 2, 1) S(v3 ,v1 ,v2 ),(c3 +1,0,0) S(v3 ,v1 ,v2 ),(0,0,0) with P(2,2,2) · μ for u = (2, 2, 2)
In fact, above transitions represent only changes of optical ring state. Due to extensive description required, changes of nodes’ state are not included.
4
Reducing the Number of Markovian States
The OLYMP-2 library in the 32-byte version makes it possible to model systems described by the maximum number of about 30 mln states (this number depends
236
M. Nowak and P. Pecka
also on the possibilities of transitions between states which have an impact on the actual amount of the memory occupied by the transition matrix; because of the small number of non-zero elements the matrix is compressed). In order to decrease the size of the model description, which would enable us to model bigger systems, the passage counter has been abandoned. The probability of collecting a packet by a node should therefore be established on the basis of the knowledge of the model. Assuming that the model is homogeneous and consequently all nodes transmit with the same intensity and the traffic generated by a given node is evenly distributed between all other nodes we arrive at the values described below. Let’s mark the probability that a chosen node will collect a packet sent by a node lying in the distance of i network segments by p(i). The probability that a given node will collect a packet sent by the preceding node in the distance of i network segments is the Pt (i) probability of passing through i network segments N −i equalling Pt (i) = N −1 , multiplied by the probability of collecting the packet by the current node (after passing through i network segments), which equals Pc (i) = N1−i . The total probability P of the packet being collected by a node, taking account of the packets sent by all network nodes equals: N −1
P =
i=1 N −1
1
(N − i)
=
2 N
(3)
i=1
The probability P of the packet being collected is the same as in the accurate model presented above. The model employing the above values can be however described by means of a significantly smaller number of states. The number of the reduced model’s states is a product of the number of the node’s states, which did not change and the number of the ring’s states which is presently described by the vector: V rr = (f, v1 , v2 , v3 ), where f (Erlang’s phase) assumes the value of 1..5, whereas the vi (state of the frame in the i segment) assumes the value of 0..2. The total number of states with the same model parameters is: Sr = ((B1 + 1)(B2 + 1))N ·F ·(K + 1)N ,
(4)
which for the adopted data yields the value of Sr = 2, 109, 375. Consequently, the model has been reduced by the factor (N − 1)N Transitions in reduced model Detailed description of transitions in reduced model follows, using the same symbols as above. In all cases system is in the last phase of Erlang distribution (f = 5). Transition for v1 = 0, v2 = 0, v3 = 0: Sv1 ,v2 ,v3 ⇒ Sv3 ,v1 ,v2 with 1 · μ for u = (1, 1, 1)
Reducing the Number of States for Markovian Model
Transitions for v1 = 0, v2 = 0, v3 > 0: Sv1 ,v2 ,v3 ⇒
S0,v1 ,v2 with P · μ for u = (1, 1, 0) Sv3 ,v1 ,v2 with (1 − P ) · μ for u = (1, 1, 1)
Transitions for v1 = 0, v2 > 0, v3 = 0: Sv1 ,v2 ,v3 ⇒
Sv3 ,v1 ,0 with P · μ for u = (1, 0, 1) Sv3 ,v1 ,v2 with (1 − P ) · μ for u = (1, 1, 1)
Transitions for v1 = 0, v2 > 0, v3 > 0:
Sv1 ,v2 ,v3
S0,v1 ,0 with P 2 · μ for u = (1, 0, 0) S with P (1 − P ) · μ for u = (1, 0, 1) ⇒ v3 ,v1 ,0 S0,v1 ,v2 with P (1 − P ) · μ for u = (1, 1, 0) Sv3 ,v1 ,v2 with (1 − P )2 · μ for u = (1, 1, 1)
Transitions for v1 > 0, v2 = 0, v3 = 0: Sv1 ,v2 ,v3 ⇒
Sv3 ,0,v2 with P · μ for u = (0, 1, 1) Sv3 ,v1 ,v2 with (1 − P ) · μ for u = (1, 1, 1)
Transitions for v1 > 0, v2 = 0, v3 > 1:
Sv1 ,v2 ,v3
S0,0,v2 with P 2 · μ for u = (0, 1, 0) Sv3 ,0,v2 with P (1 − P ) · μ for u = (0, 1, 1) ⇒ S0,v1 ,v2 with P (1 − P ) · μ for u = (1, 1, 0) Sv3 ,v1 ,v2 with (1 − P )2 · μ for u = (1, 1, 1)
Transitions for v1 > 0, v2 > 0, v3 = 0:
Sv1 ,v2 ,v3
Sv3 ,0,0 with P 2 · μ for u = (0, 0, 1) S with P (1 − P ) · μ for u = (0, 1, 1) ⇒ v3 ,0,v2 Sv3 ,v3 ,0 with (1 − P )2 · μ for u = (1, 0, 1) Sv3 ,v1 ,v2 with (1 − P )2 · μ for u = (1, 1, 1)
Transitions for v1 > 0, v2 > 0, v3 > 0:
Sv1 ,v2 ,v3
S0,0,0 with P 3 · μ for u = (0, 0, 0) Sv3 ,0,0 with P 2 (1 − P ) · μ for u = (0, 0, 1) S0,0,v2 with P 2 (1 − P ) · μ for u = (0, 1, 0) S with P (1 − P )2 · μ for u = (0, 1, 1) ⇒ v3 ,0,v2 S0,v1 ,0 with P 2 (1 − P ) · μ for u = (1, 0, 0) Sv3 ,v1 ,0 with P (1 − P )2 · μ for u = (1, 0, 1) S0,v1 ,v2 with P (1 − P )2 · μ for u = (1, 1, 0) Sv3 ,v1 ,v2 with (1 − P )3 · μ for u = (1, 1, 1)
237
238
M. Nowak and P. Pecka
Due to extensive notation of transitions above, only changes of ring state were taken into consideration. Following transitions describe changes of state of nodes. In given node, n1 means the number of blocks in Premium queue, and n2 number of blocks in Best Effort queue. For n1 > 0 a block is collected from Premium queue: S(n1 ,n2 ) ⇒ S(n1 −1,n2 ) For n1 = 0 i n2 > 0 a block is collected from BE queue: S(n1 ,n2 ) ⇒ S(n1 ,n2 −1) After receiving a block from a ring state of node is not changed. State changes however after receiving a block from a network client. Queues are limited to lengths B1 and B2 . Premium class blocks are coming to the node with Poisson’s source intensity λ. If n1 < B1 S(n1 ,n2 ) ⇒ S(n1 +1,n2 ) If n1 = B1 packets are dropped and state does not change: S(n1 ,n2 ) ⇒ S(n1 ,n2 ) Best Effort client packets are also coming to the node with intensity λ, and are dropped when buffer is full. S(n1 ,n2 ) ⇒ S(n1 ,n2 +1) if n2 < B2 S(n1 ,n2 ) ⇒ S(n1 ,n2 ) if n2 = B2
5
Modelling Results
Results of modelling the optical slotted-ring network are shown in the tables 1-9. One can find there comparisons of values obtained by means of the two analytical models - complete and reduced. Client packets of constant size b=50 bytes (equal to optical block size) were coming to the nodes with Poisson distribution. Three scenarios were considered - with low network load, medium network load and very high network load. λ in Poisson sources had the values respectively: 0.01, 0.1 and 1.0. The distribution of probability of queue lengths is shown in following tables. As can be seen, the presented results differ only slightly. This indicates that the reduced analytical model is correct. Slight differences in the results stem from numerical errors, which are hoped to be reduced in next versions of OLYMP-2 libray, beeing still in experimental stage.
Reducing the Number of States for Markovian Model
239
Table 1. Probability of observation of given blocks number in Premium buffer for low load of the network (λ = 0.01) Number of blocks 0 1 2 3 4
Accurate model 0.993594 0.00625059 3.14366E-05 1.52735E-07 4.73649E-09
Reduced model 0.993611 0.00626032 3.15361E-05 1.41243E-07 5.92324E-10
Table 2. Probability of observation of given blocks number in BE buffer for low load of the network (λ = 0.01) Number of blocks 0 1 2 3 4
Accurate model 0.993396 0.00644566 0.000034151 1.77191E-07 5.38805E-09
Reduced model 0.993479 0.00638996 3.33749E-05 1.58267E-07 7.20769E-10
Table 3. Probability of incoming of different types of frame for low load of the network (λ = 0.01)
Premium packet Best Effort packet Empty frame
Accurate model 0.0149971 0.0149601 0.969919
Reduced model 0.0149983 0.0148428 0.970062
Table 4. Probability of observation of given blocks number in Premium buffer for medium load of the network (λ = 0.1) Number of blocks 0 1 2 3 4
Accurate model 0.897545 0.0888233 0.00851057 0.00084927 8.5963E-05
Reduced model 0.900988 0.0893426 0.00854319 0.000850526 8.5255E-05
Table 5. Probability of observation of given blocks number in BE buffer for medium load of the network (λ = 0.1) Number of blocks 0 1 2 3 4
Accurate model 0.854267 0.120134 0.0180126 0.00290282 0.000497642
Reduced model 0.87059 0.111132 0.0153258 0.00236012 0.000401648
240
M. Nowak and P. Pecka
Table 6. Probability of incoming of different types of frame for medium load of the network (λ = 0.1)
Premium packet Best Effort packet Empty frame
Accurate model 0.148735 0.143388 0.703692
Reduced model 0.149958 0.13091 0.718941
Table 7. Probability of observation of given blocks number in Premium buffer for high load of the network (λ = 1.0) Number of blocks 0 1 2 3 4
Accurate model 0.00936389 0.0276621 0.0848823 0.277069 0.602627
Reduced model 0.00500573 0.0221344 0.0852233 0.286962 0.600754
Table 8. Probability of observation of given blocks number in BE buffer for high load of the network (λ = 1.0) Number of blocks 0 1 2 3 4
Accurate model 6.12409E-06 4.37338E-05 3.25551E-04 0.00249682 0.998732
Reduced model 3.20845E-07 5.11516E-06 7.36048E-05 0.000981567 0.999019
Table 9. Probability of incoming of different types of frame for high load of the network (λ = 1.0)
Premium packet Best Effort packet Empty frame
6
Accurate model 0.598152 0.00329069 0.400161
Reduced model 0.598987 0.00106056 0.400032
Conclusions
Models based on markovian chains are usually of a small dimension since even a small model is described by means of a huge number of states which results in the big dimension of equations’ systems (along the lines of hundreds of thousands, or even millions) that have to be solved in order to obtain a modelling result. Therefore it is worth using the existing dependencies in each model even if they are not visible at the first glance. Even a simple transformation of the model can yield profits in terms of the model’s dimension. In the example discussed above the model’s scale decreased by a factor proportionate to the square of the model’s dimension, calculated in the number of network’s nodes. The combination of
Reducing the Number of States for Markovian Model
241
smart description methods with the tools which make it possible to use a bigger and bigger calculation capacity and calculation servers’ memory will allow us to apply the modelling based on Markov chains to networks not only of small dimensions (1-3 nodes) but also to slightly bigger ones (a dozen or so nodes), which are more in keeping with real networks. Therefore one can hope that markovian modelling can again play a role in the verification of results obtained in simulation models.
References 1. Calcul Réparti sur Réseau Internet Optique a Capacité Surmultipliée (CARRIOCAS), http://www.carriocas.org 2. Needham, R.M., Herbert, A.J.: The Cambridge Distributed Computing System. Addison-Wesley, Reading (1982) 3. IEEE Std. 802.5, IEEE Standard for Token Ring (1989) 4. Ross, F.E.: Overview of FDDI: The Fiber Distributed Data Interface. IEEE JSAC 7(7) (1989) 5. ISO/IECJTC1SC6 N7873, Specification of the ATMR protocol (v.2.0) (January 1993) 6. Eido, T., Pekergin, F., Atmaca, T.: Multiservice Optical Packet Switched Networks: Modelling and Performance Evaluation of a Slotted Ring 7. Eido, T., Nguyen, D.T., Atmaca, T.: Packet filling optimization in multiservice slotted optical packet switching MAN networks. In: Proc. of Advanced International Conference on Telecommunications, AICT’08, Athens (June 2008) 8. Nowak, M., Pecka, P.: Internet – Technical Development and Applications. In: Simulation and Analytical Evaluation of a Slotted Ring Optical Packet Switching Network, Advances in Soft Computing, vol. 64, Springer, Heidelberg (2009) 9. Nowak, M., Pecka, P.: Priority registers mechanism fo fair access to ring-type OPS networks. Theoretical and Applied Informatics 21(3-4), 181–191 (2009) 10. Nowak, M., Pecka, P.: QoS management for multimedia traffic in synchronous slotted-ring ops networks. In: Proceedings of 6th International Conference HETNETs 2010 (Zakopane) (January 2010) 11. Chiaroni, D.: Optical packet Add/Drop multiplexers: Opportunities and perspectives. Alcatel-Lucent R&I, Alcatel-Lucent Presentation (October 2006) 12. Haciomeroglu, F., Atmaca, T.: Impacts of packet filling in an Optical Packet Switching Architecture. In: Advanced Industrial Conference on Telecommunications, AICT (July 2005) 13. Pecka, P.: Obiektowo zorientowany wielow¸atkowy system do modelowania stanów nieustalonych w sieciach komputerowych za pomoc¸a łańcuchow Markowa. PhD thesis, IITiS PAN, Gliwice (2002)
Performance Modelling of Automatic Identification System with Extended Field of View Troels Laursen, Hans Peter Mortensen, Nikolaj Bisgaard Pedersen, Ulrik Wilken Rasmussen, Tatiana K. Madsen, and Jens Dalsgaard Nielsen Aalborg University, Department of Electronic Systems, Fredrik Bajers Vej 7C, 9220 Aalborg Ø, Denmark {trlau,hp000,markem,wilken,tatiana,jdn}@space.aau.dk http://www.space.aau.dk
Abstract. This paper deals with AIS (Automatic Identification System) behavior, to investigate the severity of packet collisions in an extended field of view (FOV). This is an important issue for satellite-based AIS, and the main goal is a feasibility study to find out to what extent an increased FOV is acceptable. To investigate this, a high altitude balloon was flown carrying two different AIS receivers to collect realistic data. A methodology for extracting the loss rate from the received data was developed, and a comparison of the theoretical collision rate and the experienced loss rate has been made. Keywords: AIS, modelling, balloon flight, data collection, collision probability, AAUSAT3.
1
Introduction
Automatic Identification System (AIS) is an additional system to conventional radar, designed to improve safety at sea by autonomously transmitting a ships traffic information to nearby ships. IMO (The International Maritime Organisation) requires all ships above 300 gross ton and passenger ships to carry an AIS transponder. This means that not all ships carries an AIS transponder and therefore AIS can not be a replacement of traditional collision avoidance systems, but more as an addition to existing systems. Authorities around the world uses AIS to monitor ship traffic and as additional information for search and rescue[7] and supervision in heavily traffic loaded areas. The ships are transmitting dynamic information such as their current position, heading, destination and a Maritime Mobile Service Identity (MMSI). The AIS transponders has a communication range limited by the curvature of the earth, which yields a range of approximately 50-60 km depending on the antenna position. The communication is carried out on two reserved maritime VHF channels. Two different transponder types are available, Class A and Class B transponders. The ships that are not required to carry an AIS transponder S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 242–255, 2010. c Springer-Verlag Berlin Heidelberg 2010
Performance Modelling of AIS with Extended Field of View
243
has the opportunity of using a smaller and cheaper AIS transponder, the Class B transponder. These only transmits with a power of 2.5 W instead of the Class A transponders transmitting with 12.5 W . Furthermore, class B transponders will back off if the channel load is to high. AIS uses a SO-TDMA (Self Organizing Time Division Multiple Access) scheme to share the time on the two channels which is used to improve system stability. The message reporting interval for AIS information is independently controlled by each AIS transponder, based on the ships conditions e.g. the speed and the rate of turn. The detailed technical characteristics of AIS can be found in the ITU-R standard [1]. Another important use of AIS is ship monitoring using ground stations along the coast, but due to earth’s curvature the range is limited. Recently, the interest of detecting and tracking ships far away from a coastline has increased. One of the main tasks of the Danish Maritime Safety Administration (DaMSA) is to monitor the Danish waters and to maintain the shipping routes. This is done mainly by using AIS ground stations located along the Danish coastline, but around Greenland which is also DaMSA’s jurisdiction, this is impractical because of the rough environment and missing infrastructure. The need to monitor AIS around Greenland is growing, due to an increase in ship traffic and the newfound interest in using the Northwest passage. Satellite-based AIS is a promising technology to overcome the coverage limitation experienced by ground stations. However, a number of technical issues needs to be addressed. The most important being 1. an increased collision probability of AIS messages and 2. the link budget (increased free space loss). SO-TDMA scheme used in AIS minimizes collisions among messages sent by different ships that are within communication range of each other. An AIS receiver carried by a satellite has a large field of view (FOV) covering many SO-TDMA zones leading to potential collisions of non-synchronized messages. This paper focuses only on the severity of collision probability. Previous work in this area has been presented in [5], [6] but the results were only based on analytical work and simulations. Currently one AIS satellite, CanX-6, has been launched into space, by a Canadian company, ComDev. Still the results such as detectability and reliability are not published. Among the planed satellites to monitor AIS from space is AISSat-1 from Norway, planed to launch in mid- to late-2009, and still not launched[8]. Furthermore ESA plans on using ISS (The International Space Station) for receiving AIS, but so far an antenna design is completed [9]. Our contribution is a field test with AIS receivers in extended FOV. A typical LEO satellite with low gain antenna experiences a FOV of ∼ 2500 km in radius and this experiment archived a FOV of ∼ 550 km with the help of a balloon. This is still a significantly larger FOV than on ground, even though the FOV is not that of a LEO satellite. In order to collect test data, a satellite prototype (AAUSAT3) has been developed and tested on a balloon flight. AAUSAT3 is the third student satellite from Aalborg University, and everything from project management, development, production and operations is carried out by students. The goal for AAUSAT3 is to investigate the possibilities of receiving AIS messages using a LEO (Low Earth
244
T. Laursen et al.
Orbit) satellite. A complete prototype of AAUSAT3 was used to collect data using a balloon flown in October 2009. The balloon flight was made possible through the BEXUS (Balloon EXperiments for University Students) program, sponsored by ESA, DLR and SNSB. The paper is organized as follows. Section 2 describes the developed methodology. In section 3, the results derived from the collected data set, are presented and discussed. Section 4 concludes these discussions.
2
Methodology
This paper presents the modelling of AIS transmission behaviour with extended FOV, using the data received from the balloon flight. To increase the FOV of an AIS receiver a stratospheric balloon was used. The balloon reached a float height of 24 km for more than 2 hours. With a half-wave dipole mounted on the balloon, the FOV was increased from 50 km to 550 km in radius. The AIS receivers developed for the balloon flight has delivered data for this analysis. One AIS receiver, referred in the following as AIS1 was developed as a hardware receiver based on the ADF7021 radio transceiver. The transceiver demodulates the radio signals from one of the AIS channels to a 9.6 kbaud data stream. This is transfered via a SPI-bus (Serial Peripheral Interface-BUS) to a MCU (Micro Controller Unit) processing the data. AIS packets are detected and stored on permanent memory, both with correct and incorrect CRC16-CCITT checksums [3]. The second AIS receiver, referred to as AIS2 was designed as a SDR (Software Defined Radio). Using a hardware down converter based on the ADF7020 family, the 200 kHz wide frequency spectrum around 162 MHz is down converted to a 200 kHz IF (Intermediate Frequency), which contains both AIS channels. The IF is simultaneously sampled using the AD7262 analog to digital converter with 1 MSPS on both the In phase and Quadrature components. Blocks of 2.175 s are sampled and stored in files of 16 MB each [4]. Covering the area where the balloon was flown, DaMSA was capable of providing reference data from multiple ground stations in the same time interval. The reference data is also included in the analysis. The data analysis has been divided into the following 4 steps: – – – –
Preliminary data analysis and comparison Interpolating transmissions and estimating loss rates Modelling transmission and collision rates Influence of TDMA Zones
Preliminary data analysis and comparison. The first step is a preliminary analysis of the balloon flight data: AIS1 data and AIS2 data. Reference data from the flight period are also analyzed. The number of AIS packets are extracted and the unique MMSI numbers in both reference data and AIS1 data are compared.
Performance Modelling of AIS with Extended Field of View
245
The data from AIS2 is analysed by taking all the ∼ 2 s samples and calculating the average channel use. This is done by counting the number of packets together with the length of them and dividing it by the total time AIS2 has samples from. A decoder has been implemented in MATLAB, to read and decode the raw data from AIS1. AIS uses HDLC to encapsulate message, which is illustrated in figure 1. The data field has different content, depending on the message ID (MSG ID). The AIS standard contains in total 26 different message IDs [2, pp. 93-97]. A message ID 1 packet is a position report from a Class A transponder, where 168 bits of data describes the ships MMSI number, speed over ground, course over ground, position and a communication state together with other position related information. E.g. the Longitude is a 28 bit signed integer, placed between bit 60 and 90, describing the longitude in 1/10000 minutes. Here is a value between ±180 deg valid, and the default value +181 is indicating no position available. The MATLAB script reads the first 6 bits of the data field, which is the message ID. Depending on the message ID the rest of the data is decoded and stored for further analysis. To confirm the AIS1 data set and the decoding, a comparison is made between unique MMSI numbers in AIS1 data and reference data.
Fig. 1. AIS data encapsulation based on HDLC[1, p. 32]
The TDMA zone sizes was estimated. This is done by analysing the number of ships within reach of each ship, which is contained in 3/8 of the AIS position reports according to the AIS standard[1, p. 34]. This data is read from ships and ground stations, to estimate the average number of transponders inside a TDMA zone. Interpolating Transmissions and Estimating Loss Rates. The AIS1 receiver assigns a sequence number to each received AIS packet. In order to create an interpolation of the AIS packets it is necessary to estimate the right timestamp of the packets received. Because the AIS packets from ships only contain the Coordinated Universal Time (UTC) second, it is necessary to estimate the hour and minute. These are estimated using the AIS packets from ground stations, since they contain the UTC hour, minute and second. However, this requires the amount of AIS packets from ground stations to be high enough.
246
T. Laursen et al.
The following three steps are executed to interpolate data from each ship: – Find the next packet from the given ship; – Estimate the condition of the given ship; – Calculate the number of missed packets between two received packets, assuming fixed reporting interval; This interpolated data is used to estimate the loss rate, per ship and averaging over all detected ships. This also allows for the average transmission rate to be estimated. The reporting interval, assuming only dynamic information from Class A transponders, is shown in table 1. Ground stations reporting interval is fixed at 10 s. Table 1. Class A transponder reporting intervals for dynamic information. cc = changing course. Ships dynamic conditions Reporting interval Ship at anchor or moored 3 min Ship 0-14 knots 10 s Ship 0-14 knots + cc 3 1/3 s Ship 14-23 knots 6s Ship 14-23 knots + cc 2s Ship > 23 knots 2s
Modelling Transmission and Collision Rates. In order to find an analytical expression for the probability of collision, certain assumptions has been made. – The ships are assumed to transmit uniformly distributed, based on a average transmit rate, according to tabel 1. – If only one packet is transmitted in a slot, it is assumed to be successfully received. – If more than one packet is transmitted in a slot, they are assumed to collide and to be lost. At first, a slot-based approach is taken, where the different probabilities of different events in a slot is calculated. The three events in a slot are: A) a free slot, B) one packet transmitted or C) packet collision. Under the listed assumptions, the number of packets transmitted in a slot can be calculated using the binomial distribution[10]: n fB (k, n, p) = · pk · (1 − p)n−k (1) k where k is the number of packets in a slot, n is the number of ships within FOV, p is the probability of one ship transmitting in a slot. The variable p can be calculated using the average ship transmission rate in FOV, divided by the
Performance Modelling of AIS with Extended Field of View
247
number of slots in a minute. Equation 1 is used to model the behavior of one channel. A packet-based approach is taken in order to investigate the probability of losing a packet, given that it is transmitted. The probability of sending a packet successfully, PT xok , is assumed to be the same as the probability of no other ships transmitting in the same slot: PT xok = fB (0, n − 1, p)
(2)
Another parameter, probability to detect a ship during an certain observation time, is of interest. The probability of detecting a ship is the probability of receiving at least one packet from the given ship within a predefined time interval: Pdetect = 1 − fB (0, t · tr, PT xok )
(3)
where t is the time observed in minutes, tr is the transmission rate of the observed ship in pck/minute. Influence of TDMA Zones. SO-TDMA protocol ensures that that the transmissions of messages from ships located in one SO-TDMA zone are done without collisions. This can be modelled by dividing the ships into zones. The binomial distribution is still used, but with a different parameters: m fZ (k, n, pz) = · pkz · (1 − pz )m−k (4) k where k is the number of packets in a slot, m is the number of zones within FOV, pz is the probability of one ship, within a given zone, transmitting in a slot. The probability pz can be calculate using the average transmit rate multiplied with the number of ships in a zone, and dividing with the number of slots. Calculating PT xok z taking into account SO-TDMA zones we can use the following formula: PT xok
z
= fZ (0, m − 1, pz )
(5)
The values for transmission rate and the size of zones is found from the collected data, and is used in the model.
3
Results
The balloon flight data was captured from the Northern Scandinavia the 11th of October 2009. The total flight time was from 9:23 to 13:16 UTC. The float period, where the height was ∼24 km, was more than 2 hours. This section shows the results of the analysis, according to the methodology described in the previous section.
248
T. Laursen et al.
Preliminary Data Analysis and Comparison. First, the channel usage is estimated based on AIS2 data from the float period. The average is observed to be reasonable fixed. chusage = 33.1 %
(6)
The channel usage is quite high compared to ground based monitoring there is however spare capacity left on the channel. Table 2 identifies the number of packets received by AIS1. This shows that AIS1 received on average almost 70 AIS messages per MMSI, while the reference data from DaMSA on average contained 9 AIS messages per ship. Table 2. The reference data and decoded AIS1 data Description AIS1 Data Ref. data # of packets 25196 2833 # of ships 339 309 # of ground station 24 -
Figure 2 illustrates the area around the balloon flight. The balloon trajectory is illustrated by the black line. Line of sight is indicated by a circle with 550 km in radius. AIS1 data is shown using blue circles illustrating ground stations and red crosses indicating ships. Here the theoretical FOV, limited by line of sight, seems to be a good fit. Only a few ground stations where observed outside the expected 550 km. This can be explained by a high position of the antenna at ground stations. The channel usage indicates that the AIS channel was not over loaded, and that there was spare capacity on the channels. Figure 3 shows the dynamic condition from the packets received by AIS1. Figure 3 shows that the most common dynamic condition is sailing at a speed up to 14 knots, dictating a reporting interval of 10 s. The second highest number of AIS messages are from ships, with the same speed, but changing their course at the same time. This dynamic condition dictates a reporting interval of 31/3 s. It is noticed that only a very few packets was received from ships at anchor, which is due to the low reporting interval of 3 minutes. Comparison of unique ships detected by AIS1 and located in the reference data from the ground stations, showed that 151 ships had the same MMSI. 158 ships were detected only by the ground stations, and 188 ships were only detected by AIS1. The 158 ships detected by the ground stations, but not by AIS1, can partially be explained by 20 ships outside FOV, 4 ships had Class B transponders and 14 Class A transponders were moored. The reasons for not detecting the rest of the ships are unknown. The data provided by DaMSA’s did not include whether the AIS data was received from Class A or B transponders. However there is a clear indication that not all ships within FOV were detected by AIS1. However, one should note that the presented values can not be used to estimate the detection rate, since the reference data did not only come from the FOV during the flight, nor did it cover the complete FOV.
Performance Modelling of AIS with Extended Field of View
249
Fig. 2. Balloon flight trajectory, AIS1 data and FOV < 1%
At Anchor 0−14 knots changing course 14−23 knots 14−23 knots changing course or >23 knots 0−14 knots
20%
2% 6%
72%
Fig. 3. Ships dynamic condition in the AIS1 received data
The ships detected by AIS1 that were not in the reference data, were mostly outside the range of the ground stations. Other ships that were only detected by AIS1 was because the reference data did not cover the far north of Norway, nor the Finnish coastline. However, the AIS1 receiver did detect ships within area of the reference data, that was not detected by the nearby ground stations. This also supports the claim that the landscape causes issues both for the ground stations and AIS1. The histogram in figure 4 illustrates the number of ships within reach of each ship, as reported by the ships in the AIS messages. The average number of ships within reach of a ship is found to be 12, and 21 for ground stations. The histogram shows that there are a large amount of ships, with very few ships within range. This can be the case for ships sailing on the open sea.
250
T. Laursen et al. 70
Experienced by # ships
60 50 40 30 20 10 0
0
20
40
60 Ships in TDMA zone
80
100
120
Fig. 4. Number of ships within range of each ship
Interpolating Transmissions and Estimating Loss Rates. The data interpolation is based on the AIS1 data received during the float period. The interpolation of ship data from AIS1 extended the data set from ∼17000 to ∼106000 AIS packets. A segment of the data interpolation done on the AIS packets received from one ship is shown in figure 5. The interpolated data is shown in the upper part of the figure as green lines and the received data is shown in the lower part.
Rx msg type 1 as expected Rx msg type 3 as expected Expected but missing msg
4.4
4.42
4.44
4.46 Time [sec]
4.48
4.5
4.52 4
x 10
Fig. 5. A segment of the interpolation done on the data received from the MMSI: 212390000. The figure contains 20 minutes of received data lower part, and interpolated data upper part. Each vertical line represents packets. The height of the lines are at a fixed value for illustration purpose.
The packet reception rate is estimated, using the received and interpolated AIS1 data: AIS1RXaverage =
Rsuccess = 15.9 % Rsuccess + Rmissed
(7)
Performance Modelling of AIS with Extended Field of View
251
where Rsuccess is the number of received packets, Rmissed is the number of packets missed, estimated by the interpolation. Table 3 identifies the number of packets interpolated divided into the different AIS reporting intervals. The estimated time an average ship is in the different reporting intervals is calculated and shown in figure 6. Comparison of the two pie plots, figure 3 and figure 6, shows that the interpolation resembles the received data. The main difference is the percentage at anchor. This is because the time between each packet is larger than the other dynamic conditions. Table 3. Number of packets divided into the different reporting intervals before and after the interpolation State AIS1 Interpolated R. Interval 1 14 68 3 min 2 11892 49971 10 sec 3 334 2428 6 sec 4 3302 41445 3.33 sec 5 924 10913 2 sec
During the balloon flight the average reporting interval observed was: a na · T a = 13.09 s/pck/ship Ps = a na
(8)
where indent na is the number of interpolated packets in state a, Ta is the reporting interval. The sums are taken varying index a that represents a state in Table 3. Since the transmission of AIS packet is done equally on both AIS channels, the AIS packet transmission rate is equal to AIST Xrate = P2s = 6.55 s/pck/ship. The measured average reporting interval of 6.55 s is not far from the 6 s assumed in similar studies[5]. 2%
At Anchor 0−14 knots changing course 14−23 knots 14−23 knots changing course or >23 knots 0−14 knots
20%
2% 3%
73%
Fig. 6. The AIS1 data interpolated and divided into the AIS standards different dynamic conditions, showing the average time spend by a ship in these
252
T. Laursen et al.
Modeling Transmission and Collision Rate. The values estimated from the measured data for the average reporting interval and the number of ships per zone are used in the input parameters for equations in Section 2.3. 1 Probability of empty/free slot A 0.5 0
0
1000
2000
3000
4000
5000
6000
7000
0.4 Probability for good transmission in a slot B 0.2 0
0
1000
2000
3000
4000
5000
6000
7000
1 Probability for collision in a slot C 0.5 0
0
1000
2000
3000
4000
5000
6000
7000
Fig. 7. Probability for (A) none, (B) one and (C) > 1 simultaneous transmissions in one slot, as a function of number of transponders within FOV
Using data from AIS2, the channel utilization was measured to around 33 % (equation 6). From Figure 7A, using the probability of a free channel being 0.67, we obtain a number of 195 ships within FOV. In the collected data there were registered messages from a larger number of ships, 336 ships. This can indicate that not all lost messages were lost due to collisions; some messages could be lost due to long distance between a transmitter and receiver. Using equation (2), the probability for a transmission being successful can be calculated. For 195 ships within FOV is found to be 0.68. With 336 ships within FOV (corresponding to AIS1 detected Class A transponders and ground stations), the probability for a transmission being successful is 0.51. Figure 8 presents the probability of detecting a ship during a limited period of time is found using the model. Here, detecting a ship that is moored or at anchor (3 min) is less likely than a ship on the way. This is due to the high difference in the reporting interval from 3 min to 2 s. Influence of TDMA Zones. To show the difference between the ship based and the zone based model, the probability of detecting a ship is calculated using both (see Figure 9). The figure shows that the difference when using the ship based model (equation 1) or the zone based model (equation 4) is minimal, especially in lightly sailed waters, like the one experienced during the balloon flight.
Performance Modelling of AIS with Extended Field of View
253
1 6.55 s 2s 3 min
Probability of ship detection
0.8
0.6
0.4
0.2
0 0
1000
2000 3000 4000 5000 Number of ships within FOV
6000
7000
Fig. 8. Probability of detecting a ship during 10 min when using different reporting intervals 1 Probability without zones Probability with zones 0.8
0.6
0.4
0.2
0 0
1000
2000 3000 4000 5000 Number of ships within range
6000
7000
Fig. 9. Probability of detecting a ship with and without zones
4
Conclusion
This paper has investigated the severity of the increased probability for packet collisions when receiving AIS with extended FOV. A high altitude Balloon has been flown with two AIS receivers gathering realistic data for extracting the loss rate. Since the reference data and received data does not cover exactly the same area, the detected percentage does not directly indicate the receiver performance.
254
T. Laursen et al.
But it can be seen that along the coast of Norway some ships has been missed by AIS1, and not by ground stations, and vice versa. This indicates that the fjords and mountains of Norway makes this data set non-ideal for comparison. The interpolation method proved to be working properly on the received packets and estimated the number of in-between transmissions. Of the interpolated data 15.9 % was actually received, indicating a loss rate of 0.841. The theoretical collision probability was found to be between 0.32 and 0.49. The difference between the loss rate and the collision probability is too significant to be neglected. This could partly be explained by low SNR causing packet errors. Also the previous mentioned fjords and mountains has influenced the line of sight, and the different experienced transponder qualities. The interpolation method does not only apply to the balloon experiment, but can also be used in a experiment where data from multiple ground stations is used to estimate the traffic, which then could be used for modelling collision probability in the given area. Furthermore, the link budget and collisions due to propagation delay should also be taken into account in the theoretical calculations. This paper concludes, that the most important parameter, when receiving AIS with extended FOV, is the number of ships within FOV. Hence, when designing a satellite to receive AIS signals in space, the first challenge is to design the antenna. The antenna should be designed to limit the FOV, depending on the expected number of ships in the region of interest, and the required probability of ship detection. According to this study a FOV around 1200-1500 ships is the maximum desired. The antenna design could e.g. be a helical antenna, with the length chosen to increase gain and reduce the FOV to an acceptable size before satellite launch, since a service visit to a satellite is undesirable.
Acknowledgements The authors would like to thank all colleagues from the Satellite group at Aalborg University and everybody who was involved in the development of the AAUSAT3 satellite. We also would like to thank the Danish Maritime Safety Administration for collaboration and providing us with the reference data.
References 1. ITU-R M.1371-2 Technical characteristics for an universal automatic identification system using time division multiple access in the VHF maritime mobile band (19982001-2006) 2. ITU-R M.1371-3 Technical characteristics for an universal automatic identification system using time division multiple access in the VHF maritime mobile band (19982001-2006-2007) 3. Andersen, M.H., Pedersen, N.B., Rasmussen, U.W., Laursen, T.: Satellite AIS Receiver. Technical Report (2009) 4. Jessen, T., Ledet-Pedersen, J., Mortensen, H.P.: Software Defined AIS Receiver For AAUSAT3. Technical Report (2009)
Performance Modelling of AIS with Extended Field of View
255
5. Cervera, M.A., Ginesi, A.: On the Performance Analysis of a Satellite-based AIS System. In: The Proceedings of the 10th International Workshop on Signal Processing for Space Communications (2008) 6. Cervera, M.A., Ginesi, A., Eckstein, K.: Satellite-based vessel Automatic Identification System: A feasibility and performance analysis. International Journal of Satellite Communications and Networking (2009) (Published Online December 8, 2009) 7. Danish Marime Safety Administration, http://frv.dk/Sejladsinformation/AIS/Pages/ Fordele begraensninger AIS.aspx 8. The AISSat-1 Mission, http://www.utias-sfl.net/nanosatellites/AISSat-1/ 9. Atlantis leaves Columbus with a radio eye on Earth’s sea traffic, http://www.esa.int/esaHS/SEMIHX49J2G_iss_0.html 10. Ross, S.M.: Introduction to Probability and Statistics for Engineers and Scientists, 3rd edn. (2004)
Performance Measures Computation for a Single Link Loss Network with Unicast and Multicast Traffics Irina Gudkova and Olga Plaksina Peoples Friendship University of Russia, Telecommunication Systems Department, Ordzhonikidze str. 3, 115419 Moscow, Russia {igudkova,oplaksina}@sci.pfu.edu.ru http://www.telesys.pfu.edu.ru
Abstract. The resource sharing is a fundamental issue for multirate loss networks, specially for multicast traffic with a huge number of recipients. In this paper, we give a generalized mathematical model to compute exact values of performance measures for unicast and multicast multirate traffics sharing a single link. We propose a recursive algorithm to obtain the normalization constant and the main performance measures, including blocking probabilities and link utilization factor. Keywords: Multiservice loss networks, multicast, unicast, blocking probabilities, recursive algorithm.
1
Introduction
The resource sharing problem is a key problem in multiservice loss networks. Multirate unicast loss models have been widely studied. An effective recursive algorithm to calculate blocking probabilities was proposed in [4], [5]. A set of works was devoted to multicast traffic models including [2], [3], [7]. Two different users’ behavior models were studied. The first one is based upon the assumption that all multicast users are involved in a session from the moment they join it until the user initiated this session departs. The second one assumes that all users depart independently and the session is active if there is at least one multicast user. The first model was introduced in [7] where the recursive formula for the main performance measures was proposed. Nevertheless, it has a limitation as it allows to compute characteristics for the one multicast service only. The second model was studied by a number of researchers. In [3] the multiservice loss model was introduced and the exact blocking probabilities were deduced. Then, based on this work in [2] a recursive algorithm for a multicast single link network was derived. There was also proposed a convolution formula for a model with a mixture of unicast and multicast traffic; however the use of convolution led to significant computational costs. The model [7] was extended for the case of two traffic types in [6] where a recursive algorithm was proposed. S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 256–265, 2010. c Springer-Verlag Berlin Heidelberg 2010
Performance Measures Computation for a Single Link Loss Network
257
In this paper, considering the results obtained in [6] and [2] we generalize a model of a single link loss network with unicast and multicast traffics independently of multicast users’ behavior. We present a new recursive algorithm to calculate a number of performance measures. Note that the proposed additional recursion enables to reduce computational time in comparison with [6]. The rest of this paper is organized as follows. In the next section, we present the mathematical model of a single link loss network with multicast and unicast traffics and its product solution form. The main performance measures are also described. In section 3, we present the recursive algorithm to calculate blocking probabilities and other characteristics. Then in section 4, an example is given to illustrate the use of the algorithm. A summary of this paper is discussed in section 5.
2 2.1
Model of a Multiservice Single Link Loss Network with Unicast and Multicast Traffics Single Link Model
We consider a single link multiservice network supporting unicast and multicast traffics. The link has C capacity units (c.u.) and supports K := {1, . . . , K} classes of unicast connections and M := {1, . . . , M } multicast services, as shown in Fig.1.
Fig. 1. Model of a multiservice single link loss network with unicast and multicast traffic
Class-k connections arrive according to independent Poisson process with rate νk and have requirements of dk c.u., ak is the offered load, k ∈ K. Multicast traffic has a bandwidth saving nature. Users requested the same service are served simultaneously without occupying additional network resources. Such service discipline we refer as “transparent”. Consider two transparent disciplines T1 and T2 corresponding to multicast users’ behavior models described in [7] and [2] respectively. User requests for service m arrive according to independent Poisson process with rate λm . A request for service m is blocked and
258
I. Gudkova and O. Plaksina
lost if both of the following conditions are true: service m is not provided to any user via the link and there are less than bm c.u. free. Otherwise the request is accepted. For the discipline T1 session duration equals service initiator residency time that is exponentially distributed with mean μ−1 m . During this period of time newly arriving users requested the same service are accepted without blockings, but they do not affect session duration. When this session ends all users depart together with the session initiator. For the discipline T2 session duration could be increased by newly arriving requests for service m. Each user request has exponential residency time with mean μ−1 m . Session ends when the last user departs. Let denote ρm := λm μ−1 m , m ∈ M. 2.2
State Probabilities
Firstly, we consider unicast traffic and introduce a process describing it. Let Nk (t) be the number of k-class connections in the system at time t, then the process {N (t) := (N1 (t) , . . . , NK (t)) , t ≥ 0} represents the states of unicast connections. Let d (n) := k∈K dk nk be the number of c.u. occupied in state n := (n1 , . . . , nK ), nk ∈ {0, . . . ,C/dk } =: Nk . The state space is given by N :=
n ∈ × Nk : k∈K
d (n) ≤ C . State probabilities for the process N (t) are
well known [1], [4]: π (n) = G−1 (N )
ank k , nk !
n∈N .
(1)
k∈K
In this paper, notation G (A) stands for a normalization constant for the corresponding process distribution with the state space A. Then, consider multicast traffic. In [2] the link states are described through the number of multicast users; in [6] they are described through the states of multicast services. The last approach let us to construct a general model independently of users’ behavior. Let Ym (t) equals 1 in the case when service m is active at time t, and 0 otherwise. The process {Y (t) := (Y1 (t) , . . . , YM (t)) , t ≥ 0} represents the states of multicast services. Let b (y) := m∈M bm ym be the number of c.u. occupied in state y := (y , . . . , y ), y ∈ {0, 1}. The state space is given by 1 M m M Y := y ∈ {0, 1} : b (y) ≤ C . From the global equilibrium balance equations it can be shown that state probabilities for process Y (t) are given by αymm , y ∈ Y , (2) π (y) = G−1 (Y) m∈M
with parameter αm := λm wm , where wm is the mean session duration for service m and depends on service discipline. For disciplines T1 and T2 (see Appendix) we have: −1 μm , for discipline T1 , wm = (3) , (eρm − 1) λ−1 m for discipline T2 .
Performance Measures Computation for a Single Link Loss Network
259
Finally, we consider the case of both unicast and multicast traffics sharing the link. The process {Z (t) := (N (t) , Y (t)) , t ≥ 0} represents the system states. Let c (z) := d (n) + b (y) , z ∈ N × Y (4) be the number of occupied c.u. in state z := (n, y). The system state space is given by Z := {z ∈ N × Y : c (z) ≤ C} . (5) The process Z (t) is a reversible Markov process with equilibrium distribution ank k π (z) = G−1 (Z) αymm , z ∈ Z , (6) nk ! k∈K
m∈M
where G (Z) = π −1 (0) is the normalization constant. 2.3
Performance Measures
The main model performance measures are the probability BkI := P z ∈ BkI II II := P z ∈ Bm that a that a k-class connection is blocked, the probability Bm user request for service m is blocked, the probability Hm := P {z ∈ Hm } that service m is not offered, but the link has enough c.u. to satisfy a user request for the service, the probability Fm := P {z ∈ Fm } that service m is offered via the link, where BkI := {z ∈ Z : II := {z ∈ Z : Bm
C − dk + 1 ≤ c (z) ≤ C} ,
k∈K,
(ym = 0) ∧ (C − bm + 1 ≤ c (z) ≤ C)} ,
Hm := {z ∈ Z :
(ym = 0) ∧ (0 ≤ c (z) ≤ C − bm )} ,
Fm := {z ∈ Z :
ym = 1} ,
m∈M, m∈M,
m∈M,
and the utilization factor of the link 1
UTIL := c (z) π (z) . C
(7) (8) (9) (10)
(11)
z∈Z
Calculating performance measures for links with large capacity serving a huge number of users leads to large state space dimension and significant computational costs. In the next section, we give a recursive algorithm to avoid difficulties in computing.
3 3.1
Recursive Algorithm for Performance Measures Computation State Space Partitioning
To derive a recursive algorithm we use the approach based on partitioning the system state space Z for the number of occupied c.u.: Z=
C c=0
Z (c) ,
Z (c) := {z ∈ Z :
c (z) = c} , c = 0, . . . , C .
(12)
260
I. Gudkova and O. Plaksina
The notation
Ai in this paper denotes that sets Ai are mutually disjoint.
i∈I
Then, for every service m subset Z (c) could be partitioned in two subsets according to its state – whether service m is active or not: Z (c) = {z ∈ Z (c) : ym = 0} m ∈ M, c = 0, . . . , C .
{z ∈ Z (c) :
ym = 1} ,
(13)
The first one subset we denote as Z−m (c) := {z ∈ Z (c) :
m ∈ M, c = 0, . . . , C .
ym = 0} ,
(14)
Now, sets (7) – (10) can be expressed through the defined subsets Z (c) and Z−m (c) as follows: BkI =
C
Z (c) ,
k∈K,
(15)
c=C−dk +1
II Bm =
C
Z−m (c) ,
m∈M,
(16)
c=C−bm +1
Hm =
C−b m
Z−m (c) , Fm =
c=0
C
Z−m (c) ,
m∈M.
(17)
c=0
II It is evident that Bm Hm Fm = Z. Taking into account that the link serves two different types of traffic, every subset Z (c) and Z−m (c) can be written down as a convolution Z (c) =
c
[Y (i) × N (c − i)] ,
c = 0, . . . , C ,
(18)
i=0
Z−m (c) =
c
[Y−m (i) × N (c − i)] ,
m ∈ M, c = 0, . . . , C ,
i=0
where N (c) := {n ∈ N : d (n) = c} , N =
C
N (c) ;
c=0
Y (c) := {y ∈ Y : b (y) = c} , Y =
C
Y (c) ,
c=0
Y−m (c) := {y ∈ Y (c) : ym = 0} .
(19)
Performance Measures Computation for a Single Link Loss Network
3.2
261
Recursive Formula for Multicast Traffic
Performance measures for unicast connections can be calculated by the well known Kaufman–Roberts recursive formula [4], [5] ⎧ 0 c < 0, ⎪ ⎪ ⎨ 1, c = 0, h (c) = 1
(20) ⎪ a d h (c − d ) , c = 1, . . . , C , ⎪ k k k ⎩c k∈K
where h (c) is the unnormalized probability that exactly c c.u. are occupied. The recursive solution (20) cannot be applied for multicast traffic. Other solution was proposed separately for disciplines T1 and T2 in [7] and [2] respectively. Here we generalize this approach. Let ym := (y1 , . . . , ym ) be the m-dimension vector of the first m multicast m b y be the number of c.u. occupied services states; then let b (ym ) := i=1 i i by the first m multicast services in the state ym . The set of all possible states ym when the number of occupied c.u. is equal to c we denote as Y (c, m) := {ym : y ∈ Y, b (ym ) = c}. Then ⎧ ∅, c < 0, m = 0, 1, . . . , M, ⎪ ⎪ ⎪ ⎪ c = 0, m = 0, 1, . . . , M, ⎨ {0} , c = 1, . . . , C, m = 0, Y (c, m) = ∅, ⎪ ⎪ ⎪ Y (c, m − 1) × {0} ⎪ c = 1, . . . , C, m = 1, . . . , M, ⎩ Y (c − bm , m − 1) × {1} , (21) where notation A1 × A2 denotes the product set of sets A1 and A2 . The last line in the formula (21) goes from Y (c, m) = {ym ∈ Y (c, m) : ym = 0} {ym ∈ Y (c, m) : ym = 1} . (22) Note that Y (c, M ) = Y (c) and it let us calculating blocking probabilities for unicast traffic. For multicast traffic we need another recursion for sets Y−m (c) that has the following form: ⎧ c<0, ⎨ ∅, c=0, (23) Y−m (c) = {0} , ⎩ Y (c) \ (Y−m (c − bm ) + em ) , c = 1, . . . , C , with the unit vector ei = 0, . . . , 0, 1, 0, . . . , 0 and A+ei = {a + ei : a ∈ A}. i
It could be simply obtained from Y (c) = {y ∈ Y (c) : ym = 0} {y ∈ Y (c) : ym = 1} = (24) = Y−m (c) (Y−m (c − bm ) + em ) . m Let’s define g (c, m) := ym ∈Y(c,m) i=1 αyi i be the unnormalized probability that first m services occupy exactly c c.u.; and g−m (c) := y∈Y−m (c) i∈M αyi i – the
262
I. Gudkova and O. Plaksina
unnormalized probability that exactly c c.u. are occupied and service m is not offered. Then from the definitions (21) and (23) the following theorem can be easily derived. Theorem 1. The unnormalized probabilities g (c, m) and g−m (c) are calculated by recursive formulas ⎧ 0, c < 0, m = 0, 1, . . . , M , ⎪ ⎪ ⎪ ⎪ c = 0, m = 0, 1, . . . , M , ⎨ 1, c = 1, . . . , C, m = 0 , g (c, m) = 0, (25) ⎪ ⎪ ⎪ g (c, m − 1) + ⎪ c = 1, . . . , C, m = 1, . . . , M , ⎩ +αm g (c − bm , m − 1) , ⎧ c<0, m = 1, . . . , M , ⎨ 0, c=0, m = 1, . . . , M , g−m (c) = 1, ⎩ g (c) − αm g−m (c − bm ) , c = 1, . . . , C , m = 1, . . . , M ,
(26)
where g (c) = g (c, M ). 3.3
Recursive Algorithm for Unicast and Multicast Traffics
Finally, we introduce the recursive algorithm for unicast and multicast traffics sharing the link. Let f (c, m) be the unnormalized probability that unicast connections and first m services occupy exactly c c.u.; and let f−m (c) be the unnormalized probability that exactly c c.u. are occupied and service m is not offered, then f (c, m) =
c
[g (i, m) · h (c − i)] ,
c = 1, . . . , C, m = 1, . . . , M ,
(27)
[g−m (i) · h (c − i)] ,
c = 1, . . . , C,
(28)
i=0
f−m (c) =
c
m = 1, . . . , M .
i=0
Theorem 2. The normalization constant G (Z) and performance measures BkI , II Bm , Hm , Fm and utilization factor UTIL can be computed as G (Z) =
C
f (c) ,
(29)
c=0
BkI = G−1 (Z)
C
f (c) ,
k∈K,
(30)
c=C−dk +1 II = G−1 (Z) Bm
C
c=C−bm +1
f−m (c) ,
m∈M,
(31)
Performance Measures Computation for a Single Link Loss Network
Hm = G−1 (Z)
C−b
m
f−m (c) ,
m∈M,
263
(32)
c=0
Fm = 1 − G−1 (Z)
C
f−m (c) ,
m ∈ M,
(33)
c=0
UTIL =
C 1
cf (c) , C c=0
(34)
where f (c) = f (c, M ); and f (c, m) is calculated by the recursive formula ⎧ 0, ⎪ ⎪ ⎪ ⎪ 1, ⎪ ⎪ ⎨1
f (c, m) =
c < 0, c = 0,
m = 0, 1, . . . , M , m = 0, 1, . . . , M ,
ak dk f (c − dk , 0) , c = 1, . . . , C, m = 0 , c ⎪ k∈K ⎪ ⎪ ⎪ ⎪ f (c, m − 1) + ⎪ ⎩ c = 1, . . . , C, m = 1, . . . , M , +αm f (c − bm , m − 1) ,
and f−m (c) is calculated by ⎧ c<0, ⎨ 0, c=0, f−m (c) = 1, ⎩ f (c) − αm f−m (c − bm ) , c = 1, . . . , C .
(35)
(36)
The proof follows from the convolution formulas (27) and (28) and the recursive formulas (20), (25) and (26). Table 1 illustrates computational complexities of three algorithms: given in this paper, [2] and [6].
Table 1. Computational complexities of the recursive algorithms Characteristic
Theorem 2
Paper [2]
Paper [6]
Normalization constant G (Z) O (C (K + M )) O C (K + M ) + C 2 O (C (K + M )) Blocking probabilities II Bm ,m∈M O (C (K + 2M )) O C (K + 3M ) + C 2 O (CM (K + M ))
Complexity of computation of the normalization constant G (Z) by the formula (29) and recursion in [6] are equal. Computation of blocking probabilities II Bm , m ∈ M, by the proposed algorithm requires less operations in comparison with the others.
264
4
I. Gudkova and O. Plaksina
Example
We give an example of a single link network serving unicast and multicast traffics to illustrate the use of recursive algorithm given in subsection 3.3. Let consider a link with capacity C = 1000 c.u. serving 3 unicast connection classes with requirements d = 1 c.u. and 7 multicast services with capacity requirements b = 100 c.u., ρ = 2. Varying unicast traffic load a from 0 to 400, we compute the performance measures (30)–(34) for unicast and multicast traffic. The results are plotted in Fig.2.
Fig. 2. Performance measures for an example of a multiservice single link loss network with unicast and multicast traffics. (1 ) probability BkI that a k-class connection is II blocked, k = 1, 2, 3; (2 ) probability Bm that a user request for service m is blocked, (3 ) probability Hm that service m is not offered, but the link has enough c.u. to satisfy a user request for the service, (4 ) probability Fm that service m is offered via the link, m = 1, 7; (5 ) utilization factor UTIL.
5
Conclusion
In this paper, we addressed the multirate resource sharing problem for unicast and multicast traffics. We give a generalized model of a single link loss network serving two types of traffic and give its product form solution. We propose a recursive algorithm to compute performance measures allowing avoiding the numerical problems that may arise when computing these quantities. Acknowledgments. The authors are grateful to prof. Konstantin Samouylov and associate prof. Yulia Gaidamaka for their advice and guidance.
Performance Measures Computation for a Single Link Loss Network
265
References 1. Basharin, G.P., Samouylov, K.E., Yarkina, N.V., Gudkova, I.A.: A New Stage in Mathematical Teletraffic Theory. Automation and Remote Control 70(12), 1954– 1964 (2009) 2. Boussetta, K., Belyot, A.-L.: Multirate Resource Sharing for Unicast and Multicast Connections. In: Proc. of the Fifth International Conference on Broadband Communications, Hong Kong, pp. 561–570 (1999) 3. Karvo, J., Virtamo, J.T., Aalto, S., Martikainen, O.: Blocking of Dynamic Multicast Connections in a Single Link. In: Proc. of the Fourth International Conference on Broadband Communications, Stuttgart, Germany, pp. 473–483 (1998) 4. Kaufman, J.S.: Blocking in a Shared Resource Environment. IEEE Transactions on Communications 29(10), 1474–1481 (1981) 5. Roberts, J.W.: A Service System with Heterogeneous User Requirements. In: Pujolle, G. (ed.) Performance of Data Communications Systems and Their Applications, vol. 29(10), pp. 423–431. North-Holland, Amsterdam (1981) 6. Samouylov, K., Yarkina, N.: Blocking Probabilities in Multiservice Networks with Unicast and Multicast Connections. In: Proc. of the 7-th International Conference on Telecommunications, Zagreb, Croatia, pp. 423–429 (2005) 7. Gaidamaka, Y., Samouylov, K.: Analytical Model of Multicast Network and Single Link Performance Analysis. In: Proc. of the 6-th International Conference on Telecommunications, Zagreb, Croatia, pp. 169–175 (2001)
Appendix Let describe the states of the link serving multicast traffic through the number of multicast users and show how it is associated with the distribution of multicast service states. Let Xm (t) be the number of users involved in multicast session of service m at time t, then the process {X (t) := (X1 (t) , . . . , XM (t)) , t ≥ 0} represents the number of multicast users. Let b (x) := m∈M bm u (xm ) be the number ofoccupied c.u. in state x := (x 1 , . . . , xM ). The state space is given M
by X := x ∈ {0, 1, . . .} : b (x) ≤ C . Note that u (·) is a Heaviside step function. Then for the discipline T1 state probabilities are given by ρm xm −1 π (x) = G (X ) , x∈X , (37) 1 + ρm m∈M
and for the discipline T2 π (x) = G−1 (X )
ρx m m , xm !
x∈X .
(38)
m∈M
Let us define sets X (y) := {x ∈ X : u (xm ) = ym , m ∈ M}, y ∈ Y. In order to get the probability distribution (2), (3) we need to sum up the corresponding probabilities (37) or (38) over the sets X (y):
π (x) , y ∈ Y . (39) π (y) = x∈X (y)
Realization of a Method of Matrix-Geometric Progression Yuri Ryzhikov Institute of computer science and automation of the Russian Academy of Sciences Saint-Petersburg, Russia [email protected]
Abstract. Ways of calculation of a denominator of a matrix-geometrical progression and initial vectors of probabilities of microstates are examined and compared at calculation of multi-phase multichannel queuing systems. Keywords: Queuing theory, matrix-geometric progression.
Introduction The entering of mankind into an era of information technologies determines growing interest to methods of designing and an estimation of data transmission and processing systems efficiency. Feature of a present situation — approaching of computer elements technology to fundamental physical restrictions. For this reason required parameters of productivity are achieved by creation of multiprocessor and multi-machine systems, which performance cannot be investigated sufficiently by modern methods of the queueing theory. The known useful results are exhausted by systems with constant service time (M/D/n, Ek /D/n) or to exponential service time (GI/M/n). We suppose the investigation and some modifications of the matrix-geometric progression method to compute a distribution of the number of demands in phase-approximated queueing systems. These modifications are illustrated on the M/H2 /n, but can be generalized easily.
1
Multiphase Representation of the Queueing Systems
The broad class of above mentioned problems can be solved by means of the multiphase approximations of initial distributions. Each combination of distributions (Erlangian, Coxian, hyperexponential, general Neuts’ distributions) and of theirs orders generates the specific transition diagram. Certainly, at the picture of diagrams the orders of distributions and number of channels must be concretized — see [1]. S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 266–274, 2010. c Springer-Verlag Berlin Heidelberg 2010
Realization of a Method of Matrix-Geometric Progression
267
For potential users the most interesting is the two-phase hyperexponential service time distribution, allowing to equal three moments of initial one. Parameters of this approximation depending on a variation factor can be real or complex and are computed easily by explicit formula. The working of M/H2 /3 system can be interpreted as process of service of a heterogeneous stream of demands [3], and the choice of its kind determines the parameter of exponentially distributed service time. The ”key” of a microstate specifies the quantity of each type demands being serviced (fig. 1, 2). The total entering stream has intensity λ; arriving (or chosen from the queue) demand belongs with probability yi to i-th type. Table 1. On arrival transitions
0
1
2
3
4
00 @ λy1 λy@ 2 @ 10 01 @ @ λy1 λy@ 2 λy1 λy2@ @ @ 20 11 02 @ @ @ λy1 λy@ 2 λy1 λy2@ λy1 λy@ 2 @ @ @ 30 21 12 03 λ
λ
λ
λ
30
21
12
03
Table 2. On service transitions
0
00 @ @ μ2 @ 10 01 @ @ 2μ1 μ2@ μ1 @ 2μ2 @ @ 20 11 02 @ @ @ 3μ1 μ2@2μ1 2μ2@ μ1 @ 3μ2 @ @ @ 30 21 12 03 y1 y2 y1 y2 y1 y2 @ @ @ @ @ 3μ1 μ1 @@3μ2 μ2@ 2μ1 2μ@ 2 30 21 12 03 μ1
1
2
3
4
268
Y. Ryzhikov
On the right figure at j > n parameter of an i-th type demands servicing stream is equal to mi μi , where mi is the contents of the i-th key position. End of servicing with probabilities {yi } depending on the type of demand chosen from queue results in one of microstates of an overlying lay. Calculation of multiphase systems consists in the solving of transition balance equations for probabilities of microstates. Included in them transition matrices can be constructed automatically. Let’s designate through Sj set of all possible microstates of system at which on service is equally j demands (lay j), and through σj — quantity of elements in Sj . Further according to the diagram of transitions for the chosen model we shall construct the matrices of transition intensities: Aj [σj × σj+1 ] — in Sj+1 (arrival of the demand), Bj [σj × σj−1 ] — in Sj−1 (end of the demand servicing), Dj [σj × σj ] — leaving from states of a lay j (in the brackets the size of matrices is inscribed). The equations of probabilities balance are γ0 D0 = γ1 B1 , γj Dj = γj−1 Aj−1 + γj+1 Bj+1 ,
j = 1, 2, . . .
(1)
The idea of iterative solving this system was proposed by Takahashi and Takami [2]. Its key elements are the transition to conditional (normalized to unity in the lay) probabilities of microstates and the supposition on the stabilization of them if the number of lay tends to infinity. This method was described in [3] in general and more elaborated form.
2
Matrix-Geometrical Progression
Idea of a method. To calculate queuing systems on suppose rather promising the method of a matrix-geometrical progression (MGP), offered by Evans [4] and developed by M.Neuts [5] and his followers (see, for example, [6]). Unfortunately, in the literature there is no distinct comparison of its possible variants, and the technology of calculating initial diagram lays is not discussed in general. These questions make the basic sense of report. Let’s write some equation of the system (1) for j > n, omitting indexes at the transition matrices stabilized to this lay: γj D = γj−1 A + γj+1 B.
(2)
Now we attempt to present probabilities of microstates of completely occupied n-channel system as a vector γj = γn Rj−n ,
j = n, n + 1, . . . ,
(3)
where R is a matrix denominator of a progression. Having substituted expressions of vectors of probabilities of states accordingly (3), it is possible to copy (2) as γj−1 RD = γj−1 A + γj−1 R2 B,
Realization of a Method of Matrix-Geometric Progression
269
whence follows, that the required denominator of a progression should satisfy to a matrix quadratic equation R2 B − RD + A = 0.
(4)
Having this denominator a vector pn of probabilities of the n-th lay microstates, it is possible to calculate probabilities of lay microstates for j > n according to (3). Variants of MGP realization differ with ways of calculation of a denominator of a progression R and technics of the calculation of vectors of probabilities. Calculation of a denominator of a progression. The basic problem of MGP realization consists in the finding of a denominator R of a progression The equation of a kind (4) can be solved by only numerical methods from which are really used only iterative ones. Methods of type of simple iteration can be applied in variants (5) R = R2 BD−1 + AD−1 or
R = A(D − RB)−1 .
(6)
Certainly, constant components of matrix products should be calculated unitary. One more variant of the iterative approach goes back to work [7], see also [6,8]. After addition Rω to both parts of the equation (4) we receive the formula R=
1 2 [R B − R(D − Iω) + A]. ω
(7)
The parameter ω in [8] was offered to be chosen equal to 3, and in [6] — as the minimal module of diagonal elements of a matrix Dn . During the numerical experiments carried out by the author these both approaches resulted in not-converging computing process. It was good luck to establish, that the comprehensible solving is the choice of mean geometrical of the Dn extreme elements. Let’s consider, at last, ”newtonian” (in linear approach) calculation of matrix amendment Δ to a denominator of a progression. We find Δ from equation (R + Δ)(R + Δ)B − (R + Δ)D + A = 0. Neglecting a member containing a square of the amendment, we have R2 B + ΔRB + RΔB − RD − ΔD + A ≈ 0, or Δ(RB − D) + RΔB ≈ RD − R2 B − A. Last equation rewrited in a kind ΔF + RΔB = G
(8)
also is linear concerning a correction matrix. However in one of its occurrences the correction matrix Δ participates in the product of three matrices as an internal factor that excludes its determination by standard methods. This difficulty
270
Y. Ryzhikov
is removed after expression of factors of the extended form of system of the equations (8) through elements of known matrices A, B and D. The number of unknown variables of resulting system for model M/H2 /n is (n + 1)2 . It is known that labor input of standard methods of the solving of the linear algebraic equations system is proportional to a cube of its size. Thus, labor input of Newton’s method of MGP denominator calculation has the order O(n6 ), that shows significant requirements to operative memory and makes very laborconsuming each step of iteration. However it is possible to hope for the total prize in labor input owing to sharp reduction of the number of iterations. Many authors recommend as initial approach to all considered variants R0 = xI,
(9)
where x is the limiting at j → ∞ relation of total probabilities of adjacent lays and can be approximated by 2
x = ρ2/(1+vB ) (in a denominator of exhibitor there is a square of a variation factor of the service time distribution). Reduction of the number of iterations is achieved by reception of best initial approach. In this sense Newton’s variant is especially critical for which the area of convergence is small. For this reason it was used in a combination with an anticipating second iterative variant. The amount of preceding refinement steps to reduce the number of Newton’s iterations at big n grew on n (it was set equal n/2). Calculation of starting microstate probabilities. At known R, we find the vectors {γj }, j = 0, n, solving the system of global balance equations for microstates of the corresponding lays, added with an equation of demand’s balance: n−1
j=0 (n − j)γj 1j = n − b/a, γ0 D0 − C0 ) = γ1 B1 , γj (Dj − Cj ) = γj−1 Aj−1 + γj+1 Bj+1 , j = 1, n − 1, γn (Dn − Cn ) = γn−1 An−1 + γn RBn+1 .
(10)
Practically before the solving it is necessary to expand this system on components of the mentioned vectors (in model M/H2 /n total number is (n + 1)(n + 2)/2). The subsequent vectors of probabilities are determined on a basis (3) recurrently — multiplicating the previous vector on a matrix R. There is,¡however, the best way. Let’s copy system (??) as γj Aj = γj+1 Dj+1 − γj+2 Bj+2 , − γn RBn+1 . γn−1 An−1 = γn Dn
j = 1, n − 2,
(11)
Realization of a Method of Matrix-Geometric Progression
271
Suppose A˜j a matrix complex conjugated with Aj and transposed. We multiply the equations (11) on the right on A˜j : γj Aj A˜j = γj+1 Dj+1 A˜j γj+2 Bj+2 A˜j , j = 1, n − 2, γn−1 An−1 A˜n−1 = γn Dn A˜n−1 − γn RBn+1 A˜n−1 .
(12)
With the help (12) we shall recurrently express initial vectors of microstate probabilities through γn : ˜n−1 (An−1 A ˜n−1 )−1 , γn−1 = γn (Dn − RBn+1 )A −1 ˜j (Aj A ˜j )−1 , γj = γj+1 Dj+1 A˜j (Aj A˜j ) − γj+2 Bj+2 A j = n − 2, n − 3, . . . , 0.
(13)
For simplification of designations we shall put A∗j = A˜j (Aj A˜j )−1 and shall introduce recalculation matrices {VJ } such that γj = γn Vj ,
j = 0, n.
(14)
Obviously, Vn = I (unity matrix of the corresponding size). Now it is possible to copy system (13) as γn Vn−1 = γn (Dn − RBn+1 ) A∗n−1 , γn Vj = γn Vj+1 A∗j − γn Vj+2 Bj+2 A∗j , j = n − 2, n − 3, . . . , 0. Let’s note (it is checked up experimentally), that all {A∗j } are submatrices of A∗n−1 . So, recalculation matrices can be determined recurrently with the help of system Vn = I, Vn−1 = (Dn − RBn+1 ) A∗n−1 , (15) Vj = (Vj+1 − Vj+2 Bj+2 )A∗j , j = n − 2, n − 3, . . . , 0. For the completion of calculation it is necessary to specify a way of γn calculation. We shall write down an equation of demands balance, believing total probabilities of the j-th lay pj = γj 1j : γn
n−1
(n − j)Vj 1j = n − λb.
j=0
Here 1j = {1, 1, . . . , 1}T . It can be copied as n−1
n−1
j+1 n+1
j=0
j=0
n+1 n−1
i=1 m=1 j+1
m=1 j=0
i=1
(n − j)pj = =
(n − j)
(n − j)
γn,m vj,m,i vj,m,i .
(16)
272
Y. Ryzhikov
Additional n missing equations we shall receive from equations of balance of transitions through vertical cuts on the diagram of transitions fig. 1, received of initial diagrams by their association and removing ”strictly vertical” transitions. For i-th vertical section we have a balance equation λy2
n−1 j=i−1 n
= iμ2
j=i
γj,i + (n + 1 − i)μ1 y2 γj,i+1 + iμ2 y1
∞ j=n+1
∞ j=n+1
γj,i+1 ,
γj,i i = 1, n.
Fig. 1. ”Diagonal” transitions
Let’s calculate the sums included in these equality with help of MGP: ∞ j=n+1
γj,i =
∞
γn Rij−n
j=n+1 ∞
= γn
j=n+1
(R)j−n = γn [R(I − R)−1 ]i i
(the bottom index at matrix multiplier specifies the number of a column). Accordingly the equation for the i-th section can be copied as n−1 γn λy2 Vj + (n + 1 − i)μ1 y2 [R(I − R)−1 ]i j=i−1 i (17) n −1 − iμ2 Vj + y1 (R(I − R) )i+1 = 0. j=i
i+1
Realization of a Method of Matrix-Geometric Progression
273
Solving system of the equations (16)–(17), we find components of a vector γn . Now vectors {γj } of the initial probabilities can be calculated according to (14), and for j > n — as MGP members.
3
Numerical Results
In the precedent tables ”S” means the solving of the united system of the equations for a components of initial vectors of probabilities, and ”N” — only for a components of a vector γn . Data in the tables comprise number of iterations/ compiting time in seconds. Zero times comprise values less than 0.01 second. Table 3. ”Progressive” calculation of the models M/E3 /n Number of channels n Method
2 3 5 10 20 30 S28/0 30/0 34/0 43/0.015 59/0.329 84/?
R2 BD−1 + AD−1 N 28/0 30/0 34/0 43/0.015 59/0.063 S14/0 15/0 17/0 23/0.015 32/0.32841/3.469 A(D − RB)−1 N 14/0 15/0 17/0 23/0.015 32/0.03141/0.156 S41/0 44/0 50/0 64/0.016 88/0.344 662/4.875 Ω N 41/0 44/0 50/0 64/0.016 88/0.078 662/1.516 S4/04/04/03/0.1093/7.422 — Newton N4/04/04/03/0.1103/7.203 —
Table 4. ”Progressive” calculation of the models M/H2 /n Number of channels n Method
2 3 5 10 20 30 S49/0 52/0 54/0 59/0.015 62/0.313 73/3.515
R2 BD−1 + AD−1 N 49/0 52/0 54/0 59/0.015 62/0.047 73/0.203 S35/0 36/0 37/0 39/0.016 41/0.328 43/3.468 A(D − RB)−1 N 35/0 36/0 37/0 39/0.016 41/0.047 43/0.141 S51/0 56/0 61/0 69/0.016 78/0.359 92/3.547 Ω N 51/0 56/0 61/0 69/0.016 78/0.063 92/0.265 S5/06/05/04/0.1563/7.4223/79.422 Newton N5/06/05/04/0.1563/7.0943/75.687
From tables follows: 1. All iterative versions of MGP method essentially differ on number of steps, but are rather close on labor consuming. 2. Their convergence appreciably worsens with growth of number of channels (iterations for model M/E3 /40 missed). 3. the N-variant of calculation of initial vectors of probabilities reduces time of the account in tens times.
274
Y. Ryzhikov
4. Newton’s variant, predictably, is characterized exclusive small number of iterations and fast growth of their labor consuming (for big n each doubling of the number of channels increases time of the account more than in 60 times). N -calculation of initial vectors only insignificantly reduces time of the account on Newton’s variant as labor consuming of the given stage makes a small share from labor input of a progression denominator calculation. As a whole this variant has not justified hopes assigned on it. All these conclusions can be generalized to queuing systems with an arbitrary input flows. As more high-speed in comparison with only iterative, MGP method is preferable at high requirements to accuracy; in multi-variant calculations; at work with the infinite sums of probabilities; at the analysis of networks of service (first of all at non-Markovian inter-node flows with iterative recalculation of them).
References 1. Ryzhikov, Y.I.: Theory of Queues and Inventory Control, p. 384. St-Petersburg, Peter (2001) (in Russia) 2. Takahashi, Y., Takami, Y.: A Numerical Method for the Steady–State Probabilities of a GI/G/c Queuing System in a General Class. J. of the Operat. Res. Soc. of Japan 19, 147–157 (1976) 3. Ryzhikov, Y.I., Khomonenko, A.D.: The Iterative Method of the Calculation of Multichannel Systems with any Distribution of Service Time. Problems of Control and Information Theory (3), 32–38 (1980) 4. Evans, R.D.: Geometric Distribution in Some Two Dimensional Queuing Systems. Operat. Res. 15, 830–846 (1967) 5. Neuts, M.F.: Matrix-Geometric Solutions in Stochastic Models: an Algorithmic Approach. J. Hopkins Univ. press, Baltimore (1981) 6. Bocharov, P.P., Pechinkin, A.V.: Theory of Queuing: the Textbook, p. 529. University under P.Lumumba, Moscow (1995) (in Russia) 7. Latouche, G., Ramaswami, V.: A Logarithmic Reduction Algorithm for Quasi-Birthand-Death Process. J. Appl. Prob. 30, 650–674 (1993) 8. Daigle, J.N.: Queuing Theory with demands to Packet Telecommunication, p. 326. Springer, Boston (2005)
Mobility Pattern Based Routing Algorithm for Delay/Disruption Tolerant Networks ManKyu Park1, SeokHong Min2, SangHo So2, DeockGil Oh1, ByungChul Kim2, and JaeYong Lee2 1
Satellite Broadcasting & Telecommunication Convergence Research Team, ETRI 138 Gajeongno, Yuseong-gu, Daejeon, 305-700, Korea {neomkpark,dgoh}@etri.re.kr 2 Department of Information Communications Engineering, Chungnam National University 79 Daehangno, Yuseong-gu, Daejeon, 305-764, Korea {minsh,sanghoso,jyl,byckim}@cnu.ac.kr
Abstract. Delay/Disruption Tolerant Networks (DTN) can support data transmission under the challenging network conditions. And one of the most important protocol components for DTN is a routing protocol to improve the performance of transmission delay and delivery success ratio. In this paper, we propose the “Mobility Pattern based Routing (MPR)” algorithm that controls the total number of transferred message copies based on mobility patterns of mobile nodes. We consider a realistic “Levy walk” mobility pattern that has a super-diffusive property which well represents human mobility pattern. We implemented a DTN simulator using ONE simulator [9] for the proposed MPR algorithm and Levy walk mobility pattern. Simulation results show that Levy walk mobility pattern provides more accurate evaluation environment for DTN, and the proposed MPR enhances the routing performance of delivery delay and success delivery ratio under realistic mobility pattern. Keywords: Delay/disruption tolerant network (DTN), routing, mobility pattern, Levy walk.
1 Introduction Delay/Disruption Tolerant Networks (DTN) represent a class of networks that can support data transmission under the challenging network conditions such as long delay or intermittent connection. The concept of DTN architecture was originally designed for interplanetary networks that have very long delay and frequent disconnections. There are many networks that have structures suitable for DTN protocols, such as sensor networks, wireless ad hoc networks, satellite networks, and underwater sonar networks. These networks have challenging networks characteristics with long variable delay, frequent disconnection and network partitioning, high error rate, asymmetric data throughput, and etc. One of the most important protocol components for DTN is a routing protocol that determines a path between source node and destination node through unstable network environments. Most routing protocols in DTN for random network environments S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 275–286, 2010. © Springer-Verlag Berlin Heidelberg 2010
276
M. Park et al.
usually use redundant transmissions to increase success delivery ratio and decrease delivery delay. For example, a node using the epidemic routing [1] protocol tries to transmit all the messages in its buffer to every neighbor node encountered to increase the success delivery probability. However, mobile nodes in DTN usually have limited resource such as buffer and energy, thus they need to reduce the number of transmissions for longer lifetime, if possible. Performance evaluation of wireless routing protocols has been usually studied by using Random waypoint model (RWP). However, recent studies reveal that real mobility patterns are very different from those of RWP [2], in that they have ‘superdiffusive’ characteristics, whereas the RWP is not. Furthermore, the mobility patterns have significant impact in the performance of wireless routing algorithms as in DTN. In this paper, we propose an efficient DTN routing algorithm, called “Mobility Pattern based Routing (MPR)”, that controls the total number of transferred message copies based on mobility patterns of neighbor mobile nodes. Basically in MPR, the total number of message copies is restricted and more copies are transferred to ‘longdistance movement’ mobile nodes. We consider a realistic “Levy walk” mobility pattern that has super-diffusive property which well represents human mobility pattern in evaluating the proposed routing algorithm. We implemented a DTN simulator using JAVA-based ONE simulator [9] for the proposed MPR algorithm and Levy walk mobility pattern. Simulation results show that mobility patterns are very important for correct evaluation of DTN routing performance, and the proposed MPR enhances the routing performance in delivery delay and success delivery ratio under realistic mobility pattern. This paper is organized as follows. After Introduction, Section 2 summarizes related work for this paper. In Section 3, we explain the Levy walk mobility pattern, its simulator implementation for ONE simulator, and its characteristics. Section 4 presents operation, characteristics, and performance of the proposed MPR algorithm in detail. We conclude this paper in Section 5.
2 Related Work There are two classes of DTN routing protocols according to their operation network environments. The first one is ‘deterministic time evolving networks’ for which mobile nodes can knows or predict exact information and topology variation. The other is ‘stochastic time evolving networks’ for which mobile nodes cannot know or predict its random network behavior. That can be called ‘deterministic routing protocol’ and ‘dynamic routing protocol’ respectively. The deterministic routing protocols for DTN are utilized when one knows all the state information and topology changes in advance. The deterministic routing protocols have an appropriate path selection algorithm according to amount of available state information including mobile pattern. There are two representative deterministic routing protocols proposed: the oracle-based routing protocol [3] and the space-time graph routing protocol [4]. In the oracle-based routing protocol, there are four kinds of oracles according to amount of available network information. As the available information increases, these are ‘the contacts summary oracle’, ‘the contacts oracle’, ‘the queuing oracle’, and ‘the traffic demand oracle’. Depending on each oracle situation,
Mobility Pattern Based Routing Algorithm for Delay/Disruption Tolerant Networks
277
the oracle-based routing calculates the most appropriate deterministic path for DTN messages. In the space-time graph routing protocol, it is assumed that every node knows the moving states of its own and all the other nodes over time. This kind of networks includes satellite networks in which each node moves along a predetermined trajectory. Dynamic routing protocols for DTN are used when node movement and network topology change cannot be predicted. Two representative routing protocols are the epidemic routing [1] and spray and wait routing [5]. In the epidemic routing, a sending node and all intermediate nodes deliver their messages to every neighbor node encountered until they succeed to deliver the message to the final destination. As a node in the epidemic routing always tries to send its message to all its neighbors, the epidemic routing protocol is simple to implement, and it can increase the success delivery ratio and decrease the delivery delay. However, there can be too many redundant copies for one message in networks, network resources such as battery energy and buffer space are severely wasted in the epidemic routing. The Spray and Wait routing protocol [5] is a flooding-based routing protocol similar to the epidemic routing. Whereas each node in the epidemic routing sends all the copies of its message to newly encountered nodes and this causes traffic overhead and buffer management problems, the spray and wait protocol limits the total number of copies of a single message to finite number L. It has two phases for message transmission; spray phase and wait phase. In the spray phase, each node tries to send message copies to nearby nodes within the limit of total copies. In the wait phase, each node with only one copy retains the message without transfer until it finally encounters the destination of the message and sends the message, when all L copies of one message are generated. Since the spray and wait protocol limits the total number of copies to an appropriate L, it can reduce waste of network resources by constraining packet transmission and wireless contention. The authors in [5] have shown that the “binary’ spray and wait algorithm has the best performance among them. In the binary spray and wait, each node transfers half of its copies to a new neighbor node, which improves the routing performance by enhancing propagation speed and reducing delivery time to destination. However, this result came out without considering nodes’ movement pattern. In the wait phase, each node with only one copy should retain that copy regardless of its moving status, which is not an appropriate method considering movement direction and destination contact probability of that node. In order to improve this problem of the wait phase, spray and focus routing protocol has been proposed [6]. The spray and focus protocol has defined a focus phase instead of the wait phase, in which a node may hand over a copy to a neighbor node if that neighbor has met the destination more recently than itself, to improve the success delivery probability. However, since the epidemic routing, and the spray and wait routing do not take into account real mobility characteristics of mobile nodes, and transfer message copies using the same manner, they cannot achieve efficient routing for DTN. Thus, in this paper, we propose an efficient dynamic DTN routing protocol that considers the effect of various node mobility pattern including ‘Levy walk’ pattern of real mobile nodes.
278
M. Park et al.
3 Levy Walk Mobility Pattern In order to evaluate exact performance of wireless routing protocols, it is important to select a realistic mobility pattern of mobile nodes. Recently, there have been some researches on measuring real mobility patterns of mobile nodes by using GPS. We show in Fig. 1 some trajectories of mobile nodes in several mobility models. Fig. 1 (a) is a real mobility pattern of a mobile node measured by University of Washington, and Fig. 1 (b)~(d) represent sample paths of random walk mobility model, Levy walk mobility model, and random waypoint mobility model, respectively [7]. One can see that a mobility pattern of a real mobile node is very similar to that of the Levy walk model which has a super-diffusive property [7][8]. Thus, in this paper, we have implemented a Levy walk mobility model for performance evaluation of our proposed DTN routing protocol.
(a) U of Washington
(b) RW (normal diffusive) (c) LW(super0diffusive)
(d) RWP
Fig. 1. Sample paths for some mobility patterns [7]
The distribution of step-lengths of a Levy walk mobility model is one of random walk model that have a heavy-tailed property with a probability density function (pdf) as follows, (1 < μ < 3)
f L (l ) ~ l − μ ,
(1)
Whereas other mobility models need to tune many sensitive parameters to adjust diffusion speed of mobile nodes, it is necessary to tune only one parameterμ in order for the Levy walk to generate various diffusion patterns of mobile nodes. When the parameter μ approaches to 1, the Levy walk mobility patterns become super-diffusive similar to a Random waypoint mobility as shown in Fig. 1 (d). On the other hand, when the parameter μ approaches to 3, the Levy walk mobility patterns become normal-diffusive similar to a Random walk mobility as shown in Fig. 1 (b). 3.1 Implementation of Levy Walk Mobility Model We implemented a Levy walk mobility model in the ONE simulator [9] for DTN. In order to obtain super-diffusive step length for Levy walk, we used a Pareto random variable that has a heavy-tail distribution as follows, α
⎛k⎞ F ( x) = 1 − ⎜ ⎟ , ( x > k ; α > 0) ⎝x⎠
(2)
Mobility Pattern Based Routing Algorithm for Delay/Disruption Tolerant Networks
279
By using (2), we can control the diffusion speed of mobile nodes by adjusting the value of α . We select the movement direction of each step randomly between 0 and 2π. In Fig. 2, we show an example generation of movement coordinates in a plane. If the current node position is ( x1 , y1 ) and the generated step length and direction is equal to L 2 , θ 2 , then the next destination coordinate of movement ( x 2 , y 2 ) can be calculated as (3), If a generated coordinate exceeds a boundary of movement area, it is truncated within that area.
x2 = x1 + L2 cos θ 2 y2 = y1 + L2 sin θ 2
(3)
Fig. 2. Generation of next movement coordinate
3.2 Characteristics of Levy Walk Mobility Pattern
In order to evaluate the exact routing performance in wireless networks, the density of mobile nodes in interested area should be rather uniformly distributed. If mobile nodes are concentrated in a specific area, we cannot expect the exact evaluation of wireless network performance.
Fig. 3. Mean and variance of node density (Left: Random way point, Right: Levy walk)
So, we measured mean and variance of node density for Random waypoint model and Levy walk model. Fig. 3 shows the mean and variance of node density for Random Waypoint model. The Figure shows that nodes are concentrated in the center region, but Node density in Levy walk model (α = 1.5) is uniformly distributed throughout the whole area of movement, which is an appropriate characteristic for wireless network simulation. 3.3 Performance Evaluation
Most of performance evaluation of DTN routing protocols have used somewhat unrealistic mobility pattern such as Random waypoint model. Thus, in this section, we
280
M. Park et al.
present performance evaluation of the epidemic routing and the spray and wait routing under Levy walk mobility model in order to see the potential difference of performance under other artificial mobility models. We set simulation environment variables as shown in Table 1, and measured success delivery probability and mean delivery delay for two protocols under various mobility models. Table 1. Simulation Parameters for DTN Routing Parameters Simulation time World Size Num of Hosts Update Interval
Values 5,000sec 5Km x 5Km 200 0.0004
Parameters Transmit Range Transmit Rate Packet Size Buffer Size
Values 20m 250Kbps 100Bytes ~ 1,500Bytes 50MBytes
Fig. 4. Success delivery probability under random waypoint model and Levy walk model
Fig. 4 shows success delivery probability for the two routing protocols under random waypoint model and Levy walk model. The two DTN routing protocols shows the best performance under Random waypoint movement condition, but the performance is degraded under Levy walk. Especially, when the step-length of mobile nodes becomes small with α > 1.0, success delivery probability degrades severely as α increase. As said above, the real mobile pattern looks like the Levy walk. We can say that the routing performance of past studies was rather optimistically evaluated compared to real world. When one adopts Random waypoint mobility model for simulation in wireless networks, the routing performance is overestimated because mobile nodes tend to be concentrated in the center region of simulation area and they easily communicate each other, which is an unrealistic movement pattern in real world. Therefore, it is necessary to reevaluate the performance of DTN routing algorithms under realistic mobility condition in order to obtain accurate results.
Mobility Pattern Based Routing Algorithm for Delay/Disruption Tolerant Networks
281
4 Mobility Pattern Based DTN Routing Algorithm In this section, we propose an efficient DTN routing protocol which determines the number of copies to be transferred in the spray phase by using movement pattern of neighbor nodes under realistic mobility model. Few papers have focused on the encountered ‘relay’ node characteristics to improve the performance of DTN routing protocol. But, they have only focused on the mobility information of contact instance without considering overall mobility patterns. In this paper, we propose a new DTN routing protocol, called Mobility Pattern based Routing (MPR) algorithm which considers overall mobility information including node movement pattern and average speed. 4.1 Mobility Pattern Based Routing Algorithm
In a real world, DTN nodes can be human, bus, taxi, train or animal. Each object has different mobility pattern based on its usage and characteristic. For example, bus can be classified as two types. One is ‘long-distance’ type between cities and the other is ‘circular’ type in a local area. If we assume that bus is a DTN node, it’s more efficient for distributing messages in a whole area to give more copies to the ‘long-distance’ type buses. Thus, our proposed protocol tries to increase the success delivery ratio by giving more copies to the ‘long-distance’ type DTN nodes encountered than the ‘short-distance’ type one. The proposed MPR algorithm assumes that all the DTN nodes know their mobility pattern information. A DTN node having messages exchanges a summary vector with neighbor nodes encountered to compare their message information in the local buffer. Each node compares the received summary vector with its own one and sends a Request packet to notify the peer of the message list it does not have. At this moment, they also exchange mobility pattern information. Based on this information, each DTN node transfers more copies to the ‘long-distance’ type neighbor node than the ‘short-distance’ one. The number of copies for each type of DTN nodes will be derived from the following performance evaluation results. A node speed is also a very important factor of DTN routing performance. A highspeed node can distribute messages into the whole area more widely and rapidly. So, the DTN routing performance can be enhanced by giving more copies to the highspeed nodes rather than the slow ones. The speed information is also exchanged when a DTN node sends a Request packet and the number of copies can be controlled based on this information. 4.2 Implementation and Evaluation of the Proposed Algorithm
The proposed MPR algorithm is basically based on the spray-and-wait routing algorithm to reduce the packet overhead of Epidemic DTN routing algorithm, so gives a constraint on the number of total copies of a message. However, instead of giving half of the copies to the neighbor node encountered, the numbers of copies are varieties based on the exchanged mobility pattern information. In this paper, we consider a scenario on the military tactical communication networks and classify DTN nodes into 3 different types as shown in Fig. 5. They represent the soldiers, tanks and aircraft nodes, respectively. Each node type can be modeled by
282
M. Park et al.
adjusting the α value of the Levy Walk mobility model. Soldier nodes move in a short step-length slowly, tank nodes move in a relatively long step-length faster, and aircraft nodes move in a very long step-length fastest.
Fig. 5. Simulation scenario for military tactical communication networks
In the previous spray-and-wait routing algorithm, a DTN node gives half number of copies to the neighboring nodes irrespective of their mobility patterns. But, in our proposed algorithm, the number of transferred copies is controlled based on the α value in Fig. 5. The α values are grouped into 3 ranges as the following; greater than 1.5, between 0.7 and 1.5, and less than 0.7. For the performance evaluation of Random Waypoint mobility model, we classify the DTN nodes into 3 different types based on the average speed. The speed ranges are following; faster than 20m/s, between 10m/s and 20m/s, and slower than 10m/s. Also, the number of transferred copies is varied based on this exchanged speed information. More numbers of copies are transferred to the faster DTN nodes. The speed of each node is generated uniformly in the given range in Fig. 5, Given the total simulation time t, the total moving distance of nodes in each group can be calculated by the product of the number of nodes in a group, average speed, and the total simulation time. So, they are 900t, 1837.5t, and 4500t, respectively. Using this information, we set the ratio of number of transferred copies as 1:2:4. This ratio can be adjusted according to the characteristic of nodes in the network and the performance of DTN routing algorithm can be enhanced by setting the proper ratio. Table 2. Simulation Parameters for MPR Algorithm Parameters Simulation time World Size Num of Hosts Update Interval
Values 5,000sec 5Km x 5Km 250 0.0004
Parameters Packet Interval Transmit Rate Packet Size Source, Destination
Values 1sec ~ 10sec 250Kbps 100Bytes ~ 1,500Bytes random
Table 2 shows the simulation parameters for the performance evaluation. Simulations are performed to evaluate the Epidemic, spray-and-wait, and MPR routing protocols by applying Random Waypoint and Levy Walk mobility models. The success delivery probability, delivery latency and overhead ratio are measured by varying the total number of copies L. Fig. 6 shows the success delivery probabilities of both
Mobility Pattern Based Routing Algorithm for Delay/Disruption Tolerant Networks
283
protocols and our proposed MPR algorithm under two mobility models. Fig. 7 and 8 show the delivery latency and overhead ratio, respectively.
G Fig. 6. Success delivery probability of MPR under RWP and LW model 1,800 EP-RWP SW-RWP MPR-RWP EP-LW SW-LW MPR-LW
1,600 1,400 1,200 1,000 800 600 400 200 0 (sec)
L=2
L=4
L=6
L=8
L=10
L=12
L=14
L=16
L=18
L=20
L=32
Fig. 7. Delivery latency of MPR under RWP and LW model
Fig. 8. Overhead ratio of MPR under RWP and LW model
L=64
284
M. Park et al.
The success probability of Epidemic routing algorithm is highest as shown in Fig. 6, but the overhead ratio is also highest because a DTN node gives a copy to all the neighbor nodes encountered. To reduce the overhead ratio, a constraint on the number of copies should be applied like the spray-and-wait routing algorithm. But, the success delivery probability of spray-and-wait routing algorithm is too low and delivery latency is too high when the number of total copies, L is small. As the size of L increases, performance gets better but still poor than the Epidemic algorithm. Our proposed MPR routing algorithm enhances the performance of spray-and-wait routing algorithm in the aspect of success delivery probability and delivery latency over the all ranges of L as shown in Fig. 6 and 7. Also, the overhead ratio can be kept to a small value as shown in Fig. 8. Low overhead is a very important factor for designing DTN routing algorithms because network resources are severely wasted in the high overhead algorithm such as the epidemic routing. By comparing three important performance measures, we can conclude that our proposed MPR algorithm is the most promising one in the stochastic time evolving DTN networks under both the RWP and LW mobility models.
Fig. 9. Success delivery probability of MPR under the limited buffer environment 1,600 EP-RWP SW-RWP MPR-RWP EP-LW SW-LW MPR-LW
1,400
1,200
1,000
800
600
400 (sec)
L=6
L=10
L=14
L=20
L=32
L=64
Fig. 10. Delivery latency of MPR under the limited buffer environment
Mobility Pattern Based Routing Algorithm for Delay/Disruption Tolerant Networks
285
Fig. 11. Overhead ratio of MPR under the limited buffer environment
All the above mentioned simulations are performed under the assumption that the buffer space is larger than 500Mbytes and there’s no buffer overflow during all the simulation time. But, in real networks, a DTN node has a limitation on the buffer space. So, we also measure the performance of each DTN routing protocol when there’s a limitation on the buffer space. The buffer space of each node is set to 256Kbytes, 512 Kbytes, and 1024Kbytes based on the DTN node types. We compare the performance of three DTN routing schemes under the RWP and LW models as before under the limitation on the buffer space. If there’s a limitation on the buffer space, the performance of epidemic routing algorithm gets worse as shown in Fig. 9 because large overhead causes a buffer overflow. When L is larger than 10, the success delivery probability of spray-and-wait routing protocol is higher than the epidemic routing algorithm under the RWP model. In case of MPR routing algorithm, the performance is better when the L value is greater than 6. This also happens as the L value increases under the Levy Walk model. The delivery latency of epidemic routing algorithm is still low than other two algorithms because it only counts the delay of successfully delivered messages. The overhead ratio of epidemic routing algorithm is too high compared to other two routing algorithms as shown in Fig. 11, and this will be an obstacle for an efficient future DTN routing protocol. In this chapter, we proposed the new DTN algorithm, called MPR, which controls the number of copies to the neighbor encountered DTN nodes based on the mobility pattern. In addition, we implemented it using ONE simulator and evaluated its performance. The proposed algorithm can enhance the performance of spray-and-wait routing algorithm while keeping the overhead ratio to be small by giving more copies to the ‘long-distance’ type DTN nodes which move fast and widely.
5 Conclusion In this paper, we introduced a realistic human mobility pattern called Levy Walk and evaluated the performance of previous DTN routing protocols using this Levy Walk mobility model.
286
M. Park et al.
To do this, we first implemented a Levy Walk mobility model in the ONE simulator [9] and compared the performance of Epidemic and spray-and-wait routing protocols based on Random Waypoint and Levy Walk mobility models. Simulation results show that previous DTN routing protocols have poor performance under a Levy walk model because those routing protocols are designed by assuming that all the moving nodes move in a pure random fashion without considering each user’s real mobility pattern. We found from these simulation results that mobility patterns are very important for evaluating DTN routing performance correctly and a new routing protocol should be designed to enhance the previous DTN routing protocols under a realistic mobility pattern. We also proposed a new DTN routing algorithm called MPR(Mobility Pattern based Routing) by controlling the number of message copies according to the user’s mobility pattern and average moving speed of encountered neighbor nodes. According to this new routing protocol, a DTN node gives more copies to the ‘long-distance’ type nodes rather than applying binary spray method. The proposed scheme shows better delivery ratio and short delivery latency compared to the binary spray-and-wait routing protocol and low overhead rather than the epidemic routing protocol. We believe that our proposed protocol can be a promising DTN routing protocol under a realistic Levy Walk mobility model. Acknowledgments. This work was supported by the IT R&D program of KCC [2009-S-039-02, Development of Satellite Return Link Access Core Technology for High Efficient Transmission].
References 1. Vahdat, A., Becker, D.: Epidemic Routing for Partially-Connected Ad Hoc Networks. Duke University Technical Report CS-200006, Tech. Rep. (April 2000) 2. Kim, S., Lee, C., Eun, D.Y.: Super-diffusive behavior of mobile odes from gps traces. In: ACM Mobicom Poster (2007), http://www4.ncsu.edu/_skim8/trace/Mobicom07-poster-Kim.pdf 3. Jain, S., et al.: Routing in Delay Tolerant Network. In: ACM SIGCOM’04, Portland, Oregon (2004) 4. Merugu, S., et al.: Routing in Space and Time in Networks with Predicable Mobility. Georgia Institute of Technology, Technical Report, GIT-CC-04-7 (2004) 5. Spyropoulos, T., Psounis, K., Raghavendra, C.S.: Spray and Wait: An Efficient Routing Scheme for Intermittently Connected Mobile Networks. In: Proceedings of the 2005 ACM SIGCOMM Workshop on Delay-Tolerant Networking, Philadelphia, Pennsylvania, USA, August 26, 2005, pp. 252–259 (2005) 6. Spyropoulos, T., Psounis, K., Raghavendra, C.S.: Spray and Focus: Efficient MobilityAssisted Routing for Heterogeneous and Correlated Mobility. In: Fifth IEEE International Conference on Pervasive Computing and Communications Workshops (PerComW’07), Percomw, pp. 79–85 (2007) 7. Rhee, I., Shin, M., Chong, S.: On the Levy-walk Nature of Human Mobility: Do Humans Walk like Monkeys? In: IEEE INFOCOM (2008) 8. Kim, S., Eun, D.: Impact of Super-Diffusive Behavior on Routing Performance in Delay Tolerant Networks. In: IEEE ICC (2008) 9. The ONE, http://www.netlab.tkk.fi/tutkimus/dtn/theone/
Heuristic Congestion Control for Message Deletion in Delay Tolerant Network Lertluck Leela-amornsin and Hiroshi Esaki Graduate School of Information Science and Technology, Information and Communication Engineering, The University of Tokyo, 7-3-1 Hongo, Bunkyo-ku, Tokyo 113-8656, Japan [email protected], [email protected] http://www.hongo.wide.ad.jp
Abstract. Delay tolerant network (DTN) challenges on large delay of communication, opportunistic and intermittent connectivity so that data can be transferred over vulnerable network. Most routing protocols in DTN basing on replicating routing work well over infinite buffer assumption but the performance drops when using with finite buffer due to the congestion problem. However, it is still lack of work on congestion control in DTN. Since simple congestion control policies can cause uselessly looping problem and cannot maintain high performance when nodes buffer become overflow, a new buffer management policy for DTN should be considered. In this paper, we identify the looping problem caused by using simple buffer management policies and propose the Effective Looping Control mechanism to solve such a problem. We also propose the Creditbased Congestion Control as for heuristically deleting messages when the buffer congested to retain high delivery rate with low number of replicas. Keywords: Buffer Management, Credit Dropping, Looping Control.
1
Introduction
Delay tolerant network (DTN) is a network where communications may experience large delay, and the connectivity is often opportunistic and intermittent. DTN’s characteristics are different from existing Internet leading to newly challenging issues as described in [3]. Many works have been studied, used and deployed [1], [5], [6], [7], [12], [22] following the DTN architecture proposed in RFC4838 [2] by overlaying the network with bundle layer to provide delay tolerant service. To construct a high performance system, most of the works [8], [9], [10], [11], [12], [13] route messages in replicating way, and apply custody transfer [4] that each DTN host needs to take action in carrying many of messages in the non-volatile buffer [17] for a long period. These approaches can achieve high delivery rate but trade off with number of replicating messages. The performance is high under infinite buffer and infinite bandwidth assumption, however, in real S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 287–298, 2010. c Springer-Verlag Berlin Heidelberg 2010
288
L. Leela-amornsin and H. Esaki
situations, the performance is worse when the buffer and bandwidth are limited due to the congestion control problem. Although modern storage devices have large capacity in scale of gigabytes, it may limit a part of memory for storing and forwarding DTN messages as described in [21]. Some applications apply DTN to personal mobile devices, which may contain any kinds of contents such as songs and videos. In cooperative aspects, people normally share their resources greedily as few as they can. Moreover, some applications may generate large size messages, while other generate smaller size but more frequently. All of these reasons can cause a diffusion of congested traffic over the system. Regarding replicating-based routing in DTN, buffer management policies for congestion control in DTN attempts to drop insignificant messages subjecting to improving the performance essentially to reduce the number of replicas in the network while maintaining high delivery probability. Conventional policies cannot maintain high performance, and some of them can cause uselessly looping problem because of dropping some messages before they are expired. Therefore, a buffer management mechanism for controlling message deletion is required to maintain high performance for the system. We believe that the study of this issue will give a great contribution to DTNs. In this paper, we analyze the effect of various environments to buffer occupancy of DTN nodes. After that, we study the buffer management policies in the prospect of how we should delete the messages, and classify them into two types:the proactive policy, and the reactive policy. The proactive scheme deletes the messages depending on the time-to-live (TTL) or feedback acknowledgment as for definitely deleting. On the other hand, the reactive policy deletes some messages due to congestion in nodes’ buffer. Our work scopes in the reactive policy to deal with congestion control yearning for high-performance message deletion mechanism in DTN. Along our study, we identify the looping problem, which is caused by using popular reactive policy, as a result of degradation in routing performance. After that, we propose the Effective Looping Control mechanism to prevent such a problem so that routing can achieve better performance in most environments. Moreover, we propose a heuristic congestion control policy called Credit-based Congestion Control (CCC), which pursues the low number of replication messages but still keep high delivery ratio, without using history-based information. Finally, we validate our CCC policy comparing to other policies in related works by performing extensive of the ONE simulation [19], which is the popular DTN simulation. The rest of this paper is organized as follows. We surveyed the related work in section 2. We identify looping problem and propose Effective Looping Control to relieve such a problem in section 3. In section 4, we propose the new congestion control scheme, Credit-based Congestion Control, which can improve performance comparing to the existing policies. We verify our proposed policies in section 5 with extensive simulation. Finally, we summarize this paper and present our future work in section 6.
Heuristic Congestion Control for Message Deletion
2
289
Related Works
In recent years, DTN has been researched in various aspects to counter with many newly challenging issues as described in [3]. However, the main issue in DTN is to develop the routing strategy [18] to achieve high delivery probability which is the ratio of delivered messages over the total generated messages. Since legacy-forwarding scheme achieves very low delivery rate, many researchers developed their routing protocols in replicating-based approach. Epidemic [8] is the common and simple replicating-based routing protocol. When two nodes get contact, they exchange the information of messages that they are carrying, then each node clones all of the messages another node does not have, and transfers. Although epidemic can achieve high delivery ratio, the replicas are too many resulting in consuming much bandwidth. Thus, other works attempted to reduce the number of replicas, for instance, the Probabilistic ROuting Protocol using History of Encounters and Transitivity, or PROPHET [10] reduces replicas by using knowledge based of probability that a certain message can reach the destination. Spray and Wait [9] controls the maximum number of messages that can be replicated to other nodes. In addition, other routing protocols such as RAPID [12], PEAR [11], Bubble RAP [13] are using other knowledge based metrics to achieve better performance. Many routing algorithms work well under assumption that buffer is unlimited, but still in doubt if they do work under buffer constraint that may lead to congestion in certain environments. To prevent degrading in performance we need to concern deeply when/which/where and how we should drop the messages to maintain higher performance for any routing protocol. There are many buffer management policies had been proposed in [14], [15], [16], [23], and we can classify into two groups, 1)proactive, and 2) reactive policy. 2.1
Proactive Policy
When DTN hosts update their status (generally in a time unit, or every activating cycle), they delete messages depending on 1. Time-Based TTL [14]: Time-based TTL initiates the time-to-live (TTL) value and the value decreases a unit periodically every a certain amount of time. DTN hosts will delete the messages whose TTLs are less than zero. 2. Hop-Based TTL [14]: Like time-based TTL, original message is implemented with the maximum number of hops in two tuples, breadth and depth. Depth value decreases by one per hop, and the relay node will no further forward the message and keep carrying it for directly transmitting to the destination if the depth value becomes zero. Each node can replicate the message only b copies no more than breadth value, and deletes the message that has been forwarded for b times. 3. Feedback Policy: The destination node broadcasts an acknowledge message as a feedback policy, then, each relay node drops the carrying message corresponding to the acknowledge message.
290
2.2
L. Leela-amornsin and H. Esaki
Reactive Policy
DTN hosts delete the message when their buffers are congested. Many reactive dropping schemes have been proposed in [15], [16], and [23]. 1. Last-In First-Drop (LIFD): is a simple dropping scheme but very low performance. A node just rejects any new coming message, if its buffer overflows. 2. First-In First-Drop (FIFD): drops the message stored in the buffer first. 3. Oldest-Drop or Least Remaining Life First-Drop: concerns about the amount of remaining TTL to decide which message should be dropped. For Oldestdrop, the message that has the least remaining TTL will be dropped first. 4. Youngest-Drop or Most Remaining Life First-Drop: on the other hand, Youngest-Drop drops the message that has the most remaining TTL. 5. Most-Forwarded First-Drop (MOFD): the message that has been forwarded the largest number of times is the first to be dropped, thus giving messages forwarded less times produce more chances of getting forward. 6. Least-Forwarded First-Drop (LEFD): the message that has low delivery probability and has not been forwarded for the fewest number of times is the first to be dropped. This is because it has a little chance to reach the destination. In addition, in [16] also proposed the history-based policy, which requires history information to estimate an optimum utility for two popular metrics: - maximizing the average delivery rate, and minimizing the average delivery delay. However, it needs the beacon-updating message to learn the status of the network, and needs much time for computation. Besides that, in [23] proposed the mechanism to migrate the custody from congested node to other nodes where still have some vacant rooms. However, this algorithm cannot work well if the nodes congest at the same time, and if there is no encounter node at the time such a node congests.
3
Effective Looping Control Mechanism
To delete messages in an effective way, we usually implement proactive policy like global time-to-live as a final control to guarantee that the messages will be deleted from the system eventually. In parallel, we use the reactive policy to control message deletion when the DTN buffer becomes congested. However, all of reactive policies (except LIFD) generally drop the carrying messages before they are expired, as a result that the same messages in other nodes can be looped back to the DTN node that has just deleted such messages as illustrated in figure 1. It may meet greater impact, if the DTN router inherits the simple-based routing like Epidemic [8]. And even the DTN router uses knowledge-based routing such as PROPHET [10], PEAR [11] and others, which may have less effect, but looping problem may still cause heavy damage in some situations where certain pair nodes may uselessly loop some messages back-and-forth repeatedly. Although global TTL can eventually delete the message, there is no mechanism to estimate TTL accurately for DTN’s application whose TTL is not fixed. Therefore,
Heuristic Congestion Control for Message Deletion
291
we generally implement a large TTL value in term of days, weeks or longer resulting in wasting amount of bandwidth if such useless looping occurs many times and repeatedly. Hence, in this section, we propose the Effective Looping Control, as shown in figure 2, to relieve the degradation in performance because of looping problem.
Fig. 1. Looping problem due to congestion control policy leads to wasting of bandwidth
The key feature of this method is that, instead of keeping track of every whole message, we save space by caching only header of the deleted message in the entry named junk entry. And we denote clock down time in junk, as for, each caching entry can stay in the junk within a time limit. A node that is receiving any new message will check the junk entry list and ignore the message, if it is listed in the junk. However, after the time in junk period, the node allows the message to come into its buffer again. This soft policy is to relax in some incidents that a message that has a better chance to reach the destination (depending on routing scheme) should have a permission to be looped and replicated again. The Effective Looping Control mechanism can be described in the following steps and illustrated in figure 2. 1) Once any node has deleted the messages, it tracks the header of those messages that can distinguish the messages (usually it is constructed by sequence number of message and the node id the message originally generated from). 2) Each entry of deleted message will be listed in the junk until the time in junk expired. 3) If a message loops back to any node that still has the entry of such a message in the junk, that node will ignore and not request that message. Although we can eventually delete the message via TTL, in DTN we usually set TTL to very large value because no one knows the appropriate value of it. This Effective Looping Control mechanism not only prevents the useless looping, but also gives an option for the network to adjust whether it will allow the looping again or not by setting the time in junk parameter. For instance, we can just set the time in junk greater than the TTL of the message or infinite value, if we desire loop-free network.
292
L. Leela-amornsin and H. Esaki
Fig. 2. The Effective Looping Control
4
Credit-Based Congestion Control (CCC) for Message Deletion
As mentioned in section 2, the simple LIFD cannot achieve high performance, so [15] has presented other congestion control policies to obtain better performance, essentially to reduce the number of replicas. Although the history-based policy in [16] has been studied, it focused on minimizing the delay metric, and needs exchanging in updating message to estimate many parameters for predicting the optimum value using for dropping the message. Another work in [23] attempted to migrate the custody message from congested node to other nodes, but it is still in doubt that if there is no other node at that time or if all nodes are congested, the migration does not work leading dropping mechanism to come out and take into account. Therefore, in this section, we propose the newly heuristic congestion control policy called Credit-based Congestion Control (CCC) to maintain high delivery probability and reduce the number of replicas as our target. CCC is dynamic, independent, and isolated from history information, so there is no need of beacon-updating. CCC bases on the concepts that the message that is obsolete should be deleted first as in oldest-drop, which performs high performance by using the timedependent credit. However, we also added the merit of most-forwarded firstdrop that the message has been forwarded many times should be dropped first by applying the refilling and refunding technique when pair nodes get contact and exchange their messages. Besides that, different applications or even in one application may have different priorities for different messages, which need to be standardized and is still an open issue. No matter how, getting along priority aspect we can easily rule the priority by adjusting the initial value of credit as high and low for higher and lower priority, respectively. The DTN router along these credit-based policies will drop the message that has the least credit (can be negative) when the buffer becomes full to allocate vacant space for the new coming message. CCC can be described as follows. Once a message is generated from any DTN node, it will carry maximum amount of credit as its initial value. In consequence of that, host generating
Heuristic Congestion Control for Message Deletion
293
the message can set how much credit should be initiated for different priorities depending on various applications. Later, one credit will be decreased at every time unit similar to age decreasing. However, the key technique of this policy is refilling and refunding amount of credit when pair nodes encounter at any point of transmission. We can construct function for refilling and refunding methods in many approaches, however, in this paper, we propose an additive approach called Simple CCC and Half-Twice CCC as a multiplicative one. 4.1
Simple Credit-Based Congestion Control (S-CCC)
Simple Credit-based Congestion Control policy manages amount of refill and refund as follows. When two nodes get contact, they exchange the messages depending on applied routing protocol. After that, each node refunds the sent message’s credit for amount of value named penalty at the sender side, and refills the received message’s (the same id, but the replicated one) credit for amount of value named reward at the receiver. As a result, such a message that has been replicated will have lower credit in sender host, but higher credit in receiver one. We can easily formulate it into equation 1, Csender (t + 1) = max (Csender (t) − “penalty” , minimum value)
(1a)
Creceiver (t + 1) = min (Csender (t) + “reward” , initial value)
(1b)
where Csender is the credit of message in sender side, Creceiver is the credit of replicated message in receiver side, before (time=t) and after (time=t+1) pair nodes encounter. However, the credit after refill cannot exceed the initially maximum value, and in practical, the credit should eventually equal to a certain minimum value depending on the number of bits using as a header, or manually configure. 4.2
Half-Twice Credit-Based Congestion Control (HT-CCC)
For S-CCC, we proposed the additive approach; however, HT-CCC on the other hand applies multiplicative function to adjust refunding and refilling credit. With this policy, it defines the multiplicative scheme following equation 2. The functions in equation 2 are constructed similarly from the sense of nature so-called half-life theory. However, the complexity of equation 2 is because the credit value can be negative. Allowing credit to be negative can slow down the rate of refilling and refunding when the credit of the message is near zero and decrease rapidly when the credit is negative, which means that this message has no credit and is going to be in debt so we should ignore it. Whenever pair nodes get contact and completely replicate the message, the credit of the message at the sender is refunded as a half of credit before replicating but no less than a certain value, which is limited by the number of bits we use as a header or we may manually
294
L. Leela-amornsin and H. Esaki
Fig. 3. The Simple Credit-based Congestion Control (S-CCC)
configure. In contrast, the credit of the message at the receiver becomes twice but no more than maximum value, which equals to the initial credit. Both policies can maintain high delivery probability, at the same time, they can decrease the replica ratio as we validate in the next section. Csender (t + 1) =
max(Csender (t) ÷ 2, minimum value) ; if Csender (t) > 0 max(Csender (t) × 2, minimum value) ; if Csender (t) < 0
Creceiver (t + 1) =
5
min (Csender (t) × 2 , initial value) ; if Csender (t) > 0 min ( Csender (t) ÷ 2 , initial value) ; if Csender (t) < 0
(2a)
(2b)
Simulation and Evaluation
In this paper, we use the ONE simulator [19], NetLab, Helsinki University, which is the simulator for DTN supporting GUI and providing many of libraries for movement models, routing protocols, but no buffer management policies. Hence, we implement relating buffer management policies, our Effective Looping Control and including our Credit-based Congestion Control into the simulator. Later, we use the random waypoint movement model for 100 nodes over 1 km x 1 km world size, for 2 days simulation time. Each node has 10-meter transmitting range, 2Mbps bandwidth, and moves with speed uniformly random from 0 km/h to 5 km/h. Besides that, we create message by using MessageEventGenerator class attached in the ONE simulator to randomly generate the source and destination nodes for a 500 kB to 1 MB message every 1 to 30 seconds interval, uniformly. Since we are focusing on the reactive message deletion control, thus we assume the TTL value is equal to the observation time, 172800 seconds (2 days).
Heuristic Congestion Control for Message Deletion
295
Fig. 4. Performance of Effective Looping Control
5.1
Evaluation in Effective Looping Control Mechanism
In this section, we compare most standing out policies to those policies themselves but applying our heuristic mechanism, effective looping control. We also compare the difference of time in junk parameters ranging from 3600 seconds (1 hour), 43200 seconds (12 hours) to 172800 seconds (2 days). Then, we show the relationship among the delivery probability, replica ratio and the buffer size ranging from 8MB, 32MB, 128MB, 256MB to 1024MB, as shown in figure 4. From figure 4, we can see that when using Effective Looping Control to Epidemic routing we could increase the delivery rate of FIFD for any buffer size, even we changed the time in junk parameter. In addition, other policies also obtained higher delivery probability in most cases, but not much different in oldest-drop. However, the replica ratio when applying effective looping policy is reduced in all cases, compared to the cases without this mechanism. Especially, when the traffic is very congested (many messages are generated or small buffer size of a
296
L. Leela-amornsin and H. Esaki
node), our looping control could help reducing replicas up to 70% for LEFD, 65% for MOFD, around 15% for FIFD, and also, 15% for oldest-drop when buffer is very congested. Although the delivery ratio drops in some environments, it is less than 2% comparing to the replica ratio we can reduce. Corresponding to our assumption, we could maintain high delivery probability and reduce the number of replicas for most of all reactive policies. However, the performance is the same for all when the buffer is large enough (1024MB). This is because the network is not congested, so there is no message loss in the network. Remark that, the delivery probability is not equal to one because there are still some messages just generated and may reach the destination out of range of our observation time. In this sense, the Effective Looping Control can relieve such kind of problem by adjusting proper time in junk parameter to that system. 5.2
Evaluation in Credit-Based Congestion Control
For evaluating the CCC, we compare among simple congestion control policies and our CCC policies with different initial credit values 3600 credits (HTCredit3600), 43200 credits (HTCredit43200), and 172800 credits (HTCredit172 800) for Half- Twice CCC, and at 172800 credits for simple version fixing 10 credits for both penalty and reward. While, the minimum credit value in this simulation is set to the minimum value of integer (for Java programming = −231 ). We show the performance results in table 1 for different buffer sizes 8 MB, 32 MB, and 256 MB, which easily congest, through Epidemic [8] and Prophet [10] routing. Table 1. Comparison of Replica Ratio among Reactive Buffer Management Policies
Buffer Size (MB) FIFD MOFD OldestDrop SimpleCredit172800 HTCredit3600 HTCredit43200 HTCredit172800
Epidemic Routing Delivery Probability Replica Ratio 8 32 256 8 32 256 0.1362 0.3111 0.6664 52.4140 28.4857 12.6230 0.0444 0.1288 0.6339 201.6181 70.0129 13.3065 0.1712 0.4848 0.7249 51.5952 17.7563 11.5215
Prophet Routing Delivery Probability Replica Ratio 8 32 256 8 32 256 0.1667 0.3718 0.7033 34.9224 22.1443 11.6573 0.0676 0.1647 0.6441 117.1928 54.3162 13.1769 0.1797 0.5056 0.7301 44.9874 16.7499 11.2092
0.1777 0.1788 0.1814 0.1810
0.1834 0.1842 0.1854 0.1847
0.4833 0.4874 0.5335 0.5200
0.7334 0.7313 0.7322 0.7331
41.6650 41.3886 43.5313 43.6944
17.6398 17.4339 15.8513 16.2970
11.3637 11.4217 11.3993 11.3530
0.5051 0.5079 0.5449 0.5226
0.7422 0.7413 0.7446 0.7439
31.3373 31.3349 33.7201 33.9030
15.9291 15.8285 14.7224 15.5421
10.9750 10.9874 10.9486 10.9617
We evaluated our algorithm and obtained the result as shown in table 1. Both S-CCC and HT-CCC could maintain high delivery probability, while reduce the number of replicas up to 20% for Epidemic routing, and to 10% for Prophet routing, respectively to the best existing policy of each case. Even if we need to add some information into header of the message to provide the current credit field and initial credit value, it is very small comparing to whole message in DTN whose size can be up to 1 MB. Therefore, it is worth to trade off some field in header to many large replication messages those we can reduce. Although the performance of CCC is close to the oldest-drop policy since its credit behaves
Heuristic Congestion Control for Message Deletion
297
like an age of the message, it makes use of the advantage of refilling credit to enhance a chance for replicated message in the next-hop node, and refunding credit to devalue the message at present node, as a result that it can reduce useless replicas but still keep high delivery rate not only in Epidemic routing but also in Prophet routing. In addition, in the Half-Twice approach also gave the same tendency. This means that we can control the different priorities of messages corresponding to the initial credit values, and get high performance, concurrently.
6
Conclusion and Future Work
In this paper, we investigated the problem of congestion control in DTN. Since, some reactive buffer management policies have mined the looping problem, we proposed the Effective Looping Control to prevent uselessly looping. We also propose the congestion control policies in the heuristic way. Hence, our parameters used in our work need to be studied and standardized before using in the real system for any general and/or any particular environment following the heuristic process. However, this work presents an intuitive idea but reasonable as a prototype to control message deletion when buffer congests so that we can achieve high performance via reducing overhead without decreasing in delivery rate. Therefore, in the future, we will apply this credit-based policy by refunding and refilling with respect to other resource values and/or knowledge metrics such as remaining buffer, number of forwarded, etc., based on game theory and will further expand to real world implementation.
References 1. Burleigh, S., Hooke, A., Torgerson, L., Fall, K., Cerf, V., et al.: Delay-tolerant networking: an approach to interplanetary internet. IEEE Communications Magazine, 128–136 (2003) 2. RFC4838: Delay-Tolerant Networking Architecture, IRTF DTN Research Group (2007) 3. Fall, K.: A delay-tolerant network architecture for challenged internets. In: Conference on Applications, Technologies, Architectures, and Protocols for Computer Communications, pp. 27–34 (2003) 4. Fall, K., Hong, W., Madden, S.: Custody transfer for reliable delivery in delay tolerant networks, Technical Report IRB-TR-03-030, Intel Research, Berkeley, California (2003) 5. Juang, P., Oki, H., et al.: Energy-efficient computing for wildlife tracking: Design tradeoffs and early experiences with ZebraNet. In: ACM SIGOPS Operating Systems Review, pp. 96–107 (2002) 6. Small, T., Haas, Z.J., et al.: A sensor network for biological data acquisition. Sensor Networks 7. Carrilho, S., Esaki, H.: A Pub/Sub message distribution architecture for disruption tolerant networks. IEICE Transactions on Information and Systems, 1888–1896 (2009)
298
L. Leela-amornsin and H. Esaki
8. Vahdat, A., Becker, D.: Epidemic routing for partially connected ad hoc networks (2000) 9. Spyropoulos, T., Psounis, K., Raghavendra, C.S.: Spray and wait: an efficient routing scheme for intermittently connected mobile networks. In: ACM SIGCOMM workshop on Delay-Tolerant Networking, p. 259 (2005) 10. Lindgren, A., Doria, A., et al.: Probabilistic routing in intermittently connected networks. Computer Communication Review 7, 19–20 (2003) 11. Ochiai, H., Esaki, H.: Mobility entropy and message routing in communitystructured delay tolerant networks. In: The 4th Asian Conference on Internet Engineering, pp. 93–102 (2004) 12. Balasubramanian, A., Levine, B., Venkataramani, A.: DTN routing as a resource allocation problem. In: Conference on Applications, Technologies, Architectures, and Protocols for Computer Communications, p. 384 (2007) 13. Hui, P., Crowcroft, J., Yoneki, E.: Bubble rap: Social-based forwarding in delay tolerant networks. In: The 9th ACM International Symposium on Mobile Ad Hoc Networking and Computing, pp. 241–250 (2008) 14. Yuen, W.H., Schulzrinne, H.: Performance evaluation of time-based and hop-based TTL schemes in partially connected ad hoc networks. In: IEEE ICC’06 (2006) 15. Lindgren, A., Phanse, K.S.: Evaluation of queuing policies and forwarding strategies for routing in intermittently connected networks. In: IEEE COMSWARE (2006) 16. Krifa, A., Barakat, C., Spyropoulos, T.: Optimal buffer management policies for delay tolerant networks. In: IEEE SECON (2008) 17. Seligman, M.: Storage usage of custody transfer in delay tolerant networks with intermittent connectivity. In: ICWN (2006) 18. Jones, E.P., Ward, P.A.: Routing strategies for delay-tolerant networks. ACM Computer Communication Review, CCR (2006) 19. Keranen, A., Ott, J., Karkkainen, T.: The ONE simulator for DTN protocol evaluation. In: The 2nd International Conference on Simulation Tools and Techniques, p. 55 (2009) 20. Jain, S., Fall, K., Patra, R.: Routing in a Delay Tolerant Network Conference on Applications, Technologies, Architectures, and Protocols for Computer Communications, pp. 145–158 (2004) 21. Pitkanen, M.J., Ott, J.: Enabling opportunistic storage for mobile DTNs Pervasive and Mobile Computing, pp. 579–594 (2008) 22. Eisenman, S.B., Lane, N.D., et al.: Metrosense project: People-centric sensing at scale. In: First Workshop on World-Sensor-Web (2006) 23. Seligman, M., Fall, K., Mundur, P.: Alternative custodians for congestion control in delay tolerant networks. In: Proceedings of the 2006 SIGCOMM Workshop on Challenged Networks, p. 236 (2006)
The FDPOO: A Flexible Delivering Platform with at-One-time and On-time Guarantees in Opportunistic Networks Yuan-Tse Yu1, Chung-Ming Huang2, and Hsing-Cheng Wang3 1
Department of Software Engineering, National Kaohsiung Normal University, No.62, Shenjhong Rd., Yanchao Township, Kaohsiung County 824, Taiwan (R.O.C.) [email protected] 2 Department of Computer Science and Information Engineering, National Cheng Kung University, No.1, University Rd., Tainan City 701, Taiwan (R.O.C.) [email protected] 3 Institute of Medical Informatics, National Cheng Kung University, No.1, University Rd., Tainan City 701, Taiwan (R.O.C.) [email protected]
Abstract. In Opportunistic Networks (Oppnets), the link performance is highly unpredictable and the connections are broken frequently. The TCP protocol will perform badly in Oppnet because the end-to-end connection always needs to be reconstructed and the data need to be retransmitted from the original sender again. In order to solve the problem, we investigate the principles of at-onetime and on-time delivery, in which “at-one-time” means to transmit each piece of data just once and “on-time” means to transmit data to the receiver by a prescheduled time point. Based on the principles, we designed a Flexible Delivery Platform with at-One-time and On-time guarantees (FDPOO) in Oppnets. In FDPOO, we separate the transmitting processes into macro and micro stages. In the macro stage, it deals with the end-to-end transmission QoS; in the micro stage, it deals with the transmission between adjacent nodes along the constructed delivering path. We implement the proposed FDPOO based on the Delay Tolerant Network (DTN). The performance results show that the designed FDPOO can efficiently complete the data transmission at one time and on time. Keywords: Opportunistic Network, Time Scheduling, On-Time Delivering, Delay Tolerant Network, DTN.
1 Introduction From the viewpoint of user expectation, most of the network applications still fully adopt best effort delivery. For example, when a user sends an email, the transmitting procedure will start immediately. If the connection breaks, the email needs to be retransmitted again and again from the original email server until the target email server receives the email entirely. Considering different transmission requests from users’ expectations, real-time transmission may not be so needed, but on-time transmission S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 299–310, 2010. © Springer-Verlag Berlin Heidelberg 2010
300
Y.-T. Yu, C.-M. Huang, and H.-C. Wang
is needed in some applications. For example, the TV programs are regularly required by users, and the contexts only need to be completely transmitted before users want to use them. Let a user want to see some TV programs from 8:00 pm. Then, the TV programs can be transmitted by 8:00 pm. In other words, because of large computer’s storage capacity in nowadays, the contexts can be downloaded in advance. Another example is as follows, since the public transportations normally travel on regular routes, some multimedia presentations, such as tour information, can be predownloaded before the vehicles arrive at the landscapes. Therefore, we can realize that real-time transmissions are not so needed but on-time transmissions are needed for some applications. Practically, if some applications can tolerate distinct transmitting duration and the interval of delay time is assigned in advance, then the scheduling mechanism of each application can finish the task in the assigned duration at just one time and on time, in which “at-one-time” means to transmit each piece of data just once from the end-to-end source to destination viewpoint and “on-time” means to transmit data to the receiver side by a pre-scheduled time point. The current Internet is composed of wired and wireless domains. On the wired domain, many traditional transmitting problems result from network congestion. The situation on the wireless domain is worse than that on the wired domain because of signal variability. Combining these two networks results in high packet loss, long propagation delay, and even frequent connection breaks. These environments are denominated the opportunistic network (Oppnets) [3]. From the viewpoint of networks, when a user wants to requests a guaranteed data exchange, the end-to-end connection is constructed immediately based on TCP protocol. However, the connection is probably broken in Oppnets, and the data need to be retransmitted from the original sender through the reconstructed connection. This procedure must be manually restarted repeatedly by the user in some network applications, but it is still not assured that data can be transmitted to the destination. Furthermore, the retransmitting procedures waste extra network resources, and it may require more bandwidth and time than anticipated. Therefore, it should be more efficient if the network can support at-one-time and on-time transmitting guarantees. Given the aforementioned scenarios and concerns, we present the new transmitting model called at-one-time and on-time delivering guarantees over the Oppnets environment. In order to archive the goals, two main transmitting principles are adopted as follows: 1. Scheduling of Available Transmitting Time Due to the differences of the user expectations, the data transmission should be scheduled in the on-time manner. Two characteristics of data transmission are (1) the delivery path is composed of network nodes and (2) the bandwidth capacities between adjacent nodes are different. According to the desired transmitting duration, scheduling delivery time slots between two nodes is an effective way and the data can be transmitted flexibly based on a specific throughput in each arranged time slot. In addition, a transmitting path can be divided into several segments, in which each segment is composed of adjacent nodes and then pre-scheduling the transmitting procedure on bandwidth usage and time duration between adjacent nodes can make entire transmission flexible. This work can be reached by monitoring the network status on each segment periodically. Referring to Fig. 1, there are three delivering paths. Let the
The FDPOO: A Flexible Delivering Platform with FDPOO Guarantees in Oppnets
301
pre-scheduling time slot be T minutes, which is given by a user, and the selected transmitting path is composed of three segments X1,1, X1,2, and X1,3 from server to client. The ratio can be calculated from the reference values such as RTT, on each segment. After obtaining the ratio, the T can be divided into t1,1, t1,2, and t1,3 which are allocated according to the ratio of RTTX1,1: RTTX1,2: RTTX1,3, and the entire data size Z is divided into z1, z2 and z3 accordingly. The design can also adapt to the unstable network situation.
Fig. 1. The network topology of the FDPOO platform
2. Scheduled Store, Carry and Forward Transmission In order to avoid reinitializing the transmission procedure, which results in data’s retransmission from the source again (and again), when a connection is broken, the data should be transmitted using the hop-by-hop transmission method. That is, the transmission does not need to be reinitialized from source to destination when the connection is disconnected in somewhere. When the network is disconnected, intermediate nodes are able to store data and keep them for a period of time, until an appropriate forwarding node appears and the connection can be re-established. However, once the waiting time is too long, the scheduling mechanism should search for other available paths. Referring to Fig. 1, let the selected transmitting path be (X2,1, X2,2, X2,3, X2,4, and X2,5) through DTN nodes E, F, G and H in order. Once the segment X2,3 is disconnected during the transmission, which means that the delivered data can’t reach node H through node G. At this time, the developed mechanism keeps the data on node F until the waiting time exceeds the scheduled duration. Then, the scheduling mechanism finds another available path X2,3 and X2,4 through node I. Moreover, in the worst case, if there is no such path composed of X2,3 and X2,4, the mechanism will find another new path from the DTN node F to destination DTN node B, e.g., using a path which is composed of X’2,3 and X3,3, namely the remaining data are sent through DTN nodes F, K and B in sequence. As a result, data are transmitted to the destination hop by hop, and doesn’t need to have the source to send the data again (and again), i.e., the source only needs to send each data item once. The aforementioned transmission scenario is called “at-one-time transmitting” because the data are transmitted only once from the end-to-end source to the destination viewpoint. In
302
Y.-T. Yu, C.-M. Huang, and H.-C. Wang
order to achieve the at-one-time transmitting concept, we design a platform based on the Delay Tolerant Network (DTN) to guarantee successful transmission. The remaining part of this paper is structured as follows. Section 2 presents the theoretical foundations of the store carry and forward principle and the time scheduling strategies for the development of the research. Related algorithms are presented in detail in Section 3. Section 4 presents the system architecture for the derived mechanisms. Results of various analyses are then presented in Section 5. Finally, conclusions are presented in the Section 6.
2 Related Works In order to archive the main goals of at-one-time and on-time transmission, related studies and discussions are as follows. The concept of available transmitting time scheduling is similar to Vehicle Routing Problem (VRP). VRP is an important problem in the fields of transportation, distribution and logistics. The purpose of VRP is to calculate the minimum transporting costs on the basis of every user’s requisite. In VRP, a service with a set of customers must be delivered and each customer must be visited by the fleet of vehicles. There is an upper bound of load capacity supported in each vehicle. Additionally, each customer demands a specific number of products. VRP can be further divided into many classes in terms of different constrains, and the Vehicle Routing Problem with Time Windows (VRPTW) has been the most popular type of VRP. In VRPTW, in addition to the constraint of capacity, a vehicle has to visit a customer within a certain time frame. The problem is closed to our objective of the on-time delivery; there is a time-limited duration between adjacent nodes. Unlike VRPTW, the network situation changes dynamically. For instance, each delivery path has a different bandwidth capability in terms of different round trip times (RTTs). Particularly, the intermittent connectivity is expected, and connections are also infrequently established in the opportunistic networks. However, the VRPTW method just considers about the distance. Furthermore, the heuristics algorithms are widely employed to find alternative solutions to solve the VRPTW problem [4][6]. The developed mechanisms usually need complex computing processes. The algorithms of VRPTW cannot be directly applied on the heterogeneous networks because it spends much time to find an optimal solution via the scheduling of delivery time. More robust mechanisms are required to support the developments of the realistic network. Many studies investigated diverse types of store-carry-and-forward schemes [2]. Through the principle of hop-by-hop message exchange, the data are delivered to the destination successfully in opportunistic networks. This method is similar to traditional postal services. Several concepts behind store-carry-and-forward schemes come from the studies on delay tolerant networks (DTNs) that have been conducted within the Internet Research Task Force (IRTF) and have led to the specification of the DTN architecture. In DTN, a new bundle protocol [5] is proposed to provide the store-and-forward services. The bundle protocol is intended to provide a message oriented mechanism with reliable and asynchronous support over opportunistic networks. Consequently, we take the DTN as a fundamental infrastructure for supporting the on-time delivery.
The FDPOO: A Flexible Delivering Platform with FDPOO Guarantees in Oppnets
303
In various concepts of store-carry-and-forward, Yamamura et al. [6] proposed an efficient routing scheme, which concentrates on development of the practical framework to support non-real-time data exchange among users.
3 The Methods of At-One-Time and On-Time Delivery We propose a three-phase mechanism, which is depicted in Fig. 2, in order to accomplish the concept of at-one-time and on-time delivery. The first phase deals with system initialization for the resource allocation of the Flexible Delivering Platform with at-One-time and On-time guarantees (FDPOO) platform. The second phase is the scheduling phase of Macro Transmission (MaT) for considering about the on-time delivery issue, and the third phase is the scheduling phase of Micro Transmission (MiT) for dealing with the at-one-time delivery issue. In addition, in the MaT phase, it concentrates on the construction of a mathematical model for scheduling the delivery time between adjacent nodes over heterogeneous networks. In the MiT phase, it aims to develop the mechanisms for scheduling the transmission on each single link. Each link is composed of two adjacent nodes along the delivery path. Furthermore, the characteristics of opportunistic networks must be taken into consideration because the delivery path often includes heterogamous network domains, and each domain has its own network condition. Therefore, the QoS management with delay tolerance is an essential task to overcome the problem.
Fig. 2. The state transition diagram of the FDPOO platform
3.1 Phase of FDPOO Initialization The FDPOO initialization phase composes of transmitting model construction and resource monitoring. In the transmitting model construction, in order to achieve FDPOO service over heterogeneous networks, we firstly allocate at least one DTN node in each network domain. The network domain includes wired and wireless networks. After the FDPOO platform has been initialized successfully, it starts the action of resource monitoring. The execution procedure is as follows:
304
Y.-T. Yu, C.-M. Huang, and H.-C. Wang
Resource monitoring: any two adjacent DTN nodes exchange information with each other periodically. Hence, each DTN node maintains a network topology of its neighboring node to represent the network state around itself, including the loadings of neighboring nodes. As the network state changes, the announcements of the variation are exchanged through the neighboring links. 3.2 Phase of MaT The MaT phase is composed of the delivery path reservation and the Delay Tolerant Transmitting Scheduler (DTTS). We firstly define the constitution of on-time delivery over heterogeneous network to facilitate the subsequent derivation. Then, the delivery path can be observed using the minimum cost function, and the resources of this path are also reserved. Finally, we obtain the arranged time of each section in the entire delivery path using DTTS. In delivery path reservation, we propose the server-driven path reservation model based on the DTN architecture that obtains the most suitable delivery path with the minimal cost consideration. The execution procedure of the model is as follows: 1.
2.
Calculation of delivery path with the minimum cost: There is normally at least one delivery path from source to destination, and each path goes through a number of intermediate DTN nodes. The major work is to allocate an appropriate path to transmit data. Two restrictions that exist in each path are link bandwidth of each edge and load capacity of each DTN node, where the loading factors that need to be taken into considerations are CPU processing power, memory size, buffer storage, and so on. Thus, the calculation of these restrictions is the function of predicting the minimum cost path that refers to the shortest path computation, e.g., Dijkstra. The message of resource collection is sent from the DTN node of the source network domain, which is usually the Server domain, to destination throughout the FDPOO platform. Path reservation: Once the delivery path is selected by the DTN node of the destination network domain, the DTN node of the destination network domain sends a configuration message back to the DTN node of the source network domain through each DTN node in this path in order to reserve the resources along the entire path.
The DTTS of MaT is critically important in deploying the foundation for implementing the scheduling strategies of on-time delivery. Let {X := X is a predefinedvalue| X ∈ N}, and then ∀X , ∃ X ≤ X ; i = 1,2,3,...n ∑ i n
(1)
i =1
X is the expected time of the user requested. With the calculation of the minimum cost function, we can obtain the delivery path from the phases of FDPOO initialization and MaT, and thus the number of nodes is also known. Consequently, the transmission time of X can be arranged on each link. Each link is composed of adjacent DTN nodes along the delivery path. The arranged time of each link is denoted as Xi.
The FDPOO: A Flexible Delivering Platform with FDPOO Guarantees in Oppnets
305
Namely, the summation of Xi equals X. Each Xi has its own value associated with the network status, each value of Xi is derived from R(Xi), summation of R(Xi) and X. The value of R(Xi) denotes the statistic RTT value on the link which is obtained from the resource monitoring of the FDPOO initialization phase. Finally, the Xi is arranged proportionally in Eq. 2. Xi = (
R (X i )
∑ R (X )
)*X
(2)
i
When the data are transmitted via any link of two adjacent DTN nodes, it is expected to finish transmission in this deadline Xi. Eventually, the data are transmitted from the source to the destination using the proposed policy. 3.3 Phase of MiT The main purpose of MiT is to achieve two tasks. The first task is to monitor transmitting status at runtime on each link between adjacent DTN nodes. The second task is to establish dynamic delivery strategy when network status changes, especially when the connection is disconnected. In order to ensure the at-one-time delivery, the designed delivering scheduler needs to deal with the transmission on each link, which means the scheduler maintains the transmission on the link to be finished within the scheduled time, and the entire data can be transmitted to the next DTN node at one time. The procedure of the dynamic delivery strategy is that if the MiT model of the current DTN node, e.g., node F in Fig 1, can’t finish the transmission within the scheduled time because of the unstable network situation, then, the MiT model starts to select another delivery path from itself to the node which is the next node of the current DTN node’s adjacent node, e.g., node H in Fig 1. In this case, the network is congested but not disconnected on the original selected path (X2,3, X2,4). After selecting the backup path, the MiT starts to allocate the remaining data to both current path and backup path based on the ratio of RTT values of the two paths. It means that there are two delivering paths from current DTN node to the node next to the current DTN node’s adjacent node. Once the network becomes unstable again, the third backup path will be selected soon using the same policy until remaining data can be transmitted to next hop entirely. Referring to Fig. 1, let the selected transmitting paths be (X2,1, X2,2, X2,3, X2,4, and X2,5) through DTN nodes E, F, G and H. Once the network on segment X2,3 congests during the transmission, which means the data can’t be transmitted to node H through node G on time. Therefore, the scheduler selects another path, which is composed of X2,3 and X2,4, through node I as a backup path. Then, the MiT transmits the remaining data on both two paths, which are (X2,3, X2,4) and (X2,3, X2,4). Furthermore, we calculate the statistic of RTT values which reflect the bandwidth variation. The statistic of RTT values is obtained from the phase of the FDPOO initialization. The RTT is inversely proportional to the bandwidth. It means that the smaller RTT value gets the higher bandwidth. Therefore, the transmission situation can be divided into best and worst cases. The available bandwidth represents a key factor that distinguishes best cases from worst cases for developing MiT.
306
Y.-T. Yu, C.-M. Huang, and H.-C. Wang Table 1. The notations of the MiT
Notation RTTα
BWα RTT β BWβ
t S
ΔS
Tα Tβ
Δt W
Meaning The RTT of the best case The bandwidth of the best case The RTT of the worst case The bandwidth of the worst case A transmission time that has already occurred The total data size The remaining data size after t The time needed of using BWα to transmit data The time needed of using BWβ to transmit data The remaining time of the arranged time Xi The tolerated waiting time
Let the user want to watch a movie 3 hours later and X is the expected delivery time predefined by the user. Suppose the arranged time of one section is Xi, which is equal to the length of AB , and the data size of the movie is S. Thus the time needed for the best case is Tα, which is obtained from BWα using Eq. (3); the time needed for the worst case is Tβ, which is obtained from BWβ using Eq. (4). After obtaining Tα and Tβ, we can get RL , LB , and HB respectively, is depicted in Fig. 3, where the length of HB equals to Tα and the length LB equals to Tβ. The data size S gradually decreases according to the value of the remaining time t, and the interval of RL , LB , and HB gradually reduces accordingly. That is, the tolerated waiting time W, Tβ, and Tα are dynamically adjusted. Tα = Tα −
S − ΔS BWα
(3)
Tβ = Tβ −
S − ΔS BWβ
(4)
Practically, the network environments have many unexpected situations, thus the proposed MiT model uses Tα and Tβ as thresholds for enabling the relative policies. We depict three main cases as follows. Case 1: Let the arranged time of a section be Xi. Occasionally, the time required by using BWα is much greater than Xi in order to transmit all of the data, i.e. Tα >>Xi. In this case, the MiT model enables the dynamic delivery strategy again. The procedure of the dynamic delivery strategy is described previously.
The FDPOO: A Flexible Delivering Platform with FDPOO Guarantees in Oppnets
307
Xi AB = the arranged time RL = the waiting idle time LB = the worst case
HB = the best case
Fig. 3. A transmitting process between adjacent DTN nodes
Case 2: When the connection is broken, since each node is able to store data, the MiT model does not need to find another path immediately. On the contrary, the model allows being hold for a period time, namely tolerated waiting time W. Once the connection is reestablished during W, the data will be continuously transmitted. If the connection can’t be restored, the MiT model then begins to find another available path. Case 3: Let the network state get worse, which causes the delivery rate to decrease, and the transmitting throughput reduces simultaneously. In Fig 4, x-axis denotes time and y-axis denotes bandwidth usage. The scheduled transmitting time is Xi. Therefore, we can obtain the optimal transmitting rate V0 based on the data size S, which means the MiT can finish the transmission based on the transmitting rate V0 in the ideal network situation. But the actual transmitting rate is V, and it has unstable situation within t1t 2 , which means the available bandwidth is below than V0. The MiT model starts to calculate the region S’ based on Eq. (5). Region S’ denotes the amount of data that are too late to transmit. After time t2, the network situation gets improved, which means the available bandwidth is larger than V0, and thus the MiT model increases the transmitting rate to complement the data of region S’. S' = V0 × t 1 t 2 -
t2
∫V×t
(5)
t1
S' ≤ t 2 X i × BW β - t 2 X i × V0
(6)
Fig. 4. The transmitting status in case 3
Eq. (6) determines whether the amount of region S’ can still be transmitted successfully in the remaining time using BWβ or not. The network state is in the stable condition if Eq. (6) is true. In the remaining time, the system can transmit the remaining
308
Y.-T. Yu, C.-M. Huang, and H.-C. Wang
data, including the region S’. If Eq. (6) is false, the MiT model enables the dynamic delivery strategy again.
4 Performance Analysis For evaluating the performances of the implemented system, we implement a prototype of on-time and at-one-time delivery. The implemented platform is developed on Linux 2.6, and the programming pseudo codes are composed using language C++. We adopt DTN reference implementation version 2.6.0 (DTN2) [1] to develop the proposed scheme. The designed platform is composed of four modules, which are store-carryand-forward module, management module, scheduling module, and dynamic delivery policy module. We run several experiments in the real environment. Firstly, the effect of broken connection is measured in these experiments, and we take the challenged environments into considerations. The network status is normally unstable on challenged environments. Let a user request to watch a video with length of 150MB 50 minutes later. The configured topology based on the proposed strategies is shown in Fig. 5, and the delivery times of A, B, E, and G are assigned to 10, 17, 15, and 8 minutes respectively. We make comparsion of the proposed FDPOO with best-effort (BE), the Secure FTP with throughput restriction (S-FTP), and the store-carry-and-forward method of DTN. The results show that the BE and DTN methods utilize large bandwidth, so the data with size of 150MB are delivered to the user quickly. The throughputs are 340.8 KB/s and 268 KB/s, and the transmission times are 7.5 mins and 9.6 mins using the BE and DTN methods respectively. Nevertheless, since the user may not want to watch the video immediately, the BE method is not suitable for this case. Moreover, the consumptions of network resource of the BE method are quite larger than that of the FDPOO. Since the total transmitting time is 50 mins, the S-FTP method with the embedded scheduling mechanism needs to be assigned the end-to-end throughputs to 51.2 KB/s, which means that it needs to keep the transmitting rate through overall the transmisison. It’s quite different with FDPOO. In FDPOO, the allocated delivery time periods are 10, 17, 15, and 8 mins respectively along the delivery path, and then the expected throughput is 256, 150.8, 170.7, and 320.3 KB/s respectively. This kind of scheduling is more suitable for each network domain. However, the connection is broken at the 5th min, and then is restored at the 6th min in section A, which is depicted in Fig. 6. The curves of throughput rapidly decrease to 0 KB/s between these time periods. In section B, the connection is broken again from the 12th to the 46th min. If the user adopts the BE method, the user needs to request the transmission to server manually repeatedly and the data need to be retransmitted from the beginning. Moreover, the retransmitting procedure requires more bandwidth and time than the anticipated one.
Fig. 5. The experimental network topology
The FDPOO: A Flexible Delivering Platform with FDPOO Guarantees in Oppnets
309
Comparing with the BE method, the DTN and the proposed FDPOO methods are able to store data when it is disconnected, which means the transmitted data don’t need to be retransmitted. The difference between DTN and FDPOO methods is on the capacity of rerouting when the connection is broken. That is, the system allows a period of tolerated waiting time. The transmission can be finished through the original delivery path if the connection is restored within the tolerated waiting time. In this experiment, the time of the connection breaks for 1 min in section A, and the tolerated waiting time is scheduled as 1.41 mins. Hence, the transmission can be finished in section A. However, the connection breaks for 34 mins in section B, which are larger than tolerated waiting time. Thus, the rerouting mechanism is triggered. Another delivery path is composed of C, F, and G, and the allocated delivery time is 15, 18, and 6 mins respectively. Along the new delivery path, the remaining data are successfully transmitted to the user on time. In Figure 7, let domain D2 be the 3G environment. In this situation, the delivery rate may dramatically decrease, and the throughput of data transmission may reduce simultaneously. All of the methods are affected by the unstable transmission speed. Besides, despite the S-FTP method uses the smaller throughput, the transmission time is not as expected because the connections break frequently. In the experiment B, the FDPOO method computes the tolerated waiting time according to the disconnect duration. At the 23th min, the system finds another delivery path, which consists of C, F, and G. Then the system separates the remaining data to transmit independently. For the user’s expectation, the transmission is achieved at the 50th min, which is on time based on this delivery adjustment mechanism.
Fig. 6. In experiment A, throughput distributions of distinct methods
Fig. 7. In experiment B, throughput distributions of distinct methods
310
Y.-T. Yu, C.-M. Huang, and H.-C. Wang
5 Conclusion and Future Work Maintaining the transmitting QoS over heterogeneous networks is a significant issue. In order to achieve the goal in Oppnets, we have presented the FDPOO method in this paper. The study reveals two important issues: (1) providing the proper time limitation for network applications to exchange data is a feasible strategy; (2) at-one-time and on-time transmitting guarantees are necessary in Oppnets. Furthermore, because the proposed FDPOO method is based on DTN, it supports store-carry-and-forward capability to prevent reconstructing connections and retransmitting data when end-to-end connections are broken. The experiment results show the designed FDPOO can effectively complete the transmission in the assigned time limitation. The current study focuses on the scheduling of non-real-time transmissions. Our further study is to extend the FDPOO method to support real-time multimedia data transmission.
References 1. DTN Reference Implementation (DTN2), http://www.dtnrg.org/wiki/Code 2. Kuribayashi, S., Sakumoto, Y., Hasegawa, S., Ohsaki, H., Imase, M.: Performance Evaluation of Broadcast Communication Protocol DSCF (Directional Store-Carry-Forward) for VANETs with Two-Dimensional Road Model. In: The Pervasive Systems, Algorithms, and Networks (ISPAN’09), pp. 615–619 (2009) 3. Lan, K.C., Huang, C.M., Tsai, C.Z.: A Survey of Opportunistic Networks. In: Proceedings of the 22th IEEE International Conference on Advanced Information Networking and Applications (AINA’2008) - The 1st IEEE International Workshop on Opportunistic Networking (WON-08), pp. 1672–1677 (2008) 4. Qi, C., Sun, Y.: An Improved Ant Colony Algorithm for VRPTW. The Computer Science and Software Engineering, 455–458 (2008) 5. Scott, K., Burleigh, S.: Bundle Protocol Specification. Internet-Draft (2007) 6. Yamamura, S., Nagata, A., Tsuru, M., Tamura, H.: Virtual Segment: Store-Carry-Forward Relay-Based Support for Wide-Area Non-Real-time Data Exchange. In: Intelligent Networking and Collaborative Systems (INCOS’09), pp. 366–371 (2009)
A Distributed Telematics Peer-to-Peer (D-TP2P) Networking System for Service Discovery Chung-Ming Huang, Chia-Ching Yang, and Chun-Yu Tseng Department of Computer Science and Information Engineering, National Cheng Kung University, Tainan, Taiwan, R.O.C. No. 1, Ta-Hsueh Road, Tainan, Taiwan, R.O.C. [email protected]
Abstract. In this paper, a distributed Telematics Peer-to-Peer (D-TP2P) networking system is proposed to provide an efficient and feasible service discovery mechanism for mobile clients. When mobile clients travel on the road, they may request for some services from service providers to meet their demands. Mobile users in vehicles are assumed to go through a lot of regions, in which each region is associated with a region server. Related information of all service providers in a region is stored in its region server and the region server is in charge of the service discovery requests from all vehicles located in its region. According to clients’ demands, there are two types of search scenarios, which are (1) local search and (2) remote search. This paper focuses on the issues of developing a distributed P2P Telematics service discovery networking system over the vehicular network environment for mobile clients. A region server decision mechanism using a Safe-Zone Based Scheme (SZBS) is proposed to maintain correct connectivity between mobile clients and their associated region servers. A mobile client can have awareness of its region server and correctly send a request to its associated region server using SZBS. Then, the region server can help mobile users to find their requested service providers that are located locally or remotely. We also exhibit the performance merits of the proposed D-TP2P system in this paper. In the experiments, we showed that SZBS is better than the timer-triggered scheme. Keywords: Telematics, service discovery, geographic information system, location based service.
1
Introduction
When people are traveling on the road, different kinds of Telematics services for drivers or passengers may be needed, e.g., traffic information service, car towing service, parking service, fueling service. In the other side, it will be helpful if users on the road can find nearby interested service providers and then access the services provided from them, for example, hotel reservation service, restaurant reservation service, etc. For developing a Telematics services system, the S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 311–322, 2010. c Springer-Verlag Berlin Heidelberg 2010
312
C.-M. Huang, C.-C. Yang, and C.-Y. Tseng
Telematics Forum designed a Global Telematics Protocol (GTP) [9] for drivers to find their demanded services on the road. In GTP, a standardized solution is proposed to create a mass-market and reduce the time and costs of development and implementation for Telematics related industries. This protocol supports a wide variety of services and can also be extended for customized services as well as to new communications networks. Some illustrated Telematics services in GTP are vehicle tracking, remote diagnostics, alarm, emergency call (E-Call), breakdown Call (B-Call) and Information call (I-call). Essentially, GTP is a Client/Server based protocol, which is shown in Fig.1(a). If drivers or passengers want to acquire services, they have to connect to the Contact Center in GTP. The Contact Center in the GTP plays the role of a call center to which clients connect to and request some the Telematics services. Apparently, GTP belongs to the centralized architecture. In other words, when the requests from clients are tremendous, the Contact Center may become a bottleneck and thus largely decrease the performance of service discovery. To overcome the GTP’s dilemma and provide a suitable service discovery system for the mobile clients in vehicles and service providers for vehicle users, a centralized vehicular Peer-to-Peer Telematics service platform was developed in [11]. However, the centralized server proposed in [11] is not scalable and has the limited capability to handle the a large number of requests from mobile clients. In this paper, a distributed Telematics Peer-to-Peer (D-TP2P) networking system is proposed for larger scale of networks. The reasons that we propose a distributed architecture are that overall computing load can be shared by distributed region servers and the communication load between centralized server and service providers can also be decreased through the use of distributed servers. The execution scenario of D-TP2P is depicted in Fig.1-(b). Each region has a region server. Service providers locate in region x can publish their services’ information to region x’s region server. A client sends a service request, which is associated with some preliminary selection criteria to region server i when the client is in region i. Next, the region server i replies a list of candidate service providers. Thereafter, the client contacts with the candidate service providers directly based on his enhanced selection criteria. After some communication interactions between the client and candidate service providers, the client selects and subscribes the most suitable service provider(s). In this way, instead of using the centralized system paradigm, a P2P-liked distributed search paradigm is adopted in the D-TP2P system to make the system more reliable and scalable. An important characteristic of our proposed D-TP2P system is that the ”services” discovered through D-TP2P are ”practical services provided by service providers”, which are different from the ”services” provided by some devices [1]-[5]. The rest of this paper is organized as follows. Section 2 introduces system execution scenario. Section 3 presents the proposed region server decision mechanism. Section 4 demonstrates experiment results of the proposed system. Finally, we summarize and conclude our works in Section 5.
A D-TP2P Networking System for Service Discovery
313
(a) Service Provider 1
Contact Center
Mobile Client
Service Provider 2 Request for Service Service Provider 3 Mobile Network
...
Centralized Architecture
Service Providers
(b)
Service Provider 11
Region Server 1 Service Provider 12
...
Service Provider 13
Service Provider 21
Region Server 2 Distributed Architecture
Service Provider 22
Service Provider 23
...
囿 囿
Service Provider k1
Region Server k Service Provider k2
vice
Dis
cov
ery
Selection
...
Service Provider k3
Ser
Mobile Client
Fig. 1. (a) The execution scenario of Global Telematics Protocol (GTP); (b) the execution scenario of the proposed D-TP2P
2
System Execution Scenario
In this Section, the functional scenario of D-TP2P and the system architecture are introduced. When a client needs to find some services during traveling on the road, e.g., finding a gas station, car towing and calling for ambulances. It will be a serious challenge for the client to find service provider(s) that satisfies his requirement - lower price, shorter response time, etc. The proposed D-TP2P system is designed to resolve these problems for drivers or passengers. 2.1
Functional Scenario
In the previous studies [6] [7] [8], characteristics of spatial queries are widely discussed. In [6] and [7], D. Ahlers et al. used ”spatial filters” to determine the
314
C.-M. Huang, C.-C. Yang, and C.-Y. Tseng
search scope. In our D-TP2P system, we implement a ”region query ” function with a reference point and the search scope to let a mobile client be able to search for the local service providers or remote service providers in a certain region. Fig. 2 depicts two scenarios for mobile users to search for service providers when they are traveling on the road, which are ”local search” and ”remote search”. ”Local Search” means that the requester searches for the service providers within his current region. ”Remote Search” means that the requester searches for the remote service providers in different regions. For example, referring to Fig. 2, there is an accident occurred on the road when ”User A” passes through, in which case injured people need ”User A” to acquire ambulances to take them to the hospital. In this case, ”User A” sends a request message to his current region server x and searches for nearby hospitals located in region x. In Fig. 2, ”User B” is driving to tourist attractions in region y for holiday. Although ”User B” is in region x, he still should be able to search for the available services such as ”tourist guide service”, ”entertainment related services” (playing golf, riding a horse and shipping) and ”parking service” in region y, which is located remotely from the viewpoint of region x, through his current region server x’s cooperation with remote region server y. Region Server x
Region Server y
User B
User A
ġ
Tourist attraction
Accident Region x
Region y
Fig. 2. A scenario of the proposed D-TP2P system
In order to make service selection more precise and to reduce the region server’s load, a two-stage service discovery procedure depicted in [11] is adopted in the proposed D-TP2P system. In the first stage, the region server searches a list of candidate service providers for each service discovery request. After the search is complete, the region server constitutes a candidate service provider list and sends the list back to the requested client. The second stage is the communication interactions between the client and candidate service providers in the list. During the communication interactions, the refinement of selection criteria is done step-by-step by the client such that one or more adequate service providers is/are found. In this paper, we focus on the issue about constructing a distributed Telematics P2P networking system for service discovery. In the proposed D-TP2P system, main concern of the D-TP2P is as follows. Our proposed service discovery system is a ”distributed” architecture, and there are many region servers handling requests from clients. Since the client is moving,
A D-TP2P Networking System for Service Discovery Service Description Publishing/Updating
Tracker Server
Service Provider Registration
Region Servers (RS) Remote RSs
Registration/Publishing /Updating Service Search Service Provider Registration
315
Remote Search
Local RS
Local Search
Location Solicitation Service Search
Location Solicitation f rming Service Confi Confirming Service Subscription
Service Confirming Service Subscription
Service Providers
Mobile clients
Fig. 3. The system architecture of the proposed D-TP2P system
a fundamental problem for region servers and mobile clients may rise: ”which region server should handle the requests from mobile client x ?” In our proposed D-TP2P system, each region is associated with a region server that maintains the service information of those service providers residing in the corresponding region. Thus, it needs to have some mechanisms (i) to find where the moving client is and (ii) to find that the moving client is on the region boundary and will have a new region server to serve him. 2.2
System Architecture
Fig. 3 depicts the overview of our proposed D-TP2P system which consists of four types of basic entities, e.g., tracker server, region servers, service providers and mobile clients. The tracker server is designed to handle the registration of service providers and provide positioning services for mobile clients in the initial phase. A region server stores related service information for those service providers located in its region and provides the lookup service, from which mobile clients are able to find the candidate service providers. In our proposed service discovery scheme, spatial information and mobility of vehicles are both taken into consideration. Interactive procedures among the four basic entities of our D-TP2P system are (1) service description registration, (2) service description publishing/updating, (3) location management, (4) service search, (5) service provider selection, (6) service subscription. These procedures are discussed in detail as follows.
316
C.-M. Huang, C.-C. Yang, and C.-Y. Tseng
(1) Service provider registration: In this procedure, service providers need to send registration messages containing their location information and their identifiers to the tracker server, and the tracker server forwards these messages to the corresponding region servers according to the positions of service providers. (2) Service description publishing/updating: After finishing the registration procedure, service providers are able to directly publish or update service information to their associated region servers. (3) Location solicitation: In our proposed D-TP2P system, a user may be a driver or passenger in the moving vehicle. In order to let mobile users know where they are and to which region server to be connected, the location solicitation procedure is needed. In this procedure, a mobile client connects to the tracker server at first, and the tracker gives the mobile client connection information of his current region server. Thus, the mobile client can connect to the corresponding region server. (4) Service search: In the service search procedure, if a mobile client needs to find some services, some parameters setting, e.g., service type, search scope, needs be used. The query can be generated based on the requirement of the client and related spatial information. After receiving the request message, the client’s current region server parses the request message and forwards this message to suitable region servers, which may be the current region server itself and/or some remote region servers according to the search scope. Each region server would perform the lookup operation accordingly. Finally, the current region server gathers search results from other remote region servers and sends a response to the requested mobile client. (5) Service provider selection: The search result contains a list of candidate service providers and related description of services. In the service provider selection procedure, the mobile client has to select one or some adequate service providers. To ensure the service availability of service providers, an iterative request-response based approach is adopted. (6) Service subscription: In the last procedure, when the service provider(s) is/are determined in the service provider selection procedure, the mobile client can then subscribe the services with these service providers.
3 3.1
Region Server Decision Mechanism The Concept of Region Servers Decision Mechanism
In the early works [12] [13], Seno et al. discussed service discovery issues using three strategies: (1) ”central directory”[2], (2) ”distributed directories” strategies [10], and (3) ”without directory” strategies [1]. General speaking, central directory based strategies can reduce the response time for locating services. However, the network size of central directory based approaches is usually limited due to the bottleneck problem of central directory for handling handle a large number of requests. For the concern of scalability, bottleneck problem and response time for locating services, D-TP2P adopts the distributed directories strategy instead of using central directory, which was adopted in [11].
A D-TP2P Networking System for Service Discovery
317
Since the D-TP2P system uses the ”distributed directories” strategy, a mobile client should connect to an appropriate region server to look up the directory for the requested service. A fundamental problem emerges: the mobile client does not know the boundary information of the current region server and he may leave the current region due to his mobility. Thus, how to make mobile client know which region server can serve him is the challenge to be tackled. To solve the problem, a suitable region server decision mechanism should be adopted to let the mobile client be able to connect to its current region server. With this mechanism, a mobile client x can have awareness of the current region server and correctly send a request to its current region server. The main idea of this mechanism is that each region is associated with a region server. In other words, each region server should have geometric information about its region such that it is able to judge whether the position of the client is in its region or not. There are two ways for a mobile client to know his current position: (1) messaging based approach (2) map based approach. In this paper, we choose the messaging based approach for mobile clients to verify their positions by sending hello messages. The reasons that we do not let the mobile client save all of the spatial information about region servers in his local disk are as follows: (1) it extremely increases the computing/storage overhead in the mobile client and (2) if some information about region servers is changed, the mobile client needs to update the information and it also increases the overhead of the mobile client. For the aforementioned concerns, a messaging based approach is adopted in the proposed region server decision mechanism. Two schemes that can be used to send a hello message in the messaging based approach are as follows: (1) Timer-triggered: a mobile client sends a hello message to the current region server periodically. The timer-triggered scheme is widely used in several protocols, applications and systems. Mobile clients only need to send hello messages and wait for the decision result sent from region servers in a specific period of time. Obviously, the sending frequency directly affects the accuracy of the decision mechanism. Higher frequency causes larger computing cost, and lower frequency makes the decision mechanism be kind of inaccuracy. Nevertheless, this scheme may be futile in some situation in the vehicular network environment. For example, the vehicle is traveling at a very low speed, or stops in the parking lot. In these cases, sending hello messages may become meaningless. (2) Event-triggered: To release the high computing overhead and increase the accuracy of the decision mechanism, an event-triggered scheme can be adopted in the region server decision mechanism. In this scheme, the ”event” is triggered to make the mobile client send hello messages, and the region server only handles the necessary computing to let mobile clients have enough information to make decisions by themselves. In this Section, we design an event-triggered scheme called Safe-Zone Based Scheme (SZBS), which consists of three phases, to let every mobile client be able to connect to the correct region server.
318
3.2
C.-M. Huang, C.-C. Yang, and C.-Y. Tseng
Three Phases of the Safe-Zone Based Scheme
Three phases of the Safe-Zone based Scheme are depicted as follows. (1) Initialization phase: When a mobile client starts to drive the vehicle and launch the D-TP2P application, the client sends a request to the tracker server to ask for its current region server. After receiving the response from the tracker server, the client can connect to its current region server. (2) Server-side prediction phase: In this phase, in order to let region server know which mobile client is within its region, the mobile client sends a hello message which contains some spatial information such as his GPS position to his current region server, which is shown in Fig. 4-(a), and the current region server calculates and send the information, including ”Safe Zone” and ”Decision Line”, to the mobile client, which is shown in Fig. 4-(b). The ”Safe Zone” and ”Decision Line” are defined as follows. Current RS
ĩŢĪ
Current RS
ĩţĪ 2
1
Safe Zone
Boundary
Boundary DCB Decision Line
New RS
New RS Current RS
ĩŤĪ
Current RS
ĩťĪ
Safe Zone
Safe Zone
3
Boundary
Boundary Decision Line
Decision Line
3
New RS
New RS
Fig. 4. (a) (b) Are the ”Server-side Prediction Phase” of SZBS, (c) (d) are the ”Clientside decision Phase” of SZBS
The ”Safe Zone” is a zone that a client can arbitrarily move without the fear of crossing the region boundary and changing the region server. If the client moves within the ”Safe Zone”, he will not leave the current region which is managed by its current region server. In order to calculate the ”Safe Zone”, a variable ”DCB ” is defined as the shortest distance between the current client’s position and the boundary of the current region. The distance ”DCB ” is regarded as the radius to draw a circle, and the center (Xc , Yc ) of this circle is the current position of the client. The mobile client can arbitrarily move in the interior of the circle without the fear of leaving the current region. The range of ”Safe Zone” is depicted in Eq. 1. 2 (X − Xc )2 + (Y − Yc )2 <= DCB
(1)
A D-TP2P Networking System for Service Discovery
319
The ”Decision Line” is used to determine whether a mobile client needs to change the region server or not. ”Decision Line” is a tangent line which touches the edge of ”Safe Zone” and the boundary of the region. The point of tangency is (Xt , Yt ) which is calculated by the region server. The ”Decision Line” is calculated using the following implicit differentiation: d 2 {(X − Xc )2 + (Y − Yc )2 − DCB }=0 dx ⇒ 2(X − Xc ) + 2(Y − Yc ) ⇒
dy =0 dx
dy X − Xc =− dx Y − Yc
(2)
(3)
(4)
The slope of the tangent line at (Xt , Yt ) is dy Xt − Xc |(Xt ,Yt ) = − dx Yt − Yc
(5)
The equation of the tangent line for ”Decision Line” is denoted as follows: LDL : Y − Yt +
Xt − Xc (X − Xt ) = 0 Yt − Yc
(6)
Thus, the mobile client can judge whether he stays in the same region or not according to his new positions (Xx , Yy ) and (Xc , Yc ). A mathematical property can be used to let a mobile client make decision to see he still can connect to its current region server or should connect to a new region server. Given A(X1 , Y1 ), B(X2 , Y2 ) and a line with a linear equation L : ax+ by + c = 0, we can substitute point A and B in the left side of this linear equation to obtain valueA and valueB respectively. Thus, if these two points A and B are in different sides of line L, the product value of valueA and valueB is smaller than zero. With this property, we can put the center point (Xc , Yc ) and mobile client’s position (Xx , Yy ) in the linear equation of ”Decision Line” LDL . If the following inequality (7) holds, the mobile client has crossed the boundary and is in a different region, which means he needs to connect to a new region server. (Yc − Yt +
Xt − Xc Xt − Xc (Xc − Xt ))(Yy − Yt + (Xx − Xt )) < 0 Yt − Yc Yt − Yc
(7)
(3) Client-side decision phase: There are only two cases in the ”Safe Zone” for a mobile client. (1) Cross ”Decision Line”: if the mobile client has crossed the ”Decision Line”, which is shown in Fig. 4-(c), he should connect to and thus need to send a new hello message directly to the new region server. (2) Cross ”Safe Zone”: if the mobile client has leaved the ”Safe Zone” but within the same region, which is shown in Fig. 4-(d), he should send a hello message to the current region server to enter the ”Server-side prediction phase” again.
320
4
C.-M. Huang, C.-C. Yang, and C.-Y. Tseng
Experiment Results
In this Section, we demonstrate effectiveness of the proposed D-TP2P system based on some experiment results. In our implementation of the D-TP2P system, the necessary spatial information is stored in the tracker server and region servers. To handle the spatial information in databases, Microsoft SQL Server 2008 is adopted to provide comprehensive spatial support to manage the spatial data. Since the tracker server needs to handle the registration of service providers, Microsoft Internet Information Services server is installed to provide an interface for the registration. There are two region servers in our D-TP2P system for this experiment, which handles the requests from ”Tainan County” and ”Kaohsiung County” respectively. There are two experiments comparing the performance of the timer-triggered scheme and SZBS in our proposed region server decision mechanism. Firstly, we examine the query message overhead created by these two schemes. We randomly choose ten paths within a region from the Google Earth, and the average path length is around 30km. The results of this experiment are shown in Fig. 5. The value of time interval (I=10 ∼ 60 seconds) and the speed of the vehicle influences the message overhead largely in the timer-triggered scheme. Lower speed of the vehicle causes longer travel time and the mobile client needs to send more query messages. In Fig. 5, the query message overheads in the proposed SZBS are very low and regardless of vehicle’s speed. The vehicle only sends query messages when it is leaving ”Safe Zone”. If the initial position of the vehicle is near the center of its current region, it can obtain a large ”Safe Zone” such that the vehicle can arbitrarily move within this zone. In this experiment, our proposed SZBS obviously outperforms the timer-triggered scheme.
Fig. 5. The performance results of the timer-triggered scheme and SZBS in our proposed region server decision mechanism
A D-TP2P Networking System for Service Discovery
321
Table 1. The switch time of TTS and SZBS Scheme TTS SZBS I=10 I=20 I=30 I=40 I=50 I=60 Time (s) 9.63 14.47 18.77 24.08 29.14 34.17 1.68
In Table 1, the switch time is discussed for timer-triggered scheme (TTS) (time interval, I=10 ∼ 60 seconds) and SZBS in our proposed region server decision mechanism. In this experiment, the switch time is defined as the time that a mobile client connects to the new region server when it cross the boundary of the current region. In Table. 1, if the larger time interval is set in the timertriggered scheme, a larger switch time can be derived. We can find that our proposed SZBS uses less switch time than timer-triggered scheme.
5
Conclusion
In this paper, a D-TP2P system is proposed to find service providers based on the demands of mobile clients. The benefits of using the distributed architecture are as follows: (1) system computing load can be shared by distributed region servers and (2) distributed architecture is scalable and suitable for large scale of networks. The key problem ”how to let a mobile client x connect to its current region server” has been solved using our region server decision mechanism called SZBS. In the experiments, we showed that the proposed region server decision mechanism using SZBS is better than the timer-triggered scheme.
Acknowledgment This research is supported by the National Science Council of the Republic of China, Taiwan under the contract number NSC 98-2219-E-006-009.
References 1. UPnP Forum. UPnP device architecture version 1.0 (June 2000) 2. Guttman, E., Perkins, C.: Service location protocol, version (June 1999) 3. Baroody, R., Rashid, A., Al-Holou, N., Hariri, S.: Next generation vehicle network (NGVN): Internet access utilizing dynamic discovery protocols. In: Proceedings of the IEEE/ACS International Conference on Pervasive Services, July 2004, pp. 81–88 (2004) 4. Bechler, M., Wolf, L., Storz, O., Franz, W.: Efficient discovery of Internet gateways in future vehicular communication systems. In: Proceedings of the 57th IEEE Vehicular Technology Conference, April 2003, vol. 2, pp. 965–969 (2003) 5. Kim, D., Lee, S.: UPnP-Based Telematics Service Discovery for Local Hot-Spots. In: Proceedings of IEEE International Conference on Multimedia and Ubiquitous Engineering, April 2007, pp. 500–506 (2007)
322
C.-M. Huang, C.-C. Yang, and C.-Y. Tseng
6. Ahlers, D., Boll, S.: Beyond position - spatial context for mobile information retrieval systems. In: Proceedings of IEEE 6th Workshop on Positioning, Navigation and Communication, pp. 129–134 (2009) 7. Mountain, D.M.: Spatial filters for mobile information retrieval. In: Proceedings of the 4th ACM workshop on Geographical information retrieval, pp. 61–62 (2007) 8. Grine, H., Delot, T., Lecomte, S.: Adaptive query processing in mobile environment. In: Proceedings of the 3rd International Workshop on Middleware for Pervasive and Ad-Hoc Computing, pp. 1–8 (2005) 9. Telematics Forum, Global Telematics Protocol (GTP) 1.0, http://www.ertico.com 10. Sailhan, F., Issarny, V.: Scalable Service Discovery for MANET. In: Proceedings of IEEE Third International Conference on Pervasive Computing and Communications, pp. 235–244 (2005) 11. Chung-Ming, H., Chia-Ching, Y., Chun-Ming, H.: An Efficient Telematics Service Discovery Scheme over the Centralized Vehicular Peer-to-Peer (C-VP2P) Telematics Service Platform. In: Accepted in proceedings of IEEE 24th International Conference on Advanced Information Networking and Applications (2010) 12. Seno, S., Wan, T.-C., Budiarto, R.: Survey and new approach in service discovery and advertisement for mobile ad hoc networks. In: Proceedings of the IJCSNS, vol. 7(2), pp. 275–284 (2007) 13. Seno, S., Wan, T.-C., Budiarto, R.: Hybrid hierarchical approach for addressing service discovery issues in MANETs. In: Proceedings of the IEEE International Conference on Telecommunications and Malaysia International Conference on Communications, May 2007, pp. 197–202 (2007)
Empirical Predictor of TCP Throughput on a Multihop Wireless Path Anna Chaltseva and Evgeny Osipov Department of Computer Science and Electrical Engineering Lule˚ a University of Technology {Anna.Chaltseva,Evgeny.Osipov}@ltu.se
Abstract. This paper addresses a question of predicting TCP throughput over a multihop wireless path. Since it is useful for a variety of applications it is desirable that TCP throughput prediction technique introduces low-overhead while avoiding active measurement techniques. Analytical derivation of the throughput predictor for multihop wireless networks is difficult if not impossible at all due to complex cross-layer dependencies. In this article we statistically analyze the significance of parameters on physical, MAC and transport layers in a multihop wireless chain and empirically derive a practically usable throughput predictor. The resulting model allows prediction of the throughput with less than 2% error.
1
Introduction
Multihop wireless networks are known for their highly variable and unstable performance. Being able to accurately predict the performance network protocols prior to the start of the actual communication session would provide an essential input for various optimization processes, e.g. selection of an optimal multihop route, setting parameters for traffic shapers, configuring appropriately parameters of the MAC protocol etc. In the case of TCP based communications the correct prediction of the throughput would prevent such problems as connection migration delays, packet reordering, and re-initialization of the congestion window. Several well-established approaches for predicting TCP throughput in the wireline Internet exist [1]. All these approaches fall into either of two classes: formula-based or history-based. Formula-based prediction relies on mathematical models that express the TCP throughput as a function of the characteristics of the underlying network path (i.e. RTT, loss rate). The history based approaches use standard time series forecasting methods based on a history of throughput measurements from previous TCP transfers on the same path. In the case of multihop wireless networks history-based predictions have little sense due to high operational dynamics of these networks (node mobility, dynamic interferences etc.). As for the formula-based predictors, mathematical models for TCP throughput are typically based on certain assumptions that make the interpretation of their parameters difficult in reality. For example, estimating the packet S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 323–334, 2010. c Springer-Verlag Berlin Heidelberg 2010
324
A. Chaltseva and E. Osipov
loss rate parameter in the traditional “square root” model [12] using a periodic ping-based measurement would introduce a significant error in the prediction as it can be an order of magnitude different from the packet loss rate experienced by the flow due to self-contention on the multihop path or due to congestion. We intend to obtain a practically useful TCP throughput predictor (hereafter referred to as “predictor” or “model” interchangeably) as a function of: – Adjustable parameters of protocols on different communication layers, for example the maximum segment size on the transport layer, number of hops on the network layer (this parameter is “adjustable” when multipath routing is available), size of contention window or number of retransmission attempts on the MAC layer, and transmission rate on the physical layer; – Characteristics of design-imposed and runtime communication context, for example relative signal-to-interference values at nodes, etc. Deriving such a model is an ambitious task. The large number of model parameters and complex interdependencies do not allow for analytical treatment of the problem and, therefore, make an empirical derivation challenging. In this paper we focus on the empirical throughput prediction of a bulk TCP transfer for a single flow in IEEE 802.11b-based multihop wireless chain prior to starting the actual data exchange. The contribution of this paper is thus twofold. Firstly, we present a two-stages methodology for empirical derivation of the target model. Secondly, we empirically derive a so far three dimensional variant of the crosslayer TCP throughput model as a function of gross physical layer transmission rate, number of wireless hops traversed by the flow and MSS. Our model allows practical prediction of TCP throughput with less than 2% error. On the one hand the results presented in this paper can be directly used for boosting TCP performance in multihop wireless networks as described in [11]. On the other hand, however, the presented approach should be considered as work in progress towards deriving advanced TCP throughput predictor for realistic scenarios with more complex topologies and in the presence of cross traffic. The paper is structured as follows. We outline the modeling process in Section 2. Section 3 elaborates the details of the performed experiments. The significance analysis and TCP throughput modeling is presented in Section 4. Section 5 concludes the paper.
2
Motivation and Solution Outline
The motivation for developing the model described in this article particularly stems from the work presented in [11]. There the authors adapted the maxmin fairness framework from the wireline Internet to the specifics of multihop wireless networks and suggested practically implementable mechanisms which enforce the fairness model in real networks. The two major components of the adaptive distributed capacity allocation scheme for multihop wireless networks are: (a) The usage of an ideal throughput achieved by a multihop TCP flow for characterizing the boundary load of a geographical region traversed by the
Empirical Predictor of TCP Throughput on a Multihop Wireless Path
325
session and (b) the rate throttling mechanism for reducing the output rate at sources of TCP sessions in order to control the load in their bottleneck regions. The major improvements achieved by the suggested mechanism of throttling the output rate at ingress nodes are an increase in total network throughput and almost perfect fairness. 2.1
Related Work
Previous modeling of TCP throughput has generated a diverse set of results. A good overview and an extensive analysis of available TCP throughput prediction approaches is presented in [1]. One of the most common predictors which is largely used in the Internet is the “square root” model (or PFTK predictor) [12]. In wireless networks several attempts to analytically model TCP throughput were undertaken during the last decade [5], [6], [2]. It is commonly understood that capturing the cross-layer nature of wireless communications is far from being simple. Even with some simplified assumptions the resulting models are too complex to be applied in practice [8]. The works in [4], [10] use an approach of empirical TCP modeling. While these papers present fundamental observations on the TCP behavior in multihop wireless scenarios, practically usable TCP throughput predictor remains to be discovered. The uniqueness of the modeling approach presented in this paper comes from the nature of parameters included in the model. Our model binds the adjustable parameters of protocols on different communication layers on the one hand and directly measurable characteristics of the communication path on the other. In this way, the throughput could be predicted without the need of estimating parameters during the actual message exchange. 2.2
Our Approach
We seek the TCP throughput model in a general form (1), where RP HY is − −−− → −−−−→ −−−→ −−−−→ the gross data rate on the physical layer and f (PEN V , PMAC , PN ET , PT RAN ) is the rate reduction coefficient. This coefficient is a function of parameters on the − −−− → physical, MAC, network, transport layers and PEN V is a vector of characteristics of particular operating environment. −−− → −−−−→ −−−→ −−−−→ ˆ = RP HY · f (− PEN V , PMAC , PN ET , PT RAN ). R
(1)
From the rich experience collected in the research community on the analysis TCP behavior in multihop wireless networks it is known that the number of cross-layer parameters affecting the TCP performance is large. It is also known that not all of these parameters, though, place significant effect on the overall system performance. Moreover, involving unnecessary parameters in the crosslayer optimization process and at the end an implementation of the cross layer architecture may lead to a cumbersome solution with to a large extent unpredictable behavior [3].
326
A. Chaltseva and E. Osipov
Table 1. Parameters on different communication layers potentially affecting the TCP throughput selected for significance analysis in this work TCP/IP Layer
Physical
MAC
Network
Transport
Parameters
Data rate Minimum Number Maximum segment size (RP HY ) contention of hops (M SS); maximum congeswin(Nhops ) tion window (CW N D) dow size (CWmin )
Determining the optimal subset of parameters statistically significant for optimization constitutes the first phase of our methodology. At this step we perform 2n factorial design where n is the number of candidate factors to be included in the the target model. We use F-test to evaluate the significance of chosen parameters. In the second phase of our methodology we perform iterative curve fitting on the parameters with the highest statistical significance. In each iteration we choose a parameter with the highest significance, perform curve fitting and evaluate the accuracy of fitting using a coefficient of multiple determinations. We repeat the procedure for all significant parameters. In this work we apply the methodology on a special class of multihop networks - a wireless chain with single TCP flow. The rationale for choosing this class of networks is twofold. Firstly, our target is to create a model for an ideal throughput of TCP bulk transfer without interferences inferred by the cross traffic [11]. Secondly, already with these settings applying our model is both effort and time consuming. Overall, we follow a bottom-up approach by first modeling the simplest case and then extending the model by gradually adding complexity of the scenarios. 2.3
Highlights of the Contribution
For the significance tests in this work parameters reflected in Table 1 were selected. Note that the table does not present a complete list of parameters on different layers. For this work we only selected those with the highest relevance to the considered scenario. In total we performed 24000 simulation runs to collect the necessary statistics for the significance analysis of the four chosen factors. The most interesting result from the significance analysis is that imposing an artificial limit on the size of TCP congestion window does not significantly affect TCP throughput in the particular scenario. This result differs from previously published findings in 3·Nhops . [4] suggesting to clamp CW N D depending on the number of hops as 2 However, this finding is not a contradiction to previous analysis, but shows that there is a complex dependency between CW N D parameter and characteristics of the communication context.
Empirical Predictor of TCP Throughput on a Multihop Wireless Path
327
Table 2. Factors and chosen levels in factorial design Factors Nhops Levels Low High
M SS (Bytes) Low High
CW N D (segments) CWmin Low High Low High
1 3 Values 9
100 500 900 1360
2 6 10 14 18
2 4 10
200 600 1000 1460
3 7 11 15 19
15
30
As a result of iterative fitting we obtained a three-dimensional variant of the → − → → model (2), where − α , β and − γ are vectors of scalar values for each considered physical layer transmission rate. → − ˆ P HY , Nhops , M SS) = RP HY · M SS + α . R(R (2) − → → β · Nhops − − γ → − → → The coefficients in vectors − α , β and − γ can further be expressed as functions of other parameters. Determining these parameters is left outside the scope for this paper and will be considered in our future work. Our model allows practical prediction of TCP throughput with less than 2% error.
3
Description of Experiments and Simulation Setup
For the analysis of statistical significance of model parameters we performed factorial design as one of the most suited techniques for such purposes [9]. In this technique independent variables of interest (or factors) are assigned discrete values (or levels). The factorial design is a strategy where experiments are Table 3. Simulation parameters Parameter
Value
Physical Layer Parameters Carrier sensing threshold -115 dBm Reception threshold -72 dBm Transmitted signal power 15 dBm Channel frequency 2437e6 (channel 6) Base TX rate 1 Mb/s Data rate 2, 5.5, 11 Mb/s MAC Layer Parameters Maximum Contention Window 1023 Short slot time 9 us SIFS 10 us Short preamble 72 bits RTS/CTS off
328
A. Chaltseva and E. Osipov
performed with all possible combinations of the factors’ levels. We decided to perform the analysis with two levels for each factor (“low” and “high”). This number allows reducing the number of simulation runs while keeping good statistical accuracy of the analysis. Analyzing only two values for each factor is, however, not enough for the identification of the factor’s significance. For this reason Nhops factor was analyzed with three pairs of levels, M SS with four pairs, CW N D with five pairs as indicated in Table 2. The significance of CWmin factor was analyzed with one pair of values. Each experiment was repeated 5 times randomly seeding the random number generator at each iteration. In total 24000 (24 · 3 · 4 · 5 · 1 · 5) independent factorial designed experiments were performed.The response from each run is the throughput in kilobits per second which was computed as the amount of data received by the sink node divided by the total transmission time. 3.1
Simulation Setup
The network topology used in our experiment is a static wireless chain depicted in Figure 1. The nodes were placed on distances equivalent to the transmission range of the wireless interface at a given physical layer data rate. A single wireless channel is shared by all nodes in the network. Static routing was used in order to avoid interferences imposed by the routing traffic. The test flow originated at Node 1 and traversed variable number of hops to the last node in the chain which was the sink node for the monitored flow. We used TCP Newreno and an FTP application which constantly generated traffic during each simulation run. We used network simulator ns-2.33 [7] to perform the experiments. Prior to the experiments we performed careful calibration of the network simulator parameters in order to achieve as close to the reality performance figures as possible. For this we configured the simulator with parameters of real IEEE 802.11b network interfaces which are used in our wireless mesh testbed. Table 3
Fig. 1. The experimental chain topologies Table 4. Results of calibration of network simulator parameters: TCP throughput (in kb/s) measured in simulations and in real multihop testbed hops
1
3
6
Simulations Measurements |Δ|
5041.4 3870.0 1171.4
1681.2 1260.0 421.2
836.3 870.0 33.7
Empirical Predictor of TCP Throughput on a Multihop Wireless Path
329
summarizes the used settings. In order to verify the correctness of the simulation settings we compared the results from the simulations to the performance of the bulk transfer in a real multihop testbed deployed in our lab. As Table 4 indicates we achieved good simulations accuracy especially on larger hop counts.
4
Statistical Significance and Empirical Throughput Modeling
In factorial analysis F-test is used to evaluate the significance of a factor. The null hypothesis of the F-test is that the factor would have a zero coefficient when added to a linear model. The decision about the validity of the null hypothesis is taken by inspecting the p-value of the test. The p-value is defined as the smallest level of significance that would lead to rejecting the null hypothesis [9]. A significance level of the test (α-level) is a probability of rejecting the null hypothesis when in fact it is true. Accordingly factors which p-values are lower then the defined α-level are considered as significant. Usually a significance level equal to 0.05 is considered as an acceptable error level. The F-test is based on the assumption of normality and independence of the residuals from an identified linear regression model. In our analysis the normality assumption was checked by evident results from Jarque-Bera hypothesis test of composite normality. The independence is achieved by the experiment design presented in the previous section. Applying factorial analysis to experimental data led to identify the following factors as significant: Nhops and M SS with confidence 95% (α-level equals 0.05). We observed that factors CWmin and CW N D were significant only in some small part of the experiments. Table 4 demonstrates the minimum and maximum impacts of the factors shown as coefficients in linear regression models where all factors were significant for the particular physical layer transmission rate. We observe that even when CWmin and CW N D factors are significant, their impact is considerably smaller compared to the impact from Nhops and M SS factors. Therefore, for the TCP throughput modeling we decided to continue only with Nhops and M SS, the factors with the most evident significance in this particular scenario. We, however, highlight that CWmin and CW N D should not be disregarded from further modeling of more complex scenarios as their impact could became more significant in other settings [4]. We, however, leave the development of this issue for our future work. 4.1
Iterative Empirical Modeling of TCP Throughput
In this section we present the results of an iterative throughput modeling based on three selected parameters: number of wireless hops (Nhops ), TCP maximum segment size (M SS) and physical layer transmission rate (RP HY ). Two dimensional throughput model: Fitting Nhops and RP HY parameters. The plots of the measured TCP throughput Rmeasured in Figure 2 suggest
330
A. Chaltseva and E. Osipov
Table 5. Maximum and minimum impacts of considered factors in regression models where all factors were significant (20% of all regressions) Nhops max
Factors RP HY Mb/s
min
1 2 5.5 11
-1093 -2059 -4694 -7448
min
-52.01 -83.08 -134.96 -161.33
M SS max
998 1897 8209 11027
12700 29070 87120 17746
min
CW N D max
-37.62 -67.56 -133.14 -180.20
-3.70 -3.58 -8.70 -6.58
min
CWmin max
-3.69 -3.58 -8.70 -6.58
265.12 492.03 630.27 221.93
Fig. 2. TCP throughput measured in simulations for RP HY =5.5 and 11Mb/s and selected values of M SS versus number of hops 1 choosing a reciprocal function of number of hops in form a·Nhops +b as the target function for TCP throughput. We performed |RPHY | × |MSS| nonlinear regressions where |RPHY | and |MSS| are cardinality of vectors of physical layer transmission rates and MSS sizes used in the experiments correspondingly. In this way we estimated matrices of coefficients A and B for each permutation of the rate and the MSS values. The non-linear regression was transformed to the 1 values to first order polynomial a · Nhops + b using linear one by fitting Rmeasured the method of least squares. After that in all models with the determined coefficients we extracted the values equal to the corresponding physical layer data rate and obtained elements of the matrices of coefficients A and B as RP1HY · ai,j and RP1HY · bi,j correspondingly. By this we obtained the two-dimensional model for TCP throughput (3).
ˆ P HY , Nhops ) = R(R
1 RP HY
1 1 . = RP HY · A · Nhops − B · (A · Nhops − B)
(3)
The coefficient of multiple determination was used as a measure of the prediction accuracy of the model. The estimated values for the coefficients ai,j and bi,j for the different physical layer transmission rates (index i) and the selected MSS sizes (index j) as well as the calculated R2 values for (3) are reflected in Table 6. The calculated R2 values shows that the predictive ability of the model is better then 96%.
Empirical Predictor of TCP Throughput on a Multihop Wireless Path
331
Table 6. Values of coefficients a1 and b1 in two-dimensional model with corresponding R2 values M SS, B 100
A B R2 500 900 1100 1300 1460 100 500 900 1100 1300 1460
1 Mb/s 2 Mb/s 5.5 Mb/s 11 Mb/s
1.84 2.04 2.82 4.03
3.23 3.99 6.78 11.03
1.59 1.72 2.17 2.86
1.55 1.64 2.00 2.58
1.49 1.58 1.88 2.38
1.4 1.54 1.83 2.25
1.06 1.04 1.36 1.28
0.50 0.45 0.52 0.45
0.37 0.35 0.39 0.28
0.36 0.33 0.32 0.28
0.31 0.31 0.27 0.24
0.34 0.29 0.30 0.19
0.96 0.97 0.98 0.99
Fig. 3. Coefficient a1 and b1 versus M SS for different physical layer data rates
Three dimensional throughput model: Fitting the M SS parameter. In the next iteration of fitting we extended model (3) as follows. The matrices of coefficients A and B are functions of M SS for different physical layer 1 ˆ P HY , Nhops , M SS) = RP HY · transmission rates: R(R . f1 (MSS)·Nhops +f2 (MSS)
Based on the shape of plots of the estimated A and B values as a function of MSS shown for a given transmission rate in Figure 3 we again selected 1 a reciprocal function as a candidate for fitting: f1 (M SS) = − → − → and a1·MSS+a2 → − → − − → − → 1 f2 (M SS) = → − → − . Here a1, a2, b1, b2 are vectors of coefficients (for transb1·MSS+b2 mission rates 1, 2, 5.5, 11 Mb/s) to be estimated by linear regression on the 1 1 set of previous coefficients { ai,j } and { bi,j }. The result of the regression with 2 R ≥ 0.97 accuracy are vectors: − → a1 = {0.30; 0.33; 0.35; 0.31} · 10−4 ; → − b1 = {0.19; 0.21; 0.25; 0.38} · (10)−3 ;
− → a2 = {0.38; 0.31; 0.18; 0.10}, → − b2 = {0.11; 0.11; 0.09; 0.06} · (10).
Now, since f1 and f2 belong to the same class of functions we may express 1 them as a product of another function f3 (M SS) = MSS+α of their class and multipliers β and γ, which transforms the common function f3 to f1 and f2 as
332
A. Chaltseva and E. Osipov
Fig. 4. Functions f1 , f2 and f3 of M SS on the example of f1 and f2 model forRP HY = 11M b/s
f1 (M SS) = f3 (M SS)·β and f2 (M SS) = f3 (M SS)·γ correspondingly (this step is illustrated in Figure 4). By doing this the target model for TCP throughput takes form (4). Note that multipliers α, β and γ are specific to the particular transmission rate and therefore in (4) the vector notation is used. 1 = − → → f3 · ( β · Nhops − − γ) → M SS + − α = RP HY · − . → → β ·N −− γ
ˆ P HY , Nhops , M SS) = RP HY · R(R
(4)
hops
→ − − → We estimate the value of coefficient vectors → α , β and − γ for each considered physical layer transmission rate by performing a system of nonlinear regressions for target model (4). Due to space limitations and because we used standard methods of performing a system of regressions, we do not present the details of the regression analysis here. The values of α, β and γ obtained as the result of the regression analysis are reflected in Table 7 along with R2 values for the accuracy of each estimated model. Table 7. α, β, and γ coefficients values RP HY (Mb/s) α
β
γ
R2
1 2 5.5 11
27394 25777 25997 30284
1851 1433 984 855
0.98 0.98 0.99 0.99
9834 7541 4458 2966
The calculated R2 values shows that the predictive ability of the model is better then 98%. Figure 5 demonstrates how well the estimated model fit the measured values of throughput in the case when RP HY = 11 Mb/s for selected values of MSS.
Empirical Predictor of TCP Throughput on a Multihop Wireless Path
333
Fig. 5. TCP throughput measured in simulations and predicted by the final model for RP HY =11Mb/s and different values of M SS versus number of hops
5
Conclusions
In this paper we considered a problem of empirical modeling of TCP throughput in wireless networks. The main difference of our approach from those previously reported in the literature is that our model uses adjustable parameters on different communication layers and parameters of the communication context directly measurable before the actual start of the data transfer. Since modeling of cross-layer dependencies is a complex task in this paper we presented a so far three-dimensional variant of the general model. Our model uses transmission rate at the physical layer, number of wireless hops and the maximum size of TCP segment as the input parameters and predicts TCP throughput with 98 - 99% accuracy. Already in this form the model can be used for a practical cross-layer optimization of the TCP throughput. We continue the development of the presented material by identifying new significant adjustable parameters and parameters of the communication context and considering more complex scenarios.
References 1. He, Q., Dovrolis, C., Ammar, M.: Prediction of tcp throughput: formula-based and history-based methods. SIGMETRICS Perform. Eval. Rev. 33(1), 388–389 (2005) 2. Katsuhiro, N., Okada, H., Yamazato, T., Katayama, M., Ogawa, A.: New analytical model for the tcp throughput in wireless environment. In: Vehicular Technology Conference, VTC 2001 Spring. IEEE VTS 53rd, vol. 3, pp. 2128–2132 (2001)
334
A. Chaltseva and E. Osipov
3. Kawadia, V., Kumar, P.R.: A cautionary perspective on cross-layer design. IEEE Wireless Communications (see also IEEE Personal Communications) 12(1), 3–11 (2005), http://dx.doi.org/10.1109/MWC.2005.1404568 4. Kawadia, V., Kumar, P.R.: Experimental investigations into tcp performance over wireless multihop networks. In: E-WIND ’05: Proceedings of the 2005 ACM SIGCOMM Workshop on Experimental Approaches to Wireless Network Design and Analysis, pp. 29–34. ACM, New York (2005) 5. Kim, S.P., Mitchell, K.: An analytic model of tcp performance over multi-hop wireless links with correlated channel fading. Perform. Eval. 64(6), 573–590 (2007) 6. Leith, D., Clifford, P.: Modelling TCP dynamics in wireless networks. In: Wireless Networks, Communications and Mobile Computing, 2005 International Conference, June 2005, vol. 2, pp. 906–911 (2005) 7. McCanne, S., Floyd, S.: ns Network Simulator, http://www.isi.edu/nsnam/ns/ 8. Moltchanov, D., Dunaytsev, R.: Modeling TCP performance over wireless channels with a semi-reliable data link layer. In: 11th IEEE Singapore International Conference on Communication Systems, November 2008, pp. 912–918 (2008) 9. Montgomery, D.C.: Design and Analysis of Experiments. Wiley, Chichester (August 2005) 10. Ng, A.C.H., Malone, D., Leith, D.J.: Experimental evaluation of tcp performance and fairness in an 802.11e test-bed. In: E-WIND ’05: Proceedings of the 2005 ACM SIGCOMM Workshop on Experimental Approaches to Wireless Network Design and Analysis, pp. 17–22. ACM, New York (2005) 11. Osipov, E., Tschudin, C.: TCP-friendly bandwidth sharing in mobile ad hoc networks: From theory to reality. EURASIP Journal on Wireless Communications and Networking (2007) 12. Padhye, J., Firoiu, V., Towsley, D., Kurose, J.: Modeling TCP throughput: A simple model and its empirical validation. IEEE/ACM Transactions on Networking 8(2), 133–145 (2000)
A Framework for Connectivity in Inter-working Multi-hop Wireless Networks Oladayo Salami, Antoine Bagula, and H. Anthony Chan Communication Research Group, Electrical Engineering Department, University of Cape Town, Rondebosch, Cape Town, South Africa [email protected], [email protected], [email protected]
Abstract. Establishing connectivity between node pairs in inter-working multihop wireless networks is a challenge. Although connectivity in multi-hop wireless networks has been studied yet these analyses focused mainly on ad-hoc networks. Since the next generation of wireless networks will be inter-working, an understanding of connectivity as it applies to such networks is needed. Specifically, this research emphasizes that the connectivity between any node pair in an inter-working multi-hop wireless network should be estimated with the availability of links and the level of interference on the available links that form the communication route between the nodes. Interference is a major factor that inhibits connectivity as it can cause wasteful transmissions over low quality links. Therefore this paper presents a framework for connectivity in interworking multi-hop wireless networks. In addition a connectivity aware routing technique is proposed. Simulation results of the performance of the proposed routing technique in comparison with other routing scheme are presented. Keywords: Connectivity, Interference, Inter-working, Multi-hop Wireless networks.
1 Introduction The emergence of different types of services (IPTV, video on demand etc), an increase in demand for these services and most especially the desire for a “more” convenient way to access these services are causing new networking standards to emerge. Networks (fixed/ mobile networks, single hop/ multi-hop networks, infrastructurebased/ infrastructure-less networks) are emerging with more sophisticated standards than their predecessor in order to satisfy the demand cravings. These networks are emerging in a networking world with limited radio resources. Therefore, the issue of how to optimize resources in order to satisfy demands will continue to arise. Inter-working multi-hop wireless networks are evolving out of the demand for ubiquitous connectivity. Inter-working is a term which refers to the seamless integration of several networks. Apart from the benefit of spatial re-use with route diversity, interworking multi-hop wireless networks enables an increase in service area coverage and thus ubiquitous Internet connectivity [1]. Different multi-hop wireless networks can be inter-worked to conveniently enable the ubiquity of network ser-
S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 335–352, 2010. © Springer-Verlag Berlin Heidelberg 2010
336
O. Salami, A. Bagula, and H.A. Chan
vices. A resource optimization issue that arises in this case is how to route traffic through optimal paths for end-to-end sustained connectivity. This issue is complicated with the wireless medium being prone to impairment at anytime. Consider an interworking multi-hop wireless network consisting of three heterogeneous multi-hop wireless networks which are integrated through an inter-domain co-ordination. Nodes have the opportunity to remain connected and have access to their on-going service even if they move out of their parent network’s coverage area. At times, a node within the network may not have direct link to its intended destination node, so its transmission will have to be relayed through other nodes in the network. However, due to link’s instability it is difficult to guarantee that all the links on a route will be connected throughout the transmission duration. Though there is an advantage of route diversity in multi-hop wireless networks, yet it is pertinent to identify optimal routes so as to prevent wasteful transmissions over low quality links. Traffic engineering (TE) is an aspect in networking that deals with the optimization of resources. It involves how the traffic within the network are distributed (by network layer routing), and how resources (e.g. time and frequency) are allocated (through MAC layer scheduling). However all these cannot be effectively done without understanding the properties of the wireless link. A link is the physical layer resource that provides bandwidth and ensures connectivity. For inter-working multihop wireless networks, the capabilities and limitations that the physical layer imposes on the network performance should be taken into consideration [2]. The routing of traffic through optimal paths is dependent mainly on the connectivity provided by the links between the communication nodes. Connectivity is mutually dependent on the availability of the link and the interference on the link. However, a link must first be available before interference can be evaluated. Considering the stochastic nature of the wireless link, this paper revisits the problem of connectivity by presenting a framework where connectivity is taken as the probability that a wireless link is available and interference resilient enough to guarantee successful transmission over it. Thus the connectivity model presented in this paper is a function of link availability and link interference. In our framework, link availability is the probability that two nodes are within at most the maximum transmission range that is sufficient for a communication link to be established between them. Building upon the work done in [3], we now consider the potential for the radio attributes of a link to satisfy the minimum requirement for successful communication, which is expressed in terms of a link’s resilience to interference. When fine-tuned, resilience to interference is measured by the attributes of the physical layer which ensure proper functioning of the wireless links. The works most related to our framework include [2-10]. Until recently, a lot of research works on multi-hop wireless networks have focused on the higher layers (Network and MAC layers). These works have designed protocols with simplistic assumptions about the physical layer. Also, the developments on connectivity theory for wireless networks in research works such as [4-10], have focused on adhoc/sensor networks. Some of these research works assume that transmission is successful between two nodes once they are within each other’s range. In contrast to our framework, their models do not include metrics that actually determine the success of a transmission based on the network’s resources and the capability of the network in terms of Signal to Interference and Noise Ratio (SINR) and probability of bit error.
A Framework for Connectivity in Inter-working Multi-hop Wireless Networks
337
For example, a link may exist between two nodes but the conditions surrounding the link may affect the throughput and delay of the traffic. Hence the quality of the transmission that a link can provide needs to be considered. Moreover, to the best of our knowledge, existing research works have not jointly considered availability and interference as a connectivity measure for traffic moving between networks in interworking multi-hop wireless networks. The main contributions of this paper are threefold. Firstly, as connectivity is vital to the ubiquity of network services given to the network users in an inter-working multi-hop wireless network, our connectivity framework ensures ubiquitous roaming features by allowing connectivity to be maintained in an optimized manner as traffic moves between networks. Particularly in a heterogeneous inter-working multi-hop wireless network, the challenge is that the inter-worked networks may be operating with different protocols. Therefore, it is desirable to have a unifying connectivity framework for inter-working multi-hop wireless networks. In order to come up with this framework, it is important to understand that: The physical layer imposes certain bounds on the network. These bounds are dictated by the metrics that ensure proper functioning of the physical layer. Secondly, this paper provides a study of the relationship between the metrics and presents protocol independent models of the relationships. For example, in any network, based on the scheme in use on the physical layer, there are different models for evaluating the relationship between the SINR and probability of bit error on a link. However, in this paper protocol independent models are presented. These models have been incorporated in the connectivity framework. Finally, a link quality based routing technique is proposed as an adaptive routing scheme. The proposed scheme is evaluated through simulation to assess the advantage of using our scheme compared to myopic schemes which discount connectivity on wireless links. The proposed scheme employs connectivity as a routing metric which provides information about link quality. The routing scheme selects the best routes based on the level of connectivity that can be assured on the link. The next section explains the network models used in this paper. Section 3 presents the link availability and link interference models while section 4 presents the connectivity framework, the connectivity aware routing technique and simulation results. Section 5 concludes the paper.
2 Network Models Since nodes’ locations are completely unknown a priori in wireless networks, they can be treated as completely random. The irregular location of nodes, which is influenced by factors like mobility or unplanned placement of the nodes may be considered as a realization of a spatial point pattern (or process) [11]. A spatial point pattern is a set of location, irregularly distributed within a designated region and presumed to have been generated by some form of stochastic mechanism. In most applications, the designation is essentially on planar Rd (e.g. d=2 for two-dimensional) Euclidean space [12]. The lack of independence between the points is called complete spatial randomness (CSR) [3]. According to the theory of CSR for a spatial point pattern, the number of points inside a planar region P follows a Poisson distribution [12]. It follows that the probability of p points being inside region P, (Pr (p in P)) depends on the area of
338
O. Salami, A. Bagula, and H.A. Chan
Fig. 1. Inter-working network model: Representation of the transmission from a T-node to a Rnode on link l, with interfering nodes (k-nodes), non-interfering nodes (N-nodes), and nodes beyond δr (B-nodes). r is the transmission range of the T-node.
the region (Ap) and not on the shape or location of the plane. Pr (p in P) is given by (1), where μ is the mean number (spatial density) of the points.
Pr( p in Ρ ) =
( μ AΡ ) p − μ Ap e , p > 0. p!
(1)
This is a reasonable model for networks with random node placement such as the inter-working multi-hop wireless networks. Moreover the most popular choice for modelling nodes’ spatial distribution is the Poisson point process as in [3] [13] [14] [15]. Fig. 1 represents network Ω, which is a set of inter-working multi-hop wireless networks (sub-networks A, B, and C). Each network is considered as a collection of random and independently positioned nodes. The nodes in the network are contained in a Euclidean space of 2-dimensions (R2). The total number of nodes in Ω is denoted by NΩ, while the number of nodes in sub-networks A, B, C are Na, Nb and Nc respectively, where Na+ Nb+ Nc = NΩ. The mean number of nodes (spatial density) of each sub-network is given by μA, μB, μC (μ=N/a, N is the number of nodes in a sub-network, a is the sub-network’s coverage area and μ is given in nodes /unit square). Theorem 1: The superposition of N independent Poisson processes with intensities λi is a Poisson process with intensity λ = ∑iλi Using theorem 1, the entire inter-working network can be considered as a merging Poisson process with spatial density: μNet = μA+μB+μC. In the network, nodes may communicate in a multi-hop manner and transmit at a data rate of Ψ bps. In this paper, source-nodes are referred to as transmitter-nodes (T-nodes) while destination-nodes are referred to as receiver-nodes (R-nodes). l represents the links between nodes and βT,R represents the link distance (length of a communication link) between aT-node and an R-node.
A Framework for Connectivity in Inter-working Multi-hop Wireless Networks
339
The degree of a node is defined as the number of neighbor nodes within its transmission range. A node is a neighbor of another node if the distance between the two nodes is less than or equal to their transmission range. This means that both nodes have a bi-directional link to each other. If the distance between them is greater than their transmission range, then the nodes are not neighbors. The degree of a node Xi is denoted by D(Xi). A node is termed a “lone node” if D(.)=0. The desirable condition for connectivity in a multi-hop wireless network is for all nodes to have D(.) > 0. The probability that D(.) > 0 for any node pair is the same as the probability that a link is available for the node and it is given by equation 2. Ra is the transmission range of the node and f(x) is the density function of the distance between any two nodes in the network. Ra
Pr (D( . ) > 0 ) = Pr(link availabili ty) =
∫ f(x)dx .
(2)
o
From our work in [4], Pr(link availability) is as expressed as Plink in equation 3.
⎧⎪1 − e − μ net πRa for 0 < β T , R ≤ R a =⎨ . for β T ,R > Ra ⎪⎩0 2
Pl ink
(3)
3 Link Interference 3.1 Propagation Model The length of a communication link between a T-node and a R-node is represented by βT,R. To account for path-loss, the channel attenuation for link l is given by Al = (βT,R)α . It is typically given that the received power from a T-node at distance βT,R from the R-node decays exponentially (i.e. (βT,R)-α). The path loss exponent, α, is a constant that can take on values between 2 and 61. However, in this paper, α is taken as =2. Other link parameters are: 1) Plt: the transmitting power of the T-node on link l. 2) Po: the thermal noise power level at the R-node on link l. Po= FkToB where k is the Boltzman constant (1.38 × 10-23 J/oK/Hz). To is the ambient temperature, B is the transmission bandwidth and F is the noise figure [18]. 3) Plr: the power received by the R-node on link l. The free space propagation model is used to predict the received signal strength. For a packet transmitted by the T-node on link l and received by the R-node, the actual received power at the R-node can be expressed by the Friis equation given as:
P r = cP t Al = cP t (βT,R ) − α . l
l
l
2 ⎡ GtGr λ g ⎤ ⎢c = ⎥ ( 4π ) 2 L f ⎥⎦ ⎣⎢
1
The model in this paper can make use of any path-loss exponent value.
(4)
340
O. Salami, A. Bagula, and H.A. Chan
Gt and Gr are the transmitter and receiver gain respectively. λg is the wavelength, λg=g/fg, g is the speed of light and fg is the carrier frequency. Lf≥1 is the system loss factor. 3.2 Interference on a Link The SINR model in [19] has been adopted to evaluate a link’s SINR denoted by θ(l) in this paper. θ(l) is given by equation (5). A transmitted signal (packet) at a data rate Ψbps can only be correctly decoded by the R-node on link l if θ(l) is not less than a threshold value (θ(th)) throughout the duration of packet transmission [20] [21]. Pint is the total interference power experienced by the R-node at the end of link l. Pint is the sum of the thermal noise power (Po) and the inter-node interference power (Pini). For link l, Pini is the cumulative of the interfering power that the R-node experiences from nodes concurrently transmitting with the T-node. All k-nodes (for k= 1, 2, 3…..∞) are potential interfering nodes while S is the total number of simultaneously transmitting nodes that contributes to the effective interference power. Pt(k) is the transmitting power of a k-node and βk,R is the distance between a k-node and the R-node. As illustrated in fig. 1, for a particular link between a T-node and an R-node, an interference region (δr) is defined for the R-node on that link.
θ
(l)
Pr =
l
Pint
Pr =
l
Pini + Po
=
cP t (β T, R ) − 2 l
S
∑ cP
t(k)
k =1
(β
k, R
)
−2
(5)
+ Po
A potential k node will interfere with the reception of the R-node if the distance of the node to the R-node fulfills the constraint in equation (6).
r < | β k, R | ≤ r + δr .
(6)
Nodes within the region δr effectively contribute to the value of Pini irrespective of the network topology or multiple-access technique. Usually, whenever a link is established between a T-node and an R-node, the MAC technique will prohibit nearby nodes in the network from simultaneous transmission. The portion of the network occupied by these nearby nodes is directly related to the size of r around the R- node [22]. Theorem 2: If each random point of a Poisson process in Rd with density λ are of x different types and each point, independent of the others, is of type N with probability Pi for i = 1· ·N, such that, P1 + P2 + P3...+ Px =1, then the points are mutually independent Poisson processes with λi = Piλ and λ= λ1 + λ2 + λ3...+ λx [23]. Using the splitting property of the Poisson process in theorem 2, all the nodes in the inter-working network (with spatial density μNet) are sorted independently into 3 types ( k-nodes, N-nodes, and B-nodes). Note that all the nodes in the inter-working network have been classified into three types (k, N and B) according to the effect they have on the R-node of interest. These nodes are still the same set of nodes in the network. If the probability of a node being a k-node, N-node or a B-node is PI, PN, or PB respectively such that PI+PN+PB=1, then these 3 classification of nodes are mutually
A Framework for Connectivity in Inter-working Multi-hop Wireless Networks
341
independent Poisson processes with spatial densities: μI=PIμNet, μN=PNμNet, μB=PBμNet where μNet= μA+μB+μC. μI represents the spatial density of k-nodes, μN is the spatial density of the N-nodes and μB is the spatial density of nodes beyond δr. If βj,R represents the link distance between the R-node and an arbitrary node j in the network, then: Pr( j ∈ N − nodes ) = Pr( β
j ,R
≤ r ).
(7a)
Pr( j ∈ k − nodes ) = Pr( r < β
j,R
Pr( j ∈ B − nodes ) = Pr( β
> r + δ r ).
j,R
≤ r + δ r ).
(7b) (7c)
Note that if node j is a k-node, the βj, R becomes βk, R.. Due to the random geographic dispersion of nodes, Pini also has a stochastic nature. Since several nodes can simultaneously transmit in the δr region and they altogether influence the value of Pini, then θ(l) (the SINR on a link) can be estimated using the expected value of Pini.
⎡S ⎤ E[Pini ] = cP t(k) E ⎢∑ (β k,R )−2 ⎥. ⎣ k=1 ⎦
(8)
In order to solve equation (8), the distribution function of the distance between the Rnode and the k-nodes (βk,R), given by fβk,R(r), is of particular interest. 3.2.1 Distribution Function of βk, R and the Probability of Interference As illustrated in fig. 1, nodes that can potentially interfere with the R-node’s reception lie in the region outside the range r. However, nodes beyond the region (r+δr) cause negligible interference. The region within δr consists of the effective k-nodes. In order to find the probability that the distance between the R-node and all k-nodes fulfill the condition in (4), two events are defined: a) ξ1= {no k-node exists within distance r} and b) ξ2= {at least one k-node exists within δr}. Similar to the nearest neighbor analysis in [24], the probability that concurrently transmitting nodes fulfill the condition in (6) is given by:
(Pr[( ξ 1 ) ∩
( ξ 2 )] ) = (Pr( ξ 1 ) )(Pr( ξ 2 ) )
Pr( ξ 1 ) = e − μ I π r
2
(9) (10)
To evaluate Pr(ξ2), the interference cluster is laid as a strip with length 2πr and width δr as shown in fig. 2. 2πr
δr Fig. 2. An approximation of the ring created by the interference cluster
As δr approaches zero, the area of the annulus can be approximated by 2πrδr. It follows from Poisson distribution that the probability of at least one node in the annulus is:
Pr( ξ 2 ) = 1 − e − μ I 2 π rδr
(11)
342
O. Salami, A. Bagula, and H.A. Chan
From
the first and second term of the Taylor’s series 1 − e − μ I 2πrδr = μ I 2πr δr .Therefore, the probability of having at least a k-node within δr is:
(Pr(ξ1 ) )(Pr(ξ 2 ) ) = (2 μ I πrδr )(e − μ πr
2
I
)
(12)
Since all k-nodes have been considered to fulfill equation (7b), equation (12) can also be expressed as the probability of at least a nodes with link distance βk,R to the Rnode, this is given as:
(
Pr( r < β k , R ≤ r + δ r ) = (2 μ I π r δ r ) e − μ I π r ∴ f β k , R ( r ) = 2 μ I π re
− μ I πr
2
)=
2
f β K , , R ( r )δ r (13)
Page 179 of [25] provides the detailed proof to substantiate (13). Now that the distribution of βk,R has been evaluated, the expected value of the summation of the negative-second moment of (βk,R), can be solved. So from equation (8): S
E [ ∑ ( β k ,R ) − 2 ] = k =1
S
∑
k =1
E [( β k , R ) − 2 ] =
s
∑ϖ
(14)
k =1
ω is an approximate solution for the negative moment of βk, R which is a Poisson R.V. The Tiku’s solution [26] has been adopted to find ω.
ϖ ≈
(μ
I
- 1)( μ
I
1 - 2)........
...( μ
I
-τ )
.
(15)
For the τth negative moment of βk,R (τ represents the positive value of the power of βk,R)2. The distribution of the distance between the R-node and k-nodes is fβk,R(r) in
(13). μI =PIμNet where PI is the probability of interference. As long as the transmission range of the T-node on a link overlaps with the transmission range of an I-node, the receiver node on the link on which T-node transmits experiences interference. In practice, not all nodes within δr will transmit at the same time, with the T-node on link l, therefore PI is defined by two events: ξ3=at least a node exist within δr and ξ4 = the node is transmitting. For an interworking multi-hop wireless network with density μNet, Pr(ξ3) is the probability that > 0 nodes exist within δr of the R-node and it is given by: 1 − e − μ Net A I . AI is the area of δr for the R-node. Using μnet will allow the evaluation of μI.
⎧⎪1, if P t(k) > 0 Pr( ξ 4 ) = ⎨ ⎪⎩ 0, if P t(k) = 0 −μ
∀ P t(k) ≥ 0 .
∀P > 0 . Now, the expected Thus: PI = Pr( ξ 3 ) Pr( ξ 4 ) = 1 − e Net I value of Pini in equation (8) can be solved and the θ(l) on a link can be evaluated. 2
A
t(k)
τ can take on any value depending on the path-loss exponent value.
A Framework for Connectivity in Inter-working Multi-hop Wireless Networks
343
3.3 Probability of Bit Error This section explains the relationship between the probability of bit error on a link l denoted by (Φ(l) ) and the link’s SINR, denoted by (θ(l)). The value of Φ(l) on a link is dependent on the value of θ(l). The decoding performed at the R-node on a link is a probabilistic process which determines the success or failure of any transmission. Due to potential interference, communication may not be totally error-free; hence success is specified in terms of an acceptable value for Φ(l) . Φ(l) expresses the success or failure of a transmitted signal (packet) in terms of probability. For the correct decoding of a transmission, the value of θ(l) must be greater than or equal to a SINR threshold value (θth) as expressed in (16). The threshold value is a pre-set value that is used to ensure successful transmission in a network.
E (θ (l)
(l )
)≥θ
th
(16)
(l)
E(θ ) is the expected value of θ . According to [27], the mean signal strength over the separation distance between a T-node and an R-node is appropriate for estimating the transmission strength of the link. Measures of signal variability are only appropriate in system design issues such as antenna diversity and signal coding. Hence, the mean value of θ(l) will be used for the estimation of Φ(l). Since θth is the minimum SINR that is required for successful packet reception at the R-node, then a transmission error can be declared once there is a probability that E(θ(l)) is below θth. Therefore:
Φ (l ) = Pr(E (θ (l ) ) < θ th ) = 1 − Pr(E(θ (l ) ) ≥ θ th )
(17)
In evaluating E(θ(l)), the transmit power, received power and noise power level on link l are kept constant. This is because E(θ(l)) is mostly influenced by the value of Pini . As long as nodes operate in the same transmission frequency band, inter-node interference is bound to occur. However, the transmission from nodes simultaneously transmitting with the T-node will not interfere with the reception at the R-node if the distance between these nodes and the R-node exceeds the upper bound for βk,R given by:
r + δr =
SP t ( k )θ t Pl
th
( β T ,R )
(18)
In deriving (18) the thermal noise power has been considered negligible compared to interference power (Pini). Therefore, (6) now becomes:
r < β k ,R ≤
SP t ( k )θ th (β T ,R ) t Pl
(19)
However, not all of the nodes within δr will interfere since some of them will not even transmit when the T-node is transmitting. Now, what is the threshold of the number of interfering nodes that can be in this interference region, beyond which, a transmission error can be declared? Note that in order to maintain a target SINR threshold, there is a maximum number of interfering users that can be supported [28].
344
O. Salami, A. Bagula, and H.A. Chan
Let Sth represent the threshold of interfering nodes which has their distance to the Rnode (βk.R) fulfilling equation (19). For analytical tractability, let the interfering nodes’ power be constant. Since unsuccessful transmission is declared when E(θ(l)) < θth, then there is a probability of bit error at the receiver node if:
S > S th
(20)
S is the number of interfering nodes. In order words, E(θ(l)) becomes less that θth as S increases beyond Sth and there is a probability of bit error when E(θ(l)) < θth. Therefore,
Φ ( l ) ≈ Pr( S > S th ) = 1 − Pr( S ≤ S th )
(21)
Φ(l) can be estimated as:
Φ
(l )
( μ I AI ) k − μ I AI ≈ 1− ∑ e k! k =0 S th
(22)
μI is the density of interfering nodes in the interfering region of area AI. Equation (22) approximates the Φ(l) as a function of the number of interfering nodes. Thus irrespective of the network’s topology or the multiple access technique, only the effective density of interfering nodes is considered. Considering that noise power (Po) is very weak (negligible) relative to the interference power (Pini) then (23) can be used to evaluate the value of Sth.
⎡1 Sth = ⎢ ⎢ϖ
⎛ Pl t ( βT ,R ) −2 ⎞⎤ ⎜ ⎟ ⎜ P t ( k )θ ⎟⎥ th ⎝ ⎠⎥
(23)
There is a minimum (threshold) for Φ(l) that should to be maintained on a link for the link to be termed interference resilient enough to maintain a successful transmission [28]. The maximum number of interfering nodes (nodes in the δr region) that can be supported to maintain this threshold is Sth. Once the threshold is exceeded, unsuccessful transmission is likely to occur. The probability that a link is interference resilient is represented by Φ(l)’ and estimated as the compliment of equation (22). Thus if the probability of bit error is high, then the interference resilience on that link is low and vice-versa. The network scenario shown in fig. 1 is a case where the link considered is at the centre of the inter-working multi-hop wireless network. Three wireless multi-hop networks with 10 nodes, 15 nodes and 25 nodes respectively have been inter-worked and the network coverage area is 1000unit square. The separation distance between the T-node and the R-node is 10units. Nodes in the network transmit with the power level of 10mW. Gt and Gr, the transmitter and receiver gains respectively are assumed to be equal to 1. Lf=1, θth is given as 6dB. The interference region is 100unit square. For the inter-working network, if the Φ(l) increases beyond the threshold, it means that there is a high probability that the transmission on the link of interest will be unsuccessful. Fig. 3 shows the trend of Φ(l) for the scenario illustrated. The value of Sth=12. The interfering node density (μI) was increased by increasing the probability of interference (PI). In this network scenario, the value of Φ(l) increased continually as the density of interfering nodes increased beyond the threshold value for which link l
A Framework for Connectivity in Inter-working Multi-hop Wireless Networks
345
P r o ba bility o f bit er r o r Φ (l)
1.000E+00 1.000E-01
1.000E-02 1.000E-03 1.000E-04 1.000E-05
1.000E-06 1.000E-07
1.000E-08 1.000E-09 0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
2.2
2.4
In t eferin g n ode den sit y (μ I)
Fig. 3. Probability of Bit Error vs. Interfering node density
) ' (l)
1.000E-01
Interference (Φ
Link's resilience to
1.000E+00
1.000E-02 1.000E-03 1.000E-04 1.000E-05
2.4
2.2
2
1.8
1.6
1.4
1.2
1
0.8
0.6
0.4
0.2
1.000E-06
Interfering node density (μI)
Fig. 4. Link Reliability vs. number of interfering nodes
is termed interference resilient enough to maintain a successful transmission. The link is highly resilient for all values of S≤Sth and the threshold for Φ(l) =1.15727E-06 (when S=Sth). Consequently, unsuccessful transmission can be declared for values greater than this threshold value. This gives an inclination that successful transmission on the link of interest in the inter-working network cannot be guaranteed any longer when Φ(l) becomes greater than the acceptable threshold probability. With the pre-set θth for the network, the upper bound for the acceptable Φ(l) on a link can be determined. If the Φ(l) evaluated for a link in the network is higher than the acceptable value, then that link’s interference resilience level will not guarantee a successful transmission. In this way, unreliable links can be identified and optimized traffic routing decisions can be made in inter-working multi-hop wireless networks irrespective of the link/MAC layer technologies of the inter-working networks. Fig. 4 illustrates the interference resilience of the link considered in the inter-working multi-hop wireless network scenario as the density of interfering nodes increases.
346
O. Salami, A. Bagula, and H.A. Chan
4 Link Connectivity Framework The link connectivity framework presented in this section gives an indication of how successful the communication between any two nodes will be. The quality of a transmission is specified by metrics, which define the state of a link. These metrics include probability of interference, SINR, and probability of bit error. Evaluating the connectivity of links in inter-working multi-hop wireless networks is quite challenging because different wireless networks use different physical layer protocols to specify these metrics. However, in this section, we present a unifying connectivity framework for inter-working multi-hop wireless networks. In accordance with [29], the framework only considers the effective density of interfering nodes irrespective of the topology or the multiple access technique. Connectivity in inter-working multi-hop wireless networks is defined as the probability that a link is available and interference resilient enough to guarantee a successful transmission over it. The model for connectivity has been developed based on the link availability and link interference models presented in previous sections. Firstly, for any T-node (source node) in the network, the probability that a link is available for it to transmit its packet is given by equation (3). The link may be a direct link to the intended destination node or it may be a link to intermediate nodes between the Tnode and the intended destination node. It is only after confirming the availability (existence) of a link that the reliability metrics (e.g. probability of interference, interference power, SINR, and probability of bit error) on the link can be evaluated. Secondly, after the confirmation of the existence of a link, an interference region is defined for the R-node (intended destination or intermediate node) on the link of interest as stated in section 3.2. All nodes present within this region are potential interfering nodes. However, only the nodes that happen to be transmitting concurrently with the T-node will contribute to the interference power. The probability that a node in the inter-working network will contribute to the interference power is given in section 3.2.1. Thirdly, using the probability of interference, the density of interfering nodes can be evaluated and also the total interference power, which is used to evaluate E(θ(l)) on the link of interest. If the E(θ(l)) on the link is less that the threshold SINR value (θth) in the network, then there is a likelihood that transmission errors will occur on that link. The set value for θth in the network is also used to estimate the threshold of the number of interfering nodes (Sth) and the threshold value for Φ(l) that can be tolerated in order to able to guarantee a successful transmission. The compliment of equation (22) is used to evaluate the interference resilience of the link. Finally, the probability that a link is available and interference resilient, which is termed connectivity in this paper, is given by:
Pcon = e − μ I A I − e − (
μ Net π R 2 + μ I A I )
(24)
Fig. 5 shows the probability of connectivity on link l as μNet increases. In the first part of this figure, it can be observed that an increase in μNet increases the interfering node density (μI). However, the increase in μI does not yet affect connectivity on the link because S≤Sth. In this case, the Φ(l) is still less that the threshold value for the probability of bit error. In the second part of fig. 5, after Sth is exceeded, it can be observed that connectivity begins to decline. At low values of μNet link availability is low, but
A Framework for Connectivity in Inter-working Multi-hop Wireless Networks
347
any link that is available has high reliability due to low probability of interference, so connectivity is sustainable. At high values of μNet, even though availability is high, the link’s interference resilience and connectivity begins to decline as a result of a high density of interfering nodes. There is a certain number of nodes that the inter-working network can sustain in order to maintain a high connectivity that can guarantee successful transmission between nodes. Once the network exceeds this number of nodes the likelihood of strong connectivity decreases. This model can be used to ensure that QoS is guaranteed to traffic and also for admission control policies for inter-working multi-hop wireless networks.
Fig. 5. Connectivity vs Network node density
4.1 Connectivity Aware Routing Technique A dynamic reaction to the changes in the wireless channel is required for traffic routing within an inter-working multi-hop wireless network. The routing technique presented is based on the pre-calculation of the connectivity from a T-node to the Rnodes on the links en route to the final destination node. Step 1: The link availability is calculated in order to identify potential links for routing. Step 2: For each link that is available, the instantaneous parameters for the probability of interference at the R-node on the link, the SINR and the bit error probability are obtained. Step 3: The interference resilience level on each potential link is evaluated. Step 4: With the knowledge of the interference resilience level and availability, the connectivity on each link is obtained. Step 5: The link with the highest Pcon is chosen as the next link for routing the transmission. In a case of equal values of Pcon, the link closest to the final destination node is chosen.
348
O. Salami, A. Bagula, and H.A. Chan
With this technique, connectivity can be used as a routing metric for determining how traffic are routed within the network. The routing technique is well-suited for interworking multi-hop wireless networks where the wireless channel is unstable. The routing technique not only estimates the quality of wireless links in terms of a quantitative measure, such as the probability of interference, probability of bit error and SINR, but also adapt to temporal dynamics of the links and prevents wasteful transmissions over low quality links. For a network, the lower bound on connectivity can be obtained and QoS can be guaranteed based on this lower bound. 4.2 An Application of the Connectivity Framework to a 23-Node Test Network We conducted experiments with a 23-node 45-link model to simulate an interworking wireless MPLS network in order to evaluate the performance achieved by the connectivity-aware routing scheme when setting up connection-oriented tunnels in the network under different routing scenarios. These include the routing of tunnels for different applications. The paths carrying the traffic offered to the wireless MPLS network were computed using three different routing metrics: two myopic metrics referred to as OSPF (Open Shortest Path First) and CSPF (Constrained Shortest Path First) that discounts connectivity and our proposed connectivity aware metric referred to as Connectivity Aware Routing (CART). We developed a simulation model where each tunnel setup requests di,e bandwidth units, where the di,e are uniformly distributed in the range [1,M] in wireless MPLS routing. This allows different types of applications depending on the value of M. Higher values of M represent high bandwidth demanding applications while lower values represent low bandwidth demanding applications. The simulation model is based on the following features:
Long-lived tunnels of capacity di,e are set up in random order among the ingressegress pairs. Requests to set up short-lived tunnels of capacity di,e bandwidth units arrive to the ingress-egress pair (i, e) according to a Poisson process with parameter L i,e. Requests to tear down short-lived tunnels arrive to the ingress-egress pair (i, e) according to a Poisson process with parameter Li,e. One of the three routing algorithms (OSPF, CSPF or CART) is used to find a path between (i, e) to route the requested tunnel. If a path can be found, the routing request is accepted. If a path cannot be found due to insufficient band-width, the routing request is rejected.
We conducted a number of simulation experiments under different traffic profiles using short- and long-lived tunnel requests to evaluate the performance of the proposed framework. Different traffic profiles were chosen by inflating the tunnel setup request rate L+ i,e = ηLi,e to reflect light load conditions (η = 1) and heavier load conditions (η > 1). Different types of applications were modeled by varying the upper bound of the demand range M to represent different levels of bandwidth demand. The simulation model computes the following network performance metrics. The routing efficiency is given by the tunnel acceptance (ACC) and the average link utilization (UTIL). ACC is the percentage of flows which were successfully routed and UTIL defines how far the links are from the congestion region where the link load is close
A Framework for Connectivity in Inter-working Multi-hop Wireless Networks
349
to its link capacity. UTIL also defines the potential for the network to support traffic growth: a lower utilized network offers a higher potential to support an increase of traffic load than a highly utilized network. The network reliability is given by the average link interference (AVL) and the maximum link interference (MAX) where AVL is the average number of tunnels carried by each network link. AVL determines the average number of tunnels which must be re-routed upon failure. A routing algorithm which achieves a lower average interference is more reliable since it leads to rerouting fewer flows upon failure. MAX defines the maximum number of tunnels that will be re-routed upon a failure of the link with the largest interference. The scalability of the routing process is given by the average node interference (AVN) which is the average number of tunnels traversing each node. This parameter indicates the size of the routing tables. A routing algorithm that achieves a lower AVN is more scalable than an algorithm which achieves a higher AVN. Fig. 6 shows the effect of the traffic profiles on short-lived tunnels. The traffic profile is determined by the parameter η which scales the tunnel setup request rates. We conducted simulation experiments using short-lived tunnels (M = 4) to analyze the effect of the traffic profiles on the network efficiency. The results presented in fig. 6 reveal that the CART algorithm performs somewhat better than the other routing algorithms in terms of efficiency (highest ACC and lower UTIL), reliability (lower AVL and MAX) and scalability (lower AVN). In particular, CART achieves a lower MAX value. Fig. 7 shows the effect of the type of application on long-lived tunnels. The application type is determined by the value of the upper bound M on the tunnel size. We conducted simulation experiments using long-lived tunnels to analyze the effect of the type of application on the network efficiency. The results presented in fig. 7 are similar to the results for short-lived tunnels: the CART algorithm again performs better than the other routing algorithms in terms of efficiency (highest ACC and lower UTIL), reliability (lower AVL and MAX) and scalability (lower AVN).
Fig. 6. Effect of the traffic profiles on short-lived tunnels
350
O. Salami, A. Bagula, and H.A. Chan
Fig. 7. Effect of the type of application on long-lived tunnels
5 Conclusion Firstly, the paper presented an analysis of the relationship between the major physical layer metrics such as SINR and probability of bit error. Since different wireless networks have different models for evaluating the relationship between these metrics, and this will pose a challenge when analyzing such metrics for inter-working multihop wireless networks; we developed protocol independent models of these relationships. Secondly, these models were incorporated in the connectivity framework and results of the evaluation of the framework were presented. Connectivity is considered as the probability that a wireless link is available and interference resilient enough to guarantee successful transmission over it. Finally, the simulation performance of the proposed routing technique termed connectivity aware routing technique (CART) was compared with routing schemes such as the OSPF and the CSPF. In trems of efficiency and scalability CART performed better than OSPF and CSPF.
References 1. Li, W., Pan, Y.: Resource Allocation in Next Generation Wireless Networks. Wireless Networks and Mobile Computing series, vol. 5 (2005) ISBN: 1-59454-583-9 2. Tonguz, O.K., Ferrari, G.: Ad Hoc Wireless Networks: A Communication-Theoretic Perspective. John Wiley and Sons, Chichester (2006) ISBN: 9780470091104 3. Salami, O., Bagula, A., Chan, H.A.: Analysis of Route Availability in Inter-working Multihop Wireless Networks. In: Proc. of the 4th International Conference on Broadband Communications, Information Technology and Biomedical Applications (BroadCom 2009), Wroclaw, Poland, 15-19 (2009)
A Framework for Connectivity in Inter-working Multi-hop Wireless Networks
351
4. Farhadi, G., Beaulieu, N.C.: On the Connectivity and Average Delay of Mobile Ad Hoc Networks. In: Proc. of the IEEE International Conference on Communications (ICC), pp. 3868–3872 (2006) 5. Bettstetter, C.: On the minimum node degree and connectivity of a wireless multi-hop network. In: Proc. of the ACM MobiHoc, pp. 89–91 (2002) 6. Santi, P., Blough, D.M.: An evaluation of connectivity in mobile wireless ad hoc networks. In: Proc. of the IEEE DSN (June 2002) 7. Foh, C.H., Lee, B.S.: A closed form network connectivity formula for one-dimensional MANETs. In: Proc. of the IEEE ICC (June 2004) 8. Foh, C.H., Liu, G., Lee, B.S., Seet, B.C., Wong, K.J., Fu, C.P.: Network Connectivity of One Dimensional MANETs with Random Waypoint Movement. Proc. of the IEEE Communications Letters 9(1), 31–33 (2005) 9. Li, J., Andrew, L.L.H., Foh, C.H., Zukerman, M., Neuts, M.F.L.: Meeting connectivity requirements in a wireless multihop network. Proc. of the IEEE Communications Letters 10(1), 19–21 (2006) 10. Bettstetter, C., Hartmann, C.: Connectivity of wireless multihop net- works in a shadow fading environment. In: Proc. of the Wireless Networks, vol. 11, pp. 571–579. Springer, Heidelberg (2005) 11. Babaei, A.: Statistical Interference Modeling and Coexistence Strategies in Cognitive Wireless Networks. PhD thesis, George Mason University (Spring semester 2009) 12. Diggle, P.J.: Statistical Analysis of Spatial Point Patterns, 2nd edn., p. 168. A Hodder Arnold Publication (2001) ISBN 0-340-74070-1 13. Salbaroli, E., Zanella, A.: Interference analysis in a Poisson field of nodes of finite area. IEEE Trans. on Vehicular Tech. 58(4), 1776–1783 (2009) 14. Busson, A., Chelius, G., Gorce, J.: Interference Modeling in CSMA Multi-Hop Wireless Networks. INRIA research report, No. 6624 (2009) ISSN: 0249-6399 15. Mordachev, V., Loyka, S.: On Node Density – Outage Probability Tradeoff in Wireless Networks. IEEE Journal on Selected Areas in Communications (2009) 16. Cressie, N.A.C.: Statistics for Spatial Data. John Wiley and Sons, Chichester (1991) 17. Miller, L.E.: Distribution of link distances in a wireless network. Journal of Research of the National Institute of Standards and Technology 106(2), 401–412 (2001) 18. Rappaport, T.S.: Wireless Communications-Principles and Practice. Prentice-Hall, Englewood Cliffs (2002) 19. Gupta, P., Kumar, P.R.: The Capacity of Wireless Networks. IEEE Transactions on Information Theory 46(2), 388–404 (2000) 20. Blough, D., Das, S., Santi, P.: Modeling and Mitigating Interference in Multi-Hop Wireless Networks. Tutorial Presented at Mobicom 2008, San Francisco (September 14, 2008) 21. Avin, C., Emek, Y., Kantor, E., Lotker, Z., Peleg, D., Roditty, L.: SINR Diagrams: Towards Algorithmically Usable SINR Models of Wireless Networks. In: Proc. of the 28th ACM Symposium on Principles of Distributed Computing, pp. 200–209 (2009) 22. Hekmat, R., An, X.: Relation between Interference and Neighbor Attachment Policies in Ad-hoc and Sensor Networks. International Journal of Hybrid Information Technology 1(2) (2008) 23. Hohn, N., Veitch, D., Ye, T.: Splitting and merging of packet traffic: measurement and modeling. Performance Evaluation 62(1-4), 164–177 (2005) 24. Cherni, S.: Nearest neighbor method, http://www.mcs.sdsmt.edu/rwjohnso/html/sofiya.pdf 25. Cogdell, J.R.: Modelling Random Systems. Pearson Prentice hall (2004)
352
O. Salami, A. Bagula, and H.A. Chan
26. Tiku, M.L.: A note on the negative moments of a truncated Poisson variate. Journal of American Statistical Association 59(308), 1220–1224 (1964) 27. Jean-Paul, M.G.: Linmartz’s Wireless Communication, vol. 1(1). Baltzer Science Publishers (1996) 28. Chu, P., Messier, G., Magierowski, S.: Smart Antennae Beam forming for Passive Node Sensor Networks 29. Win, M., Pinto, P., Shepp, L.: A Mathematical Theory of Network Interference and Its Applications. IEEE Transaction 97(2) (2009)
Practical Vertical Handover Mechanisms between Satellite and Terrestrial Networks MinSu Shin1, ManKyu Park1, DeockGil Oh1, ByungChul Kim2, and JaeYong Lee2 1
Satellite Broadcasting & Telecommunications Convergence Research Team, ETRI 138 Gajeongno, Yuseong-gu, Daejeon, 305-700, Korea {msshin,neomkpark,dgoh}@etri.re.kr 2 Department of Information Communications Engineering, Chungnam National University 79 Daehangno, Yuseong-gu, Daejeon, 305-764, Korea {byckim,jyl}@cnu.ac.kr
Abstract. In this paper, we propose practical vertical handover mechanisms for interworking between satellite and terrestrial network, which include new handover procedures and TCP congestion control. To support seamless handover, it should be considered L2~L4 layer operation all together. The proposed mechanisms include a vertical handover procedure using IEEE 802.21 and a TCP performance enhancing mechanism by adopting efficient congestion control scheme. IEEE 802.21 standard provides unified event messages from link layer to upper layer for helping seamless handover regardless whatever the physical layer interfaces are. The proposed TCP congestion control uses TCP Explicit Handover Notification which informs TCP sender directly of new available link bandwidth. We used ns-2 network simulator to evaluate our proposed mechanisms. Simulation results show that our mechanism can support a seamless handover and provide a better Internet service for fast train when there are different types of access networks such as a satellite and terrestrial network. Keywords: Vertical handover, Mobile IP, IEEE802.21, TCP Congestion Control, and Satellite Network.
1 Introduction Terrestrial mobile communication technologies have some limitations for high-speed service in terms of service coverage and the developing cost for the network infrastructure. In this context, satellite networks have been emerging as a viable option for supporting Internet connectivity. Its potential ubiquitous coverage, flexibility in bandwidth configuration, relative robustness against accidental or malicious damage, and suitability for disaster recovery contribute to the proliferation of the satellite networks in the way of independent deployments or hybrid (satellite/terrestrial) network infrastructures [1]. Although a satellite network has these advantages, certain places cannot be reached by satellite signals due to a shadowing or blocking of a satellite link. Therefore, for a seamless network service, an incorporated operation between satellite and terrestrial wireless networks is required. An existing terrestrial network and an wireless LAN S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 353–364, 2010. © Springer-Verlag Berlin Heidelberg 2010
354
M. Shin et al.
can be complemented to support a seamless wireless communication service through the satellite networks. In this work, we focus on the mitigation of TCP performance degradation caused by congestion control algorithm which occurs at the point of vertical handover between two different networks. Main challenges to TCP performance in the satellite link networks are long propagation delay, high bit-error rate, and thus large bandwidth delay product. In the opposite, terrestrial networks are usually considered to have short propagation delay and low bandwidth delay product. And according to which direction a network is handed over, quite different problems are produced in terms of TCP throughput. In this paper, we propose the new fast mobile IP procedure incorporated with an IEEE802.21 Media Independent Handover signaling, and a TCP congestion control mechanism adopting a cross layer design. We evaluate the proposed scheme using an ns-2 simulator. Simulation results show that the proposed scheme can provide a seamless wireless service at a vertical handover between satellite and terrestrial networks with different data rates and bandwidth-delay products [9]. The remainder of the paper is organized as follows: we start with related work to understand the proposed system and mechanisms in chapter 2, and introduce a service scenario in IEEE 802.21-enabled networks in chapter 3. Our proposed mechanisms for seamless Internet service are described in chapter 4. Next, we present our simulation results in chapter 5, and conclude the paper in chapter 6.
2 Related Work In this section, we briefly overview mechanisms related with the paper, which are IEEE802.21 MIH [13] and TCP performance enhancing schemes to help grasp our proposed mechanisms and evaluation results. 2.1 IEEE 802.21 Media Independent Handover (MIH) Wireless nodes usually have multi-interfaces to access multiple networks at the same time, and therefore can support a vertical handover or a multi-homing service. For these functionalities, mobile nodes need to know additional information about the access networks. IEEE 802.21 MIH is a standard protocol to support handover in heterogeneous wireless networks. The ultimate goal of the standard is to provide the basic means to communicate between different layers for each layer’s status and other related network information. This feature, thus, can facilitate an optimization of handovers between heterogeneous access networks. However, there are no service primitives yet available in IEEE 802.21 MIH that the MIHF could be used to communicate with the lower layers of a satellite networks. Therefore, authors in [14], defined primitives for a satellite link as a part of MIH link components by extending current ETSI Broadband Satellite Multimedia (BSM) protocol, so that satellite network could be supported by IEEE802.21 MIH. The conceptual structure is shown in Fig. 1.
Practical Vertical Handover Mechanisms between Satellite and Terrestrial Networks
355
Authors in [14] proposed a satellite dependent adaption function for converting BSM defined events to MIH events for the satellite lower layer events to be recognized by MIH_LINK_SAP and to send information to upper layer through MIHF.
Fig. 1. MIH Reference Model for Satellite Network
2.2 TCP Performance Enhancing Mechanisms for Satellite Networks To solve inherent problems for satellite networks which have long propagation delay typically considered to be almost 250msec for one way link, and high probability of random losses, solutions that cope with these impairments usually rely upon either the adoption of enhanced versions of transport protocols, or the insertion of intermediate agents, like PEPs (Performance Enhancing Proxies) [2]. A PEP technique that can be implemented together with any protocol layer can be applied to specific links that exist on transmission paths or sub-networks to improve the performance. Using a new type of TCP between PEPs could improve the end-toend TCP performance. A PEP technique has been designed with two main strategies, TCP spoofing and TCP splits. In both cases, the goal is to shield high-latency or lossy satellite link from the rest of the network in a transparent way to the applications. With the exception of an improved performance, the goal is for end users to be unaware of an intermediate gateway [1]. In TCP spoofing, a router (gateway) near the source sends back ACKs for TCP segments to give the source the illusion of a short delay path, and therefore to speed up the sender’s data transmission. It then suppresses the true acknowledgement stream from the satellite host and takes responsibility for sending any missing data [2]-[5]. TCP splits mechanism is particularly applicable to satellite networks even though it violates the end-to-end TCP semantics [1]. The main idea for this is to divide TCP connection into multiple TCP sub-connections. There are two kinds of TCP splitting. One is two-segment splitting that divides into two segments by one gateway, which is very similar to TCP spoofing. The other one is three-segment splitting which divides entire link into three segments by two gateways. In both mechanisms, a standard TCP is used for communication between TCP sender/receiver and the corresponding gateway. The gateway converts the TCP into a protocol optimized for satellite links. The main advantage of these methods is that TCP enhancement is achieved without any modification to end users while other techniques require installing new TCP software in every host.
356
M. Shin et al.
3 MIH-Compliant Service Scenario In this paper, we consider seamless wireless Internet service for passengers in train when high-speed train handovers between satellite and terrestrial networks. Fig. 2 depicts our system architecture for the service scenario, in which a mobile router (MR) has a DVB-S2/RCS [8][16] network interfaces and a terrestrial network interface together. In this service scenario, passengers in fast train can access to Internet service which has the same quality to users who have a fixed terrestrial network access even while train moves very fast. We consider mobile IP (MIP) [6] for mobility management and IEEE 802.21 MIH for finding out link layer information which will be used for seamless handover. Packets for Internet service from a corresponding node (CN) are reached at a satellite gateway or access router for terrestrial network through a home agent (HA), and finally packets are delivered to a multi-interfaced mobile router on a moving train.
객차 내 WiFi
Multi-Interface Mobile Station
Fig. 2. Reference system architecture
In this service scenario, when a train enters a railway station in which we assume to have terrestrial access network, it should handover from a satellite network to a terrestrial wireless network to keep continuality for Internet service because satellite signal is likely to be blocked within the station. The connection will be handed over again to the satellite network when the train leaves the train station.
4 The Proposed Mechanisms In this section, we explain the revealed problems and proposed mechanisms for a vertical handover between satellite and terrestrial network.
Practical Vertical Handover Mechanisms between Satellite and Terrestrial Networks
357
4.1 Handover Procedures In this paper, we introduce a novel handover procedure with an IEEE 802.21 MIH and TCP Explicit Handover Notification for control target network congestion [15]. Our aim is to reduce the time for a handover signaling. We assume that MIH function was installed at each MR, Satellite GW and terrestrial access router to provide mobility management function. And also we consider that a mobile node can support a make-before-break (MBB) handover function with multi-interfaces. This can achieve a very short handover time because a mobile node can quickly deliver a BU message through a terrestrial network to an HA at the time of network status change.
Fig. 3. Satellite to Terrestrial network handover procedure
Our handover procedure is shown in Fig. 3. The handover will start when MR’s MIH sends the MIH_Info.Request via satellite network as a response to a terrestrial network link-specific event (e.g. "Link Trigger") or after performing router discovery near a train station. And MR receives a MIH_Info.Confirm message and knows what link is available to connect as target network with the message. That information can be provided by MIIS (Media Independent Information Server) which is in charge of management for global mobility and global network resource. MR then requests and gets more specific information for target network such as NCoA (New Care of Address) and New Link Capabilities such as network bandwidth and delay for handover. And finally MR can send the BU (Binding Update) message via a connected terrestrial network to Home Agent and Correspond Node. After sending BU message to HA and CN, MR informs TCP sender of the change of link layer status with two duplicate ACKs to modify TCP sender’s congestion control state [15].
358
M. Shin et al. Satellite Gateway
Mobile Router TCP
MIPv4
MIH
SATMAC
TERMAC
SATMAC
MIH MIHF
Terrestrial Access Router MIPv4
MIIS Server
NCC
TER- MIH MAC MIHF
MIPv4
HA, CN MIPv4
TCP
TCP traffic via Terrestrial Network Link Detected MIH_Info.Request Information Request MIH_Info.Confirm
MIH_Info.Indication MIH_Info.Response
Information Response Query List of Available Networks Response List of Available Networks
Query More Info on DVB-RCS gateways, ex) NCoA, New Link Capabilities Response More Info on DVB-RCS gateways ex) NCoA, New Link Capabilities Link Connect L3 LinkUp Handover Commit
Satellite Log-on signaling using CSC burst, Authentication Satellite Log-on & SYNC signaling OK
BindingUpdate
BindingUpdate
BindingUpdate BindingUpdate ACK
ACK with New Link Capabilities
ACK with New Link Capabilities ACK with New Link Capabilites TCP traffic via Satellite Network
Fig. 4. Terrestrial network to Satellite network handover procedure
On the other hand, a handover to a satellite network from a terrestrial network is shown in Fig. 4. When an MR on a train detects a satellite signal as it goes far from the station, the MR gets information for new target network using MIH_info.Request, Indication, Response, Confirm messages and a specific query process. In this case, MR takes the target network information (e.g., CoA for target satellite gateway IP and new link characteristics) via the terrestrial network. This is possible because this process is performed during handover period for which the MR still has terrestrial network access. Finally, the handover procedure is completed by sending a BU message including the target network information after satellite link is established. After finishing L3 IP handover, TCP process in MR can have the same steps as in the previous handover situation to send two duplicate ACKs. 4.2 TCP Congestion Control Mechanism Using Cross-Layer Design The mobility management protocols such as mobile IP is an important protocol that provides a network layer with the connection continuity during physical layer handover in wireless networks. Although a mobile IP can provide a continuous connection in network layer, the TCP protocol in transport layer suffers performance degradation due to such problems as packet loss, packet reordering and timeouts when network characteristics are significantly changed. As seen in Fig. 5, even though TCP can be actively responded to changes of network capability using its congestion control mechanisms, significant changes of bandwidth-delay product (BDP) [9] caused by vertical handover can still cause severe problems to networks because the TCP in transport layer do not recognize such a sudden change of the access network in lower layer.
Practical Vertical Handover Mechanisms between Satellite and Terrestrial Networks
359
Fig. 5. Network capacity variation according to handover
In this scenario, numerous loss packets and high network congestion at the transport layer are key factors in determining the TCP throughput, so we are interested in analyzing that what key factors affect TCP throughput for each handover types. First of all, there are two considerable problems for TCP performance degradation when mobile node handovers to a terrestrial network typically having low Bandwidth Delay Product (BDP) from a satellite network which represents a high BDP network. z
z
Packet overflow can be experienced at a low BDP network when a TCP does not recognize a handover event from the MAC or IP layer. This involves a mismatch between bulk packet transmission count according to the TCP congestion window and available bandwidth for the target network. A long propagation delay, which is normally about 500ms in a satellite link, will cause a TCP packet out-of-order problem. Packets sent via terrestrial link after handover can arrive faster at the receiver than packets sent to the satellite link, leading to the out-of-order problem.
The other hand, two major problems are related to TCP performance when a mobile node moves to a high BDP network with a long delay. z
z
A short Retransmission Time Out (RTO) that is suitable for a low BDP network can result in unnecessary packet retransmissions into a high BDP network, which is an absolutely needless process because RTO is expired in this case due to its inherent long propagation delay rather than packet loss or congestion. A satellite link is an essential high BDP network. However, when a TCP sender does not recognize handover to a high BDP network, the TCP insists on a small congestion window value appropriately adjusted for the terrestrial network. Therefore, the TCP will experience bandwidth under-utilization problem.
In this paper, we proposed to use TCP handover notification message in [15] to inform TCP sender of target network characteristics such as bandwidth and delay through the terrestrial network interface when mobile node gets target network information. When a MR gets to know the completion of handover, it immediately sends out two duplicate ACKs with new link characteristics including a TCP Bandwidth for new link. Two duplicate ACKs make the notification more robust in lossy network [15]. Setting the parameters according to the target network in advance can prevent unnecessary packet retransmission and decrease of the congestion window value. It can consequently mitigate the TCP performance degradation in handover.
360
M. Shin et al.
To fill up the fields for TCP handover notification message, we have to use a different method according to target network. In case of a terrestrial network, we can have a well known method among lots of bandwidth estimation methods such as [11], because terrestrial networks allow short RTT to deliver packets from mobile host. However there are no appropriate solutions to measure satellite link capacity due to inherent long propagation delay. To solve this problem for satellite network, we proposed an interworking with NCC (Network Control Center) to have satellite link features such as coarse available bandwidth for forward link and return link, and initial delay. It is typically viable because satellite network usually use a centralized mechanism to control network resource like a DAMA (Demand Assigned Multiple Access) method.
5 Evaluation We use a network simulator, ns-2[10], as the simulation tool. We evaluate the TCP performance with a TCP NewReno between PEPs at a handover. 5.1 Simulation Topology The simulation topology used for the performance evaluation is shown in Fig. 6. It consists of mobile IP elements such as CN, HA, MR, and 3-segment splitting TCP. In this topology, PEP resides in both gateways at each end of a bidirectional satellite link. A TCP connection traversing the link is split as follows: One connection is established between the TCP sender and the uplink gateway (UG), another one is between the two gateways, called a PEP connection, and the last one is between the downlink gateway (DG) and TCP receiver.
Fig. 6. Simulation topology
The propagation delay of the satellite link is set to 250ms, resulting in an RTT of 500ms between a UG and DG. The satellite link capacity is 10Mbps for the forward link, and the reverse link capacity is 2Mbps. All other links have a propagation delay of 10ms, and their capacity is set to 50Mbps for CN-HA connection and 100Mbps for MR-MN connection.
Practical Vertical Handover Mechanisms between Satellite and Terrestrial Networks
361
In the simulation scenario, TCP traffic sent from the CN normally travels the satellite link when a train moves very fast. But as it almost arrives at a station, the terrestrial network signal can be detected around the station. When an MR scans terrestrial network signaling, a mobile node will be handed over to the terrestrial network from a satellite network and receive TCP data packets via the terrestrial network in the station. Oppositely, a handover is again performed to the satellite network when the train leaves the station and then receives data through the satellite. 5.2 TCP Performance Evaluation at Handover to a Terrestrial Network Let us refer to the results of the comparison of TCP congestion windows between a conventional TCP and the proposed TCP using a cross-layer design scheme that can obtain the target network information from the MAC and IP layer shown in Fig. 7. The conventional TCP has multiple decreases in congestion window because there are lots of packet losses and out-of-order packet sequences. These problems lead the congestion window size to sharply drop, and the TCP then enters the slow-start phase again.
Fig. 7. Comparison of TCP cwnd during a handover to terrestrial network
However, because the proposed TCP sender first estimates the available bandwidth for the target network with ACKs sent from the TCP receiver, the proposed TCP can control network congestion. The TCP source then starts the slow-start phase directly to rapidly probe available bandwidth after setting a slow-start threshold value according to the estimated available bandwidth. In Fig. 7, the proposed scheme forces a congestion window to decrease drastically for suitability with the target network after an L2 trigger (180.1sec), but the conventional TCP still holds an overly large congestion window value (cwnd = 325), that will create an overflow problem and generate congestion in the network. 5.3 TCP Performance Evaluation at Handover to a Satellite Network A satellite network is a high bandwidth-delay product network. With a particularly long delay, the end-to-end TCP round trip time negatively affects the TCP performance as shown in Fig. 8.
362
M. Shin et al.
To solve this, we proposes that a retransmission timeout (RTO) value at the TCP sender is adjusted for an appropriate RTO and CWND value also to meet the satellite link characteristics using MIH function after a handover. Basically, a TCP source calculates the RTO each round trip time by using the EWMA [12] algorithm and updates its RTO time. Fig. 8 shows the variation of RTO values in detail. Terrestrial network has about 100 to 200msec for a RTO value and satellite link has about 700 to 800msec for that. Due to this disparity, at 25.14 second in Fig. 9, which is just after the handover to satellite network, the spurious RTO occurs and this leads to 77 packets of retransmissions with sequence numbers from 19730 to 19807. So, we add an extra time which is obtained from NCC, to the calculated RTO for a time extension. Subsequently the TCP sender can adjust a suitable RTO for a target satellite network as soon as a handover is complete.
Fig. 8. Conventional TCP CWND and RTO values at a handover to satellite network
Fig. 9. Comparison of TCP congestion window
Practical Vertical Handover Mechanisms between Satellite and Terrestrial Networks
363
Speaking to the under-utilization problem, since a satellite BDP is large enough, TCP should be adjusted to have about 500 MSS of congestion window which could be calculated with a satellite network characteristics. So we proposed that a new scheme to enhancing a TCP throughput. To evaluate our proposed scheme, we modified TCP New Reno to adapt a satellite network. We propose the “jump” scheme uses a fixed cwnd value for occupying a satellite link capacity immediately in Fig. 9. It is possible scheme because a satellite link is special network. So, each bandwidth for user is reserved according to a demanded service by network controller (NCC). Then we can get an appropriate value using interworking with NCC.
6 Conclusion In this paper, we proposed a new handover scheme using IEEE 802.21 MIH that provides handovers between heterogeneous networks and TCP optimization scheme for seamless Internet services to passengers in trains, in which mobile router having multiple interfaces on a train conducts vertical handovers between different bandwidthdelay product networks under a 3-split TCP connection PEP environment. We defined major challenges which should be considered in handovers between two different networks with large disparity of BDP and proposed efficient algorithms for them. In particular, we proposed TCP optimization scheme to have TCP rapidly probe available bandwidth while doing error recovery for the out-of-ordered packets, so that it copes with the problems arisen by the handover from satellite network to terrestrial network. For the opposite direction of handover from terrestrial network to satellite network, we proposed new RTO and cwnd update algorithm to solve the spurious timeout occurrence and bandwidth under-utilization problems. Finally, we evaluated the TCP performance using an ns-2 network simulator; simulation results show that our proposed schemes prevent TCP performance degradation, and that it can provide high-quality Internet service to passengers in speed trains. Acknowledgments. This work was supported by the IT R&D program of KCC [2009-S-039-02, Development of Satellite Return Link Access Core Technology for High Efficient Transmission].
References 1. Hassan, M., Jain, R.: High Performance TCP/IP Networking: Concepts, Issues and Solutions, pp. 206–238. Pearson Prentice Hall, USA (2004) 2. Border, J., Kojo, M., Griner, J.: Performance Enhancing Proxies Intended to Mitigate Link-Related Degradations. IETF RFC 3135 (2001) 3. Arara, V., Suphasindhu, N., Dillon, D.: Asymmetric Internet access over satelliteterrestrial networks. In: Proc. AIAA, 16th International Communications Satellite Systems and Exhibits, Part1, pp. 476–482 (1996) 4. Bakre, A., Badrinath, B.R.: I-TCP: Indirect TCP for mobile hosts. In: Proc. 15th International Conference on Distributed Computing Systems, pp. 136–143 (1995)
364
M. Shin et al.
5. Balakrishnan, H., Seshan, S., Amir, E., et al.: Improving TCP/IP performance over wireless networks. In: Proc. ACM Conference on Mobile Computing and Networking, pp. 2–11 (1995) 6. Perkins, C. (ed.): IP Mobility Support for IPv4. IETF RFC 3220 (2002) 7. Giambene, G., Kota, S.: Cross-layer protocol optimization for satellite communications network: A survey. Int’l J. of Satell. Commun. and Network 24, 323–341 (2006) 8. ETSI, Digital Video Broadcasting (DVB); Second generation framing structure, channel coding and modulation systems for Broadcasting, Interactive Services, News Gathering, News Gathering and other broadband satellite applications (DVB-S2), EN 302 307, V1.2.1 (2009) 9. Katabi, D., Handley, M., Rohrs, C.: Congestion Control for High Bandwidth-Delay Product Networks. ACM SIGCOMM (2002) 10. ns-2, http://www.isi.edu/nsnam/ns/ 11. Prasad, R.S., Murray, M., Dovrolis, C., Claffy, K.C.: Bandwidth Estimation: Metrics, Measurement Techniques, and Tools. IEEE Network, 27–35 (2003) 12. Kurose, J.F., Ross, K.W.: Computer networking: A top-down approach featuring the Internet, pp. 236–239. Pearson Education, Inc., London (2005) 13. IEEE 802.21 Media Independent Handover, http://www.ieee802.org/21/ 14. Qureshi, R., Dadej, A.: Adding Support for Satellite Interfaces to 802.21 Media Independent Handover. In: Proc. of ICON (2007) 15. Wu, X., Chan, M.C., Ananda, A.L.: TCP HandOff: A Practical TCP Enhancement for Heterogeneous Mobile Environments. In: Proc. of ICC (2007) 16. ETSI, Digital Video Broadcasting (DVB); Interaction channel for satellite distribution systems, EN 301 790, V1.5.1 (2009)
Geo-aware Handover of Mission Agents Using Opportunistic Communication in VANET Edison Pignaton de Freitas1,2, Tales Heimfarth3, Flávio Rech Wagner2, Armando Morado Ferreira4, Carlos Eduardo Pereira2, and Tony Larsson1 1
School of Information Science, Computer and Electrical Engineering, Halmstad University, Halmstad, Sweden 2 Institute of Informatics, Federal University of Rio Grande do Sul, Brazil 3 Computer Science Department, Federal University of Lavras, Lavras, Brazil 4 Defense Engineering Graduate Program, Military Institute of Engineering, Brazil {edison.pignaton,tony.larsson}@hh.se, [email protected], [email protected], [email protected], [email protected]
Abstract. This paper explores geographical location awareness to support software agent mobility in ad hoc networks. The idea is to evaluate the concept of opportunistic communication to perform agent migration and mobility among nodes (handover), in an infrastructureless vehicular ad-hoc network (VANET). The application of this idea can support a number of applications, and one of particular interest is a “virtual sensor network” composed of software agents that implement missions in the form of sensing services, which use the available resources provided by the physical nodes, i.e. physical sensor devices, computing platforms and communication devices. A case study is presented together with simulations results to assess the efficiency of the proposed approach. Keywords: Opportunistic Communication; Context Awareness; Software Agents; Ad Hoc Networks; MANETs; VANETs.
1 Introduction Increasing availability of mobile communication technologies enables exploration of opportunistic communication approaches as base for new types of systems. Scenarios in which data are transported from a source to a destination via mobile nodes that physically take the data from one place to another, without the need for an established network infrastructure, are explored in delay-tolerant applications [1]. However, such a paradigm demands a greater number of nodes that can contribute in relaying data, aiming to increase the probability of the data to be delivered. This also refers to the scale of the system in terms of coverage area, which can vary from a few square meters up to the limits of a big city. Mobile devices are generally resource constrained. This means that such nodes may not offer support to an unlimited number of services or users, neither overuse of their communication capabilities. Another issue is how to get context awareness including background information to support network communication decisions. S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 365–376, 2010. © Springer-Verlag Berlin Heidelberg 2010
366
E. Pignaton de Freitas et al.
A promising approach to handle such problems is the use of mobile software agents, which can provide a modular way to implement services encapsulated together with intelligent behaviors that allow the management of the communication concerns related to their movements among network nodes. In this context, the present work explores an approach where mobile software agents collect data about a phenomenon of interested by dissemination in an infrastructureless wireless network consisting of mobile nodes. These nodes can host the agents and, as physical resources, provide runtime environment and physical sensor devices needed to collect the desired data. The contribution is to offer an efficient way, in terms of network usage, to provide agent mobility. This proposal is called GAMAF, Geo-Aware Mission Agent Ferrying. The remaining text is structured as follows: Section 2 presents the motivations and an application scenario overview. Section 3 describes the proposed approach, called GAMAF, while Section 4 presents details about a case study. Section 5 is dedicated to the presentation of simulation results while Section 6 presents related works. Concluding, Section 7 summarizes the paper and provides directions for future works.
2 Motivation and Application Scenario A network of mobile nodes must count with limited resources [2], for example in relation to the available bandwidth (or energy in case of small battery supplied mobile nodes). Policies that drain these limited resources are for example message sending retries and sending of messages to nodes that are not suited to receive them, e.g. selecting the wrong peer nodes to forward messages in a multi-hop network. Another aspect to be considered is that small mobile nodes often have constrained computation resources [3] and may not be able to handle some demands. A solution is dynamic resource sharing and allocation according to the current demands, aiming at the best compromise among demands and available resources. The scenario presented in this work, including the above assumptions, is a wireless network of mobile nodes that move in a given area and according to a given movement pattern. The nodes are required to perform gathering of data in a certain region of this area (Total Area - TA), which is called Target Region (TR). The data collection is viewed as a mission implemented by software agents. The nodes provide basic support to the agents by offering computing resources and physical sensor devices. Each node is assumed to provide such basic support up to a given budget, constrained by its limited resources. The missions represented and implemented by software agents and their services must be sent to different TRs of TA, to respond to data and service needs from the users. This requires that the software agents move by themselves from some nodes to others, according to the nodes’ mobility, in order to reach the target destination, i.e. the corresponding TR to reply to a given data request. An illustrative scenario of the model, briefly presented above, is a fleet of taxis running in big cities, such as Moscow, Rio de Janeiro or Paris, providing the basic support, while different requests for sensor data from different parts of the city are submitted by users and handled by software agents that migrate among the taxis according to the taxis’ displacements across the city. Figure 1 illustrates one possible
Geo-aware Handover of Mission Agents Using Opportunistic Communication
367
Fig. 1. Illustration of an application scenario
application in which the software agents have as mission to collect data about pollutants in an area with high concentration of industries (TR). Looking closer at this specific taxi-fleet scenario, taxis may offer the computing and physical sensor devices to allow software agents to implement “virtual” or “abstract” sensors, based on data collection and data handling algorithms, including support for aggregation/fusion, for instance. Due to the above mentioned restrictions of the computational resources, the taxis may only host a given limited number of agents at a time. However, the taxis move independently and only to respond to the needs of their passengers and thus the routes that they follow may not coincide with the TR of a given data request. Thus an agent might have to decide to migrate to another taxi that has a more convenient destination, to allow it to fulfil its mission. However, migration implies the usage of wireless communication, which is a limited resource that has to be carefully used in mobile networks [2]. The problem in relation to this aspect is to find the appropriate node, in this case a taxi, to handover the mission agent to, in order to make it able to accomplish its mission, and at the same time avoid unnecessary communication. The unnecessary migration of agents may generate an inefficient usage of network bandwidth (and node energy). In this paper the taxi-fleet scenario will be modelled and analysed from different perspectives aiming at evaluating the efficiency of different strategies used to move the software agents across the infrastructureless network provided by the taxis.
3 Geo-aware Mission Agent Ferrying in VANET The approach presented in this paper to address the needs highlighted in the previous section explores three related kinds of available information: 1) the current location of the node that carries the mission agent; 2) the location that the current node is moving towards; and 3) the location to which the meeting node is moving. This information is used to control the movements of the agent from one node to another in order to take it to the area where it is needed to accomplish its mission. In the context of opportunistic communications, this approach can be classified as a partially context-aware protocol, according to [4], as it is customized to a specific type of context information, i.e. geographical location. This mentioned information awareness is very likely to be available in different kinds of mobile nodes. For instance, in the case of the taxi fleet, it is probable that the taxis, as many other vehicles, are equipped with a GPS receiver, which can provide the current location. In addition reservation and dispatch equipment can inform about
368
E. Pignaton de Freitas et al.
the destination of the taxi. One can also imagine other mobile applications, such as cellular phones equipped with GPS that, from their owner’s time schedules can tell when the person is going to a meeting or to visit a customer and associated locations and hence the next destination that the device is moving towards. Based on this, the current proposal considers the following assumptions: -
The mobile nodes can provide information about their current position; The mobile nodes can provide information about their next destination.
Considering the need for communication among the nodes in order to transfer the agents, the following additional assumptions also hold: -
The mobile nodes are equipped with wireless communication devices; As wireless connections may suffer from several problems [6] and since the connection time between mobile nodes may be very short, an agent handing over to another node has to be acknowledged.
Summarizing these assumptions, the awareness about the geographical positioning and direction, plus the movement of the agents across the mobile nodes in order to reach a given destination defined by mission directives, the Geo-Aware Mission Agent Ferrying (GAMAF) concept is built. It is a decision making process aimed at the migration of an agent, i.e. its handover to another node, based on geographical information, i.e. current position plus destination established in the agent’s missions and the nodes’ destinations. As the agent is physically moved from one node to another, and thus carried to the desired location exploring the store-carry-and-forward paradigm [1], the concept of data ferrying [7] is also inherited. The basic GAMAF algorithm, presented in Program Listing 1, implements the handover decision intelligence of the agent, needed to accomplish its mission, i.e. a sensing service in a requested TR. In this basic version, the agent just analyses if the current location of its hosting node is not inside the TR and if the node that is currently hosting the agent is neither in the direction towards the TR (line 02 of Listing 1). This analysis is done by means of the two functions Inside and Compare. The first takes as parameters a node location and the TR and returns true if the location is inside the TR and false otherwise. The second takes as parameters a node destination and its own TR, and returns true if its destination coincides with the TR and false otherwise. Then, if these two conditions hold, it waits until it meets another node (line 03 of Listing 1). When it occurs and if the destination of the meeting node matches with the direction towards the TR, a copy of the agent is moved to the meeting node and it waits for an acknowledge or a time-out (lines 06-10 of Listing 1). If the acknowledgment is received, the local copy of the agent is released, i.e. deleted (line 13 of Listing 1). Otherwise the agent keeps trying to find another node to move to. The level of intelligence of the agent can be increased by changing the analysis done in the comparison of the destination of the meeting node in relation to the direction of the TR, i.e. changing the Compare function. Different levels of intelligence related to the levels of context-awareness are presented in [4]. Program Listing 1: Basic version of the GAMAF algorithm 01 While (Agent_Local_Copy)
Geo-aware Handover of Mission Agents Using Opportunistic Communication
369
02 If not Inside(Current_Node.Location, TR) && not Compare(Current_Node.Destination, TR) then 03 While not (Meeting_Node) 04 Wait_Meeting; 05 End_while 06 If Compare(Meeting_Node.Destination, TR) then 07 Copy_to(Meeting_Node) 08 Set(Ack_TimeOut) 09 While not (Acknowledgment or Ack_TimeOut) 10 Wait_Ack; 11 End_while 12 If Acknowledgment then 13 Agent_Local_Copy Å NULL; 14 End_if 15 End_if 16 End_if 17 End_while
Two versions of the Compare function have been evaluated: 1) “one-step” comparison; or 2) “multi-step” comparison. In the first one the destinations are compared in terms of the smallest granularity of the nodes’ displacements, i.e. one movement step. The second version is more complex. It considers all the possible points in the route from the meeting point to the mobile node’s final destination, if these points are in the direction or even inside of the TR. Figures 2a and 2b present an example observed by the different perspectives of each type of comparison. According to the evaluation criteria, stated in line 02 of Program Listing 1, the agent in Figures 2a and 2b tries to move from the current hosting node towards the meeting node, which does not have a copy of the agent. In part (a) of the figure the destination of the approaching vehicle (without agent) is considered one-step ahead of the meeting point. This analysis tells that the node is headed towards the TR direction. In part (b), all points of the route from the meeting place to the destination are considered. Note that the final destination is not inside the TR and the next step from the meeting place (P1) is neither in the direction of TR. However, points P2, P3 and P4 are inside TR, and points P3’ and P4’ are considered in the direction of TR considering the node moving from P2’, so the node is considered in the direction of TR.
4 Case Study: Taxi-Fleet In this paper, the scenario of the taxi-fleet is explored in order to analyse the performance of the GAMAF algorithm by means of simulations where taxis will move across a city in order to serve passengers by taking them to desired locations. The taxis are equipped with: 1) a GPS receiver in order to assist the driver to find specific locations in the city; 2) a wireless communication device for data exchange with other taxis (part of the same fleet or company); and 3) an embedded computer connected to the two devices. Figure 2c gives an overview of the simulation scenario, which is a squared-shaped map of a city with nodes distributed along the streets and with the TR indicated. The mobile nodes (represented by circles) are taxis with and without agents.
370
E. Pignaton de Freitas et al.
Fig. 2. Destination comparison criteria: (a) one-step; and (b) multi-step. (c) Simulation Scenario Overview.
The nodes’ movement patterns are: 1) Random; or 2) Destination Driven. In the first case the nodes randomly select a direction, i.e. North, South, East or West, when arriving to a road intersection. In the second one the node moves towards a destination defined in a map. After arriving at a destination, another one is chosen and the movement continues. These two types of movements describe: 1) a situation in which a taxi is free and the driver is looking for a passenger or waiting for a call and 2) a situation when a taxi is carrying a passenger or responding a call for a taxi. When a node moves according to the first type and reaches the edge of the TA, it is assumed to return back via the same path. In the second case only points placed inside the TA are selected as destinations. To minimize the occurrence of “back-and-forth” movements along the same path, e.g. W-E-W-E or N-S-N-S, when a node comes to an intersection, the opposite direction is chosen with less probability (10%) if compared with the other three possibilities (30% each). Figure 3 presents how the random movement is done.
Fig. 3. Random Movement Details
5 Experimental Results Simulations of the proposed approach were conducted using ShoX, a wireless network simulator [8]. In the following, the simulation scenarios are described and the corresponding results presented and discussed.
Geo-aware Handover of Mission Agents Using Opportunistic Communication
371
5.1 Simulation Setup The environment assumed is a square area (TA) with dimension 2.7 Km x 2.7 Km, divided in smaller 90 meter side square blocks. There is one TR in the TA, which is composed by a square of 7 by 7 blocks. Just one type of mission agent runs in the system, which has as goal to maximize the stay of its copies in the TR in order to accomplish its mission. The nodes have speeds that vary from 10 Km/h (kilometres per hour), up to 50 Km/h. The nodes’ speeds are randomly defined in the beginning of the simulation and remain constant during all the simulation run. Three different numbers of nodes were used, namely 50, 100 and 150, providing different node densities, i.e. 6.85 nodes/Km2, 13.71 nodes/Km2, and 20.57 nodes/Km2, respectively. The nodes start at randomly selected positions on the roads. The total simulation time for each run represents 2 hours (7200 seconds). At the beginning of the simulations, a given number of the nodes (a percentage of the total number of nodes) have a copy of the agent, and the nodes are randomly distributed over the TA. The following percentages were used in the simulations: 10, 25 and 50%. Two main types of simulations were tested. The first one, called SimA, includes a mix of nodes using one of the two mentioned movement patterns. The second one, called SimB, consideres all nodes using the random movement pattern. For the first kind of simulation, three variants were tested: 1) the agents randomly decide to move from one node to another (SimA-1); 2) the agents decide only based on the next step of the nodes (SimA-2); and 3) the agents decide based on the nodes’ destination, which can be just one step from the current location, if the node is following the random movement pattern, or multiple steps from the current destination, if the node is using the multi-step movement pattern (SimA-3). For the second simulation type there are two variants, one in which the agent takes a completely random decision whether it moves or not from a node to another (SimB-1), and another one in which the agent decides based on the nodes’ direction (next step) (SimB-2). A third variation for SimB is not presented, as in SimA, because as all the nodes move only according to the random movement pattern, the decisions that the agents can take are based on the next step (one-step comparison criterion), characterizing the same variation as SimB-2. Table 1 summarizes the differences among the types of simulations, while Table 2 summarizes simulation parameters. Table 1. Types of simulations performed Simulation Type SimA-1 SimA-2 SimA-3 SimB-1 SimB-2
Nodes’ Movement Pattern Destination Driven & Completely Random Destination Driven & Completely Random Destination Driven & Completely Random Completely Random Completely Random
Agents’ Movement Decision Method Random One-step (next-step) Multi-step (destination-based) Random One-step (next-step)
372
E. Pignaton de Freitas et al.
Nodes communicate using IEEE 802.11bg, using omnidirectional antennas, with a limited range of 90 meters, which is realistic considering a complex city environment in which buildings hinder the wireless communications, as discussed in [9]. TCP connections oriented to wireless communications [6] are used to assure the agent delivering when it moves from one node to another. Table 2. Simulation Parameters Parameter Value Area Dimensions 2.7 Km x 2.7 Km Block Dimensions 90m x 90m TR Dimensions 7 x 7 blocks Simulation Time 2 h (7200 s) Nodes’ Start Position Randomly Selected Nodes’ Speed 10 Km/s – 50 Km/s Number of Nodes (Corresponding 50 (6.85 nodes/Km2), 100 (13.71 Density) nodes/Km2) and 150 (20.57 nodes/Km2) Percentages of Nodes with Agent 10%, 25% and 50% Nodes’ Communication Protocol (Range) IEEE 802.11bg (90m)
5.2 Results GAMAF was evaluated by comparing simulation setups using the following metrics: - Number of nodes with a copy of the agents in the TR. This metric is an average of the number of nodes with a copy of the agent inside the TR for a given simulation period of time during the total duration of the simulation. In all cases the period is set to 12 minutes (720 seconds). - Total number of agent migrations. This metric informs about the communication overhead due to the agent migration among nodes. In the performed experiments, the agents are small enough to fit in the payload of one communication packet. This gives a direct relation among the number of migrations and the number of packets communicated for that reason. For each considered variation of the simulation scenario, 100 runs were performed. The results present the average values for those runs. Figure 4 shows the results for the first evaluated metric. Observe that in the cases with the lowest node density, parts (a), (b) and (c) of the figure, it is difficult to distinguish each of the variations presented in Table 1. This is easier in graph (c), due to the increased percentage of nodes that have the agent, but a more significant improvement is only observable from the graph in part (e). From (e) to (i), one can see that the variants that use context information, namely SimA-2, SimA-3 and SimB-2, perform better than those using the simpler random decision approach. As expected, the higher the percentage of nodes that have a copy of the agent, the better the performance of the system, i.e. there are more nodes with a copy of the agent in the TR. This can be noticed even in the simulations with the lowest node density, i.e. the first set with only 50 nodes. By looking at parts (a) to (c) of Figure 4 it is a bit hard to observe this fact, but Table 3 may help in making it clearer. Table 3
Geo-aware Handover of Mission Agents Using Opportunistic Communication
373
complements Figure 4, presenting the averages for the first metric for the simulation setup presented in Figure 4 (a) to (c), where the corresponding letter in the table corresponds to the parts of Figure 4. Concerning the two different movement patterns, the analysis of the results showed a small significance of their difference in the results of the simulations types that do not use the additional information about nodes’ destination. This is possible to be noticed by comparing the results of SimA-1 with SimB-1 (lines with diamond dots in the graphs of Figure 4), and SimA-2 with SimB-2 (lines with squared dots in the graphs of Figure 4). However, SimA-3 (lines with triangle dots in the graphs of Figure 4) presented better results, which is clearly understandable due to the usage of the destination information to decide more effectively about the agents’ migrations. Another interesting remark related to the results for the first metric is that if the first sample in each simulation is discarded (the first 12 minutes of the simulations), the results of the strategies using context information are in general better. It is shown by the stability of the averages of concentrations of nodes with the agent in TR during the simulation time. This corresponds to standard deviations around 15% below the values for the standard deviations if the averages for the first 12 minutes are taken into account. Additionally, one can observe that the results provided by the usage of GAMAF gave higher densities of nodes with a copy of the agent in the TR. The better result can be seen in part (i) of Figure 4, where SimA-2, SimA-3 and SimB-2 provide in average 3.5 times the density achieved by SimA-1 and SimB-1. Table 3. Averages for the acquired results for the first metric for the three first setups Simulation Type SimA-1 SimA-2 SimA-3 SimB-1 SimB-2
(Setup 50 – 10%) 0.580 0.600 0.706 0.460 0.465
(Setup 50 – 25%) 0.580 1.018 1.464 0.890 1.180
(Setup 50 – 50%) 2.000 2.120 3.105 2.728 1.695
In Figure 5, the assessment of the second metric, the number of agent migrations, is presented. Here it is also possible to verify that the variations that use the context information present lower overhead, i.e. exchange agents fewer times, saving communication resources. One aspect that should be noted is the big difference between the random decision variation, SimA-1 and SimB-1, and the other three, especially for the setups with higher number of nodes and agents. This shows that, indeed, the use of geographical context information in GAMAF gives good results. This conclusion gains more strength when the results for the second metric are cross-observed with the results for the first metric, telling that GAMAF provides better functional results working more efficiently, i.e. giving higher averages of incidence of nodes with an agent in the TR while it also consumes less communication resources. Contrary to the results for the first metric, the difference in the mobility models provides a more significant difference in the achieved results for the second one. This can be noticed by observing and comparing columns related to SimA-1 with SimB-1, and SimA-2 with SimB-2 in Figure 5. These results show that, in the simulations where there are nodes moving with a defined destination, the total number of agent
374
E. Pignaton de Freitas et al.
Fig. 4. Simulation Results for the first metric: number of nodes with agent in the TR
Geo-aware Handover of Mission Agents Using Opportunistic Communication
375
14000
50 - 10% 50 - 25% 50 - 50% 100 - 10% 100 - 25% 100 - 50% 150 - 10% 150 - 25% 150 - 50%
Number of Agent Migrations
12000
10000
8000
6000 150 - 50% 150 - 25% 150 - 10% 100 - 50% 100 - 25% Setup 100 - 10% 50 - 50%
4000
2000
50 - 25%
0 SimA-1 SimA-2 SimA-3 SimB-1 SimB-2
50 - 10%
Simulation Variation
Fig. 5. Simulation results for the second metric: number of agent migrations
migrations was smaller. An explanation for this behaviour can be that, due to the fact that the nodes have a destination, they make fewer changes in their movements, and, due to this, it is less probable that there occur situations in which nodes move in circles and meet the same nodes twice or more. In this type of situation, there is a probability that redundant and even useless agent migrations will be performed. Thus, nodes using the random movement pattern are more prone to this type of problem. It is also important to call the readers’ attention to the performance achieved by SimA-3, which outstands all others, including SimA-2 and SimB-2. This fact also corroborates the statement that the use of geographical context information is really very valuable in this type of system.
6 Related Work In [10], the authors present a protocol to disseminate data in VANETs using an opportunistic approach based on analysis of geo-location of the nodes. The common idea shared between their approach and the one presented here is the exploration of the geo-context information to make decisions about whether communicate or not in infrastructureless ad hoc networks. However, differently from their approach, the present one does not aim at broadcasting data inside a certain area, but instead moving data across the nodes to reach a specific location in the map. A mobility-centric based approach is presented in [11]. This work tries to combine the ideas of opportunistic, trajectory based and geographical forwarding in a unified proposal. These concepts also inspired the proposal of the present paper. A remarkable difference between the two works is the proposed usage. While their communications have a precise destination, and thus can be more suited to data delivery services, our approach proposes support to data gathering services.
376
E. Pignaton de Freitas et al.
7 Conclusions and Future Work This paper presents GAMAF, an efficient geographic context aware communication mechanism supporting software agent mobility in VANETs and MANETs. The technique was illustrated by an example in which mission agents provide sensing services on top the platform offered by vehicles that compose a fleet of taxis. The agents migrate across the taxis in order to reach the location where they are supposed to acquire data. Simulation results of this case study were presented and discussed. Directions of future work indicate the investigation of possible enhancements in the context information analysis performed by the agents to decide about their mission migrations. This includes, for example, studies about the use of information contained in complete route plans for the nodes in the system.
References 1. Fall, K.: A delay-tolerant network architecture for challenged internets. In: Proc. of the 2003 CATAPCC, Karlsruhe, Germany, pp. 27–34 (2003) 2. Satyanarayanan, M.: Fundamental Challenges in Mobile Computing. In: Proc. of PODC’96: 15th Annual ACM Symposium on Principles of Distributed Computing, pp. 1–7 (1996) 3. Wolf, W.H.: Computers as Components: Principles of Embedded Computing System. Morgan Kaufmann Publishers, San Francisco (2000) 4. Conti, M., Crowcroft, J., Giordano, S., Hui, P., Nguyen, H.A., Passarella, A.: Routing Issues in Opportunistic Networks. In: Middleware for Network Eccentric and Mobile Applications, pp. 121–147. Springer, Heidelberg (2009) 5. Tian, Y., Xu, K., Ansari, N.: TCP in wireless environments: problems and solutions. IEEE Communications Magazine 43(3), 27–32 (2005) 6. Frew, E.W., Brown, T.X.: Airborne Communication Networks for Small UAS. Proc. of the IEEE, Special Issue on Aviation Infor. Systems 96(12), 2008–2027 (2008) 7. Lessmann, J., Heimfarth, T., Janacik, P.: ShoX: An Easy to Use Simulation Platform for Wireless Networks. In: Proc. of 10th ICCMS, pp. 410–415 (2008) 8. Giordano, E., Frank, R., Giovanni, P., Gerla, M.: CORNER: a Realistic Urban Propagation Model for VANET. In: Proc. of IEEE/IFIP WONS - 7th International Conference on Wireless On-Demand Network System and Services, Kranjska Gora, Slovenia, pp. 57–60 (2010) 9. Meyer, H., Hummel, K.A.: A geo-location based opportunistic data dissemination approach for MANETs. In: Proceedings of the 4th ACM Workshop on Challenged Networks, Beijing, China, pp. 1–8. ACM, New York (2009) 10. Wu, H., Palekar, M., Fujimoto, R., Lee, J., Ko, J., Guensler, R., Hunter, M.: Vehicular networks in urban transportation systems. In: Proceedings of the 2005 National Conference on Digital Government Research, Atlanta, Georgia, pp. 9–10 (2005)
Comparison and Evaluation of the Most Efficient Mobility Management Protocols for Integrated Wireless Networks Asimakis Lykourgiotis and Stavros Kotsopoulos Wireless Telecommunications Laboratory, Department of Electrical and Computer Engineering, University of Patras, Rio, Hellas 265 00 [email protected], [email protected]
Abstract. The integration of complementary wireless technologies in order to achieve “anywhere, anytime and on any device” ubiquitous services is the core idea of Next Generation Networks (NGN). In order to achieve this goal the NGN will integrate different network access technologies. One of the most attractive ideas is the design and implementation of a UMTS / WLAN interworking architecture. Mobility Management (MM) is a major factor towards a seamless provision of multimedia applications in such a heterogeneous environment. Although numerous solutions have been proposed so as to accomplish this object, the comparison of them has been less extensive mainly narrowed between extensions of the same protocol or different basic protocols. Moreover, little research has been done on MM protocols comparison in UMTS/WLAN integrated networks. In this article a comprehensive comparison between the most efficient approaches of well-known mobility protocols in UMTS/WLAN networks is presented. Keywords: UMTS/WLAN, Mobility Management, MIP, SIP, mSCTP.
1
Introduction
The Third Generation (3G) systems were designed to support not only connection - oriented but also connectionless services, and by that introducing the Mobile Internet. The Universal Mobile Telecommunication System (UMTS) is the most widely deployed 3G network. UMTS provides high mobility and wide coverage area but lacks in means of data rate and cost. Conversely, Wireless Local Area Networks (WLAN) services are inexpensive and have a high bandwidth but cover small areas and allow limited mobility. These complimentary characteristics of both wireless technologies in conjunction with their high penetration prompt the idea of interoperability. This requires inter-technology MM, which can take place in several layers of communication. MM is divided into two tasks: Location Management and Handoff Management. The most important characteristic of the latter is the Handoff Delay, which is the time interval between last packet received before the link loss and the first packet received through the S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 377–388, 2010. c Springer-Verlag Berlin Heidelberg 2010
378
A. Lykourgiotis and S. Kotsopoulos
new link. In integrated networks there are two types of handoffs: Horizontal and Vertical. A Horizontal Handoff is a handoff between two network access points (AP) that use the same network technology where as a Vertical Handoff is a handoff between APs of different network technologies. Several MM protocols have been proposed through the years implemented in different layers of protocol stack. The Mobile Internet Protocol (MIP) [1], [2] is the most well known Network-layer solution for MM. Despite the fact that is a mature protocol it has been slowly deployed in real networks as it suffers from high Handoff Delay due to Triangular Routing, high packet loss rate and conflicting security issues. On the other hand, mobile Stream Control Transmission Protocol (mSCTP) [3] is a Transport-layer efficient solution with main characteristic the multi-homing, which allows a Mobile Node (MN) to be reachable through different IP addresses. Finally, in the Application Layer, the Session Initiation Protocol (SIP) [4] has been proposed as a MM protocol. The rest of the article is organized as follows. In Sect. 2 a brief description of the most important candidate protocols for MM is given. In Sect. 3 a theoretical analysis of Handoff Delay for the most efficient extensions of the forementioned protocols is presented. In Sect. 4, the results were obtained through simulation using OPNET Modeler 15.0 [5] are discussed. In Sect. 5, we conclude the paper by summarizing our findings and suggesting potential future research efforts.
2 2.1
Basic Mobility Protocols Mobile IPv4
The Internet Protocol (IP) has made feasible the connection of millions of local networks and machines worldwide. In IPv4 each endpoint is identified by a unique IP Address. When a MN changes its point of attachment its IP Address changes too, losing its Transmission Control Protocol (TCP) /IP connection. The MIPv4 [1] was introduced to alter this problem by allowing the MN to utilize two IP Addresses, one for identification called Home Address (HoA), the other for routing called Care-of-Address (CoA). According to MIPv4, every domain must have a router called Home Agent (HA), so as to allow roaming of its users and a router called Foreign Agent (FA), so as to accept visitors. Every time a MN enters a Foreign Network, it registers with the FA and obtains a CoA. Then the FA informs the HA of the MN’s current CoA. Every time a Correspondent Node (CN) establishes a connection with the MN, it sends the packets to the MN’s HoA. The HA encapsulates them using the CoA as Destination Address and forwards them through a tunnel to the FA. On receiving the packet, the FA decapsulates them and sends the original packets to the MN. Conversely, when MN communicates with the CN, it sends the packet directly to CN without involving the HA. The deficient way that CN routes packets to MN through the HA is called Triangular Routing. Moreover, MIPv4 is not compatible with Ingress Filtering, which is a security procedure that requires devices to have IP addresses within the range of addresses that are assigned to the local network. That means that
Most Efficient MM Protocols for Integrated Wireless Networks
379
the MN can not use the HoA when it resides in the Foreign Network. Some other drawbacks of the protocol are the limited number of IP addresses and the vulnerability against malicious attacks. 2.2
Mobile IPv6
The Mobile IPv6 (MIPv6) [2] was introduced as a standard that surpasses the drawbacks of the previous version. The most important sub-protocol of MIPv6 is the Binding Cache Management Protocol (BCMP), which handles signaling messages such as Binding Updates (BU). One of the most important features of BCMP is the Home Address Destination Option which contains the HoA of the MN when the CoA is used in the Source IP field. With the BCMP the MN can send packets to the CN using its CoA and concurrently inform the CN about its HoA, solving the compatibility problem with Ingress Filtering. Another fundamental sub-protocol of Mobile IPv6 is the Return Routability Protocol (RRP). The RRP is a procedure by which a CN carries out a minimal verification that a mobile node owns an address (HoA) and is reachable at another (CoA). With the RRP the CN can be informed for the CoA and send packets directly to the MN, solving the problem of Triangular Routing. Finally, MIPv6 eliminates the use of FA as the MN is capable of performing its own mobility procedures. To do so, two procedures are mainly involved, the Router Discovery (RD) and the Duplicate Address Detection (DAD). The former involves exchange of messages called Router Advertisements (RA) and Router Solicitation (RS). The RA allows the MN to learn the router’s MAC address, the network prefixes and the type of address configuration to use. The purpose of DAD procedure is to obtain and assign a unique IP address to the interface without requiring stateful or manual configuration. Once the MN moves to a new subnet, it performs configuration of the link-local address including the DAD, router discovery for new prefix and new CoA configuration. Subsequently, it registers the new CoA with the HA and the CN. 2.3
Mobile Stream Control Transmission Protocol
Stream Control Transmission Protocol (SCTP) is Transport-layer protocol which was designed to face the drawbacks of TCP. A dominant characteristic of SCTP is multi-homing, making it a candidate protocol for Handoff Management in allIP networks. To accomplish that, a new module was added called ADD-IP which leaded to the extension named mSCTP [3]. On the other hand, mSCTP does not support Location Management and must be used along with another mobility protocol such as MIP or SIP. A connection between two SCTP-endpoints is called an association. Multi-homing allows each point of the association to maintain more than one IP Address. Among that set of addresses one is used as Primary Address. The ADD-IP module allows the endpoints to add, delete or change the Primary IP address dynamically during the handoff procedure. As a result, a MN can prepare a new path before the breakdown of the active one and perform a soft handoff, utilizing the redundancy in the network to minimize data loss.
380
A. Lykourgiotis and S. Kotsopoulos
The related chunk for IP Address modification is the Address Configuration Change (ASCONF), which is introduced by the ADD-IP module. The Primary address changes dynamically during the handoff procedure. When the MN enters a new IP network obtains a new address and then exchange ASCONF chunks with the CN. Firstly, the MN adds the new IP address to the set of addresses of the association (ASCONF add ip) and then sets this new address as Primary (ASCONF set primary). Upon successful completion of these two steps, the data are sent to the new MN’s address. mSCTP can be used to provide seamless handoff without requiring any additional mobility agents. So, the only requirement for providing the soft handoff is that both the MN and CN are equipped with the mSCTP implementations. 2.4
Session Initiation Protocol
SIP [4] is a signaling protocol which was initially used to handle multimedia sessions such as Voice over IP (VoIP). Nonetheless, SIP resides at the Application Layer and can support MM. In this case, no additional bytes are added to the signaling messages of SIP and so the protocol’s performance is not affected. SIP introduces several new entities like User Agent (UA), proxy server, registrar. An UA is an interface agent responsible for initiating, exchanging messages and terminating a SIP session. UA can act as client when initiates a SIP session or as server when receives a request. A proxy server is an intermediate entity that receives a request and forwards it on behalf of the requestor. Proxy server uses location services to trace an UA and checks its ability to communicate. Finally, the registrar server enables clients to alter the address at which they can be contacted. The SIP user address is called Uniform Resource Identifier (URI) and has an email format (user@host). The SIP protocol supports two kinds of handoffs. The former is called Pre-Call as it determines that the MN enters a new foreign network before the initiation of a session. The latter is called Mid-Call because the MN enters a new foreign network while having an ongoing session. In this case the SIP re-INVITE method is used. Initially, the MN sends a re-INVITE request which contains its new IP Address to the CN and the CN responds with a 200 OK. After this message exchange both MN and CN restart the communication using the new address with the new parameters. One of the advantages of SIP is that supports session mobility without any modifications of lower layer protocols. As for data delivery, with SIP data are exchanged directly between MN and CN without involving any tunneling.
3
Handoff Delay Analysis
Below, the Handoff Delay analysis of the four more efficient extensions, as indicated in publications, of the forementioned basic protocols is presented. As mentioned before, two types of handoff occur in an integrated UMTS / WLAN architecture: Horizontal and Vertical. The Horizontal Handoff procedure can
Most Efficient MM Protocols for Integrated Wireless Networks
381
be divided in four stages. Firstly, the MN detects it has moved to a different network (Move Detection - MD) and authenticates itself to an Authentication, Authorization, and Accounting (AAA) server so as to get access to the network. Afterwards, the MN obtains a new IP address (Address Configuration - AC). Finally, MN registers its new location and address (Registration-REG). In the Vertical Handoff scheme, assuming that the MN can use the two different interfaces simultaneously, the MD and AC procedures are performed while the connection with the CN is continued. Thus, the Vertical Handoff Delay is decreased to the AAA and REG delay. In further analysis, the delay of procedure X is denoted by TX and the one-way transmission delay between node X and Y by TX−Y . 3.1
Route Optimization in Mobile IPv4
The most important extension of MIPv4 is the Route Optimization in MIPv4 (MIPv4-RO) [6], which solves the Triangular Routing problem. The handoff procedure comprises of the following steps. Firstly, the MN moves into a new subnetwork and the MD process is initiated. Then, the MN performs the AAA process. The MD process is performed by receiving an Agent Advertisement (AA) message from the new FA, containing the network prefix. Then, the MN obtains a new CoA from the FA or a Dynamic Host Configuration Protocol (DHCP) server. In the end, the REG process takes place by sending a Registration Request (RR) to the FA. FA forwards a BU to the HA. The HA replies with a Binding Acknowledgement (BA) message. The FA notifies the MN of the successful registration with a Registration Reply (RRp) message. Direct communication between MN and CN is possible through Route Optimization. MN can send a registration packet to the CN to inform it for its new CoA. The CN, then sends a BA to both MN and HA. For our analysis we assume that THA−CN < TCN−MN , and so we use the latter. Therefore, the TREG , which is also the Vertical Handoff Delay (VHO) is: MIPv4−RO = TVHO = TMN−HA + THA−CN + TCN−MN . TREG
(1)
While, the Horizontal Handoff Delay (DHO ) is: MIPv4−RO MIPv4−RO = TMD + TAAA + TAC1 + TREG . DHO
3.2
(2)
Proxy Mobile IPv6
Unlike most of the MIP-based protocols which are host-based approaches for MM there is also a network-based one called Proxy Mobile IPv6 (PMIPv6)[7]. In PMIPv6 the network controls entirely the MM on behalf of the MN, thus the MN’s protocol stack does not need any modifications allowing the implementation of the protocol in current devices. In [8] the performance of the protocol is evaluated and compared to other extensions of MIPv6 showing its salience. In PMIPv6 two new functional entities are introduced: the Local Mobility Anchor (LMA) and the Mobility Access Gateway (MAG). The LMA has similar
382
A. Lykourgiotis and S. Kotsopoulos
functionalities to the HA of MIPv6 with additional capabilities for supporting the PMIPv6. The MAG acts as MM proxy for the MN, when the MN is away from its Home Network. Essentially, it is a process running on an Access Router (AR) which handles the mobility signaling messages of the MN, emulating the MN’s home link on the access link. As a result the MN uses its HoA and does not perform the MD and AC processes while roams in a PMIPv6 domain but only when first enters the domain. In this analysis, we investigate only the handoffs occurred between PMIPv6 subnets. When a MN enters the serving area of a MAG performs the AAA. Then the MAG obtains the MN’s profile and send a proxy binding update (PBU) to the LMA. Finally the LMA replies with a proxy binding acknowledgement (PBA) and sets up a bidirectional tunnel with the MAG in order to use the MN’s home network prefix over it. So the Registration Delay is constrained to the messages exchange between MAG and LMA and the transmission of packets from the MAG to the MN: PMIPv6 TREG = TVHO = 2 × TMAG−LMA + TMAG−MN .
(3)
And the Horizontal Handoff Delay is: PMIPv6 PMIPv6 DHO = TAAA + TREG .
3.3
(4)
Cellular SCTP
The Cellular SCTP (cSCTP) [9] is an extension of mSCTP. In contrast with mSCTP, the cSCTP does not await the ADD-IP set primary chunk to be sent to the CN but sends duplicate packets through old and new path by the receiving of the ADD-IP ASCONF-ACK chunk. With this extension the Registration Delay is reduced and less packets retransmission occur as the data are transferred via two different paths reducing the probability of MN’s missing the packets. cSCTP is proposed to be used with SIP because, as mSCTP, does not support Location Management. Hence, the Registration Delay for the cSCTP is the time between sending an ASCONF add ip chunk and receiving an ASCONFACK add ip chunk: cSCTP TREG = TVHO = 2 × TMN−CN .
(5)
The Horizontal Handoff Delay is: cSCTP cSCTP DHO = TMD + TAAA + TAC2 + TREG .
3.4
(6)
Mobility Management Using SIP Extension (MMUSE)
In [13] a comparison of MIP, SIP and MMUSE [10] is presented. The last proposal is an important extension of SIP as shown by the results. MMUSE introduce a new intermediate entity named Mobility Management Server (MMS) to be in charge of managing terminal mobility. The MMS can be considered as an extended Session Border Controller (SBC). A SBC is a router which is located
Most Efficient MM Protocols for Integrated Wireless Networks
383
at the border of the Home Network and acts as a SIP proxy for signaling. With the legacy SIP re-INVITE method signaling messages are exchanged between the MN and the CN, whereas with the MMUSE approach the exchange is between MN and MMS. By controlling the location of MMS, MMUSE decreases the Handoff Delay. Additionally, as the CN is not involved in the handoff procedure legacy devices can be used. In MMUSE, when the MN enters a new subnet, it obtains a new IP address through a DHCP server. Afterwards, the registration process is performed where the MN sends a SIP HO-Reg to the MMS, which responds with a 200 OK message. Then, the Registration Delay is: MMUSE TREG = TVHO = 2 × TMN−MMS.
(7)
And the Horizontal Handoff Delay is MMUSE MMUSE = TMD + TAAA + TAC2 + TREG . DHO
(8)
Fig. 1 summarizes the message flows of the forementioned protocols. MN MIPv4-RO
PMIPv6
DHCP DHCP RR RRp
AR
BA
MN’s profile Data packets
BA
MMS
CN
BU
PBU
HA BU
BA
PBA
DHCP
ASCONF_add_ip
cSCTP DHCP
MMUSE
LMA
ASCONF_ACK_add_ip
HO REGISTER 200 OK
Fig. 1. Message flow
For analytical purpose, we will take the following assumption: 1. Based on the protocol architectures the entities introduced from each protocol follow the mapping shown in Fig. 2. For example, the FA location of MIPv4 is the same as the MAG of PMIPv6 because both reside in the AR of the Foreign Network. 2. As presented in [11], the delay of DAD procedure is extremely high and it is inefficient to use it. As our main goal is to examine the handoff signaling delay of the protocols we will not take in to account the DAD delay. 3. The AAA procedure (like DIAMETER) is the same for all evaluated protocols.
384
A. Lykourgiotis and S. Kotsopoulos ΤAR-HA TMMS-HA
ΤAR-MMS TMAG-LMA ΤMN-AR AAA ΤAAA AR
HA
ΤAAA LMA
IP network
MMS
TAAA
CN -H
N-
MN
AR
Τ
ΤC
A
AAA CN’s Network
CN
Fig. 2. Architectural model
Moreover, we have made the following calculations: 1. The SIP and mSCTP protocols do not support any MD mechanism and thus they use the one implemented by the Network Layer called Router Discovery. In [2] it is specified that routers must send unsolicited RA in small intervals with MinRtrAdvInterval as smaller value and MaxRtrAdvInterval as maximum. So the MD mechanism is the same for all the protocols with a mean value of: TMD =
M axRtrAdvInterval + M inRtrAdvInterval 2
(9)
2. For the current analysis, we will consider Stateful Address Configuration through a DHCP server. For MIP-based protocols, this is a one round-trip process, so: TAC1 = 2 × TMN−DHCP (10) For SIP-based protocols, this is a two round-trip process, so: TAC2 = 4 × TMN−DHCP
4
(11)
Experimental Handoff Analysis
The simulation results were obtained by OPNET Modeler 15.0 [5]. The main idea was to create a custom node model (named Mobility Node) which intervenes between the MN and CN and simulates the mobility’s protocol behavior similar with [12]. In [12] the assumption that TREG and TMN−CN are proportional is made. According to previous analysis TREG is also affected by TMN−HA . In our proposed model TREG is calculated based on our analysis showing the influence of both factors.
Most Efficient MM Protocols for Integrated Wireless Networks
385
In Fig. 3 the logic diagram of our proposed model is presented. Each time a new packet arrives to the Mobility Node, it is checked if the packet is a handoff initiation message. If so, the Mobility Node is set to handoff mode. Then, the Handoff Delay is calculated. The Mobility Node stays in handoff mode for a time interval equals to the Handoff Delay, dropping every packet that arrives during this interval. The Mobility Node returns to normal mode when the Handoff Delay time passes. If the arriving packet is a data packet, it is checked if the Mobility Node is in handoff mode. If so, the packet is dropped, if not it is forwarded, adding the related transmission delay. In our simulation, both IEEE 802.11g WLAN and UMTS operate at full mobility (80 km/hr). That results to a data rate of 384 Kbps for UMTS and 15Mbps for WLAN. An extra delay is added or subtracted due to wireless link’s data rate.
Start Handoff Initiation
YES
YES
Handoff=True
NO NO
Handoff=True
Read Transmission Delay
Calculate Handoff Delay Wait
Drop Packet
Wait
Handoff = False
End
Send Packet
Fig. 3. Logic diagram
For our analysis, we used the parameters that are outlined in Table 1. All these values are similar to those given in related work in ([8],[13]). Table 1. Parameter setting values Param. Value(ms) Param. Value(ms) Param. TAAA TMD
12 50
THA−CN TMN−HA
10 20
TMAG−LMA TMN−MMS
Value(ms) Param. 10 10
TMN−DHCP
Value(ms) 12
Firstly, in order to evaluate the four handoff mechanisms we plot the Handoff Delay as function of TMN−CN (Fig. 4) and as function of TMN−HA (Fig. 5). It can be observed that Handoff Delay of PMIPv6 is the smallest, because the MD and AC procedures are not required. Moreover, the protocol is not affected by the change of TMN−CN or TMN−HA . On the other hand MIPv4-RO is affected
386
A. Lykourgiotis and S. Kotsopoulos
Horizontal Handoff Delay (ms)
300
MIPv4-RO PMIPv6 cSCTP MMUSE
250 200 150 100 50 0
0
20
40 60 Delay between MN and CN (ms)
80
100
Fig. 4. Handoff Delay vs. delay between MN and CN
Horizontal Handoff Delay (ms)
300
MIPv4-RO PMIPv6 cSCTP MMUSE
250 200
150 100 50
0 0
20
40 60 Delay between MN and HA (ms)
80
100
Fig. 5. Handoff Delay vs. delay between MN and HA
by both factors. The cSCTP is only affected by TMN−CN whereas the MMUSE is only affected by TMN−HA . Both protocols have a greater slope than MIPv4-RO. Consequently, we evaluated the protocols on both non real-time (File Transfer Protocol - FTP) and real-time (VoIP) applications. For FTP, the important metric is the throughput which is affected by the transmission delay. For MIPv4-RO, cSCTP and MMUSE the transmission delay is the same as these protocols enabled direct communication between MN and CN, resulting to same throughput. On the other hand, in PMIPv6 the traffic is sent through the tunnel between LMA and MAG, resulting to larger transmission delay. Figure 6 shows the impact of all types of handoff that can occur in a UMTS / WLAN network on throughput. It is observed that PMIPv6 has smaller throughput than other protocols especially in WLAN where the wireless link delay is smaller. For VoIP we used the G.711 codec which provides a data rate equal to 100 packets/sec and we set TMN−CN = TMN−HA = 30 ms. The important metric in this simulation is the number of lost packets during handoff. As shown in Fig. 7 PMIPv6 achieves less packet loss for all types of handoffs.
Most Efficient MM Protocols for Integrated Wireless Networks 1400
MIPv4-RO MMUSE cSCTP PMIPv6
1200
Throughput (Kbits/sec)
387
1000 800 600 400 200 0 WLAN 1
WLAN 2
UMTS 1
Technology
UMTS 2
Fig. 6. Throughput vs. technology TMN-CN=TMN-HA=30ms 25
MIPv4-RO PMIPv6 cSCTP MMUSE
Packets Lost
20 15 10 5 0 WLAN-WLAN
WLAN-UMTS
UMTS-UMTS
UMTS-WLAN
Change of Technology
Fig. 7. Lost packets vs. type of handoff
Furthermore, we repeated the simulation in order to observe the impact of TMN−HA by increasing its value to 40 ms. PMIPv6 and cSCTP were not influenced as Handoff Delay is the same, whereas in MIPv4-RO lost packets increased by one and in MMUSE by two. Finally, we set TMN−CN to 40 ms. In this case, PMIPv6 and MMUSE were not influenced. On the contrary, in MIPv4-RO lost packets increased by one and in cSCTP by two.
5
Conclusion
To the best of our knowledge, this is the first article that evaluates the most efficient protocols for Mobility Management in integrated UMTS/WLAN networks. In this article, we presented a survey of different mobility support paradigms proposed on different layers of OSI stack. Firstly we obtained analytical results for performance evaluation of the candidate protocols and then proceeded to simulations for both real-time and non-real-time applications. PMIPv6 is proven to be the best solution, in terms of Handoff Delay and dependence on distance
388
A. Lykourgiotis and S. Kotsopoulos
between MN and both CN and HA. The only deficiency of the protocol is the tunneling between LMA and MAG, adding delay to packets transmission. Although, we focused on pure protocols solution the interaction between them or even a multi-layer architecture for advanced mobility support is possible. Future research on mobility management on integrated wireless networks should explore these possibilities.
References 1. Perkins, C.: IP Mobility Support for IPv4. IETF RFC 3344 (2002) 2. Johnson, D., Perkins, C., Arkko, J.: Mobility Support in IPv6. IETF RFC 3775 (2004) 3. Riegel, M., Tuexen, M.: Mobile SCTP (2007) draft-riegel-tuexen-mobile-sctp-09 4. Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A., Sparks, R., Handley, M., Schooler, E.: SIP: Session Initiation Protocol. IETF RFC 3261 (2002) 5. OPNET Modeler 15.0, http://www.opnet.com 6. Perkins, C., Johnson, D.: Route Optimization in Mobile IP (2001) draft-ietfmobileip-optim-11.txt 7. Gundavelli, S., Leung, Ed.K., Devarapalli, V., Chowdhury, K., Patil, B.: Proxy Mobile IPv6. IETF RFC 5213 (2008) 8. Kong, K., Lee, W., Han, Y., Shin, M., You, H.: Mobility management for all-IP mobile networks: mobile IPv6 vs. proxy mobile IPv6. IEEE Wireless Communications 15, 36–45 (2008) 9. Aydin, I., Seok, W., Shen, C.-C.: Cellular SCTP: a transport-layer approach to Internet mobility. In: IEEE International Conference on Computer Communications and Networks, pp. 285–290 (2003) 10. Salsano, S., Polidoro, A., Mingardi, C., Niccolini, S., Veltri, L.: SIP-based mobility management in next generation networks. IEEE Wireless Communications 15, 92– 99 (2008) 11. Vatn, J.: Long random wait times for getting a care-of address are a danger to mobile multimedia. In: IEEE International Workshop on Mobile Multimedia Communications, pp. 142–144 (1999) 12. Abdel-Ghaffar, H.S., Ebrahim, H.A.-A., Khalifa, A.A.: Efficient Mobility Management Protocols for Integrated UMTS and Outdoor WLAN 802.11g. In: Wireless Communications and Mobile Computing Conference, pp. 552–558 (2008) 13. Polidoro, A., Salsano, S., Niccolini, S.: Performance Evaluation of Vertical Handover Mechanisms in IP Networks. In: IEEE Wireless Communications and Networking Conference, pp. 2783–2788 (2008)
Functional Model and Service Scenarios for QoS Enabled Mobile VoIP Service Kyu Ouk Lee, Sang Soo Lee, and Tae Whan Yoo U-Access Tech. Research Team,Electronics and Telecommunications Research Institute (ETRI), 138 Gajeongno, Yuseong-gu, Daejeon, Korea {kolee,soolee,twyoo}@etri.re.kr
Abstract. Functional model is proposed for QoS enabled mobile VoIP service in WiFi, 3G, and mobile WiMAX networks, along with detail service scenarios. The mobile VoIP service is provided by application of make-before-break based seamless mobility in service control layer. The proposed functional model and service scenarios provide guidelines for implementation of QoS enabled mobile VoIP service to WiFi, 3G, and mobile WiMAX users in near future. Keywords: VoIP, mobility, mobile WiMAX, WiFi.
1 Introduction Recently, the voice service in the fixed circuit network has been transferred to the packet network (VoIP) owing to the lifespan decrease and maintenance difficulties of the network infra resource, along with the fixed network has been transferred to the mobile network owing to the increase in the number of mobile users. On the other hand, the circuit based mobile voice service charges high rates to customers, and the packet-based mobile voice service among WiFi, 3G, and mobile WiMAX is very difficult owing to the difficulties in network handover and QoS assurance. To cope with these network difficulties and decrease the high rates charged to customers, functional decomposition model, service scenarios and use cases are proposed for providing QoS assurance mobile VoIP services to the users among WiFi, 3G, and mobile WiMAX networks as shown in Figure 1.
2 Functional Decomposition Model for QoS Guarantee Mobile VoIP Service Adding the dimension of mobility to service scenario requires the separation of various key and distinct aspects to provide the QoS guarantee mobile VoIP service. There are three key elements to consider: user terminal, networks, and contents. S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 389–397, 2010. © Springer-Verlag Berlin Heidelberg 2010
390
K.O. Lee, S.S. Lee, and T.W. Yoo
Fig. 1. General network architecture for QoS guarantee VoIP service
2.1 Functional Decomposition of User Terminal User terminal is the device to provide the services and applications to the end user accepting the end user requests for the services/applications. User terminal can be divided with single mode terminal and multi mode terminal. y Single mode terminal: this terminal provides single mode of connection to the network either fixed or mobile or wireless. Because of this, connection of terminal is identified by the single identity which is basement to bind all services and applications deliver to the terminal. However this terminal is equipped with various media processing powers including various codecs to handle services and applications e.g. voice phone call, conference, SMS, Video and IPTV etc. y Multi mode terminal: this terminal provides multi mode of connections to the network either fixed or mobile or wireless. Because of this, connections of terminal are identified by different identity according to each network. Therefore bindings services and applications deliver to the terminal are much more complex than single mode terminal. And this terminal is also equipped with various media processing powers including various codecs to handle services and applications similar as single mode, but forming the different set of service platform with different set of processing powers such as different set of codecs according to associated network connection capability. The user terminal used in this paper is a multi mode terminal, equipped with WiFi, 3G, and mobile WiMAX functions inside related chips. 2.2 Functional Decomposition of Network The concept of general mobility introduces the ability to treat all related networks equally as far as mobility is concerned. This aspect raises the difference of QoS
Functional Model and Service Scenarios for QoS Enabled Mobile VoIP Service
391
capabilities when user terminal moves to the different access network, along with difference of service coverage and different transmission speed. The networks which are used in the paper are WiFi, 3G, mobile WiMAX, and these networks have different capabilities owing to the different bandwidth, service coverage, and transmission speed when user terminal moves to the different networks. While, the using mobility technology concept is the make-before-break technology for network handover in network control layer among packet networks. The makebefore-break technology is the host-based mobility support, and minimizes the packet delay and packet loss which can be occurred in mobile VoIP. This concept is establishing the pre L2/L3 path before handover and disconnecting the previous in-service path after connecting to the pre L2/L3 path as shown in Figure 2. For example, when user terminal moves from WiFi in-service network to mobile WiMAX network, the procedure of make-before-break is as follows; (1) User terminal detects new L2 link in mobile WiMAX network (2) User terminal set-up the pre-established L2/L3 path before handover in mobile WiMAX network (3) User terminal decides handover and generates L2 trigger based on signal threshold or operator’s policy, etc in mobile WiMAX network (4) User terminal communicates through the pre-established path in mobile WiMAX network (5) User terminal breaks the previous in-service path
Fig. 2. Seamless mobility support by make-before-break handover scheme
2.3 Functional Decomposition of Contents There are two factors for contents when user terminal move to the different networks; same quality and different quality y Same quality: This is the case the source of contents should keep the same quality when user terminal moves to different network, so there is no need to change of media processing power and network performance parameters including QoS profile.
392
K.O. Lee, S.S. Lee, and T.W. Yoo
y Different quality: This is the case the source of contents should change to the different quality when user terminal moves to different network, there are need to change of media processing power and network performance parameters including QoS profile. The contents which are used in this paper are different quality by providing the different QoS profile information of network when user terminal moves to the different network. Here, the information of QoS profile are end-to-end available bandwidth, packet transfer delay, jitter, etc. 2.4 Overall Configuration of Functional Decomposition Taking into consideration of above functional decompositions including their characteristics in terms of changing environmental elements which will impact the operation of service and application delivery, following function model among those elements shown in Figure 3 would be available.
Fig. 3. Overall configuration of functional decomposition
In Figure 3, a multi mode user terminal is operating to follow up the behavior of a user terminal with keeping the network connection as much as possible. In the case of access networks, it should be continuously changed according to the user terminal behavior such as moving or changing the connection among WiFi, mobile WiMAX, and 3G network. Here, changing the access network causes the change of connecting capability like bandwidth, security, QoS, service coverage and others. Therefore, from the mobility management aspects, network characterizes two elements: connection change and capability for different quality. Source of contents are characterized by the quality as same quality or different quality according to the changing the QoS (down grade or upgrade) of user terminal and network. For example, when user terminal moved to the mobile WiMAX network from WiFi network where user terminal has received VoIP service, user terminal would receive the same level of VoIP service, but different quality at mobile WiMAX as WiFi network by QoS profile transfer from WiFi network to mobile WiMAX network.
Functional Model and Service Scenarios for QoS Enabled Mobile VoIP Service
393
3 Service Scenario and Use Cases in Case User Terminal Moves between Different Operator’s Networks The service scenario and use case are described for service realization and interworking between different operator’s networks such as between WiFi network and 3G network. Signal exchange between related nodes are described at registration phase, service signal phase, real service provisioning phase, service closing phase, and the used FEs (Function Entity) are referred from ITU-T documents [1], [2], [3], [4], and IETF documents [5], [6]. 3.1 Registration Phase This phase defines the network interface, service authentication, and service scope for registration of the user’s service category and characteristics as following procedures. 1) A permanent IP address is allocated to the originating user terminal by the MLMFE. 2) L2 MAC layer authentication and AAA (Authentication, Authorization, Accounting) associations are executed by the TAA-FE after network interface connection 3) A local IP address (network IP address) is assign to originating user terminal by the NAC-FE 4) The received IP address from local network is reported to the MLM-FE. 5) A service request registration message which contains the user’s URL sent to the P-CSC-FE by the originating user terminal for user registration
Fig. 4. Overall procedure of registration phase
394
K.O. Lee, S.S. Lee, and T.W. Yoo
6) The S-CSC-FE sends a service request registration message which contains the user’s URL and P-CSC-FE URL to the SL-FE of the HSS via the I-CSC-FE for user registration Overall procedure of registration phase is shown in Figure 4, and 6. 3.2 Service Signal Phase This phase exchanges the required signaling information for call set-up as following procedures 1) The originating user terminal forwards a service request message which contains the URL information of originating and terminating user terminal, codec information and UDP port number to the P-CSC-FE of the SCF of operator A 2) The I-CSC-FE of operator A interprets the service request message which was received from the originating user terminal 3) The I-CSC-FE of operator A forwards the URL (Uniform Resource Locator) of the service request message to the DNS (Domain Name System) and gets network IP address information of the terminating user terminal after recognizing that the URL (Uniform Resource Locator) of the terminating user terminal is not his own domain name. 4) The I-CSC-FE of operator A forwards the service request message to the I-CSCFE of operator B after getting the SIP URL of operator B 5) The I-CSC-FE of operator B interprets the service request message which was received from the I-CSC-FE of operator A 6) The service request message from the originating user terminal is forwarded to the terminating user terminal 7) The terminating user terminal forwards the service response message which contains the URL information of originating and terminating user terminal, codec information and UDP port number of terminating user terminal to the PCSC-FE of operator B 8) The P-CSC-FE of operator B forwards QoS set up information which contains network bandwidth to the HDC-FE of operator B 9) The HDC-FE of operator B forwards QoS set up information to the PD-FE of operator B 10) The TRC-FE of operator B requests QoS set up information to Network Node B 11) The I-CSC-FE of operator B forwards the service response message to the ICSC-FE of operator A 12) The P-CSC-FE of operator A forwards QoS set up information to the HDC-FE of operator A 13) The HDC-FE of operator A forwards QoS set up information to the PD-FE of operator A 14) The TRC-FE of operator A requests QoS set up information to the Network Node A 15) The originating user terminal receives the service response message from the PCSC-FE of operator A. Overall service scenario of service signal phase is shown in Figure 5.
Functional Model and Service Scenarios for QoS Enabled Mobile VoIP Service
395
Fig. 5. Overall service scenario of service signal phase
3.3 Real Service Provisioning Phase This phase exchanges the real time transport protocol (RTP) for voice service as following procedures 1) The RACF of operator B sets-up the pre path for maintaining the same level QoS of requested call.
Fig. 6. Architecture for Multi-media Voice Call Service
396
K.O. Lee, S.S. Lee, and T.W. Yoo
2) The RACF of operator A sets-up the pre path for maintaining the same level QoS of requested call. 3) An RTP session is set-up between the originating and terminating user terminal 4) Bidirectional real data is forwarded between the originating and terminating user terminals. Overall procedure of real service provisioning phase is shown in Figure 6. 3.4 Service Closing Phase This phase exchanges the required call termination information after transmission of real voice service message as following procedures 1) The originating user terminal forwards the service request bye message to the PCSC-FE of operator A 2) The I-CSC-FE of operator A interprets the service request bye message which was received from the originating user terminal 3) The P-CSC-FE of operator A forwards the QoS release information to the HDCFE of operator A 4) The HDC-FE of operator A forwards the QoS release information to the PD-FE of operator A 5) The TRC-FE of operator A forwards the QoS release message to the Network Nodes A 6) The I-CSC-FE of operator A forwards the service request bye message to the ICSC-FE of operator B 7) The I-CSC-FE of operator B interprets the service request bye message which was received from the I-CSC-FE of operator A 8) The P-CSC-FE of operator B forwards the QoS release information to the HDCFE of operator B 9) The HDC-FE of operator B forwards the QoS release information to the PD-FE of operator B 10) The TRC-FE of operator B forwards the QoS release message to the Network Nodes B 11) The P-CSC-FE of operator B forwards the service request bye message to the terminating user terminal 12) The terminating user terminal forwards the service response message to the PCSC-FE of operator B 13) The I-CSC-FE of operator B forwards the service response message to the ICSC-FE of operator A 14) The P-CSC-FE of operator A forwards the service response message to the originating user terminal 15) The RTP (Real Time Transport Protocol) session is closed. Overall service scenario and sequence diagram of service closing phase is shown in Figure 7.
Functional Model and Service Scenarios for QoS Enabled Mobile VoIP Service
397
Fig. 7. Overall service scenario of service closing phase
4 Conclusion Functional model is proposed for QoS guarantee mobile VoIP service to user terminals in WiFi, 3G, and mobile WiMAX networks, along with service scenarios and use cases. The mobile VoIP service is provided by application of make-beforebreak based seamless mobility in service control layer, Until now, the main services of mobile WiMAX and WiFi have been Internet services, and the main services of 3G have been circuit based voice service, packet based data and video service. The functional model, service scenario and use case provide guidelines for QoS guarantee mobile VoIP service among WiFi, 3G, and mobile WiMAX networks, for VoIP service access via mobile WiMAX or WiFi or 3G is under consideration
References 1. ITU-T Recommendation Y.2012, Functional Requirements and Architecture of the NGN (2006) 2. ITU-T Recommendation Y.2021, IMS for Next Generation Network (2006) 3. ITU-T Recommendation Y.2211, IMS based Real-time Conversational Multimedia Service over NGN (2007) 4. ITU-T Recommendation Y.2018, Mobility Management and Control Framework and architecture within the NGN transport stratum (2009) 5. IETF RFC 3220, IP Mobility Support for IPv4 (08/02) 6. IETF RFC 3775, Mobility Support in IPv6 (06/04)
Heuristic Approaches to the Multi-objective Network Design and Optimization for Wireless Data Networks Chutima Prommak1 and Naruemon Wattanapongsakorn2 1
School of Telecommunication Engineering, Suranaree University of Technology Nakhon Ratchasima, Thailand [email protected] 2 Department of Computer Engineering, King Mongkut’s University of Technology Thonburi, Bangkok, Thailand [email protected]
Abstract. In this paper, we present a multi-objective model for the wireless data network (WDN) design problem. The proposed model aims to determine the network configurations that optimize the network quality of services in term of the radio signal coverage and the network throughput availability to serve expected user traffic demand in the service area. The problem consists of the base station placement, the frequency channel assignment and the power level assignment. Since this problem is NP-hard, we develop a heuristic optimization techniques based on Tabu search algorithm to solve the problem. Numerical experiments were conducted to demonstrate the capability of the proposed multi-objective model and the heuristic algorithm. Keywords: Multi-objective optimization, Heuristic techniques, Network design, Wireless data networks.
1 Introduction Wireless data networks (WDN) have become potential solutions to bring broadband data access to users in area lacking of wired network infrastructure. Nowadays several wireless network technologies are available such as wireless local area networks (WLANs), UMTS networks and WiMAX networks. Efficient network design methods are required so that the resulting WDNs can provide high Quality of Services (QoS). Several works in literature have devoted to the study of wireless network design problems. Some existing works consider the radio network design for the UMTS networks considering the base station placement problems by using a single objective function [1-6]. Several works consider the WLAN network design problems [7-12] and some works devote to the WiMAX network design problems [13-15]. Most works focus on the placement problems of the wireless base stations [7-8],[13-15]. The design mainly considers the signal quality aspect, aiming to maximize coverage area [7] or minimize path loss over the service area by using the convex combination of the S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 398–410, 2010. © Springer-Verlag Berlin Heidelberg 2010
Heuristic Approaches to the Multi-objective Network Design and Optimization
399
average path loss and the maximum path loss [8]. Some works focus on minimizing the network cost by minimizing the number of installed base stations [13-15]. Other works consider the frequency channel assignment problems for WLANs [9-10]. [9] aims at maximizing the total received signal strength whereas [10] aims at maximizing the coverage availability. In [11-12], the authors consider both the base station placement and the frequency assignment problems by maximizing throughput capacity of the network but not considering the signal quality aspect. The majority of the published works in literatures have paid attention on either the base station placement problems or the frequency channel assignment problems with the objective to minimize the network cost or maximize signal coverage quality. While their contribution is significant, the existing network design methods do not simultaneously consider two important metrics, the signal coverage quality and the user data rate capacity, in the network design methods. For this reason, more efficient WDN design techniques are needed. In this paper we propose the multi-objective design approach to the WDN design problem. We aim to optimize not only the signal coverage availability but also the user satisfaction level on the available network throughput. The proposed network design model considers three important problems including the wireless base station placement problem, the frequency channel and the power level assignment problem. Additionally, the proposed method accounts for user distribution characteristics and is general that it can be applied to different wireless network technologies. The rest of the paper is organized as follows. The next section describes the problem definition of the WDN design model and gives the mathematical formulation of the design model. Section 3 describes the proposed heuristic solution techniques to solve the WDN design problems. Section 4 presents the numerical results and discussions. Finally, section 5 provides conclusions.
2 Problem Definition and Formulations The WDN configuration design problem is formulated as a Multi-Objective Problem (MOP) model, which combines two measures of network service qualities: the radio signal coverage and the data rate capacity. MOP seeks an optimal network configuration, i.e. the optimal location, frequency channel and power level of each wireless base station in the service area. Table 1 defines notations used in the model. The notations consist of sets, decision variables, and parameters. Parameters in the design process are classified into static and dynamic parameters. Static parameters do not change during the design process because they depend on standard requirements and the user traffic profiles. Static parameters specify the physical signal requirements, the Signal to Interference Ratio (SIR) level, the user traffic profiles and the base station capacity. Dynamic parameters are recomputed each time a variable changes value during the design process. Dynamic variables include the received signal strength, the interference level, and the average obtainable data rate. The mathematical formulation of MOP for the WDN design is written as follows:
400
C. Prommak and N. Wattanapongsakorn Table 1. Notations used in the mathematical formulations
Sets:
Parameters U G B P C T Ut
Definition Set of demand nodes (DNs) Set of signal test points (STPs) Set of candidate locations to install wireless base stations (BSs) Set of available power levels Set of available frequency channels Set of types of service levels A set of DNs with the service level type t U =U
∪
t
∀t∈T
Decision variables:
pj cj bj
uijt ghj Static parameters:
Dynamic parameters:
N Rt PRthreshold SIRthreshold W PRij ( p j , c j , b j ) Intf ij ( p j , c j , b j )
rit
Power level assigned to BS j Frequency channel assigned to BS j A site selection binary variable that equals 1 if site j is selected to install the wireless base station; 0 otherwise A user association binary variable that equals 1 if DN i∈U associates to BS j; 0 otherwise A signal availability binary variable that equals 1 if STP h∈G can receive a signal from BS j; 0 otherwise The number of wireless base stations to be installed in the service area The required network throughput for the service level type t Received sensitivity threshold (dBm) Signal to interference ratio threshold (dB) Base station capacity (bps) Received signal strength (in dBm) that DN i receives from BS at site j which uses power level pj and frequency channel cj Interference level (in dB) at DN i, when associating to BS at site j which uses power level pj and frequency channel cj Average network throughput available to DN i with the service level type t (in bps)
2.1 Objective Functions The proposed WDN design aims to devise an optimal network configuration that maximizes the signal coverage availability and the user satisfaction level. These objectives are mathematically written as follows: 1) Maximize signal coverage availability The first objective function (f1) measures the signal coverage availability. It is the normalized number of signal test points (STPs) of which the received signal strength and the Signal to Interference Ratio (SIR) are greater than the specified threshold.
∑ ∑ g hj
Maximize
f1 =
∀h∈G ∀j∈ A
G
(1)
Heuristic Approaches to the Multi-objective Network Design and Optimization
401
2) Maximize user satisfaction The second objective function (f2) measures the user satisfaction level. It is a normalized number of users that can obtain the required throughput. βt is a relative important weight of the service level type t. It is defined as the ratio of the required throughput of the service level type t to the maximum capacity of the base station (BS), βt=Rt/W.
⎛
⎛
∑ ⎜⎜ β × ⎜⎜ ∑ ∑ u ⎝ ⎝ ∑ (β × U )
t ij
t
∀t∈T
Maximize f 2 =
∀j∈A∀i∈Ut t
∀t∈T
⎞⎞ ⎟⎟ ⎟⎟ ⎠⎠
(2)
t
2.2 Constraints The network requirements, such as signal quality requirements and the base station capacity limitation, are incorporated into the mathematical model through the following constraints.
∑u
∀j∈B
≤ 1 ,∀i∈U
t ij
(
(3)
)
uijt PRij ( p j , c j , b j ) − PRthreshold ≥ 0 ,∀i∈U,∀j∈B
(
)
uijt PRij ( p j , c j , b j ) − Intfij ( p j , c j , b j ) − SIRthreshold ≥ 0 ,∀i∈U,∀j∈B
(
uijt rit − Rt
)
≥ 0 ,∀i∈U, ∀j∈B
(
g hj PRhj ( p j , c j , b j ) − PRthreshold
)
≥
0 ,∀h∈G,∀j∈B
(
)
(4) (5) (6) (7)
g hj PR hj ( p j , c j , b j ) − Intf hj ( p j , c j , b j ) − SIRthreshold ≥ 0 ,∀h∈G,∀j∈B
(8)
uijt ≥ b j ,∀i∈U,∀j∈B
(9)
g hj ≥ b j ,∀h∈G,∀j∈B
(10)
∑b
∀ j∈ B
j
≤N
(11)
uijt ∈ {0,1} ,∀i∈U,∀j∈B
(12)
g hj ∈ {0,1} ,∀h∈G,∀j∈B
(13)
b j ∈ {0,1},∀j∈B
(14)
402
C. Prommak and N. Wattanapongsakorn
Constraint (3) specifies that each demand node (DN) can associate to at most one BS. The decision variable
uijt can be equal to one if the received signal strength that DN i
received from BS at site j ( PR in dBm) and the SIR level with respect to BS at site j ij
(the received signal strength ( PR in dBm) less the interference level (Intfij in dBm)) ij
meet the receiver sensitivity threshold (PRthreshold) and the SIR threshold (SIRthreshold) as specified by constraint (4) and (5), respectively. In addition, when
uijt is equal to one,
constraint (6) must be satisfied. It ensures that the average throughput available to DN t
i with the service level type t ( ri ) is greater than the average network throughput requirement, Rt. The throughput analytical model is applied here to estimate an availt
able network throughput, ri .
uijt is equal to zero otherwise. Constraints (7) and (8)
assess the radio signal quality at STP h, testing the received signal strength and the SIR level. The decision variable
g hj can be equal to one if the received signal
strength at STP h transmitted from BS j ( PR ) and the SIR level with respect to BS at ij
site j (i.e., PR – Intfij) meet the received sensitivity threshold (PRthreshold) and the SIR ij
threshold (SIRthreshold). Otherwise, ghj is equal to zero. Constraints (9) and (10) specify that if DN i and STP h associate to BS at site j, BS must be installed at site j, i.e. b j is equal to one. Constraint (11) specifies the maximum number of BS to be installed in the service area. Constraints (12), (13) and (14) specify that variable
uijt , ghj and bj
are binary {0, 1} variables. 2.3 Scalarizing Function We convert the above multi-objective optimization problem into a scalar optimization problem using a scalarizing function written in Eq. (15). Maximize F = w1f1 + w2f2
(15)
where w1 and w2 are the weight coefficients associated with the normalized objectives (1) and (2), respectively. The relationship between the weight coefficients is that, given w1, w2 = 1 – w1. Solving the scalar optimization problem, the maximum point found is a particular point on the Pareto front corresponding to the weight coefficients used. For example, in fig.1, Fq is a scalarizing function when using a weight set q (w1q, w2q). Fq* is a single point on a feasible region boundary where the line defined by the weighted sum Fq is tangent. Fq* is a particular point on the Pareto front that is the maximum of Fq. An approximated Pareto front can be generated by solving the MOP model many times using different weight sets. Each weight set converges to different maximum point on the Pareto front. Let Q be the total number of weight sets and q be the index number of the weight set. The weight values are spread equally. The values of the qth weight set (w1q, w2q) are written in Eq. (16). w1q = (q-1)/(Q-1), w2q = 1- w1q
(16)
Heuristic Approaches to the Multi-objective Network Design and Optimization
403
f2
F q* F n* Pareto front F 1* Feasible region
Fq = w1q f1+ w2q f2 f1 Fig. 1. Weighted sum of the objectives and the Pareto front
3 Heuristic Solution Techniques This section presents a heuristic solution technique developed to solve the WDN design problem. The heuristic solution technique will determine the optimal network configuration specifying locations, power levels and frequency channels of the wireless base stations. The overall framework of the heuristic solution technique consists of two phases, including the initialization and the optimization phase. The following sections describe the detailed implementation of each phase. 3.1 Initialization Phase The initialization phase devises a good starting solution which provides initial values for wireless base stations’ parameters. This phase uses a greedy based search technique to find the best solution that maximizes the scalarizing function in Eq. (15). The main idea is to place one wireless base station as a time and the process repeats until a pre-defined number of base stations are placed. In each iteration, the algorithm aims at deriving optimal parameters (site, power level, and frequency channel) for each base station. The algorithm works cumulatively in the way that the parameters of the new base stations are derived so that they, together with those already assigned base stations, can provide highest value of the scalarizing function, Eq. (15). The following shows the pseudo code of the initialization algorithm.
404
C. Prommak and N. Wattanapongsakorn
Algorithm 1. Initialization algorithm Input: Objective functions (f1, f2), weight coefficients w1 and w2 Number of base stations Service area characteristics (# floors, size, wall materials) Wireless user characteristics (user density, distribution, traffic profile) Output: Initial network configuration specifying values of power level and frequency channel assigned to each base station
Step 1: Initialize parameters k = 1 // place the first wireless base station (BS) Step 2: while (k ≤ N) do // Find parameters location, power level and frequency channel for bk For all j∈B do Place BS k at location j temporarily For all p∈P do Assign power level p to BS k For all c∈H do Assign frequency channel h to BS k Compute the scalarizing function with BS k installed at j using p and c Record the obtained value as Fk(j,p,c) Select the maximum Fk(j,p,c) Assign the optimal parameters (j,p,c) to BS k permanently k++// place the next BS Step 3: Return the best solution found and stop
3.2 Optimization Phase The optimization phase to solve the multi-objective WDN design problem is developed based on the Tabu Search (TS) heuristic. TS was first suggested by Glover [16]. The basic idea of TS is to use memory strategies to guide the search process so that the solution space can be explored efficiently. TS process finds the best solution in the neighborhood of the current solution. The search avoids trapping in the local optima by allowing moves resulting in a degradation of the value of the objective function. Additionally, TS imposes restrictions on the choices of neighbor solutions in order to prevent cycling of solutions during particular iterations. Restrictions are imposed by making reference to memory structures. In this paper, we develop knowledge-based move operators providing the neighborhood information that helps facilitate the search process. The basic idea is to use information about the network quality of service to navigate the search space and to change the values of potential variables that can contribute to optimize the objective functions. The optimization phase begins by evaluating the initial network configuration (initial solution) generated by the initialization phase. The TS evaluates the neighbor solutions of the initial solution and moves to the best unrestricted solution (the solution with the highest degree of the quality of service improvement) in the neighborhood. Then, the best unrestricted solution is regarded as the current solution during the following iteration and is evaluated. The process of neighborhood evaluation is repeated until the termination rule is reached. The following shows the pseudo code of the TS optimization algorithm.
Heuristic Approaches to the Multi-objective Network Design and Optimization
405
Algorithm 2. TS optimization algorithm Input: Objective functions (f1, f2), weight coefficients w1 and w2 Number of base stations Service area characteristics (# floors, size, wall materials) Wireless user characteristics (user density, distribution, traffic profiles) Initial network configuration Output: Optimal network configuration (specifying base station parameters: locations, power levels, frequency channels)
Step 1: Set the current solution (s) = the initial network configuration i = 1 // initialize the iteration number Step 2: while (i ≤ Max_iter) do // Exploring the neighborhood 2.1: Generate neighborhood of s denoted as N(s) according to the specified neighborhood structure and the knowledge-based move operators. 2.2: Determine the best solution in N(s) while taking into account the tabu status and the aspiration criteria. The evaluation function is given by the scalarizing function in Eq. (15). 2.3: Determine the tabu tenure which is randomly generated from the interval [tmin, tmax] with uniform distribution. Update tabu status. 2.4: Update s = the best solution in N(s) and update the best-so far solution. i++// do the next iteration Step 3: Return the best solution found and stop
3.3 Neighborhood Structure and Knowledge-Based Move Operators This section describes the neighborhood structure and the move operators developed in this paper to efficiently solve the multi-objective WDN design problem. Evaluating all solutions in the neighborhood can take a lot of computational time because each evaluation requires the computation of the received signal strength and the SIR levels at all signal test points (STPs). The number of STPs depends on the size of the service area and the grid spacing used. Moreover, the size of the neighborhood can be large, depending on the size of the candidate set of each variable. To restrict the number of neighbor solutions examined in each iteration, we utilize the information about the quality of service status of the network to derive a set of potential neighbor solutions that are likely to lead the search to a better solution. The reason is that the current solution might violate some constraints or yield poor quality of services. In other words, signal strength and/or SIR level in some areas might be below the threshold and/or some wireless base stations might experience a traffic overload. The idea is to keep track of those location(s) where network performance is poor or does not meet the design requirements. This information is used to identify variables that should be adjusted to improve network performance based on the specified design criteria. To manage the information about network quality of services, we divide the service area into a unit area (UA) where the performance information described below is evaluated and recorded. The reason that the performance information is managed per UA is to provide a good indicator about the locations of problems, in case those locations are spread across the service region. An example described later in this section will illustrate this scenario.
406
C. Prommak and N. Wattanapongsakorn Table 2. Notations used in the neighborhood structure Parameters nUA
Gipr GiSIR Biov
Definition Total number of UAs managed in the service area Set of STPs in UAi where the received signal strength is below the threshold, for i = 1,…, nUA Set of STPs in UAi where the SIR level is below the threshold, for i = 1,…, nUA Set of base stations in UAi that cannot provide the required average throughput to associated wireless users for i = 1,…, nUA
For each UAi, the following information is observed and recorded. 1. Information related to low signal strength grids • Center of gravity of STPs in Gipr (denoted by CoGipr ) •
The lowest received signal strength among STPs in Gipr (denoted by lipr )
•
Location of the STP with the lowest signal strength (denoted by Locipr ) 2. Information related to low SIR grids • GiSIR , Number of STPs in GiSIR • Average SIR level of all STPs in GiSIR (denoted by avg iSIR ) • Center of gravity of STPs in GiSIR (denoted by CoGiSIR ) 3. Information related to overload wireless base stations • Biov • Center of gravity of the locations of wireless users assigned to b ov ∈ Biov ov
(denoted by CoGib ) where bov denotes an overload wireless base station Fig. 2 illustrates the performance information observed within the example service area. The red grids represent the STPs where signal strength is below the received sensitivity threshold. The red cross-circle represents the centers of gravity for those grids with low signal strength. The blue grids represent the STPs where SIR is below the acceptable threshold. The blue cross-circle represents the center of gravity for those grids with low SIR level. The small green circles represent those wireless users whose average data rate is below the required rate. The green cross-circle represents the center of gravity for those wireless users. The neighbors of the current solution are obtained by adjusting parameters of BSs which are likely to result in the improvement of the network quality of services. The information about the network quality of services described previously is used to identify a set of potential BSs whose variables should be adjusted. Then derive a set of neighbor solutions. To generate neighbors of the current solution, two types of move operators are developed. They include greedy moves and conservative moves. Each type deals with changing the power level, the frequency channel and the location of the potential BSs.
Heuristic Approaches to the Multi-objective Network Design and Optimization
407
Fig. 2. Examples of performance information management
In greedy moves, parameters of all potential BSs are changed simultaneously. The advantage of this strategy is that the network performance in multiple areas can be improved in one iteration. This allows a fast convergence of the search. However, greedy moves can be too aggressive and cause unintended degradation of the network performance in some cases, especially when the search is approaching an optimal solution. Conservative moves overcome this problem by changing only one parameter of BS at a time. Another advantage of the conservative move strategy is that it allows the search to escape from those solutions in which the greedy moves could not derive any better solution.
4 Numerical Results and Discussions This section demonstrates the numerical experiments of the wireless data network design. Here we consider a wireless local area network (WLAN) as an example of wireless data networks. The numerical experiments were conducted on the service area of the building with four floors. The dimension of each floor is 33m × 21m. The service area is divided into grids of size 1m×1m where the grid points specify a set of STPs, G. We consider 50 candidate sites to install the wireless base stations (i.e., |B| = 50). These candidate sites were uniformly located in the building. We consider 300 DNs (i.e., |U| = 300) of which the locations were uniformly distributed in the service area. We consider three types of service levels (i.e., |T| = 3). Each service level requires different amount of bandwidths, including 460 kbps, 260 kbps and 80 kbps.
408
C. Prommak and N. Wattanapongsakorn Table 3. Input parameters Parameter P C PRthreshold SIRthreshold R
Value {0, 7, 13, 15, 17, 20, 24} in dBm {2.412, 2.437, 2.462} in GHz -80 dBm 10 dB 54 kbps
75 Patch algor Tabu based
% Signal coverage
70
65
60
55
50 30
40
50
60
70
80
90
% User satisfaction
Fig. 3. Network quality comparison
Table 3 summarizes the input parameters of the network design problem. The design aims for 95% coverage availability at the edge of the signal coverage areas. In this case, a fading margin of 5.75 dB is applied in the signal coverage calculation which uses the partition-dependent path loss model with the path loss exponent of 3.3 and the reference distance of 1 m [17]. We consider the base stations using the antenna with gain 2.5 dB. Parameters used in the TS optimization phase were selected from pilot studies that performed the best search. The Max_iter is set to 150. The tabu tenure [tmin, tmax] is set to [4, 8] and the number of unit areas, nUA, is set to 8, i.e. 2s on each floor. Fig. 3 plots the results obtained by using the patch algorithm [11] to solve the WDN design problem, compared with those using the proposed TS heuristic. The graph compares the network quality of services in term of the signal coverage availability and the user satisfaction level obtained by solving the problem nine times, using nine different weight sets (Q = 9). The points in fig. 3 are the maximum points found with different weight sets. The graph shows that the results obtained by the patch algorithm [11] are dominated by those obtained by the proposed TS heuristics. In other words, the propose TS heuristics can derive better network configurations
Heuristic Approaches to the Multi-objective Network Design and Optimization
409
resulting in higher network quality of services in term of the user satisfaction level and the signal coverage availability. Furthermore, it can be observed from fig. 3 that as the w2q increases from 0 to 1 (from left to right), the user satisfaction level increases about 40% whereas the signal coverage availability decreases about 10%. Thus, incorporating the issues of the radio signal quality and the user satisfaction level into the design model can significantly improve the network quality of services in term of the user satisfaction level while slightly degrading the signal coverage availability. These prove an efficiency of the proposed MOP model for the WDN design.
5 Conclusions In this paper, we have studied the wireless data network design problem and developed a multi-objective mathematical model to determine three important parameters of the network configuration, including the number of base stations, their locations, frequency channels and power levels. In addition, we proposed a heuristic solution techniques based on Tabu search algorithm to solve the problem. Numerical results have shown that the proposed multi-objective network design model that incorporates the issues of the radio signal quality and the user satisfaction level into the design model can significantly improve the network quality of services in term of the user satisfaction level while slightly degrading the signal coverage availability. Furthermore, the results have shown that the proposed heuristic techniques could yield network configurations of which the network performances outperform that of the network configurations obtained by other techniques. The proposed multi-objective model and heuristic algorithms can be applied to solve the network design problems of different types of the wireless data networks. We currently investigate this direction.
Acknowledgment This work was supported by the Thailand Research Fund (Grant number MRG5080381) and the Suranaree University of Technology.
References 1. Amaldi, E., Capone, A., Malucelli, F.: Optimizing UMTS Radio Coverage via Base Station Configuration. In: 13th IEEE International Symposium on Personal, Indoor and Mobile Radio Communications, vol. 1, pp. 315–319. IEEE Press, New York (2002) 2. Amaldi, E., Capone, A., Malucelli, F.: Planning UMTS Base Station Location: Optimization Models with Power Control and Algorithms. IEEE Transactions on Wireless Communications 2(5), 939–952 (2003) 3. Zhang, J., Guo, L., Wu, J.Y.: An Integrated Approach for UTRAN Planning and Optimization. In: IEEE 59th Vehicular Technology Conference, vol. 4, pp. 2360–2364. IEEE Press, New York (2004)
410
C. Prommak and N. Wattanapongsakorn
4. Cardeiro, J., Correia, L.M.: Optimisation of Base Station Location in UMTS-FDD for Realistic Traffic Distributions. In: 17th IEEE International Symposium on Personal, Indoor and Mobile Radio Communications, pp. 1–5. IEEE Press, New York (2006) 5. Yang, J., Aydin, M.E., Zhang, J., Maple, C.: UMTS Base Station Location Planning: a Mathematical Model and Heuristic Optimization Algorithms. IET Communications 1(5), 1007–1014 (2007) 6. Amara, S., Boujemaa, H., Siala, M.: Planning base station location for the UMTS network. In: 2nd International Conference on Signals, Circuits and Systems, pp. 1–6 (2008) 7. Kamenetsky, M., Unbehaun, M.: Coverage Planning for Outdoor Wireless LAN Systems. In: International Zurich Seminar on Broadband Communications, pp. 491–496 (2002) 8. Kouhbor, S., Ugon, J., Kruger, A., Ruginov, A.: Optimal Placement of Access Point in WLAN Based on a New Algorithm. In: International Conference on Mobile Business, pp. 592–598 (2005) 9. Rodrigues, R.C., Mateus, G.R., Loureiro, A.A.F.: On the Design and Capacity Planning of a Wireless Local Area Network. In: IEEE Conference on Network Operations and Management Symposium, New York, pp. 335–348. IEEE Press, New York (2000) 10. Prommak, C., Deeka, B.: On the Analysis of the Optimal Frequency Planning for Wireless Local Area Networks. In: 4th PSU Engineering Conference, pp. 77–81 (2005) 11. Ling, X., Yeung, K.L.: Joint Access Point Placement and Channel Assignment for 802.11 Wireless LANs. IEEE Transactions on Wireless Communications 5(10), 2705–2711 (2006) 12. Gondran, A., Baala, O., Caminada, A., Mabed, H.: Joint optimization of access point placement and frequency assignment in WLAN. In: 3rd IEEE/IFIP International Conference in Central Asia on Internet, pp. 1–5. IEEE Press, New York (2007) 13. Teterin, V., Hurley, S., Allen, S.M.: Optimizing Performance of WiMAX Networks Through Automated Site Selection. In: International Conference on Convergence of Telecommunications, Networking and Broadcasting, pp. 28–29 (2007) 14. Mousavi, M., Chamberlanda, S., Quintero, A.: A New Approach for Designing WiMAX Networks. In: Canadian Conference on Electrical and Computer Engineering, pp. 487–490 (2007) 15. Teterin, V., Hurley, S., Allen, S.M.: A Staged Optimization Framework for Cost Optimized WiMAX Network Design. In: 4th International Conference on Wireless and Mobile Communications, pp. 185–190 (2008) 16. Glover, F., Laguna, M.: Tabu Search. Kluwer Academic Publisher, Dordrecht (1997) 17. Seidel, S.Y., Rappaport, T.S.: Path Loss Prediction Models for Indoor Wireless Communications in Multi-floored Buildings. IEEE Transactions on Antennas Propagation, 207–217 (1992)
Call Admission Control in Single and Two-Tier Cellular Networks Manfred Schneps-Schneppe1 and Janis Sedols2 1 Ventspils University College, Inzenieru st 101, Ventspils, LV-3601 Latvia 2 Institute of Mathematics and Computer Science, University of Latvia, Raina boulevard 29, Riga, LV-1459 Latvia [email protected]
Abstract. We consider four strategies for call admission control (CAC) in single and two-tier cellular networks, which are designed to ensure advantage of handover calls: dynamic redundancy (cutoff priority scheme), partial dynamic redundancy (fractional guard channel scheme), static redundancy (rigid division-based CAC scheme) and restriction of the number of new calls admitted (new call bounding scheme). We show the advantage of dynamic reservation by numerical analysis. We strictly prove it in the case of two-channel system with losses. Keywords: Mobile communication, call admission control, channel reservation, dynamic redundancy.
1 Call Admission Control Schemes The success of mobile and wireless networks depends significantly on the performance of call admission control (CAC) schemes which contributes to the overall network performance. Due to the limited availability of resources, mobility of users, and quality of service (QoS) provisioning for applications whose demand and nature are highly heterogeneous, CAC schemes now play a more central role in QoS provisioning for next generation mobile and wireless networks [1,2,3,4]. In this paper, we briefly compare existing CAC schemes and examine the analytical methods employed by these schemes for computing new/handoff call blocking probabilities (no waiting places are considered). In the great extent, our purpose is tutorial one because there are plenty of existing papers on CAC schemes but as a role they contain incomparable numerical results. For example, the paper by Yilmaza and Chen [5] is the closest one to our study but because of the inaccuracy in statistical modeling it is hard to compare our results. We consider four different Call Admission Control strategies: Strategy 1 - Dynamic redundancy: The cutoff priority scheme is to reserve a portion of channel for handoff calls; whenever a channel is released, it is returned to the common pool of channels. S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 411–420, 2010. © Springer-Verlag Berlin Heidelberg 2010
412
M. Schneps-Schneppe and J. Sedols
Strategy 2 - Partial dynamic redundancy: The fractional guard channel scheme (the new call thinning scheme) is to admit a new call with certain probability (which depends on the number of busy channels). Strategy 3 - Static redundancy: Divide all channels allocated to a cell into two groups: one for the common use for all calls and the other for handoff calls only (the rigid division-based CAC scheme). Strategy 4 - New call bounding scheme: Limit the number of new calls admitted to the network. In the case of single-tier network, we consider one V-channel cell without waiting places and two Poisson call flows: handoff calls of intensity A and new calls of intensity B. The holding time is exponentially distributed with mean equal one (ignoring the fact that handoff calls were already serviced for some time before entering into this cell site). In the case of two-tier network [6,7], we consider two mobility class calls with three or seven micro-cells overlaid by one large macro-cell. The high mobility calls of intensity A are serviced by macro-cell only. The low mobility calls of intensity B are serviced by micro-cell, as the first choice, and by macro-cell, as the second choice if reservation strategy admits it. In both cases, our optimization criteria is the same - to get the maximum revenue if each serviced A-call costs K units and each serviced B-call costs one unit (К > 1).
2 Single-Tier Network 2.1 Dynamic Redundancy Strategy Is Better Than Partial Dynamic Redundancy Strategy Two channels, partial dynamic redundancy scheme. Let’s start from the 2nd strategy: fractional dynamic redundancy. This strategy seems to be more general than the dynamic redundancy one, we shall prove that such statement is not true. The system follows three-state Markov process (figure 1) having the following parameters: V=2, А and В – call flow intensities, pi – the probability to take В-call for service in state i.
Fig. 1. Partial dynamic redundancy: two-channel state diagram
The stationary state probabilities Pi are defined by equations (up to normalization factor):
Call Admission Control in Single and Two-Tier Cellular Networks
413
P0=1 P1=A+Bp0 P2= (A+Bp0)(A+Bp1)/2 The average revenue H equals to: H=
AK ( P0 + P1 ) + B( p0 P0 + p1 P1 ) 2( AK + Bp0 + ( A + Bp0 )( AK + Bp1 ) = P0 + P1 + P2 2 + ( A + Bp0 )(2 + A + Bp1 )
.
(1)
This expression is the ratio of two polynomials, each one with probabilities p0 and p1 included in the first power. Consider the expression (1) as a function of one of the probabilities p. After multiplying by the relevant constant we can get it to the form (p+a)/(bp+c). The derivative of this expression has the form (a–c)/ (bp+c)2. Consequently, the expression (1) has invariable sign in the range of values (0, 1), and its extreme values are located at the ends of the interval, i.e. probabilities p0 and p1 can only take values 0 or 1. Therefore, the dynamic redundancy strategy has advantage over partial dynamic redundancy strategy. Common case. Theorem. For V–channel loss system when B-calls are accepted with some probability pi, depending on the number of busy channels i (i=0, 1, … , V), the optimal partial dynamic redundancy contains in the choice of probabilities pi, equal to 0 or 1.
Fig. 2. Partial dynamic redundancy: the common case
The stationary state probabilities Pi are defined by equations (up to normalization factor): F0=1, F1=A+Bp0, F2= (A+Bp0)( A+Bp1)/2, …, FV= (A+Bp0)( A+Bp1)…( A+BpV-1)/V! We should minimize the lost revenue, which is equal to
( F0 p0 + F1 p1 + ... + Fv −1 p v −1 ) B + Fv ( AK + B) . F0 + F1 ... + Fv
(2)
Note that this expression is the general case of formula (1). As above, the expression (2) is the ratio of two polynomials, each of which includes the probability pi in the first power. Consider the expression (2) as a function of any one of the probability pi and by same argument we prove Theorem.
414
M. Schneps-Schneppe and J. Sedols
Problem 1. The previous theorem does not imply which of the probabilities pi are equal to 0 or 1. Common sense is that pi = 1 for i = 1, ..., R, and pi = 0 for i = R +1, ..., V. How does it prove? 2.2 Dynamic Redundancy Strategy Is Better Than Static Redundancy Strategy Two channels, dynamic redundancy. This model (strategy 1) is a special case of the previous one: you can reserve 0, 1 or 2 channels, corresponding to choice of probability (p0, p1) in the form of (1,1) (1,0) or (0,0), which, in own order, corresponds to the values of R of 0, 1 or 2. Accordingly, the revenue from formula (1) takes the form:
H0 =
2( AK + B )(1 + A + B ) , 2(1 + A + B ) + ( A + B ) 2
(3)
H1 =
2( B + AK (1 + A + B )) , 2 + ( A + B )(2 + A)
(4)
H2 =
2 AK (1 + A) . 2 + 2 A + A2
How many channels to reserve? In depends on parameters K, A and B. To find the optimal value of R, one should solve two equations pointing to the boundary of K: H0=H1 and H1= H2 We get
K1 = 1 +
2+ A+ B , A(1 + A + B)
K2 = 1+
2( A + 1) . A2
(5)
It is easy to verify that for any values of A and B, the inequality K1 < K2 is true, since
2 + 2 A + 2 B + A 2 + AB K 2 − K1 = . A 2 (1 + A + B) Hence we have the following solution for optimal redundancy R at V = 2: R=0, if K
Call Admission Control in Single and Two-Tier Cellular Networks
415
This Markov model has four states: 00 – both channels are free, 01 - the common channel is engaged, 10 — the guard channel is engaged, 11 - both channels are engaged (Figure 3).
Fig. 3. Two channels, static redundancy: the model and state diagram
From equations of stationary equilibrium we obtain the state probabilities (up to a normalizing factor): P00=2+2A+B P01=(A+B)2+2B P10=A(2+A+B) P11=A((A+B)2+A+2B) The average revenue takes the form:
H4 =
AK (2 + 4 A + 3B + 2 A 2 + 3 AB + B 2 ) + B (2 + 4 A + B + A 2 + AB ) . 2 + 4 A + 3B + 3 A 2 + 5 AB + B 2 + A 3 + 2 A 2 B + AB 2
Our aim is to prove that the static redundancy strategy can’t be more profitable than dynamic redundancy strategy. That is, we must prove that for any values of A, B and K at least one of the values of H0 and H1 are not smaller than H4. It is easy to verify that, replacing K in this formula by K1 from expression (5), we obtain H4 = 2. The same result we get, substituting this value K1 for K in expressions (3) and (4), i.e. for any A, B and given K = K1, the equalities H0 = H1 = H4 = 2 are true. Further, we note that H0, H1 and H4 are linear functions of K, i.e. straights. Note that at K
416
M. Schneps-Schneppe and J. Sedols
Fig. 4. Dependence of revenue on the size of the reserve R for the dynamic redundancy D and fixed redundancy F: the cost of handover call K = 2
2.3 New Call Bounding Scheme (Strategy 4) Two channels. In case of 2-channel system, the only nontrivial variant in the strategy 4 "Restriction of the number for B-calls admitted" is: no more than one B-call. State diagram of the model looks similar to that in Figure 3, and the expression of the average revenue is:
H5 =
2 ( AK ( A + B + 1) + B ( A + 1)) 2 ( A + B + 1) + A ( A + 2 B )
This strategy is similar to strategy 3 (static redundancy). As shown in Figure 5, straights H4 and H5 are close: to point К <1.25 strategy 4 is a little more profitable, and at 1.25
Fig. 5. Dependence of the revenue from the handover call cost K for three models: D-dynamic redundancy, F – static redundancy and L – restriction of the number of admitted B-calls
Call Admission Control in Single and Two-Tier Cellular Networks
417
Conclusion. Hence it is mathematically strictly proved that the optimal service strategy in a two-channel system is a dynamic redundancy. Graphically, this fact is illustrated in Figure 5: zero redundancy R = 0, profitable to the point of K <1.25 (direct H0) and redundancy R = 1 has advantage at 1.25
Fig. 6. Dependence of revenue on the size of the reserve for three strategies: D-dynamic redundancy, F – static redundancy and L – restriction of the number of admitted B-calls
Conclusion. The results of numerical analysis confirm that the optimum strategy is dynamic redundancy. This statement is strictly proved in the case of two-channel system.
3 Two-Tier Network There are several reasons for designing multi-tier cellular networks. One is to provide service for mobile terminals with different mobility and traffic patterns. The required performance measures can be met if the traffic and mobility patterns can be divided into more homogeneous parts and treated separately. Consider a system where there are two mobility classes. If the cell radii are optimized for the slower mobile terminals, then the faster ones will have to make a lot of handoffs during one communication session. On the other hand, if the optimization is made regarding the handoff performance of faster mobile terminals, then the load in each cell may exceed acceptable limits. In multi-tier cellular networks, different layers give the designer the opportunity of class based optimization.
418
M. Schneps-Schneppe and J. Sedols
Fig. 7. A macro-cell covering a) three and b) seven micro-cells
Two-tier cellular system is studied. We consider two mobility class calls in case of three or seven micro-cells overlaid by one large macro-cell (Figure 7). The arriving calls are serviced as follows. The mobility class of the mobile terminal is determined. The high mobility calls of intensity A are serviced by macro-cell only. The low mobility calls of intensity B are serviced by the appropriate micro-cell, as the first choice, and by macro-cell, as the second choice, if reservation strategy admits it. In both cases, our optimization criteria is the same - to get the maximum revenue if each serviced A-call costs K units and each serviced B-call costs one unit (К > 1). Once the calls reach the macro-cell level, they are not differentiated according to their mobility classes. Therefore, the calls of the high mobility class terminals and the overflowed handoff calls from micro-cells are treated equivalently. New calls from micro-cells may not use the guard (reserved) channels upon their arrival. If no nonguard channel is available, new calls are blocked out of the system. The high mobility calls are blocked if all macro-cell channels are busy. Figure 8 shows schematically how the calls are serviced and what order is followed in servicing them.
Fig. 8. Two-tier cellular network call flow model
Call Admission Control in Single and Two-Tier Cellular Networks
419
Fig. 9. Dependence of the revenue on the reserve for two-tier network: 3 micro-cells and 1 macro-cell
We compare two reservation strategies (as above in the case of single-tier network): a) Dynamic redundancy: The cutoff priority scheme is to reserve a portion of channel for high mobility calls in macro-cell; whenever a channel is released, it is returned to the common pool of channels. b) Static redundancy: Divide all macro-cell channels allocated to a cell into two groups: one for the common use for all calls and the other for high mobility calls only (the rigid division-based CAC scheme).
Fig. 10. Dependence of the revenue on the reserve for two-tier network: 7 micro-cells and 1 macro-cell
420
M. Schneps-Schneppe and J. Sedols
The numerical results for two two-tier network examples are obtained. They are not qualitatively different from the results of single-tier model discussed above. Figure 9 (three micro-cells and one macro-cell) and Figure 10 (seven micro-cells and one macro-cell) show that the dynamic redundancy strategy gives the higher maximum revenue in both cases if the reserved channels R are properly chosen. The parameters are as follows: A - high mobility call flow, B - low mobility call flow, V1 number of micro-cell channels for each cell, V2 - number of micro-cell channels.
4 Conclusion We evaluate the performance of several CAC schemes from the point of revenue optimization criterion. Our mathematical and numerical results show the advantage of dynamic redundancy scheme comparing to three others: Partial dynamic redundancy, Static redundancy, and New call bounding scheme.
References 1. Stallings, W.: High-Speed Networks: TCP/IP and ATM Design Principles. Prentice-Hall, Englewood Cliffs (1998) 2. Katzela, I., Naghshinch, M.: Channel assignment schemes for cellular mobile telecommunication systems: A comprehensive survey. IEEE Personal Comm. 3, 10–31 (1996) 3. Fang, Y., Zhang, Y.: Call admission control schemes and performance analysis in wireless mobile networks. IEEE Trans. Vehicular Tech. 51(2), 371–382 (2002) 4. Wang, X., Fan, P., Pan, Y.: A more realistic thinning scheme for call admission control in multimedia wireless networks. IEEE Trans. Comp. 57(8), 1143–1147 (2008) 5. Yilmaza, O., Chen, R.: Elastic threshold-based admission control for QoS satisfaction with reward optimization for servicing multiple priority classes in wireless networks. Inform. Proc. Letters 109(15), 868–875 (2009) 6. Lin, K.-J., et al.: Channel-sharing strategies in two-tier cellular PCS systems. Comp. Commun. 25(14), 1333–1342 (2002) 7. Niyato, D., Hossain, E.: Call admission control for QoS provisioning in 4G wireless networks: issues and approaches. IEEE Network 19(5), 5–11 (2005)
Joint Admission Control and Resource Allocation for Multiuser Loading in LTE Networks V. Venkatkumar1 , T. Haustein1 , and M. Faulkner2 1
2
Fraunhofer Institute for Telecommunications, Heinrich-Hertz-Institut, Einsteinufer 37, D-10587 Berlin, Germany Center for Telecommunication and MicroElectronics Victoria University, Melbourne, Australia
Abstract. In this paper, we look at resource allocation for OFDMA downlink with frequency dependent modulation and coding. Physical layer resource blocks are allocated with an objective to satisfy the bit rate demands of user applications. This schematic can be applied for the guaranteed bit rate mode in LTE. For this requirement we layout performance objectives of scheduling. Allocation methods that can solve the problem with low complexity are presented. Specifically, a joint resource block allocation and admission control framework is proposed for situations of high network load. Numerical results are shown using channels from a measurement.
1
Introduction
Centralised resource allocation can be performed in cellular systems to exploit the channel diversity among many users, which is termed as multi user diversity. Exploiting multi user diveristy has been a popular aspect in recent systems such as 3GPP high speed packet access (HSPA) and the upcoming long term evolution (LTE) [5]. In LTE, an enhancement of multi user diversity is available from frequency dependent resource allocation in orthogonal frequency division multiplexing access (OFDMA). Blocks of frequency subcarriers can be selectively allocated to a user based on the channel response. LTE downlink can increase the cell throughput by efficient resource allocation. Apart from cell throughput, there is always a requirement for fairness because users are distributed at different distances and an user at the cell edge may never be served. To provide fairness, a base station can effectively use the channel quality feedback and the quality of service parameters of the user. LTE defines quality of service attributes such as priority, deadline, packet error rate etc for which the values are set based on the application. Application here refers to the class of traffic such as voice, streaming video or file download. In a LTE network these applications can be supported in two ways: guaranteed bit rate (GBR) and non guaranteed bit rate mode [6]. In the former mode, an absolute S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 421–435, 2010. c Springer-Verlag Berlin Heidelberg 2010
422
V. Venkatkumar, T. Haustein, and M. Faulkner
bit rate guarantee is provided to the user and some bandwidth gets reserved for this purpose. A youtube video that is streamed to a mobile phone using real-time streaming protocol is a scenario for GBR. In the latter bit rate mode, bit rates are provided on a relative fairness basis. For relative bit rate fairness in OFDMA, we refer to the schemes in [7-10]. A well known approach is the proportional fair algorithm in [8], [9] which distributes resources evenly [1], [11]. A network may cater to many GBR users and a base station has to transmit the guaranteed amount of data to those users. To perform this task, a base station scheduler may allocate resource blocks by selection. The existing approaches for an allocation under a transmit power constraint are as follows. A linear programming problem is framed in [7] and [13] for feasible rate requests. For low complexity approaches, [7] uses a top-down descent and [13] proposes a bottom-up ascent. In [12] and [15], the problem is generalised with infeasibile rate demands. Generally speaking, infeasibilities occur when channel conditions to some users is adverse and yet many rate guarantees have to be met. For simplification, [12] and [15] modify the problem to maximising a common multiple of rate demands across all the users. A statistical criterion is proposed [15] for admission based on the estimate of common multiple. However, a suitable algorithm for admission and resource allocation is not provided. In a general setting, such a mechanism may be needed to handle arbitrary user rate requests. For example, consider a scenario with two users A and B whose applications require a similiar bit rate. User A may place a straightforward rate request while B may greedily ask for a higher rate. Using the existing approach, A’s quality of service is degraded by B’s request, eventhough A can be served with better quality. Thus, we can not let few rate requests to determine the perceived quality of the network. To tackle this issue we aim to maximise the number of satisfied users, i.e number of users who are fulfilled with the requested rate. Accordingly, we constitute a mechanism of joint admission control and resource block allocation in a time slot. The proposed schemes in this paper not only take into account the relative rate requests but also the relative channel qualities of the users. Numerical results show that the schemes behave well in situations of high network load. The numerical results are shown as scaling ratio between user requests and fulfillments using the parameters of LTE. To this end, our novel approach is seen to improve scaling performance as compared to random admissions. For numerical results we use channels from a measurement in 2.6 GHz carrier frequency and 20 MHz bandwidth. The paper is arranged as follows. In section 2, system model is described. In sections 3, and 4, the detailed problem statement and solution are given respectively. In section 5 low complexity integer solutions are provided. Finally, in section 6 numerical results are shown.
2
System Model
The following framework is used for cellular LTE OFDMA downlink. In a macrocell downlink, the base station transmits with a sum power constraint of P Watts to K users who have been negotiated the GBR mode. The users are to be served
Joint Admission Control and Resource Allocation for Multiuser Loading
423
Fig. 1. Functional description of downlink scheduling
with a specified amount of bits within a time duration, which is defined as the guaranteed bit rate. Bit loading is performed on allocated resource blocks. A set of L contiguous frequency subcarriers and T OFDM symbols makes a resource block. There are M available resource blocks for transmission in the downlink in a transmit time interval (TTI). A TTI is of 0.5 ms duration within an OFDM raP Watts dio frame of 10 ms. Using uniform power profile, a transmit power of ML is allocated on each subcarrier. In the recently finalised LTE standard [5], a single modulation and coding scheme (MCS) is applied for an user over the scheduled resource blocks. The scheme can be improved by using an independent modulation and coding scheme on each resource block. We exploit this framework and let each resource block have its own MCS. The MCS level of each resource block is informed to the base station by the user equipment (UE) as in Fig. 1. To facilitate quality of service (QoS), the UE calculates the MCS levels by taking into account a QoS parameter such as packet error rate. In adaptive MCS, the base station applies the MCS based on the user and resource block pairing that has been selected. Service flow refers to the bit rate level of the content, as requested by an UE for QoS. We use admission control of an user’s service before resource block allocation in a TTI. A base station scheduler may selectively admit certain flows of an user. User flow admission and resource allocation are therefore influenced by feedback of MCS and as well as QoS request. 2.1
Fairness in Allocation
In cellular systems, some amount of fairness is needed in resource allocation so that service can be offered over a wide coverage area. A fairness utility function may be F = f (r1 , r2 ..rK ),
(1)
where ri is the scheduled bit rate of user i. Maximisation of the utility function results in a desired fairness level.
424
V. Venkatkumar, T. Haustein, and M. Faulkner
An example of a utility function is the logarithmic sum of rates, defined by i=K F = i=1 log(ri ). Maximising this utility is known as the proportional fair resource allocation. Looking at the utility function, it can be deduced that the rates ri > 0 ∀i, for F to be maximised. In this way, a proportional fair allocation results in non zero allocated bit rates. However, this utility may not cater for arbitrary constraints ri ≥ di ∀i, where di is real positive. Naturally, it is useful the non guaranteed bit rate mode to achieve fairness in relative bit rate levels. For the guaranteed bit rates, a scheduler needs to cater for absolute bit rate values. So we replace the fairness utility function with a linear programming (LP) problem. 2.2
LP Formulation
A frequency selective channel may consist a different channel quality in each resource block. Let uic be the MCS level supportable to user i on resource block c. Let di be the guaranteed number of bits that has to be provided to user i’s flow within a time duration T symbols, (termed as the guaranteed bit rate). The problem is represented in the linear programming form as M K
uic xic
(2)
∀ {i = 1, 2.., K}
(3)
xic = 1 ∀c = {1, 2, .., M }
(4)
max LT
c=1 i=1
s. t ,
LT
M
uic xic ≥ di
c=1 K i=1
0 ≤ xic ≤ 1
∀i, ∀c,
(5)
where xic represent the fraction of subcarriers that is allocated from resource block c to user i. The constraint in (3) specifies that the scheduled bit rate to user i must be greater than the target di . (4) is the resource constraint of L subcarriers per resource block. If the variables xic should only be 0 or 1, the problem is an integer programming (IP) problem, for which the optimal solution is difficult to obtain. In the allocations, more than one resource block can be allocated to an user and in each of the resource blocks a different MCS level can be loaded. We refer to the problem in (2)-(5) as multiuser loading problem.
3
Problem Statement
The bit rate demands in (3) may be initiated by user equipments via feedback as shown in Fig. 1. These bit rate requests may be used as the guaranteed bit rate values by the network. All of these bit rates may not be admissible to the base station. Therefore, the constraint set in (3) can be infeasible in which case the challenge is to identify the best feasible subset of (3).
Joint Admission Control and Resource Allocation for Multiuser Loading
425
The problem is to identify and remove the infeasible constraints so that resource allocation can be efficiently performed for the remaining constraints. This process is not trivial because in most cases there is no prior knowledge about the infeasible constraints. In this situation, we re-formulate the objective to satisfy as many constraints as possible while performing a secondary objective of sum rate maximisation. The objective functions for multi-user loading are re-defined as max
Ui
s.t,
Ui = 1,
i
max
if
uic xic ≥ di
c
ri
s.t,
ri =
uic xic
∀i ∈ {1, 2, .., K} ,
(6)
∀i ∈ {1, 2, .., K} .
(7)
c
i
A brief numerical example is shown for the multi-objective optimisation of (6)(7). Suppose there are 4 users and each user demands 1 Mbps. Consider two resource allocation policies. Policy A which allocates a rate tuple in Mbps as (1.7, 1.5, 0.7, 0.6) and another policy B which allocates (1.1, 1, 1, 0.3). Then on account of the user objective in (6), policy B is better than policy A. If there exists another policy C which allocates (1.1, 1, 1, 0.4), policy C is more efficient than policy B because of the better network objective (7). One way to achieve the maximisation in (6)-(7) is to search for binary integer block pairings. solutions of xic ∀i, ∀c with full enumeration of user and resource In case the maximising solution for the primary objective i U i is not unique, then the solution which additionally maximises the objective i ri is optimal. Full enumeration consists of K M entries and this complexity becomes prohibitive for a high value of M . Therefore, we look at low complexity approaches for the search.
4
Joint Admission Control and Allocation
Focusing on the primary objective in (6), we begin by introducing binary variables ai for admission control and re-write the problem as max
K
ai
(8)
∀i ∈ {1, 2, .., K}
(9)
ai ∈ {0, 1}
(10)
∀c ∈ {1, 2, .., M }
(11)
0 ≤ xic ≤ 1,
(12)
i=1
s. t
LT
M
uic xic ≥ di ai
c=1
K
xic ≤ 1
i=1
where the equality in (4) has been changed to inequality in (11). Thus solutions for ai and xic are to be found and the two problems can be realised to be
426
V. Venkatkumar, T. Haustein, and M. Faulkner
coupled. Hence we term this as joint admission control and resource allocation. If the variables ai are relaxed to be real numbers between 0 to 1, (9)-(12) become LT
M
uic xic ≥ di ai ,
s.t
ai ≥ 0 ∀i ∈ {1, 2, .., K}
(13)
c=1
LT
M
uic xic ≤ di
∀i ∈ {1, 2, .., K} .
(14)
c=1
M It can be deduced from (13) that ai = d−1 i [ c=1 uic xic − si ], where si ≥ 0 are slack variables so as to replace the inequality in (13) with equality. By further setting si = 0 ∀i so as to maximise (13), the problem turns into weighted sum rate maximisation with inequality constraints as shown below. M
d−1 i uic xic
(15)
xic ≤ 1 ∀c ∈ {1, 2, .., M }
(16)
max LT
i
s. t ,
K
c=1
i=1
LT
M
uic xic ≤ di
∀i ∈ {1, 2, .., K} ,
(17)
0 ≤ xic ≤ 1.
(18)
c=1
The modified LP in (15)-(18) can be solved efficiently via primal-dual methods such as LIPSOL [3]. From the relaxation solution, we develop a further relaxation lower bound for the case of binary admission variables ai . For this purpose, let us define an admission list as the subset of users out of the K users who are scheduled resource blocks. The optimal admission list is obtained as follows. 1. Initiate an admission list A consisting of all K users. Solve the LP in (15)(18) for the admission list A. Obtain the output bit rates ri = c uic xic . 2. In step t, remove the user with the largest bit rate deficit di − ri from the admission list. This is the new admission list. 3. Solve the LP for the new admission list. Store the admission list and the corresponding bit rates. Goto step t + 1 until finding an admission list with all the bit rates ri ≥ di ∀i ∈ A. 4. From the stored results in 3) and 4), select the admission list which maximises the primary objective in (8). For most input cases, the linear program gets solved in polynomial time. Still it may not be easy to implement in an online scheduler because of matrix inversion with large number of variables and sensitivity to the step sizes in the algorithm. We therefore refer the iterative lower bound to be an useful offline algorithm. For faster online techniques, we approach the problem via the Hungarian algorithm [2].
Joint Admission Control and Resource Allocation for Multiuser Loading
5 5.1
427
Integer Solutions Assignment Scheme
In this section, we provide methods for fast allocation solutions which may be used for real-time implementation. Specifically, we look to obtain suboptimal binary integer solutions of xic without needing full enumeration. The binary solutions give a benefit of low overhead in downlink resource map. Let us as˜ are available for sume that some arbitrary set of resource blocks denoted as M ˜ , ∀i. Let allocation out of the M resource blocks. This means xic = 0 ∀c ∈ M ˜ us also assume that a user subset K satisfies the constraints in (17). Therefore ˜ are eligible to be allocated some more subcarriers. We may therefore users in K introduce a resource flow mechanism and allocate L subcarriers to each user in ˜ With this new constraint, the problem becomes K. max LT d−1 (19) i uic xic ˜ c∈M ˜ i∈K
s. t
˜ xic = 1 ∀i ∈ K
(20)
xic ≤ 1
˜ ∀c ∈ M
(21)
0 ≤ xic ≤ 1,
(22)
˜ c∈M K
LT
i=1
uic xic ≤ di
˜ ∀i ∈ K,
˜ c∈M
˜ is the comwhere we have additionally introduced the constraint in (20) and M ˜ plementary set of M . The problem in (19)-(22) is a linear assignment problem and the optimal solutions are known to be binary integer [2]. The benefit from the approach is that if xic is required to be binary for the multi-user loading problem, the optimal solutions of this assignment problem can satisfy it. This means that the L subcarriers which are allocated to an user belongs to the same ˜ and K ˜ so that (16) and (21) are resource block. The task is now to update M not violated. For this purpose we devise a forward path Hungarian heuristic as described below. ˜ which consists of all the K users and resource set 1. Start with : a user set K ˜ M consisting of all the M resource blocks. ˜ 2. In step t apply the Hungarian algorithm, to allocate resource blocks from M ˜ to users in K. ˜ by removing the allocated resource blocks so as to satisfy (16). 3. Update M ˜ ˜ . Goto step t + 1. Update K based on (22) and using the updated M The steps 2)-3) are repeated until all the users are fulfilled the guaranteed bit rates or if there are no more resource blocks left. In relation to the joint admission control problem in (8)-(12), a clear shortcoming of the assignment approach is the constraint which we introduced in (20). This constraint has a consequence of
428
V. Venkatkumar, T. Haustein, and M. Faulkner
enforcing the admission variables to be real numbers greater than zero instead of the desired binary numbers. To resolve this issue, we propose an admission control step before the assignment problem. This means that we preset some of the ai to be zero and maximise (14) using the rest ai . In the follow sections, we describe few techniques to perform the admission control. 5.2
Random Admission Lists (ALG1)
Admission control can be performed before resource allocation by using statistical estimates. In ALG1, we introduce a simple scheme where the number of users for allocation is estimated. Assume that there are M resource blocks available for allocation. The number of users to be admitted, denoted as k is estimated as k ≤ Mγ , where γ is the expected number of resource blocks for fulfilling the rate requirements. For example, an estimate of γ can be obtained as the average of the ratios between the demands di and average MCS levels. The purpose of this estimation is to ensure that overloading does not occur at the scheduler. The k users to be scheduled denoted as A1 = {1..k} are randomly chosen out of {1..K}. Users in the list A1 are allocated resource blocks via the forward path Hungarian scheme as in section 5.1. After performing resource block allocation for the list A1 , the estimate k is updated and the next admission list A2 comprising of another k random users is used. In this way users are admitted both randomly and incrementally for resource block allocation in a TTI. However the scheme performs admission control and resource block allocation as two separate functionalities. 5.3
Optimal User Set (ALG2)
For joint allocation and admission control in (8)-(12), a search for an optimal admission list is to be made. This is because the user rate tuples that is obtained from a combinatorial assignment does not only depend on the number of users, but also on the distribution of the MCS values. Thus user subsets are enumerated and resource block allocation is applied for each enumerated subset. The user subset which maximises the objective in (6) is considered to be optimal. Here the Hungarian algorithm can been invoked to cut down the complexity of resource block allocation. Thus overall complexity is dominated by user subset generation. This complexity can be too high for large number of users, K. The main problem is that the search for user subset needs to be performed by varying the cardinality of the subset. Therefore we look at even more simpler ways. 5.4
User Ordering (ALG3)
An admission list can be found with low complexity using a sorting mechanism. For our problem, we propose sorting mechanism based on user rate requests and average MCS levels. The worst case complexity of this sort is only O(K 2 ). We use a two phase method. In the first phase, sum rate maximisation is performed
Joint Admission Control and Resource Allocation for Multiuser Loading
429
for the objective in (2). For the second phase we adopt an external point descent as in [7]. The idea of an external point descent is that for some input cases the maximum sum rate solution may satisfiy the constraints in (3)-(4). In such cases, the maximum sum rate solution is the globally optimum solution. If the constraints in (3)-(4) are not fulfilled by the sum rate optimal solution, resource blocks are reallocated in the second phase. For reallocation, the solution in [7] admits users on the basis of least pentalty to the sum rate. However, in case the constraint set of the multiuser loading problem happens to be infeasible, a least penalty reallocation is not a good descent strategy. The reason is simply because the resource blocks may be reallocated to bit rate demands which are infeasible. To overcome this issue, we use a descent with a sorting technique as follows. 1. Sum rate maximisation: Greedy resource allocation is performed to maximise the sum rate. On a per resource block basis, this is done by i∗ = arg max u(i, c), i
∀c.
From (23) we have obtained initial binary solutions as xi∗ c = 1 xic = 0 ∀i = i∗ , ∀c . 2. Form sets: Two user sets G1 and G2 are formed as G2 = G2 i if uic xic < di , G1 =
G1 i
if
(23) ∀c and
(24)
c
uic xic − max uic xic ≥ di . c
c
(25)
3. Resource block pooling: A set of resource blocks V are defined for transfer from G1 to G2 . A resource block can be transfered from G1 , if none of the user bit rates in that set would go below the guaranteed bit rate. 4. Admission: The main idea of incorporating admission control before resource block allocation is to ensure that few users do not overconsume the downlink bandwidth at the expense of the others. To this end, we perform | c,i∈G2 c uic xic − d(i)| ˜i = arg min (26) i∈G2 c∈V,i∈G2 u(i, c) The metric in indicates the amount of additonal bandwidth that would be needed by each user. A user in need of the minimum additional bandwidth is given preference by (26). This step is performed in each iteration. 5. Resource block allocation: Re-allocation of resource blocks is made using c∗ = arg max u(˜i, c). c∈V
(27)
= ˜i. The resource block c∗ is removed Update x˜ic∗ = 1, and xic∗ = 0 ∀i from the set V . Steps 2) to 5) are repeated until: a) all users are given their bit rates, or b) the resource block set V is empty.
430
5.5
V. Venkatkumar, T. Haustein, and M. Faulkner
Incremental User Search (ALG4)
ALG3 obtains a solution for resource block allocation through a sorting technique. The sorting scheme is however not combinatorial. A combinatorial scheme (e.g, Hungarian algorithm) may provide better rate allocations by exploiting the distribution of MCS levels of an user. However, it was seen that to perform a combinatorial assignment, we require an user set search so as to incorporate admission control. As a means to reduce complexity, instead of a full enumerated search as in ALG2, we may start the search from the admission list solution of ALG3. Thus the subset of users who are fulfilled the bit rates in ALG3 can be regarded as the initial admission list. The admission list is updated after scanning through possible additions to list for maximising (6). We therefore need to obtain a feasibility certificate for possible additions. To this end, a valid allocation for multi user bit loading of an admission list acts as its feasibility certificate. Suppose A is the initial admission list i.e, the set of users who have been allocated their required rates in ALG3 and A is the complementary set of A. Now the problem is to find the best incremental subset F ∗ as F ∗ = arg max |F | F ⊂A
s.t LT
M
uic x∗ic ≥ di
(28)
∀i ∈ {F, A}
(29)
x∗ic ∈ {0, 1} ,
(30)
c=1
where x∗ic is the optimal integer solution for resource block allocation. The complexity of a brute force resource block search is upper bounded by (|A| + |F ∗ |)M . For low complexity, the Hungarian algorithm can be used to obtain a feasibility certificate for the user set. Eventhough this approach is sub optimal to verify feasibility, it can be noted that the max operation in (28) captures the maximum over all the suboptimal values and increases F ∗ . There may be cases to improve the feasibility certificate. Notably, assume that there are only |A | with feasible rate requests out of the |A | users. By starting from the admission list solution of ALG3 we have ignored other user subsets of similiar cardinality K − |A |. Some of these subsets may also contain a feasible solution. To note the difference, the search in ALG2 enumerated all the possible subsets but ALG4 starts with only one subset. Therefore, if |A | is very small, the max operation in (28) becomes redundant. Thus, we may use a more robust resource block allocation method to verify feasibility. For this purpose, we can generalise the constraint in (20) as ˜ xic ≤ 1 ∀i ∈ K, s.t xic = k, (31) ˜ c∈M
˜ c∈M ˜ i∈K
where k is a real integer greater than zero and less than K .
Joint Admission Control and Resource Allocation for Multiuser Loading
431
The assignment problem (19), (21)-(22) with the constraint set in (31) is known as the k-cardinality assignment problem. The k-cardinality assignment ˜ ×M ˜ assignment problem. basically assigns k resource blocks at a time in a K This problem can be solved quickly using the Hungarian algorithm by making a simple transformation and the optimal solutions are binary integer [4]. For the multi-user loading problem, k-cardinal sub-problems are implemented on a forward path heuristic similiar to section 5.1. We term this as forward path kcardinality scheme. Importantly, for each value of k, a different resource block allocation solution and a feasibility certificate results from the forward path kcardinality scheme. We can thus simply choose the best feasibility certificate from all the values of k. An implementation of the forward path scheme is described below to maximise (28)-(30) . 1. Initialise iteration as t = 0. Run ALG3 to obtain xic ∀i, ∀c. Find the list list of users is of users with Ui = 1 according to (6) for all i. The computed stored as the initial admission list A. Calculate g0 = i Ui . Initialise gt = 1. 2. Initialise a set A which is the complementary set to the admission list A. 3. Generate user subsets of cardinality gt from A . Arrange the generated sub sets asa matrix G . Let row n of the matrix G be denoted as hn . Obtain Mn = A0 hn , ∀n. Implement the forward path k-cardinality scheme for all k from k = 1 to g0 + gt and apply it on Mn for all n. Increment t = t + 1. For each k and n, calculate gt (k, n) = i Ui according to (6). 4. Update the values of gt as maxk maxn gt (k, n). Let the optimum value of n be n∗ . If gt ≥ gt−1 increment gt = gt−1 + 1, set A = Mn∗ and return to step 2). Else exit with gt−1 and A as the output.
6
Numerical Results
To evaluate the performance of our schemes, we used 1000 channel realisations from macrocell measurements in 2.6 GHz. The measurement location is of dimension approximately 250 m × 80 m as in [14]. The measurements collected a total of 3500 samples from both line of sight and non line of sight conditions from a base station with a transmit power of 43 dBm. The radio interface is a closed-loop FDD 4 × 2 MIMO system which was implemented using 3GPP working assumptions in [5]. A resource block consists of 25 sub-carriers and 7 long OFDM symbols. Study Scenario. For simulation study, the channel values from the measurement samples were normalised for unit average received power. The channels were multiplied by an average signal to noise ratio (SN R) of 12 dB which provides a close fit to the actual measurement. The received SN R is estimated for the two spatial streams in each resource block at the user equipment. From the computed SN R, the MCS level per spatial stream is obtained from a mapping table. The mapping table defines 26 modulation and coding schemes (MCS) for a target packet error rate of 10−2 . The lowest MCS level is of spectral efficiency 0.5 b/s/Hz and the highest is 5.5 b/s/Hz per statial stream.
432
V. Venkatkumar, T. Haustein, and M. Faulkner
We assume that there are K users at different positions in the measurement track. They have to be scheduled in a TTI and allocated a specified bit rate d. As an objective, we apply admission control on the K users and fulfill the bit rates of the users who qualify for admission. To this end, resource blocks are allocated based on the MCS levels. As a performance measure, we calculate the number of fulfilled users out of the K users assuming that the users channels are static. A further statistical average for the macrocell is computed by randomising the user positions which in effect averages over the sets of measurement channels. By varying the values of K and d, different network congestion levels are obtained. In a real-time system, the number of users K can change over different TTIs depending on user and packet arrivals. In our model, we capture the probability of providing their bit rates as a function of K. The following schemes are simulated: a) ALG1 (random admission (RA) with Hungarian) b) ALG3 (user ordering), c) ALG4 (incremental user set search) and d) relaxation bound. ALG2 is not implemented because of high complexity. We refer to ALG3 and ALG4 as fast search schemes. For baseline comparison, we simulate a round robin allocation with the random admission scheme in ALG1. For ALG1, the value of γ is set to 6, i.e k = 8 for M = 48. Effect of Number of Users. For this study, the number of users K in a TTI is varied from 4 to 48 in steps of 4. We limit the maximum to 48 because there are only 48 resource blocks. As the number of users increase, it means that the user density within the macrocell increases. In Fig. 2, the users are assumed to require 720 bits to be loaded in a 0.5 ms TTI, which would correspond to 1.45 Mbps served rate. In a simple case, if each user is allocated one resource block of 5 b/s/Hz MCS in a spatial stream, all the users can be satisfied. In real-time, the realised bit rate at user end will be lower than 1.45 Mbps based on the serving interval, i.e, the interval between two served TTIs of an user. X- axis shows the total number of users who request this bit rate. Y- axis shows the number of users who are loaded with the required bit rate after applying
Number of users served with the bit rate
Bit rate of 1.45 Mbps RA− Round robin RA− Hungarian User order User set Relaxation
45 40 35 30 25 20 15 10 5 5
10
15 20 25 30 35 40 Number users requesting the bit rate
45
Fig. 2. Network scaling ratio for a low bit rate request
Joint Admission Control and Resource Allocation for Multiuser Loading
433
admission control and resource block allocation. The scaling law between the two axes is termed at the network scaling ratio. For this relatively low bit rate, random admission using ALG1 (red-circle and blue-dotted lines), is seen to be a good enough strategy and even for arbitrarily large number of users. There are two notable aspects of the algorithm: random admission and increments. Random admissions can handle upto 20 user requests. Some of these users can be at relatively large distance to the base station because the user positions are random. At these large distances, users benefit from the different MCS levels on resource blocks. Both round robin and Hungarian method are able to perform bit loading by making use of the MCS levels. Increments prevent overloading when there are too many users. An efficient allocation scheme such as the Hungarian method shows a 20% gain as compared to the round robin scheme. Integer solutions for joint admission and allocation (fast search schemes) outperform the random admission schemes. The fast search schemes also perform close to the linear programming solution for upto 28 users. Effect of bit rate. For this study, a higher loading of 5.8 Mbps is shown in Fig. 3. This load is considered to be high because bit loading can not be done by allocating just one resource block to an user. In a practical network, contents may be available in different qualities. So we have simulated the schemes by assuming a low and a high bit rate. Similiar to the low bit rate case, the Hungarian method is again more efficient by 20% to the round robin assignment. The gain from admission control that is achieved by the fast search schemes is significant, up from 62% in Fig. 2 to 78% for the higher bit rate in Fig. 3. Whenever the network load is high, either because of high number of users or high bit rate demand, admission control is found to be beneficial. This is logical because we prevent few users from overconsuming the bandwidth. In effect, by denying admission to users with high bandwidth requirement we increase the chances of fulfilling other users. It is also seen that in both the scenarios, incremental user set search adds
Number of users served with the bit rate
Bit rate of 5.8 Mbps RA− Round robin RA − Hungarian User order User set Relaxation
18 16 14 12 10 8 6 4
5
10
15 20 25 30 35 40 Number of users requesting the bit rate
45
Fig. 3. Network scaling ratio for a high bit rate request
434
V. Venkatkumar, T. Haustein, and M. Faulkner
atleast one more user to the sorting solution with some more search complexity. In the numerical results, the relaxation bound proves to be an useful upper bound for the fast search schemes. The continous relaxation of integer allocation problem better uses the different MCS levels in resource blocks for optimisation.
7
Summary of Results
This paper addressed the resource allocation problem for guaranteed bit rate mode in 3GPP LTE downlink. The novelty is to support the guaranteed bit rate mode by the following mechanisms: frequency dependent modulation and coding, resource block allocation and admission control. We provide a relaxation bound for the problem by treating it as weighted sum rate maximisation. Further, we propose fast search methods for integer solutions. The scheduling approach aims at protecting resource allocation from arbitrary user demands. Numerical results are shown using channels from a measurement and by varying the number of users and demands. Results show more than 50% improvement in the network scaling.
References 1. Vishwanath, P., Tse, D.N.C., Laroria, R.: Opportunistic beamforming using dumb antennas. IEEE Transactions on Information Theory 48, 1277–1294 (2002) 2. Kuhn, H.W.: The Hungarian Method for the assignment problem. Naval Research Logistics Quarterly 2 (1955) 3. Zhang, Y.: Solving Large-Scale Linear Programs by Interior-Point Methods under the MATLAB Environment, Department of Mathematics and Statistics, University of Maryland Baltimore County, Technical Report TR 96-01 (1996) 4. Volgenant, A.: Solving the k-cardinatlity assignment problem by transformation. European Journal of Operational Research, 322–331 (2004) 5. 3GPP Long Term Evolution Standardisation Working Documents 36. 212, 36. 213, 36. 214 found, http://www.3gpp.org/ftp/Specs 6. Technical Specification Group Services and System Aspects; Policy and charging control architecture (Rel 9), 3GPP TS 23.303 v 9.1.0 7. Zhang, Y.J., Letaief, K.B.: Multiuser Adaptive Subcarrier-and-Bit Allocation With Adaptive Cell Selection for OFDM Systems. IEEE Trans. Wireless Commns. 3, 1566–1575 (2004) 8. Svedman, P., Wilson, P., Ottersen, B.: A QoS-aware proportional fair scheduler for opportunistic OFDM. In: Proc. of IEEE VTC 2004, vol. 1, pp. 558–562 (2004) 9. Andrews, M., Zhang, L.: Scheduling Algorithms for Multi-Carrier Wireless Data Systems. In: Proc. of MOBICOM 2007 (2007) 10. Girici, T., Zhu, C., Agre, J., Ephrimedes, A.: Practical Resource Allocation Algorithms for QoS in OFDMA-bases Wireless Systems. In: Proc. of CCNC, pp. 897–901 (2008) 11. Holtzmann, J.M.: Asymptotic analysis of proportional fair algorithm. In: Proc. of IEEE PIMRC 2001, pp. F-33–F-36 (2001) 12. Iyengar, R., Kar, K., Sikdar, B.: Scheduling Algorithms for Point to Multipoint Operation in IEEE 802.16 Networks. In: RAWNET 2006 (2008)
Joint Admission Control and Resource Allocation for Multiuser Loading
435
13. Zhang, Z., Le, Y., Chong, E.: Opportunistic Scheduling for OFDM Systems with Fairness Constraints. Eurasip Journal on Wireless Communications and Networking, Article ID 215939 (2008) 14. Venkatkumar, V., Haustein, T., et al.: Measurements of Multi-Antenna Gains using a 3GPP-LTE Air Interface in Typical Indoor and Outdoor Scenarios. In: Proc. European Wireless 2008 (2008) 15. Gross, J.: Admission Control based on OFDMA Channel Transformation. In: Proc. of 10th IEEE International Symposium on a World of Wireless, Mobile and Multimedia Networks, WoWMoM (2009)
Data Traffic Scheduling Algorithm for Multiuser MIMO-OFDM System with the Throughput Maximization Jerzy Martyna Institute of Computer Science, Jagiellonian University, ul. Prof. S. Lojasiewicza 6, 30-348 Cracow
Abstract. In this paper, we present a new data traffic scheduling scheme for the throughput maximization in the downlink multiple-input-multipleoutput orthogonal frequency division multiple access (MIMO-OFDMA) in a single-cell multiuser environment with the channel side information of the transmitter. In our approach the data throughput maximization formulated as an optimization problem as well as the optimal results were obtained by solving the Kuhn-Tucker conditions. In order to find the optimal values we propose two solutions of these problems. Throughout the computing simulation, we compared suggested algorithms with the traditional FDMA algorithm.
1
Introduction
The orthogonal frequency division multiplexing (OFDM) [1], [2] is currently gaining popularity as a promising technology for supporting high speed data transmission in multipath fading environments. The future generation of broadband wireless networks, such as Beyond 3G (B3G) systems [17] are based on this technology. Moreover, the OFDM is one of the best candidates for a high data-rate broadband transmission system in a number of standards, e.g. 802.16 d - e, DVB-T [6] [7]. The orthogonal frequency division multiple access (OFDMA), also known as multiuser OFDM, was investigated for a single-antenna network by C.Y. Wong et al. [16] with the objective minimize to the total power while satisfying the user’s requirements. The multiuser OFDM was extended to the multiple-inputmultiple output (MIMO) configuration. In this configuration was studied the spatial multiaccess. Among others, in the paper by P.W.C. Chang [3] the optimal power allocation with multiuser frequency was presented. In the paper by Zhang et al. [18] the spatial multi-access was used for each subcarrier, the downlink capacity maximization, and the uplink total power minimization with heuristic and suboptimal algorithms. The error rate comparison between the multi-user OFDM and the Multicarrier CDMA was analysed in the paper by C. Ibars et al. [5]. The multiuser OFDM system is restricted to one subcarrier per user. Therefore, the channel state information is available only at the receiver (CSIR) but S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 436–447, 2010. c Springer-Verlag Berlin Heidelberg 2010
Data Traffic Scheduling Algorithm for Multiuser MIMO-OFDM System
437
not the transmitter (CSIT). In some solutions of this problem, (for example [17]), a time-division duplex (TDD) was suggested. This technique supports an asymmetric downlink and an uplink traffic. Therefore, the capacities of a single-antenna multicarrier CDMA and a hybrid multiuser OFDM-CDMA are increased [8], [15]. The maximizing channel capacity in a single user system can be achieved by means of the so-called ”water-filling” solution [4]. In the multiuser environment each user is allocated to a determined time slot or a frequency band to apply OFDM with adaptive modulation. Thus, all the unused subcarriers are wasted. Some solutions based on the optimal bit loading and the subcarrier allocation problems for a multiuser OFDM with an adaptive modulation are presented in the papers [16], [14]. These nonlinear optimization problems can be formulated and solved as a Integer Linear Programming problem. However, this method is extremely difficult and cannot provide an optimal solution. Recently, in the paper by S.B. Jeong et al. [9] an efficient heuristic algorithm to maximize the system throughput for the multiuser OFDM has been provided. This solution was based on the Lagrangian relaxation procedure. An adaptive resource allocation scheme for the capacity maximization for the MIMO-OFDMA and the multiple-input-multiple-output multicarrier code division multiple access (MIMO-MC-CDMA) was presented by E.S. Lo [13]. The resource allocation was modelled as a cross-layer optimization framework. Nevertheless, a given solution depends heavily on the path loss exponent and the number of antennas, as well as the fairness requirement. The main goal of this paper is to formulate the problem of the throughput maximization. The proposed scheduling algorithm endeavors to maximize the system throughput while ensuring the full fillment of each user’s QoS requirements including the data rate and the bit-error-rate (BER). In contrast to some papers, such as Kontsopoulos et al. [10], [11], the subcarrier allocation, the power distribution, and the modulation modes are jointly optimized according to the user’s channel state, locations, and the QoS requirements. As regards the throughput maximization problem and the value maximization, we analyze the properties of optimal transmission schedules and propose two algorithms exploting these properties. The proposed algorithms have low complexity and can be implemented efficiently. The rest of the paper is organized as follows: Section 2 introduces the system model. In section 3 we present an optimal algorithm for the throughput maximization problem. In section 4 value-based scheduling algorithm under time and energy constraints is studied. Section 5 gives some simulation results. Finally, in section 6 we conclude the paper with a discussion of results and some conclusions.
2
System Model
In Fig. 1 we present the block diagram of a downlink multiuser MIMO-OFDM system. The system is composed of a multiuser MIMO-OFDM transceiver and a multiuser MIMO-OFDM receiver. We assume that each of K users have Mr
438
J. Martyna
user1 .. . userk
-
-
MIMO fading channel
MIMO-OFDM Transmitter
-
6
6
Subcarrier and bit allocation Subcarrier and power bit allocator Base station transmitter
MIMO-OFDM Receiver
Subcarrier and bit selection Feedback channel state information from all users Allocation decision f or user k
-
Subcarrier and power bit allocation User k receiver
Fig. 1. Downlink multiuser MIMO-OFDM system diagram
receiving antennas and the transmitters has Mt transmitting antennas. Thus, for user k, k = 1, 2, . . . , K, on subcarrier n, n = 1, 2, . . . , N , the channel state matrix is given by Hk,n with dimension Mr × Mt . The channel state matrix Hk,n can be decomposed as Hk,n =
M i=1
uk,n σk,n (vk,n )H (i)
(i)
(i)
(1)
where M = min(Mr , Mt ) is the rank of Hk,n , {σk,n }M i=1 are the singular values (i)
M of Hk,n in descending order, {uk }M i=1 and {vk,r }i=1 are corresponding left and right singular vectors, respectively. The activity of the multiuser MIMO-OFDM system, depicted in Fig. 1, is as follows. The decision about the use of the allocation decision is obtained via the feedback signalling channel. Thus, each user can decode the data on the assigned subcarriers. With the help of the of the resource allocation scheme the parameters of the system will be updated as fast as the channel information is collected. To achieve the optimality of the MIMO-OFDMA system in accordance with the results obtained in the paper by Li [12] the following assumptions must be accepted: (i)
(i)
1) The subcarriers cannot be shared by users. 2) Each subcarrier assigned to only one user can experience an independent downlink MIMO fading. 3) The MIMO channel is assumed to be constant during the subcarrier and the power allocation process. 4) At the receiver only the perfect channel state information (CSI) of all users is achievable.
Data Traffic Scheduling Algorithm for Multiuser MIMO-OFDM System
439
Based on the above given assumptions, we assign for every subcarrier in a subband a coherence bandwidth possessing the same channel amplitude. Thus, the rate of user k in an OFDMA system can be given as follows: RkOF DMA
= Ns
NB
ρ(k, b)
NP
log2 (1 +
p=1
b=1
(p) (p) Pk,b γk,b ) Ns
(2)
where NB is a total number of subbands, each containing Ns subcarriers, NP = min(Nr , Nt ) for all k = 1, 2, . . . , K is the number of available spatial channels for (p) (p) every subcarrier in subband b of user k, γk,b and Pk,b are the effective power gain to noise ratio and the power function of user k on subband b and spatial channel p, respectively; ρ(k, b) ∈ {0, 1} is an indicator function with ”1” denoting code c being allocated to user k and ”0” otherwise.
3
The Resource Allocation for the MIMO-OFDM System with the Throughput Maximization
The throughput maximization problem in the multiuser MIMO-OFDM system can be formulated as follows: maximize
K
RkOF DM (Pk ) · tk
(3)
k=1 K
subject to:
ρ(k, b) = 1
∀b ∈ {1, . . . , NB }
(4)
k=1 NB NP K b=1 k=1 p=1 NB K b=1 k=1
(p)
Pk,b = Pmax
(p)
Pk,b · tk − E = 0
K
(5)
(6)
tk − T = 0
(7)
= fBER (bk,b ) ∀k, b
(8)
k=1 (p)
(p)
Pk,b (σk,b )2 (p)
[σk,b ]2
dk ≤ RkOF DM (Pk ) · tk ≤ Dk , ∀k ∈ {1, . . . , K}
(9)
where fBER (bk,b ) is a threshold in order to satisfy the BER constraints, where (p) fBER (bk,b ) depends on the adopted modulation scheme; Pk,b is the transmission power assigned to user k in a subband b, Dk is the total amont of data units.
440
J. Martyna
We assumed that 0 < dk < Dk and Pmax is the maximum transmission power; RkOF DM (Pk ) · tk is the data throughput of the user k in the given tk time units and RkOF DM (Pk ) is the date rate function for the user k; T is the interval time when the channel state is static. When the maximum throughput in the multiuser MIMO-OFDM system is considered, the optimal user assignment for subband b and the corresponding power allocated can be solved as follows. The Langrangian is L = RkOF DM (Pk ) · tk + μ1 (ρ(k, b) − 1) (p)
(p)
+μ2 (Pk,b − Pmax ) + μ3 (Pk,b · tk − E) (p)
+μ4 (tk − T ) + μ5 (
(p)
Pk,b (σk,b )2 (p)
[σk,b )]2
−fBER (bk,b )) + μ6 (RkOF DM (Pk ) · tk −Dk ) + μ7 (−Rk (Pk ) · tk + dk ) (p)
+μ8 (Rk (Pk ) − Dk ) + μ9 · Pk,m (p)
+μ10 (Pk,b − Pmax )
(10)
where μ1 ÷ μ10 are generalized Lagrange multipliers. Applying the method of the Lagrange multiplier and the Kuhn-Tucker conditions, we can obtain the necessary conditions for the optimal solution for all k, 1, 2, . . . , K. 3.1
The Optimal Solution of the Throughput Maximization in the Multiuser MIMO-OFDM System
We can take into considerations the data subcarriers that are the data transmit(p) (b) ted at power Pk,b , where 0 ≤ Pk,b ≤ Pmax . From the Lagrangian multiplier we can obtain the following equations: Rk (Pk ) − μ7 Rk Pk + μ8 Rk (Pk ) = 0 (p)
Rk (Pk ) + μ3 Pk,b + μ4 − μ7 Rk (Pk ) + μ8 Rk (Pk ) = 0
(11) (12)
We can consider the following two cases: (p) (p) 1) At least in one subcarrier is transmitted at power Pk,b , 0 < Pk,b < Pmax . Thus, we can obtain (1 − μ7 + μ8 )Rk (Pk ) = 0
(13)
= 0. Therefore, (1 − μ7 + μ8 ) = 0. Thus, from As Rk (Pk ) is increasing, Rk dependence Rk (Pk ) · tk − Dk = 0 we get sk = Rk (Pk ) · tk = Dk .
Data Traffic Scheduling Algorithm for Multiuser MIMO-OFDM System
441
From Eq. (12) we obtain (p)
(1 − μ7 + μ8 )Rk (Pk ) + μ3 Pk,b + μ4 = 0
(14)
For all other subbands, that is Pi = Pmax . From dependence Rk (Pk )·tk −Dk = 0, we obtain si = Ri (Pi ) · ti = Di . 2) Let in all the subcarriers are transmitted the data at power Pmax . In this case Pmax ·T = E. Hence, our problem is simplified to a time allocation problem. In order to obtain the optimal solution, we can use the following scheme. Every subcarrier is first allocated in such a way that dk , 1 < k < K units of data can be transmitted. The remaining time will be allocated to the subcarriers by their transmission rates Rk (Pmax ) in the descending order. It means that the time will be allocated to the subcarrier with the highest transmission rate first until it has enough time to transmit all its Dk units of data. Then, the subcarrier with the next highest transmission rate will proceed, and so on. 3.2
The Proposed Algorithm for the Throughput Maximization in the Multiuser MIMO-OFDM System
Now we can give a new algorithm which can maximize throughput in the MIMOOFDM system. This algorithm does not the special cases when T · Pmax ≤ E or sk = Dk for ∀k, 1 ≤ k ≤ K, studied in previous subsection. In this algorithm, we suppose that at least one subcarrier will be transmitted at a power level lower than Pmax and not all subcarriers transmit Dk units of data in the optimal solution. The first phase of our algorithm is as follows. We assume that all data streams are sorted in decreasing order of Rk (0) - first derivative of rate function for subcarrier k. Next, we use required energy procedure to compute the required energy to transmission at given time constraint T . This function determines the transmission power of each subcarrier as follows. At first it allocates time to each subcarrier such that every subcarrier can transmit dk , 1 ≤ k ≤ K, units of data. The remaining time of transmission is allocated to the subcarriers in decreasing order of Rk (0). Therefore, a subcarrier will receive additional time only if all subcarriers before it have been allocated adequate time to transmit all their data. In the second phase of our algorithm, an additional simple procedure is used to residual subcarrier allocation with the objective of enhancing the total system capacity.To compare the data rate of user k is used the following dependence: (p) M B (p) Pk,b log2 (1 + γk,b ) Rk = Rk + Ns i=1 Ns
(15)
where Ns is the total number of subcarriers, etc. The algorithm is described in Fig. 2. and its performance will be studied in the next section. In the first step of our algorithm, each user will be allocated its first subcarrier under the scheduling principle that the user with the least ratio of the achieved rate to its required proportion has the priority to choose one subcarrier at a time.
442
J. Martyna
procedure multiuser MIMO OFDM subcarrier allocation; begin consumed energy := 0; while | consumed energy − E |< do begin initialization of all parameters of multiuser MIMO-OFDM; sorting of data streams in decreasing order; required energy; residual subcarrier allocation; end; end; Fig. 2. Scheduling algorithm for the throughput maximization in the multiuser MIMOOFDM system
4
The Resource Allocation for the Value Maximization in the Multiuser MIMO-OFDM System
The transmission value of a stream may not be a linear function of the data transmitted. When the data stream is treated as a linear function of value, e.g. Φk = φk · Rk · tk where φk is the value per data unit, it is impossible to maintain a fixed order of the streams based on their slopes. Let sk be units of data transmitted in the stream for the k-th user using tk units of time. The optimization problem is formulated as follows: maximize
K
Φk (sk )
(16)
k=1
subject to:
K k=1
K
Pk (
sk ) · tk − E ≤ 0 tk
tk − T ≤ 0
(17)
(18)
k=1
sk /RkOF DM (Pmax ) − tk ≤ 0, ∀k, 1 ≤ k ≤ K
(19)
dk − sk ≤ 0, ∀k, 1 ≤ k ≤ K
(20)
sk − Dk ≤ 0, ∀k, 1 ≤ k ≤ K
(21)
(p)
(p)
Pk,b (σk,b )2 (p)
[σk,b ]2
= fBER (bk,b ) ∀k, ∀b ∈ {1, . . . , NB }
(22)
Data Traffic Scheduling Algorithm for Multiuser MIMO-OFDM System
443
Assuming that the objective function Φk (sk ) is a sum of concave functions, it is itself also concave. Let Pk (x) be convex and other constraints linear. Thus, we can use the method of the Lagrange and Kuhn-Tucker conditions and these conditions are sufficient and necessary for the existence of the global maximum. 4.1
The Proposed Algorithm for the Value Maximization in the Multiuser MIMO-OFDM System
Due to a large number of constraint functions, it is sometimes difficult to find a sub-optimal solution by means the heuristic scheduling algorithm. It is the more significant that the value function and the power function of the data stream may not be continuous. We assume that each data stream k contains up to K versions whose sizes are 1 2 K s1k , s2k , . . . , sK k with the corresponding values φk , φk , . . . , φk . In our approach the 1 2 Z transmission rate is adjustable at Z levels rk , rk , . . . , rk corresponding to the Z transmission power levels. The algorithm (see Fig. 3) works as follows: At first it sorts the available data streams in an increasing order. The value maximization problem is divided into k stages. For each stage k we compute the value function Φk , namely Φk [Tk , Ek ] =
max
0≤i≤K,0≤j≤Z
{Φk+1 [Tk−ti,j , Ek−Pk (rkj )·ti,j ]+φik }, 1 ≤ k ≤ K−1 (23)
where ti,j = sik /rkj is the required time to transmit sik units of data at rate rkj . Thus, the maximization takes over the size of the transmitted data sik and the transmission rate rkj . The constraints iteratively compute ΦK , ΦK−1 up to Φ1 . Analogously, for each stage k we compute ti,j = sik /rkj . The energy maximization takes over all the possible data versions and transmission rates. procedure multiuser MIMO OFDM subcarrier allocation; begin consumed energy := 0; while | consumed energy − E |< do begin initialization of all parameters of multiuser MIMO-OFDM; sorting of data streams in decreasing order; for k = 1 to K do begin Φk [Tk , Ek ] = max0≤i≤K,0≤j≤Z {Φk+1 [Tk − ti,j , Ek − Pk (rkj ) · ti,j ] + φik } end; required energy; residual subcarrier allocation; end; end; Fig. 3. Scheduling algorithm for the value maximization in the multiuser MIMOOFDM system
444
5
J. Martyna
The Simulation Results
In this section we present simulation results regarding the efficiency of the proposed algorithm presented in section 3.2. The goal of the simulation experiments is to compare the performance of the scheduling algorithm for MIMO-OFDMA system with the OFDM-FDMA system, as a special case of adaptive OFDMA scheme. We assumed that OFDM-FDMA scheme allocates fixed sequences of subcarriers to each user according to their proportionality constraints and the allocated subcarriers of each user cannot be changed over the time. In our simlation, up to 12 users are to be allocated the resource. There are a total 512 subcarriers with 16 subbands, each having 32 subcarriers. Figure 4 shows the total system capacity in dependence on the number of users for both the OFDM-FDMA method and the proposed algorithm for the throughput maximization in the MIMO-OFDM system. It can be observed that the proposed algorithm without a subcarrier rearrangement can achieve the maximum system capacity. We can observe that the system capacity under this algorithm increases with the increasing number of users. It is caused by the multi-user diversity. The OFDM-FDMA method does not have such a property. Figure 5 depicts the throughput under the time and energy constraint in the simulated OFDM-FDMA system. We have observed that if the energy constraint was higher than the given 1000 mW units, all the data could be transmitted. If the energy constraint was lower than 250 units, no feasible solution could exist. 13
12.5 Capacity (bit/s/Hz)
12
11.5 OF DM − F DM A Our algorithm
11
10.5 2
4
6
8
10
12
Number of users Fig. 4. Capacity of multiuser MIMO-OFDM system in dependence of number of users
Data Traffic Scheduling Algorithm for Multiuser MIMO-OFDM System
445
1600
Throughput (Kbit/s)
1500
1400
1300
1200
OF DM − F DM A
Our algorithm 1100 500
1000
1500
2000
2500
3000
Energy (mW) Fig. 5. Data throughput in multiuser MIMO-OFDM system for 10 users, energy constraint equal to 1000 mW and time constraint equal to 100 ms
The optimal data throughput was depicted by a concave function of the energy constraint. It is obvious that the computation overhead of the proposed algorithm is low. In order to verify the effectiveness of the value maximization under the energy constraints, we conducted a simulation of 20 data streams destined for 5 different users. We assumed that for each data stream five versions are prepared by our scheduler - a basic version and four extended versions. We assumed that all the extended versions have the same size as the basic version. On the other hand, we assumed different values of each data stream, namely, the first version has one value, the second version possesses two values, and so on. In our approach the transmission power was discretized into 20 levels. At each transmission power i units of energy in every subcarrier are consumed. Each subcarrier is 1 ms long. We assumed the following time constraints for the data transmission, namely 200 time units for the first data stream, 150 time units for the second, and so on. In Fig. 6, the three graphs are shown. These graphs give the optimal values of the transmitted streams in dependence on the energy. The obtained results show that the increasing value of the data stream demands greater required time to transmit for the same data size of the data streams.
446
J. Martyna
Optimal value of transmission
500
400
300
200
T ime = 200 ms 100
T ime = 150 ms
T ime = 100 ms
0 0
100
200
300
400
500
Energy (mW) Fig. 6. Optimal value of transmission in dependence on energy with varying time
6
Conclusion
In this paper, we considered the MIMO-OFDM downlink transmission in a multiuser environment. The optimal solution was found by means of solving the corresponding Kuhn-Tucker condition. Additionally, we proposed two scheduling algorithms in order to maximize the system throughput while providing fairness among users and value maximization under time and energy constraints, respectively. In the first algorithm, we formulated the throughput maximization problem by assigning subcarriers to the users for the given required energies. The suggested algorithm allows us to make a good diversity of the multiuser data requirement, as well as the channel parameter changing and the frequency guaranteeing. Additionally, the power efficiently decreases in comparison to the conventional FDMA system. In the second algorithm, we made the energy minimization of all possible transmission rates. This algorithm provides the maximization of the transmitted data and the transmission rate by means of the given time and energy constraints. The simulation results have demonstrated that the rate improvement of the proposed algorithms was achieved. However, any further increase of the throughput depends on the retransmissions number. This suggests a further direction of our research.
Data Traffic Scheduling Algorithm for Multiuser MIMO-OFDM System
447
References [1] Bingham, J.A.C.: Multicarrier for Data Transmission: An Idea Whose Time Has Come. IEEE Comm. Magazine 28(5), 5–14 (1990) [2] Cimini Jr., L.J., Sollenberger, N.R.: OFDM with Diversity and Coding for HighBit-Rate Mobile Data Applications, Mobile Multimedia Communications. In: Proc. of the IEEE Global Communications Conf., vol. 1, pp. 274–275 (1997) [3] Chang, M.-X., Su, Y.-T.: Model-based Channel Estimation for OFDM Signals in Rayleigh Fading. IEEE Trans. on Comm. 50, 540–545 (2002) [4] Cover, T.M., Thomas, J.A.: Elements of Information Theory. Wiley, New York (1991) [5] Ibars, C., Bar-Ness, Y.: Comparing the Performance of Coded Multiuser Access OFDM and Coded MC-CDMA over Fading Channels. In: Proc. IEEE INFOCOM, pp. 881–885 (2001) [6] Institute of Electrical and Electronics Engineers, Part 16: Air Interface for Fixed Broadband Wireless Access Systems, IEEE 802.16 (June 2004) [7] Institute of Electrical and Electronics Engineers, Part 16: Air Interface for Fixed and Mobile Broadband Wireless Broadband Wireless Access Systems, Amendment 2, IEEE 802.16e (December 2005), http://www.ieee.org/web/standards/home/index.html [8] Ishikava, H., Furudate, M., Ohseki, T., Suzuki, T.: Performance Analysis of Adaptive Downlink Modulation Using OFDM and MC-CDMA for Future Mobile Communications System. In: Proc. IEEE ISSSTA, August 2004, pp. 194–198 (2004) [9] Jeong, S.B., Kim, S., Lee, H.: Data Traffic Scheduling Algorithm for Multiuser OFDM System with Adaptive Modulation Considering Fairness Among Users. Computers and Operations Research 32, 1723–1737 (2005) [10] Koutsopoulos, I., Tassiulas, L.: Adaptive Resource Allocation in SDMA-based Wireless Broadband Networks with OFDM Signaling. In: IEEE Proc. INFOCOM, vol. 3, pp. 1376–1385 (2002) [11] Koutsopoulos, I., Ren, T., Tassiulas, L.: The Impact of Space-division Multiplexing on Resource Allocation: A Unified Approach. In: Proc. IEEE INFOCOM, vol. 1, pp. 533–543 (2003) [12] Li, G., Liu, H.: On the Optimality of Downlink OFDMA-MIMO Systems. In: Proc. Signals, Systems and Computers Conference, vol. 1, pp. 324–328 (2004) [13] Lo, E.S., Chan, P.W.C., Lau, V.K.N., Cheng, R.S., Letaief, K.B., Murch, R.D., Ho Mow, W.: Adaptive Resource Allocation and Capacity Comparison of Downlink Multiuser MIMO-MC-CDMA and MIMO-OFDMA. IEEE Trans. on Wireless Communications 6(3), 1083–1093 (2007) [14] Rhee, W., Cioffi, J.M.: Increase in Capacity of Multiuser OFDM System Using Dynamic Subcarrier Allocation. In: Proc. of the IEEE Vehicular Technology Conference (VTC 2000), pp. 1085–1089 (2000) [15] Tang, C., Stolpman, V.J.: Multiple Users Adaptive Modulation Schemes for MCCDMA. In: Proc. IEEE GLOBECOM, pp. 3823–3827 (2004) [16] Wong, C.Y., Cheng, R.S., Letaief, K.B., Murch, R.D.: Multiuser OFDM with Adaptive Subcarrier, Bit, and Power Allocation. IEEE J. Select. Areas Commun. 17(10), 1747–1758 (1999) [17] Zhang, P., Tao, X., Zhang, J., Wang, Y., Li, L., Wang, Y.: A Vision from the Future Beyond 3G TDD. IEEE Comm. Magazine 43, 38–44 (2005) [18] Zhang, Y.J., Letaief, K.B.: An Efficient Resource Allocation Scheme for Spatial Multiuser Access in MIMO/OFDM System. IEEE Trans. on Commun. 53(1), 107– 116 (2005)
Scalable Video Coding Based on Three-Dimensional Discrete Pseudo Cosine Transform Eugeniy Belyaev1 , Timofey Sukhov2 , and Liu Kai3 1
Saint-Petersburg Institute for Informatics and Automation of the Russian Academy of Sciences, 14 line 39, 199178 St. Petersburg, Russia [email protected] 2 Baltic State Technical University “Voenmeh“ D.F.Ustinov, 1 Krasnoarmeiskaya street 1, 190005 St. Petersburg, Russia [email protected] 3 School of Computer Science and Technology, Xidian University, NO.2 Taibai South Road, MailBox 161, 710071 Xi’an, China [email protected]
Abstract. This paper proposes a new spatial scalable and low-complexity video compression algorithm based on multiplication free three-dimensional discrete pseudo-cosine transform (3-D DPCT). Practical results which show the compression efficiency of the proposed algorithm in comparison with H.264/SVC standard are presented. Keywords: 3-D DCT, scalable video coding, wireless video transmission.
Introduction In the last few years a lot of wireless systems based on IEEE 802.11 [1], LTE [2], IEEE 802.16 [3], DVB-H [4] and other standards have appeared. One of the top task for such type of systems is real-time video transmission. Because the throughput of a wireless channels is less than raw video bit rate the additional video compression on the transmitter side is required. Taking into account high bit error ratios, packet losses and time-varying bandwidth of wireless systems, the scalable video coding (SVC) is more preferable as compression method for wireless video transmission. The main idea of scalable coding is that video coder forms the bit stream from several layers: base layer and enhancement layers. The base layer is always coded independently and provide basic visual quality with low bit-rate. The enhancement layer provide refinement video quality and higher bit rate. For the next enhancement layer encoding reconstructed previous layers (that may include base layer) is needed. Therefore, in this case robust video transmission can be provided by using unequal error protection of different layers [5] and bandwidth adaptation can be easily achieved due to dropping the higher enhancement layers of the scalable video bit stream [6]. S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 448–459, 2010. c Springer-Verlag Berlin Heidelberg 2010
Scalable Video Coding Based on 3-D DPCT
449
The most popular scalable video coding approach is based on extension of the H.264/AVC standard [7,9]. This extension includes temporal, spatial and quality scalability and provide high compression efficiency due to motion estimation and compensation exploiting the video source temporal redundancy and inter-layer prediction exploiting redundancy between different layers. But these methods require high computational complexity. Therefore, using of H.264/SVC codec’s is difficult for real-time video compression and transmission. In this paper we propose a scalable video coding approach based on threedimensional discrete pseudo cosine transformation (3-D DPCT) as an alternative to H.264/SVC. This approach does not use motion estimation for exploiting of the video source temporal redundancy. Therefore, it has lower computational complexity and, in addition, it provides robust compression of the noised video sources. Therefore, proposed scalable video coding technique can be attractive for mobile video transmission. The rest of this paper is organized as follows. Section 1 describes the multiplication free 3-D DPCT and division free quantization. Section 2 introduces video compression algorithm based on 3-D DPCT which is used for base layer coding. Section 3 presents spatial scalable video coding algorithm based on 3-D DPCT. Finally, comparison with H.264/SVC and conclusions are drawn in Section 4.
1
1.1
Implementation of Three-Dimensional Discrete Cosine Transform and Quantization 3-D DCT and Quantization
Traditionally, forward discrete cosine transform for cube N × N × N is defined as
N −1 N −1 N −1 8 F (i, j, k) = c(i)c(j)c(k) f (x, y, z)× N3 z=0 y=0 x=0 (2x + 1)πi (2y + 1)πj (2z + 1)πk × cos cos cos , 2N 2N 2N
(1)
where f (x, y, z) is luma or chroma value of color component with coordinates x, y, z ∈ [0, ..., N − 1], F (i, j, k) is transform coefficient with coordinates i, j, k ∈ [0, ..., N − 1] and 1 √ ,k = 0 2 (2) c(k) = 1, k = 0. Inverse discrete cosine transform for cube N × N × N is defined as N −1 N −1 N −1
8 c(i)c(j)c(k)F (i, j, k)× f (x, y, z) = 3 N i=0 j=0 k=0 (2x + 1)πi (2y + 1)πj (2z + 1)πk × cos cos cos . 2N 2N 2N
(3)
450
E. Belyaev, T. Sukhov, and L. Kai
After the 3-D DCT calculation, scalar quantization is used for each transform coefficient: F (i, j, k) + f · q Fq (i, j, k) = , (4) q where q is a quantization step, f ∈ [0, ..., 0.5]. Fast calculation of the 3-D DCT can be achieved by using the row-columnframe (RCF) approach based on 1-D DCT or by using 3D vector radix (3-D VR) approach based on partitioning an N ×N ×N transform into smaller transforms, until 2 × 2 × 2 transform is reached [8]. These approaches allow to calculate 33 D DCT by using 3N 3 log2 N and 14 8 N log2 N multiplications respectively and 3 3 2 9N log2 −6N + 6N additions. Thus, traditional implementation of 3-D DCT and scalar quantization requires more than N 3 log2 N multiplications and N 3 divisions. 1.2
Multiplication Free 3-D DPCT and Division Free Quantization
The further decrease of the computational complexity can be achieved by using multiplication free three-dimensional discrete pseudo cosine transform (3-D DPCT) and division free scalar quantization. It is necessary to notice that the same approach is used in H.264/AVC standard [9] and we propose to extend this techniques on a three-dimensional case. Firstly, let us describe the division free implementation of the scalar quantization. In [10] it is proposed to quantize transform coefficient x in the following way: x · A(QP ) + f · 220 , (5) Xq = 220 and to calculate reconstructed coefficient as xr =
Xq · B(QP ) , 220
(6)
where f ∈ [0, ..., 0.5], QP ∈ [0, ..., 31] is a quantization parameter, A(QP ) and B(QP ) are defined taking into account that A(QP ) · B(QP ) ≈ 240 (see Table 1). The rest of values of A(QP ) and B(QP ) for QP > 5 are defined taking into Table 1. Division free scalar quantization QP 0 1 2 3 4 5 q(QP ) 2.5 2.8 3.2 3.5 4 4.5 A(QP ) 620 553 492 439 391 348 676 B(QP ) 3881 4351 4890 5481 6154 6914 676
Scalable Video Coding Based on 3-D DPCT
451
account that 2A(QP + 6) = A(QP ) and B(QP + 6) = 2B(QP ). Therefore, quantization can be written as [11]: Xq =
x · A(qM ) + f · 220+qE , 220+qE
(7)
and inverse quantization as Xq · B(qM ) , (8) 220−qE QP where qM = QP %6 and qE = . Thus, (7) and (8) corresponds to scalar 6 quantization (4) with quantization step q(QP ) (see Table 1) and can be implemented without division. Let us describe the multiplication free discrete cosine transform. For the sake of simplicity, let us consider the case of one-dimensional transform over a vectorcolumn x of length 8. Then discrete cosine transform can be calculated as: xr =
X = T · x,
(9)
⎛
⎞ g g g g g g g g ⎜ a b c d −d −c −b −a ⎟ ⎜ ⎟ ⎜ e f −f −e −e −f f e ⎟ ⎜ ⎟ ⎜ b −d −a −c c a d −b ⎟ ⎟ T =⎜ (10) ⎜ g −g −g g g −g −g g ⎟ , ⎜ ⎟ ⎜ c −a d b −b −d a −c ⎟ ⎜ ⎟ ⎝ f −e e −f −f e −e f ⎠ d −c b −a a −b c −d 1 π 1 3π where a = cos , b = cos etc. Taking into account orthogonality 2 16 2 16 T properties T T = I, inverse discrete cosine transform can be calculated as: where
xr = T T · X.
(11)
For multiplication free implementation of discrete cosine transform in [12,13] it is proposed to use approximation of matrix T by matrix ⎛
⎞ 8 8 8 8 8 8 8 8 ⎜ 12 10 6 3 −3 −6 −10 −12 ⎟ ⎜ ⎟ ⎜ 8 4 −4 −8 −8 −4 4 8 ⎟ ⎜ ⎟ 1⎜ 10 −3 −12 −6 6 12 3 10 ⎟ ⎜ ⎟. H= ⎜ 8 −8 −8 8 ⎟ 8 ⎜ 8 −8 −8 8 ⎟ ⎜ 6 −12 3 10 −10 −3 12 −6 ⎟ ⎜ ⎟ ⎝ 4 −8 8 −4 4 8 −8 4 ⎠ 3 −6 10 −12 12 −10 6 −3
(12)
452
E. Belyaev, T. Sukhov, and L. Kai
On the one hand, matrix H is close to matrix T . On the other hand, H · x and H T · X can be calculated by using 32 additions and 10 shifts only (see program example in [14]). It is necessary to take into account that: H T · D · H = I,
(13)
where D is diagonal matrix. As a result, forward transform can be written as: X = D · H · x = (H · x) ⊗ d,
(14)
where d = D · e, e is a unit vector of length 8 and ⊗ means element-by-element multiplication. Inverse transform can be calculated as: xr = H T · X.
(15)
From (14) is follows that forward transform requires 8 multiplications. It is possible to avoid it by carrying over multiplications into quantization procedure (7). In this case quantization procedure is modified as following: Xq =
x · A (qM , i) + f · 220+qE , 220+qE
(16)
where A (qM , i) = A(qM ) · di . Extending the method described above, 3-D discrete pseudo cosine transform can be calculated by using the row-column-frame approach based on 1-D discrete pseudo cosine transform. 1.3
Transforms Comparison
Table 2 contains number of operations which is needed for fast calculation of 3-D DCT and 3-D DPCT. Figures 1–2 show rate-distortion comparison of these transforms by using different distortion metrics: Peak Signal-to-Noise Ratio (PSNR) and Structural Similarity (SSIM). These results show that computational complexity of 3-D DPCT is significantly less than computational complexity of 3-D DCT. At the same time it has comparable rate-distortion performance. It means that three-dimensional discrete pseudo cosine transform is more preferable for real-time video compression systems. Table 2. Transforms computational complexity for cube 8 × 8 × 8 Transform Multiplications Divisions Additions 3-D DCT (RCF [8]) and quantization 4608 512 11136 3-D DCT (3-D VR [8]) and quantization 2688 512 11136 3-D DPCT and modified quantization 512 0 6144
Scalable Video Coding Based on 3-D DPCT
453
44 43 42
Y-PSNR, dB
41 40 39 38 37 36 3-D DCT 3-D DPCT
35 34 0
300
600
900 1200 1500 1800 2100 2400 2700 3000
bit rate, kbps Fig. 1. Rate-distortion comparison of 3-D DCT and 3-D DPCT for test video sequence “Hall monitor“ by using PSNR
2
Base Layer Coding by Using 3-D DPCT
Figure 3 shows main scheme of the base layer coding using proposed video compression algorithm based on 3-D DPCT. This scheme is typical for a single layer video compression based on 3-D DCT (see [15,16]) and can be described as follows. First, a spatial-temporal filtration is used for input video frames denoising. Then, necessary number of video frames are accumulated in the frame buffer and divided into non-intersecting three-dimensional blocks (for example into cubes 8 × 8 × 8). Motion analyzer chooses compression mode for each cube as following. Let us define value of luma or chroma color component of current and previous cubes in base layer as b(x, y, z) and b (x, y, z) respectively. Selection of the compression mode for cube N × N × N is based on analyzing metrics M1 and M2 which are defined as: M1 = max{m1 (0, 0), m1 (0, N/2), m1 (N/2, 0), m1 (N/2, N/2)}, N a+ N 2 −1 b+ 2 −1
where m1 (a, b) =
max
z∈[0,...,N −1]
x=a
y=b
|b(x, y, z) − b (x, y, N − 1)|,
(17)
454
E. Belyaev, T. Sukhov, and L. Kai
85 80
SSIM
75 70 65 60 55
3-D DCT 3-D DPCT
50 0
300
600
900 1200 1500 1800 2100 2400 2700 3000
bit rate, kbps Fig. 2. Rate-distortion comparison of 3-D DCT and 3-D DPCT for test video sequence “Hall monitor“ by using SSIM
M2 = max{m2 (0, 0), m2 (0, N/2), m2 (N/2, 0), m2 (N/2, N/2)}, a+ N 2
where m2 (a, b) =
max
z∈[1,...,N −1]
−1 −1
x=a
(18)
b+ N 2
|b(x, y, z) − b(x, y, 0)|.
y=b
If T1 ≤ M2 ≤ T2 , where T1 and T2 are algorithm parameters, then current cube is classified as a cube with slow motion. In this mode 3-D DPCT and division free quantization described in section 1.2 are used. If M1 < T1 and M2 < T1 then current cube is classified as a cube without motion (static cube). In this mode current cube is skipped and not transmitted. Otherwise, current cube is classified as cube with intensive motion. In this mode two-dimensional discrete pseudo cosine transform is used instead of 3-D DPCT. This approach allows to decrease visual artifacts for frames with scene changes. Thus, there are three compression modes for each cube: 1. Skip mode; 2. 2-D DPCT mode; 3. 3-D DPCT mode. Rate controller chooses quantization step for each cube depending on required bit rate. Then, the quantized DCT coefficients are lossless compressed by using 3-D zig-zag scanning and context adaptive binary arithmetic coder with probability estimation by Virtual Sliding Window [17].
Scalable Video Coding Based on 3-D DPCT
Input frame buffer
Rate controller
Motion analyzer Compression mode
455
Required bit rate
Quantization step
Spatial-Temporal Filter
Forward 3-D DPCT
Quantization
Output frame buffer
Inverse 3-D DPCT
Inverse quantization
Entropy encoding
Channel
Entropy decoding
Fig. 3. Base layer video compression based on 3-D DPCT
3
Spatial Scalable Video Coding by Using 3-D DPCT
Spatial scalability allows to decode streams with the various frame resolution. Fig. 4 shows spatial scalable coding based on 3-D DPCT. For the sake of simplicity, let us consider a case of a spatial scalable coding with only two layers: base layer and enhancement layer. Then video compression algorithm can be described as follows. First, input frames are decimated by factor two per height and width. Decimated frames are accumulated in base layer frame buffer and compressed as described in section 2. Then, enhancement layer is coded by using four cube compression modes: 1. 2. 3. 4.
Skip mode; 3-D DPCT mode; Inter-layer prediction and 3-D DPCT mode; Inter-frame prediction and 3-D DPCT mode.
For increasing of enhancement layer compression efficiency we include two addition cube compression modes. On the one hand, redundancy between spatial layers is exploited by inter-layer prediction. In this case, reconstructed and scaled cube in base layer is used for prediction of the corresponding four cubes in enhancement layer. On the other hand, redundancy between frames inside enhancement layer is exploited by inter-frame prediction. In this case, last reconstructed 8 × 8 block of the corresponding previous cube is used for prediction of the current cube. For fast compression mode selection in enhancement layer we propose a following heuristic approach. Let us define value of luma or chroma color component of current and previous cubes in enhancement layer as e(x, y, z) and e (x, y, z) respectively. If current cube b in base layer is compressed in Skip mode, then four corresponding cubes in enhancement layer are compressed in Skip mode too. Otherwise, residual metrics R1 , R2 , R3 for cube e are calculated: R1 =
N −1 N −1 N −1 x=0 y=0 z=0
|e(x, y, z) − ˆb(x, y, z)|,
(19)
456
E. Belyaev, T. Sukhov, and L. Kai Base layer input frame buffer
Compression mode
Spatial Decimation
Spatial-Temporal Filter
Quantization step
Forward 3-D DPCT
Quantization
Inverse 3-D DPCT
Inverse quantization Prediction mode
Inter layer predictor
Required base layer bit rate
Base layer rate controller
Motion analyzer
Entropy encoding
Required enhancement layer bit rate
Enhancement layer rate controller
Quantization step
Enhancement layer input frame buffer
Inter layer/frame prediction
Forward 3-D DPCT
Quantization
Entropy encoding
Inter frame predictor
Inverse 3-D DPCT
Inverse quantization
Fig. 4. Spatial scalable coding based on 3-D DPCT
where ˆb(x, y, z) is luma or chroma color component of reconstructed and scaled corresponding cube from base layer, R2 =
N −1 N −1 N −1
|e(x, y, z) − e (x, y, N − 1)|,
(20)
x=0 y=0 z=0
R3 =
N −1 N −1 N −1
|e(x, y, z)|.
(21)
x=0 y=0 z=0
If R1 < min{R2 , R3 } then inter-layer prediction and 3D-DPCT compression mode is selected. If R2 < min{R1 , R3 } then inter-frame prediction and 3DDPCT compression mode is selected. Otherwise, 3D-DPCT without any prediction is used. The quantized DCT coefficients are lossless compressed by using 3-D zig-zag scanning, run-length coding and Huffman code tables.
4
Practical Results
For our experiments proposed spatial scalable video coding algorithm based on three-dimensional discrete pseudo cosine transform and the Joint Scalable Video Model (JSVM reference software v.9.19 [18]) which has formed spatial scalable video stream were used. Practical results were obtained for test video sequences “Hall Monitor“ with 176 × 144 resolution for base layer and 352 × 288 resolution for enhancement layer
Scalable Video Coding Based on 3-D DPCT
457
42 40
Y-PSNR, dB
38 36 34 32 H.264/SVC 3-D DPCT SVC
30 28 0
25
50
75
100
125
150
175
200
bit rate, kbps Fig. 5. Rate-distortion comparison of the base layer coding for test video sequence “Hall monitor“, 176×144, 30fps
40.5 40.0 39.5
Y-PSNR, dB
39.0 38.5 38.0 37.5 37.0 36.5
H.264/SVC 3-D DPCT SVC H.264/SVC, No Inter-layer 3-D DPCT SVC, No Inter-layer
36.0 35.5 35.0 0
100
200
300
400
500
600
700
800
bit rate, kbps Fig. 6. Rate-distortion comparison of the enhancement layer coding for test video sequence “Hall monitor“, 352×288, 30fps
458
E. Belyaev, T. Sukhov, and L. Kai
and a frame rate of 30 fps. Figures 5–6 show relations between peak signal-to-noise ratio (PSNR) and bit rate for base and enhancement layers respectively. In addition, Figure 6 shows compression efficiency of inter-layer prediction in comparison to enhancement layer coding without inter-layer prediction (No Inter-layer). Practical results show that proposed scalable video coding algorithm based on three-dimensional discrete pseudo cosine transform provide comparable compression efficiency in comparison with H.264/SVC. At the same time it has less computational complexity. Therefore, proposed video coding algorithm can be used as an alternative compression method for robust video transmission over wireless channels. This work is supported by the Russian Foundation for Basic Research (projects 10-08-01071-a and 08-08-00403-a) as well as by the Branch of Nano- and Information Technologies of Russian Academy of Sciences (project 2.3).
References 1. IEEE P802.11n D1.0 Draft Amendment (March 2006) 2. Dahlman, E., Ekstrom, H., Furuskar, A., Jading, Y., Karlsson, J., Lundevall, M., Parkvall, S.: The 3G Long-Term Evolution - Radio Interface Concepts and Performance Evaluation. In: IEEE Vehicular Technology Conference (2006) 3. IEEE Std. IEEE 802.16-2004 (Revision of IEEE Std. IEEE 802.16 - 2001). IEEE Standard for Local and metropolitan area networks. Part 16: Air Interface Fixed Broad-band Wireless Access Systems, IEEE. 1 (2004) 4. ETSI EN 302 304 V1.1.1 (2004-11). Digital video broadcasting (DVB): transmission system for handheld terminals (DVB-H). European Telecommunications Standards Institute (2004) 5. Gallant, M., Kossentini, F.: Rate-distortion optimized layered coding with unequal error protection for robust Internet video. IEEE Transactions on Circuits and Systems for Video Technology (2001) 6. Fallah, Y.P., Mansour, H., Khan, S., Nasiopoulos, P., Alnuweiri, H.M.: A Link Adaptation Scheme for Efficient Transmission of H.264 Scalable Video Over Multirate WLANs. IEEE Transactions on Circuits and Systems for Video Technology 18(7) (2008) 7. Schwarz, H., Marpe, D., Wiegand, T.: Overview of the Scalable Video Coding Extension of the H.264 / AVC Standard. IEEE Transactions on Circuits and Systems for Video Technology 17(9), 1103–1120 (2007) 8. Mekky, T., Boussakta, S., Darnell, M.: On the computation of the 3-D DCT. In: 10th IEEE International Conference on Electronics, Circuits and Systems, vol. 3, pp. 1141–1143 (2003) 9. Advanced video coding for generic audiovisual services, ITU-T Recommendation H.264 and ISO/IEC 14496-10, AVC (2009) 10. Wiegand, T.: H. 26L Test Model Long-Term Number 9 (TML-9) draft0, ITU-T Q.6/SG16 Document TML9.doc, VCEG-N83d1 (2001) 11. Hallapuro, A., Karczewicz, M., Malvar, H.: Low complexity transform and quantization, Joint Video Team (JVT) of ISO/IEC MPEG and ITU-T VCEG, Doc. JVT-B038 (2002) 12. Malvar, H.S.: Low-complexity transform and quantization in H.264/AVC. IEEE Transactions on Circuits and Systems for Video Technology 13(7), 598–603 (2003)
Scalable Video Coding Based on 3-D DPCT
459
13. Gordon, S.: Simplified Use of 8x8 Transform, Joint Video Team (JVT) of ISO/IEC MPEG and ITU-T VCEG. Doc. JVT–I022 (2003) 14. Lin, Y.-K., Liao, Y.-Z., Chang, T.-S.: An area efficient design for integer transform in H.264/AVC FRext. In: The 17th VLSI Design/CAD Symposium (2006) 15. Chan, Y.-L., Siu, W.-C.: Variable Temporal-Length 3-D Discrete Cosine Transform Coding. IEEE Transactions on Image Processing 6(5), 758–763 (1997) 16. Servais, M.P., De Jager, G.: Video Compression using the Three Dimensional Discrete Cosine Transform. In: Proceedings of the South African Symposium on Communications and Signal Processing, pp. 27–32 (1997) 17. Belyaev, E., Gilmutdinov, M., Turlikov, A.: Binary arithmetic coding system with adaptive probability estimation by Virtual Sliding Window. In: Proceedings of the 10th IEEE International Symposium on Consumer Electronics, pp. 194–198 (2006) 18. JSVM 9.19 Software Package, http://iphome.hhi.de/
NTRULO: A Tunneling Architecture for Multimedia Conferencing over IP A. Amirante1 , T. Castaldi2 , L. Miniero2 , and S.P. Romano1 1
University of Napoli “Federico II” Via Claudio 21, 80125 Napoli, Italy 2 Meetecho S.r.l. Via C. Poerio 89/A, 80121 Napoli, Italy {alessandro.amirante,spromano}@unina.it, {tobia,lorenzo}@meetecho.com
Abstract. In this paper we present a tunneling solution for multimedia conferencing in Next Generation Networks (NGNs). In particular, we focus on the problems restrictive Firewalls, Proxies and Network Address Translation entities may introduce in multimedia sessions over the Internet, and the need for HTTP-based tunneling when the standard conferencing protocols fail to travel across the network. The paper describes the client-server architecture we devised to achieve an HTTP-based tunneling of the several protocols involved in multimedia conferencing, explaining advantages and drawbacks of the proposed solution. Furthermore, we describe the additional efforts we needed to devote to the standard HTTP tunneling approach in order to let conferencingrelated protocols work with it. Finally we exploit our standard XCONcompliant Meetecho conferencing platform as a complete implementation of our proposal, presenting the reader with some experimental results. Keywords: IETF, XCON, multimedia conferencing, tunneling, firewall traversal.
1
Introduction
Multimedia services have seen a wide growth in the latest years, both in terms of market demand and research efforts. The reason for such a growth comes from the development and evolution of the so called Next Generation Networks (NGNs), which have recently allowed for more and more complex services to be deployed on IP-based networks. Among the multimedia services that more than others have benefited from this evolution, we can definitely mention multimedia conferencing. Multimedia conferencing platforms often allow for a seamless, real-time collaboration among participants scattered across the network, by properly integrating protocols devoted to functionality like instant messaging, real-time video and voice, white-boarding and so on. A lot of efforts have also been devoted to conferencing within the context of standardization bodies like the Internet Engineering Task Force (IETF), in S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 460–472, 2010. c Springer-Verlag Berlin Heidelberg 2010
NTRULO: A Tunneling Architecture for Multimedia Conferencing over IP
461
order to come up with a standard set of protocols allowing heterogeneity of access, as well as interoperability. It is the case, specifically, of the work carried within Working Groups such as SIPPING [1], XCON [2] and MEDIACTRL [3], in which we have been deeply involved as active contributors for years, and which are still operational at the time of this writing. As a result of these standardization efforts, a centralized architectural framework has been designed, and several standard communication protocols, both real-time and non-real-time, have been conceived to meet the specified conferencing requirements. Based on our work within the standardization bodies, we designed and implemented a standards-compliant conferencing platform, called Meetecho [4]. Such platform supports all the protocols that have been proposed within the IETF, like the Session Initiation Protocol (SIP) [5], the Extensible Messaging and Presence Protocol (XMPP) [6], the Real-time Transfer Protocol (RTP) [7], the Binary Floor Control Protocol (BFCP) [8], the Centralized Conferencing Manipulation Protocol (CCMP) [9] and many others. All these protocols allow for a complex and effective deployment of multimedia conferencing scenarios. Nevertheless, to work properly, they also require a cooperative network, given the strong requirements they impose in terms of full access to the underlying network topology and resources. Unfortunately, this is often not the case. In fact, it is not unusual to be compelled to work within networks which are heavily secured and subject to policy and filtering rules. This happens, for example, when all the traffic is forced to pass through a corporate web-only proxy or a firewall. In such situations, multimedia conferencing platforms often fail to work as they should, their functionality being strongly limited or even forbidden. To deal with these limitations, an ad-hoc solution needs to be found, which is the subject of the rest of this paper. Specifically, we present our HTTP [10] tunneling solution. The paper is organized in 6 sections. In Section 2 we will present a more detailed overview of the context of this work, and of what motivated us to work on it. Section 3 will describe the architecture we devised, together with details about both transport- and protocol-related issues. Section 4 will show the experimental results we obtained, in terms of both Quality of Experience and stealthiness achieved through our tunneling solution. A few related works are presented in Section 5, whereas final remarks are provided in Section 6.
2
Context and Motivation
The previous section presented the reader with an overview on how multimedia conferencing has evolved in the latest year, by also mentioning the complex interactions among the numerous heterogeneous protocols it involves. Nevertheless, such protocols, despite being standards devised within the context of international bodies like the IETF, often fail to work when placed in real-world scenarios. This is typically the case of enterprises, work places, public entities like Schools and Universities, as well as other secured environments, which for
462
A. Amirante et al.
one reason or another aim at limiting or filtering out the traffic flowing across their networks. These limitations are usually enforced by deploying more or less restrictive elements like firewalls or proxies at the borders of the network topology, which limit the allowed traffic according to a specific set of policy rules. Such rules may include port- and/or domain-based filtering, filters on TCP or UDP traffic, payload inspection, limitations on the type and number of supported protocols, etc. It is not unus! ual to meet restrictive elements that only allow HTTP and/or HTTPS traffic to pass through, with the HTTP traffic itself that might also be subject to further, payload-based inspections. These scenarios are not new at all, and solutions to effectively deal with them have already been proposed and exploited with alternating success during the years. Specifically, the most common approach that is exploited to get around such limitations is HTTP tunneling. This approach basically consists in encapsulating a generic protocol (e.g., SSH) in valid HTTP requests in order to allow such a protocol to travel across a network it would not otherwise be able to work in. This is usually achieved by deploying two entities into the network: (i) a tunneling server (acting as a web server) on a publicly reachable machine, and (ii) a tunneling client (acting as a web client) usually co-located with the protocol client which needs to be tunneled. A diagram explaining how HTTP tunneling works is presented in Fig. 1.
TCP/IP connections
Client
HTTP Requests
HTTP Tunnel Client
HTTP Requests
HTTP Proxy and/or Firewall
TCP/IP connections
HTTP Tunnel Server
Server
Fig. 1. Generic HTTP tunnel
As it can be seen in the figure, the HTTP tunnel client acts as a server for the generic protocol client, while the HTTP tunnel server acts as the actual client for the generic protocol server. All the traffic is encapsulated by both elements in legitimate HTTP requests, and thus succeeds in traversing the installed HTTP Proxy/Firewall. This approach is widely used; though, while it works fine for generic protocols like SSH or VNC, it raises issues when exploited to carry more sensitive protocols like the ones involved in multimedia conferencing scenarios. In fact, conferencing platforms often envisage the usage of several complex protocols to achieve the functionality they are designed for. Meetecho, for instance, makes use of many different standard protocols, namely CCMP for conference control, XMPP for instant messaging and notifications, SIP/SDP for negotiating multimedia sessions, RTP to transport audio and video frames in real-time, BFCP for moderation, specific protocols based on Java serialization features for what concerns white-boarding and desktop sharing, HTTP for presentation sharing.
NTRULO: A Tunneling Architecture for Multimedia Conferencing over IP
463
That said, the first issue that comes to mind is related to transport-aware protocols like SIP and XMPP. In fact, as highlighted in Fig. 1, a tunnel breaks the end-to-end communication between the client and the server: the client sees the HTTP tunnel client as the actual server, while the server sees the HTTP tunnel server as the actual client. This means that, whenever transport-related information about the actual server and/or client is carried within the tunneled protocol, things are likely not to work at all. For instance, a SIP/SDP session would negotiate the wrong IPs/ports associated with media channels, and as a consequence no RTP connection would be established. Besides, HTTP tunneling raises another issue related to real-time protocols like RTP. In fact, RTP usually is transported over UDP, considering it preferable for media packets to arrive soon rather than reliably. Nevertheless, HTTP is a TCP-based protocol, which means that encapsulated RTP packets may suffer from delay when transported to their destination. This is typically true whenever congestion control is involved. Finally, considering almost all the protocols typically exploited within the context of multimedia conferencing sessions are bi-directional and asynchronous, ways have to be found to achieve a similar behavior on top of HTTP as well, which by itself is instead a stateless, request/response protocol. We will describe in the following sections how we coped with the aforementioned issues in order to design a Meetecho-aware HTTP tunneling solution.
3
NTRULO Architecture
Herein, we introduce the NTRULO tunneling solution we devised for Meetecho. Strictly speaking, from an architectural viewpoint our solution does not differ much from the typical HTTP tunneling solutions. In fact, our approach is based on a client-server architecture, where the client and the server communicate with each other and take care of handling both the HTTP-based transport and the multiplexing/demultiplexing of the Meetecho protocols. An example is presented in Fig. 2. While the client is assumed to be co-located with the generic Meetecho participant (i.e. the client of our conferencing architecture), the server needs to be placed somewhere publicly reachable, in order to act as a web server that all clients, no matter how restrictive their reference proxy or firewall is, can reach via HTTP/HTTPS. As anticipated when describing the generic tunneling solutions, the Meetecho Participant assumes the tunnel client is the Meetecho Conferencing Server, while in turn the Meetecho Conferencing Server must think that the exploited tunnel server is the Participant itself. This means that the Participant does not login at the actual server, but at the tunnel client acting as a proxy for all the protocols involved in a multimedia conference. As a consequence, the Participant does not need to be aware of any tunneling being exploited: it can just assume the server is on a local address (i.e., the tunnel client), and the framework will do the rest. To make this work, it is quite obvious that protocol rewriting may be involved. In fact, both the Tunnel Client and Server act as proxies/bridges for all the
464
A. Amirante et al.
XMPP
XMPP SIP/SDP RTP
Meetecho Participant
...
SIP/SDP
Encapsulated protocols
Tunnel Client
Proxy /Firewall
RTP
Tunnel Server
...
Meetecho Server
Fig. 2. NTRULO HTTP tunnel
protocols. Since, as we already anticipated, some of these protocols are sensitive to transport-related information, proper care must be devoted to them, since a blind encapsulation would likely cause them to fail. All protocols are encapsulated in one virtual channel: proper multiplexing and de-multiplexing is achieved by means of an ad-hoc protocol we devised ourselves. This protocol also takes care of additional functionality that may be required, like tunneling authentication, bandwidth monitoring/shaping of the managed sub-protocols, keep-alive mechanisms to avoid the underlying HTTP transport channel to be shut down, and so on. The section is logically organized in two parts: Section 3.1, describing the HTTP transport approaches, and Section 3.2, managing protocol multiplexing/ de-multiplexing, i.e., how we encapsulated all the involved protocols, with additional details whenever any of them required special care. 3.1
Transport
As anticipated in the introductory section, we assume a single virtual channel is used to encapsulate all the protocols. Hence, we need a way to transport such a virtual channel over HTTP. In our architecture, we devised three different transport modes: (i) HTTPS, (ii) HTTP CONNECT, and (iii) HTTP encapsulation. The actual mode to be used changes according to the limitations enforced on the available network infrastructure, as it will be explained in the following subsections. A diagram depicting the sequence of encapsulation attempts is presented in Fig. 3. HTTPS. The first mode is HTTPS. The tunnel client tries to connect to the tunnel server via the well-known port number 443. In this mode, a single TLS connection is set up between the tunnel client and the tunnel server, since TLS encryption allows for the actual content of the connection to be hidden from the active proxy/firewall. This allows our framework to avoid making use of actual HTTP, but rather exploit our multiplexing/demultiplexing protocol encrypted in TLS. Pre-shared fingerprints are used to avoid potential man-in-the-middle issues. In fact, it may happen that HTTPS is allowed to pass by the proxy, but with the proxy itself acting as a man-in-the-middle to enforce some kind of payload inspection in order to make sure that the content is actually HTTP.
NTRULO: A Tunneling Architecture for Multimedia Conferencing over IP
465
Fig. 3. NTRULO HTTP tunnel attempts: Flow Diagram
Such a scenario would be detected by our platform, considering the fingerprint matching process would fail. Considering the protocol contents are hidden, by relying on this mode of operation we can use the same connection both in transmission and in reception. In fact, we do not need to take into account the nature of HTTP, which means this mode is implementing a ‘fake’ HTTPS connection. HTTP Connect. In case the fake HTTPS approach fails (either because the 443 port is blocked, or because the fingerprints do not match), the tunnel client tries the second mode, namely HTTP CONNECT. CONNECT is a legitimate HTTP command which allows for the conversion of an HTTP request connection to a completely transparent TCP/IP tunnel. An example is the following: CONNECT realserver.example.net:443 HTTP/1.1 Host: proxy.example.com:80
by which a client requests the forwarding of the present HTTP connection (between the client and the proxy) to a different server at a different port. This was originally needed in order to instantiate HTTPS connections through HTTP proxies which did not make use of encryption. Nevertheless, since then many proxies disabled, or at least limited, support for CONNECT, considering it raised several security concerns. In fact, in the absence of further constraints every application could use HTTP CONNECT to carry a completely different protocol than HTTPS. As a consequence, the proxies that still accept CONNECT requests usually only allow it when the requested address is for a well known service, e.g., port 80 or 443. That said, that is exactly what the tunnel client tries to do in case direct HTTPS fails: it tries to request from the proxy the creation of a new, still fake, HTTPS connection towards the tunnel server. Should the request succeed, everything happens just as if direct HTTPS were exploited.
466
A. Amirante et al.
HTTP Encapsulation. In case both the previous modes failed for any reason, we devised a third mode for the transport of the virtual channel. This mode is actual HTTP encapsulation. By using this mode, the tunnel client tries to connect to the tunnel server at port 80. If successful, actual HTTP messages are exchanged between client and server, meaning that HTTP headers and body are properly constructed. Of course, some measures are taken in order to avoid problems. First of all, all the requests include headers to disable caching, in order to avoid any proxy to provide the client or the server with obsolete content after a request. Furthermore, since the content to be transported is not HTML but binary content, the Content-Type header must be manipulated as well in order not to have the proxy drop the request. We chose to simulate the transmission of JPEG images. Finally, two separate, yet logically linked connections are actually used to implement the asynchronous behavior needed by the virtual channel over the actual HTTP interaction. Specifically, the client issues two parallel HTTP requests: (i) an HTTP GET, to receive messages from the server, and (ii) an HTTP POST, to send messages to the server. Random Content-Length headers are chosen, in order to simulate different requests. As soon as all the data corresponding to a specific length have been sent/received, a new POST/GET is sent to keep the connection alive. This approach has the disadvantage of bringing more overhead, considering additional encoding on the data is needed (in our case, we chose a Base64 encoding) and two separate connections need to be properly synchronized. However, this solution is the one more likely to succeed in the most restrictive scenarios, as confirmed by our experimental tests. 3.2
Protocols Handling
Whatever mode is exploited, what is transported is the same virtual channel. This channel acts as a virtual container for all the involved protocols, which are multiplexed (and de-multiplexed accordingly) at the application level. We also devised a solution able to cope with the co-existence of more instances of the same protocol in the same virtual channel, as in the case, for instance, of RTP, for which we might have a first connection dedicated to the audio stream and a second one devoted to video. As anticipated at the beginning of this section, just encapsulating these protocols onto the virtual channel may not be enough in some cases. In fact, while protocols like CCMP, BFCP, RTP and (partly) HTTP can be blindly forwarded through the virtual channel without hassle, the same cannot be said for other protocols that are aware of the underlying transport information, as in the case of XMPP, SIP/SDP and Java serialization-based protocols (used by the whiteboarding and desktop sharing modules in Meetecho). These protocols are sensitive to some transport-level parameters that might be carried as part of their payload and hence call for proper manipulation and rewriting in order to work in a scenario like the one introduced by tunneling, which clearly violates the end-to-end principle.
NTRULO: A Tunneling Architecture for Multimedia Conferencing over IP
467
XMPP. XMPP is used in Meetecho for several purposes. In fact, despite being a widely spread instant messaging protocol with support for Multi User Chat (i.e., conference rooms), it is also easily extensible with additional features (like notifications, voting/polling, dynamic negotiation of features, etc.) that make it the perfect candidate for conferencing-related functionality. That said, XMPP is partly aware of the network it is deployed on. Specifically, domains and IP addresses play a strong role in XMPP, since they are part of the To and From fields of all requests, responses and events. In order not to suffer from the tunneling encapsulation, the domain part of all these fields needs to be properly rewritten, since the tunnel client and the tunnel server act as entry and exit points for the XMPP communication with the participant and the conferencing server, respectively. Besides, as we already said, in the Meetecho platform XMPP is also used to dynamically negotiate some of the additional functionality provided. It is the case, for instance, of presentation sharing and desktop sharing. These features, while implemented by means of other protocols, are actually negotiated within the context of XMPP requests. This means that these requests need to be manipulated as well, so that the tunnel client can deploy virtual servers to act as bridges for those protocols as well, in place of the unreachable real servers. SIP/SDP. SIP and SDP are widely deployed protocols devoted to the negotiation of multimedia sessions. They are the most commonly used protocols in VoIP scenarios. For this reason, since the beginning they have been chosen as the perfect candidates for the multimedia functionality in a standard conferencing environment like Meetecho. They both are strongly aware of transport information, and as such very sensitive to anything that could interfere with it (e.g., NAT issues, etc.). Transportrelated information, in fact, can be found in many of the headers in SIP, and in the negotiation lines of SDP. For this reason, all these fields and lines need proper rewriting in order to take care of the protocol bridging. For what concerns SIP, the REGISTER message needs additional care, considering the negotiated DIGEST includes the involved addresses. For what concerns SDP, instead, all that is needed is a proper rewriting of the media lines, in order to create RTP bridges accordingly. Java Serialization. Java Serialization is a technique commonly used in several network projects based on Java. It basically consists in a mechanism by which native Java objects can be converted in a binary format, for instance in order to be transmitted over a network stream, and converted back to native Java objects once they reach their destination. Such technique is used in our conferencing platform for two main functions: shared whiteboard (jSummit ) and desktop sharing (jrdesktop). By itself, Java Serialization is not a network protocol, and as such it is not sensitive to transport-related information. Nevertheless, protocols can be built on top of it, as is the case of Java Remote Method Invocation (Java RMI) and the aforementioned Meetecho features. Whenever such protocols include
468
A. Amirante et al.
the manipulation of objects which contain addresses and/or ports in order to work correctly, they become sensitive to tunneling. This is exactly the case of both jSummit and jrdesktop. In order to make them work despite the tunneling, we had to implement a proper manipulation of the protocol contents. This included low-level manipulation of the serialized objects in the streams, making sure they remained coherent and decodable at the destination (e.g., enlarging/restricting payloads when necessary in order to avoid exceptions).
4
Experimentations
This section presents a brief overview of the experimental results we obtained from the implementation of our approach. We both show how we verified the capability to deal with restrictive network environment, and report some performance figures we devised. Proxy/firewall Traversal. In order to simulate a restrictive component on the network, we deployed a generic PC equipped with a Linux distribution (Debian GNU/Linux 5.0) in our testbed, to act as either a firewall or a more or less restrictive proxy. We made use of well known open source tools to implement these behaviors, namely IPtables for the firewall functionality, Apache HTTPD as a generic HTTP proxy and Squid as both an explicit and a transparent HTTP proxy. To make sure all the traffic coming from the participant would need to pass through our component in order to reach the server, we configured the PC as a Linux Router, and then explicitly set it as the default gateway for our test participant. For what concerns the firewalling functionality, we prepared a series of increasingly restrictive IPtables rules to enforce on such a machine, in order to filter the traffic handled by the proxy accordingly. This allowed us to force a test of all the three transport modes previously introduced, namely HTTPS, CONNECT and HTTP. To test the first mode, the first rule we envisaged was to only allow HTTP and HTTPS traffic through the proxy. This, translated to IPtables words, means we needed to prepare a rule to only allow incoming TCP connection on the wellknown ports used by those two protocols, i.e., 80 and 443, as shown below. iptables -I FORWARD 1 -p tcp -m multiport --dports 80,443 -j ACCEPT iptables -I FORWARD 2 -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -I FORWARD 3 -j DROP
In this first setup, only IPtables was configured, while neither the Apache web server nor the Squid proxy were active. We verified that, under these restrictions, the Tunnel Client was able to reach the Tunnel Server using the fake HTTPS operation mode, and allowed its related participant to successfully join a multimedia conference. In fact, as explained,
NTRULO: A Tunneling Architecture for Multimedia Conferencing over IP
469
the fake HTTPS has the Tunnel Client connect at the Tunnel Server at port 443, thus simulating a HTTPS connection and circumventing the IPtables rule. Of course, considering such an experiment only envisaged a blind port-filtering mechanism to be in place, it was assumed to work fine anyway. In fact, whenever ports alone are used to filter traffic, these rules are easily circumventable. After this trivial experiment, we chose to enforce a stricter restriction on the allowed connections, in order to test the second mode as well. We first removed the 443 port from the previous rule, thus limiting the allowed traffic to HTTP only. Furthermore, we also deployed an Apache HTTPD Web Server in order to add support for the HTTP CONNECT to our proxy component. To do so, we added the following lines to the HTTPD configuration: ProxyRequests On AllowCONNECT 443 [..]
which allowed HTTPD to act as a proxy, but only for requests directed to a server at port 443, thus limiting the proxy functionality to HTTPS only. As expected, this time the fake HTTPS mode was not successful: in fact, the IPtables rule did forbid any connection attempt to any port different than 80, and so 443 made no difference. As a consequence, the Tunnel Client tried the next mode, i.e., HTTPS via CONNECT. Having explicitly configured the application to use our proxy component as HTTP proxy of the network, the Tunnel Client successfully managed to reach the Tunnel Server: in fact, first of all the request was addressed to a server listening on port 80 (HTTPD), thus circumventing the limitation imposed by IPtables. Besides, the request was an HTTP CONNECT request to reach the Tunnel Server at port 443: this was allowed by our restriction on the proxy functionality in the HTTPD configuration, and as a consequence the Tunneling worked fine as well. Having verified that the Apache web server supported our request, we chose to also test the second mode using a more strict component as the Squid proxy. We disabled Apache and launched Squid as an explicit proxy instead. The support for CONNECT, as before, was limited for port 443 alone. Even in this scenario, the second mode of operation was successful: the Tunnel Client was able to request the creation of an encrypted connection towards the Tunnel Server by means of the CONNECT method, and the session went on as expected. This confirmed us that the approach we employed was correct and effective for such a need. To test the last and more delicate mode, we removed the support for the CONNECT method from our testbed scenario. Maintaining the previous IPtables rules enforcements, we also changed the default Squid behavior, by making it act as a transparent HTTP proxy rather than an explicit one: this means that we wanted all HTTP traffic to be intercepted and manipulated by Squid without any configuration needed on the client side, making all clients unaware of any proxy/cache being in place. We also configured a proper IPtables rule to forward all requests addressed to port 80 to port 3128 instead (the default port used by
470
A. Amirante et al.
Squid), in order to actually redirect all the HTTP traffic passing through our component to Squid to have it managed accordingly. We then launched the experiment again. As expected, the first two modes both failed: HTTPS on port 443 was blocked by IPtables, and no HTTPS proxying functionality was available to attempt an HTTP CONNECT bridged connection. The third mode, instead, worked flawlessly: in fact, such mode assumes two HTTP connections are set up towards the Tunnel Server at port 80, thus successfully traversing the IPtables limitations. Besides, Squid successfully recognized both the connections as valid HTTP traffic, and redirected the traffic to the Tunnel Server according to its business logic. RTP over TCP Performance Assessment. The transmission of real-time media flows usually leverage the UDP protocol to transport RTP packets. In fact, a reliable transmission might be inappropriate for delay-sensitive data, since retransmissions increase delay and congestion control mechanisms affect the transmission rate. We presented, instead, a tunneling solution that exploits the HTTP protocol (which works over TCP connections) to carry RTP packets, too. In this subsection we present the results of the tests we performed in order to assess the performance of the proposed approach. We exploited our Meetecho conferencing platform to evaluate the delay that characterizes the RTP connections, either when no tunneling solution is in place or when NTRULO is employed. More precisely, we focused on the delay jitter, which is known as the key performance indicator of real-time communication channels. Fig. 4-a shows the time evolution of the jitter, as regards an audio RTP channel relying on the UDP protocol. Fig. 4-b, instead, depicts the jitter evolution when NTRULO is employed in an uncongested network environment, which is very similar to the previous one. Jitter (ms)
Jitter (ms) 120
120
100
100
80
80
60
60
40
40
20
20
0
0
(a)
(b)
Fig. 4. Time evolution of the jitter with no tunneling solution (a), and when NTRULO is employed in an uncongested network (b)
Finally, Fig. 5 shows NTRULO’s performance when a heavy network congestion occurs: in this scenario the trend is more irregular, reflecting the further delay introduced by TCP congestion control mechanism. Anyway, from a qualitative perspective, such delay did not lead to bad quality audio communications, since the conference audio was still intelligible.
NTRULO: A Tunneling Architecture for Multimedia Conferencing over IP
471
Jitter (ms) 200 180 160 140 120 100 80 60 40 20 0
Fig. 5. Time evolution of the jitter when NTRULOis employed in a highly congested network
5
Related Work
As anticipated in Section 2, tunneling is not a novel approach within the context of firewall/proxy traversal. As such, many solutions have been proposed in the same spirit. This includes both techniques and implementations, often released as open source. A well known HTTP-based tunneling solution is HTun [11], a Linux open source application that allows for the tunneling of a protocol over HTTP. This application works very well with generic protocols (e.g., SSH) but fails with protocols that are aware of transport-level parameters. Besides, only one protocol instance per tunnel is supported. For what concerns the tunneling of multimedia applications, many proprietary solutions exist that implement the tunneling of VoIP traffic, both SIP and RTP. Nevertheless, these solutions often rely on the creation of ad-hoc VPN connections (thus requiring additional software installation and configuration), and/or are able to tunnel just VoIP traffic and nothing else. Despite the amount of tunneling solutions out there, no effort that we know of has ever been devoted to the context of multimedia conferencing and all its facets, which comprises asynchronous behavior, VoIP-related issues and transport-aware protocols at the same time.
6
Conclusions and Future Work
We presented in this paper an ad-hoc solution for HTTP/HTTPS-based tunneling of multimedia conferencing scenarios. The approach we presented comes from real-life experiences with our Meetecho conferencing platform, an implementation of the latest conferencing standards within the context of the IETF. Meetecho has indeed been adopted as a reference testbed for our implementation of the tunneling framework and helped us validate our solution in a number of actual deployment scenarios, characterized by more or less restrictive network elements, bandwidth constraints, and network configuration policies. The results of the experimental campaign we conducted so far are definitely encouraging:
472
A. Amirante et al.
the encapsulation solutions we devised look really effective from the performance standpoint and also show a high level of reliability and robustness. We are now planning to include in the trials new scenarios characterized by dynamically changing conditions and aimed at testing non-functional, yet fundamental, requirements of the tunneling architecture, like fault-tolerance and dependability. It is our aim to also address potential security issues. Finally, additional efforts will be devoted to the study of different architectural topologies for the tunneling framework. In fact, the tunneling client currently needs to be co-located with the participant application, meaning each tunnel instance can only handle one participant at a time. No such limitation exists for the server side, of course. A potential idea for our future work concerns a more comprehensive tunneling client application, e.g., a remote proxy client handling several authorized participants at the same time. A network administrators might configure such proxy in order to just allow for the existence of conferencing sessions (e.g., Meetecho-enabled sessions) in a controlled secure environment.
References 1. Rosenberg, J.: A Framework for Conferencing with the Session Initiation Protocol (SIP). RFC 4353 (February 2006) 2. Barnes, M., Boulton, C., Levin, O.: A Framework for Centralized Conferencing. RFC 5239 (June 2008) 3. Melanchuk, T.: An Architectural Framework for Media Server Control. RFC 5567 (June 2009) 4. Amirante, A., Buono, A., Castaldi, T., Miniero, L., Romano, S.P.: Centralized Conferencing in the IP Multimedia Subsystem: from theory to practice. Journal of Communications Software and Systems, JCOMSS (March 2008) 5. Rosenberg, J., Schulzrinne, H., Camarillo, G., et al.: SIP: Session Initiation Protocol. RFC 3261 (June 2002) 6. Saint-Andre, P.: Extensible Messaging and Presence Protocol (XMPP): Core. RFC 3920 (October 2004) 7. Rosenberg, J., Schulzrinne, H., Camarillo, G.: others. SIP: Session Initiation Protocol. RFC 3261 (June 2002) 8. Camarillo, G., Ott, J., Drage, K.: The Binary Floor Control Protocol (BFCP). RFC 4582 (November 2006) 9. Barnes, M., Boulton, C., Romano, S.P., Schulzrinne, H.: Centralized Conferencing Manipulation Protocol (work in progress) (February 2010) draft-ietf-xcon-ccmp-06 10. Fielding, R., Gettys, J., Mogul, J., et al.: Hypertext Transfer Protocol – HTTP/1.1. RFC 2616 (June 1999) 11. Jacobson, M., Nordstrom, O., Clark, R.J.: HTun: Providing IP service over an HTTP proxy, http://htun.runslinux.net/docs/htun-paper.pdf
Seamless Streaming Service Session Migration Support Architecture for Heterogeneous Devices Geun-Hyung Kim1 and Bong-Hwan Lee2 1
2
Department of Visual Information Engineering, Dong-Eui University 995 Eomgwangno, BusanJin-Gu, Busan 614-714, Korea Department of Information and Communication Engineering, Daejeon University 96-3 Yonggun-Dong, Dong-Gu, Daejeon 300-716, Korea [email protected], [email protected]
Abstract. As digital media is being combined into all aspects of our lives and an ubiquitous computing environments are being emerged, users, who owns several devices, expect to extend the consumption of services seamlessly on any device, any time and anywhere. This new demand requires a convenient mechanism to migrate ongoing service sessions from one device to other devices. In order to migrate running service sessions to other devices, the flexible service adaptation to user requirements and to device capabilities is necessary. In this paper, we propose an architecture that enables session migration to heterogeneous devices or multiple devices in mobile IPTV environments and discuss the technical issues which should be resolved. The proposed architecture consists of content management unit to adapt device capabilities in the streaming server and session migration management unit to migrate, split, and merge sessions. Finally, we describe our prototype and a testbed that has been implemented.
1
Introduction
Digital broadcasting has been evolving for several years, due to the advance of media compression and computing technologies. In addition, the delivery mechanism for digital broadcast content through the broadband convergence network(BcN), which consists of fixed and mobile broadband access networks, has progressed constantly. Consequently, Internet protocol television(IPTV) has been deployed over the fixed broadband access network and users can enjoy various multimedia streaming services, such as broadcasting and web-based streaming, regardless of their locations. Nowadays, making use of various multimedia devices, that are connected to the Internet, allows users to enjoy personalized services with any device regardless of access networks. Consequently, this tendency induces mobile IPTV service, in which users can transmit and receive multimedia contents as well as television signal over BcN, with support of mobility and quality of service(QoS). In addition, users can benefit from the advantages of mobile and stationary devices; easily carrying around, high data rate, big display size and high computing power respectively. However, currently these devices are independent of S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 473–484, 2010. c Springer-Verlag Berlin Heidelberg 2010
474
G.-H. Kim and B.-H. Lee
each other. It decreases the usability from the user’s point of view. In particular, users can not easily migrate ongoing service from one of their devices to others. In ubiquitous and pervasive environments, several multimedia devices could be used for consuming multimedia services. Service session migration, which enables easily and transparently to switch from one devices to another while enjoying service, is very much required. By the seamless service session migration mechanism, service sessions can be dynamically migrated from one device to another, split into multiple devices within the vicinity of the current device, or merged to one device to bring the best customer service experience. Therefore, users can utilize the diverse capabilities of their devices and service session migration will be an important concept for a flexible multimedia service provisioning. For instance, a smart home environment could detect that a user, watching a movie in the living room, is moving to the kitchen. When he is in front of the LCD panel at the fridge, a movie stream could be automatically migrated to the fridge’s LCD panel. When he is leaving home, he want to migrate a running service session from LCD panel to the mobile devices attached to wireless networks. Moreover, the limited battery power of mobile devices motivates service session migration. If one device runs out of power, the service session can be migrated to another device and the user can use the service continuously. As an another example, a user has enjoyed a multimedia service using mobile device at outdoor and he comes back home. If there are several multimedia devices, such as stereo speakers and TV etc., he may migrate the audio media session to the stereo speakers and a video media session to the TV. Subsequently, when he is willing to leave out, he demands to merge both media sessions to his mobile device for service continuity. In this paper, we propose an architecture based on the service architecture of telecommunications information network architecture consortium(TINA-C) [1], to support migration of a wide range of multimedia sessions, like audio/video media sessions, web sessions and online games etc. In addition, we describe the content management scheme for mobile IPTV to enable service session migration seamlessly to other devices with different capabilities and how service session migration across heterogeneous devices in mobile IPTV environment can be realized using real time streaming protocol(RTSP) [2]. The rest of this paper is organized as follows. In Section 2, we provide an overview on the migration management and the related work for the service session migration architecture. In Section 3, we describe the proposed architecture. Afterwards, we describe the initial implementation of the architecture in Section 4. Finally and we give out the conclusion in Section 5.
2
Related Work
In TINA-C, a session is defined as the temporal relationship among a group of objects that are assigned to collectively fulfill a task for a period of time and is classified into an access session, a service session, and a communication session.
Seamless Streaming Service Session Migration Support Architecture
475
A session has a state related to service provisioning and may be changed during its lifetime [1]. With session control and management, the mobility is widely used in communication networks and is classified into three different mobility aspects; personal mobility, terminal mobility, and service session mobility [3]. Terminal mobility is the terminal ability to use the same set of subscribed services from anywhere even while in motion and the network capability to locate and identify that terminal as it moves. It enables users to move with their devices while using service. Personal mobility is the ability of a user to access services from anywhere, at any time, using any device on the basis of a single personal identifier in all occasions and the network capability to provide these services in accord with the user’s service profile. By the personal mobility management, users can select a suitable device wherever they are and enjoy the services with the selected device. Service session mobility(migration) is the ability of a service to maintain an ongoing service session from one device to other devices. While maintaining the running session alive, new devices with different capabilities can be added to the session and existing media session can be removed or modified. Fig. 1 shows the example of service session migration. With service session migration, users utilize the devices relevant to the usage environment in terms of large screen, communication cost, battery power, mobility etc.
Fig. 1. The service session migration example in mobile IPTV
Service session migration has been studied in various aspects. While some have focused on session migation between applications [4], others have focused on protocols allowing session migration for the multimedia communication services, such as voice over Internet protocol (VoIP) [5] [6]. Two approaches were proposed to support service session migration using session initiation protocol(SIP) in VoIP. The first one is using the REFER method defined in RFC 3515 [7] to perform call transfer functionality. The second one is using the third party call control (3PCC) mechanism defined in RFC 3725 [8]. Both methods can transfer ongoing sessions from one device to another in the multimedia communication services and retrieve transferred or split sessions. However, these methods cannot support to transfer ongoing service sessions to multiple devices [9].
476
G.-H. Kim and B.-H. Lee
SSIP [10] mechanism supported to transfer or split an ongoing session over multiple devices by using “Mobility” extension header in an INVITE request and a REFER request to indicate session splitting. In addition, they proposed the concept of “Association” to solve the problem of terminating all devices separately when a session was split over multiple devices. In their paper, the session split mechanism was only discussed. They also proposed the session retrieval mechanism using SIP using the nested REFER method which could be used to request another REFER [9]. Shacham [11] proposed session migration over multiple devices by integrating the REFER method and the 3PCC control mechanism and introduced the concept of “Virtual Device” to manage the transferred session between multiple devices efficiently. In addition, in the Virtual Device, the Multi-Device System Manager (MDSM), as a coordinator of the session migration, invites each local device and sets up media session between correspond node and each device by using the 3PCC. Though this mechanism has the advantages of the 3PCC and the REFER method, it has a limitation that the split session cannot be combined into any one of the device in the Virtual Device. M´ as et al. [12] proposed a SIP-based IPTV session transfer procedure in the IMS IPTV service for networked-based media over three screens (TV, mobile devices, and personal computers). They applied the REFER method to transfer the IMS IPTV session from a STB to a PC and evaluated IMS IPTV session switching between different viewing stations with the aid of IMS. However, they did not consider the relation between SIP session and RTSP session which is required to control a streaming. In addition, their proposal has the shortage, such that all devices contain SIP protocol stack to support proposed mechanism. Keukelaere et al. [13] demonstrated how MPEG-21 can be used to provide a solution for session migration between devices with different terminal and network capabilities and discussed the feasibility of the MPEG-21 approach for session migration. Guenkova-Luy el al. [14] proposed the integration SIP/SDP with MPEG-21 digital item(DI) to support sophisticated service descriptions for session migration. These two researches considered the service descriptions using MPEG-21 for session migration, however these did not address the session control signaling using these descriptions in detail.
3
Architecture for Streaming Service Session Migration
By the service session migration, users can utilize seamlessly their service on any device with the same user profile while moving. An architecture, supporting service session migration seamlessly over heterogeneous devices, has to resolve several following technical issues; – discovery the neighboring devices to which service session may migrate – delivery of session description information, including content related information, to destination devices – control session migration mechanism to a specific device
Seamless Streaming Service Session Migration Support Architecture
477
– migration mechanism of whole or partial media sessions to single device or multiple devices – session split or merge mechanism to multiple devices or single device – adaptation the streaming content to the device capabilities – playback time synchronization of media data split over multiple devices In addition, the service session migration mechanism should be transparent to the user and flexible to provide service personalization according to the profiles related to service provisioning. These profiles consist of context, device, content, and user profile. The device profile may include device type, display size, supporting codecs and so on. The context profile may include any dynamic information that can be used to characterize the situation of an entity [15]. The context information may be classified into logical and physical context. The example of the logical context, specified by users or captured by monitoring the user’s interaction, is user’s goal, emotional state and identity. The example of the physical context, which can be measured by sensors, is location, weather, and temperature. The content profile may be meta-data of the content, such as media type and format and so on. The user profile may include user preferences, such as preferred access networks and receiving media qualities (frame rate, resolution, etc.) according to the devices, attached networks and context profiles. Essentially, the user profile includes user’s authentication, authorization and accounting (AAA) information and user’s policies for service usage.
Fig. 2. The software components of a device including SMA
A major component of our architecture is a session migration agent (SMA) on a devices. The SMA triggers the device or service discovery and the device or service selection. It also controls service session migration according to the policies and preferences in the user profile and the context information in the context profile. The software components of an SMA as well as the other software components in the device are depicted in Fig. 2. The SMA performs the streaming service session migration control functions as well as the streaming session control functions using RTSP or hyper text transfer protocol(HTTP).
478
G.-H. Kim and B.-H. Lee
Fig. 3. The software components of a streaming server including SSMA
We propose a server session migration agent (SSMA) on the streaming server too. The SSMA manages the requests from the clients for streaming control and service session migration to other devices, authenticates the user’s identity, and controls the content management function to stream the adequate content. Fig. 3 shows the components of SSMA on the streaming server. 3.1
Service Session Information Model
In this paper, we define the service session as a logical relationship between communication peers(i.e., a streaming server and a client in mobile IPTV environment). In general, the streaming server manages the service session state which may be changed by the control messages from the client. Currently, most deployments of streaming services adopt the RTSP signaling to enable the client to setup the RTSP session and control the delivery of either single or several time-synchronized streaming media. An RTSP session is a stateful entity; the streaming server maintains an explicit RTSP session state machine where most state transitions are triggered by the client’s requests. The RTSP session, a common context between the client and the streaming server, consists of one or more media sessions, which are to be under common playback control. A session identifier (session Id) is used to keep track of the service session which consists of several media sessions. To support service session migration, the SSMA associates the user profile and policy with session information, device profile, and content profile after receiving the client’s session establishment request (i.e., RTSP SETUP request). The SSMA keeps track of this association until the client releases that service session. The SSMA deals with the client’s session migration request by changing relevant information primitives in the service session information model shown in Fig. 4.
Seamless Streaming Service Session Migration Support Architecture
479
Fig. 4. The information model of service session
3.2
Content Management
In mobile IPTV environment supporting heterogeneous devices with different capabilities, the streaming server should stream an adequate to the device’s capabilities. To do so, it may switch other media data, which belongs to the same content, for adapting the device’s capabilities. For seamless service session migration without user’s notice, we propose the content management scheme for seamless service session migration.
Fig. 5. The proposed content file structure
Basically, several multimedia file formats, such as *.mp4, *.3gp, *.3g2, and *.mov, have been derived based on ISO base media file format(BMFF) [16]. The ISO BMFF defines structured media data information for timed presentation of media data, such as a metadata of the content and so on. The ISO BMFF supports media data streaming over a network as well as local playback. In order to packetize the compressed media data over any streaming protocols(i.e., RTP, MPEG-2 TS) easily, the content file includes additional tracks called hint tracks which contain instructions to assist a streaming server in the packet formation for transmission. We extend the file structure to store multiple video and audio
480
G.-H. Kim and B.-H. Lee
media data in a file as shown in Fig. 5. By using single content file for seamless session migration, users or the SMA does not know what file is adequate to the destination devices and the server is responsible for streaming an adequate media data to the destination devices. The movie box(’moov’) and the media data box(’mdat’) hold the metadata and the actual media data for presentation respectively. In the proposed file structure, several media data and metadata(stream tracks and hint tacks) for the same content, are stored in a file. When service session migration requires the change of media data, sample decoding time stamp(DTS) and sample composition time stamp(CTS) of corresponding hint tracks are used to synchronize the switching point of media data. This scheme has benefit which user only knows the content name, regardless of the streamed content profile to support different devices. 3.3
Service Session Migration Mechanism
In this section, we describe the service session migration mechanism with respect to the scenarios depicted in Fig. 6.
Fig. 6. The streaming session migration scenarios Table 1. The classification of streaming service session migration Source Destination Migration type Control session migration case 2 partial session migration no migration case 1 case 3 whole session migration migration case 1 merge no migration case 2 case 3 session merge migration case 1 whole migration migration case 3 case 2 session split migration
As depicted in Fig. 6, we classify the mobile IPTV service usage patterns into three cases. The case 1 and case 3 show that users utilize a device with different capabilities in terms of display size, computing power, attached network and so
Seamless Streaming Service Session Migration Support Architecture
481
on. The case 2 means that multiple devices are used for corresponding multimedia streams and one delegate device has session control function. In Table. 1, we summarize the migration among three cases in terms of the migration type and whether the control session migrates.
(a) The partial session migration procedure
(b) The session split procedure
(c) The session merge procedure Fig. 7. The session migration procedures
In mobile IPTV environment, there are four migration types; partial session migration, whole session migration, session merge, and session split. Since the procedure for whole session migration from one device to the other device and related session description protocol(SDP) message extension has been discussed in the previous study[17], we investigate the partial session migration, session merge, and session split from now on.
482
G.-H. Kim and B.-H. Lee
The partial session migration procedure without control session migration is shown in Fig. 7(a). In order to trigger audio media migration to the speaker, the mobile device sends the session transfer message with SDP of media data. When the mobile device receives the response with SDP and IP address from the speaker, mobile device sends RTSP SETUP request to the streaming server in order to redirect audio stream to the speaker. The session split procedure to multiple devices is shown in Fig. reffig:split. In this case, the TV sends a session transfer message to the mobile device, since the mobile device has session control role. And then, the mobile device sends to the speaker to obtain the SDP information and IP address of it. After the mobile device receives an OK response regarding session transfer message for SETUP request to the streaming server, the mobile device notifies the TV that the session migration goes off. The session merge procedure to a device is shown in Fig. 7(c). The session transfer message, sending to the TV, triggers the session migration too. After the TV receives a triggering message, it sends SETUP request with the SDP information. Since then, similar procedures described above are needed.
4
Implementation
We implement streaming session migration architecture on the mobile IPTV testbed in the campus as shown in Fig. 8.
Fig. 8. The mobile IPTV testbed in the campus
The testbed basically consists of the unicast backbone for on-demand streaming service and multicast backbone for live streaming service. We utilized the unicast backbone to verify our implementation. Our streaming server is based on Darwin Streaming Server on a Linux system running Linux 2.6.20 and the client is based on devices running windows XP connected to wireless and wireline access network and the smart phone running iPhone OS 2.2. Fig. 9 shows the result of initial implementation. Fig. 9(a) represents the screenshot before the service session migration and Fig. 9(b) represents the screenshot after the service session migration. There is short time lag between Fig. 9(a) and Fig. 9(b), since the playback on the new device should start from the intra-frame of encoded media data.
Seamless Streaming Service Session Migration Support Architecture
483
(a) before the service session migration
(b) after the service session migration Fig. 9. The screenshot of service session migration
5
Conclusion
Given the fact that there is a wide variety of device capabilities for handling multimedia streaming, it is increasingly obvious that there is a demand for service session migration between those devices. Moreover, as broadband wireless solutions are becoming more and more available at reasonable cost, users want to access the content anywhere with any device. In this paper, we propose an architecture that enables session migration to heterogeneous devices or multiple devices in mobile IPTV environments and discuss the technical issues which should be solved. The proposed architecture consists of content management unit to adapt device capabilities in the streaming server and session migration management unit to migrate, split and merge sessions. Finally, we describe our prototype and the testbed that has been implemented as initial step. As a future work, we will implement the whole proposed procedures increasingly in our architecture and extend seamless service session migration between heterogeneous devices to other applications, such as web applications etc.
484
G.-H. Kim and B.-H. Lee
References 1. Abrarca, C., et al.: Service Architecture version 5.0 (June 1997), http://www.tinac.com/specifications/documents/sa50-main.pdf 2. Schulzrinn, H., et al.: Real Time Streaming Protocol 2.0 (RTSP) (March 2009) (work in progress) draft-ietf-mmusic-rfc2326bis-20 3. ITUT-T : ITU-T Recommendation Q.1706/Y.2801 (2006) 4. Song, H., et al.: Browser Session Preservation and Migration. In: Proc. WWW 2002, pp.7–11 (May 2002) 5. Schulzrine, H., et al.: Application-Layer Mobility using SIP. Mobile Computing and Communications Review 4(3), 47–57 (2000) 6. Handley, M., et al.: SIP:Session Initiation Protocol. RFC 2543, IETF (March 1999) 7. Sparks, R.: The Session Initiation Protocol (SIP) Refer Method. RFC 3515, IETF (April 2003) 8. Rosenburg, J., et al.: Best Current Practices for Third Party Call Control (3pcc) in the Session Initiatation Protocl (SIP). RFC 3725, IETF (April 2004) 9. Chen, M.-X., Wang, F.-J.: Session Mobility of SIP over Multiple Devices. In: Proc. Tridentcom 2008, pp.1–9 (March 2008) 10. Chen, M.-X., et al.: SSIP: Split a SIP session over multiple devices. Computer Standards and Interfaces 29(5), 531–545 (2007) 11. Shacham, R., et al.: Session Initiation Protocol (SIP) Session Mobility. draftshacham-sipping-session-mobility-05, IETF Draft (November 2007) 12. M´ as, I., et al.: IPTV Session Mobility. In: Proc CHINACOM 2008, pp.903–909 (August 2008) 13. Keukelaere, F.D., et al.: MPEG-21 Session Mobility on Mobile Devices. In: Proc. ICIC 2005, pp.287–293 (June 2005) 14. Guenkova-Luy, T., et al.: Service Mobility with SIP, SDP and MPEG-21. In: Proc. ConTel 2007, pp.293–300 (June 2007) 15. Abowd, D.: Providing Architectural Support for Building Context-Aware Applications. PhD Thesis, College of Computing, Georgia Institute of Technology (2000) 16. ISO/IEC 14496-12: Information technology-coding of audio-visual object Part 12: ISO based media file format (2005) 17. Kim, G., You, G.: Streaming Session Mobility across Multiple Devices in Mobile IPTV Envorinments. In: Proc. ICUT 2009 (December 2009)
Author Index
Amirante, A. 460 Ando, Ryosuke 207 Andreev, Sergey 184 Anisimov, Alexey 184 Aprile, Walter A. 135
Iradat, Faisal 196 Iversen, Villy B. 160
Bagula, Antoine 335 Balandin, Sergey 72 Banˆ atre, Michel 111 Baqer, Mohamed 148 Belyaev, Eugeniy 448 Boldyrev, Sergey 72 Boytsov, Andrey 1 Budkov, Victor Yu 62 Buntakov, Alexander 84
Kai, Liu 448 Karpov, Alexey A. 62, 102 Kashevnik, Alexey 72 Kim, ByungChul 275, 353 Kim, Geun-Hyung 473 Koren, Alexey 84 Kotsopoulos, Stavros 377
Castaldi, T. 460 Chakraborty, Dipanjan 50 Chaltseva, Anna 323 Chande, Suresh 123 Chan, H. Anthony 335 Coronato, Antonio 26 Cremene, Ligia C. 219 Datta, Sudip 123 De Pietro, Giuseppe 26 Dominici, Michele 111 Dudarenko, Natalia 38 Dumitrescu, D. 219 Esaki, Hiroshi Faulkner, M.
287 421
Jaskiewicz, Tomasz Jawa, Akshey 123
135
Larsson, Tony 365 Laursen, Troels 242 Lee, Bong-Hwan 473 Lee, JaeYong 275, 353 Lee, Kyu Ouk 389 Lee, Sang Soo 389 Leela-amornsin, Lertluck 287 Luukkala, Vesa 92 Lykourgiotis, Asimakis 377 Madsen, Tatiana K. 242 Mannweiler, Christian 13 Martyna, Jerzy 436 Miniero, L. 460 Min, SeokHong 275 Moltchanov, Boris 13 Morado Ferreira, Armando 365 Mortensen, Hans Peter 242
Galinina, Olga 184 Garg, Vishal 123 Ghani, Sayeed 196 Gladysz, Jakub 172 Gudkova, Irina 256
Nagy, R´eka 219 Nanda, Sujeeth 123 Nielsen, Jens Dalsgaard 242 Nishihori, Yasuhide 207 Nowak, Mateusz 231
Haustein, T. 421 Heimfarth, Tales 365 Honkola, Jukka 92 Huang, Chung-Ming 299, 311
Ochi, Daisuke 207 Oh, DeockGil 275, 353 Oliver, Ian 72 Osipov, Evgeny 323
486
Author Index
Park, ManKyu 275, 353 Pecka, Piotr 231 Pedersen, Nikolaj Bisgaard 242 Pereira, Carlos Eduardo 365 Pignaton de Freitas, Edison 365 Plaksina, Olga 256 Prischepa, Maria 102 Prommak, Chutima 398 Rana, Juwel 38 Rasmussen, Ulrik Wilken 242 Rech Wagner, Fl´ avio 365 Romano, S.P. 460 Ronzhin, Andrey L. 62, 102 Ryzhikov, Yuri 266 Saguna 50 Salami, Oladayo 335 Schneps-Schneppe, Manfred Sedols, Janis 411 Shilov, Nikolay 72 Shin, MinSu 353 Simoes, Jose 13 Smirnov, Alexander 72
411
So, SangHo 275 Sukhov, Timofey 448 Synnes, K˚ are 38 Tseng, Chun-Yu Turlikov, Andrey
311 184
van der Helm, Aadjan 135 Varma, Vasudeva 123 Venkata, Murali Krishna Punaganti Venkatkumar, V. 421 Walkowiak, Krzysztof 172 Wang, Hsing-Cheng 299 Wattanapongsakorn, Naruemon Weis, Fr´ed´eric 111 Yang, Chia-Ching 311 Yoo, Tae Whan 389 Yu, Yuan-Tse 299 Zaslavsky, Arkady 1, 50 Zecca, Giulio 111
123
398