Administrator
Published on 2026-05-20 / 4 Visits
0
0

【系统监控配置】镜像配置详解

一、镜像简介

定义

镜像是指将指定源的报文复制一份到目的端口。指定源被称为镜像源,目的端口被称为观察端口,复制的报文被称为镜像报文。

目的

网络维护过程中会遇到需要对报文进行获取和分析的情况,比如怀疑有攻击报文,此时需要在不影响报文转发的情况下,对报文进行获取和分析。

镜像可以在不影响报文正常处理流程的情况下,将镜像端口的报文复制一份到观察端口,用户利用数据监控设备来分析复制到观察端口的报文,进行网络监控和故障排除。

二、镜像原理描述

基本概念

如图2-1所示,镜像端口和观察端口是镜像中的两个基本概念。

镜像端口

镜像端口是被监控的端口,从镜像端口流经的报文将被复制到观察端口。

观察端口

观察端口是连接监控设备的端口,用于输出从镜像端口复制过来的报文。

观察端口组是连接多个监控设备的一组端口。观察端口组中的多个成员端口分别连接多个监控设备,当使用观察端口组镜像报文时,镜像到观察端口组的报文将被复制到所有的成员端口。

图2-1 镜像组网图

镜像分类

根据不同的维度,镜像分类的方式如表2-1所示,其中根据镜像源进行分类的方式比较常用。

表2-1 镜像分类

分类方式

镜像类别

镜像说明

根据镜像源进行分类

端口镜像

端口镜像即将指定端口接收或发送的报文复制到观察端口。

流镜像

流镜像即将符合指定规则的报文流复制到观察端口。

VLAN镜像

VLAN镜像即将指定VLAN内所有活动接口接收或发送的报文复制到观察端口。

根据镜像的报文流方向进行分类

入方向镜像

入方向镜像也称为上行镜像,即仅将镜像端口接收的报文复制到观察端口上。

出方向镜像

出方向镜像也称为下行镜像,即仅将镜像端口发送的报文复制到观察端口上。

双向镜像

双向镜像即将镜像端口接收和发送的报文都复制到观察端口上。

根据镜像源和观察端口之间的对应关系进行分类

1:1镜像

1:1镜像是指将单份报文镜像到单个观察端口。

N:1镜像

N:1镜像是指将N份不同的报文镜像到单个观察端口。

1:N镜像

1:N镜像是指将单份报文镜像到N个不同的观察端口。

M:N镜像

M:N镜像是指将M份不同的报文镜像到N个不同的观察端口,相当于M个1:N镜像叠加。

当设备上同时配置流镜像、端口镜像、VLAN镜像到不同的观察端口,优先级为流镜像>端口镜像>VLAN镜像,仅一个观察端口可以收到镜像报文。

三、镜像配置注意事项

3.1、镜像的使用限制

表3-1 本特性的使用限制

特性限制

镜像端口和观察端口配置视图的约束:

- Eth-Trunk口及其成员口不能同时配置镜像端口或者观察端口。

- 镜像端口可以是以太网接口、Eth-Trunk接口或Eth-Trunk的成员接口。

- 观察端口可以是以太网接口、Eth-Trunk接口,不能为Eth-Trunk的成员接口。

设备的报文截断长度不包括CRC,比如配置64字节报文截断,设备内部对报文截断为64字节,镜像出去的报文加CRC后实际为68字节。

对于产品S550系列:

支持64、128、192、256四种截断长度配置。

对于产品S220系列,S310系列,S530系列:

- 支持128、192、256三种截断长度配置。

- 配置为256长度时,实际出来报文长度为252字节。

- 截断报文仍占用完整报文的带宽。

- 堆叠跨堆叠成员或跨芯片镜像时,镜像截断长度会多截断18字节。

对于S630系列,S620系列,S310系列,S530系列,S550系列:

堆叠/集群场景下配置镜像时存在如下限制:

- 堆叠口/集群口只支持入端口镜像。

- 跨设备的镜像报文,在堆叠口/集群口上不进行镜像。

- 观察口只能是物理口,不能是eth-trunk口

对于产品S310系列,S530系列:

- 观察口只能是物理口,不能是eth-trunk口。

- 跨板镜像报文,在堆叠口上不做镜像。

