GNUnet 0.22.2
Constant definitions

Global constants for performance tuning. More...

Macros

#define GNUNET_CONSTANTS_DEFAULT_BW_IN_OUT
 Bandwidth (in/out) to assume initially (before either peer has communicated any particular preference). More...
 
#define GNUNET_CONSTANTS_IDLE_CONNECTION_TIMEOUT
 After how long do we consider a connection to a peer dead if we don't receive messages from the peer? More...
 
#define GNUNET_CONSTANTS_QUOTA_VIOLATION_TIMEOUT
 How long do we delay reading more from a peer after a quota violation? More...
 
#define GNUNET_CONSTANTS_SERVICE_TIMEOUT
 After how long do we consider a service unresponsive even if we assume that the service commonly does not respond instantly (DNS, Database, etc.). More...
 
#define GNUNET_CONSTANTS_MAX_CORK_DELAY
 How long do we delay messages to get larger packet sizes (CORKing)? More...
 
#define GNUNET_CONSTANTS_LATENCY_WARN
 After what amount of latency for a message do we print a warning? More...
 
#define GNUNET_CONSTANTS_IDLE_LOAD_THRESHOLD   70
 Until which load do we consider the peer overly idle (which means that we would like to use more resources). More...
 
#define GNUNET_CONSTANTS_MAX_BANDWIDTH_CARRY_S   5
 For how long do we allow unused bandwidth from the past to carry over into the future? (in seconds) More...
 
#define GNUNET_CONSTANTS_HELLO_ADDRESS_EXPIRATION
 After how long do we expire an address in a HELLO that we just validated? This value is also used for our own addresses when we create a HELLO. More...
 
#define GNUNET_CONSTANTS_DHT_MAX_EXPIRATION
 How long do we cache records at most in the DHT? More...
 
#define GNUNET_CONSTANTS_CORE_SIZE_ENCRYPTED_MESSAGE
 Size of the struct EncryptedMessage of the core (which is the per-message overhead of the core). More...
 
#define GNUNET_CONSTANTS_MAX_ENCRYPTED_MESSAGE_SIZE   (63 * 1024)
 What is the maximum size for encrypted messages? Note that this number imposes a clear limit on the maximum size of any message. More...
 
#define GNUNET_CONSTANTS_CADET_P2P_OVERHEAD   164
 Size of the CADET message overhead: = sizeof (struct GNUNET_CADET_TunnelEncryptedMessage) More...
 
#define GNUNET_CONSTANTS_MAX_CADET_MESSAGE_SIZE
 Maximum message size that can be sent on CADET. More...
 
#define GNUNET_CONSTANTS_MAX_BLOCK_SIZE   (62 * 1024)
 Largest block that can be stored in the DHT. More...
 
#define GNUNET_CONSTANTS_BLOOMFILTER_K   16
 K-value that must be used for the bloom filters in 'GET' queries. More...
 

Detailed Description

Global constants for performance tuning.

Macro Definition Documentation

◆ GNUNET_CONSTANTS_DEFAULT_BW_IN_OUT

#define GNUNET_CONSTANTS_DEFAULT_BW_IN_OUT
Value:
* 1024)
struct GNUNET_BANDWIDTH_Value32NBO GNUNET_BANDWIDTH_value_init(uint32_t bytes_per_second)
Create a new bandwidth value.
Definition: bandwidth.c:40

Bandwidth (in/out) to assume initially (before either peer has communicated any particular preference).

Should be rather low; set so that at least one maximum-size message can be send roughly once per minute.

Definition at line 50 of file gnunet_constants.h.

◆ GNUNET_CONSTANTS_IDLE_CONNECTION_TIMEOUT

#define GNUNET_CONSTANTS_IDLE_CONNECTION_TIMEOUT
Value:
#define GNUNET_TIME_UNIT_MINUTES
One minute.
struct GNUNET_TIME_Relative GNUNET_TIME_relative_multiply(struct GNUNET_TIME_Relative rel, unsigned long long factor)
Multiply relative time by a given factor.
Definition: time.c:486

After how long do we consider a connection to a peer dead if we don't receive messages from the peer?

Definition at line 57 of file gnunet_constants.h.

◆ GNUNET_CONSTANTS_QUOTA_VIOLATION_TIMEOUT

#define GNUNET_CONSTANTS_QUOTA_VIOLATION_TIMEOUT
Value:
#define GNUNET_TIME_UNIT_SECONDS
One second.

How long do we delay reading more from a peer after a quota violation?

Definition at line 63 of file gnunet_constants.h.

◆ GNUNET_CONSTANTS_SERVICE_TIMEOUT

#define GNUNET_CONSTANTS_SERVICE_TIMEOUT
Value:

After how long do we consider a service unresponsive even if we assume that the service commonly does not respond instantly (DNS, Database, etc.).

