Bitcoin ABC 0.30.3
P2P Digital Currency
Public Attributes | List of all members
DataRequestParameters Struct Reference

Public Attributes

const size_t max_peer_request_in_flight
 Maximum number of in-flight data requests from a peer. More...
 
const size_t max_peer_announcements
 Maximum number of inventories to consider for requesting, per peer. More...
 
const std::chrono::seconds nonpref_peer_delay
 How long to delay requesting data from non-preferred peers. More...
 
const std::chrono::seconds overloaded_peer_delay
 How long to delay requesting data from overloaded peers (see max_peer_request_in_flight). More...
 
const std::chrono::microseconds getdata_interval
 How long to wait (in microseconds) before a data request from an additional peer. More...
 
const NetPermissionFlags bypass_request_limits_permissions
 Permission flags a peer requires to bypass the request limits tracking limits and delay penalty. More...
 

Detailed Description

Definition at line 120 of file net_processing.cpp.

Member Data Documentation

◆ bypass_request_limits_permissions

const NetPermissionFlags DataRequestParameters::bypass_request_limits_permissions

Permission flags a peer requires to bypass the request limits tracking limits and delay penalty.

Definition at line 157 of file net_processing.cpp.

◆ getdata_interval

const std::chrono::microseconds DataRequestParameters::getdata_interval

How long to wait (in microseconds) before a data request from an additional peer.

Definition at line 151 of file net_processing.cpp.

◆ max_peer_announcements

const size_t DataRequestParameters::max_peer_announcements

Maximum number of inventories to consider for requesting, per peer.

It provides a reasonable DoS limit to per-peer memory usage spent on announcements, while covering peers continuously sending INVs at the maximum rate (by our own policy, see INVENTORY_BROADCAST_PER_SECOND) for several minutes, while not receiving the actual data (from any peer) in response to requests for them.

Definition at line 136 of file net_processing.cpp.

◆ max_peer_request_in_flight

const size_t DataRequestParameters::max_peer_request_in_flight

Maximum number of in-flight data requests from a peer.

It is not a hard limit, but the threshold at which point the overloaded_peer_delay kicks in.

Definition at line 126 of file net_processing.cpp.

◆ nonpref_peer_delay

const std::chrono::seconds DataRequestParameters::nonpref_peer_delay

How long to delay requesting data from non-preferred peers.

Definition at line 139 of file net_processing.cpp.

◆ overloaded_peer_delay

const std::chrono::seconds DataRequestParameters::overloaded_peer_delay

How long to delay requesting data from overloaded peers (see max_peer_request_in_flight).

Definition at line 145 of file net_processing.cpp.


The documentation for this struct was generated from the following file: