Pages:
Author

Topic: Free cloud-based stratum proxy for Slush & BTCGuild (beta) - page 6. (Read 46505 times)

newbie
Activity: 33
Merit: 0
First off, thanks for providing this. I am not trying any of my major rigs with this free cloud based proxy as i am running MinePeon at home on a RasPi that supports stratum. However, i decided to test this with a couple of mobile devices. Yes, i know its not ideal, just wanted to play around with it. DroidMiner is a mobile android cpu miner and it works in the khash range but it does not support stratum, so i decided to give your cloud based proxy a shot. For the most part this seems to work, however when i do get a few hashes they never show up on btcguild. i have racked up at least 20 from my N7 but btcguild had showed nothing. Nothing accepted or rejected. Not sure what the deal is. My mobile devices work if i am at my home network running the proxy on one of my machines though.
sr. member
Activity: 588
Merit: 269
1.) East Coast, US

2.) I hope that isn't me... Apparently Slush's pool very recently removed the ability to switch difficulty manually. They said stratum should do it automatically. When I was using the original stratum proxy my difficulty was automatically switched to 8. So I take it the setting doesn't stay that way...

*Update*
Quote
[11:40] if there's such "need"to manually define miner difficulty, then it is a bug of miner or some other part of mining equipment. But as pool is using vardiff now, user-defined difficulty has no sense anymore

My miners are 2 days old and were working at 110% efficiency up until the slush proxy messed up. So I know it isn't my miners.

Ok, thanks. I'm generally on BTCGuild. I just tried Slush, and it seems to work fine for me. (It's not just a "well, it works fine for me under controlled circumstances when stars line up" - these servers are over the Internet even for me).

Couple of more questions:
a) What is your internet service speed?
b) What Operating System are you running?

Meanwhile, I'll bring up 2 more servers - US East Coast and Western Europe (since slush is in Amsterdam). It will take me a few hours. I'll appreciate if you can try it out after that. Will post here (and PM you) when they're ready.


From the UK and was getting efficiency of 53%, got a fiber connection ping time to either of the domains was 1256ms so pretty high, Hopefully once you get a more central server up and running in Europe that will speed up the ping, Cheers
sr. member
Activity: 322
Merit: 250
1.) East Coast, US

2.) I hope that isn't me... Apparently Slush's pool very recently removed the ability to switch difficulty manually. They said stratum should do it automatically. When I was using the original stratum proxy my difficulty was automatically switched to 8. So I take it the setting doesn't stay that way...

*Update*
Quote
[11:40] if there's such "need"to manually define miner difficulty, then it is a bug of miner or some other part of mining equipment. But as pool is using vardiff now, user-defined difficulty has no sense anymore

My miners are 2 days old and were working at 110% efficiency up until the slush proxy messed up. So I know it isn't my miners.

Ok, thanks. I'm generally on BTCGuild. I just tried Slush, and it seems to work fine for me. (It's not just a "well, it works fine for me under controlled circumstances when stars line up" - these servers are over the Internet even for me).

Couple of more questions:
a) What is your internet service speed?
b) What Operating System are you running?

Meanwhile, I'll bring up 2 more servers - US East Coast and Western Europe (since slush is in Amsterdam). It will take me a few hours. I'll appreciate if you can try it out after that. Will post here (and PM you) when they're ready.
newbie
Activity: 59
Merit: 0
Tried every port and server that you have available and I only pull 55% efficiency with my blades on the default slush1.cloudapp.net:8332. Am I doing something wrong? Or is there any way I can improve this?

1) Where are you located? These servers are in the Western U.S. If you are from Europe, this may not be an ideal server for you to use, as all your traffic will have to effectively travel around the world twice.

2) What is your Slush minimum difficulty set to for your blade? For a Blade this should be set to 8. I see there is someone connected currently to slush1:8332 right now that has a difficulty set to 1. That will cause fairly low throughput on a high latency connection.



1.) East Coast, US

2.) I hope that isn't me... Apparently Slush's pool very recently removed the ability to switch difficulty manually. They said stratum should do it automatically. When I was using the original stratum proxy my difficulty was automatically switched to 8. So I take it the setting doesn't stay that way...

*Update*
Quote
[11:40] if there's such "need"to manually define miner difficulty, then it is a bug of miner or some other part of mining equipment. But as pool is using vardiff now, user-defined difficulty has no sense anymore

My miners are 2 days old and were working at 110% efficiency up until the slush proxy messed up. So I know it isn't my miners.

*Update2*
Used the BTCguild proxy for my miner, set the difficulty to 8 and Im having the same issue. Also the BTCguild website is FAR off from matching my stats of my miner while its running. Is this typical for it to do since its being run through a proxy?
sr. member
Activity: 322
Merit: 250
Tried every port and server that you have available and I only pull 55% efficiency with my blades on the default slush1.cloudapp.net:8332. Am I doing something wrong? Or is there any way I can improve this?

