会话统计在做什么
会话统计把抓包文件按五元组聚合,给出每条会话的包数、字节数、持续时长与速率,并能按列排序。它的价值在于把「几千条报文」压缩成「几十条会话」,一眼就能看出哪条流量最大、哪条最短命、哪条持续时间异常。选中某一行可以右键直接生成过滤条件或绘制时序图,因此它常常是从宏观到微观的入口,而不是终点。统计范围可以限制在当前显示过滤器筛出的报文上。
基本信息
| 入口 | 统计菜单里的会话选项,可切换 TCP、UDP 与网络层标签 |
|---|---|
| 聚合维度 | 源地址、源端口、目的地址、目的端口 |
| 统计列 | 包数、字节数、持续时间、每分钟包数与字节数 |
| 便捷操作 | 右键应用为过滤器、绘制时序图、复制为 CSV |
| 范围限制 | 勾选限制到显示过滤器即可只统计当前筛出的流量 |
典型使用场景
- 找流量异常的对端:按字节数排序查看占用最大的会话
- 发现连接风暴:按包数排序找到短时间大量小包的会话
- 核对业务规模:统计某个端口上的会话数量与持续时间分布
- 定位重传集中在哪条会话:先按流锁定再叠加异常标注
- 与业务量核对:把会话数与监控指标对比,判断抓包是否完整
操作路径
操作路径
1) 打开会话统计对话框,切换到 TCP 或 UDP 标签
2) 按字节数或持续时间列排序,挑出可疑行
3) 右键 → 应用为过滤器 → 选中,回到主窗口看细节
4) 需要时序视角时右键 → 绘制该会话的图
5) 勾选限制到显示过滤器,可只统计当前视图内的会话统计列读法
| 列 | 含义 | 异常提示 |
|---|---|---|
| 包数 | 该会话的报文总数 | 包数极多而字节很少,多为小包密集交互或扫描 |
| 字节数 | 双向字节总量 | 明显高于同类的会话值得优先检查 |
| 持续时间 | 首个到最后一个报文的时间差 | 极短说明连接建立后立刻结束,极长可能有保活 |
| 速率 | 每秒包数与字节数 | 速率与业务画像不符时需核对是否被压测 |
| 按方向分列 | 分别统计两个方向的流量 | 单向流量明显偏多说明有一侧在大量发送 |
会话统计基于抓到的样本,抓包点丢包会让会话数与字节数失真。用它做定量结论前,先确认抓包进程本身没有丢包。
大量持续时间极短的会话通常意味着连接频繁重建,可能是连接池配置偏小或客户端未复用连接,不应简单归因为网络抖动。
命令行等价统计
命令行等价统计
tshark -r a.pcap -q -z conv,tcp | head -20 # TCP 会话统计
capinfos -c -s a.pcap # 总包数与文件大小,核对抓包完整性
tshark -r a.pcap -q -z io,stat,1 | head -20 # 按秒的流量分布判读要点
- 先按量级排序看头几条,再逐层收窄,比逐包翻阅效率高得多
- 同一对地址之间出现大量会话,说明存在短连接或重连,值得结合超时配置看
- 会话数与业务预期差一个量级时,先怀疑抓包点或过滤条件而不是业务突增
- 对某条可疑会话应用过滤器后,再叠加异常标注就能快速理解它为什么可疑