Number: 1517

Date: 27-Jun-84 13':47':48

Submitter: Sannella.PA


Subject: Allow packet lookahead in DEI, Unix Leaf servers

Assigned To: 

Attn: Lisp, vanMelle

Status: Open


Problem Type: Performance

Impact: Serious

Difficulty: Hard

Frequency: Everytime

Priority: Unlikely

System: Communications

Subsystem: VAX Server

Machine: 1132


Lisp Version: 

Source Files: 

Microcode Version: 

Memory Size: 

File Server: 

Server Software Version: 


Description: '
Date': 27 Jun 84 10':39 PDT'
Subject': [Eric Schoen <Schoen@SUMEX-AIM.ARPA>': Interlisp-D Filing]'
To': LispSupport'
cc': Sheil'
Please add ARs under Communication/VAX Server, priority Unlikely, Impact': Serious, Difficulty': Hard, Attn': Lisp, Subject': "Add packet buffering to DEI, Unix Leaf servers"'
     ----- Begin Forwarded Messages -----'
Redistributed': Xerox1100UsersGroup↑.PA'
Received': from SUMEX-AIM.ARPA by Xerox.ARPA ; 11 JUN 84 22':20':59 PDT'
Date': Mon, 11 Jun 84 22':14':03 PDT'
From': Eric Schoen <Schoen@SUMEX-AIM.ARPA>'
Subject': Interlisp-D Filing'
To': 1100users@SUMEX-AIM.ARPA'
I haven''t encountered a good system for handling multiple versions of source'
files in any language.  However, rather than light a flame on that topic, I''d'
like to address the issue of file server performance.'
Early versions of Interlisp-D (Allegro through Chorus [Feb, 1983]) used an implementation of the Leaf protocol which used an outstanding request window of exactly 1 packet; that is, no lookahead was performed on the connection, reducing a competant virtual circuit protocol to an expensive request-response model.  I developed the Tenex/Tops-20 server under these Lisp versions.'
Later versions of Interlisp support multiple-packet lookahead for situations in which the system detects sequential reading or writing (e.g. making or loading files).  The Tops-20 server hasn''t been updated to support multiple packet lookahead, however (well, the code''s in there, but not too well debugged under certain circumstances).  The result is dead time between  a response and the next request.'
We recently implemented a brand-new Leaf server, written in Bliss to run under our own Pup environment on VAX/VMS.  The server supports up to 5 packet lookahead (Lisp uses only 1 packet, though).  Thus, there''s no deadtime between response and next request; the next request has already been made, and the response is (hopefully) already back at the D-machine.  I''ve measured 200KB throughput between a timeshared VAX-11/780 and our Dorado (loading .DCOM files), with a Dolphin-based 3-10 MB Interlisp gateway in the path.  On the other hand, the Tops-20 Leaf server, on a 2020 running on the same 3 MB net as the Dorado, with no users, can only push about 30 KB to the Dorado.'
So the point of all this is that Leaf server efficiency is paramount to good file I/O in Interlisp.  I haven''t seen the latest Unix Leaf server, but the version we had at SDR did no lookahead.  We had patched that version to run under our VMS environment for a time, and saw roughly the same performance as the 2020.  Note that in a (multiple) gateway environment, packet lookahead can do quite a bit to mask gateway delays (so long as your networks are reasonably reliable).'
     ----- End Forwarded Messages -----'


Test Case: 

Edit-By: vanMelle

Edit-Date: 14-Aug-84 12':14':48