Expand description
§Protocol-wide constants
One centralised place for every tunable number that affects on-network behaviour: minimum proof-of-work for each RPC class, blob size limits, bootstrap domains, DDoS thresholds, cache sizes, TLS / HTTP timeouts, bucket durations, certificate renewal cadences, and so on.
§Testing vs production
Two multipliers compensate automatically when running under cfg(test) or
debug_assertions:
POW_REDUCTION_FACTORslashes the mandatory PoW so tests finish quickly.CLOCK_LENIENCE_FACTORwidens acceptable clock drift so virtual-clock tests don’t spuriously reject signed messages.
Any constant here that participates in protocol validation must be the same across
all peers — changing a POW_MINIMUM_* value is effectively a soft fork.
Constants§
- ANNOUNCE_
V1_ NUM_ PEERS - BOOTSTRAP_
DOMAINS - BOOTSTRAP_
V1_ NUM_ PEERS - CLIENT_
FEEDBACK_ POW_ NUMERAIRE - CLIENT_
POST_ BUNDLE_ CACHE_ DURATION - CLIENT_
POST_ BUNDLE_ FEEDBACK_ CACHE_ DURATION - CLIENT_
POST_ TIMESTAMP_ DELTA_ THRESHOLD - CLOCK_
LENIENCE_ FACTOR - ENCODED_
POST_ BUNDLE_ V1_ ELAPSED_ THRESHOLD_ MILLIS - ENCODED_
POST_ BUNDLE_ V1_ OVERFLOWED_ NUM_ POSTS - ENCODED_
POST_ BUNDLE_ V1_ OVERFLOWED_ NUM_ POSTS_ GRANTED - HTTPS_
SERVER_ TRANSPORT_ BODY_ READ_ TIMEOUT_ SECS - HTTPS_
SERVER_ TRANSPORT_ HEADER_ READ_ TIMEOUT_ SECS - HTTPS_
SERVER_ TRANSPORT_ MAX_ CONNECTIONS - HTTPS_
SERVER_ TRANSPORT_ SHUTDOWN_ TIMEOUT_ SECS - HTTPS_
SERVER_ TRANSPORT_ TLS_ HANDSHAKE_ TIMEOUT_ SECS - MILLIS_
TO_ WAIT_ BETWEEN_ ANNOUNCES - MILLIS_
TO_ WAIT_ BETWEEN_ BOOTSTRAPS - MILLIS_
TO_ WAIT_ BETWEEN_ CERT_ RENEWALS - MILLIS_
TO_ WAIT_ BETWEEN_ CERT_ RENEWAL_ CHECKS - MILLIS_
TO_ WAIT_ BETWEEN_ CERT_ RENEWAL_ FAILURES - MILLIS_
TO_ WAIT_ BETWEEN_ PEER_ DUMPS - MINIMUM_
PEERS_ TO_ STOP_ BOOTSTRAPPING - POW_
MAX_ CLOCK_ DRIFT_ MILLIS - POW_
MINIMUM_ PER_ FEEDBACK - POW_
MINIMUM_ PER_ POST - POW_
MINIMUM_ PER_ RPC_ SERVER_ KNOWN - POW_
MINIMUM_ PER_ RPC_ SERVER_ UNKNOWN - POW_
MINIMUM_ PER_ URL_ FETCH - POW_
REDUCTION_ FACTOR - PROTOCOL_
MAX_ BLOB_ SIZE_ REQUEST - PROTOCOL_
MAX_ BLOB_ SIZE_ RESPONSE - REDUNDANT_
SERVERS_ PER_ POST - SERVER_
DDOS_ BAD_ REQUEST_ PENALTY - SERVER_
DDOS_ DECAY_ PER_ SECOND - SERVER_
DDOS_ IPSET_ SET_ NAME - SERVER_
DDOS_ MAX_ CONNECTIONS_ PER_ IP - SERVER_
DDOS_ SCORE_ THRESHOLD - SERVER_
KADEMLIA_ MAX_ PEERS_ PER_ BUCKET - SERVER_
KEY_ POW_ MIN - SERVER_
POST_ BUNDLE_ CACHE_ MAX_ BYTES - SERVER_
POST_ BUNDLE_ CACHE_ MAX_ ORIGINATORS_ PER_ LOCATION - SERVER_
POST_ BUNDLE_ FEEDBACK_ CACHE_ MAX_ BYTES - TESTING
- TRANSPORT_
BYTES_ GATHERER_ COMPACT_ THRESHOLD - USE_
PRODUCTION_ LETS_ ENCRYPT