Abstract

We present ELIoT, a development platform for Internet-connected smart devices. Unlike most solutions for the emerging “Internet of Things” (IoT), ELIoT allows programmers to implement functionality running within the networks of smart devices without necessarily leveraging the external Internet, and yet enables the integration of such functionality with Internet-wide services. ELIoT thus reconciles the demand for efficient localized performance, e.g., reduced latency for implementing control loops, with the need to integrate with the larger Internet. To this end, ELIoT’s programming model provides IoT-specific inter-process communication facilities, while its virtual machine-based execution caters for the need of software reconfiguration and the devices’ heterogeneity. Moreover, ELIoT addresses network-wide integration concerns by enabling standard-compliant interactions through REST and CoAP interfaces, with the added ability to dynamically reconfigure REST interfaces as application requirements evolve. We demonstrate the features and effectiveness of ELIoT based on a smart-home application, and quantitatively derive performance figures atop two hardware platforms compared to implementations using plain C or Java using the AllJoin framework. Compared to the C implementation, our results indicate that the performance cost for the increased programming productivity brought by ELIoT is still viable; for example, memory consumption in ELIoT is comparable, whereas the processing overhead remains within practical limits. Compared to the Java implementation using AllJoin, ELIoT provides a similar level of abstraction in programming, with much better performance both in memory consumption and processing overhead.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call