1) Where are you located? These servers are in the Western U.S. If you are from Europe, this may not be an ideal server for you to use, as all your traffic will have to effectively travel around the world twice.

2) What is your Slush minimum difficulty set to for your blade? For a Blade this should be set to 8. I see there is someone connected currently to slush1:8332 right now that has a difficulty set to 1. That will cause fairly low throughput on a high latency connection.

newbie
Activity: 59
Merit: 0
Tried every port and server that you have available and I only pull 55% efficiency with my blades on the default slush1.cloudapp.net:8332. Am I doing something wrong? Or is there any way I can improve this?
sr. member
Activity: 588
Merit: 269
Thank you very much for the service, I can never get my mining proxy to run on any of my computers.

So far running well.

Cheers  Smiley
sr. member
Activity: 322
Merit: 250
I have completed the upgrade, and all machines are available again.

To deal with the vardiff from Slush and BTC, I've also created 3 more ports on each server:

8884
8885
8886
8332 is also still available.

Unfortunately a bunch of slow miners is still considered fast... So let's say this. If you have one blade, just pick a port at random. If you have multiple blades, spread them one per port on the one server (e.g. btcbuild1), then one per port on the other (e.g. btcguild2).

Of course, still have your backup as the opposite server (or different pool).


I see worker "SlushWrk1.SlushPI" connected to slush1 with a failover for slush2, but the miner didn't have correct failover credentials, so it didn't switch over correctly during the downtime.

In the ASICMINER UI, make sure to also duplicate the user:pass as well.

E.g.:
myuser.blade:x,myuser.blade:x
sr. member
Activity: 322
Merit: 250
The Stratum proxy makes a single connection to the Stratum server.  Stratum defines difficulty on a per connection basis, so you would need to run one proxy per user to prevent the difficulty from being raised beyond the optimal vardiff levels.  In the long run it doesn't matter, you get paid proportionally more for higher difficulty.  However, like you said, it would suck for a slow user, and it would probably start to trigger idle worker warnings for very slow users due to the gaps between shares.

Thanks!

Makes sense. When I reboot the servers today I'll bring up additional ports for "slow", "medium" and "high-speed" users as an interim solution for now.

I'm learning the Stratum protocol now, and will eventually rewrite the proxy, but I'm not there yet.


This beta is a good learning experience for me... Also taught me to set up availability groups in Azure BEFORE announcing the service Smiley.
legendary
Activity: 1750
Merit: 1007
NOTICE: The servers will be restarting for updates today for about 3 minutes. I will restart them with 15 minute intervals, so if you have a backup set up, it should automatically switch over with almost no interruption.

Very neat idea, but I'm curious:  Is this using a custom stratum proxy?  If not, how are you working around the vardiff settings of both slush & BTC Guild?

It's not - it's just the one from Slush's site.

Interesting - looks like this is indeed affecting the proxy. I can see that my clients are now given a difficulty of 128. Ordinarily it used to be 16. Doesn't seem to affect my stats much with blades though, but it may suck if you run something slower.

It looks like the difficulty is adjusted to the difficulty of the fastest user on that proxy? How does this work? Does the Getwork proxy make a single stratum connection to the server and send everything across that? And then the server then decides the difficulty on the endpoint, rather than deciding on a per client basis? (I HOPE it decides on endpoint and not just IP Address! But it could be that as well I suppose...).



The Stratum proxy makes a single connection to the Stratum server.  Stratum defines difficulty on a per connection basis, so you would need to run one proxy per user to prevent the difficulty from being raised beyond the optimal vardiff levels.  In the long run it doesn't matter, you get paid proportionally more for higher difficulty.  However, like you said, it would suck for a slow user, and it would probably start to trigger idle worker warnings for very slow users due to the gaps between shares.
sr. member
Activity: 322
Merit: 250
NOTICE: The servers will be restarting for updates today for about 3 minutes. I will restart them with 15 minute intervals, so if you have a backup set up, it should automatically switch over with almost no interruption.

Very neat idea, but I'm curious:  Is this using a custom stratum proxy?  If not, how are you working around the vardiff settings of both slush & BTC Guild?

It's not - it's just the one from Slush's site.

Interesting - looks like this is indeed affecting the proxy. I can see that my clients are now given a difficulty of 128. Ordinarily it used to be 16. Doesn't seem to affect my stats much with blades though, but it may suck if you run something slower.

