APPLCORE: An architectural question

I perceive that there is an early decision that this group could make with
very significant downstream consequences.  It concerns the handling of
multiple overlapped requests.

(A) The approach taken by IMAP/AP is to build the concurrency into the
basic request/response protocol, including identifying tags as part of the
data stream.

(B) The aproach taken by HTTP-NG is to have a separate multiplexing layer
that allows a number of virtual duplex stream communications to be
conducted on a single underlying connection.  Thus, each concurrent
request/response is conducted in a separate data stream.

I see parallels here with development of multitasking operating systems:
(A) with asynchronous notification mechanisms built into the operaing
system interface (e.g. VMS);
(B) systems built using a synchronous basic interface and multithreading to
achieve concurrency within a process (e.g. Unix).

The MUX approach involves layering (with the overhead that implies),  while
request/response concurrency adds complexity to the application protocol.

I don't have a definite view on which way is best, but I tend to lean in
favour of the mux approach.

#g

PS:  is T/TCP alive or dead these days?


------------
Graham Klyne
(GK@ACM.ORG)

Received on Tuesday, 9 February 1999 07:48:06 UTC