sip | title | description | author | status | type | category | created |
---|---|---|---|---|---|---|---|
1 |
Dynamic BRS Node Capabilities |
This document specifies a dynamic parameter space for Signum nodes |
PoCC/rico666 <[email protected]> |
Final |
Standards Track |
Interface |
2018-01-25 |
This document specifies a dynamic parameter space for Signum nodes, contrary to some hard-coded values of the current NRS/pre-Signum implementation. It covers computational resources available to Signum nodes, such as computational and memory capacity.
In the wake of the July 2017 spam attacks to the Signum network, "wallets" (more precisely: the NRS implementation) were given a hard limit of how many unconfirmed transactions to hold in memory. Before this, the number of unconfirmed transactions was not limited. This caused a potential memory DoS-vulnerability which the author(s) of the spam attack exploited: By flooding the network with thousands of transactions, nodes eventually ran out of memory and crashed.
While leaving an unlimited parameter space is a bad idea, hard-capping this parameter also does not serve the network best, because it neglects various node configurations and their various capabilities. In short: some nodes may have much more resources available than others and if a node operator decides to make these resources available, (lack of) software configuration should not prevent this. The configuration of the Singum-Node should allow to map these capabilities to the real constraints of these nodes, or those the node operators would like to provide.
- maximum number of unconfirmed transactions
- maximum API answer threshold
- maximum CPU cores used
- GPU support enabled
Copyright and related rights waived via CC0.