Illinois' reply to Maxwell's request for graphics information (NIC 14925)
Illinois' response on early graphics capabilities at the university.
Bunch, S., "Illinois' reply to Maxwell's request for graphics information (NIC 14925)", RFC 472, DOI 10.17487/RFC0472, March 1973, <https://www.rfc-editor.org/info/rfc472>.
@misc{rfc472,
series = {Request for Comments},
number = 472,
howpublished = {RFC 472},
publisher = {RFC Editor},
doi = {10.17487/RFC0472},
url = {https://www.rfc-editor.org/info/rfc472},
author = {S. Bunch},
title = {{Illinois' reply to Maxwell's request for graphics information (NIC 14925)}},
pagetotal = 2,
year = 1973,
month = mar,
} RFC text
Network Working Group Steve Bunch
RFC # 472 ILL-ANTS
NIC # 14801 March, 1973
Illinois' reply to Maxwell's Request for Graphics Information,
NIC Document 14925.
This is a reply to Craig Maxwell's (UCLA-NMC) "Request for graphics
information" of 3/7/73. Further details can be obtained by contacting
me directly.
To date, our work in graphics has been primarily centered about support
for several applications groups. To make the generation of beam-
oriented graphics as painless as possible for these groups, our policy
for supporting this type of graphics has been to emulate as closely as
possible the CALCOMP plotter support package on the host machine, but
with NGP0 output. (Presently, before the resulting NGP can be sent to
some of our peripherals, e.g., Gould 4800, it must be converted to
device specifics. With the advent of ANTS MARK II and a PDP-11/45, all
conversions will be handled locally, so all graphics flowing into our
system will be NGP). We find this approach very labor-saving, even at
the present slightly kludgey level.
We also have some grey-scale work taking place on our GOULD and IMLAC.
One group is processing satellite pictures on Illiac and will soon need
grey-scale output, another is producing natural-resource maps, and a
third is generating holograms. No standardization plans have been made
for grey scale work, but if an acceptable standard is established, we
will most likely use it.
A small group, including myself, is currently planning an interactive
graphics system. The system will use multiple hosts, possibly using a
remote E&S machine for rotation, scaling, etc. We have a number of
large hurdles that have to be jumped before we can do anything, though.
Several of these are not graphics-specific, such as process-controlled
FTP, inter-process coordination among hosts, and others. We had
intended to let efficiency dictate the format of intermediate results
shipped via the Net, with standardization being applied where it is
helpful for minimizing effort. Since the system will be highly
interactive and will also manipulate grey-scale data, we will need a
higher level of graphics protocol to handle the user interface. A
"proto-prototype" system is being used now to do some simple
manipulations of meteorological data (e.g., contouring, 3-D plotting)
with an IMLAC passively displaying the NGP0 pictures created. Soon, I
hope to finish an IMLAC program that will handle some interaction with
the mouse/keyset. I have decided to implement the following (outgoing)
commands.
MOVE beam to mouse position
DRAW from last to present beam position.
TEXT at present beam position.
UNDO the last command (to facilitate freehand drawing and
backspacing in TEXT).
Other commands may be implemented as needed to do what people want to
do, at least until an adequate interaction standard comes along.
Note that there is implicit in the UNDO command the assumption that
the other end of the line possesses a certain amount of memory and
intelligence. Two possible philosophies for standardizing interaction
are that (1) all "nodes" ("generators" or "users" of data) understand
some set of commands and possess at least a certain amount of
intelligence, and (2) a distinction is made between "displays" and
"computers" (quotes because the line is fuzzy). I favor the first for
its generality, but I suggest that the lowest level of interactive
graphics might want to use the second for ease of implementation with
unintelligent devices, e.g., COMPUTEK 400's. (I do not mean to
imply in (1) that the actual "computer" would not have a larger
vocabulary than the actual "display" --this is inevitable with higher
level capabilities in the protocol).
Since we have almost no local computing power for applications work,
all our graphics computation is done remotely (our work has been
primarily at UCSD (B6700), USC-ISI (TENEX), and UCLA-CCN (360)).
Because we do our work at scattered sites and are basically economic
of labor (pronounced "lazy"), we have a lot to gain by standards and
will be glad to cooperate as much as possible with standardization
efforts.
Steve Bunch
[ This RFC was put into machine readable form for entry ]
[ into the online RFC archives by Alex McKenzie with ]
[ support from GTE, formerly BBN Corp. 9/99 ]
AI ELI5
On this page
§1Graphics Support at Illinois
In March 1973, the University of Illinois responded to a UCLA request for information about network graphics capabilities. The response documents their approach to supporting beam-oriented graphics by closely emulating the CALCOMP plotter support package, a widely-used plotting system, but with output in the Network Graphics Protocol format.
This informal status report shows how one major ARPANET site was tackling the problem of making graphics work across networked machines, with local computing resources kept to a minimum and most computation done remotely at other sites.
A university explained how it let scientists at the school send drawing commands over the network to a computer that would make a picture.
§2Graphics Technologies in Use
Illinois' graphics work focused on several technologies. For most applications, they emulated the CALCOMP package with output to the Network Graphics Protocol (NGP). Some peripherals like the Gould 4800 required conversion to device-specific formats, though this was expected to be handled locally with the arrival of the ANTS MARK II and PDP-11/45 systems.
In addition to beam-oriented graphics, Illinois was performing grey-scale work on GOULD and IMLAC devices. One group processed satellite pictures, another produced natural-resource maps, and a third was generating holograms. Grey-scale standardization had not yet been planned.
They had several drawing computers: one that made beam pictures (like an oscilloscope display), and others that made grey pictures (like photographs). Different machines needed different instructions.
§3Interactive Graphics Vision
Illinois was planning an interactive graphics system that would use multiple hosts, possibly including a remote Evans & Sutherland machine for 3D operations like rotation and scaling. The prototype system demonstrated simple manipulation of meteorological data such as contouring and 3D plotting, with an IMLAC passively displaying the NGP pictures created.
The planned implementation included commands for MOVE, DRAW, TEXT, and UNDO operations with mouse and keyset input. Illinois recognized that different philosophies existed for distributed interactive graphics: one where all nodes understand a common command set, or another distinguishing between intelligent displays and computers. They favored the more general approach.
They were building a system where scientists could use a mouse to draw pictures on a screen, with commands like 'move,' 'draw,' and 'undo' similar to modern drawing programs.
§4Network Graphics and Standardization
Because Illinois had minimal local computing power for applications work, all graphics computation was done remotely at UCSD, USC-ISI, and UCLA-CCN. The distributed nature of their work meant they had much to gain from standards and were willing to cooperate with standardization efforts.
Their approach emphasized letting efficiency dictate the format of intermediate results shipped over the network, with standardization applied where it helped minimize effort. This pragmatic approach reflected the early state of network graphics in 1973.
Most of the actual calculations happened at distant universities, so they wanted everyone to agree on how to send pictures over the network.