Bug 271793 - virtio: doesn't implement a vsock driver
Summary: virtio: doesn't implement a vsock driver
Status: Open
Alias: None
Product: Base System
Classification: Unclassified
Component: kern (show other bugs)
Version: CURRENT
Hardware: Any Any
: --- Affects Only Me
Assignee: freebsd-virtualization (Nobody)
URL: https://docs.oasis-open.org/virtio/vi...
Keywords: feature
Depends on:
Blocks:
 
Reported: 2023-06-02 22:30 UTC by Mina Galić
Modified: 2024-02-07 17:59 UTC (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mina Galić freebsd_triage 2023-06-02 22:30:05 UTC
from: https://wiki.qemu.org/Features/VirtioVsock

virtio-vsock is a host/guest communications device. It allows applications in the guest and host to communicate. This can be used to implement hypervisor services and guest agents.

  -  POSIX Sockets API so existing networking applications require minimal modification (unlike virtio-serial char devices)
  -  Listen sockets can accept connections from multiple clients (unlike virtio-serial char devices)
  -  No address configuration required inside the guest
  -  No Ethernet or TCP/IP for a reduced attack surface for hypervisor services
  -  Can be used with VMs that have no network interfaces

Sockets are created with the AF_VSOCK address family. The SOCK_STREAM socket type is currently implemented for in-order, guaranteed stream semantics.

The actual 1.1 spec is at: https://docs.oasis-open.org/virtio/virtio/v1.1/csprd01/virtio-v1.1-csprd01.html#x1-39000010
Comment 1 Mina Galić freebsd_triage 2023-06-02 22:31:35 UTC
Why do I care about this?
I'm working on cloud-init, which uses LXD for testing.

LXD uses vsock to communicate between lxd-agent on the virtual machine and LXD on the host.
To make FreeBSD run properly on LXD, we need lxd-agent and as such virtio vsock.
Comment 2 Mina Galić freebsd_triage 2023-06-02 22:51:42 UTC
note also that we have precedent for something like this on Hyper-V: https://reviews.freebsd.org/D24061