Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

using Vax as fileserver for Xerox Lisp machine

2 views
Skip to first unread message

David Morton

unread,
Nov 14, 1985, 3:22:07 PM11/14/85
to
Summary:
Expires:
References: <watvlsi.2785>
Sender:
Reply-To: da...@ecrcvax.UUCP (David Morton)
Followup-To:
Distribution: net
Organization: European Computer-Industry Research Centre, Munchen, W. Germany
Keywords:

In article <watvlsi.2785> version B 2.10.1 6/24/83 (MC840302); site ecrcvax.UUCP version B 2.10.2 9/18/84; site watvlsi.UUCP ecrcvax!unido!mcvax!seismo!gatech!akgua!whuxlm!whuxl!houxm!mhuxt!mhuxr!ulysses!burl!clyde!watmath!watnot!watvlsi!ecpearson ecpe...@watvlsi.UUCP (Eric Pearson) writes:
>We have an eithernet connecting up a set of Vaxen running
>4.3. We would like to connect our Xerox 1108 Lisp machine to
>this network, so we can use the Vaxen as print & file
>servers.
>
>The problem: the Lisp machine talks PUP and the Vax/Unix
>have only the lowest level of PUP support.
>
>We need to find the software (which I know exists) which
>will reside on the vaxen in the background and act as a
>File Transfer Program (FTP).
>

We are also very interested in this software.

Also,
can somebody please give us all a concise description of how
the 1108's (with or without the fileserver) can be effectively
used in a VAX/uVAX II environment. I know that 4.3 will have
XNS support, but nobody has given any details on the net, as
far as I know. The second question is what is PUP (a file
transfer prog. ?) and how comfortable is it to interact between
both systems. I did approach some Xerox people at the Systems
fair here two weeks ago but they didn't seem to know anything
about PUP. In fact they also didn't know that 1185/86 systems
had been announced in L.A. in Aug. which I found really
strange. I believe there are lots of people who would be
interested in answers to these questions but nobody knows where
to turn. We will be buying two 1108's with a FS in the near
future and we would like to integrate them into our 4.x scene
and make it comfortable for our users. If anyone can take the
time to reply we'd be really grateful. Many thanks for your
help in advance.
--

Dave Morton
Tel. + (49) 89 - 92699 - 139

CSNET: dave%ecrcva...@germany.csnet
UUCP: seismo!mcvax!unido!ecrcvax!dave

Steve D. Miller

unread,
Nov 16, 1985, 11:10:16 PM11/16/85
to

Important definitions you will need to know to understand the rest
of this article: (if you know Xerox networking at all, skip this...)

IDP -- Internet Datagram Protocol, the Xerox protocol that
most closely corresponds to Arpa IP and the bottom-level
protocol for XNS, Xerox's most recent networking implementation.
SPP -- Sequenced Packet Protocol, the XNS equivalent to Arpa
TCP and the "level 2" protocol for XNS. This is what I
believe the current servers et al are working under, though
Pup is still supported.
PUP -- Packet Universal Protocol, Xerox's "old" networking
protocol; still used rather heavily by Interlisp.
Courier -- Xerox's remote procedure call facility, and the thing
the programmer sees when writing (or using) Xerox services.
Services -- the set of distributed facilities (name service, aka
Clearinghouse; Authentication; Filing; Printing; etc.) available
from Xerox for use with their workstations. Like I said, this
is, as far as I know, the new Xerox networking standard, with
PUP moving slowly into the background. The Services stuff
(version 8.0, at this point, though they may have Services 9
by now inside Xerox) still supports PUP connections.

There have been a lot of questions recently about integrating the
XNS world (Xerox) with the Unix world. I know almost nothing about PUP,
but I've done a good bit of fooling around with XNS (both our local
implementation for 4.2 and the one Keith Sklower's been working on
at Berkeley) under Unix and on the Xeroxes, so maybe I can shed some
light on things. If I make a mistake, please feel free to scream
and holler...

OK. You've probably seen Barry Shein's article on Unix PUP support
for file service and the like already; that's something that I didn't
know about, but definitely worth looking at. We have Xerox's support
package for Interpress conversion (I think it's called the Interpress
Toolkit), and it's really pretty good; I would bet that the other
Xerox software would be similarly solid.

