Open gabivlj opened 2 months ago
Hi gabivlj, Thank you very much for your interest into Firecracker and this feature request. While at the moment we are not actively working to implement this feature, we are more than happy to receive contribution from the community to implement it. We will make sure to review any implementation of it. Thanks, Jack
Feature Request
https://docs.oasis-open.org/virtio/virtio/v1.2/csd01/virtio-v1.2-csd01.html
VIRTIO_VSOCK_F_SEQPACKET has been introduced as an option for virtio vsock. It would enable the use-case of VMs that are relaying datagrams over a vsock and need to keep the boundaries without a SOCK_STREAM combining them together.
Right now you can connect from the VM opening a vsock with SOCK_STREAM type, but not with SOCK_SEQPACKET. This would also mean that on the host side the created UDS needs to match the socket type of the vsock.
Describe the desired solution
This should work:
And if the opened UDS on the host side doesn't match the sock type it should not go ahead with the connection.
Describe possible alternatives
I worked around this by implementing packet boundaries within the stream socket, but it's clearly a not very efficient solution and slow.
Checks
I am curious if this is something the Firecracker team is interested in implementing for their vsock virtio component.