Exploiting bio-inspired approaches for the monitoring of pervasive environments Apostolos Malatras, Fei Peng, and B´eat Hirsbrunner Department of Informatics, University of Fribourg, Switzerland
[email protected]
Abstract. BioMPE (Bio-inspired Monitoring of Pervasive Environments) is a research project undertaken by the Pervasive and Artificial Intelligence research group at the Department of Informatics, University of Fribourg in Switzerland. The main goal of BioMPE is to build an intelligent and context-aware pervasive computing middleware to address the issues of reliability and dynamic adaptation of P2P overlays that are utilized to conduct monitoring over heterogeneous and ubiquitous networks. Drawing inspiration from nature and in particular from the behavior of ant colonies and swarm intelligence, we employ related selforganization techniques to construct reliable and robust P2P overlays. High-level policy-based management guides the operation and the possible need for adaptation of the monitoring task, in accordance to context information collected from the pervasive environment. In this respect, the key output of the project is the set of protocols, algorithms and mechanisms to enable the provision of reliable P2P overlay network monitoring, adaptation of which is guided by a pervasive computing middleware to reflect varying requirements.
Keywords: pervasive computing, adaptive middleware, P2P overlay networks, network monitoring, swarm intelligence, resource discovery, reliability
1
Introduction
Pervasive computing environments have attracted significant research interest and have found increased applicability in commercial settings, attributed to the fact that they provide seamless, customized and unobtrusive services over heterogeneous infrastructures. The notion of pervasive computing refers to anywhere and anytime user-centric provisioning of value-added services and applications that are adaptive to user preferences and monitored conditions, i.e. context information. Successful deployment of the pervasive computing paradigm is based on the exploitation of the multitude of participating devices and associated data. It becomes therefore evident that there is a necessity to support reliable and optimal resource discovery mechanisms for pervasive computing environments, which will take into account the dynamicity and heterogeneity of the underlying network infrastructure. Effective monitoring of the latter will provide the foundation for the efficient operation of pervasive computing environments.
The main requirement for any network monitoring solution regarding pervasive environments is undoubtedly the support for scalability, dynamicity and heterogeneity of the network infrastructure. A prominent approach to mitigate the drawbacks brought on by such issues is the one that involves the use of Peer-to-Peer (hereafter referred to as P2P) overlay networks that constitute a networking abstraction that leads to more manageable topologies and optimizes therefore resource monitoring by scaling down the degree of complexity. However, the reliability of such P2P overlay networks is a critical issue, in particular when the underlying network has a dynamically changing topology. While many solutions for designing scalable P2P overlay networks have been proposed, issues such as reliability and cross-layer adaptation have been generally neglected and in any case have not been viewed holistically and within the pervasive computing perspective. A unified pervasive computing middleware to address the aforementioned issues for overlays in the context of heterogeneous underlying networks is the main goal of the research project BioMPE (Bio-inspired Monitoring of Pervasive Environments), which is described in this technical report. The BioMPE research project addresses the provision of reliable pervasive environments based on P2P overlay networks that are built on top of heterogeneous, dynamically changing, wired and wireless physical network infrastructures. In BioMPE, we propose to develop mechanisms to increase resilience against dynamic changes in a P2P overlay network, taking into consideration the established shift towards a ubiquitous distributed networking paradigm. To increase the reliability, advanced node and network monitoring mechanisms will be introduced, based on biology-inspired algorithms, so as to benefit from their inherent support for adaptation and robustness in highly dynamic situations. The monitoring scheme will allow for efficient resource discovery and improve network management in general, thus further promoting the deployment of reliable pervasive computing environments. Research in BioMPE will be conducted by partitioning the project into three tasks, namely 1. Swarm computing for network monitoring 2. adaptive management of pervasive environments, and 3. integration and evaluation. Accompanying research is nonetheless required in order to allow for the monitoring task to be encompassed in the overall pervasive environment management. The latter requires thorough cross-layer interaction between the monitoring’s layer and the adaptation requirements imposed by the pervasive environments operation and will lead to the development of an adaptive management layer. Further work on integrating the research outputs and developing a test environment to evaluate the functionalities of the prototype systems under diverse application scenarios will also be studied within the context of this research project. The main output of the project will be the set of protocols, algorithms and mechanisms that will enable the provision of reliable P2P overlay network monitoring, adaptation of which will be guided by a pervasive computing middleware 2
to reflect varying requirements. A fully operational prototype of the scientific outcomes of BioMPE, namely the reliable and adaptive middleware, will be deployed for experimentation and evaluation purposes on the developed testbed. This technical report is structured as follows. After this brief introduction where the context of the BioMPE project and the motivation for the planned research are explained, Section 2 reviews background related work on the domains of swarm computing for networking and middleware for pervasive environments. These two domains constitute the two pillars of the projected research plan, which is detailed in Section 3 where the integration aspects concerning the aforementioned domains are also discussed. The technical report concludes in Section 4 with a presentation of the expected impact of the BioMPE research and future directions.
2
Related Work
This section presents a state-of-the art review regarding the main topics addressed in the BioMPE project: swarm computing for networking and in particular P2P overlay networks for monitoring, in order to mitigate the heterogeneity, dynamicity and complexity of ubiquitous networks and the adaptation of the monitoring according to high-level re-configuration policies. The synergy of these research topics, as will be in detail described in Section 3, will yield significant research results regarding the provisioning of reliable, bio-inspired monitoring services for pervasive environments. 2.1
Swarm computing for networking
While their initial focus was on the field of optimization problems, swarm intelligence and biologically inspired systems have also found applicability in complex systems management, especially in cases where centralized approaches are difficult or impossible to implement or are simply unreliable (e.g. single-point of failure). Seeking inspiration in biology is a good way to cope with these problems, since biological systems have certain attractive properties such as robustness to failure of components, ability to be adaptive to changing conditions and lack of necessity for centralized control [5]. In particular, emergent behavior coupled with self-organizing capabilities both provide the increased reliability and scalability that is desired in distributed systems along with the ability to react and adapt to situations. In this respect, such adaptive and decentralized methods are more and more necessary to face the dynamics of current heterogeneous and ubiquitous networks and the management of P2P overlay networks. Thus, after having been a niche topic for a long time, bio-inspired computing is finding its place in the mainstream of distributed and pervasive computing [9]. Management of overlay networks, as logical structures requiring constant adaptation in the way they are coupled to physical networks, is one of the focal points of research in BioMPE. In particular, P2P overlay networks are an integral part of any large-scale monitoring framework, such as the one envisaged in 3
BioMPE, as the complexity and scalability of the underlying network can act as a hindering factor regarding performance and efficiency [41]. P2P overlay networks are therefore employed to produce more manageable networks and thereby optimize resource monitoring (for an introduction to related work the reader can refer to [58], [64], [53], [4], [36], [57], [56]). The work of Prof. Aberers group, part of the SNF NCCR MICS, on data access over P2P overlay networks should be particularly noted [21]. We acknowledge the very good results and efficiency of the aforementioned research approaches, the majority of which were applied on fairly static networks; we nevertheless place the focus of our research on the reliability factor, as the networks we will consider are extremely dynamic. In this view, we propose to utilize bio-inspired approaches, building on our previous expertise [13], to mitigate the negative effects of this dynamicity. There have been many examples of domains where bio-inspired computing has been fruitfully applied [3], e.g. routing in mobile ad hoc networks (MANETs), which are very dynamic wireless self-organized structures. Swarm intelligence approaches towards this direction include the use of stigmergy, which is a reinforcement mechanism inspired by indirect communication in social insects. In association with diffusion, it is the driving principle of the routing algorithm AntHocNet, a hybrid algorithm combining reactive and proactive routing [25], and of Ecomobile, a mobile agent routing platform for multi-service networks developed by the University of Fribourg PAI group [52]. Ant Colony Optimization [24], a combination of stigmergy and diffusion, has been used in a number of adaptive routing algorithms for wired communication networks [38], e.g. AntNet [16]. Other examples of stigmergy-based routing algorithms can be found in the MANETs realm and include Ara [30], Pera [6], and Ansi [50]. Beyond routing, other applications of stigmergy can be found in [7] in support of autonomic principles. The gradient climbing mechanism, called chemotaxis in insect societies, has also been successfully applied to load balancing in distributed systems [26]. In [31] a general framework for network management based on swarm intelligence principles is presented. Applicability of swarm intelligence inspired solutions can be found in a multitude of network-related research fields. The problem of optimizing energy consumption in MANETs using swarm methods was addressed in [45]. Moreover, bio-inspired management of topology in unstructured overlay networks has been tackled by Jelasity [34], by proposing relevant protocols for load balancing and search. On the other side, structured overlay networks are characterized by topological constraints based on semantic or geographic proximity. In this view, the T-Man protocol introduces topology management for this type of network using the model of cell adhesion coming from developmental biology [35]. Several P2P and grid systems use ant algorithms for scheduling, load management and resource discovery purposes. Messor is a grid load-balancing algorithm inspired by ants [47]. It is built on Anthill [46], a framework for the development of P2P applications also based on ant colonies. ARMS [15] realizes ant-inspired load balancing on the basis of explicit Quality of Service (QoS) requirements. The Echo ants approach is an improvement of ARMS directly implementing 4
an ant-level load balancing scheme [54]. Examples of interesting work in grid computing include the concept of organic grid, developed for the management of P2P networks [17], and the efficient dissemination of content in grids [28]. Mavromoustakis et al. developed a swarm control method for optimizing multiclass priority routing over active networks using a bandwidth clustering approach [43]. AMRA (Ant-based Mobile Routing Architecture) combines position-based routing, topology abstraction and swarm intelligence for routing in large wireless multi-hop networks [33]. BeeAdHoc is a lightweight agent model implementing a swarm routing algorithm inspired by bee behaviors, which has also shown its efficiency regarding metrics like packet delivery ratio, delay and throughput of the network [61]. The swarm computing paradigm is furthermore offered as a generic tool in coordination middleware like Tota [42] and Agilla [27]. Apart from the aforementioned swarm computing approaches, other ecosystemic or co-evolutionary models, like symbiosis and parasitism, have also been proposed. In this respect, the Parasite architecture aims at avoiding waste of computing power during Internet navigation by using local and network resources without disturbing local computation [59]. The Behaviosite model is able to infect agents in a multi-agent system, in order to induce changes in their behaviors and thus improve performance of the overall system [55]. In the context of BioMPE, we plan to build on our research efforts in the SmartGrid project, which have been published in conferences and journals [14], [11], [12], and employ both the swarm agents and the parasitism paradigms in order to achieve efficient distributed monitoring of P2P overlay networks, which will be built on top of the heterogeneous and dynamic networks that are the infrastructure of current pervasive environments. One additional requirement that we plan to consider involves satisfying the need for reliability and adaptation. Evaluation of the proposed solutions compared with existing monitoring approaches will also be considered, as we discuss in Section 3. 2.2
Middleware for pervasive environments
The notion of pervasive computing refers to user-centric provisioning of services and applications that are adaptive to user preferences and monitored conditions, namely the related context information, in order to consistently offer value-added and high-level services. The concept of pervasive computing further denotes that services and applications are available to users anywhere and anytime. Pervasive computing solutions should also be unobtrusive and transparent to the users, thus satisfying the vision of seamless interaction with computing and communication resources, as first introduced by Weiser [62]. Research on pervasive and ubiquitous computing has been prolific over the past years, leading to a large number of corresponding software infrastructures and frameworks [8]. The cornerstone of enabling pervasive computing environments is the efficient and effective monitoring of the surrounding conditions and the discovery of the related generated information - called context information that enables these environments to be adaptive. Context information comprises all aspects of the computing environment, e.g. device characteristics, available bandwidth, 5
etc., and of the users, e.g. user preferences, user history, mobility, etc. [22]. Most existing frameworks and infrastructures for pervasive computing utilize context information in a rigid manner by tightly binding it with the prospective application use, limiting thus the extensibility of the proposed architecture. Therefore, the innovatory vision of pervasive computing, as seen within these infrastructures and platforms, will require users to acquire new applications and software, albeit the apparent contradiction with the promoted and anticipated notion of unobtrusiveness. The proposed work in BioMPE will address this aspect, namely the open and flexible discovery and utilization of information in pervasive environments. Undoubtedly, there has been a multitude of academic work on middleware to support pervasive computing environments. The majority of this work is not generic enough and applies only to specific application domains with limited usage, such as user interface adaptation or media content customization [39], [29]. We focus our review here on generic middleware solutions that support pervasive applications by means of context-awareness, although we also take into account artificial intelligence background work, such as [49], which is not reviewed here due to space limitations. The reconfigurable context-sensitive middleware [63] proposes a CORBAbased hardware implementation to use context for supporting pervasive application adaptation, while the PACE middleware [44] facilitates context-awareness for distributed systems where the provision of customizable decision support for the adaptation of applications is a matter of preference management. The Context Management Framework [40] is a generic framework to support contextaware distributed applications that allows for hierarchical ordering of context sources and is extensible by means of multiple context reasoning mechanisms. The WComp middleware for ubiquitous computing [60] is founded on eventbased components and Web Services to enable application adaptation by means of a custom fine-tuning approach, which nonetheless limit its wide applicability. The EgoSpaces MANET-oriented middleware [37] builds on the computational model and programming abstraction of local context views; however, node mobility is not explicitly managed and a supporting organizational model is missing. Other noteworthy middleware solutions for pervasive computing include [19], [2], [32]. The Context Toolkit, a middleware architecture to support the building of context-aware applications [23], allows the application developer to build applications in a widget-like way, by using already deployed components of context capturing and processing. The S-MARKS middleware for pervasive computing and application adaptation [1] has a clear emphasis on security aspects, which we will not consider in BioMPE as explained in the cover letter. The middleware proposed in [51] addresses context-awareness in ubiquitous computing environments through the use of mobile agents that handle all context-related tasks, whereas applications are either context producers or consumers and communicate with these agents. The MobiPADS middleware [18] uses context information, which is accessible to applications by means of an application programming interface, 6
in order for the applications to be able to adapt accordingly. The general software infrastructure presented in [20] gives common practice suggestions for the integration of ubiquitous computing middleware and frameworks, building on the main challenges that affect the design of relevant solutions, which match the ones considered in BioMPE. The middleware approach for the reconfiguration of mobile applications [48] is conceptually close to the work we plan to undertake, albeit applied on the domain of service state migration. In the view of the BioMPE project, pervasive middleware should interact with the underlying network infrastructure and accordingly assist in coordinating network management issues, such as monitoring and resource discovery, as the conditions are very dynamic and the participating devices of heterogeneous nature; hence the need for continuous optimization by means of adaptation. This cross-layer design from the high-level requirements of the pervasive environments to the lower-level networking monitoring and resource discovery is the focus of our planned research work.
3
Research Plan
The proliferation of ubiquitous networking solutions experienced in the last few years in the context of ever popular pervasive application scenarios and the high rates of user adoption of wireless technologies lead us to believe that there is an established paradigm shift from traditional, infrastructure-based networking towards wireless, mobile, operator free, infrastructure-less networking. The latter constitutes the foundation of existing and prospective pervasive applications. Pervasive environments built on principles of ubiquitous communication will soon therefore form the basis of next generation networks as defined by the ITU (International Telecommunication Union). Due to the increasing availability of wireless technologies and the demand for mobility, P2P overlay networks will be increasingly built on top of heterogeneous wired and wireless networks to mitigate their drawbacks regarding scalability and topology instability and to allow for efficient resource discovery by means of monitoring. When designing and operating P2P overlay networks, the emerging requirements from such networking infrastructures have to be taken into consideration, e.g. mobility support, failsafe mechanisms, recovery, resilience, etc.. The focal point regarding monitoring for pervasive environments is to ensure the reliability of the P2P overlays that will support the resource discovery task, as the underlying network has a dynamically changing topology. BioMPE aims to tackle these issues and to successfully enable bio-inspired monitoring of pervasive environments. The drive behind the research on advanced networking for pervasive environments that allow access to heterogeneous sources of information and facilitate ubiquitous service provisioning is evident from the amount of received support from both the EC and the US NSF. In particular, recently the EC FP7 concerning prospective research directions of particular interest to the EC for the time period 2009-2013, specifically recognized pervasive environments support and 7
reliable network overlays as two areas of prominent research interest (Objective 1.5 on “Networked media” and Objective 1.1 on “The network of the future” in the ICT work program of FP7). Similarly, the NSF through its SEIII funding initiative (Science and Engineering Information Integration and Informatics) promotes research in the direction of BioMPE, i.e. “the study of complex distributed computer and network systems requires the collection and analysis of timely, accurate and reliable information”. Consequently, we argue that building adaptive, reliable P2P overlay network services over heterogeneous and highly dynamic network infrastructures for the purposes of monitoring and resource discovery is a major scientific challenge for enabling the deployment of pervasive environments and this is what forms the main stream of research in BioMPE.
Fig. 1. Monitoring heterogeneous, dynamic networks with use of P2P overlays
3.1
Overall objectives
The BioMPE research project addresses adaptive and reliable communication services based on P2P overlay networks built on top of highly heterogeneous, 8
dynamically changing, wired / wireless physical network infrastructures that are the norm in pervasive computing. We plan to develop bio-inspired, reliable, adaptive network monitoring mechanisms to increase resilience against dynamic changes in a P2P overlay network to support pervasive computing scenarios. Figure 1 depicts an exemplary heterogeneous network scenario, where a P2P overlay network is employed to increase scalability and reduce complexity. Resource discovery mechanisms act on the overlay and assist in its maintenance, while additionally allow for higher-level services and applications to query for information and the status of network resources in the greater pervasive environment. In order to reach these objectives, we opt for a modular middleware architecture composed of two layers to allow for flexibility and extensibility, while additionally supporting a clear separation of concerns. – Network monitoring layer. It relies on overlay structures on top of the heterogeneous and dynamic pervasive network. It is responsible for the monitoring of network conditions according to high level requirements, which are defined as policies and are guided by the management layer. A set of interfaces will be exposed to higher layers in order to query for and retrieve information. – Network management layer. It is in charge of deciding on configuration changes on the monitoring layer, based on context information collected from the pervasive environment. This closed-loop management cycle leads to a certain degree of autonomy. High-level pervasive applications wishing to exploit monitoring services should communicate with the adaptation component of this layer, which is based on policy-based management principles. The overall BioMPE modular middleware architecture is illustrated in Figure 2. In terms of research to be conducted, we can conceptually partition the project into three tasks: 1. Swarm computing for network monitoring 2. Adaptive management of pervasive environments 3. Integration and evaluation The significance of integration lies in the provision of a holistic framework for the monitoring needs of pervasive environments based on the principles of adaptive self-management. To coordinate the tasks, accompanying research is required on defining cross-layer interfaces, integrating the individual proposed solutions and building an overall test and evaluation environment, combining real network nodes with emulated ones. This set-up will lead to a common prototype demonstrator for the entire BioMPE project that will support the unified and holistic approach we plan to undertake to address the issue of reliable monitoring of pervasive environments based on P2P overlay network services. The main output of the project is expected to be the set of protocols, algorithms and mechanisms that will enable the provision of reliable pervasive environment monitoring services. In order to validate our proposed solutions, we will consider diverse ubiquitous computing systems and pervasive application scenarios, mainly focused on public and semi-public urban and building environments. 9
Fig. 2. BioMPE modular architecture
3.2
Swarm computing for network monitoring
The diversity of the envisaged pervasive application scenarios profoundly highlights that the major challenge of the BioMPE project is to enable continuous and efficient anywhere and at anytime access to resources and information in general. This particular research objective is completely in line with the vision of ubiquitous computing that was first perceived and initiated by M. Weiser. This research task aims at developing a bio-inspired modular network monitoring layer using the fundamental principles of parasitism and swarm agents, in order to efficiently discover resources and information across dynamic and heterogeneous networks that are the foundation of pervasive environments. The key differentiating factor compared to traditional network monitoring solutions, such as SNMP, CMIP, etc., is the fact that the proposed bio-inspired monitoring approach enables efficient dynamic adaptation according to the constantly changing conditions of the underlying network infrastructure. The heterogeneous network infrastructures considered in the project encompass mixed wireless and wired networks, the management of which is based on P2P overlay services. The latter are an integral part of any large-scale network management framework (including monitoring), such as the one envisaged in BioMPE, as the complexity and scalability of the underlying network can act as a hindering factor regarding performance and efficiency. P2P overlay networks are therefore employed to produce more manageable networks and optimize re10
source monitoring, by exposing a smaller scale abstraction of the underlying network infrastructure. Another benefit of having such an abstraction can be found in the fact that this higher-level construction inherently minimizes the effects of network topology volatility and dynamicity. The two modules of the monitoring layer, as illustrated in Figure 2, refer to the management of the P2P overlay network that will be built on top of the heterogeneous network that represents the pervasive environment and to the discovery of resources in this overlay network. It should be pointed out that both these modules are designed to be adaptive to the continuous changes observed in the pervasive environment. This is the responsibility of the adaptive middleware described in the following Section. The management of the overlay network, namely its construction and maintenance, will be based on the BlatAnt algorithm, proposed in our previous work, for establishing effective self-structured P2P overlay networks on top of grid systems in the context of the SmartGrid project [10]. We plan to extend our previous work by taking into account the dynamic nature of the scenarios to be addressed by BioMPE, as well as the heterogeneity of the participating nodes. While BlatAnt is a fully-distributed algorithm, our work in BioMPE will also consider hybrid or hierarchical approaches if the former does not appear promising enough for the dynamic network scenarios. Moreover, the resource discovery module has a dual role in that it acts as an information service for high-level applications regarding the ubiquitous environments resources, but it also provides low-level network information to the P2P overlay network algorithms, e.g., available bandwidth, packet delays, packet loss, etc., to guide and optimize its operation. A thorough requirements analysis concerning specific monitoring needs, focused on the evaluation scenarios, will be our first priority. Regarding the operation of the network monitoring layer, it should be highlighted that the task of monitoring must be distributed over the nodes, each one having to face a potential antagonistic situation, namely assuring the execution of its own functionalities, as well as continuously monitoring its status and that of its neighboring nodes. This implies balancing of the resources dedicated to running local applications, network monitoring and to managing the corresponding P2P overlay networks. A refined solution of this problem is of paramount importance and it constitutes the first level of the bio-inspired monitoring model we propose to develop. It is based on the parasitism paradigm, which is inherently built on tasks competing for resources. The expected research output will include algorithms and protocols that collectively guide the optimal operation of local nodes by means of negotiation between the global monitoring requirements and the local preferences and capabilities. The second level of the monitoring model, also bio-inspired, refers to the discovery of resources in the underlying network of the pervasive environment. In this respect, bio-inspired, ant-like resource discovery algorithms will be developed. These algorithms are based on the notion of a nest, which serves as a container and an execution platform for a swarm of lightweight agents (designed as ants) that are in charge of monitoring the network. Such a model has already shown its adequacy to address the task of monitoring in dynamic grid networks, 11
as attested by the PAI contributions to the ongoing SmartGrid project [10]. The Solenopsis software developed for designing and evaluating ant algorithms within SmartGrid will here be reused, but extended to satisfy the requirements for heterogeneity, increased mobility and dynamicity. Ants, guided by information discovery algorithms, will move across the node neighborhood in order to collect low-level information about its topology, the node states, their capabilities and the connections features (e.g. bandwidth, delay, error rates, etc.). Moreover, higher-level information regarding resources of the pervasive environment, their characteristics, device availability and capabilities will also be collected by the ant agents. It should be clarified that ant migration between nodes is not equivalent to mobile agents traveling across the network. When ants migrate it is their state that gets transferred to the destination node, where that state is locally evaluated and executed in the nest, which acts as a software sandbox. Consequently, no active code is being transferred between nodes, diminishing therefore security risks. The behavior of the overall monitoring model, encompassing both aforementioned levels, will be evaluated in Solenopsis and compared to traditional monitoring approaches in terms of resource discovery efficiency and generated network overhead. The assessment will take into account the dynamic nature and the inherent features of the heterogeneous network infrastructure that we consider. Special attention will be paid to the reactivity of the model to network and node changes and to its capacity to learn to behave efficiently in unstable configurations. It is especially the latter set of features of the model that distinguish it from traditional network monitoring approaches and therefore justify its selection for the considered network scenario. 3.3
Adaptive management of pervasive environemnts
Pervasive computing environments are characterized by a high degree of dynamicity that can result in significant drawbacks regarding their useful deployment. The underlying networking paradigm involves spontaneous network formations comprised of possibly heterogeneous devices, which further hinders their wide adoption. Monitoring solutions, as well as network management approaches in general, are influenced by these adverse characteristics and therefore traditional techniques cannot be in these cases successfully applied. Consequently, there is a need for techniques that mitigate these problems in order to be able to harness the vast range and diversity of advantages that such environments have to offer and that will lead to efficient network management and monitoring. Preset and pre-configured solutions are too rigid and as a result dynamic configuration of the proposed monitoring algorithms is necessary. In this respect, in the view of BioMPE we assert that adaptation of the network monitoring layer is of paramount importance in order to reflect and respond to the dynamic network conditions. To enable the adaptation of the monitoring layer, we propose to introduce a management layer that will reside on top of the monitoring layer and will 12
guide the adaptive reconfiguration of the corresponding algorithms, based on available context-information and predefined policy rules. The management layer is implemented by means of an adaptation component, the design of which should cater for the diverse capabilities of the heterogeneous nodes. This is also essential as the role, and thus the functionality, of any node can change over time, since its capabilities are also dynamic. It is our belief that context awareness can assist in building more predictable and thus more reliable long-term pervasive environments by providing higher and lower level information regarding the participating nodes context, which can aid in predicting their current and prospective status. When such knowledge for each and every node is predicted the future topology and conditions of the network can be foreseen, allowing thus the deployment of consistent services and facilitating scalable network monitoring protocols. The driving force behind this concept is based on the observation that if one has an idea of what is happening or what is going to happen in the environment in the near future, one can then act proactively and adjust its functionality in order to preserve some degree of stability. High-level management rules expressed as policies can guide the configuration of the monitoring mechanisms for the pervasive environment, triggered by context information gathered by nodes and widely disseminated so that network-wide understanding can be reached. This closed-loop adaptive management can thus lead to self-configuration and self-optimization, and hence autonomy. The key idea is to support self-configuration by being adaptive to varying conditions modeled as context, with high-level management policies driving selfconfiguration towards particular goals, such as efficient monitoring based on the swarm intelligence paradigm that was described in detail in the previous Section. In order to achieve our objective of creating an efficient software infrastructure for the adaptive monitoring of pervasive environments, we adopt a modular design and realize an adaptive closed loop approach. The twofold architecture we propose combines information handling (i.e. context gathering, processing and dissemination) with decision-making (based on policy-based management PBM). High-level objectives expressed by means of policies can guide the monitoring layer in BioMPE by providing guidelines as to what course of action should be followed when certain conditions are met. Through context monitoring, an understanding of the network conditions and of the surrounding environment is gained and is used for policy conditions evaluation. Configuration changes to the proposed bio-inspired monitoring algorithms may be subsequently deployed in order to achieve self-management by driving the network to a desired state, according to specific policies. This process is repetitive, leading to an adaptive closed loop of control that will result in autonomic management. The adaptation loop is initiated with the deployment of uniform high-level policies, which are dynamically translated into management logic and distributed to the nodes that comprise the pervasive environment. Administration of potentially large scale deployments requires a scalable organizational model to support the distribution of the relevant management functionality. Such a model should support 13
cooperative distributed management given the relevant properties of pervasive environments. 3.4
Integration and Evaluation
The validation scenarios for the evaluation of BioMPE will be inspired by our existing uMove project, as well as the interdisciplinary Human IST project, which will study the notion of public living spaces seen from a pervasive computing viewpoint. In our respect, the latter spaces are semi-public and support socialization by enabling people to meet, work, learn, have fun, etc., to alleviate the growing problem of social isolation and therefore improve the quality of peoples lives. Applicability of these spaces can be found in the cases of elderly care or remote collaboration. Public living spaces encompass diverse network infrastructures and can take several forms, from spaces inside buildings to promote social interactions to domestic living spaces where people can meet remotely. Among the participating devices one can consider fixed screens, mobile devices (phones, laptops, PDA), projectors, interactive surfaces and a variety of sensors to monitor the motion of people, their activities, their health (in particular for the elderly), etc. All of these devices interact with each other and form a complex heterogeneous network that requires reliable and adaptive management solutions as proposed in BioMPE in order to tackle issues such as mobility, scalability and device diversity. The monitoring and pervasive adaptation tasks will require strong teamwork and appropriate coordination to ensure that the outcome of BioMPE is a unified and holistic framework and not merely a collection of different pieces of research work. In particular identifying and defining the interfaces that enable the efficient interaction between the tasks poses a significant research effort that requires the senior expertise of a post-doctoral researcher. Based on the definition of interfaces that enable the exchange of data between the monitoring and management layers, a test and evaluation environment will be created that will allow the concrete integration and assessment of the latter, leading to a joint prototype of the entire project. Moreover, the design of interfaces for high-level pervasive applications to exploit BioMPE services through the reliable and adaptive middleware will be performed, exploiting the Service Oriented Architecture paradigm. The environment in which these tests will be conducted has to exhibit characteristics of dynamicity and heterogeneity, the former in particular being difficult to achieve in lab settings. While simulation can support the design phase of the research work, real implementations are required to evaluate implementation feasibility as well as performance under more realistic traffic conditions. However, due to the limited resources requested for BioMPE, we cannot expect to effectively study issues such as scalability using real network deployments, as the size of the experimental networks will be small. One possibility to address this problem is emulation of nodes, where a single physical machine can host multiple virtual hosts. Emulated environments can usually be connected to real nodes resulting in a hybrid evaluation scenario, where simulation models can also be 14
incorporated. Accordingly, we propose to develop an evaluation framework that allows flexible configuration of experiments using simulation, emulation and real network deployments comprised of nodes with diverse infrastructures.
4
Conclusions
The penetration of pervasive environments is ever increasing and is widely spurred by the continuous evolution of wireless technologies such as wireless mesh and sensor networks. The goal of deployments of such environments is to facilitate user experience in the digital world, provide added-value personalized services and enable their functionality in a transparent and unobtrusive manner. In this respect, the provision of applications to end-users with improved QoS by means of optimized, reliable and adaptive P2P overlay networks will lead to a better overall perception and therefore to a higher degree of user satisfaction. The successful realization of pervasive environments involves the utilization of multiple, diverse and possibly physically dispersed resources. It becomes therefore evident that monitoring and resource discovery assume a primary role in providing efficient and effective deployments of pervasive computing solutions. Accordingly, the use of P2P overlay networks, as logical network structures on top of the physical ones, improves the perceived QoS because of their inherent support for scalability and network abstraction. The network administrators are thus faced with a simpler network structure, which leads to reduced operational management costs, better response times in case of failures and also to the provision of better services to end-users. The latter benefits are further advanced in the context of BioMPE, due to its bio-inspired bearings that effectively improve the degree of adaptability and reliability in the case of dynamic application scenarios. Finally, investigating the optimal usage of the physical network by means of the constructed P2P overlay network has an additional financial impact, namely that of network providers achieving expenditure reduction by avoiding the sparse usage of physical network resources. This is furthermore supported by initiatives like the IETF P4P, which motivate the need for research in areas of P2P systems such as the ones we propose to engage ourselves in. ISPs, having realized that pervasive environments and mesh networks systems are by and large very popular and that their penetration will continue to grow, are pushing towards the integration of their platforms with these novel solutions. This effectively increases the scope of applicability of the proposed research, while at the same time it ensures and highlights its ongoing and long-term popularity. The project therefore addresses current important topics in ICT research that have a noticeable impact on financial as well as social aspects.
5
Acknowledgements
The work presented in this technical report was conducted in the context of the BioMPE project that is financially supported by the Swiss National Sci15
ence Foundation (SNF), grant number 200021 130132. The authors would like to thank Dr. Michele Courant for her invaluable comments and feedback.
References 1. Ahamed, S.I., Li, H., Talukder, N., Monjur, M., Hasan, C.S.: Design and implementation of s-marks: A secure middleware for pervasive computing applications. Journal of Systems and Software 82(10), 1657 – 1677 (2009), sI: YAU 2. Aitenbichler, E., Kangasharju, J., M¨ uhlh¨ auser, M.: Mundocore: A light-weight infrastructure for pervasive computing. Pervasive Mob. Comput. 3, 332–361 (August 2007) 3. Akerkar, R., Sajja, P.S.: Bio-inspired computing: constituents and challenges. IJBIC 1(3), 135–150 (2009) 4. Awerbuch, B., Scheideler, C.: Towards scalable and robust overlay networks. In: Proceedings of the 6th Int. Workshop on Peer-to-Peer Systems (IPTPS’07) (Feb 2007) 5. Babaoglu, O., Canright, G., Deutsch, A., Caro, G.A.D., Ducatelle, F., Gambardella, L.M., Ganguly, N., Jelasity, M., Montemanni, R., Montresor, A., Urnes, T.: Design patterns from biology for distributed computing. ACM Trans. Auton. Adapt. Syst. 1, 26–66 (September 2006) 6. Baras, J.S., Mehta, H.: A Probabilistic Emergent Routing Algorithm for Mobile Ad Hoc Networks. In: WiOpt’03: Modeling and Optimization in Mobile, Ad Hoc and Wireless Networks. p. 10 pages (2003) 7. Baumgarten, M., Greer, K., Mulvenna, M., Curran, K., Nugent, C.: Utilizing stigmergy in support of autonomic principles. Semantics, Knowledge and Grid, International Conference on 0, 98–103 (2007) 8. Bell, G., Dourish, P.: Yesterday’s tomorrows: notes on ubiquitous computing’s dominant vision. Personal Ubiquitous Comput. 11, 133–143 (January 2007) 9. Bongard, J.: Biologically inspired computing. Computer 42, 95–98 (2009) 10. Brocco, A.: Exploiting self-organization for the autonomic management of distributed systems. Ph.D. thesis, Department of Informatics, University of Fribourg, Switzerland (October 2010) 11. Brocco, A., Frapolli, F., Hirsbrunner, B.: Bounded diameter overlay construction: A self organized approach. In: IEEE Swarm Intelligence Symposium. pp. 114–121. SIS 2009, IEEE (April 2009) 12. Brocco, A., Hirsbrunner, B.: Service provisioning for a next-generation adaptive grid. The International Journal of Parallel, Emergent and Distributed Systems (2010) 13. Brocco, A., Hirsbrunner, B., Courant, M.: A modular middleware for high-level dynamic network management. In: Proceedings of the 1st workshop on Middlewareapplication interaction: in conjunction with Euro-Sys 2007. pp. 21–24. MAI ’07, ACM, New York, NY, USA (2007) 14. Brocco, A., Malatras, A., Hirsbrunner, B.: Enabling efficient information discovery in a self-structured grid. Future Gener. Comput. Syst. 26, 838–846 (June 2010) 15. Cao, J., Jarvis, S.A., Saini, S., Kerbyson, D.J., Nudd, G.R.: Arms: An agent-based resource management system for grid computing. Sci. Program. 10, 135–148 (April 2002)
16
16. Caro, G.D.: Ant colony optimization and its application to adaptive routing in telecommunication networks (2004), phD thesis, Facult des sciences appliques, Universit Libre de Bruxelles, Belgium 17. Chakravarti, A., Baumgartner, G., Lauria, M.: The organic grid: self-organizing computation on a peer-to-peer network. Systems, Man and Cybernetics, Part A: Systems and Humans, IEEE Transactions on 35(3), 373 – 384 (May 2005) 18. Chuang, S.N., Chan, A.: Dynamic qos adaptation for mobile middleware. Software Engineering, IEEE Transactions on 34(6), 738 –752 (Nov-Dec 2008) 19. Coronato, A., Pietro, G.D.: Mipeg: A middleware infrastructure for pervasive grids. Future Generation Computer Systems 24(1), 17 – 29 (2008) 20. da Costa, C.A., Yamin, A.C., Geyer, C.F.R.: Toward a general software infrastructure for ubiquitous computing. IEEE Pervasive Computing 7, 64–73 (January 2008) 21. Cudre-Mauroux, P., Agarwal, S., Aberer, K.: Gridvine: An infrastructure for peer information management. IEEE Internet Computing 11, 36–44 (September 2007) 22. Dey, A.K.: Understanding and using context. Personal Ubiquitous Comput. 5, 4–7 (January 2001) 23. Dey, A.K., Abowd, G.D., Salber, D.: A conceptual framework and a toolkit for supporting the rapid prototyping of context-aware applications. Hum.-Comput. Interact. 16, 97–166 (December 2001) 24. Dorigo, M., Di Caro, G., Gambardella, L.M.: Ant algorithms for discrete optimization. Artif. Life 5, 137–172 (April 1999) 25. Ducatelle, F., Di Caro, G., Gambardella, L.: An analysis of the different components of the anthocnet routing algorithm. In: Dorigo, M., Gambardella, L., Birattari, M., Martinoli, A., Poli, R., Sttzle, T. (eds.) Ant Colony Optimization and Swarm Intelligence, Lecture Notes in Computer Science, vol. 4150, pp. 37–48. Springer Berlin / Heidelberg (2006) 26. Elssser, R., Monien, B.: Diffusion load balancing in static and dynamic networks. In: International Workshop on Ambient Intelligence Computing. pp. 49–62 (2003) 27. Fok, C.L., Roman, G.C., Lu, C.: Rapid development and flexible deployment of adaptive wireless sensor network applications. In: Proceedings of the 25th IEEE International Conference on Distributed Computing Systems. pp. 653–662. ICDCS ’05, IEEE Computer Society, Washington, DC, USA (2005) 28. Forestiero, A., Mastroianni, C., Spezzano, G.: Qos-based dissemination of content in grids. Future Gener. Comput. Syst. 24, 235–244 (March 2008) 29. Forte, M., de Souza, W.L., do Prado, A.F.: Using ontologies and web services for content adaptation in ubiquitous computing. J. Syst. Softw. 81, 368–381 (March 2008) 30. G¨ unes, M., Spaniol, O.: Ant-routing-algorithm for mobile multi-hop ad-hoc networks, pp. 120–138. Kluwer Academic Publishers, Norwell, MA, USA (2003) 31. Gupta, A., Koul, N.: Swan: A swarm intelligence based framework for network management of ip networks. In: Conference on Computational Intelligence and Multimedia Applications, 2007. International Conference on. pp. 114 –118 (Dec 2007) 32. Haroon, M., Handte, M., Marron, P.: Generic role assignment: A uniform middleware abstraction for configuration of pervasive systems. In: Pervasive Computing and Communications, 2009. PerCom 2009. IEEE International Conference on. pp. 1 –6 (March 2009) 33. Heissenb¨ uttel, M., Braun, T., J¨ org, D., Huber, T.: A framework for routing in large ad-hoc networks with irregular topologies. Ad Hoc & Sensor Wireless Networks 2(2) (2006)
17
34. Jelasity, M., Guerraoui, R., Kermarrec, A.M., van Steen, M.: The peer sampling service: experimental evaluation of unstructured gossip-based implementations. In: Proceedings of the 5th ACM/IFIP/USENIX international conference on Middleware. pp. 79–98. Middleware ’04, Springer-Verlag New York, Inc., New York, NY, USA (2004) 35. Jelasity, M., Montresor, A., Babaoglu, O.: T-man: Gossip-based fast overlay topology construction. Comput. Netw. 53, 2321–2339 (August 2009) 36. Joung, Y.J., Wang, J.C.: Chord2: A two-layer chord for reducing maintenance overhead via heterogeneity. Computer Networks 51(3), 712 – 731 (2007) 37. Julien, C., Roman, G.C.: Egospaces: Facilitating rapid development of contextaware mobile applications. IEEE Trans. Softw. Eng. 32, 281–298 (May 2006) 38. Kalaavathi, B., Madhavi, S., VijayaRagavan, S., Duraiswamy, K.: Review of ant based routing protocols for manet. In: Computing, Communication and Networking, 2008. ICCCn 2008. International Conference on. pp. 1 –9 (Dec 2008) 39. Keegan, S., O’Hare, G.M.P., O’Grady, M.J.: Easishop: Ambient intelligence assists everyday shopping. Inf. Sci. 178, 588–611 (February 2008) 40. van Kranenburg, H., Bargh, M., Iacob, S., Peddemors, A.: A context management framework for supporting context-aware distributed applications. Communications Magazine, IEEE 44(8), 67 –74 (Aug 2006) 41. Lua, E.K., Crowcroft, J., Pias, M., Sharma, R., Lim, S.: A survey and comparison of peer-to-peer overlay network schemes. Communications Surveys Tutorials, IEEE 7(2), 72 – 93 (April-June 2005) 42. Mamei, M., Zambonelli, F.: Programming pervasive and mobile computing applications: The tota approach. ACM Trans. Softw. Eng. Methodol. 18, 15:1–15:56 (July 2009) 43. Mavromoustakis, C.X., Karatza, H.D.: Swarm-based active tunable routing for overhead reduction in multiservice networks. In: Proceedings of the 39th annual Symposium on Simulation. pp. 294–303. ANSS ’06, IEEE Computer Society, Washington, DC, USA (2006) ¨ 44. Meersman, R., Tari, Z., Hacid, M.S., Mylopoulos, J., Pernici, B., Babaoglu, O., Jacobsen, H.A., Loyall, J.P., Kifer, M., Spaccapietra, S. (eds.): On the Move to Meaningful Internet Systems 2005: CoopIS, DOA, and ODBASE, OTM Confederated International Conferences CoopIS, DOA, and ODBASE 2005, Agia Napa, Cyprus, October 31 - November 4, 2005, Proceedings, Part I, Lecture Notes in Computer Science, vol. 3760. Springer (2005) 45. Montemanni, R., Gambardella, L., Das, A.: Models and algorithms for the MPSCP, An overview. Auerbach Publications (2006) 46. Montresor, A.: Anthill: a framework for the design and analysis of peer-to-peer systems. In: 4 th European Research Seminar on Advances in Distributed Systems (2001) 47. Montresor, A., Meling, H., Babaoˇ glu, O.: Messor: load-balancing through a swarm of autonomous agents. In: Proceedings of the 1st international conference on Agents and peer-to-peer computing. pp. 125–137. AP2PC’02, Springer-Verlag, Berlin, Heidelberg (2003) 48. Murarasu, A.F., Magedanz, T.: Mobile middleware solution for automatic reconfiguration of applications. Information Technology: New Generations, Third International Conference on 0, 1049–1055 (2009) 49. Nakano, T., Suda, T.: Self-organizing network services with evolutionary adaptation. Neural Networks, IEEE Transactions on 16(5), 1269 –1278 (Sept 2005)
18
50. Rajagopalan, S., Shen, C.C.: Ansi: A swarm intelligence-based unicast routing protocol for hybrid ad hoc networks. Journal of Systems Architecture 52(8-9), 485 – 504 (2006), nature-Inspired Applications and Systems 51. Ranganathan, A., Campbell, R.H.: A middleware for context-aware agents in ubiquitous computing environments. In: Proceedings of the ACM/IFIP/USENIX 2003 International Conference on Middleware. pp. 143–161. Middleware ’03, SpringerVerlag New York, Inc., New York, NY, USA (2003) 52. Rossier-Ramuz, D.: Towards Active Network Management with Ecomobile, an Ecosystem-inspired Mobile Agent Middleware. phdthesis, University of Fribourg, Department of Informatics (October 2002) 53. Rowstron, A.I.T., Druschel, P.: Pastry: Scalable, decentralized object location, and routing for large-scale peer-to-peer systems. In: Proceedings of the IFIP/ACM International Conference on Distributed Systems Platforms Heidelberg. pp. 329– 350. Middleware ’01, Springer-Verlag, London, UK (2001) 54. Salehi, M.A., Deldari, H., Dorri, B.M.: Balancing load in a computational grid applying adaptive, intelligent colonies of ants. Informatica (Slovenia) 32(3), 327– 335 (2008) 55. Shabtay, A., Rabinovich, Z., Rosenschein, J.S.: Behaviosites: a novel paradigm for affecting distributed behavior. In: Proceedings of the fifth international joint conference on Autonomous agents and multiagent systems. pp. 679–681. AAMAS ’06, ACM, New York, NY, USA (2006) 56. Shen, H., Brodie, A.S., Xu, C., Shi, W.: Scalable and secure p2p overlay networks. Theoretical and Algorithmic Aspects of Sensor, Ad Hoc Wireless and P2P Networks pp. 195–216 (2005) 57. Shen, H., Xu, C.Z., Chen, G.: Cycloid: a constant-degree and lookup-efficient p2p overlay network. Perform. Eval. 63, 195–216 (March 2006) 58. Stoica, I., Morris, R., Karger, D., Kaashoek, M.F., Balakrishnan, H.: Chord: A scalable peer-to-peer lookup service for internet applications. SIGCOMM Comput. Commun. Rev. 31, 149–160 (August 2001) 59. Suppi, R., Solsona, M., Luque, E.: Web-based distributed computing using parasite. In: Parallel, Distributed and Network-Based Processing, 2003. Proceedings. Eleventh Euromicro Conference on. pp. 467 – 474 (Feb 2003) 60. Tigli, J.Y., Lavirotte, S., Rey, G., Hourdin, V., Cheung-Foo-Wo, D., Callegari, E., Riveill, M.: Wcomp middleware for ubiquitous computing: Aspects and composite event-based web services. Annales des Tlcommunications pp. 197–214 (2009) 61. Wedde, H.F., Farooq, M., Pannenbaecker, T., Vogel, B., Mueller, C., Meth, J., Jeruschkat, R.: Beeadhoc: an energy efficient routing algorithm for mobile ad hoc networks inspired by bee behavior. In: Proceedings of the 2005 conference on Genetic and evolutionary computation. pp. 153–160. GECCO ’05, ACM, New York, NY, USA (2005) 62. Weiser, M.: The computer for the twenty-first century. Scientific American 265(3), 94–104 (Sep 1991) 63. Yau, S.S., Karim, F., Wang, Y., Wang, B., Gupta, S.K.S.: Reconfigurable contextsensitive middleware for pervasive computing. IEEE Pervasive Computing 1, 33–40 (July 2002) 64. Zhao, B., Huang, L., Stribling, J., Rhea, S., Joseph, A., Kubiatowicz, J.: Tapestry: a resilient global-scale overlay for service deployment. Selected Areas in Communications, IEEE Journal on 22(1), 41 – 53 (Jan 2004)
19