Hi guys.
We released today the first Open-Source ZCash Stratum proxy, which streamlines mining on multi-miners infrastructures/farms (also helpful for small/personal mining farms).
This software is provides AS-IS without dev-fee and without any warranties of any kind.
Source code (nodejs) and instructions are available on Github:
First of all, the stratum json-rpc communication protocol is much more efficient than the HTTP “get work” version in term of latency & bandwidth usage. Even if modern miners support the tcp/ssl stratum protocol as well, using a stratum proxy allow you to aggregate communications with the pool in one unique point.
The Stratum proxy is like a “personal” pool, the work submission and new work reception are centralized by the proxy and sent directly to the miners through the local network instead of maintaining N open connections through the web (this is particularly effective with several rigs/workers).
From the pool point of view, having more and more miners/workers to deal with increases dramatically bandwidth/ressources usage. By using proxies we all contribute to pools workload reduction and so increase community efficiency
By aggregating your workers hashrates through an unique “virtual miner” (which stratum proxy does), you increase by design the number of shares you validate per Hash/sol. In addition, the proxy always has the latest block informations (target / work) from the mining pool so it can quicky provide it to miners according to their needs (new one / reconnected / etc…)
With your own stratum proxy you have an unique point of monitoring . For now you can see if your rigs are alive or not by “simply” scanning the output log, and we are working on an better monitoring way (console UI + Json api…), this will coming soon !
So basically, if you have more than 1 worker, the proxy usage will optimize you mining setup and earnings.
Oct 12 02:07:02 raspberrypi nodejs[1463]: WARN # Zcash Stratul proxy version 1.0.4
Oct 12 02:07:02 raspberrypi nodejs[1463]: WARN # PROXY IS LISTENING ON PORT 8000
Oct 12 02:07:02 raspberrypi nodejs[1463]: WARN # -----------------------------------------------------------------------
Oct 12 02:07:02 raspberrypi nodejs[1463]: WARN # Mining Wallet: znTVVSyTcZnqCkvXYhmmpbqsAp5X7LpUEvy
Oct 12 02:07:02 raspberrypi nodejs[1463]: WARN # Worker ID enabled: true
Oct 12 02:07:02 raspberrypi nodejs[1463]: WARN # Failover enabled: true
Oct 12 02:07:02 raspberrypi nodejs[1463]: WARN # -----------------------------------------------------------------------
Oct 12 02:07:02 raspberrypi nodejs[1463]: WARN # Donation ETH : 0x1212eF39d945aB9A9568Aa5a72c5CBA99Bbe46c1
Oct 12 02:07:02 raspberrypi nodejs[1463]: WARN # Donation ZEC : t1YAdYcnKR2ozADWPUvmgnDgf86gfsxQEEE
Oct 12 02:07:02 raspberrypi nodejs[1463]: WARN # -----------------------------------------------------------------------
Oct 12 02:07:02 raspberrypi nodejs[1463]: INFO # ZEC STRATUM PROXY STARTING...
Oct 12 02:07:02 raspberrypi nodejs[1463]: INFO # Connecting to zhash.pro:3057
Oct 12 02:07:02 raspberrypi nodejs[1463]: INFO # Connected to pool zhash.pro:3057
Oct 12 02:07:02 raspberrypi nodejs[1463]: INFO # Subscribing to pool...
Oct 12 02:07:02 raspberrypi nodejs[1463]: INFO # Stratum session id : 4ffffd27
Oct 12 02:07:02 raspberrypi nodejs[1463]: INFO # Authorizing mining wallet znTVVSyTcZnqCkvXYhmmpbqsAp5X7LpUEvy
Oct 12 02:07:02 raspberrypi nodejs[1463]: INFO # New work : dffc
Oct 12 02:07:02 raspberrypi nodejs[1463]: INFO # znTVVSyTcZnqCkvXYhmmpbqsAp5X7LpUEvy Authorized
One downside I noticed is when using Claymore miner, its dev fee is 2% if connected using SSL and 2.5% when not connected using SSL (this man-in-the-middle proxy).