netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "John W. Linville" <linville@tuxdriver.com>
To: Matti Aarnio <matti.aarnio@zmailer.org>
Cc: netdev@vger.kernel.org
Subject: Re: We have FUSE, could we have NUSE ?
Date: Thu, 8 Mar 2007 08:57:54 -0500	[thread overview]
Message-ID: <20070308135754.GA5323@tuxdriver.com> (raw)
In-Reply-To: <20070308105320.GB3883@mea-ext.zmailer.org>

On Thu, Mar 08, 2007 at 12:53:20PM +0200, Matti Aarnio wrote:

> The aim of "NUSE" from applications point of view would be to be
> indistinguishable from kernel implemented services.
> 
> What would this require from the service hook side ?
>   - Socket read and write can be trivialishly done
>     like a pipe in between processes
>   - Somehow pass ancilliary data for:
>      - socket, socketpair
>      - connect, bind
>      - accept
>      - listen
>      - getpeername, getsockname
>      - sendto, send
>      - recvfrom, revc
>      - setsockopt, getsockopt
>   - poll / epoll ?

It is certainly possible to do this by implementing your own socket
family.  I did such a thing as infrastructure for talking to network
processors in a former life.  In that case the socket code was talking
to other kernel code, but getting it to coordinate w/ userland is
largely a SMOP.  You might consider using (generic?) netlink for
your backend communications to the userland daemon.  In addition,
there might be other kernel extensions required (e.g. dynamic socket
family allocation?).

> Death of the protocol engine process must also destroy all existing
> sockets of the served protocol type, and refuse to generate any new
> sockets of the type.

That's up to you (or whomever implements the kernel code).

> The first protocol that I have in mind to implement on top of this service
> does not need very much of local sockets.
> (It is called "STANAG-5066" - radio data communication on HF frequencies.
> Specification is written by NATO, thus "STANAG", but my use plans for it
> are more along the AX.25 ham-radio things.)

Nifty. :-)

John
-- 
John W. Linville
linville@tuxdriver.com

  reply	other threads:[~2007-03-08 14:32 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-03-08 10:53 We have FUSE, could we have NUSE ? Matti Aarnio
2007-03-08 13:57 ` John W. Linville [this message]
2007-03-08 21:52 ` David Miller

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=20070308135754.GA5323@tuxdriver.com \
    --to=linville@tuxdriver.com \
    --cc=matti.aarnio@zmailer.org \
    --cc=netdev@vger.kernel.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 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).