端口镜像是将指定端口(源端口)、VLAN(源VLAN)或CPU(源CPU)的报文复制一份到其它端口(目的端口),目的端口会与数据监测设备相连,用户利用这些数据监测设备来分析复制到目的端口的报文,进行网络监控和故障排除。
为了更好地理解后面的内容,首先介绍一下端口镜像中涉及的基本概念。
源端口是被监控的端口,用户可以对通过该端口的报文进行监控和分析。
源VLAN是被监控的VLAN,用户可以对通过该VLAN所有端口的报文进行监控和分析。
源CPU是被监控单板上的CPU,用户可以对通过该CPU的报文进行监控和分析。
目的端口也可称为监控端口,该端口将接收到的报文转发到数据监测设备,以便对报文进行监控和分析。
端口镜像的方向分为三种:
l 入方向:仅对从源端口/源VLAN/源CPU收到的报文进行镜像。
l 出方向:仅对从源端口/源VLAN/源CPU发出的报文进行镜像。
l 双向:对从源端口/源VLAN/源CPU收到和发出的报文都进行镜像。
根据使用范围的不同,端口镜像可分为以下三种类型:
l 本地端口镜像:可以将设备源端口/源VLAN/源CPU上的报文复制到本设备的目的端口,用于监控和分析这些报文。
l 跨二层远程端口镜像:可以将本设备源端口/源VLAN/源CPU上的报文跨越二层网络复制到另一台设备的目的端口,用于监控和分析这些报文。
l 跨三层远程端口镜像:可以将本设备源端口/源VLAN/源CPU上的报文跨越三层网络复制到另一台设备的目的端口,用于监控和分析源这些报文。
端口镜像通过镜像组的方式实现,镜像组可以分为本地镜像组、远程源镜像组和远程目的镜像组三类。
本地端口镜像可以对所有报文(包括协议报文和数据报文)进行镜像,它通过本地镜像组的方式实现,即源端口/源VLAN中的端口/源CPU和目的端口在同一个本地镜像组中,设备将源端口(或源VLAN)的报文复制一份并转发到目的端口。
如图 1所示,源端口/源VLAN/源CPU的报文被镜像到目的端口,这样,连接在目的端口上的数据监测设备就可以对这些报文进行监控和分析。
本地镜像组支持跨板镜像,即目的端口和源端口/源VLAN中的端口/源CPU可以在同一设备的不同单板上。
跨二层远程端口镜像可以对协议报文之外的所有报文进行镜像,它通过远程源镜像组和远程目的镜像组互相配合的方式实现。
图 2 跨二层远程端口镜像示意图(支持反射端口的设备)
如图 2所示,用户在源设备上创建远程源镜像组,在目的设备上创建远程目的镜像组。源设备将源端口/源VLAN/源CPU的报文复制一份后,将其通过反射端口在远程镜像VLAN中广播,经由中间设备发送至目的设备。目的设备收到该报文后,若其VLAN ID与远程目的镜像组的远程镜像VLAN的VLAN ID相同,就将其转发至目的端口。这样,连接在目的端口上的数据监测设备就可以对源设备上源端口/源VLAN/源CPU的报文进行监控和分析。
如图 3所示,用户在源设备上创建远程源镜像组,在目的设备上创建远程目的镜像组。源设备将源端口/源VLAN/源CPU的报文复制一份后,将其通过出端口在远程镜像VLAN中广播,经由中间设备发送至目的设备。目的设备收到该报文后,若其VLAN ID与远程目的镜像组的远程镜像VLAN的VLAN ID相同,就将其转发至目的端口。这样,连接在目的端口上的数据监测设备就可以对源设备上源端口/源VLAN/源CPU的报文进行监控和分析。
l 用户需要确保远程镜像VLAN内源设备到目的设备间二层网络的互通性。
l 由于源端口/源VLAN/源CPU的报文将被在源设备的远程镜像VLAN中广播,因此可通过把源设备上的其它端口加入远程镜像VLAN的方式,实现本地端口镜像的功能。
在镜像报文离开源设备到达远程目的设备过程中,用户应确保镜像报文中VLAN ID的正确性,如果该VLAN ID被修改或删除,跨二层远程镜像功能将失效。
跨三层远程端口镜像可以对协议报文之外的所有报文进行镜像,它通过远程源镜像组、远程目的镜像组和GRE隧道互相配合的方式实现。
如图 4所示,在源设备上,源端口/源VLAN/源CPU的报文被镜像到Tunnel接口(作为其目的端口),然后通过GRE隧道发送至目的设备,目的设备在通过Tunnel接口(作为其源端口)将报文转发至其目的端口。这样,连接在目的端口上的数据监测设备就可以对源设备上源端口/源VLAN/源CPU的报文进行监控和分析。