Poolservers: Difference between revisions

From Bitcoin Wiki
Jump to navigation Jump to search
Luke-jr (talk | contribs)
No edit summary
Raistlinthewiz (talk | contribs)
m changed coiniumserv references as hpool as the project changed name
 
(60 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{| class='wikitable'
{| class='wikitable'
! colspan='7' | miner protocols
! colspan='11' | information
|-
|-
! Protocol !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! Slush
! Info !! BFGMiner !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Stratum !! hpool
|-
|-
| [[getwork]] || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}}
| language || C || C++ || Erlang || Python3 || Java || C || Twisted || C++ || Twisted || node.js
|-
|-
| [[UBBP]] || {{No}} || {{No}} || || {{Yes}} || ||
| license || GPL-3 || MIT || GPL-3 || AGPL-3 || GPL-3 || GPL-2 || GPL-3 || {{No}} || AGPL-3 || GPL-3
|-
|-
| getmemorypool || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}}
| ref. pool || || || [[BTCServ]] || [[Eligius]] || || || [[P2Pool]] || [[BitPenny]] || [[Slush's pool]] || [[Coinium]]
|-
|-
| [[BlkPrep]] || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}}
| website || [http://bfgminer.com link] || [http://sf.net/projects/bitcoin link] || [https://ecoinpool.p2k-network.org/ link] || [http://gitorious.org/bitcoin/eloipool link] || [http://poolserverj.org/ link] || [https://github.com/jgarzik/pushpool link] || [https://github.com/forrestv/p2pool/ link] || || [https://github.com/slush0/stratum-mining Link] || [https://github.com/int6/hpool-server link]
|-
|-
! colspan='7' | getwork extensions
! colspan='11' | miner protocols
|-
|-
! Extension !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! Slush
! Protocol !! BFGMiner !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny || Stratum || hpool
|-
|-
| hostlist || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} ||
| [[getblocktemplate]] || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}}
|-
|-
| longpoll || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}}
| [[Stratum|StratumMP]] || {{Yes}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}}
|-
|-
| midstate || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{No}} ||
| [[getwork]] || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{Yes}}
|-
|-
| noncerange || {{No}} || {{No}} || || {{Patch}} || {{No}} ||
| [[BlkPrep]] || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}}
|-
|-
| reject-reason || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} ||
| [[UBBP]] || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}}
|-
|-
| rollntime || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}}
! colspan='11' | getwork extensions
|-
|-
| expire=N || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} ||
! Extension !! BFGMiner !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Slush !! hpool
|-
|-
| submitold || {{Yes}} || {{Yes}} || {{No}} || {{Patch}} || {{Yes}} ||
| hostlist || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || n/a || n/a || n/a
|-
|-
| switchto || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} ||
| longpoll || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || n/a || n/a || n/a
|-
|-
! colspan='7' | work generation
| midstate || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{No}} || n/a || n/a || n/a
|-
|-
! Feature !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! Slush
| noncerange || {{No}} || {{No}} || {{No}} || {{No}} || || {{Patch|uri=http://gitorious.org/~Luke-Jr/bitcoin/luke-jrs-pushpool/commit/2dd2ad48e7d21f917dae3b5d9186563c78942e38}} || {{No}} || n/a || n/a || n/a
|-
|-
| getwork || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} ||
| reject-reason || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || n/a || n/a || n/a
|-
|-
| rollntime || {{No}} || {{No}} || || {{Patch}} || ||
| rollntime || {{No}} || {{NotAdv}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || n/a || n/a || n/a
|-
|-
| getmemorypool || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} ||
| expire=N || n/a || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || n/a || n/a || n/a
|-
|-
| coinbaser || {{Yes}} || {{Yes}} || || {{No}} || ||
| submitold || n/a || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{Patch}} || {{Yes}} || n/a || n/a || n/a
|-
|-
| gotwork || {{No}} || {{Yes}} || {{No}} || {{No}} || ||
| switchto || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || n/a || n/a || n/a
|-
|-
| setworkaux || {{No}} || {{Yes}} || {{No}} || {{No}} || ||
! colspan='11' | getblocktemplate/BlkPrep functionality
|-
|-
| getauxblock || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} ||
! Function !! BFGMiner !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Stratum !! hpool
|-
| longpoll || n/a || {{No}} || n/a || {{Yes}} || n/a || n/a || n/a || n/a || n/a || n/a
|-
| noncerange || n/a || {{No}} || n/a || {{No}} || n/a || n/a || n/a || n/a || n/a || n/a
|-
| proposal || n/a || {{No}} || n/a || {{No}} || n/a || n/a || n/a || n/a || n/a || n/a
|-
| serverlist || n/a || {{No}} || n/a || {{No}} || n/a || n/a || n/a || n/a || n/a || n/a
|-
! colspan='11' | getblocktemplate/BlkPrep variations
|-
! Variation !! BFGMiner !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Stratum !! hpool
|-
| coinbase/append || n/a || {{Yes}} || n/a || {{Yes}} || n/a || n/a || n/a || {{Yes}} || n/a || n/a
|-
| coinbase (set) || n/a || {{Yes}} || n/a || {{No}} || n/a || n/a || n/a || || n/a || n/a
|-
| generation || n/a || {{Yes}} || n/a || {{No}} || n/a || n/a || n/a || {{No}} || n/a || n/a
|-
| share/coinbase || n/a || n/a || n/a || {{Yes}} || n/a || n/a || n/a || || n/a || n/a
|-
| share/merkle || n/a || n/a || n/a || {{No}} || n/a || n/a || n/a || || n/a || n/a
|-
| share/truncate || n/a || n/a || n/a || {{No}} || n/a || n/a || n/a || || n/a || n/a
|-
| time/increment || n/a || {{Yes}} || n/a || {{Yes}} || n/a || n/a || n/a || || n/a || n/a
|-
| time/decrement || n/a || {{Yes}} || n/a || {{Yes}} || n/a || n/a || n/a || || n/a || n/a
|-
| txns/add || n/a || {{Yes}} || n/a || {{No}} || n/a || n/a || n/a || || n/a || n/a
|-
| txns/remove || n/a || {{Yes}} || n/a || {{No}} || n/a || n/a || n/a || || n/a || n/a
|-
| prevblock || n/a || {{Yes}} || n/a || {{No}} || n/a || n/a || n/a || || n/a || n/a
|-
! colspan='11' | stratum functionality
|-
! Function !! BFGMiner !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Stratum !! hpool
|-
| job freq || variable || n/a || n/a || 55s || n/a || n/a ||  || n/a || 30s || configurable
|-
| transparency || {{No}} || n/a || n/a || {{Yes}} || n/a || n/a ||  || n/a || {{No}} || n/a
|-
| resume || {{No}} || n/a || n/a || {{No}} || n/a || n/a ||  || n/a || {{No}} || n/a
|-
| reconnect || {{No}} || n/a || n/a || {{No}} || n/a || n/a ||  || n/a || {{No}} || n/a
|-
! colspan='11' | share targets
|-
! Feature !! BFGMiner !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Stratum !! hpool
|-
| default || 1 || network || 1 || 1 || 1 || 1 || 1 || 8 || 1 || 1
|-
| config || {{Yes}} || {{No}} || || {{Yes}} || || {{No}} || || || {{No}} ||
|-
| dynamic || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || || || {{No}} ||
|-
! colspan='11' | work generation
|-
! Feature !! BFGMiner !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Slush !! hpool
|-
| getwork || {{Yes}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{Yes}}
|-
| ntime roll || {{Yes}} || {{No}} || {{No}} || {{No}} || || {{Patch|uri=http://gitorious.org/~Luke-Jr/bitcoin/luke-jrs-pushpool/commits/ntimes}} || {{Yes}} || {{No}} || {{No}} || {{No}}
|-
| getmemorypool || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}}
|-
| [[getblocktemplate]] || {{Yes}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}}
|-
| coinbaser || {{No}} || {{No}} || {{Yes}} || {{Yes}} || || {{No}} || {{No}} || || {{No}} || {{No}}
|-
| gotwork || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || || {{No}} || {{No}}
|-
| setworkaux || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || || {{No}} || {{No}}
|-
| getauxblock || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || || {{No}} || {{No}}
|-
| StratumMP || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}}
|-
|-
|title='merged-mining getmemorypool'| MM gmp
|title='merged-mining getmemorypool'| MM gmp
| {{Yes}} || {{No}} || || {{No}} || ||
| {{No}} || {{No}} || {{Yes}} || {{No}} || || {{No}} || {{No}} || || {{No}} || {{No}}
|-
| full node || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}}
|-
! colspan='11' | account management
|-
! Feature !! BFGMiner !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Stratum !! hpool
|-
| multiuser || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}}
|-
| explicit users || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || || {{No}} || {{Yes}}
|-
| anon users || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || || {{Yes}} || {{Yes}}
|-
| explicit workers || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || || {{No}} || {{Yes}}
|-
|-
! colspan='7' | account management
| anon workers || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || || {{Yes}} || {{Yes}}
|-
|-
! Feature !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! Slush
| saved worklog || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || || || {{Yes}}
|-
|-
| defined users || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || ||
| saved sockets || {{No}} || {{No}} || || {{Yes}} || || {{No}} || {{No}} || || {{No}} || {{No}}
|-
|-
| anon users || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || ||
| share logging || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || || {{Yes}}
|-
|-
| defined workers || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || ||
| invalid logging || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || || || {{Yes}}
|-
|-
| anon workers || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || ||
! colspan='11' | databases
|-
|-
| saved worklog || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || ||
! Database !! BFGMiner !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Slush !! hpool
|-
|-
! colspan='7' | databases
| couchdb || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || ||{{No}} || {{No}}
|-
|-
! Database !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! Slush
| mysql || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || || {{Yes}} || {{Yes}}
|-
|-
| couchdb || {{Yes}} || {{No}} || {{No}} || {{No}} || ||
| plaintext || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || ||{{No}} || {{No}}
|-
|-
| mysql || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || ||
| postgres || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || ||{{No}} || {{No}}
|-
|-
| plaintext || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || ||
| rrd || {{No}} || {{No}} || || {{No}} || || {{No}} || {{Yes}} || || {{No}} || {{No}}
|-
|-
| postgres || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || ||
| sqlite || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || || {{No}} || {{No}}
|-
|-
| sqlite || {{No}} || {{No}} || {{Yes}} || {{Yes}} || ||
| redis || {{No}} || || || || || || || || || {{Yes}}
|}
|}
<references/>

