[e-lang] WormholeOp questions
Kevin Reid
kpreid at mac.com
Tue Aug 7 18:05:00 EDT 2007
http://www.erights.org/elib/distrib/captp/WormholeOp.html says:
> When VatA introduces VatB to Carol, she first wormholes the
> unacknowledged portion of her outgoing VatA-to-VatC VatTP stream
> through VatB for delivery to VatC. VatB then wormholes it towards
> VatC before acting on further messages from VatA.
Am I correct that this last ordering guarantee is only for messages
from VatA which would cause VatB to enqueue more traffic toward VatC?
I ask because a premise of my CapTP design -- that CapTP messages can
be implemented as messages delivered to an E object -- depends on not
having to delay more than can be done synchronously (i.e. enqueue for
VatB before the end of the turn).
> ... LookupDesc(VatCSearchPath,
> VatCID,
> nonce,
> carolSwissHash,
> vine) ...
Should this be Far3Desc? There is no LookupDesc documented on the
main CapTP page.
> So, if VatA and VatB are cooperative, they are both assured that
> the needed provideFor "from" VatA will be processed by VatC before
> VatC sees the corresponding acceptFrom from VatB. If either is
> uncooperative, they cannot cause damage beyond that accounted for
> by the object-level semantics. Because the data takes redundant
> paths, neither side will get stuck waiting on the other to timeout.
Am I correct that the reason VatB being uncooperative does no harm is
that VatB cannot get a reference to Carol until the A->C provideFor
is delivered, thus not performing the WormholeOp results in
acceptFrom either failing or succeeding after the older A->C traffic
has been delivered?
--
Kevin Reid <http://homepage.mac.com/kpreid/>
More information about the e-lang
mailing list