The OCFA inter process messaging library
The message library offers the facilities to communicate simple short
messages between processes within the open computer forensics
architecture. In a normal configuration any normal module including
those within OcfaArch is configured as a messaging client, and the anycast relay is configured as a
messaging server. Basically all clients connect to a single server that
acts as a relay between addressable nodes (module instances). Messages
sent between the processes can be of the following types:
- Unicast messages : messages directed at a specific module
instance.
- Broadcast messages: messages directed at all connected modules.
- Anycast messages: messages directed at 'any' instances of a
specific module type.
- Multicast messages: messages directed at all modules that are
subscribes to a specific channel.
Normal modules will use Anycast messaging to communicate evidence data
and metadata with other modules. Special messages like ocfahalt will be
sent using Broadcast or Multicast. A special process called the anycast relay is able to turn
anycast messages into unicast messages for specific module instances.
By using anycasts, a distributed environment can be built where multiple
instances of a particular module can be run on different computers. The
anycast will take care of the load balancing, buffering and addresses
the reliability.