Contiki NG/Cooja - Non-RPL Simulation with No-Root Node - cooja

Can we simulate in Contiki-NG / Cooja a non-RPL sensor network where each node can directly communicate to any other node, without having to go through any root node?

Related

How to watch the death of a remote actor in Akka cluster?

I'm using Akka sharding cluster to distribute my workload across multiple nodes, and use context.watchWith(worker) to detect the unexpected termination of a child actor.
It seems if the child actor is allocated on a different node from the parent node (by cluster sharding), and if that child node is down, the parent actor will not get the death notification of the child actor.
I know I can add my own logic to track the lifecycle of the child actor.
Still, I'm wondering, does Akka have native support of the death watch for this case (child actor on a remote node)?
That is not true in general, watching an ActorRef that lives on another node will give you a terminated message if that actor stops.
However, when using Cluster Sharding you don't actually have access to the remote ActorRef but use sharding as a proxy to deliver your messages based on a field in the message. Sharding can decide to rebalance the shards across the cluster at any time, for example when a new node joins or a node leaves the cluster and in that case the sharded actors can be stopped and upon the next message be started on another node.
If the motivation for watching the remote actor is to get some form of delivery guarantee it could be interesting to know that we added a new tool called Reliable Delivery in Akka 2.6.4 that was recently released. You can see it used in a distributed workload sample in this PR https://github.com/akka/akka-samples/pull/186

Corda Node shuts down with following error

[ERROR] 10:20:24+0530 [main] internal.NodeStartupLogging.invoke - Exception during node startup: Node uses parameters with hash: 1DE6AD5577CA71D9307FC244B59418B09DACCF5F0C14B96C7D31E099A6C362C8 but network map is advertising: 4038BC9139ECE1C7B8E9E3F2029FFF5FB9FD0A9303F477EABFBBF98D134A2CF6. Please update node to use correct network parameters file. [errorCode=10znq16, moreInformationAt=https://errors.corda.net/OS/4.0/10znq16]
The node's network parameters file is outdated. How was the node built? If in dev mode using network bootstrapper, redeploying the node will generate the correct files. If using a network map server, simply request a new network parameter file from the network map service.

akka cluster slave node not joining seed node

I am working with akka distributed worker template available on typesafe. I am using it to write a backend job which takes data from siebel using soap calls and inserts in mongo. This job is supposed to run once a week for few hours.
Based on the cluster-usage and other documentation on AKKA website, I imported akka-cluster.jar and configured the application configuration file with SEED nodes (akka.cluster.seed-nodes). But when I start the first node (MASTER NODE) with the configuration I mentioned (seed nodes etc), I start getting errors on the server console saying failed to join the seed node which is obvious (as it is the first node and there is nothing to join). Now I start the second node with akka.cluster.seed-nodes configured with the ip-address and port of the process where master node is running. I once again get the errors on the server console.
Now what I do next is - take the first join address of the master actor from the MASTER NODE and set it dynamically in the slave node in the code (construct an Address object and pass it to the actors on the slave node). THIS WORKS!!! If I take the same join address and configure it in the application configuration akka.cluster.seed-nodes, it throws me error and slave doesn't join the cluster.
So I have following questions :-
1. How to configure the akka.cluster.seed-node configuration in application. I could never make it work/count in the configuration.
2. Is there any way to pre-configure the seed nodes in the configuration. As per me trying it out, it looks like the configuration is dynamic i.e. to take the join address of actor on the master node from the logs and configure the slave's seed-node configuration with that address ?
I've had similar problems which were the result of a mismatch between the actor system name in the seed nodes configuration and the actual actor system name created in my code.

ZeroMQ get client connection info

Ok so I have the following case:
I am using ZeroMQ to pass around messages to other nodes in a cluster. I would like to have a master cluster that keeps track of who is in the cluster and tells other nodes when a node connects to the cluster. So for instance:
New node wants to join cluster.
New node announces to master server intent to join
Master server tells other existing nodes about new node
Other existing nodes connect to the new node.
From what I can tell I cant get information on the address of the new node when it tries to connect to a socket on the master server so I was wondering if there was any sort of way that I could try to forward on information about the new node to the other nodes.
Edit: I just noticed functionality that seems like it might be what I want in the monitoring abilities. Is this the only way to do so? And will it even be what I really want.
You may consider using Group Messaging pattern instead. In this pattern instead of talkng to a single master node, you tell to a group of nodes.
There are JOIN and LEAVE commands. When a node joins a group it broadcast a JOIN command to all its peers, thus telling them he has joined.

Selenium grid connected node list

So I am setting up a hub and multiple nodes connect to it using selenium grid. And I would need to have a list of those connected nodes. Right now I am able to find out which node are running test, but I need a list of node that are ready to run a test.
You can see a list of connected nodes on http://your-hub-domain.com:4444/grid/console