Hey everybody,
I'm going to describe a development idea that occured to me today, and I'd like some feedback on whether this would be something miners could be interested in.
If I'm not mistaken, the current mining scenario looks something like this:
+-------+
|Worker1|+-------------------+
+-------+ |
v
+-------+ stratum+tcp +--------+
|Worker2|+------------->| Pool |
+-------+ +--------+
^
+-------+ |
|Worker3|+-------------------+
+-------+
So the mining pool controls your workers (which is fine), but all your workers are completely tied to the pool, and you have no way of getting live statistics of your workers performance, other than what the pool may report to you (delayed as that may be). So I had the idea to develop the following piece of software, that acts as gateway between your workers and the mining pool:
+-------+
|Worker1|+-------------------+
+-------+ |
v
+-------+ stratum+tcp +---------+ stratum+tcp +------+
|Worker2|+------------->| Gateway |+--------------->| Pool |
+-------+ +---------+ +------+
^
+-------+ |
|Worker3|+-------------------+
+-------+
Having a gateway between your workers and the pool has, in my understanding, a couple of advantages compared to being directly connected to a pool:
1. Your worker configuration can be pool-independent. For example lets say you have 10 workers of which you'd like to have separate performance statistics, but you don't really care if the pool you're mining in sees them as different workers. In this case, you could simply connect your 10 workers to the gateway and let them all seem like a single worker for the target mining pool. This is especially advantageous when switching pools, because you'd only have to change a single configuration parameter in the gateway in order to switch all your workers, no matter how many, to a new pool. Stuff like failovers can also be handled by the gateway, without the need to change your miner's configuration. An additional possiblity would be advanced routing capabilities for assigning certain subsets of your "mining force" to certain pools, e.g.: "Workers with name rad* -> stratum.goodpool.com"
2. The gateway should be able to provide all the graph-goodness you could possibly desire. This could, for example, be implemented through a web-interface. Said web-interface could also be able to configure your workers.
3. E-Mail or other notifications of certain events involving your workers.
So in summary, you'd move the configuration away from the machines actually doing the work, and put it in the gateway. I haven't been able to find something like this yet, but if it does exist please let me know
Thinking about this concept, I was wondering about the worker password mechanism. So a question for the miners: Do you actually have separate passwords for all your workers, and if so, why?
Cheers,
x3ro