[][src]Struct pea2pea::NodeConfig

pub struct NodeConfig {
    pub name: Option<String>,
    pub listener_ip: IpAddr,
    pub desired_listening_port: Option<u16>,
    pub allow_random_port: bool,
    pub protocol_handler_queue_depth: usize,
    pub conn_read_buffer_size: usize,
    pub conn_write_buffer_size: usize,
    pub conn_inbound_queue_depth: usize,
    pub conn_outbound_queue_depth: usize,
    pub invalid_read_delay_secs: u64,
    pub max_connections: u16,
    pub max_handshake_time_ms: u64,
}

The node's configuration.

Fields

name: Option<String>

The name/identifier of the node.

note: if set to None, the Node will automatically be assigned a sequential, zero-based numeric identifier.

listener_ip: IpAddr

The IP address the node's connection listener should bind to.

desired_listening_port: Option<u16>

The desired listening port of the node.

allow_random_port: bool

Allow listening on a different port if desired_listening_port is unavailable.

protocol_handler_queue_depth: usize

The depth of the queues passing connections to protocol handlers.

conn_read_buffer_size: usize

The size of a per-connection buffer for reading inbound messages.

conn_write_buffer_size: usize

The size of a per-connection buffer for writing outbound messages.

conn_inbound_queue_depth: usize

The depth of per-connection queues used to process inbound messages.

conn_outbound_queue_depth: usize

The depth of per-connection queues used to send outbound messages.

invalid_read_delay_secs: u64

The delay on the next read from a connection that can't be read from.

max_connections: u16

The maximum number of active connections the node can maintain.

note: this number can very briefly be breached by 1 in case of inbound connection attempts. It can never be breached by outbound connection attempts, though.

max_handshake_time_ms: u64

The maximum time allowed for a connection to perform a handshake before it is rejected.

Trait Implementations

impl Clone for NodeConfig[src]

impl Debug for NodeConfig[src]

impl Default for NodeConfig[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.