7 research outputs found

    Seamless Integration of Heterogeneous Devices and Access Control in Smart Homes

    Full text link
    Abstract—The recent trend of ubiquitous access to embedded physical devices over the Internet as well as increasing penetration of wireless protocols such as ZigBee has raised attention to smart homes. These systems consist of sensors, devices and smart appliances that can be monitored and controlled remotely by human users and cloud services. However, the lack of a de facto communication standard for smart homes creates a barrier against the interoperability of devices from different vendors. We address this challenge by proposing a holistic, extensible software architecture that seamlessly integrates heterogeneous protocol- and vendor-specific devices and services, while making these services securely available over the Internet. Our architecture is developed on top of the OSGi framework and incorporates a semantic model of a smart home system. As a result, we achieve semantic interoperability – the ability to integrate new applications and drivers into the deployed system during runtime. Furthermore, we integrate a new access control model for specific smart home scenarios. As a proof of our concept, we demonstrate the seamless semantic discovery of home devices at runtime by integrating several protocols including X10, Insteon, ZigBee and UPnP into a real test. Using smart phones and cloud services together with our home gateway implementation, we further demonstrate the ease of integration of new applications and drivers. Keywords- smart home; interoperation; semantics; access control I

    Using tablet devices to control complex home appliances

    Get PDF
    Internet of things has made connected devices and appliances widely available and tablet devices are common household items. This study focuses on technical user interface design challenges and requirements for user interface design of controlling complex home appliances with tablet devices. There is a literature review about available controlling technologies and usability heuristics related to tablet and mobile devices. An Android test application was created and tested with four test users to find out how well those heuristics work and are covered. That application was tested against the regular user interface of a dishwasher and task completion times and errors were noted down. Test users were asked to answer a questionnaire regarding the heuristics and how well the implementation performed. Tablet devices should be evaluated using regular usability heuristics, but besides them they require mobile specific heuristics, such as easy of input, screen readability and glancability, physical interaction and ergonomics and privacy and social convention taken into account. The results showed that a tablet user interface was able to outperform its regular counterpart in task completion times and in number of errors. The implementation also covered those heuristics in a more comprehensive way. But among test persons the most benefit was with users who were familiar with tablets and not with dishwashers. A test user who wasn t familiar with tablets but was with dishwashers performed tasks faster and with fewer errors with regular user interface. In conclusion a tablet user interface enabled users who were familiar with tablets to perform tasks faster and with less errors. Those users were also more satisfied with a tablet user interface than a regular one. On the other hand a test user with little experience of tablets and familiarity with dishwashers was able to perform tasks faster an with less errors with the regular user interface. A tablet user interface was able to offer extra benefits and efficiency to users, but regular user interface should be also available to satisfy users who are not familiar with mobile devices

    DECOUPLING CONSISTENCY DETERMINATION AND TRUST FROM THE UNDERLYING DISTRIBUTED DATA STORES

    Get PDF
    Building applications on cloud services is cost-effective and allows for rapid development and release cycles. However, relying on cloud services can severely limit applications’ ability to control their own consistency policies, and their ability to control data visibility during replication. To understand the tension between strong consistency and security guarantees on one hand and high availability, flexible replication, and performance on the other, it helps to consider two questions. First, is it possible for an application to achieve stricter consistency guarantees than what the cloud provider offers? If we solely rely on the provider service interface, the answer is no. However, if we allow the applications to determine the implementation and the execution of the consistency protocols, then we can achieve much more. The second question is, can an application relay updates over untrusted replicas without revealing sensitive information while maintaining the desired consistency guarantees? Simply encrypting the data is not enough. Encryption does not eliminate information leakage that comes from the meta-data needed for the execution of any consistency protocol. The alternative to encryption—allowing the flow of updates only through trusted replicas— leads to predefined communication patterns. This approach is prone to failures that can cause partitioning in the system. One way to answer “yes” to this question is to allow trust relationships, defined at the application level, to guide the synchronization protocol. My goal in this thesis is to build systems that take advantage of the performance, scalability, and availability of the cloud storage services while, at the same time, bypassing the limitations imposed by cloud service providers’ design choices. The key to achieving this is pushing application-specific decisions where they belong: the application. I defend the following thesis statement: By decoupling consistency determination and trust from the underlying distributed data store, it is possible to (1) support application-specific consistency guarantees; (2) allow for topology independent replication protocols that do not compromise application privacy. First I design and implement Shell, a system architecture for supporting strict consistency guarantees over eventually consistent data stores. Shell is a software layer designed to isolate consistency implementations and cloud-provider APIs from the application code. Shell consists of four internal modules and an application store, which together abstract consistency-related operations and encapsulate communication with the underlying storage layers. Apart from consistency protocols tailored to application needs, Shell provides application-aware conflict resolution without relying on generic heuristics such as the “last write wins.” Shell does not require the application to maintain dependency-tracking in- formation for the execution of the consistency protocols as other existing approaches do. I experimentally evaluate Shell over two different data-stores using real-application traces. I found that using Shell can reduce the inconsistent updates by 10%. I also measure and show the overheads that come from introducing the Shell layer. Second, I design and implement T.Rex, a system for supporting topology-independent replication without the assumption of trust between all the participating replicas. T.Rex uses role-based access control to enable flexible and secure sharing among users with widely varying collaboration types: both users and data items are assigned roles, and a user can access data only if it shares at least one role. Building on top of this abstraction, T.Rex includes several novel mechanisms: I introduce role proofs to prove role membership to others in the role without leaking information to those not in the role. Additionally, I introduce role coherence to prevent updates from leaking across roles. Finally, I use Bloom filters as opaque digests to enable querying of remote cache state without being able to enumerate it. I combine these mechanisms to develop a novel, cryptographically secure, and efficient anti-entropy protocol, T.Rex-Sync. I evaluate T.Rex on a local test-bed, and I show that it achieves security with modest computational and storage overheads

    A System for Controlling, Monitoring and Programming the Home

    Get PDF
    As technology becomes ever more pervasive, the challenges of home automation are increasingly apparent. Seamless home control, home monitoring and home programming by the end user have yet to enter the mainstream. This could be attributed to the challenge of developing a fully autonomous and extensible home system that can support devices and technologies of differing protocols and functionalities. In order to offer programming facilities to the user, the underlying rule system must be fully independent, allowing support for current and future devices. Additional challenges arise from the need to detect and handle conflicts that may arise among user rules and yield undesirable results. Non-technical individuals typically struggle when faced with a programming task. It is therefore vital to encourage and ease the process of programming the home. This thesis presents Homer, a home system that has been developed to support three key features of a home system: control, monitoring and programming. Homer supports any third-party hardware or software service that can expose its functionality through Java and conform to the Homer interface. Stand-alone end user interfaces can be written by developers to offer any of Homer's functionality. Where policies (i.e. rules) for the home are concerned, Homer offers a fully independent policy system. The thesis presents a custom policy language, Homeric, that has been designed specifically for writing home rules. The Homer policy system detects overlaps and conflicts among rules using constraint satisfaction and the effect on environment variables. The thesis also introduces the notion of perspectives to ease user interactivity. These have been integrated into Homer to accommodate the range of ways in which a user may think about different aspects and features of their home. These perspectives include location, device type, time and people-oriented points of view. Design guidelines are also discussed to aid end user programming of the home. The work presented in this thesis demonstrates a system that supports control, monitoring and programming of the home. Developers can quickly and easily add functionality to the home through components. Conflicts can be detected amongst rules within the home. Finally, design guidelines and a prototype interface have been developed to allow both technically minded and non-technical people to program their home

    Architecting Social Internet of Things

    Get PDF
    In the new era of the Internet of Things (IoT), most of the devices we interact with daily are connected to the Internet. From tiny sensors, lamps, home appliances, home security systems and health-care devices, to complex heating, ventilation and air conditioning (HVAC) systems at home, myriad devices have network connectivity and provide smart applications. The Social Internet of Things (SIoT) is a new paradigm where IoT merges with social networks, allowing people and connected devices as well as the devices themselves to interact within a social network framework to support a new social navigation. Smart homes is one of the domains that can fully leverage this new paradigm, which will enable people and devices, even in different homes, to actively and mostly automatically collaborate to discover and share new information and services. Unfortunately the heterogeneous nature of the devices around the home prohibits seamless communication in the (S)IoT. Furthermore, the state-of-the-art solutions in smart homes offer little, if any, support for collaborating users and devices. This dissertation describes a new, scalable approach to connect, interact and share useful information through devices and users with common interests. The dissertation has three contributions. First, it proposes a holistic and extensible smart home gateway architecture that seamlessly integrates heterogeneous protocol-- and vendor-- specific devices and services and provides fine-grained access controls. Second, it defines an interoperable, scalable and extensible software architecture for a novel cloud-based collaboration framework for a large number of devices and users in many different smart homes. Third, it provides a reasoning framework to enable automated decisions based on the discovered information and knowledge created and shared by end users. The developed architecture and solutions are implemented in real systems, which integrate with many different devices from different manufacturers and run multiple categories of rules created by end users. The architectural evaluation results show the developed systems are interoperable, scalable and extensible
    corecore