Title

Internet Of Things: Challenges And Opportunities For Collaborative Technologies (Invited Talk)

Abstract

A study by the consultancy firm Gartner has revealed that the number of connected devices in Internet of Things (IoT) will exceed 28 billion by the year 2020. This poses a new set of challenges and opportunities for collaborative technologies. In this presentation, we discuss ThingStore, an Internet-scale platform for collaboration on IoT applications development and deployment; and Tabletop, a multimodal environment for team collaboration in IoT-enabled workplace of the future. A. ThingStore Today's internet includes not only computers, but devices of all types. IoT is the interconnection of uniquely identifiable devices, such as sensors and cameras, with associated computing services that can be performed on embedded computing devices or external computing servers. IoT merges the physical world with an immersive virtual environment, fusing human and machine intelligence and opening up a host of new opportunities to rethink existing solutions. However, developing IoT applications is challenging due to device heterogeneity (Challenge 1). Great expertise is required to deal with multimodal data such as data streams, images, and videos. The lack of a computational model that would allow applications to share an IoT infrastructure is another great challenge (Challenge 2). The third challenge is dealing with limited communication bandwidth (Challenge 3). ThingStore [1] is a collaborative environment designed to address these challenges. 1) Challenge 1 - Device Heterogeneity To deal with device heterogeneity, ThingStore employs a unified binary interface to abstract 'thing' operations. 'Things' are made intelligent with event detection software routines, referred to as smart services or thing operators. They carry out computation upon raw data, generated by their physically collocated or decoupled sensing components, to detect specific events (outputting a "1" if an event is detected, and "0" otherwise). The binary abstraction hides complexity due to the heterogeneity of 'things' such as cameras vs. environmental sensors, and provides a unified framework for multimedia data stream processing (i.e., stream processing meets multimedia computing) simplifying complex real-time multimedia applications to event-based processing. The IoT application developers can focus on the application logic and leave coding tedious thing operators to thing providers who are experts of their things. As an example, a specialist in computer vision might want to offer cameras with smart services to detect smoke and gas leaks. 2) Challenge 2 - Sharing IoT Infrastructure To address the second IoT challenge, namely needing a mechanism for applications to share IoT infrastructure, ThingStore provides a Boolean query processing facility. This enables applications to share IoT devices through Event Query Language (EQL). A "1" output from a smart service is referred to as an atomic event. EQL allows queries to specify complex events that are logical and temporal combinations of atomic events as illustrated in the following query: SELECT event-handler FROM Thing1 T1 WHEN Before(T1.S3, T1.S1) WITHIN 30 seconds UNTIL 60 minutes In the above EQL query, Thing1 is the uniquely identifiable ID of the connected device, with T1 as its alias. T1 has S1 and S3 as two of its smart services. The WHEN clause specifies a complex event, in which S3 detects an atomic event before S1 detects its atomic event within the last 30 seconds. When this complex event becomes true, the query triggers the event-handler specified in the SELECT clause. Since this is a continuous query, the UNTIL clause can be used to indicate the termination condition. The above query terminates after 60 minutes. Alternatively, one can use "UNTIL time" to specify an absolute time for termination. Another option is "UNTIL forever". With this termination condition, the query runs indefinitely, or until it is explicitly terminated. With the EQL processor, IoT applications can be developed much like conventional database applications are implemented today using a query language. EQL, however, is fundamentally different from conventional database query languages such as SQL. SQL filters unwanted data using search keys (e.g., age > 45). In contrast, the EQL processor searches for the desired live data based on the specified event. 3) Challenge 3 - Network Communication Bottleneck There is no doubt that IoT will generate more "big data" than ever. While cloud computing has been a viable solution for processing and analyzing very large volumes of data, IoT is a different kind of big data. Cloud computing is applicable as long as the data set is relatively stable and already in the cloud data center. IoT, however, deals with potentially billions of live data sources continuously feeding from all across the Internet in real time. To overcome this new challenge, ThingStore is based on Edge Computing. There are three categories of users in ThingStore, namely thing providers, app developers, and end users. Thing providers deploy their 'things' and the associated smart services (thing operators) in their own thing servers. Thing providers may advertise their 'things' in the ThingStore IoT Market Place. An IoT app developer may browse the catalog in the IoT Market Place to subscribe to the desired smart services for their applications. Once an application has been developed and deployed on an app server, the app developer may also advertise this application in the IoT Market Place. The end users may use the IoT applications advertised in the catalog in one of two ways: a user may subscribe to an application running on a remote app server, or a user may purchase an application from the IoT Market Place and download it to run on a private computer. In either scenario, ThingStore hosts the query processing facility (i.e., EQL query processing). In this IoT architecture, event processing is pushed to the edge of the network to run on Thing Servers. In other words, small computing facilities such as small data centers with thing servers are placed at the edge of the Internet in close proximity to the Internet of Things. This new Edge Computing paradigm runs counter to the theme of consolidation and massive data centers that has dominated the discourse on cloud computing. Edge Computing renders continuous transmission of expensive raw data such as non-stop video streaming unnecessary. This advantage addressing the third IoT challenge is particularly important considering that video-on-demand applications such as Netflix, YouTube, and Hulu will use up 84% of Internet bandwidth by 2018 according to Cisco [2]. ThingStore is more than just an IoT market place. It is also a platform for collaboration on software development and IoT deployment. Thing providers are effectively collaborating with the app developers in software development. If ThingStore is deployed by an organization, it provides a framework for the different applications of this organization to share a single IoT infrastructure. A company with a significant data center can deploy ThingStore and host the applications in a cloud to offer IoT services to Internet customers. B. Tabletop While an IoT environment fusing human and machine intelligence opens up a host of new opportunities, the human teams may be overwhelmed trying to keep up with massive amount of real-time information. This calls for more effective communication and collaboration management tools to allow the human teams to deal with information overload in realtime decision making. Tabletop, a multimedia conferencing system, is one such environment to support teamwork in an IoT-enabled workplace. The team members can not only share and discuss multimedia information, but also cooperate on IoT devices as they collaborate. A video presentation [3] will be given to demonstrate the Tabletop system.

Publication Date

1-1-2016

Publication Title

Proceedings - 2016 International Conference on Collaboration Technologies and Systems, CTS 2016

Number of Pages

613-614

Document Type

Article; Proceedings Paper

Personal Identifier

scopus

DOI Link

https://doi.org/10.1109/CTS.2016.114

Socpus ID

85017023967 (Scopus)

Source API URL

https://api.elsevier.com/content/abstract/scopus_id/85017023967

This document is currently not available here.

Share

COinS