named pipe across NFS

Jonathan I. Kamens jik at athena.mit.edu
Mon Apr 22 16:45:23 AEST 1991


  You can't do what you're trying to do.

  NFS (well, at least, a good implementation of NFS :-) is smart
enough to let you create a named pipe and access it as a named pipe
for both read and write on the same machine.  However, it does not
allow you to write to the pipe on one machine and read from it on
another, or vice versa.

  In order to understand why this is so, you have to think about named
pipes as places where processes can "meet" to talk to each other.
Once two processes connect to each other on a named pipe, the
communication is handled in the kernel just the same as communication
would be handled on a pipe created with pipe(), with local buffers in
the kernel storing the data that is sent over the pipe.

  Why things were done this way touches upon the recent argument about
whether or not NFS should support transparent access to remote
devices.  I would argue that it should not, and that the behavior you
are observing is correct for what NFS was designed to do and what it
was not.

Jonathan Kamens			              USnail:
MIT Project Athena				11 Ashford Terrace
jik at Athena.MIT.EDU				Allston, MA  02134
Office: 617-253-8085			      Home: 617-782-0710



More information about the Comp.unix.questions mailing list