Snipa22 / nodejs-pool

Other
481 stars 422 forks source link

PPLNS Question #294

Open CoinLogik opened 6 years ago

CoinLogik commented 6 years ago

I've had a nicehash bomber on my pool and the nicehasher takes 95% of rewards while not investing much time. Other miners, who have mined consistently walk away with <1% of rewards. Isn't PPLNS supposed to help prevent that? How can I debug this?

You can see the nice hasher at top of this spreadsheet:

image

bobbieltd commented 6 years ago

Which coin ? ITNS right. I think because of time frame (2*PPLNS). Because some small miners doesn’t get paid ( mining out of window and stop ). Even the guy with 28M hashes get paid only 1/2 of guy with 13M hashes.

CoinLogik commented 6 years ago

@bobbieltd yes, ITNS

bobbieltd commented 6 years ago

Pehaps, the payment is correct. It depends on timeframe which count from block found back to 2*network difficulty. Nice Hasher came at that time frame. Other miners have hashes out of timeframe.

bobbieltd commented 6 years ago

To solve this issue, you can increase the N (from 2 to 4 or more). Like that timeframe is longer.

bobbieltd commented 6 years ago

In config, for info : { "id": 55, "module": "pplns", "item": "shareMulti", "item_value": "2", "item_type": "int", "Item_desc": "Multiply this times difficulty to set the N in PPLNS" }

Using mysql

CoinLogik commented 6 years ago

So if I understand correctly, that roughly spreads out rewards depending on amount of shares you contributed for the last 2 blocks (roughly! I know difficulty can change quite quickly with these younger coins) But with ITNS 2 minute block target and a new pool, that means I can have some guys mining all day long with no block found and someone comes in and hash bombs for 5 minutes (2-3 blocks), they are not penalized at all, right? Is there a system which counts shares since the pool last found block?

bobbieltd commented 6 years ago

System counts shares on last block found info and it IS NOT 2 2 minutes = 4 minutes like that. 2difficulty is not 2 block time. It counts on shares in your pool back to 2 difficulty ( Basing on time, it can be days with small pools, never 5 minutes )

Editting : formatting * character

CoinLogik commented 6 years ago

Alright, so then difficulty is ~1500000000, it looks back 3000000000 shares which is 25% of total shares of my small pool. Then I don't understand how the hash bomber can mine for 15 minutes can take 96% of rewards. Versus third guy down with 367 million shares, he was mining for days.

first guy: 10.7 billion hashes (~30x more hashes than third guy) third guy: 0.36 billion hashes

First guy who was quickly in and out of server gets 54x more reward than third guy.

Snipa22 commented 6 years ago

It looks back 2n hashes, not 2n shares. Very, very important difference.

As for your question about shares from the last found block, that's RBPPS, or Prop, which is abusable. If your on a low hashrate coin, a whale will easily swamp your PPLNS system.

bobbieltd commented 6 years ago

Thanks Snipa for clarifying it 👍👍👍. But in my opinion, when N is high in PPLNS system, short time whale can not take much reward.

bobbieltd commented 6 years ago

Sorry, on low hashrate coin, it’s different.

TimeTravelersHackedMe commented 6 years ago

It looks like he's getting what he should be paid. He's 89% of your network