4. 流量模型与基线测量

容量规划的第一步不是买设备,而是把“网络里到底跑了多少流量、从哪里到哪里、什么时候最忙”这件事量化清楚。没有基线,任何扩容都只是猜测。本节围绕流量模型与基线测量展开,重点解决三个问题:如何用流量矩阵描述端到端需求,如何区分峰值与均值以避免被平均值误导,以及如何用 NetFlow、IPFIX、SNMP 和流式遥测把数据真正采上来。

一、流量矩阵:把“总量”拆成“谁到谁”

链路利用率只能告诉你某条链路忙不忙,却无法回答“这条链路的流量来自哪个接入区、去往哪个数据中心”。流量矩阵(Traffic Matrix)用二维结构描述源与目的之间的流量需求,行表示源节点(或源区域),列表示目的节点,单元格表示该源到该目的的流量速率。对于园区网络,节点通常抽象为核心层、各楼栋汇聚区、数据中心出口、互联网出口和 WAN 出口。

一个简化的园区流量矩阵示例如下(单位:Mbps,均为教学假设值):

源 \ 目的核心-数据中心核心-互联网核心-WAN楼栋A汇聚楼栋B汇聚
楼栋A汇聚42026090—35
楼栋B汇聚3101807040—
数据中心—15060380290
互联网140—20230160

矩阵的价值在于:把每条链路的负载还原为若干条源-目的流,从而判断扩容应该加在接入层、汇聚上行还是核心互联。例如楼栋A到数据中心为 420 Mbps,若该楼栋上行只有 1 Gbps,则仅此一条流就占用了 42% 的带宽,再叠加互联网与 WAN 流量,上行链路在峰值时段极易拥塞。

二、峰值与均值:为什么平均值会骗人

均值反映长期趋势,峰值决定链路是否丢包。园区流量的典型特征是“均值不高、峰值集中”:工作日 9:00–11:00 和 14:00–16:00 出现双峰,午休时段回落,夜间极低。若按日均值规划,链路可能在每天两小时内持续拥塞。

工程上常用两个指标:峰值速率(如 5 分钟粒度内的最大值)和峰值均值比(Peak-to-Average Ratio)。假设某汇聚上行链路日均 320 Mbps,忙时 5 分钟峰值 780 Mbps,则峰值均值比约为 2.44。规划时通常以忙时峰值为基准,并预留 30%~50% 余量,而不是用日均值乘以一个拍脑袋系数。

建议同时记录“95 百分位”速率:它剔除了极短突发,比绝对峰值更稳定,适合作为扩容触发阈值。例如连续 5 个工作日忙时 95 百分位超过链路带宽 70%,即可进入扩容评估。

三、采集手段:NetFlow、IPFIX、SNMP 与流式遥测

不同采集方式回答的问题不同,应组合使用而非二选一。

  • NetFlow:Cisco 主导的流统计技术,v5 固定格式、v9 基于模板可扩展。它输出“五元组 + 字节数 + 包数 + 时间戳”,适合做流量矩阵、Top N 会话和应用分布分析。
  • IPFIX:IETF 标准化的流导出协议(RFC 7011),本质是 NetFlow v9 的标准化演进,模板可携带更多字段(如 VLAN、MAC、BGP 下一跳),适合多厂商混合环境。
  • SNMP:通过轮询接口计数器(ifHCInOctets/ifHCOutOctets)获取链路级速率,成本低、覆盖广,但只有“链路总量”,没有源目的信息,且轮询周期通常为 1~5 分钟,抓不住秒级突发。
  • 流式遥测(Model-Driven Telemetry):设备按订阅周期主动推送结构化数据(如 YANG 模型下的接口统计),支持亚秒级粒度,适合对峰值和微突发敏感的核心链路。

下面这张图展示了从设备到分析平台的采集链路与各自输出的数据形态,帮助理解四类手段的分工。

园区流量采集链路与数据形态 接入/汇聚交换机 NetFlow / IPFIX 导出 SNMP 计数器 Telemetry 订阅 核心交换机 NetFlow v9 / IPFIX 高精度接口统计 流采集器 接收 NetFlow/IPFIX 模板解析、聚合 输出五元组记录 SNMP 轮询 / 遥测接收 周期拉取或推送 接口速率、丢包计数 流量分析平台 流量矩阵构建 峰值/均值/95 百分位 Top N 会话与应用 基线曲线与告警 扩容触发判断 流数据:五元组 + 字节/包数,回答“谁到谁、什么应用” 计数器/遥测:接口速率与丢包,回答“链路多忙、是否丢包” 两者在分析平台汇合, 才能同时得到矩阵与峰值基线

四、从采集到基线:一个可执行的分析流程

采集只是手段,形成可判断的基线才是目的。建议按以下顺序落地:

  1. 确定采集点:在汇聚上行、核心互联、数据中心出口和互联网/WAN 出口开启流导出;在核心与关键汇聚接口开启 SNMP 或遥测。
  2. 统一时间粒度:流数据按 1 分钟聚合,SNMP 按 1 分钟轮询,遥测按 10 秒推送,确保峰值分析时各源时间戳可对齐。
  3. 构建流量矩阵:以区域为节点,将流记录按源/目的区域汇总,得到矩阵单元格速率。
  4. 计算峰值与均值:对每条链路和每个矩阵单元格,分别计算忙时峰值、日均值和 95 百分位。
  5. 形成基线报告:记录连续 5~10 个工作日的曲线,标注峰值时段、Top 流量对和增长趋势。

以 Cisco IOS-XE 为例,开启 NetFlow 的关键配置如下(示例,接口与版本需按实际调整):

! 定义流记录与导出
flow record CAMPUS-RECORD
 match ipv4 source address
 match ipv4 destination address
 match transport source-port
 match transport destination-port
 match ipv4 protocol
 collect counter bytes long
 collect counter packets long

! 定义导出目标
flow exporter CAMPUS-EXP
 destination 10.10.20.50
 source GigabitEthernet0/0
 transport udp 2055
 template data timeout 60

! 绑定到接口
interface GigabitEthernet1/0/1
 ip flow monitor CAMPUS-MON input
 ip flow monitor CAMPUS-MON output

配置完成后,可用 show flow monitor CAMPUS-MON cache format table 查看缓存中的流记录,确认源/目的地址、字节数和包数是否正常增长。若缓存为空,优先检查接口方向、导出目标可达性和模板超时设置。

NetFlow/IPFIX 会带来额外 CPU 与内存开销。在高端口密度接入交换机上,建议只对上行链路或关键 VLAN 开启,避免全接口采样导致设备性能下降。采样比(如 1:1000)可降低开销,但会损失小流量的准确性,需在精度与成本间权衡。

五、结果判读与扩容触发

基线建立后,判断扩容的常见依据包括:忙时峰值持续超过链路带宽 70%;95 百分位连续 5 个工作日超过 70%;流量矩阵中某对源-目的流量月增长率超过 20% 且已接近上行容量;SNMP 显示接口丢包或队列丢弃计数在忙时明显上升。满足其中两项以上,即可启动扩容评估,并结合流量矩阵确定扩容位置——是增加汇聚上行带宽、升级核心互联,还是调整数据中心出口链路。

需要强调的是,所有示例数值均为教学假设,实际项目中应以真实采集数据为准。基线不是一次性的,建议每月更新一次流量矩阵和峰值曲线,使容量规划始终建立在可观测、可追溯的数据之上。