Before a process migrates a message is sent by the source node to all reference
holders indicating that the process intends to migrate. These processes then
buffer messages to the migrating process until a second message is sent,
passing the new address of the process. At all times each reference holder
knows the exact location of a process.
Unfortunately this approach has significant drawbacks. Firstly it is more
complex than message redirection. Secondly, it is necessary to contact all
reference holders before effecting a move; this implies both that it is
possible to determine which processes hold references (in general rather
difficult), and that all such processes are contactable at the time of
migration. If they are not, then the migration cannot take place.
A variant of this technique is one in which the initial message indicating
intention to migrate is not sent. All messages to the process during migration
are lost. Only when the process has successfully migrated does it contact all
reference holders to update their addresses.
In ANSA/ODP, the techniques of redirection and loss prevention can be
combined together so that a migrating node attempts to get clients to
redirect their messages before it starts to move, but that its
previous home will redirect messages from any clients who are still
`using the old address'.