From: jiangyiwen <jiangyiwen@huawei.com>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: kvm@vger.kernel.org, virtualization@lists.linux-foundation.org,
stefanha@redhat.com, netdev@vger.kernel.org
Subject: Re: [RFC] Discuss about an new idea "Vsock over Virtio-net"
Date: Tue, 4 Dec 2018 14:01:50 +0800 [thread overview]
Message-ID: <5C06184E.2010207@huawei.com> (raw)
In-Reply-To: <20181203230459-mutt-send-email-mst@kernel.org>
On 2018/12/4 12:08, Michael S. Tsirkin wrote:
> On Tue, Dec 04, 2018 at 10:21:40AM +0800, jiangyiwen wrote:
>> On 2018/12/4 9:31, Michael S. Tsirkin wrote:
>>> On Mon, Dec 03, 2018 at 11:10:58AM +0800, jiangyiwen wrote:
>>>> On 2018/11/30 21:40, Michael S. Tsirkin wrote:
>>>>> On Fri, Nov 30, 2018 at 09:10:03PM +0800, Jason Wang wrote:
>>>>>>
>>>>>> On 2018/11/30 下午8:55, Jason Wang wrote:
>>>>>>>
>>>>>>> On 2018/11/30 下午8:52, Michael S. Tsirkin wrote:
>>>>>>>>>> If you want to compare it with
>>>>>>>>>> something that would be TCP or QUIC. The fundamental
>>>>>>>>>> difference between
>>>>>>>>>> virtio-vsock and e.g. TCP is that TCP operates in a packet
>>>>>>>>>> loss environment.
>>>>>>>>>> So they are using timers for reliability, and receiver is
>>>>>>>>>> always free to
>>>>>>>>>> discard any unacked data.
>>>>>>>>> Virtio-net knows nothing above L2, so they are totally
>>>>>>>>> transparent to device
>>>>>>>>> itself. I still don't get why not using virtio-net instead.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Thanks
>>>>>>>> Is your question why is virtio-vsock used instead of TCP on top of IP
>>>>>>>> on top of virtio-net?
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> No, my question is why not do vsock through virtio-net.
>>>>>>>
>>>>>>> Thanks
>>>>>>>
>>>>>>
>>>>>> Just to clarify, it's not about vosck over ethernet, and it's not about
>>>>>> inventing new features or APIs. It's probably something like:
>>>>>>
>>>>>> - Let virtio-net driver probe vsock device and do vosck specific things if
>>>>>> needed to share as much codes.
>>>>>>
>>>>>> - A new kind of sockfd (which is vsock based) for vhost-net for it to do
>>>>>> vsock specific things (hopefully it can be transparent).
>>>>>>
>>>>>> The change should be totally transparent to userspace applications.
>>>>>>
>>>>>> Thanks
>>>>>
>>>>> Which code is duplicated between virtio vsock and virtio net right now?
>>>>>
>>>>
>>>> Hi Michael,
>>>>
>>>> AFAIK, there is almost no duplicate code between virtio vsock and virtio net now.
>>>>
>>>> But, if virtio vsock wants to support mergeable rx buffer and multiqueue feature,
>>>> it has some duplicate codes from virtio net. Based on it, we both think vsock
>>>> may use virtio net as a transport channel, in this way, vsock can use some of
>>>> virtio net great features.
>>>>
>>>> Thanks,
>>>> Yiwen.
>>>
>>> What I would do is just copy some code and show a performance
>>> benefit. If that works out it will be clearer which code
>>> should be shared.
>>>
>>
>> Hi Michael,
>>
>> I have already sent a series of patches (VSOCK: support mergeable rx buffer in vhost-vsock)
>> a month ago, and the performance as follows:
>>
>> I write a tool to test the vhost-vsock performance, mainly send big
>> packet(64K) included guest->Host and Host->Guest. The result as
>> follows:
>>
>> Before performance:
>> Single socket Multiple sockets(Max Bandwidth)
>> Guest->Host ~400MB/s ~480MB/s
>> Host->Guest ~1450MB/s ~1600MB/s
>>
>> After performance:
>> Single socket Multiple sockets(Max Bandwidth)
>> Guest->Host ~1700MB/s ~2900MB/s
>> Host->Guest ~1700MB/s ~2900MB/s
>>
>> >From the test results, the performance is improved obviously, and guest
>> memory will not be wasted.
>
> Oh I didn't see that one. Pls CC me in the future.
>
> Looking at it I agree zero page allocation looks like an issue
> but besides that, I think we can merge something similar
> and look at refactoring and future extensions later.
>
> However, any interface change (e.g. a new feature) must be CC'd to one of
> virtio lists (subscriber-only).
>
>
Okay, previously I send Virtio-vsock patch only CC stefan and mailing lists
based on MAINTAINERS, because it only be related to Virtio-vsock.
Then, first I send v2 patch based on Jason's suggestions, and then let's
see how to combine with virtio-vsock and virtio-net. What do you think?
Thanks,
Yiwen.
>
>> In addition, multiqueue feature I have not implemented it yet.
>>
>> Thanks,
>> Yiwen.
>>
>
>
>
>
> .
>
_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization
next prev parent reply other threads:[~2018-12-04 6:01 UTC|newest]
Thread overview: 52+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-11-15 3:56 [RFC] Discuss about an new idea "Vsock over Virtio-net" jiangyiwen
2018-11-15 3:56 ` jiangyiwen
2018-11-15 4:19 ` Jason Wang
2018-11-15 6:46 ` jiangyiwen
2018-11-15 6:46 ` jiangyiwen
2018-11-15 6:49 ` jiangyiwen
2018-11-15 6:49 ` jiangyiwen
2018-11-15 8:19 ` Jason Wang
2018-11-15 9:02 ` jiangyiwen
2018-11-15 9:02 ` jiangyiwen
2018-11-15 9:21 ` Jason Wang
2018-11-16 2:32 ` jiangyiwen
2018-11-16 2:32 ` jiangyiwen
2018-11-16 6:35 ` Jason Wang
2018-11-16 6:35 ` Jason Wang
2018-11-15 9:21 ` Jason Wang
2018-11-15 4:19 ` Jason Wang
2018-11-15 7:04 ` Michael S. Tsirkin
2018-11-15 7:04 ` Michael S. Tsirkin
2018-11-15 7:38 ` jiangyiwen
2018-11-15 8:10 ` Michael S. Tsirkin
2018-11-15 8:27 ` Jason Wang
2018-11-15 8:27 ` Jason Wang
2018-11-15 8:38 ` jiangyiwen
2018-11-15 8:24 ` Jason Wang
2018-11-29 14:00 ` Michael S. Tsirkin
2018-11-30 12:45 ` Jason Wang
2018-11-30 12:52 ` Michael S. Tsirkin
2018-11-30 12:52 ` Michael S. Tsirkin
2018-11-30 12:55 ` Jason Wang
2018-11-30 12:55 ` Jason Wang
2018-11-30 13:10 ` Jason Wang
2018-11-30 13:40 ` Michael S. Tsirkin
2018-12-03 3:10 ` jiangyiwen
2018-12-04 1:31 ` Michael S. Tsirkin
2018-12-04 1:31 ` Michael S. Tsirkin
2018-12-04 2:21 ` jiangyiwen
2018-12-04 2:21 ` jiangyiwen
2018-12-04 4:08 ` Michael S. Tsirkin
2018-12-04 4:08 ` Michael S. Tsirkin
2018-12-04 6:01 ` jiangyiwen [this message]
2018-12-03 3:10 ` jiangyiwen
2018-11-30 13:40 ` Michael S. Tsirkin
2018-11-30 13:10 ` Jason Wang
2018-11-30 13:34 ` Michael S. Tsirkin
2018-11-30 13:34 ` Michael S. Tsirkin
2018-11-30 12:45 ` Jason Wang
2018-11-29 14:00 ` Michael S. Tsirkin
2018-11-15 9:36 ` Yan Vugenfirer
2018-11-15 9:36 ` Yan Vugenfirer
2018-11-16 2:37 ` jiangyiwen
2018-11-16 2:37 ` jiangyiwen
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=5C06184E.2010207@huawei.com \
--to=jiangyiwen@huawei.com \
--cc=kvm@vger.kernel.org \
--cc=mst@redhat.com \
--cc=netdev@vger.kernel.org \
--cc=stefanha@redhat.com \
--cc=virtualization@lists.linux-foundation.org \
/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.