From: Antoine Martin <antoine@nagafix.co.uk>
To: Stefan Hajnoczi <stefanha@redhat.com>
Cc: netdev@vger.kernel.org
Subject: Re: AF_VSOCK status
Date: Mon, 11 Apr 2016 18:53:05 +0700 [thread overview]
Message-ID: <570B9021.5050709@nagafix.co.uk> (raw)
In-Reply-To: <20160406092609.GA17538@stefanha-x1.localdomain>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
(snip)
> The patches are on the list (latest version sent last week):
> http://comments.gmane.org/gmane.linux.kernel.virtualization/27455
>
> They are only "Request For Comments" because the VIRTIO
> specification changes have not been approved yet. Once the spec
> is approved then the patches can be seriously considered for
> merging.
>
> There will definitely be a v6 with Claudio Imbrenda's locking
> fixes.
If that's any help, feel free to CC me and we'll test it.
(not sure how long I will stay subscribed to this high traffic list)
>> We now have a vsock transport merged into xpra, which works very
>> well with the kernel and qemu versions found here:
>> http://qemu-project.org/Features/VirtioVsock Congratulations on
>> making this easy to use! Is the upcoming revised interface
>> likely to cause incompatibilities with existing binaries?
>
> Userspace applications should not notice a difference.
Great.
>> It seems impossible for the host to connect to a guest: the
>> guest has to initiate the connection. Is this a feature / known
>> limitation or am I missing something? For some of our use cases,
>> it would be more practical to connect in the other direction.
>
> host->guest connections have always been allowed. I just checked
> that it works with the latest code in my repo:
>
> guest# nc-vsock -l 1234 host# nc-vsock 3 1234
Sorry about that, it does work fine, I must have tested it wrong.
With our latest code:
* host connecting to a guest session:
guest# xpra start --bind-vsock=auto:1234 --start-child=xterm
host# xpra attach vsock:$THECID:1234
* guest out to the host (no need for knowing the CID):
host# xpra start --bind-vsock=auto:1234 --start-child=xterm
guest# xpra attach vsock:host:1234
>> In terms of raw performance, I am getting about 10Gbps on an
>> Intel Skylake i7 (the data stream arrives from the OS socket
>> recv syscall split into 256KB chunks), that's good but not much
>> faster than virtio-net and since the packets are avoiding all
>> sorts of OS layer overheads I was hoping to get a little bit
>> closer to the ~200Gbps memory bandwidth that this CPU+RAM are
>> capable of. Am I dreaming or just doing it wrong?
>
> virtio-vsock is not yet optimized but the priority is not to make
> something faster than virtio-net. virtio-vsock is not for
> applications who are trying to squeeze out every last drop of
> performance. Instead the goal is to have a transport for
> guest<->hypervisor services that need to be zero-configuration.
Understood. It does that and this is a big win for us already, it's
also faster than virtio-net it seems, so this was not a complaint.
>> How hard would it be to introduce a virtio mmap-like transport
>> of some sort so that the guest and host could share some memory
>> region? I assume this would give us the best possible
>> performance when transferring large amounts of data? (we already
>> have a local mmap transport we could adapt)
>
> Shared memory is beyond the scope of virtio-vsock and it's
> unlikely to be added.
I wasn't thinking of adding this to virtio-vsock, this would be a
separate backend.
> There are a few existing ways to achieve that without involving
> virtio-vsock: vhost-user or ivshmem.
Yes, I've looked at those and they seem a bit overkill for what we
want to achieve. We don't want sharing with multiple guests, or
interrupts.
All we want is a chunk of host memory to be accessible from the guest..
Thanks
Antoine
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iEYEARECAAYFAlcLkBsACgkQGK2zHPGK1ruJ0wCfbNkc5L0ewUBuI7DgTyuwGRBz
aZoAn2pEbrVAkLoCMOunCYQ1FoaDIETr
=qrz1
-----END PGP SIGNATURE-----
next prev parent reply other threads:[~2016-04-11 11:53 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-05 12:34 AF_VSOCK status Antoine Martin
2016-04-06 9:26 ` Stefan Hajnoczi
2016-04-11 11:53 ` Antoine Martin [this message]
2016-04-12 14:03 ` Stefan Hajnoczi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=570B9021.5050709@nagafix.co.uk \
--to=antoine@nagafix.co.uk \
--cc=netdev@vger.kernel.org \
--cc=stefanha@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.