- 转发流量加镜像流量不能超过芯片的转发带宽,跨单板的镜像流量需要占用背板的带宽。

- 针对同一个报文同方向同时做端口镜像、vlan镜像和流镜像时,只能输出一份。

- 如果观察端口产生拥塞(转发的原始流量不拥塞),观察口拥塞会影响原始报文的缓存占用(例如PFC时会产生反压)。

-如果观察端口同时承载镜像流跟业务流,观察口超带宽导致丢包时无法保证优先丢弃镜像报文,业务流也可能被丢弃。

- 端口镜像/流镜像存在如下限制:

(1)对于在转发芯片重组的分片报文,端口镜像镜像的是从端口进来的分片报文,流镜像镜像的是重组后的报文。

(2)镜像出去的报文不做分片处理。

同一方向多次镜像只有一次生效,优先级

对于产品S550系列,S620系列,S630系列:

- 流镜像>端口镜像>VLAN镜像。

对于产品S220系列,S310系列,S530系列:

- 入方向:流镜像>端口镜像>vlan镜像。

- 出方向:流镜像>端口镜像。

从观察口发送的镜像报文固定占用0号队列。

设备出方向端口镜像无法镜像CPU发送的报文。

从观察端口进来的流量,无法被镜像到本观察端口,存在以下几种场景限制:

- 端口入方向镜像,配置上不支持入端口镜像到自己。

- 端口出方向镜像,从观察端口进来的流量,无法被镜像,例如:GEX/0/2上配置出端口镜像到GEX/0/1,此时从GEX/0/1进来的报文,转发到GEX/0/2后,不会被镜像到GEX/0/1。

- 入方向流镜像有类似问题,例如:全局配置流策略,动作为镜像到观察口GEX/0/1,此时从GEX/0/1进来的报文,不会被镜像到GEX/0/1。

镜像流量会占用设备转发带宽,在设备满流量转发的情况下,开启镜像功能可能会导致设备因转发能力不足而丢包。

对于S630系列,S620系列,S550系列:

网络切片与镜像叠加使用时存在如下约束:

- 镜像报文不进行切片操作,不进入切片队列。

- VXLAN场景下,如果隧道口配置了切片,出方向镜像报文会带有16字节切片帧头。

开启镜像功能会占用设备的带宽资源,导致设备处理业务的性能下降,严重时可能会影响业务,使用完请及时关闭。使用流镜像功能时,请引用ACL配置镜像的范围,避免镜像的流量过大对其他业务造成影响。

对VLAN Mapping报文进行镜像时存在如下限制:

- 对需要进行VLAN Mapping的报文进行入方向VLAN镜像时,请在VLAN Mapping后的VLAN视图下配置入方向VLAN镜像。

- 镜像的报文为VLAN Mapping前的报文。

1: N镜像配置刷新时存在以下限制:

刷新观察口端口时(增加或删除观察端口、观察端口up或者down),设备会先删除旧观察口,再设置新观察口,过程中流量可能会短暂中断。

出方向镜像存在如下限制:

- 如果镜像的是出方向报文,镜像报文与出方向的报文可能不一致。这是由于出方向的原始报文在进行镜像操作之后,才会进行其他转发操作。比如原始报文需要修改DSCP优先级,在设备执行修改动作前,报文就已经被镜像到了观察端口。

- 出方向端口镜像功能使用内部环回口实现,配置后可能会导致单板转发性能降低(下降性能大小为镜像流量大小)。

- 当接口上同时配置了端口镜像和流量整形时,如果接口上存在被整形丢弃的报文,端口镜像出的报文会与实际转发的报文不同,这是由于镜像操作发生与整形之前,镜像出的报文仍包含被整形丢弃的报文。

同一个接口不能同时作为镜像端口和观察端口。

基于MQC的流策略,在出方向无法匹配镜像流量。

3.2、镜像缺省配置

镜像的缺省配置如表3-2所示。

表3-2镜像缺省配置

参数

缺省配置

镜像

未启用

3.3、镜像规格

3.3、观察端口规格

如果设备存在观察端口和观察端口组总数限制,该限制与观察端口和观察端口组的限制同时生效。

