在优化网络性能的时候,了解交换机等网络设备的性能是非常重要的一个环节。其直接关系到是否需要更换网络设备等等重大的问题。因为交换机、路由器的购买与部署需要花费比较多的金钱与时间,所以准确无误的了解这些设备对于网络性能的影响,就显得至关重要。要实现这个目的有很多的方法,笔者这里现在要谈的方法就是采用思科的SPAN技术来监控交换机的性能。
一、SPAN的优点
SPAN,其中文名字叫做交换端口分析器。思科的网络专家很喜欢使用这个工具来监控网络性能,并对于网络排错也具有一定的帮助。要使用好这个工具的话,必须要了解其两个显著的特点。
一是其工作的原理。简单的说,交换端口分析器能够将某个VLAN端口或者一组端口的网络流量复制到另外一个端口中。然后在这个端口中就可以连接一些网络分析仪器,来监控网络的性能。如上图所示,交换机的1号端口连接着一台文件服务器。如果网络管理员需要监控这个端口的网络流量,就可以采用SPAN技术,将这个端口的网络流量复制到2号端口。然后再在2号端口连接SwithcProbe等网络分析设备,来分析这个端口的流量。
二是采用SPAN技术的话,并不会对源端口或者VLAN的网络流量交换产生影响。在监控交换机性能的时候,网络管理员总会感到左右为难。因为在监控的同时,往往监控服务本身就会产生一些流量,从而会影响最终的检测结果或者增加交换机的负担。但是值得庆幸的是,如果采用SPAN技术的话,不用担心这个问题。因为SPAN不会对源端口或者VLAN的网络流量产生丝毫的影响。这也真是SPAN技术大受欢迎的原因。
二、使用SPAN监控交换机性能的技巧
在使用SPAN监控交换机性能的时候,笔者认为需要注意如下几个问题:
1、了解SPAN与VSPAN的异同。
SPAN还有一个同胞兄弟叫做VSPAN。他们实现的功能相同,但是适用的范围不同。SPAN主要使用在相同的交换机上配置源端口、源VLAN和目标端口。可以将VLAN中的单个或者多个端口中的网络流量复制到用于分析的目标端口。而VSPAN包括将单个或者多个VLAN配置为SPAN会话源。此时源VLAN中的所有端口将成为VSPAN的源端口。掌握他们之间这细小的差异,对于后续的工作具有很大的帮助。
2、选择需要监控的流量。
如上面的这个文件服务器所连接的1号端口,其网络流量可以分为流出(用户从文件服务器上读取文件)与流入(用户将文件保存到文件服务器上)。那么网络管理员需要监控的是哪一种流量呢?只需要监控流出的流量或者流入的流量,还是两者都要监控?这是采用SPAN技术监控交换机性能之前必须要考虑的问题。
现在的SPAN会话支持如下3种类型的网络流量,包括流入的网络流量、流出的网络流量、双向的网络流量。也就是说,网络管理员可以根据自己的需要只监控部分网络流量,也可以监控全部的网络流量。通过将需要分析的源端口和VLAN所接收的网络流量复制到目标端口,则流入的SPAN就能够监控流入的网络流量。通过将需要分析的源端口和VLAN所发送的网络流量复制到目标端口,流出的SPAN会话就能够监控流出的网络流量。同理,如果需要同时监控流入与流出的网络流量,就可以采用BOTH关键字,通过将需要分析的源端口和VLAN所接收的网络流量复制到目标端口,SPAN就能够监控双向的网络流量。
默认情况下,SPAN会话监控的是全部的网络流量,即流入与流出的流量全部会进行监控。当然,网络管理员可以根据自己的需要来合理的配置。笔者的建议是,如果监控的源端口数量比较少,或者流量不多的情况下,可以同时监控双向的网络流量。相反,如果监控的源端口数量比较多,或者有比较多的突发性流量,则最好有选择的监控输入或者输出的网络流量。此时虽然对源端口没有影响,但是毕竟所有端口的流量都会复制到目标端口,对于目标端口会产生比较大的压力。
3、SPAN目标端口不能够连接交换机等网络设备。
当交换机的某个端口被配置为SPAN目标端口之后,其用途就会受到一定的限制。这主要是因为目标端口从来不参与生成树实例。这主要是因为本地的SPAN(包括被监控流量的BPDU),目标端口所看见的任何BPDU都来自于源端口。所以SPAN目标端口不应当连接到其他的交换机,否则的话,很有可能会导致网络环路。如上图所示,交换机2号端口如果被配置为SPAN目标端口,则其只能够连接中断设备,如网络分析仪器。在其不用的时候,不能够连接交换机等相关的网络设备。即使连接的交换机只有一个终端设备也不行。
这也告诫网络管理员,如果将某个交换机的端口配置为SPAN目标端口之后,一定要在这个端口上给与明确的标示,以防止其他网络管理员误用。笔者的建议是,在SPAN目标端口上给与特殊的标识,如给这个端口取一个特殊的名字或者在交换机的面板上给与特殊的标志。另外,有必要的情况下,在监控完成之后,可以暂时把这个目标端口取消掉,终止SPAN会话。以防止后续不必要的麻烦。特别是在使用二手交换机或者网络管理员是中途进场的,一定要先了解以前原先的SPAN配置。如是否启用了SPAN会话,以及所采用的SPAN目标端口。如果不了解这些信息的话,在就可能会犯错误。如将先前配置的SPAN目标端口连接到交换机等相关的网络设备。此时如果启用SPAN会话的话,则SPAN会话将导致到新交换机的连接丢失,或者产生生成树协议问题,等等。而且这些问题很难查明原因。很有可能会产生误诊,如认为是交换机端口出现了问题,等等。
4、目标端口的其他限制。
如果交换机的某个端口被设置为SPAN目标端口的话,除了上面这个限制之外,还有下面的一些限制。如果某个端口是某个SPAN会话的源端口,那么这个端口就不能够配置为目标端口。如果只有一个SPAN会话的话,则端口就能够成为目标端口。另外,无论数据包是否因为一些特殊的原因(如外出端口的STP阻塞)而最终没有离开交换机,但是目标端口都将获得通过交换机进行交换的所有数据包的副本。如上图所示,当文件服务器的数据通过1号端口传入到交换机,则这个数据流就会被复制到2号端口中去。即使最终这数据流因为另外一个端口(这个数据流的外出端口)阻塞,而最终没有离开交换机,也将被复制到的目标端口中去。这是符合情理的。因为即使其没有最终离开交换机,即这个流量没有起作用,但是比较传入了交换机,就会占用交换机的资源。所以在监控性能的时候,就必须将这些无效的信息流量也考虑进去。不过在使用SPAN会话在排错的时候,就需要注意这个因素的存在。必要的时候,需要将这些无效的数据流甄别出来。
另外如果管理员选择的接口是端口通道接口的话,则会比较麻烦。因为其往往只能够成为源端口,而不能够成为目标端口。笔者的意思是,除非有特殊的必要,则不要将端口通道接口设置为源端口,这可能会造成一些莫名其妙的问题。