ecpearson@watvlsi.UUCP (Eric Pearson) (11/08/85)
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). Can anyone give me a pointer to the source of this software ? ecpearson@watvlsi (Eric Pearson @ University of Waterloo)
dave@ecrcvax.UUCP (David Morton) (11/14/85)
Summary: Expires: References: <watvlsi.2785> Sender: Reply-To: dave@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 ecpearson@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%ecrcvax.uucp@germany.csnet UUCP: seismo!mcvax!unido!ecrcvax!dave
steve@tove.UUCP (Steve D. Miller) (11/17/85)
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: steve@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
dsn@rochester.UUCP (Dana S. Nau) (11/18/85)
In article <354@tove.UUCP> steve@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
root@topaz.RUTGERS.EDU (Charles Root) (11/19/85)
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.
darrelj@sdcrdcf.UUCP (Darrel VanBuer) (11/19/85)
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 VANBUER@USC-ECL.ARPA
chris@umcp-cs.UUCP (Chris Torek) (11/20/85)
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: chris@mimsy.umd.edu