当设备存在观察端口和观察端口组总数限制时,需要同时满足以下条件:

  • 观察端口数量 ≤ 观察端口数量限制

  • 观察端口组数量 ≤ 观察端口组数量限制

  • 观察端口数量 + 观察端口组数量 ≤ 观察端口和观察端口组总数限制

表3-3 观察端口规格

设备

观察端口数量限制

观察端口组数量限制

观察端口组成员口数量限制

观察端口和观察端口组总数限制

S630

8

128

64

S530

4

4

8

4

S550

8

8

64

S620

4

4

8

4

S310

4

4

8

4

S220

4

4

8

4

3.4、1:N镜像规格

1:N镜像对所有观察端口/观察端口组成员口的报文复制的份数存在限制,分为两种情况。具体限制可参考如下表格。

  • 不区分观察端口与观察端口组。即当1:N镜像报文复制份数限制为8时,不论使用哪种形式,最多可复制8份报文给不同的观察端口/观察端口组成员端口。

  • 区分观察端口和观察端口组。即当观察端口限制为8,观察端口组限制为64时:若采用观察端口的形式,则最多可复制8份报文给不同的观察端口。若采用观察端口组的形式,则最多可复制64份报文给不同的成员口。

表3-4 1:N镜像规格

设备

1:N镜像报文复制份数限制

S530

8

S550

  • 观察端口:8

  • 观察端口组:64

S630

  • 观察端口:8

  • 观察端口组:64

S620

8

S310

8

S220

8

3.5、N:1镜像规格

N:1镜像是指将N个镜像源的报文镜像到一个观察端口,N无规格限制。

表1 各类镜像方式中N的含义

镜像方式

N的含义

端口镜像

N个镜像端口

VLAN镜像

N个VLAN

流镜像

N条报文流

3.6、M:N镜像规格

M:N镜像是指将M个镜像源的报文镜像到N个观察端口。M:N镜像相当于M个1:N镜像叠加,其中M无规格限制,N的规格参考1:N镜像规格。

在符合N的规格限制情况下,所有镜像报文均可正常处理。

四、配置观察端口

背景信息

观察端口是与监控设备相连的端口。通过配置观察端口,设备上流量镜像到观察端口后,再通过观察端口转发给监控设备进行分析处理。

镜像报文截断是将原始报文中指定长度的部分复制到观察端口,超出指定长度的部分不复制。镜像报文截断适用于大流量场景下,监控设备存储容量有限,且监控设备只需要分析报文头部信息了解报文来源即可,此时可以配置镜像报文截断

建议不要在观察端口上配置其他业务,以避免和镜像业务产生冲突。

操作步骤

  1. 进入系统视图。

    system-view
  2. 配置观察端口或观察端口组。如果需要将镜像报文发送至多个观察端口,可以选择观察端口组方式。

    • 配置观察端口。

      observe-port [ observe-port-index ] interface interface-type interface-number
    • 配置观察端口组。

      observe-port group group-id
      group-member { interface-type interface-number [ to interface-type interface-number ] } &<1-8>
      quit
  3. (可选)配置镜像报文截断。

    observe-port packet-length packet-length

    实际截断长度为配置的镜像报文截断长度再加上4字节CRC。例如配置镜像报文截断长度为64字节,镜像出去的报文实际为68字节(即64+4)。

    缺省情况下,设备对镜像报文不进行截断。

检查配置结果

执行命令display observe-port [ index ],查看观察端口的配置信息。

后续处理

根据需要选择配置相应的镜像方式,实现将流量镜像到观察端口或观察端口组。

五、配置端口镜像

5.1、了解端口镜像

端口镜像是指将指定端口接收或发送的报文复制到观察端口。观察端口与监控设备直连时称为本地端口镜像。与监控设备直连的观察端口称为本地观察端口。

如图5-1所示,DeviceA上的镜像端口在接收或发送报文的时候,会将报文复制一份到观察端口。本地观察端口再将复制的原始报文发送给监控设备。

图5-1 本地端口镜像示意图

5.2、配置本地端口镜像

前提条件

已完成配置观察端口。

背景信息

端口镜像是指将流经端口的报文复制到观察端口,然后通过观察端口将镜像报文发送到监控设备。观察端口与监控设备直连时称为本地端口镜像。

当设备对重组的分片报文进行镜像时,端口镜像镜像的报文是从端口进来的分片报文。

