linux-cifs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Stephen Hemminger <stephen@networkplumber.org>
To: Alexander Aring <aahringo@redhat.com>
Cc: "Stefan Metzmacher" <metze@samba.org>,
	"Steve French" <smfrench@gmail.com>,
	"Aurélien Aptel" <aaptel@suse.com>,
	"Network Development" <netdev@vger.kernel.org>,
	linux-nfs <linux-nfs@vger.kernel.org>,
	CIFS <linux-cifs@vger.kernel.org>,
	"Leif Sahlberg" <lsahlber@redhat.com>,
	"Steven Whitehouse" <swhiteho@redhat.com>
Subject: Re: quic in-kernel implementation?
Date: Tue, 8 Jun 2021 15:33:49 -0700	[thread overview]
Message-ID: <20210608153349.0f02ba71@hermes.local> (raw)
In-Reply-To: <CAK-6q+g3_9g++wQGbhzBhk2cp=0fb3aVL9GoAoYNPq6M4QnCdQ@mail.gmail.com>

On Tue, 8 Jun 2021 17:03:16 -0400
Alexander Aring <aahringo@redhat.com> wrote:

> Hi,
> 
> On Tue, Jun 8, 2021 at 3:36 AM Stefan Metzmacher <metze@samba.org> wrote:
> ...
> >  
> > > 2) then switch focus to porting a smaller C userspace implementation of
> > > QUIC to Linux (probably not msquic since it is larger and doesn't
> > > follow kernel style)
> > > to kernel in fs/cifs  (since currently SMB3.1.1 is the only protocol
> > > that uses QUIC,
> > > and the Windows server target is quite stable and can be used to test against)> 3) use the userspace upcall example from step 1 for
> > > comparison/testing/debugging etc.
> > > since we know the userspace version is stable  
> >
> > With having the fuse-like socket before it should be trivial to switch
> > between the implementations.  
> 
> So a good starting point would be to have such a "fuse-like socket"
> component? What about having a simple example for that at first
> without having quic involved. The kernel calls some POSIX-like socket
> interface which triggers a communication to a user space application.
> This user space application will then map everything to a user space
> generated socket. This would be a map from socket struct
> "proto/proto_ops" to user space and vice versa. The kernel application
> probably can use the kernel_FOO() (e.g. kernel_recvmsg()) socket api
> directly then. Exactly like "fuse" as you mentioned just for sockets.
> 
> I think two veth interfaces can help to test something like that,
> either with a "fuse-like socket" on the other end or an user space
> application. Just doing a ping-pong example.
> 
> Afterwards we can look at how to replace the user generated socket
> application with any $LIBQUIC e.g. msquic implementation as second
> step.
> 
> - Alex
> 

Socket state management is complex and timers etc in userspace are hard.

  reply	other threads:[~2021-06-08 22:34 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-07 15:25 quic in-kernel implementation? Alexander Ahring Oder Aring
2021-06-07 16:45 ` Aurélien Aptel
2021-06-08  3:04   ` Steve French
2021-06-08  7:36     ` Stefan Metzmacher
2021-06-08 21:03       ` Alexander Aring
2021-06-08 22:33         ` Stephen Hemminger [this message]
2021-06-09 16:48           ` Jakub Kicinski
2021-06-09 18:44             ` Alexander Aring
2021-06-13 12:17             ` David Laight
2021-06-13 18:08               ` Alexander Aring
2021-06-08 21:26       ` Chuck Lever III
2021-06-07 17:29 ` Chuck Lever III
2021-06-08 20:51 ` Vadim Fedorenko
2021-06-08 21:06   ` Alexander Aring
2021-06-09  0:27     ` Vadim Fedorenko
2021-09-05 14:09       ` Eric Curtin
2021-09-05 23:38         ` Steve French

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=20210608153349.0f02ba71@hermes.local \
    --to=stephen@networkplumber.org \
    --cc=aahringo@redhat.com \
    --cc=aaptel@suse.com \
    --cc=linux-cifs@vger.kernel.org \
    --cc=linux-nfs@vger.kernel.org \
    --cc=lsahlber@redhat.com \
    --cc=metze@samba.org \
    --cc=netdev@vger.kernel.org \
    --cc=smfrench@gmail.com \
    --cc=swhiteho@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).