enabling semantic communications for virtual machines via iconnect
iConnect is an abstraction that encapsulates all of a virtual machine's interactions with outside entities. Its intent is to exploit semantic information to better support the end-to-end requirements of such VM communications. Focusing on the I/O performed by VMs and leveraging the fact that modern systems already have to virtualize the physical devices used by VMs, this paper shows that the iConnect abstraction can be implemented with the extension of existing virtual device interfaces. Specifically, by devising enhanced virtual devices, we can (1) efficiently implement the communication paths between virtual machines (VMs) and the virtualized platforms (VPs) on which they run, and (2) capture semantic information about VM-device interactions, which can then be used to implement additional functionality and efficient sharing of physical devices. The paper presents three concrete realizations of the iConnect abstraction: a multimedia device virtualization solution (VMedia) which utilizes semantic information to implement efficient sharing and enhanced functionality, a network virtualization solution that provides virtual NICs with QoS-support where the VM communicates its QoS requirements to the VP, and a storage virtualization solution which permits a VM to access a block device regardless of whether such a device is physically located locally or must be accessed at a remote location. A Xen-based implementation of the iConnect concept demonstrates substantial performance improvements and additional functionality derived from their use at a minimal cost to VMs, in part because iConnect utilizes additional computational resources of the VP and can take better advantage of certain underlying platform capabilities.
java virtual machine device driver reliability linux