开启端口镜像功能有助于定位网络问题,但是由于该功能可能在一定程度上影响设备性能,请谨慎使用。在网络问题定位结束后,请关闭端口镜像功能。

操作步骤

  1. 进入系统视图。

    system-view
  2. 进入接口视图(此接口即为需要配置的镜像端口)。

    interface interface-type interface-number
  3. 配置将端口流量镜像到观察端口或者观察端口组。

    port-mirroring observe-port { observe-port-index | group group-id } { both | inbound | outbound }

检查配置结果

执行命令display port-mirroring,查看镜像的配置信息。

六、配置VLAN镜像

6.1、了解VLAN镜像

VLAN镜像是将指定VLAN接收或发送的报文复制到观察端口。如图6-1所示,通过VLAN镜像,DeviceA仅将来自VLAN 10的报文镜像到监控设备。

图6-1 VLAN镜像示意图

6.2、配置本地VLAN镜像

前提条件

已完成配置观察端口。

背景信息

VLAN镜像是指将VLAN内活动接口接收/发送的报文复制到观察端口,然后通过观察端口将镜像报文发送到监控设备。观察端口与监控设备直连时称为本地VLAN镜像。

注意:

对需要进行VLAN Mapping的报文进行入方向VLAN镜像时,请在VLAN Mapping后的VLAN视图下配置入方向VLAN镜像。镜像的报文为VLAN Mapping前的报文。

操作步骤

  1. 进入系统视图。

    system-view
  2. 进入VLAN视图。

    vlan vlan-id
  3. 配置VLAN镜像。

    对于S620、S630、S550:

    mirroring observe-port { observe-port-index | group group-id } { inbound | outbound | both }

    对于S310、S220、S530:

    mirroring observe-port { observe-port-index | group group-id } inbound

    缺省情况下,系统未配置VLAN镜像。

检查配置结果

执行命令display port-mirroring,查看镜像配置信息。

七、配置流镜像

7.1、了解流镜像

流镜像是指将符合指定规则的报文流复制到观察端口。如图7-1所示,镜像端口将匹配规则的业务流2复制到观察端口,然后观察端口再将复制的业务流2转发到监控设备。

图7-1 流镜像示意图

基于MQC的流镜像实际上是在全局、VLAN、端口、VPN实例上应用了包含流镜像行为的流策略。

7.2、配置本地基于MQC的流镜像

前提条件

已完成配置观察端口。

背景信息

流镜像是指将流经端口的特定业务流的报文复制到观察端口,然后通过观察端口将镜像报文发送到监控设备。基于MQC的流镜像通过使用流分类中丰富的匹配规则,可以实现对特定业务流的筛选。基于MQC的流镜像实际上是在全局、VLAN、端口、VPN实例上应用了包含流镜像行为的流策略。观察端口与监控设备直连时称为本地基于MQC的流镜像。

注意:

  • 配置流镜像时,引用的ACL匹配规则的动作必须为permit。

  • 当MQC的流分类中配置了对匹配的报文记录日志功能(即rule命令中指定logging参数),并且设备上配置了镜像功能时,命中流分类进行logging的报文不支持镜像功能。如果需要对这类报文进行镜像请删除rule命令中logging参数。

  • 当设备对重组的分片报文进行镜像时,流镜像镜像的报文是重组后的报文。

操作步骤

  1. 进入系统视图。

    system-view
  2. 配置流分类

  3. 配置流行为。

    1. 创建一个流行为并进入流行为视图,或进入已存在的流行为视图。

      traffic behavior behavior-name
    2. 将流量镜像到观察端口或观察端口组。

      mirroring observe-port { observe-port-index | group group-id }
    3. 退出流行为视图。

      quit

  4. 配置流策略。

  5. 应用流策略。

检查配置结果

  • 执行命令display port-mirroring,查看镜像的配置信息。

  • 执行命令display traffic classifier [ classifier-name ],查看流分类的配置信息。

  • 执行命令display traffic behavior [ behavior-name ],查看流行为的配置信息。

  • 执行命令display traffic policy [ policy-name [ classifier classifier-name ] ],查看流策略的配置信息。

  • 执行命令display traffic-policy applied-record,查看流策略的应用记录信息。


Comment