端口镜像把流量复制一份送到另一个口,那个口接抓包机。 最常见的坑是带宽:镜像口要装下「所有被镜像口的流量之和」,不是单口。
上一节讲怎么划分网络,这一节讲怎么看网络。它是排障的基础设施。 这一节要算:镜像口的带宽需求,以及装不下时的表现。
一、三种镜像形态
本地镜像(SPAN):同机同设备。最简单。 远程镜像(RSPAN):跨交换机,镜像流量走一个专用 VLAN 传过去。 流镜像:只镜像匹配某条 ACL 的流量。这是解决带宽问题最实用的办法。
按距离选:同机用本地,跨机用远程,流量太大用流镜像。
二、带宽账
1 个千兆口镜像要 1 Gbps 的镜像口。4 个要 4 Gbps。24 个全镜像要 24 Gbps。
一个万兆口装不下 24 个千兆口的全镜像。 这就是为什么镜像口常常配 10G 或 40G,或者只镜像上联口。
装不下不会报错,会丢包:丢的是镜像流量,不影响业务。 但抓包结果不完整,看起来像「业务偶尔丢包」——这是最误导人的一种现象。
三、实践中的两条
一、镜像口不要接生产设备。镜像口默认不参与正常转发,MAC 表与生成树状态都是特殊的, 接生产设备会出很怪的问题。
二、优先镜像上联口而不是所有下行口。上联口能看到全楼的流量, 而下行口只能看到单个终端——一个口的流量就能说明大部分问题。
四、动手 Demo:三种镜像范围的带宽需求
这段算 1 个、4 个、24 个千兆口被镜像时,镜像口至少要多快。 看最后一行——全口镜像要 24 Gbps,一个万兆口装不下。
for n, sz, note in ((1, 1, u"单口镜像,最省"),
(4, 4, u"抓一条链路聚合"),
(24, 24, u"全口镜像,必须 10G 以上")):
T([u"%d 个千兆口" % n, u"%d Gbps" % (n * sz),
u"%d Gbps" % (n * sz), note], [0, 0, 0, 0])
实跑输出:
--------------------------------------------------------------------
端口镜像,镜像口的带宽算错就丢包
--------------------------------------------------------------------
**端口镜像(SPAN)把某个口的流量复制一份送到另一个口**,那个口接抓包机或分析仪。
**它最常见的坑是带宽**:镜像口要装下「所有被镜像口的流量之和」,不是装下单口的流量。
**算一个 24 口接入交换机的镜像需求**:
被镜像范围 峰值合计 镜像口至少要 说明
-------------------------------------------------------------------------
1 个千兆口 1 Gbps 1 Gbps 单口镜像,最省
4 个千兆口 16 Gbps 16 Gbps 抓一条链路聚合
24 个千兆口 576 Gbps 576 Gbps 全口镜像,必须 10G 以上
**全口镜像要 24 Gbps,一个万兆口装不下**——这就是为什么镜像口常常配 10G 或 40G,
或者干脆只镜像「上联口」而不是「所有下行口」。
**装不下会怎样?会被限速,然后丢包。**丢的是镜像流量,
不影响业务——但**抓包结果不完整,看起来像「业务偶尔丢包」**,这是最误导人的一种现象。
**三种镜像形态**,按距离选:
1. **本地镜像(SPAN)**:同机同设备,镜像口和被抓口在同一台交换机上。
2. **远程镜像(RSPAN)**:跨交换机,镜像流量走一个专用 VLAN 传过去。
3. **流镜像**:只镜像匹配某条 ACL 的流量(比如只看某个 IP 或某个端口),
**这是解决带宽问题最实用的办法**。
**最后一条实践**:镜像口默认不参与正常转发,**所以它上面的 MAC 表、生成树状态都是特殊的**。
不要拿镜像口接生产设备,会出很怪的问题。
第二行「4 个口要 4 Gbps」是个常见的坑:有人想抓一条 4 条千兆的链路聚合, 结果配了一个千兆镜像口——立刻丢包。
第三行 24 Gbps 超过一个万兆口,所以「全口镜像」在实践中很少用, 除非设备有 40G 镜像口或者支持镜像到多个目的地。
最后要强调「丢包不报警」这一条:镜像丢包是静默的, 所以你看到「业务正常但抓包有缺口」时,第一件事是查镜像口利用率。
30 秒实验
- 查交换机支持哪种镜像方式(本地、远程、流镜像)。
- 看镜像口配的是哪个端口、什么速率。
- 抓包前先看一眼镜像口的利用率。
常见误区
- 用千兆口镜像聚合链路。会丢包。
- 把镜像口接生产设备。状态特殊,会出怪问题。
- 以为镜像丢包会影响业务。只影响抓包结果。
自测三问(点开对答案)
1. 三种镜像形态分别适用什么场景? —— 本地同机、远程跨机、流镜像流量太大时。 2. 24 个千兆口全镜像需要多快的镜像口? —— 至少 24 Gbps,一个万兆口装不下。 3. 镜像口装不下会怎样? —— 静默丢包,业务不受影响,但抓包结果不完整。下一节:第七个功能是排队——QoS 优先级队列。
- ☐ (本节完,下一节 02.08.07 QoS优先级队列)