Latest revision as of 21:59, 7 November 2014

information
Info BFGMiner bitcoind ecoinpool Eloipool PoolServerJ pushpool p2pool BitPenny Stratum hpool
language C C++ Erlang Python3 Java C Twisted C++ Twisted node.js
license GPL-3 MIT GPL-3 AGPL-3 GPL-3 GPL-2 GPL-3 No AGPL-3 GPL-3
ref. pool BTCServ Eligius P2Pool BitPenny Slush's pool Coinium
website link link link link link link link Link link
miner protocols
Protocol BFGMiner bitcoind ecoinpool Eloipool PoolServerJ pushpool p2pool BitPenny Stratum hpool
getblocktemplate No Yes No Yes No No No No No No
StratumMP Yes No No Yes No No No No Yes Yes
getwork Yes Yes Yes Yes Yes Yes Yes No No Yes
BlkPrep No No No No No No No Yes No No
UBBP No No No No No Yes No No No No
getwork extensions
Extension BFGMiner bitcoind ecoinpool Eloipool PoolServerJ pushpool p2pool BitPenny Slush hpool
hostlist No No No No No No No n/a n/a n/a
longpoll No No Yes Yes Yes Yes Yes n/a n/a n/a
midstate No No Yes Yes No No No n/a n/a n/a
noncerange No No No No Patch No n/a n/a n/a
reject-reason Yes No Yes Yes Yes Yes No n/a n/a n/a
rollntime No Yes[1] Yes Yes Yes Yes Yes n/a n/a n/a
expire=N n/a No Yes Yes Yes Yes Yes n/a n/a n/a
submitold n/a No Yes Yes No Patch Yes n/a n/a n/a
switchto No No No No No No No n/a n/a n/a
getblocktemplate/BlkPrep functionality
Function BFGMiner bitcoind ecoinpool Eloipool PoolServerJ pushpool p2pool BitPenny Stratum hpool
longpoll n/a No n/a Yes n/a n/a n/a n/a n/a n/a
noncerange n/a No n/a No n/a n/a n/a n/a n/a n/a
proposal n/a No n/a No n/a n/a n/a n/a n/a n/a
serverlist n/a No n/a No n/a n/a n/a n/a n/a n/a
getblocktemplate/BlkPrep variations
Variation BFGMiner bitcoind ecoinpool Eloipool PoolServerJ pushpool p2pool BitPenny Stratum hpool
coinbase/append n/a Yes n/a Yes n/a n/a n/a Yes n/a n/a
coinbase (set) n/a Yes n/a No n/a n/a n/a n/a n/a
generation n/a Yes n/a No n/a n/a n/a No n/a n/a
share/coinbase n/a n/a n/a Yes n/a n/a n/a n/a n/a
share/merkle n/a n/a n/a No n/a n/a n/a n/a n/a
share/truncate n/a n/a n/a No n/a n/a n/a n/a n/a
time/increment n/a Yes n/a Yes n/a n/a n/a n/a n/a
time/decrement n/a Yes n/a Yes n/a n/a n/a n/a n/a
txns/add n/a Yes n/a No n/a n/a n/a n/a n/a
txns/remove n/a Yes n/a No n/a n/a n/a n/a n/a
prevblock n/a Yes n/a No n/a n/a n/a n/a n/a
stratum functionality
Function BFGMiner bitcoind ecoinpool Eloipool PoolServerJ pushpool p2pool BitPenny Stratum hpool
job freq variable n/a n/a 55s n/a n/a n/a 30s configurable
transparency No n/a n/a Yes n/a n/a n/a No n/a
resume No n/a n/a No n/a n/a n/a No n/a
reconnect No n/a n/a No n/a n/a n/a No n/a
share targets
Feature BFGMiner bitcoind ecoinpool Eloipool PoolServerJ pushpool p2pool BitPenny Stratum hpool
default 1 network 1 1 1 1 1 8 1 1
config Yes No Yes No No
dynamic No No No Yes No No No
work generation
Feature BFGMiner bitcoind ecoinpool Eloipool PoolServerJ pushpool p2pool BitPenny Slush hpool
getwork Yes No No No Yes Yes No No No Yes
ntime roll Yes No No No Patch Yes No No No
getmemorypool No No Yes Yes Yes No Yes No No No
getblocktemplate Yes No No Yes No No No No Yes Yes
coinbaser No No Yes Yes No No No No
gotwork No No No Yes No No No No No
setworkaux No No No Yes No No No No No
getauxblock No No No No Yes No Yes No No
StratumMP Yes No No No No No No No No No
MM gmp No No Yes No No No No No
full node No Yes No No No No No Yes No No
account management
Feature BFGMiner bitcoind ecoinpool Eloipool PoolServerJ pushpool p2pool BitPenny Stratum hpool
multiuser Yes No Yes Yes Yes Yes Yes Yes Yes Yes
explicit users No Yes Yes Yes Yes Yes No No Yes
anon users Yes No Yes Yes Yes Yes Yes Yes Yes
explicit workers No Yes Yes Yes Yes Yes No No Yes
anon workers Yes No Yes Yes Yes Yes Yes Yes Yes
saved worklog No No Yes Yes Yes No No Yes
saved sockets No No Yes No No No No
share logging Yes No Yes Yes Yes Yes Yes Yes Yes
invalid logging No No Yes Yes Yes Yes No Yes
databases
Database BFGMiner bitcoind ecoinpool Eloipool PoolServerJ pushpool p2pool BitPenny Slush hpool
couchdb No No Yes No No No No No No
mysql No No Yes Yes Yes Yes No Yes Yes
plaintext Yes No Yes Yes Yes Yes Yes No No
postgres No No Yes Yes Yes Yes No No No
rrd No No No No Yes No No
sqlite No No No Yes Yes Yes No No No
redis No Yes
  1. Supported, but not advertised