Device-Level IoT with Virtual I/O Device Interconnection

2016 
Networked devices in an Internet-of-Things (IoT) environment generally need to be controlled or organized by a central controlling host. These IoT devices are implemented together with a small computer that consists of a central processing unit (CPU), a memory, and input/output (I/O) devices to communicate with this host. The small computer uses its own software network stack for communication. This paper reports our study of another finer-grained IoT in which an IoT device is not implemented with a computer but just an I/O device. The I/O device works as the local device of a remote controlling host and the IoT device is controlled by data communication with the controlling host through the I/O device. Such an IoT system simplifies the internal configuration of an IoT device node and can lower its implementation costs. However, previous methods have required a special hardware interface to their controlling host to connect to a remote I/O device that is implemented together with an IoT device. This paper proposes a novel software virtualization architecture for a controlling host to connect to I/O devices distributed in an Ethernet. It virtualizes a remote I/O device that communicates through the standard network interface card (NIC) of a host as an I/O device that is contained in the I/O device tree of the host. Various kinds of computers ranging from hand-held to rackmount ones are enabled to control remote IoT devices with the installation of the proposed software. In addition, because virtualization is performed in the PCI Express (PCIe) layer, any complying I/O device is remotely interconnected and is driven by its device driver without modifications. The feasibility of the method was studied by evaluating the implemented prototype using a NIC and a storage controller.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    11
    References
    0
    Citations
    NaN
    KQI
    []