Anyway, the support for Xerox networking in the 4.3 kernel consists of an
IDP/SPP implementation that has some hooks in it for Packet Exchange
(basically, a getsockopt that lets you get some unique numbers from the
kernel to use in the "unique id" field of an outgoing PEX packet; you have
to write the PEX stuff on top of the IDP packet, then tack on your own data.
I've done some PEX stuff -- a little program that looks for clearinghouses
on the local net -- and it's sort of a pain but definitely doable).
Evidently, the PUP stuff is disappearing from 4.3 and from Xerox; there is
a limit of 256ish machines on the same network, and since Xerox has more
than that internally, they've got to do *something*...so there's not
much incentive to keep it around.

On top of the kernel stuff lives some "user-contributed" software,
consisting of J.Q. Johnson/Cornell's Courier compiler. It's a wee bit hard
to use, but it's actually easier to write Courier stuff (once you get the
basics down) with it than it is to do so in Mesa under XDE, and he's
implemented a print spooler for Services 8.0 printers, a ftp program
(xnsftp) that will talk from a Vax to a Services file server (though the Vax
has to start the connection; it can't play file server yet), a GAP service
implementation so you can log in to your Xeroxes from vaxes and vice versa
(and, at least with the Intermezzo release, there is a "NSChat" that can be
coerced into talking to a vax without too much work), and some generally
nifty stuff. There's also Keith Sklower's "nsip" kernel hacks that let you
hook local NS networks together to form a virtual NS internetwork (with Bill
Nesheim's router and the nsip stuff conspiring to send the NS packets across
the Arpanet inside of IP packets). Basically, the tools exist to do pretty
much whatever you want (in terms of going from a 4.3 machine to your
Xeroxes), though it may take a bit of sweat to get it all running, and
you'll have to write some of your own stuff.

The situation from the Xerox end is a bit more bleak. The Xerox services
people are pretty resistant to the idea of giving Mesa services source out,
so it's hard to implement servers (though certainly not impossible, except
for maybe Authentication; unfortunately, that's pretty important...). Some
of the NS Filing protocol stuff doesn't map well to a Unix filesystem;
Filing could be faked, but it'd take mucho work -- the Xerox Filing protocol
(and the filesystem it describes) is very flexible and very complex. The
PUP situation is (rather obviously) more bleak, but (at least with their
business software and their development environment) Xerox is moving toward
getting rid of PUP, and it probably won't be long now. As was also
mentioned, Intermezzo supports TCP/IP (so you could probably write stuff
there that would let you talk to the Unix FTP), and I would think that if
Intermezzo supports TCP/IP now, XDE/Star/whatever would probably do so in
the not too distant future.

To summarize, the situation isn't hopeless (by a long shot); after all,
I'm typing this rambling mess from my VaxChat window on my XDE Dandelion,
and I go from vaxes to servers probably a few times a day. If you're
expecting to be able to do all the nice Xerox stuff from day one, you're
probably going to be disappointed. Still, the only really necessary thing
is the ability to log in to your 4.3 machine from your XDE/Interlisp
machine; from there, you can fire up the Unix Courier tools and do quite a
bit, and if you can xnsftp it from or to a file server, you can go from
there to your workstation. If you're getting a PUP machine and expecting to
do great things with it and your 4.3 machine, you probably have some
thinking to do. Interlisp is a *very* nice environment, and compiled
Interlisp is a whole blazing lot faster than normal lisp on vaxen, and it's
really mostly capable of getting the job done with XNS-based networks and
machines...but I think it's still a wee bit transitional. If I was doing
lisp, I'd say, "hang the vax, I want a Dandelion," regardless of whether I
could log into a unix machine with it (I suggest that someone from Xerox
clarify the situation here; I'm not an Interlisp hacker -- merely an admirer
-- and I'm getting my information secondhand from an Interlisp hacker here).
In case you haven't noticed, I think the Xerox stuff is very good, and just
keeps getting better and better (if they'd just be a bit more open with some
of their deep dark secrets, I think they'd blow the market open), and
Courier is a neat, flexible standard that's probably not a bad place to
start even if you are writing a distributed system that'll never run
anyplace but on a Unix machine. I hope that what I've said will help to
dispel some of the fog, and if I can answer any more questions, please feel
free to drop me a line and I'll see what I can do.

-Steve
--
Spoken: Steve Miller ARPA: st...@mimsy.umd.edu Phone: +1-301-454-4251
CSNet: steve@umcp-cs UUCP: {seismo,allegra}!umcp-cs!steve
USPS: Computer Science Dept., University of Maryland, College Park, MD 20742

Dana S. Nau

unread,
Nov 17, 1985, 10:16:02 PM11/17/85
to
In article <3...@tove.UUCP> st...@tove.UUCP (Steve D. Miller) writes:
>... If I was doing

>lisp, I'd say, "hang the vax, I want a Dandelion," regardless of whether I
>could log into a unix machine with it (I suggest that someone from Xerox
>clarify the situation here; I'm not an Interlisp hacker -- merely an admirer
>-- and I'm getting my information secondhand from an Interlisp hacker here).

I'm not so enthusiastic. I have a Dandelion at U. of Maryland, but I've
pretty much given up on it. Here's why:

(1) I'm used to digging in and learning things on my own, but I found it
pretty difficult to learn Interlisp from the Interlisp manual--especially
without the availability of source code.

(2) On my machine, Interlisp crashed quite often--and every time it crashed,
Interlisp had to be re-installed by booting XDE and using an XDE tool
to read Lisp from the file server.

(3) Every time we reinstalled and rebooted Interlisp, we found that it had
lost the files on the local disk. This isn't supposed to happen--and
doesn't happen on the other Maryland machines that run Interlisp. Nobody in
my department could figure out what was wrong, and about the only support
that Xerox gave us was to say "wait and see if things get any better when
you install the next release."

At this point I gave up. I'd be willing to reconsider if some of these
problems were solved--but so far, it doesn't look like that's going to
happen.
--
Dana S. Nau (dsn@rochester)
from U. of Maryland, on sabbatical at U. of Rochester

Charles Root

unread,
Nov 19, 1985, 5:34:39 AM11/19/85
to
We think Xerox is still not very close to being able to remove PUP
support. From the user's point of view, PUP is much more useful than
you suggest. First, I don't know what you mean when you say it is
vanishing from 4.3. It wasn't in 4.2 to begin with. PUP is
distributed separately from 4.2, as a set of modifications that have
to be added. It consists of a set of user-level code, a device
driver, and a couple of very small hooks in the Ethernet device
driver. It was carefully designed to be as separate as possible from
the rest of the kernel. I find it hard to believe that 4.3 is doing
anything that would make it impossible to install the modifications.
I realize that 4.2 has some modules that seems to be related to PUP.
These modules are not used by the actual PUP implementation, so their
removal would not cause any problem. The PUP implementation uses
/dev/enet, which is a general-purpose Ethernet packet filter. It
allows the user to specify tests that define what packets he is
interested in seeing. Thus it can be used to implement any protocol.
In fact, we use it here to implement PUP, PUP Arp, Internet Reverse
ARP, and a small subset of XNS (nothing exciting, just time of day and
telling Interlisp workstations what their PUP host number is). The
hook into the kernel effectively reorganizes the switch statement in
the packet-input routine so that any packet not otherwise recognized
is sent to the /dev/enet driver for processing.

Second, as far as I know, PUP is the only protocol currently used by
Interlisp that supports random access. This means that TCP/IP is not
a replacement for it. Unless something has changed recently, XNS
isn't either.

Third, even if XNS were a replacement, sites such as ours would need a
portable implementation of an XNS file server on Unix. I note that
this is still absent from the list of XNS support you gave. In order
for us to use it, we would have to be able to port it to the Pyramid
90x. The XNS situation is certainly getting better as time goes on,
but at the moment Xerox has not done what is necessary to replace PUP
with XNS. We know that this is a goal, but we trust that they will
not be sufficiently suicidal to remove PUP from Interlisp before all
of their customers are able to replace its functionality with
something else. What I am hoping for is a file server protocol that
supports random access and runs on top of TCP/IP. The PUP file server
protocol (LEAF) runs on top of PUP's equivalent of UDP. It could
probably be moved to work on top of UDP without too much trouble.

Darrel VanBuer

unread,
Nov 19, 1985, 10:45:38 AM11/19/85
to
PUP stands for PARC Universal Packet. Conceptually, its very similar to IP
in TCP/IP and the IDP in XNS, i.e. it's an unreliable datagram delivered
through an Internet of some kind. Like IP and XNS, there is a complete
suite of services layered on top of PUP. These include PUPFTP, PUPTelnet,
PUPMisc (a random collection of little services like time, name and address
translation) and Leaf (a protocol for random access to files, currently the
ONLY Interlisp-D network protocol for random access). PUP grew up with the
Alto and the experimental (3Mbit/sec) Ethernet. PUP would be obsolete but
for one thing--it works very well and provides a very rich set of services.
Its biggest weakness is its addresses, only 8 bits each for network and
host. There are implementations for Tenex/TOPS-20, VMS and VAX Unix
4.1/4.2. Xerox AISBU sells the VMS package (or did) and can make the Unix
implementation available (most of the work was done at universities and
research institutes in the old Alto days). The one misfeature of the 4.2
implementation is that it is not integrated with the socket abstraction
because of the way it was carried over from earlier systems.

XNS -- The 4.3 rumors I've heard say 4.3bsd will have XNS including sending
files to a Xerox print server, and sending and retrieving files from a Xerox
file server (but not emulation of an XNS file server, so getting a file from
VAX to workstation would have to go via a Xerox server). The biggest
weakness of the Xerox file server has been lack of protocols for random
access to files, but Xerox is now testing some internally, so in a few
releases...

--
Darrel J. Van Buer, PhD
System Development Corp.
2525 Colorado Ave
Santa Monica, CA 90406
(213)820-4111 x5449
...{allegra,burdvax,cbosgd,hplabs,ihnp4,orstcs,sdcsvax,ucla-cs,akgua}
!sdcrdcf!darrelj
VAN...@USC-ECL.ARPA

Chris Torek

unread,
Nov 20, 1985, 3:49:41 AM11/20/85
to
If `/dev/enet' is implemented as hooks in the device drivers, it
should continue to work in 4.3. However, the 4.2 `netpup' code
(which did not really work) moved to the `deprecated/netpup'
directory.

The structure of network addresses (mainly `struct ifnet') is
radically different in 4.3; this is necessary for real kernel
support of other protocols besides TCP/IP. Consider, e.g.,
the `net' and `host' fields in the 4.2 net/if.h.

I know practically nothing about what PUP support is required
for Interlisp; but we have no PUP support here, yet still use
Dandelions and Dandytigers running Interlisp.
--
In-Real-Life: Chris Torek, Univ of MD Comp Sci Dept (+1 301 454 4251)
UUCP: seismo!umcp-cs!chris
CSNet: chris@umcp-cs ARPA: ch...@mimsy.umd.edu

Chris Torek

unread,
Dec 8, 1985, 2:23:48 AM12/8/85
to
In article <24...@sdcrdcf.UUCP> dar...@sdcrdcf.UUCP (Darrel VanBuer) writes:

>PUP stands for PARC Universal Packet.

I always thought it was Packet Universal Protocol; but who cares anyway?

>The 4.3 rumors I've heard say 4.3bsd will have XNS including sending
>files to a Xerox print server, and sending and retrieving files from
>a Xerox file server (but not emulation of an XNS file server, so
>getting a file from VAX to workstation would have to go via a Xerox
>server).

Let me solidify these rumors. Cornell does indeed have applications
that can:

print Interpress masters on Xerox XNSish printers;

`gaptelnet' to a Xerox server or another 4.3 machine running
Courier services;

run a TTY communications server that (using a kludge on
the Xerox side) Stars can use as virtual VT100s; and

`xnsftp' files to and from a Xerox server.

These are to be distributed with 4.3BSD as part of the `user
contributed software' (i.e., the stuff in /usr/new).

The reason a Vax cannot yet act as a file server (or run Clearinghouse
service, or Mail service, etc.) is that these protocols are (1)
complicated and (2) hard to get out of Xerox---it is, to use that
old cliche, like pulling teeth. `Authentication service? Sure,
here is how to use it. What, you want to *write* it? Let me go
see if we are allowed to divulge that information...' :-)

0 new messages