Definition at line 71 of file gnunet_constants.h.

◆ GNUNET_CONSTANTS_MAX_CORK_DELAY

#define GNUNET_CONSTANTS_MAX_CORK_DELAY
Value:

How long do we delay messages to get larger packet sizes (CORKing)?

Definition at line 77 of file gnunet_constants.h.

◆ GNUNET_CONSTANTS_LATENCY_WARN

#define GNUNET_CONSTANTS_LATENCY_WARN
Value:

After what amount of latency for a message do we print a warning?

Definition at line 83 of file gnunet_constants.h.

◆ GNUNET_CONSTANTS_IDLE_LOAD_THRESHOLD

#define GNUNET_CONSTANTS_IDLE_LOAD_THRESHOLD   70

Until which load do we consider the peer overly idle (which means that we would like to use more resources).

Note that we use 70 to leave some room for applications to consume resources "idly" (i.e. up to 85%) and then still have some room for "paid for" resource consumption.

Definition at line 94 of file gnunet_constants.h.

◆ GNUNET_CONSTANTS_MAX_BANDWIDTH_CARRY_S

#define GNUNET_CONSTANTS_MAX_BANDWIDTH_CARRY_S   5

For how long do we allow unused bandwidth from the past to carry over into the future? (in seconds)

Definition at line 100 of file gnunet_constants.h.

◆ GNUNET_CONSTANTS_HELLO_ADDRESS_EXPIRATION

#define GNUNET_CONSTANTS_HELLO_ADDRESS_EXPIRATION
Value:
#define GNUNET_TIME_UNIT_HOURS
One hour.

After how long do we expire an address in a HELLO that we just validated? This value is also used for our own addresses when we create a HELLO.

Definition at line 108 of file gnunet_constants.h.

◆ GNUNET_CONSTANTS_DHT_MAX_EXPIRATION

#define GNUNET_CONSTANTS_DHT_MAX_EXPIRATION
Value:

How long do we cache records at most in the DHT?

Definition at line 115 of file gnunet_constants.h.

◆ GNUNET_CONSTANTS_CORE_SIZE_ENCRYPTED_MESSAGE

#define GNUNET_CONSTANTS_CORE_SIZE_ENCRYPTED_MESSAGE
Value:
(24 + sizeof(struct \
GNUNET_HashCode))

Size of the struct EncryptedMessage of the core (which is the per-message overhead of the core).

Definition at line 123 of file gnunet_constants.h.

◆ GNUNET_CONSTANTS_MAX_ENCRYPTED_MESSAGE_SIZE

#define GNUNET_CONSTANTS_MAX_ENCRYPTED_MESSAGE_SIZE   (63 * 1024)

What is the maximum size for encrypted messages? Note that this number imposes a clear limit on the maximum size of any message.

Set to a value close to 64k but not so close that transports will have trouble with their headers.

Could theoretically be 64k minus (GNUNET_CONSTANTS_CORE_SIZE_ENCRYPTED_MESSAGE + #GNUNET_CONSTANTS_TRANSPORT_SIZE_OUTBOUND_MESSAGE), but we're going to be more conservative for now.

Definition at line 136 of file gnunet_constants.h.

◆ GNUNET_CONSTANTS_CADET_P2P_OVERHEAD

#define GNUNET_CONSTANTS_CADET_P2P_OVERHEAD   164

Size of the CADET message overhead: = sizeof (struct GNUNET_CADET_TunnelEncryptedMessage)

Checked for correctness in gnunet-service-cadet_tunnel.c: GCT_init().

Definition at line 146 of file gnunet_constants.h.

◆ GNUNET_CONSTANTS_MAX_CADET_MESSAGE_SIZE

#define GNUNET_CONSTANTS_MAX_CADET_MESSAGE_SIZE
Value:
#define GNUNET_CONSTANTS_CADET_P2P_OVERHEAD
Size of the CADET message overhead: = sizeof (struct GNUNET_CADET_TunnelEncryptedMessage)
#define GNUNET_CONSTANTS_MAX_ENCRYPTED_MESSAGE_SIZE
What is the maximum size for encrypted messages? Note that this number imposes a clear limit on the m...

Maximum message size that can be sent on CADET.

Definition at line 151 of file gnunet_constants.h.

◆ GNUNET_CONSTANTS_MAX_BLOCK_SIZE

#define GNUNET_CONSTANTS_MAX_BLOCK_SIZE   (62 * 1024)

Largest block that can be stored in the DHT.

Definition at line 158 of file gnunet_constants.h.

◆ GNUNET_CONSTANTS_BLOOMFILTER_K

#define GNUNET_CONSTANTS_BLOOMFILTER_K   16

K-value that must be used for the bloom filters in 'GET' queries.

Definition at line 165 of file gnunet_constants.h.