Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

DIAC: An Inter-app Conflicts Detector for Open IoT Systems

Published: 03 October 2020 Publication History
  • Get Citation Alerts
  • Abstract

    This article tackles the problem of detecting and solving potential conflicts among independently developed apps that are to be installed into an open Internet-of-Things (IoT) environment. It provides a new set of definitions and categorizations of the conflicts to more precisely characterize the nature of the problem, and it proposes a representation named “IA Graphs” for formally representing IoT controls and inter-app interplays. Based on the definitions and representation, it then describes an efficient conflict detection algorithm. Combining conflict categories, seriousness indicator, and conflict frequency, an innovative solution policy for solving various detected conflicts is developed, which also takes into account user preference and interest by providing interactive process. It implements a compiler and runtime software system that integrates all the proposed techniques together into a comprehensive solution. Experiments on SmartThings apps validate its significantly better detection efficacy over prior methods and effectiveness of conflict solution with user preference.

    References

    [1]
    Amittai Aviram, Shu-Chun Weng, Sen Hu, and Bryan Ford. 2012. Efficient system-enforced deterministic parallelism. Commun. ACM 55, 5 (2012), 111--119.
    [2]
    Gérard Berry. 2000. The Esterel v5 Language Primer: Version v5_91. Centre de mathématiques appliquées, Ecole des mines and INRIA.
    [3]
    Pavol Bielik, Veselin Raychev, and Martin Vechev. 2015. Scalable race detection for android applications. In ACM SIGPLAN Notices, Vol. 50. ACM, 332--348.
    [4]
    Eric Boutin, Jaliya Ekanayake, Wei Lin, Bing Shi, Jingren Zhou, Zhengping Qian, Ming Wu, and Lidong Zhou. 2014. Apollo: Scalable and coordinated scheduling for cloud-scale computing. In Proceedings of the 11th USENIX Symposium on Operating Systems Design and Implementation (OSDI’14). 285--300.
    [5]
    N. Cardozo, S. Gonzalez, K. Mens, R. Van Der Straeten, and T. D’Hondt. 2013. Modeling and analyzing self-adaptive systems with context Petri nets. In Proceedings of International Symposium on Theoretical Aspects of Software Engineering.
    [6]
    Haotian Chi, Qiang Zeng, Xiaojiang Du, and Jiaping Yu. 2018. Cross-app interference threats in smart homes: Categorization, detection and handling. In arXiv e-prints. Retrieved from https://arxiv.org/abs/1808.02125.
    [7]
    Jason Croft, Ratul Mahajan, Matthew Caesar, and Madan Musuvathi. 2015. Systematically exploring the behavior of control programs. In Proceedings of the USENIX Conference on Usenix Annual Technical Conference (USENIXATC’15). USENIX Association, Berkeley, CA, 165--176. Retrieved from http://dl.acm.org/citation.cfm?id=2813767.2813780.
    [8]
    Robert I. Davis and Alan Burns. 2011. A survey of hard real-time scheduling for multiprocessor systems. ACM Comput. Surveys 43, 4 (2011), 35.
    [9]
    C. Dixon, R. Mahajan, S. Agarwal, A. J. Brush, B. Lee, S. Saroiu, and P. Bahl. 2012. An operating system for the home. In Proceedings of the USENIX Symposium on Networked Systems Design and Implementation (NSDI’12).
    [10]
    Gartner, Inc. 2017. The world’s leading information technology research and advisory company. Retrieved from https://www.gartner.com/technology/home.jsp.
    [11]
    Pilar Gonzalez-Ferez and Angelos Bilas. 2014. Tyche: An efficient Ethernet-based protocol for converged networked storage. In Proceedings of the Symposium on Mass Storage Systems and Technologies.
    [12]
    Groovy. 2017. Groovy Programming Language. Retrieved from http://www.groovy-lang.org.
    [13]
    C. H. Hsiao, J. Yu, S. Narayanasamy, Z. Kong, C. L. Pereira, G. A. Pokam, P. M. Chen, and Jason Flinn. 2014. Race detection for event-driven mobile systems. In Proceedings of the International Conference on Programming Language Design and Implementation (PLDI’14).
    [14]
    IFTTT 2017. IFTTT website. Retrieved from http://ifttt.com.
    [15]
    ITU. 2015. Internet of Things Global Standards Initiative. Retrieved from https://www.itu.int/en/ITU-T/gsi/iot/Pages/default.aspx.
    [16]
    Yunhan Jack Jia, Qi Alfred Chen, Shiqi Wang, Amir Rahmati, Earlence Fernandes, Z. Morley Mao, and Atul Prakash. 2017. ContexloT: Toward providing contextual integrity to appified IoT platforms. In Proceedings of the Network and Distributed System Security Symposium (NDSS'17). Retrieved from https://www.ndss-symposium.org/ndss2017/ndss-2017-programme/contexlot-towards-providing-contextual-integrity-appified-iot-platforms/.
    [17]
    Bakhtiar Khan Kasi and Anita Sarma. 2013. Cassandra: Proactive conflict minimization through optimized task scheduling. In Proceedings of the 35th International Conference on Software Engineering (ICSE’13). IEEE, 732--741.
    [18]
    Ahmed Khurshid, Xuan Zou, Wenxuan Zhou, Matthew Caesar, and P. Brighten Godfrey. 2013. Veriflow: Verifying network-wide invariants in real time. In Proceedings of the 10th USENIX Symposium on Networked Systems Design and Implementation (NSDI’13). 15--27.
    [19]
    Xinyi Li, Lei Zhang, and Xipeng Shen. 2019. IA-graph-based inter-app conflicts detection in open IoT systems. In Proceedings of the 20th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded Systems.
    [20]
    Chieh-Jan Mike Liang, Lei Bu, Zhao Li, Junbei Zhang, Shi Han, Börje F. Karlsson, Dongmei Zhang, and Feng Zhao. 2016. Systematically debugging iot control system correctness for building automation. In Proceedings of the 3rd ACM International Conference on Systems for Energy-Efficient Built Environments (BuildSys’16). ACM, New York, NY, 133--142.
    [21]
    Chieh-Jan Mike Liang, Börje F. Karlsson, Nicholas D. Lane, Feng Zhao, Junbei Zhang, Zheyi Pan, Zhao Li, and Yong Yu. 2015. SIFT: Building an Internet of Safe Things. In Proceedings of the 14th International Conference on Information Processing in Sensor Networks (IPSN’15). ACM, New York, NY, 298--309.
    [22]
    Pallavi Maiya, Aditya Kanade, and Rupak Majumdar. 2014. Race detection for Android applications. In ACM SIGPLAN Notices, Vol. 49. ACM, 316--325.
    [23]
    Sirajum Munir and John A. Stankovic. 2014. DepSys: Dependency aware integration of cyber-physical systems for smart homes. In Proceedings of the ACM/IEEE 5th International Conference on Cyber-Physical Systems (with CPS Week 2014) (ICCPS’14). IEEE Computer Society, Washington, DC, 127--138.
    [24]
    Wolfgang Reisig. 1985. Petri Nets: An Introduction. Springer-Verlag, Berlin, Heidelberg. Retrieved from https://dl.acm.org/doi/book/10.5555/3405.
    [25]
    SmartApp. 2017. SmartApp Repository. Retrieved from https://github.com/SmartThingsCommunity/SmartThingsPublic.
    [26]
    SmartThings. 2017. SmartThings by Samsung. Retrieved from http://www.smartthings.com.
    [27]
    Yuan Tian, Nan Zhang, Yuehhsun Lin, Xiaofeng Wang, Blase Ur, Xianzheng Guo, and Patrick Tague. 2017. SmartAuth: User-centered authorization for the Internet of Things. In Proceedings of the USENIX Security Symposium. 361--378.
    [28]
    VisionMobile. 2017. A leading analyst firm in the developer economy. Retrieved from https://www.visionmobile.com.
    [29]
    Z3. 2017. Z3 Theorem Prover by Microsoft Research. Retrieved from https://z3.codeplex.com.

    Cited By

    View all
    • (2023)A Survey on Conflict Detection in IoT-based Smart HomesACM Computing Surveys10.1145/362951756:5(1-40)Online publication date: 27-Nov-2023
    • (2023)A User-Centric Evaluation of Smart Home Resolution Approaches for Conflicts Between RoutinesProceedings of the ACM on Interactive, Mobile, Wearable and Ubiquitous Technologies10.1145/35819977:1(1-35)Online publication date: 28-Mar-2023
    • (2023)Detecting Smart Home Automation Application Interferences with Domain Knowledge2023 38th IEEE/ACM International Conference on Automated Software Engineering (ASE)10.1109/ASE56229.2023.00070(1086-1097)Online publication date: 11-Sep-2023
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Transactions on Embedded Computing Systems
    ACM Transactions on Embedded Computing Systems  Volume 19, Issue 6
    Special Issue on LCETES, Part 2, Learning, Distributed, and Optimizing Compilers
    November 2020
    271 pages
    ISSN:1539-9087
    EISSN:1558-3465
    DOI:10.1145/3427195
    Issue’s Table of Contents
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Journal Family

    Publication History

    Published: 03 October 2020
    Online AM: 07 May 2020
    Accepted: 01 March 2020
    Revised: 01 March 2020
    Received: 01 November 2019
    Published in TECS Volume 19, Issue 6

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. IoT
    2. compiler
    3. conflicts detection

    Qualifiers

    • Research-article
    • Research
    • Refereed

    Funding Sources

    • Fundamental Research Funds for the Central Universities
    • Natural Science Basic Research Plan in Shaanxi Province of China
    • National Science Foundation (NSF)
    • Key Research and Development Program of Shaanxi Province of China

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)21
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 12 Aug 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2023)A Survey on Conflict Detection in IoT-based Smart HomesACM Computing Surveys10.1145/362951756:5(1-40)Online publication date: 27-Nov-2023
    • (2023)A User-Centric Evaluation of Smart Home Resolution Approaches for Conflicts Between RoutinesProceedings of the ACM on Interactive, Mobile, Wearable and Ubiquitous Technologies10.1145/35819977:1(1-35)Online publication date: 28-Mar-2023
    • (2023)Detecting Smart Home Automation Application Interferences with Domain Knowledge2023 38th IEEE/ACM International Conference on Automated Software Engineering (ASE)10.1109/ASE56229.2023.00070(1086-1097)Online publication date: 11-Sep-2023
    • (2022)Conflict Detection and Resolution in IoT Systems: A SurveyIoT10.3390/iot30100123:1(191-218)Online publication date: 28-Feb-2022
    • (2021)A conflicts’ classification for IoT-based services: a comparative surveyPeerJ Computer Science10.7717/peerj-cs.4807(e480)Online publication date: 27-Apr-2021

    View Options

    Get Access

    Login options

    Full Access

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    HTML Format

    View this article in HTML Format.

    HTML Format

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media