requirements for comms (was: Re: [E-Lang] Security Breach: Nominee for the Stock Exchange Prize)
zooko@zooko.com
zooko@zooko.com
Fri, 27 Apr 2001 18:39:56 -0700
Bill wrote:
>
> At one point, application level keep-alives were suggested as an
> alternative to system level ones. I was showing that application level
> keep-alives probably would have the same problem as system level ones in
> the case where the requestor expected a response, and the requestee decided
> that no response was necessary.
Good point. I was thinking of an impatience policy that didn't have keepalives
at all, which means that the keepalives never predict nor mispredict the
eventual results, for good and for ill.
> That makes sense. I don't know that E will be supporting the Mojo Nation
> abstraction of, "Many sources, any of which can provide a useful response"
> as a basic primitive. That is the environment where the Mojo Nation
> timeout dilemma becomes most acute.
Good point! I'm not sure what a "typical" E app needs in this respect. The
other kind of transaction we have in Mojo Nation is where a given source is the
only one that can provide the response, but in that case we can definitely not
time-out, nor allow low-level keepalives to deter us from retrying until we get
what we want -- that is when doing transactions with the Token Server.
> One thing we could provide is the recent minimum observed round-trip time
> on a path. Than people could avoid a 60 second timeout on a Mixmaster
> email path. :-)
Good point. On the other hand, if I were using a keepalive impatience policy,
I think I would be happy to let the lower-layer code decide how to do keepalives
in order to have early and accurate prediction.
Regards,
Zooko