[Nel] Suggestion for the NeL network library / architecture

MIGUEL ANGEL BLANCH LARDIN x5101920@fedro.ugr.es
Tue, 12 Dec 2000 12:20:32 +0100 (MET)


> Ahem, no. I might have used object and agent in various contexts, 
but
> an agent is the only one which is authorised to change its state. 
The
> other objects are "replica", or passive objects. Each agent may 
exist
> only as a single copy over the set of processes, and he is the 
entity
> responsible for updating the local states of the replica objects in
> the other processes.
>
> If you want "what is your XYZ", the local replica answers. However, 
if
> you want "teleport to XYZ", the message is transmitted across the 
network
> to the unique agent, which updates its internal state, and then 
retransmits
> to all replicas "set internal state XYZ". And the latter is when 
multicast
> helps when there are many replicas to update.

Ok, as far as I am thinking about agents, a replica only show info but 
can't process code. So all the modificators should be send to the 
main agent, that then update.

There is still the possibility of an object to get two contradictory 
updates at the same time. To avoid this you should order the messages, 
something that I feel is unefficient and ugly.

Just image agent is a ball, and then two user decide to kick the two 
replica of the agent, so the replicas get the kick commnand and send 
it to the agent.

> > Replycating work can be a real pain.
>
> Hey, if I could buy a terahertz processor and have everything run on 
a
> single process, I'd be happy too :)

If you need a terahertz processor to run the server, you better start 
again the design stage.

Just I want to note that replycanting the work can lead to ugly 
things and race conditions.