It looks like the difficulty is adjusted to the difficulty of the fastest user on that proxy? How does this work? Does the Getwork proxy make a single stratum connection to the server and send everything across that? And then the server then decides the difficulty on the endpoint, rather than deciding on a per client basis? (I HOPE it decides on endpoint and not just IP Address! But it could be that as well I suppose...).

sr. member
Activity: 336
Merit: 250
I will test the proxy
legendary
Activity: 1750
Merit: 1007
Very neat idea, but I'm curious:  Is this using a custom stratum proxy?  If not, how are you working around the vardiff settings of both slush & BTC Guild?
full member
Activity: 203
Merit: 100
The law of the universe!
Great!!! I will try and use it  Grin

Thank you very much for helping the bitcoin community!

btw. very nice car! I want it so bad, but 110k euro is a bit too expensive........and that's without car tax! otherwise it would be over 150k euro. I hate you!

Just kidding  Grin  very nice car!
hero member
Activity: 574
Merit: 500
Mining for the hell of it.
erm. dont follow into the hype. The "BLOCK ERUPTER" is only 333mh.. most of everything is nowadays is Gigahas/Tarahash... BUT if you want to get into it it is a start. Just dont look into ROI. It can be a start if you want to get into it! Smiley
sr. member
Activity: 322
Merit: 250
You deserve a round of applause. That is some funny shit right there.
Is it the roadster? I have always wanted one!

No, it's a Model S.

However, I just saw this amazing device from some guy on eBay called a "BLOCK ERUPTER".  Looking at his projections I should be able to get one of those and then I can afford a Roadster by the end of the year!
hero member
Activity: 574
Merit: 500
Mining for the hell of it.
Cool idea.
Quote
I hate you!

I know. I'm used to it. I also drive a Tesla. Not a day goes by that I don't have to fight off at least a dozen trolls before breakfast. Knock yourself out.

You deserve a round of applause. That is some funny shit right there.
Is it the roadster? I have always wanted one!
sr. member
Activity: 322
Merit: 250
UPDATE:
These services have now been shut down due to the cost of running them.

Here are instead the steps to create your own Azure gateway.

I'll show by example of how I would create westcoastbtc.cloudapp.net, port 8884 which connects to BTCGuild. My values will be within []'s. Substitute with your values when more appropriate.

1) Go to www.azure.com and create an account. You can get a free trial account
2) Enter the azure portal (on www.azure.com)
3) On the left of the portal, select 'Virtual Machines'
4) Click "+" at the bottom to create a new Virtual Machine
5a) Click through: Compute \ Virtual Machine \ Quick Create
5b) DNS Name = [westcoastbtc]
5c) Image = Windows Server 2012  (you can host on Linux as well if you're familiar with it. I'm not listing the instructions for that below.)
5d) Size = Extra Small (enough for 10 blades. You can upgrade later)
5e) User name = [shrek]
5f) Password = [donkey]
5g) Region = [West US]
6) Click 'Create a Virtual' machine and have a [beer] until it's done.

7) Click on your new server, and go to Endpoints
Cool Click 'Add' to create a new endpoint
9) Add a Stand-Alone endpoint
10a) Name = [BTCGuild]
10b) Protocol = 'Tcp'
10c) Public Port = [8332]
10d) Private Port = same as 10c. [8332]
11) Click the checkmark to add it

12) Go to the DashPort
13) Click 'Connect'. There will be 2 popups, one from Azure, and one from your browser. Click 'Ok' on the azure one, and open your browser one (this is a Remote Desktop Client shortcut).
14) Enter 5e/5f from above for username & password

15) On the Server itself, go into 'Windows Firewall with Advanced Security'
16) Click 'Inbound Rules'
17) New Rule
18a) Port
18b) TCP
18c) Specific local ports = [8332]
19) Click Next
19a) Allow the connection.
20) Click Next
20a) Applies to 'Domain', 'Private', 'Public'
20b) Click Next
21) Name = 'BTCGuild Port'

It should now be set up. Create a batch file with a shortcut, and run the following:

start "BTCGuild Proxy" mining_proxy.exe -o eu-stratum.btcguild.com -p 3333 -gp 8332

(The 'start "BTCGuild Proxy"' part is just because I have dozens of these and I want to customize the title in the taskbar. You can leave it out).



I've set up a few Azure VM's and running mining_proxy.exe on it for Slush & BTCGuild.

The idea behind this is that if you run a ASICMINER blade or similar product that only supports Getwork and not Stratum, that you can connect it directly to this cloud-based mining proxy, instead of running your own proxy server somewhere on your premises. It thus should reduce your electrical usage.

This is a free Beta to test scalability. I reserve the right to cancel this service at any time. Leave me a message below or PM if you want me to PM you 3 days before I stop it/suspend it/take it offline for a significant period. You can also PM an email address to me if you want an email back. You're welcome to connect without letting me know, but I may yank the service out from underneath you and then you'll have a useless miner until you figure it out by yourself.

