|
The virtio vsock device is a zero-configuration socket communications
device. It is designed as a guest<->host management channel suitable
for communicating with guest agents.
vsock is designed with the sockets API in mind and the driver is
typically implemented as an address family (at the same level as
AF_INET). Applications written for the sockets API can be ported with
minimal changes (similar amount of effort as adding IPv6 support to an
IPv4 application).
Unlike the existing console device, which is also used for guest<->host
communication, multiple clients can connect to a server at the same time
over vsock. This limitation requires console-based users to arbitrate
access through a single client. In vsock they can connect directly and
do not have to synchronize with each other.
Unlike network devices, no configuration is necessary because the device
comes with its address in the configuration space.
The vsock device was prototyped by Gerd Hoffmann and Asias He. I picked
the code and design up from them.
Fixes: https://github.com/oasis-tcs/virtio-spec/issues/27
Cc: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
|