Module stream

Module stream 

Source
Expand description

TCP stream processing and application-layer parsing.

This module provides TCP connection tracking and stream reassembly, enabling parsing of application-layer protocols that span multiple packets.

§Components

§Built-in Stream Parsers

  • HTTP (request/response parsing)
  • TLS (handshake analysis, SNI extraction)

§Example

use pcapsql_core::stream::{StreamManager, StreamConfig};

let config = StreamConfig::default();
let mut manager = StreamManager::new(config);

// Process TCP segments from packets...
// manager.process_segment(...);

Re-exports§

pub use parsers::DecryptingTlsStreamParser;
pub use parsers::Http2StreamParser;
pub use parsers::HttpStreamParser;
pub use parsers::TlsStreamParser;

Modules§

parsers
Stream protocol parsers.

Structs§

Connection
A tracked TCP connection.
ConnectionKey
Normalized connection key (lower IP/port first for consistent lookup).
ConnectionTracker
Tracks TCP connections.
ParsedMessage
A parsed application-layer message.
Segment
A TCP segment waiting to be reassembled.
SequenceGap
A gap in the sequence space (missing data).
StreamBuffer
Buffer for one direction of a TCP stream.
StreamConfig
Configuration for the StreamManager.
StreamContext
Context for stream parsing.
StreamKey
Key for stream buffer lookup.
StreamManager
Central orchestrator for TCP stream processing.
StreamRegistry
Registry of available stream parsers.
StreamStats
Stream statistics.
TcpFlags
TCP flags for state transitions.
TcpReassembler
TCP stream reassembler.

Enums§

ConnectionState
TCP connection state (simplified state machine).
Direction
Direction of data flow in a TCP connection.
StreamParseResult
Result of stream parsing.

Traits§

StreamParser
Trait for parsing application protocols from reassembled streams.