capture 1.2.0
这是一个基于 PcapPlusPlus、PF_RING 和 ClickHouse 构建的高性能网络流量分析系统,专注于实时流量捕获、解析与存储。
Loading...
Searching...
No Matches
flowUniAttr Struct Reference

存储网络流统一属性的结构体 More...

#include <flowUniAttr.h>

Public Member Functions

void clear ()
 清空所有流数据
void resize ()
 调整流数据数组大小

Public Attributes

uint32_t hash_val
 流标识的哈希值
std::string src_ip
 源IP地址
std::string dst_ip
 目标IP地址
uint16_t protocol
 传输层协议类型(TCP=0, UDP=1, ICMP=2)
uint16_t src_port
 源端口号(ICMP不适用)
uint16_t dst_port
 目标端口号(ICMP不适用)
size_t packet_count = 0
 此流中的包数量
std::vector< uint32_t > packet_len
 包长度序列
std::vector< uint32_t > tv_sec
 时间戳秒数序列
std::vector< uint32_t > tv_nsec
 时间戳纳秒数序列
std::vector< uint16_t > ttl
 生存时间值序列
std::vector< uint16_t > tos
 服务类型值序列
std::vector< uint16_t > id
 IP标识值序列
std::vector< uint16_t > offset
 片偏移值序列
std::vector< uint16_t > protocol_ip
 IP协议值序列
std::vector< uint16_t > len_load
 负载长度序列
std::vector< uint32_t > ack_num
 确认号序列(仅TCP)
std::vector< uint32_t > seq_num
 序列号序列(仅TCP)
std::vector< uint16_t > flag
 TCP标志值序列
std::vector< uint16_t > window
 TCP窗口大小序列
std::vector< uint16_t > len_udp
 UDP长度值序列
std::vector< uint16_t > icmp_type
 ICMP类型值序列
std::vector< uint16_t > icmp_code
 ICMP代码值序列

Detailed Description

存储网络流统一属性的结构体

此结构包含从属于同一网络流的包中提取的所有相关属性, 包括IP头部、传输层信息和协议特定数据。所有uint8类型都转换为 uint16以防止写入CSV文件时的类型问题。

Member Function Documentation

◆ clear()

void flowUniAttr::clear ( )
inline

清空所有流数据

将流结构重置为初始状态

Note
当前实现为空函数

◆ resize()

void flowUniAttr::resize ( )
inline

调整流数据数组大小

截断超过最大长度的数组,并在需要时用零填充

Note
当前实现为空函数

Member Data Documentation

◆ ack_num

std::vector<uint32_t> flowUniAttr::ack_num

确认号序列(仅TCP)

◆ dst_ip

std::string flowUniAttr::dst_ip

目标IP地址

◆ dst_port

uint16_t flowUniAttr::dst_port

目标端口号(ICMP不适用)

◆ flag

std::vector<uint16_t> flowUniAttr::flag

TCP标志值序列

◆ hash_val

uint32_t flowUniAttr::hash_val

流标识的哈希值

◆ icmp_code

std::vector<uint16_t> flowUniAttr::icmp_code

ICMP代码值序列

◆ icmp_type

std::vector<uint16_t> flowUniAttr::icmp_type

ICMP类型值序列

◆ id

std::vector<uint16_t> flowUniAttr::id

IP标识值序列

◆ len_load

std::vector<uint16_t> flowUniAttr::len_load

负载长度序列

◆ len_udp

std::vector<uint16_t> flowUniAttr::len_udp

UDP长度值序列

◆ offset

std::vector<uint16_t> flowUniAttr::offset

片偏移值序列

◆ packet_count

size_t flowUniAttr::packet_count = 0

此流中的包数量

◆ packet_len

std::vector<uint32_t> flowUniAttr::packet_len

包长度序列

◆ protocol

uint16_t flowUniAttr::protocol

传输层协议类型(TCP=0, UDP=1, ICMP=2)

◆ protocol_ip

std::vector<uint16_t> flowUniAttr::protocol_ip

IP协议值序列

◆ seq_num

std::vector<uint32_t> flowUniAttr::seq_num

序列号序列(仅TCP)

◆ src_ip

std::string flowUniAttr::src_ip

源IP地址

◆ src_port

uint16_t flowUniAttr::src_port

源端口号(ICMP不适用)

◆ tos

std::vector<uint16_t> flowUniAttr::tos

服务类型值序列

◆ ttl

std::vector<uint16_t> flowUniAttr::ttl

生存时间值序列

◆ tv_nsec

std::vector<uint32_t> flowUniAttr::tv_nsec

时间戳纳秒数序列

◆ tv_sec

std::vector<uint32_t> flowUniAttr::tv_sec

时间戳秒数序列

◆ window

std::vector<uint16_t> flowUniAttr::window

TCP窗口大小序列


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