I got a performance increase from doing this. Please give feedback to tell me your experience. (Increase/Same/Decrease).

Some people have noticed a performance drop. I'd like to figure out why this happens - please don't just try and silently give up. Let me know your location so that I can see if I can get a server closer to you.


To connect, use one or more of the following servers.

All servers support both BTCGuild and Slush.

eastcoastbtc.cloudapp.net
westcoastbtc.cloudapp.net
westeuropebtc.cloudapp.net
northeuropebtc.cloudapp.net


They're located in Virginia, Washington (state), France and Spain respectively. Pick the one closest to you.


Ports:

BTC Guild: 8884, 8885, 8886
Slush: 8900, 8901, 8902
GHash.IO: 8904, 8905, 8906

The port choices are there to deal with the vardiff from Slush and BTC. If there are a lot of connections from the same port, due to multiple users, Slush & BTC Guild will increase your difficulty, which means you may have more rejects between blocks.

Unfortunately a bunch of slow miners is still considered fast... So let's say this. If you have one blade, just toss a dice to see which port to use. If you have multiple blades, spread them across servers and ports.


So e.g. in the ASICMINER blade config page, use the following:
Ports: 8884,8884
Server addresses: westeuropebtc.cloudapp.net,northeuropebtc.cloudapp.net
user:pass:  myname_worker:x,myname_worker:x


You can similarly also do a Slush primary/BTC Guild backup by setting it up like this:
Ports: 8900,8884
Server addresses: westcoastbtc.cloudapp.net,westcoastbtc.cloudapp.net
user:pass: slushusername:password,btcusername:password

Alternatively, use your own proxy server as your backup, in case mine goes down. I do have monitoring though, but I may not be able to intervene immediately.


Stuff that I think you should know (which other people call FAQ, but really aren't all that frequently asked...)

Can't you steal my worker username/password by connecting through your proxy?

I probably could if I wanted. Do you really care if someone steals your password and sets up a miner on your behalf? Make sure your password for your miners aren't the same as your account password and you should be safe. The password for all my miners are 'x'.


Can't you intercept a winning block and take it for yourself?

I wish! But no. You can't intercept a winning block if you connect directly to one of the pools either. The block being solved contains the pool's Bitcoin wallet address, so even if you were to intercept and submit it, the 25 BTC will still go to the pool owner.


How do I know you're not siphoning of hashes for yourself?

Monitor your own Slush / BTCGuild accounts. Slush / BTCGuild throughput should correspond to what you saw locally before or more. Compare your worker speed charts before and after. (Nice timing BTCGUILD for resetting our stats today! Grrrr.).  Let me know if you see a discrepancy (it most likely has to do with latency to my servers), and stop using the service immediately.

Do keep in mind though, that if you reconfigure an ASICMINER it takes about an hour to get back to 100% speed.


Is there a performance win/penalty for running the proxy over the internet

That's what I like to find out! At first I suspected there might be a penalty, but the cloud-based proxy gave me better throughput than I was able to get locally myself. I'm sometimes seeing 13.5 gh/s max on my blades now and over 12 gh/s average, which I've never seen with a local proxy. I suspect it's because the Azure machines are connected to the internet via gigabit connections, where I was sharing a lowly 30 mbps between both the Getwork and Stratum parts of the proxy.


Why are you offering this for free?

I tried it for myself as an experiment, and I got saw a surprising performance increase. Because of this, I'm now inviting other people to see if you get a similar throughput increase. If this holds true in general, I can turn this into a more formal service. Haven't really thought about a revenue model.


How long do you plan to run the Beta for?

Around 90 days unless it's starting to cost me 100s of dollars per month, or if I start offering another service. I might also reduce the number of servers if I see the backups aren't needed, or if I scale out using TCP load balancing instead. Do remember to send me a PM if you don't want to be surprised by me taking something offline.



Where is the service located

Now in 4 locations: Western US, Eastern US, Western Europe, Northern Europe.   I can set up East Asia & Southern Asia as well if there is any interest. Let me know. (Maybe for Russia?)


Can you do this for another pool? / Set a server up in another geographic region?

Let's see if these 2 work first, but I'm open to suggestions.

Unfortunately you can't just connect multiple user accounts over a proxy to Eligius - it will hand out difficulty 1 to everybody. But if you're interested I'll set up one-off Eligius ports for your. Let me know which primary & backup location, and how many ports you need.


This doesn't work!

Oops. Sorry. Post on this thread and I'll look into it.


I hate you!

I know. I'm used to it. I also drive a Tesla. Not a day goes by that I don't have to fight off at least a dozen trolls before breakfast. Knock yourself out.

Pages:
Jump to: