Skip to content

Latest commit

 

History

History
41 lines (27 loc) · 2.01 KB

sip-1.md

File metadata and controls

41 lines (27 loc) · 2.01 KB
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

Abstract

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.

Motivation

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.

Specification

Memory-Related Parameters

  • maximum number of unconfirmed transactions

Network-Related Parameters

  • maximum API answer threshold

Computation-Related Parameters

- maximum CPU cores used
- GPU support enabled

Reference Implementation

Copyright

Copyright and related rights waived via CC0.