Skip to main content

Module pipeline

Module pipeline 

Source
Expand description

Packet pipeline for the HOPR protocol. HOPR packet processing pipeline.

Re-exportsΒ§

pub use builder::PacketPipelineBuilder;
pub use builder::Unset;
pub use config::AcknowledgementPipelineConfig;
pub use config::PacketPipelineConfig;
pub use config::PoolArbitrationConfig;

ModulesΒ§

builder πŸ”’
Builder for constructing the HOPR packet pipeline.
config πŸ”’
Configuration structures for the HOPR packet processing pipeline.

EnumsΒ§

NodeType
Node type for which the packet processing pipeline is being constructed.
PacketPipelineProcesses

ConstantsΒ§

DEFAULT_ACK_INPUT_CONCURRENCY πŸ”’
Default concurrency for the incoming acknowledgement processing pipeline when not overridden via AcknowledgementPipelineConfig::ack_input_concurrency.
DEFAULT_ACK_OUTPUT_CONCURRENCY πŸ”’
Default concurrency for the outgoing acknowledgement processing pipeline when not overridden via AcknowledgementPipelineConfig::ack_output_concurrency.
PACKET_DECODING_TIMEOUT πŸ”’
PACKET_ENCODING_TIMEOUT πŸ”’
PIPELINE_CONCURRENCY_PER_CPU πŸ”’
Multiplier applied to the CPU count to size each pipeline stage’s ready-queue depth.
QUEUE_SEND_TIMEOUT πŸ”’

FunctionsΒ§

default_pipeline_concurrency πŸ”’
Default per-stage pipeline concurrency (the ready-queue depth feeding the shared Rayon pool) used when a PacketPipelineConfig concurrency field is unset or zero.
run_packet_pipeline_inner πŸ”’
Shared implementation of the packet pipeline used by PacketPipelineBuilder’s terminal build_for_* methods.
start_drain_incoming_ack_pipeline πŸ”’
Drains incoming acknowledgements without forwarding them to an UnacknowledgedTicketProcessor.
start_incoming_packet_pipeline πŸ”’
Performs HOPR protocol decoding of incoming packets into Application protocol packets.
start_outgoing_ack_pipeline πŸ”’
start_outgoing_packet_pipeline πŸ”’
Performs encoding of outgoing Application protocol packets into HOPR protocol outgoing packets.
start_relay_incoming_ack_pipeline πŸ”’