|
xrpld
|
Classes | |
| class | Charge |
| A consumption charge. More... | |
| class | Consumer |
| An endpoint that consumes resources. More... | |
| struct | Entry |
| struct | Import |
| A set of imported consumer data from a gossip origin. More... | |
| struct | Key |
| class | Logic |
| struct | Gossip |
| Data format for exchanging consumption information across peers. More... | |
| class | Manager |
| Tracks load and resource consumption. More... | |
| class | ManagerImp |
| class | ResourceManagerTest |
Typedefs | |
| using | clock_type = beast::AbstractClock<std::chrono::steady_clock> |
Enumerations | |
| enum class | Kind { Inbound , Outbound , Unlimited } |
| Kind of consumer. More... | |
| enum class | Disposition { Ok , Warn , Drop } |
| The disposition of a consumer after applying a load charge. More... | |
Functions | |
| std::ostream & | operator<< (std::ostream &os, Charge const &v) |
| std::ostream & | operator<< (std::ostream &os, Consumer const &v) |
| std::ostream & | operator<< (std::ostream &os, Entry const &v) |
| std::unique_ptr< Manager > | makeManager (beast::insight::Collector::ptr const &collector, beast::Journal journal) |
| Charge const | kFeeMalformedRequest (200, "malformed request") |
| Charge const | kFeeRequestNoReply (10, "unsatisfiable request") |
| Charge const | kFeeInvalidSignature (2000, "invalid signature") |
| Charge const | kFeeUselessData (150, "useless data") |
| Charge const | kFeeInvalidData (400, "invalid data") |
| Charge const | kFeeMalformedData (2000, "malformed data") |
| Charge const | kFeeMalformedRpc (100, "malformed RPC") |
| Charge const | kFeeReferenceRpc (20, "reference RPC") |
| Charge const | kFeeExceptionRpc (100, "exceptioned RPC") |
| Charge const | kFeeMediumBurdenRpc (400, "medium RPC") |
| Charge const | kFeeHeavyBurdenRpc (3000, "heavy RPC") |
| Charge const | kFeeTrivialPeer (1, "trivial peer request") |
| Charge const | kFeeModerateBurdenPeer (250, "moderate peer request") |
| Charge const | kFeeHeavyBurdenPeer (2000, "heavy peer request") |
| Charge const | kFeeWarning (4000, "received warning") |
| Charge const | kFeeDrop (6000, "dropped") |
| TEST_F (ResourceManagerTest, limited_warn_drop) | |
| TEST_F (ResourceManagerTest, unlimited_warn_drop) | |
| TEST_F (ResourceManagerTest, charges) | |
| TEST_F (ResourceManagerTest, imports) | |
| TEST_F (ResourceManagerTest, import) | |
Variables | |
| static constexpr auto | kWarningThreshold = 5000 |
| Tunable constants. | |
| static constexpr auto | kDropThreshold = 25000 |
| static constexpr auto | kDecayWindowSeconds = 32 |
| static constexpr auto | kMinimumGossipBalance = 1000 |
| static constexpr std::chrono::seconds | kSecondsUntilExpiration {300} |
| static constexpr std::chrono::seconds | kGossipExpirationSeconds {30} |
| Charge const | kFeeMalformedRequest |
| Schedule of fees charged for imposing load on the server. | |
| Charge const | kFeeRequestNoReply |
| Charge const | kFeeInvalidSignature |
| Charge const | kFeeUselessData |
| Charge const | kFeeInvalidData |
| Charge const | kFeeMalformedData |
| Charge const | kFeeMalformedRpc |
| Charge const | kFeeReferenceRpc |
| Charge const | kFeeExceptionRpc |
| Charge const | kFeeMediumBurdenRpc |
| Charge const | kFeeHeavyBurdenRpc |
| Charge const | kFeeTrivialPeer |
| Charge const | kFeeModerateBurdenPeer |
| Charge const | kFeeHeavyBurdenPeer |
| Charge const | kFeeWarning |
| Charge const | kFeeDrop |
|
strong |
Kind of consumer.
kindInbound: Inbound connection. kindOutbound: Outbound connection. kindUnlimited: Inbound connection with no resource limits, but could be subjected to administrative restrictions, such as use of some RPC commands like "stop".
| Enumerator | |
|---|---|
| Inbound | |
| Outbound | |
| Unlimited | |
|
strong |
The disposition of a consumer after applying a load charge.
| Enumerator | |
|---|---|
| Ok | No action required. Consumer should be warned that consumption is high. |
| Warn | Consumer should be disconnected for excess consumption. |
| Drop | |
Definition at line 8 of file Disposition.h.
| std::ostream & xrpl::resource::operator<< | ( | std::ostream & | os, |
| Charge const & | v ) |
Definition at line 35 of file Charge.cpp.
| std::ostream & xrpl::resource::operator<< | ( | std::ostream & | os, |
| Consumer const & | v ) |
Definition at line 138 of file Consumer.cpp.
| std::ostream & xrpl::resource::operator<< | ( | std::ostream & | os, |
| Entry const & | v ) |
| std::unique_ptr< Manager > xrpl::resource::makeManager | ( | beast::insight::Collector::ptr const & | collector, |
| beast::Journal | journal ) |
Definition at line 162 of file ResourceManager.cpp.
| Charge const xrpl::resource::kFeeMalformedRequest | ( | 200 | , |
| "malformed request" | ) |
| Charge const xrpl::resource::kFeeRequestNoReply | ( | 10 | , |
| "unsatisfiable request" | ) |
| Charge const xrpl::resource::kFeeInvalidSignature | ( | 2000 | , |
| "invalid signature" | ) |
| Charge const xrpl::resource::kFeeUselessData | ( | 150 | , |
| "useless data" | ) |
| Charge const xrpl::resource::kFeeInvalidData | ( | 400 | , |
| "invalid data" | ) |
| Charge const xrpl::resource::kFeeMalformedData | ( | 2000 | , |
| "malformed data" | ) |
| Charge const xrpl::resource::kFeeMalformedRpc | ( | 100 | , |
| "malformed RPC" | ) |
| Charge const xrpl::resource::kFeeReferenceRpc | ( | 20 | , |
| "reference RPC" | ) |
| Charge const xrpl::resource::kFeeExceptionRpc | ( | 100 | , |
| "exceptioned RPC" | ) |
| Charge const xrpl::resource::kFeeMediumBurdenRpc | ( | 400 | , |
| "medium RPC" | ) |
| Charge const xrpl::resource::kFeeHeavyBurdenRpc | ( | 3000 | , |
| "heavy RPC" | ) |
| Charge const xrpl::resource::kFeeTrivialPeer | ( | 1 | , |
| "trivial peer request" | ) |
| Charge const xrpl::resource::kFeeModerateBurdenPeer | ( | 250 | , |
| "moderate peer request" | ) |
| Charge const xrpl::resource::kFeeHeavyBurdenPeer | ( | 2000 | , |
| "heavy peer request" | ) |
| Charge const xrpl::resource::kFeeWarning | ( | 4000 | , |
| "received warning" | ) |
| Charge const xrpl::resource::kFeeDrop | ( | 6000 | , |
| "dropped" | ) |
| xrpl::resource::TEST_F | ( | ResourceManagerTest | , |
| limited_warn_drop | ) |
| xrpl::resource::TEST_F | ( | ResourceManagerTest | , |
| unlimited_warn_drop | ) |
| xrpl::resource::TEST_F | ( | ResourceManagerTest | , |
| charges | ) |
| xrpl::resource::TEST_F | ( | ResourceManagerTest | , |
| imports | ) |
| xrpl::resource::TEST_F | ( | ResourceManagerTest | , |
| import | ) |
|
staticconstexpr |
Tunable constants.
Definition at line 12 of file include/xrpl/resource/detail/Tuning.h.
|
staticconstexpr |
Definition at line 15 of file include/xrpl/resource/detail/Tuning.h.
|
staticconstexpr |
Definition at line 18 of file include/xrpl/resource/detail/Tuning.h.
|
staticconstexpr |
Definition at line 21 of file include/xrpl/resource/detail/Tuning.h.
|
staticconstexpr |
Definition at line 24 of file include/xrpl/resource/detail/Tuning.h.
|
staticconstexpr |
Definition at line 27 of file include/xrpl/resource/detail/Tuning.h.
| Charge const xrpl::resource::kFeeMalformedRequest(200, "malformed request") |
Schedule of fees charged for imposing load on the server.
| Charge const xrpl::resource::kFeeRequestNoReply(10, "unsatisfiable request") |
| Charge const xrpl::resource::kFeeInvalidSignature(2000, "invalid signature") |
| Charge const xrpl::resource::kFeeUselessData(150, "useless data") |
| Charge const xrpl::resource::kFeeInvalidData(400, "invalid data") |
| Charge const xrpl::resource::kFeeMalformedData(2000, "malformed data") |
| Charge const xrpl::resource::kFeeMalformedRpc(100, "malformed RPC") |
| Charge const xrpl::resource::kFeeReferenceRpc(20, "reference RPC") |
| Charge const xrpl::resource::kFeeExceptionRpc(100, "exceptioned RPC") |
| Charge const xrpl::resource::kFeeMediumBurdenRpc(400, "medium RPC") |
| Charge const xrpl::resource::kFeeHeavyBurdenRpc(3000, "heavy RPC") |
| Charge const xrpl::resource::kFeeTrivialPeer(1, "trivial peer request") |
| Charge const xrpl::resource::kFeeModerateBurdenPeer(250, "moderate peer request") |
| Charge const xrpl::resource::kFeeHeavyBurdenPeer(2000, "heavy peer request") |
| Charge const xrpl::resource::kFeeWarning(4000, "received warning") |
| Charge const xrpl::resource::kFeeDrop(6000, "dropped") |