You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Originally on #98 I added a section to the Mining Protocol specs introducing a formal definition of Proxy.
I felt that was necessary, since there's multiple mentions to the term Proxy on the Mining Protocol specs, without a proper definition, which feels like a chicken-and-egg kind of problem.
However, @jakubtrnka feedback was that this kind of definition deserves a separate annex, given that this is a kind of application of the protocol.
Below are some different proxy definitions suggested by @jakubtrnka :
Multiplexing proxy
minimalistic design, minimum or even zero configuration options
simple passthrough-proxy for extended channels.
multiplexes standard channels through a single upstream connection via group channels
no difficulty/target management - everything managed via upstream server
only manages group, channels, ids, exranonce-prefixes. Merges and dispatches messages coming from downstream or upstream respectively. Uses channel_id based logic.
Demultiplexing proxy
generic application - mainly for demonstration purposes
simple pass-through for extended channels
groups downstream multiplexed standard channels into groups based on a specific criteria - either username, device-type etc... and splits them into separate upstream connections
this app would typically be used together with multiplexing proxy
organizes different groups using SetGroupChannel
Aggregation proxy
logically separates down- and upstream sides
maintains only extended upstream channels - main purpose is to reduce number of mining sessions by aggregation
splits hashing space of the upstream job and assigns multiple smaller extended channels or standard channels to a given mining job.
does difficulty/target management
handles user identities
Translator proxy
V2 to V1 down-to-up translation
zero configuration trivial translation layer for sv2-native miners and legacy sv1 pools
V1 to V2 down-to-up translation
trivial translation layer for legacy sv1 miners and sv2 pool
there is a single configuration option: whether a standard or an extended channel should be opened.
The text was updated successfully, but these errors were encountered:
Originally on #98 I added a section to the Mining Protocol specs introducing a formal definition of Proxy.
I felt that was necessary, since there's multiple mentions to the term Proxy on the Mining Protocol specs, without a proper definition, which feels like a chicken-and-egg kind of problem.
However, @jakubtrnka feedback was that this kind of definition deserves a separate annex, given that this is a kind of application of the protocol.
#98 (comment)
Below are some different proxy definitions suggested by @jakubtrnka :
Multiplexing proxy
Demultiplexing proxy
organizes different groups using SetGroupChannel
Aggregation proxy
Translator proxy
V2 to V1 down-to-up translation
V1 to V2 down-to-up translation
The text was updated successfully, but these errors were encountered: