Ripples 1.0
High Performant Software Architecture For Transaction Processing
Loading...
Searching...
No Matches
config_s Struct Reference

#include <config.h>

Data Fields

bool udp_enable
 
uint16_t udp_listener_port
 
size_t udp_socket_recvbuff_size
 
size_t udp_socket_sendbuff_size
 
size_t udp_conn_vector_len
 
bool tcp_enable
 
int tcp_listener_pending_conns_max
 
uint16_t tcp_listener_port
 
size_t tcp_conns_per_vl_max
 
size_t tcp_listener_max_accept_new_conn
 
size_t tcp_conn_socket_recvbuff_size
 
size_t tcp_conn_socket_sendbuff_size
 
size_t tcp_conn_simultaneous_queries_count
 
size_t tcp_readbuff_size
 
size_t tcp_writebuff_size
 
size_t tcp_keepalive
 
size_t tcp_query_recv_timeout
 
size_t tcp_query_send_timeout
 
int epoll_num_events_tcp
 
int epoll_num_events_udp
 
size_t process_thread_count
 
size_t * process_thread_masks
 
size_t loop_slowdown_one
 
size_t loop_slowdown_two
 
size_t loop_slowdown_three
 
char * resource_1_name
 
char * resource_1_filepath
 
size_t resource_1_update_freq
 
char * application_log_name
 
char * application_log_path
 
char application_log_realpath [FILE_REALPATH_MAX]
 
size_t query_log_buffer_size
 
char * query_log_base_name
 
char * query_log_path
 
char * query_log_realpath
 
size_t query_log_rotate_size
 

Detailed Description

Structure describes application configuration object.

Field Documentation

◆ application_log_name

char* config_s::application_log_name

Name to use for application log.

◆ application_log_path

char* config_s::application_log_path

Path where to store application log.

◆ application_log_realpath

char config_s::application_log_realpath[FILE_REALPATH_MAX]

Holds the realpath for application log.

◆ epoll_num_events_tcp

int config_s::epoll_num_events_tcp

Maximum number of TCP events epoll will return in a vectorloop iteration.

◆ epoll_num_events_udp

int config_s::epoll_num_events_udp

Maximum number of UDP events epoll will return in a vectorloop iteration.

◆ loop_slowdown_one

size_t config_s::loop_slowdown_one

Sleep time in microseconds for loop slowdown stage one.

◆ loop_slowdown_three

size_t config_s::loop_slowdown_three

Sleep time in microseconds for loop slowdown stage three.

◆ loop_slowdown_two

size_t config_s::loop_slowdown_two

Sleep time in microseconds for loop slowdown stage two.

◆ process_thread_count

size_t config_s::process_thread_count

Number of vectorloop (DNS query processing) threads to start.

◆ process_thread_masks

size_t* config_s::process_thread_masks

Array of vectorloop thread masks, one for each thread, and each thread can be assigned to only one CPU.

◆ query_log_base_name

char* config_s::query_log_base_name

Query log base name.

◆ query_log_buffer_size

size_t config_s::query_log_buffer_size

Query log buffer size.

◆ query_log_path

char* config_s::query_log_path

Path on disk where to store query logs.

◆ query_log_realpath

char* config_s::query_log_realpath

Query log directory realpath

◆ query_log_rotate_size

size_t config_s::query_log_rotate_size

Size at which to rotate query log.

◆ resource_1_filepath

char* config_s::resource_1_filepath

Full file path for resource 1.

◆ resource_1_name

char* config_s::resource_1_name

Name of resource 1.

◆ resource_1_update_freq

size_t config_s::resource_1_update_freq

Frequency at which to check for updated resource 1.

◆ tcp_conn_simultaneous_queries_count

size_t config_s::tcp_conn_simultaneous_queries_count

Number of queries (in TCP conn read buffer) to parse and resolve simultaneously.

This also sets the tcp read buffer size as tcp_conn_simultaneous_queries_count * (2 + dns_query_request_max_len).

This also sets the tcp write buffer size as tcp_conn_simultaneous_queries_count * (2 + dns_query_response_max_len).

◆ tcp_conn_socket_recvbuff_size

size_t config_s::tcp_conn_socket_recvbuff_size

TCP socket receive buffer size.

◆ tcp_conn_socket_sendbuff_size

size_t config_s::tcp_conn_socket_sendbuff_size

TCP socket send buffer size.

◆ tcp_conns_per_vl_max

size_t config_s::tcp_conns_per_vl_max

Maximum number of active TCP connections per vectorloop.

◆ tcp_enable

bool config_s::tcp_enable

Flag to indicate if receiving DNS queries over TCP should be enabled.

◆ tcp_keepalive

size_t config_s::tcp_keepalive

Number of miliseconds TCP connection will stay open and IDLE after receiving a query.

◆ tcp_listener_max_accept_new_conn

size_t config_s::tcp_listener_max_accept_new_conn

Maximum number of TCP connections that will be accepted per vectorloop interation.

◆ tcp_listener_pending_conns_max

int config_s::tcp_listener_pending_conns_max

Maximum number of pending connections that TCP listener will allow to be queued. When this max is reached new connection attempts are rejected.

◆ tcp_listener_port

uint16_t config_s::tcp_listener_port

TCP listener port.

◆ tcp_query_recv_timeout

size_t config_s::tcp_query_recv_timeout

Number of miliseconds TCP connection will wait to receive a full query. This timeout applies when connection is first created, and also when a subsequent partial query is received.

◆ tcp_query_send_timeout

size_t config_s::tcp_query_send_timeout

Number of miliseconds TCP connection will wait for socket to become unblocked for write. This is basically total time we are willing to wait for query response to be sent over TCP.

◆ tcp_readbuff_size

size_t config_s::tcp_readbuff_size

Size of read buffer in connection object. This setting does not have equivalent CLI option. Instead it is calculated based on setting "tcp_conn_simultaneous_queries_count" * (RIP_NS_PACKETSZ + 2).

◆ tcp_writebuff_size

size_t config_s::tcp_writebuff_size

Size of write buffer in connection object. This setting does not have equivalent CLI option. Instead it starts at "tcp_conn_simultaneous_queries_count" * (RIP_NS_PACKETSZ + 2) and increased in increments of RIP_NS_UDP_MAXMSG until it reaches max size of RIP_NS_MAXMSG (64k).

◆ udp_conn_vector_len

size_t config_s::udp_conn_vector_len

Number of entries in UDP receive vector. This setting is also used to size UDP write vector and UDP queries vector.

◆ udp_enable

bool config_s::udp_enable

Flag to indicate if receiving DNS queries over UDP should be enabled.

◆ udp_listener_port

uint16_t config_s::udp_listener_port

UDP listener port.

◆ udp_socket_recvbuff_size

size_t config_s::udp_socket_recvbuff_size

UDP socket receive buffer size.

◆ udp_socket_sendbuff_size

size_t config_s::udp_socket_sendbuff_size

UDP socket send buffer size.


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