端口镜像
- 在某些场景中,我们需要监控交换机特定端口的入站或出站报文。
概述
镜像的应用:
-
流量观测
-
故障定位
镜像的分类:
-
基于端口的镜像
端口镜像就是将被监控端口上的数据复制到指定的监控端口,对数据进行分析和监视。 -
基于流的镜像
流镜像就是将匹配访问控制列表规则的业务流复制到指定的监控端口,用于报文的分析和监视。
基于端口的镜像
- 端口镜像是指交换机复制一份从镜像端口流经的报文(可以指定入站或出站),并将此报文传送到指定的观察端口进行分析和监视。端口镜像中,镜像端口流经的所有报文都将被复制到观察端口。
- 以太网交换机支持多对一的镜像,即将多个端口的报文复制到一个监控端口上。
- 端口镜像分为本地端口镜像和远程端口镜像
本地端口镜像和远程端口镜像
本地端口镜像:
本地端口镜像中,监控主机与观察端口直接相连。
远程端口镜像:
远程端口镜像中,监控主机与观察端口所在设备之间通过二层网络或三层网络相联。
-
二层端口镜像(RSPAN:Remote Switched Port Analyzer):若通过二层网络互联,S9300将镜像端口的报文封装VLAN,然后通过观察端口将报文在远程镜像VLAN中进行广播。远程的设备收到报文后,比较报文的VLAN ID,如果相同,则将该报文转发到远程观察端口。
-
三层端口镜像(ERSPAN:Encapsulated Remote SPAN):若通过三层网络互联,S9300使用GRE报文头封装和解封装镜像报文,使得镜像报文可以穿透三层网络,从而实现镜像端口所在设备与观察端口所在设备之间通过三层网络相连时的端口镜像。
基于流的镜像
- 流镜像就是将流镜像端口上的特定数据复制到指定的观察端口或CPU进行分析和监视。流镜像端口是指应用了包含流镜像行为的流策略的接口,从流镜像端口流过的报文,如果匹配此接口上流策略中的流分类,则将被复制并传送到观察端口或CPU。
-
流镜像分为两种,即流镜像到接口和流镜像到CPU:
-
流镜像到接口,是把通过配置了流镜像的接口上的符合要求的报文复制一份,然后发送到观察端口以供分析诊断。
-
流镜像到CPU,是把通过配置了流镜像的接口上的符合要求的报文复制一份,然后发送到CPU以供分析诊断。这里的CPU指的是配置了流镜像的接口所在接口板上的CPU。
-
配置本地端口镜像
- 将交换机GE0/0/2端口的进、出口报文镜像到GE0/0/3。
配置:
[SW] observe-port 1 interface gigabitethernet0/0/3 # 将监控端的端口配置成观察端口
[SW] interfae gigabitethernet0/0/2
[SW-gigabitethernet0/0/2] port-mirroring to observe-port 1 both #接口流量镜像到观察端口
display observe-port #查看观察端口的配置信息
diaplay port-mirroring #查看镜像功能的配置信息
both为镜像方向,指双向数据都要复制到观察端口,此外还有inbound和outbound。
链路聚合
- 链路聚合(Link Aggregation)是将—组物理接口捆绑在一起作为一个逻辑接口来增加带宽的一种方法,又称为多接口负载均衡组(Load Sharing Group)或链路聚合组(Link Aggregation Group),相关的协议标准请参考IEEE802.3ad。
- 通过在两台设备之间建立链路聚合组,可以提供更高的通讯带宽和更高的可靠性。链路聚合不仅为设备间通信提供了冗余保护,而且不需要对硬件进行升级。
在SW1上将GE0/0/1及GE0/0/2接口进行聚合,从而形成一个逻辑接口Eth-trunk, SW2同理。如此一来,SW1及SW2之间互联的链路就成为逻辑上的一条链路。这样,链路的带宽增加了,冗余性也增强了。
-
华为的网络设备支持两种Eth-trunk工作模式:
-
手工负载分担模式
-
LACP模式
-
手工负载分担
-
手工负载分担(Manual load-balance)模式下,Eth-Trunk的建立、成员接口的加入由手工配置,没有LACP(link Aggregation Control Protocol)协议报文的参与。
-
该模式下所有活动链路都参与数据的转发,平均分担流量,因此称为负载分担模式。
-
如果某条活动链路故障,链路聚合组自动在剩余的活动链路中平均分担流量。
-
当需要在两个直连设备间提供一个较大的链路带宽而设备又不支持LACP协议时,可以使用手工负载分担模式。
静态LACP
-
静态LACP(Static LACP)模式是一种利用LACP协议进行聚合参数协商、确定活动接口和非活动接口的链路聚合方式。
-
该模式下,需手工创建Eth-Trunk,手工加入Eth-Trunk成员接口,由LACP协议协商确定活动接口和非活动接口。
-
静态LACP模式也称为M∶N模式。这种方式同时可以实现链路负载分担和链路冗余备份的双重功能。在链路聚合组中M条链路处于活动状态,这些链路负责转发数据并进行负载分担,另外N条链路处于非活动状态作为备份链路,不转发数据。当M条链路中有链路出现故障时,系统会从N条备份链路中选择优先级最高的接替出现故障的链路,同时这条替换故障链路的备份链路状态变为活动状态开始转发数据。
静态LACP模式与手工负载分担模式的主要区别为:静态LACP模式有备份链路,而手工负载分担模式所有成员接口均处于转发状态,分担负载流量。
和静态LACP模式相对应的还包括动态LACP模式。动态LACP模式的链路聚合,从Eth-Trunk的创建到加入成员接口都不需要人工的干预,由LACP协议自动协商完成。虽然这种方式对于用户来说很简单,但由于这种方式过于灵活,不便于管理,所以S9300上不支持动态LACP模式链路聚合。
LACP模式(补充)
LACP:基于IEEE802.3ad标准的LACP(链路汇聚控制协议)是一种实现链路动态汇聚的协议。LACP协议通过LACPDU(链路汇聚控制协议数据单元)与对端交互信息。启用某端口的LACP协议后,该端口将通过发送LACPDU向对端通告自己的系统优先级、系统MAC地址、端口优先级、端口号和操作Key。对端接收到这些信息后,将这些信息与其它端口所保存的信息比较以选择能够汇聚的端口,从而双方可以对端口加入或退出某个动态汇聚组达成一致。
-
系统LACP优先级
系统LACP优先级是为了区分两端设备优先级的高低而配置的参数。LACP模式下,两端设备所选择的活动接口必须保持一致,否则链路聚合组就无法建立。此时可以使其中一端具有更高的优先级,另一端根据高优先级的一端来选择活动接口即可。系统LACP优先级值越小优先级越高。
-
接口LACP优先级
接口LACP优先级是为了区别同一个Eth-Trunk中的不同接口被选为活动接口的优先程度,优先级高的接口将优先被选为活动接口。接口LACP优先级值越小,优先级越高。
-
成员接口间M:N备份
LACP模式链路聚合由LACP确定聚合组中的活动和非活动链路,又称为M:N模式,即M条活动链路与N条备份链路的模式。这种模式提供了更高的链路可靠性,并且可以在M条链路中实现不同方式的负载均衡。
两台设备间有M+N条链路,在聚合链路上转发流量时在M条链路上分担负载,即活动链路,不在另外的N条链路转发流量,这N条链路提供备份功能,即备份链路。此时链路的实际带宽为M条链路的总和,但是能提供的最大带宽为M+N条链路的总和。
当M条链路中有一条链路故障时,LACP会从N条备份链路中找出一条优先级高的可用链路替换故障链路。此时链路的实际带宽还是M条链路的总和,但是能提供的最大带宽就变为M+N-1条链路的总和。
M:N备份示意图
-
这种场景主要应用在只向用户提供M条链路的带宽,同时又希望提供一定的故障保护能力时。当有一条链路出现故障,系统能够自动选择一条优先级最高的可用备份链路变为活动链路。
如果在备份链路中无法找到可用链路,并且目前处于活动状态的链路数目低于配置的活动接口数下限阈值,那么系统将会把聚合接口关闭。
-
LACP抢占:
- LACP抢占未使能,原本为活动接口的接口故障之后,恢复会作为备份接口;
- LACP抢占使能,原本为活动接口的接口故障之后,恢复会重新协商,作为活动接口。
具体配置
手工负载分担模式链路聚合
划分vlan并划入接口
SW1配置
[SW1]vlan batch 10 20
[SW1]interface GigabitEthernet 0/0/1
[SW1-GigabitEthernet0/0/1]port link-type access
[SW1-GigabitEthernet0/0/1]port default vlan 10
[SW1]interface GigabitEthernet 0/0/2
[SW1-GigabitEthernet0/0/2]port link-type access
[SW1-GigabitEthernet0/0/2]port default vlan 20
SW2配置
[SW2]vlan batch 10 20
[SW2]interface GigabitEthernet 0/0/1
[SW2-GigabitEthernet0/0/1]port link-type access
[SW2-GigabitEthernet0/0/1]port default vlan 10
[SW2]interface GigabitEthernet 0/0/2
[SW2-GigabitEthernet0/0/2]port link-type access
[SW2-GigabitEthernet0/0/2]port default vlan 20
创建聚合接口Eth-trunk1,并将GE0/0/23及24口添加到聚合链路中
SW1:
[SW1]interface Eth-Trunk 1
[SW1-Eth-Trunk1]mode manual load-balance # 缺省就是手工负载
[SW1-Eth-Trunk1]trunkport GigabitEthernet 0/0/23
[SW1-Eth-Trunk1]trunkport GigabitEthernet 0/0/24
#由于Eth-trun1接口需要承载多VLAN,因此需配置为trunk模式:
[SW1-Eth-Trunk1]PORT link-type trunk
[SW1-Eth-Trunk1]PORT trunk allow-pass vlan 10 20
SW2:
[SW2]interface Eth-Trunk 1
[SW2-Eth-Trunk1]mode manual load-balance
[SW2-Eth-Trunk1]trunkport GigabitEthernet 0/0/23
[SW2-Eth-Trunk1]trunkport GigabitEthernet 0/0/24
[SW2-Eth-Trunk1]port link-type trunk
[SW2-Eth-Trunk1]port trunk allow-pass vlan 10 20
查看接口信息:
手工负载分担模式下,所有的接口都为up
补充:在创建完Eth-trunk接口后,需将成员接口(物理接口)加入到该Eth-trunk中,此时有两种配置方式,这两种配置方式的效果相同:
[SW1]interface Eth-Trunk 1
[SW1-Eth-Trunk1]trunkport GigabitEthernet 0/0/23
[SW1-Eth-Trunk1]trunkport GigabitEthernet 0/0/24
或者
[SW1]interface Eth-Trunk 1
[SW1-Eth-Trunk1]quit
[SW1]interface GigabitEthernet 0/0/23
[SW1-GigabitEthernet0/0/23]eth-trunk 1
[SW1]interface GigabitEthernet 0/0/24
[SW1-GigabitEthernet0/0/24]eth-trunk 1
静态LACP模式链路聚合
- SW1、SW2的GE0/0/22、23及24口互联,捆绑成Eth-Trunk,采用静态LACP模式,并且2条链路为活动链路,其余一条为备份链路。SW1为LACP主动端。
SW1配置:
[SW1]interface Eth-Trunk 1
[SW1-Eth-Trunk1]mode lacp-static
[SW1-Eth-Trunk1]max active-linknumber 2 #最大活动链路数,缺省为8
[SW1-Eth-Trunk1]trunkport GigabitEthernet 0/0/22
[SW1-Eth-Trunk1]trunkport GigabitEthernet 0/0/23
[SW1-Eth-Trunk1]trunkport GigabitEthernet 0/0/24
[SW1]lacp priority 1 #将设备的系统LACP优先级设置成1
#系统LACP优先级值越小优先级越高,缺省为32768。
SW2配置:
[SW2]interface Eth-Trunk 1
[SW2-Eth-Trunk1]mode lacp-static
[SW2-Eth-Trunk1]max active-linknumber 2
[SW2-Eth-Trunk1]trunkport GigabitEthernet 0/0/22
[SW2-Eth-Trunk1]trunkport GigabitEthernet 0/0/23
[SW2-Eth-Trunk1]trunkport GigabitEthernet 0/0/24
查看接口信息:
关掉SW2的G0/0/22接口
[SW2]interface GigabitEthernet 0/0/22
[SW2-GigabitEthernet0/0/22]shutdown
备份接口转为活动接口