Luiz Olavo Bonino da Silva Santos, R. Poortinga, P. Vink
Context awareness has emerged as an important element in distributed computing. It offers mechanisms that allow applications to be aware of their environment and enable these applications to adjust their behavior to the current context. Considering the dynamic nature of context, the data flow of relevant contextual information can be significant. In order to keep track of this information flow, a flexible service mechanism should be available for the client applications. In this document we present a service-oriented middleware for context-aware applications. This middleware provides support to leverage the development of context-aware applications by providing a scripting-like approach for context-aware application development; allowing the subscription of rules containing context-based events and conditions and a notification to be sent when the specified context holds. Moreover, a domain-specific language has been developed to express these context-based rules.
{"title":"A service-oriented middleware for context-aware applications","authors":"Luiz Olavo Bonino da Silva Santos, R. Poortinga, P. Vink","doi":"10.1145/1376866.1376873","DOIUrl":"https://doi.org/10.1145/1376866.1376873","url":null,"abstract":"Context awareness has emerged as an important element in distributed computing. It offers mechanisms that allow applications to be aware of their environment and enable these applications to adjust their behavior to the current context. Considering the dynamic nature of context, the data flow of relevant contextual information can be significant. In order to keep track of this information flow, a flexible service mechanism should be available for the client applications. In this document we present a service-oriented middleware for context-aware applications. This middleware provides support to leverage the development of context-aware applications by providing a scripting-like approach for context-aware application development; allowing the subscription of rules containing context-based events and conditions and a notification to be sent when the specified context holds. Moreover, a domain-specific language has been developed to express these context-based rules.","PeriodicalId":364168,"journal":{"name":"workshop on Middleware for Pervasive and Ad-hoc Computing","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2007-11-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133706778","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Discovering the appropriate services in ad-hoc computing environments where a great number of devices and software components collaborate discreetly and provide numerous services is an important challenge. Service discovery protocols make it possible for participating nodes in a network to locate and advertise services with minimum user intervention. However, because it is not possible to predict at design time which protocols will be used to advertise services in a given context/environment, it is now becoming clear that dynamic discovery mechanisms are required by mobile nodes to cope with the heterogeneity of discovery platforms. Existing adaptive mobile middleware solutions such as ReMMoC and INDISS have investigated this style of dynamic discovery. However, these have yet to consider the emerging suite of protocols for discovery in ad-hoc networks. In this paper we present a component-based service discovery framework for the development of an adaptive multi-personality service discovery middleware, which will operate in diverse environments e.g. fixed and ad-hoc networks. This supports a common architecture for individual discovery protocols to enhance configurability and re-configurability of the framework, and minimize resource usage through component reuse. Finally, to evaluate this framework we investigate the development of four existing ad-hoc service discovery protocols using our approach.
{"title":"A multi-protocol framework for ad-hoc service discovery","authors":"Carlos A. Flores-Cortés, G. Blair, P. Grace","doi":"10.1145/1169075.1169085","DOIUrl":"https://doi.org/10.1145/1169075.1169085","url":null,"abstract":"Discovering the appropriate services in ad-hoc computing environments where a great number of devices and software components collaborate discreetly and provide numerous services is an important challenge. Service discovery protocols make it possible for participating nodes in a network to locate and advertise services with minimum user intervention. However, because it is not possible to predict at design time which protocols will be used to advertise services in a given context/environment, it is now becoming clear that dynamic discovery mechanisms are required by mobile nodes to cope with the heterogeneity of discovery platforms. Existing adaptive mobile middleware solutions such as ReMMoC and INDISS have investigated this style of dynamic discovery. However, these have yet to consider the emerging suite of protocols for discovery in ad-hoc networks. In this paper we present a component-based service discovery framework for the development of an adaptive multi-personality service discovery middleware, which will operate in diverse environments e.g. fixed and ad-hoc networks. This supports a common architecture for individual discovery protocols to enhance configurability and re-configurability of the framework, and minimize resource usage through component reuse. Finally, to evaluate this framework we investigate the development of four existing ad-hoc service discovery protocols using our approach.","PeriodicalId":364168,"journal":{"name":"workshop on Middleware for Pervasive and Ad-hoc Computing","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2006-11-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114701329","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
This paper proposes a new scheme for efficient dissemination and discovery of service information in mobile ad hoc networks. By extending Bloom filter-based service summarization scheme, our discovery middleware layer also encodes distance to services in summarization filters. By having the distance information gradually attenuated during its propagation, our proposal enables faster discovery of services with a limited amount of advertisement traffic.
{"title":"An efficient service propagation scheme for large-scale MANETs","authors":"Choonhwa Lee, S. Yoon, Eunsam Kim, A. Helal","doi":"10.1145/1169075.1169084","DOIUrl":"https://doi.org/10.1145/1169075.1169084","url":null,"abstract":"This paper proposes a new scheme for efficient dissemination and discovery of service information in mobile ad hoc networks. By extending Bloom filter-based service summarization scheme, our discovery middleware layer also encodes distance to services in summarization filters. By having the distance information gradually attenuated during its propagation, our proposal enables faster discovery of services with a limited amount of advertisement traffic.","PeriodicalId":364168,"journal":{"name":"workshop on Middleware for Pervasive and Ad-hoc Computing","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2006-11-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133281556","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
S. Malek, Chiyoung Seo, Sharmila Ravula, Brad Petrus, N. Medvidović
Software architecture has been widely advocated as an effective abstraction for modeling, implementing, and evolving complex software systems such as those in distributed, decentralized, heterogeneous, mobile, and pervasive environments. Typically, however, architectural abstractions have not been supported directly at the level of system implementation. Instead, even developers with access to state-of-the-art middleware facilities have had to rely on constructs that are at least in part different from those used in the design of their systems. In this paper we argue that it is possible to provide native and flexible software architectural facilities in a middleware platform geared to pervasive environments. We refer to such a platform as "architectural middleware". In support of our argument, we outline the design, implementation, and our experience with a specific architectural middleware platform, which has been used in solving pervasive computing problems in the classroom as well as two industrial domains. We also demonstrate that middleware-level architectural support can be effective, efficient, scalable, and adaptable.
{"title":"Providing middleware-level facilities to support architecture-based development of software systems in pervasive environments","authors":"S. Malek, Chiyoung Seo, Sharmila Ravula, Brad Petrus, N. Medvidović","doi":"10.1145/1169075.1169077","DOIUrl":"https://doi.org/10.1145/1169075.1169077","url":null,"abstract":"Software architecture has been widely advocated as an effective abstraction for modeling, implementing, and evolving complex software systems such as those in distributed, decentralized, heterogeneous, mobile, and pervasive environments. Typically, however, architectural abstractions have not been supported directly at the level of system implementation. Instead, even developers with access to state-of-the-art middleware facilities have had to rely on constructs that are at least in part different from those used in the design of their systems. In this paper we argue that it is possible to provide native and flexible software architectural facilities in a middleware platform geared to pervasive environments. We refer to such a platform as \"architectural middleware\". In support of our argument, we outline the design, implementation, and our experience with a specific architectural middleware platform, which has been used in solving pervasive computing problems in the classroom as well as two industrial domains. We also demonstrate that middleware-level architectural support can be effective, efficient, scalable, and adaptable.","PeriodicalId":364168,"journal":{"name":"workshop on Middleware for Pervasive and Ad-hoc Computing","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2006-11-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116020320","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Graham Williamson, Graeme Stevenson, Steve Neely, Lorcan Coyle, P. Nixon
Pervasive computing systems require large amounts of information to be available to devices in order to support context-aware applications. Information must be routed from the sensors that provide it to the applications that consume it in a timely fashion. However, the potential size and ad hoc nature of these environments makes the management of communications a non-trivial task. One proposed solution to this problem uses gossiping, a class of probabilistic routing protocol, to disseminate context information throughout the environment. Gossiping algorithms require far less in the way of guarantees about network structure, reliability, and latency than alternative approaches, but are unproven in real world scenarios. We describe the on-going development of a framework for evaluating the performance of these algorithms within the context of pervasive environments.
{"title":"Scalable information dissemination for pervasive systems: implementation and evaluation","authors":"Graham Williamson, Graeme Stevenson, Steve Neely, Lorcan Coyle, P. Nixon","doi":"10.1145/1169075.1169082","DOIUrl":"https://doi.org/10.1145/1169075.1169082","url":null,"abstract":"Pervasive computing systems require large amounts of information to be available to devices in order to support context-aware applications. Information must be routed from the sensors that provide it to the applications that consume it in a timely fashion. However, the potential size and ad hoc nature of these environments makes the management of communications a non-trivial task. One proposed solution to this problem uses gossiping, a class of probabilistic routing protocol, to disseminate context information throughout the environment. Gossiping algorithms require far less in the way of guarantees about network structure, reliability, and latency than alternative approaches, but are unproven in real world scenarios. We describe the on-going development of a framework for evaluating the performance of these algorithms within the context of pervasive environments.","PeriodicalId":364168,"journal":{"name":"workshop on Middleware for Pervasive and Ad-hoc Computing","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2006-11-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125321876","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Modern mobile devices can form ad-hoc networks to autonomously share data and services. While such self-organizing, peer-to-peer communities offer exciting collaboration opportunities, deciding whether to trust another peer can be challenging. In this work we propose a decentralized trust management middleware for ad-hoc, peer-to-peer networks, based on reputation. Our middleware's protocols take advantage of the unstructured nature of the network to render malicious behavior, such as lying and colluding, risky. The reputation information of each peer is stored in its neighbors and piggy-backed on its replies. By simulating the behavior of networks both with and without a rating scheme we were able to show that just a few dishonest peers can flood the network with false results, whereas this phenomenon is virtually eliminated when using our middleware.
{"title":"Decentralized trust management for ad-hoc peer-to-peer networks","authors":"T. Repantis, V. Kalogeraki","doi":"10.1145/1169075.1169081","DOIUrl":"https://doi.org/10.1145/1169075.1169081","url":null,"abstract":"Modern mobile devices can form ad-hoc networks to autonomously share data and services. While such self-organizing, peer-to-peer communities offer exciting collaboration opportunities, deciding whether to trust another peer can be challenging. In this work we propose a decentralized trust management middleware for ad-hoc, peer-to-peer networks, based on reputation. Our middleware's protocols take advantage of the unstructured nature of the network to render malicious behavior, such as lying and colluding, risky. The reputation information of each peer is stored in its neighbors and piggy-backed on its replies. By simulating the behavior of networks both with and without a rating scheme we were able to show that just a few dishonest peers can flood the network with false results, whereas this phenomenon is virtually eliminated when using our middleware.","PeriodicalId":364168,"journal":{"name":"workshop on Middleware for Pervasive and Ad-hoc Computing","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2006-11-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122661640","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
If the hype is to be believed, we have come very close to the realisation of a ubiquitous computing environment. There are already a wide variety of devices, networking technologies and bespoke services; and yet the vision of anywhere anytime computing is proving somewhat elusive. Software abstractions and metaphors that were developed for desktop applications do not extend to ubiquitous computing. Because of the frequency of contextual changes and the paucity of resources, new distributed applications require much more flexible support for controlled reconfiguration, self-adaptation, and recovery of components.We present a lightweight component management Middleware that provides flexibility by allowing design, deployment, and run-time reconfigurability. At design and deployment time, the developer can design a system by structuring software components according to a specific scenario. Then, at run-time, she can dynamically reconfigure the system, adjust to new environments, or dynamically add mechanisms that enables self-adaptation.
{"title":"MACE: adaptive component management middleware for ubiquitous systems","authors":"Mohamed Ahmed, R. Ghanea-Hercock, S. Hailes","doi":"10.1145/1169075.1169078","DOIUrl":"https://doi.org/10.1145/1169075.1169078","url":null,"abstract":"If the hype is to be believed, we have come very close to the realisation of a ubiquitous computing environment. There are already a wide variety of devices, networking technologies and bespoke services; and yet the vision of anywhere anytime computing is proving somewhat elusive. Software abstractions and metaphors that were developed for desktop applications do not extend to ubiquitous computing. Because of the frequency of contextual changes and the paucity of resources, new distributed applications require much more flexible support for controlled reconfiguration, self-adaptation, and recovery of components.We present a lightweight component management Middleware that provides flexibility by allowing design, deployment, and run-time reconfigurability. At design and deployment time, the developer can design a system by structuring software components according to a specific scenario. Then, at run-time, she can dynamically reconfigure the system, adjust to new environments, or dynamically add mechanisms that enables self-adaptation.","PeriodicalId":364168,"journal":{"name":"workshop on Middleware for Pervasive and Ad-hoc Computing","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2006-11-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126734418","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
U. Norbisrath, Ibrahim Armaç, Daniel Retkowitz, Priit Salumaa
New developments and decreasing costs of electronic appliances enable the realization of pervasive systems in our daily environment. In our work, we focus on eHome systems. The cost-intensive repetitive development process for every new eHome environment is one of the major problems preventing their widespread use. So, we transformed the repetitive development process to a single one, followed by a repetitive configuration process. To support this configuration process, we introduce a model capable of storing all the parameters relevant for this specific process. To enable semiautomatic configuration based on the model, a specification is required beforehand. In this paper, we will show how the necessary specification is covered by the introduced model, and how the model supports the eHome system configuration and context inferring at runtime.
{"title":"Modeling eHome systems","authors":"U. Norbisrath, Ibrahim Armaç, Daniel Retkowitz, Priit Salumaa","doi":"10.1145/1169075.1169079","DOIUrl":"https://doi.org/10.1145/1169075.1169079","url":null,"abstract":"New developments and decreasing costs of electronic appliances enable the realization of pervasive systems in our daily environment. In our work, we focus on eHome systems. The cost-intensive repetitive development process for every new eHome environment is one of the major problems preventing their widespread use. So, we transformed the repetitive development process to a single one, followed by a repetitive configuration process. To support this configuration process, we introduce a model capable of storing all the parameters relevant for this specific process. To enable semiautomatic configuration based on the model, a specification is required beforehand. In this paper, we will show how the necessary specification is covered by the introduced model, and how the model supports the eHome system configuration and context inferring at runtime.","PeriodicalId":364168,"journal":{"name":"workshop on Middleware for Pervasive and Ad-hoc Computing","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2006-11-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127718052","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
How to provide appropriate context information is a challenging problem in context-aware computing. Most existing approaches use a centralized selection mechanism to decide which context information is appropriate. In this paper, we propose a novel approach based on negotiation with rewards to solving such problem. Distributed context providers negotiate with each other to decide who can provide context and how they allocate proceeds. In order to support our approach, we have designed a concrete negotiation model with rewards. We also evaluate our approach and show that it indeed can choose an appropriate context provider and allocate the proceeds fairly.
{"title":"Rewards-based negotiation for providing context information","authors":"Bing Shi, Xianping Tao, Jian Lu","doi":"10.1145/1169075.1169083","DOIUrl":"https://doi.org/10.1145/1169075.1169083","url":null,"abstract":"How to provide appropriate context information is a challenging problem in context-aware computing. Most existing approaches use a centralized selection mechanism to decide which context information is appropriate. In this paper, we propose a novel approach based on negotiation with rewards to solving such problem. Distributed context providers negotiate with each other to decide who can provide context and how they allocate proceeds. In order to support our approach, we have designed a concrete negotiation model with rewards. We also evaluate our approach and show that it indeed can choose an appropriate context provider and allocate the proceeds fairly.","PeriodicalId":364168,"journal":{"name":"workshop on Middleware for Pervasive and Ad-hoc Computing","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2006-11-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124989537","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pervasive computing scenarios often assume pervasive connectivity. Yet, because of different communication technologies that are integrated into different devices (e.g., IrDA or Bluetooth), because of different high-level communication protocols (e.g., IPv4 vs. IPv6), and because of security and networking constraints (e.g., firewalls and NATs) pervasive connectivity is an illusion in most real-world environments. This is especially true for scenarios involving mobile users because there is no prior knowledge about the devices and users present. This paper presents a novel approach for dealing with these connectivity restrictions in environments where groups of people need to cooperate with each other in an ad-hoc fashion. The core idea is to establish an overlay among group members that is used to share information about the current network environment. This information is conveyed in the form of dynamically generated tag sequences that are displayed and captured by the digital cameras integrated into an increasing number of mobile devices. Users who want to invite others to a group invoke an application that displays multiple, dynamically generated tags on their mobile device's screen. People, who want to join the group, then point the camera integrated into their handheld devices to the other device's screen. Thus, the displayed tag sequence is captured and decoded in real time; and the information contained therein can be used to securely and robustly join the group. By transmitting information about the group, group participants, and communication parameters within a sequence of tags, it is possible to provide ad-hoc connectivity in various mobile computing settings.
{"title":"Towards pervasive connectivity in mobile computing settings","authors":"F. Siegemund, M. Haroon, G. Brasche","doi":"10.1145/1169075.1169080","DOIUrl":"https://doi.org/10.1145/1169075.1169080","url":null,"abstract":"Pervasive computing scenarios often assume pervasive connectivity. Yet, because of different communication technologies that are integrated into different devices (e.g., IrDA or Bluetooth), because of different high-level communication protocols (e.g., IPv4 vs. IPv6), and because of security and networking constraints (e.g., firewalls and NATs) pervasive connectivity is an illusion in most real-world environments. This is especially true for scenarios involving mobile users because there is no prior knowledge about the devices and users present. This paper presents a novel approach for dealing with these connectivity restrictions in environments where groups of people need to cooperate with each other in an ad-hoc fashion. The core idea is to establish an overlay among group members that is used to share information about the current network environment. This information is conveyed in the form of dynamically generated tag sequences that are displayed and captured by the digital cameras integrated into an increasing number of mobile devices. Users who want to invite others to a group invoke an application that displays multiple, dynamically generated tags on their mobile device's screen. People, who want to join the group, then point the camera integrated into their handheld devices to the other device's screen. Thus, the displayed tag sequence is captured and decoded in real time; and the information contained therein can be used to securely and robustly join the group. By transmitting information about the group, group participants, and communication parameters within a sequence of tags, it is possible to provide ad-hoc connectivity in various mobile computing settings.","PeriodicalId":364168,"journal":{"name":"workshop on Middleware for Pervasive and Ad-hoc Computing","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2006-11-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122905371","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}