Resend: ARDP vs. TCP; prospero as proxy

Daniel W. Connolly (connolly@hal.com)
Thu, 21 Apr 1994 17:52:27 -0500


I asked this a while ago to the prospero list... there has
been no response. I'm quite curious, so I'm expanding my
audience.

I'd really like a detailed answer, but pointers to materials
to read or other discussion forums (e.g. newsgroups) would
also be appreciated.

------- Forwarded Message

To: prospero@isi.edu
Subject: ARDP vs. TCP; prospero as proxy
Date: Mon, 28 Mar 1994 16:30:58 -0600
From: "Daniel W. Connolly" <connolly@ulua>

[I just subscribed to this list -- sorry if this has been hashed
over before, but I read through the mailing list archive...]

I'm interested in the possibility of using a Prospero in the role
that the HTTP proxy server is currently being used.

First, I'm interested in a comparison between ARDP and TCP. I gather
that transmission via ARDP uses less overhead than TCP. Are the
transactions supported by ARDP limited in some way that allows
optimization over TCP? Is ARDP "less reliable" in some way?

For example, could someone contrast in detail a gopher type 1
transaction with a prospero request? I gather the gopher transaction
goes something like:

C: send "connect" request to server's host:port
S: send "ACK"
C: send gopher selector TCP packets
[server and client "Do The Right Thing" with respect
to reliablility]
S: send text file back in TCP packets
[more reliability stuff]

Could someone describe in more detail the number of IP round trips
in the gopher-over-tcp vs. prospero-over-ardp?

It's been a while since I read all about TCP, and even then I didn't
read carefully enough to fully understand it. But I'm very curious
to know how ARDP compares.

Finally... would it make sense for the prospero server to perform the
services of a gopher server directly? In other words, rather than:

C: look up "/xyz" link in #/INET/EDU/ISI/xyz
PS: send back link: HSONAME="1/xyz", ACCESS-TYPE="GOPHER '' '' ''"
C: connect to gopher server @isi.edu, send HSONAME "1/xyz"
GS: send back "/xyz" file contents

it might be nice to just do:

C: get "/xyz" from #INET/EDU/ISI/xyz
PS: send link info plus contents of xyz file

The prospero server could perform FTP, Gopher, etc. accesses itself
and cache the results, and pass them on to the client. (Hmm...
security issues...)

And/or, the client could, in the "get" request, include information
about what domains it can reach and what access methods it supports.
If the prospero server can access the file but the client can't, the
prospero server would do the gateway thing. Else if the client can
access the file, the prospero server just passes the link info along
for the client to resolve. Else you're out of luck.

Dan

------- End of Forwarded Message