linux-api.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Stephen Hemminger <shemminger-ZtmgI6mnKB3QT0dZR+AlfA@public.gmane.org>
To: "Fred ." <eldmannen-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: /net
Date: Wed, 12 Nov 2008 18:24:24 -0800	[thread overview]
Message-ID: <20081112182424.77bf6c54@extreme> (raw)
In-Reply-To: <f188924b0811121725o2e99574as3362c9a7b9348b08-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>

On Thu, 13 Nov 2008 02:25:33 +0100
"Fred ." <eldmannen-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:

> Plan 9 has a /net directory.
> 
> 
> /net is the API for all TCP/IP, and it can be used even with scripts
> or shell tools, writing data to control files to write and read
> connections. Relevant sub-directories like /net/tcp and /net/udp are
> used to interface to prospective protocols. You can implement a NAT by
> mounting a /net from a perimeter machine with a public IP, while
> connecting to it from an internal network of private IP addresses,
> using the Plan 9 protocol 9P in the internal network. Or you can
> implement a VPN by mounting a /net directory from a remote gateway,
> using secured 9P over the public Internet.
> 
> Here would be an example of using union (a stack) directories in /net:
> just like inheritance in OOP, you can take one (possibly remote)
> /special directory and bind another local special directory on top of
> that, adding some new control files and hiding others. The union
> directory now is like a child object instance of the original parent.
> The functionality of the original can be partially modified. Consider
> the /net file system. If you modify or hide its /net/udp sub-directory
> you may control or extend the UDP interface with local filter
> processes, still leaving the original /net/tcp running intact, perhaps
> in a remote machine. Note that name space is per process: if you give
> an untrusted application a limited, modified /net union directory, you
> restrict its access to the net.
> 
> All this makes it easy to combine "objects" or file systems written in
> different languages on different systems, while using standard naming,
> access control and security of the file system, largely transparently
> to the programmer.
> 
> 
> I saw that Linux implemented many things from Plan 9 such as /proc,
> union mounts, etc. Will Linux also implement /net ?

Sure patches accepted for review anytime :-)
--
To unsubscribe from this list: send the line "unsubscribe linux-api" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  parent reply	other threads:[~2008-11-13  2:24 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-11-13  1:25 /net Fred .
     [not found] ` <f188924b0811121725o2e99574as3362c9a7b9348b08-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-11-13  2:24   ` Stephen Hemminger [this message]
2008-11-14 17:47   ` /net Paweł Sikora

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=20081112182424.77bf6c54@extreme \
    --to=shemminger-ztmgi6mnkb3qt0dzr+alfa@public.gmane.org \
    --cc=eldmannen-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.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).