How to add new "protocols" ?


I have a questions that is somewhat related to HTTP.  What is the
best, and cleanest, way to specify the reliable transport protocol
(intended as Network Transport Protocol, e.g.  TCP, something-above-UDP,
etc.) used to transfer HTTP data ?

Currently I see two different solutions (here the word "protocol"
is used to mean "anything used to reliably transfer WWW requests
and responses"):

1) HTTP is usually trasferred over TCP, but there are cases (e.g. squid
   when communicating with other proxies) where short documents can be
   trasferred using UDP because it is more efficient in that
   particular case. This does not appear in the URL, nor is the
   client or the server aware of the different transport.

2) in other cases, the indication is explicit: the client knows that
   some data is only available through FTP or GOPHER, and issues a
   request where the protocol is explicit in the URL.

Now assume one has a different transport protocol that could be
used to transfer HTTP data in place of TCP. Should this be made
explicit in the URL, similar to #2, or not, as in #1 (which I like
better) ?

And, what is the correct way to make the mechanism explicit ? Perhaps by
instructing the browser/server to use TCP only, and then add, locally to
the client/server, an independent gateway which does the translation ?

If someone wonders why. Think of using a portable unit to browse,
and have an asymmetrical channel, e.g. uplink via cellular phone,
downlink is broadcast (e.g. using satellite or TV channels, much
like teletext). You don't certainly want to keep your expensive
cell-phone call up while you download your data, hence you do not
want to use TCP and ACK every now and then. Now assume you have a
protocol that allows you to just send the request, hangup and wait
for data to come reliably to you (and we do actually have such a
thing, look at and

for more details). How do instruct the browser/server to use the
different protocol, should it be in the URL or it is conceptually
done at a lower layer ?

Luigi Rizzo                  |  Dip. di Ingegneria dell'Informazione
email:    |  Universita' di Pisa
tel: +39-50-568533           |  via Diotisalvi 2, 56126 PISA (Italy)
fax: +39-50-568522           |

Received on Friday, 14 February 1997 11:30:55 UTC