前几期的文章—存储网络简析简要介绍了几种常用的存储网络,在传统IT架构中FC SAN依然是存储网的主要形态,与之相伴的慢速设备就是网络管理员需要面对的一个运维痛点。那什么是慢速设备呢?先上一个正统的定义。
慢速设备(slow drain device)是指SAN网络中的一个状态异常的端设备(主机或存储),其表现为端设备(主机或存储)无法正常快速响应,从而导致数据帧驻留在SAN中过长的时间周期,最终造成应用性能下降,极端情况下还会造成IO失败。
通过上面的定义,我们知道慢速设备就是存储网中的一个响应慢的设备,不能快速处理数据包导致应用性能下降。常言道,兵熊熊一个,将熊熊一窝。各位看官若认为慢速设备只影响自己一个应用系统,其它系统还是活蹦乱跳的,那就图样图森破了。
FC SAN运行Fibre Channel协议,它采用Buffer Credit机制实现流量拥塞控制。简单来说,SAN网络中的每个端口都有一个credit值用来记录本端口可以缓存多少数据包,进来1个数据包credit值减1,发出去一个数据包credit值加1。
在两个设备之间进行数据传输时,首先会进行BB Credit的确认,如果对方返回R_RDY信号,就表示有空余的BufferCredit接收数据。如果没有剩余Buffer,对方就会暂停传输数据。在进行正常的数据传输时,Buffer的使用是占用->释放->占用->释放的循环往复的过程。
如果一台存储由于种种原因无法返回R_RDY信号,那么数据帧就会在交换机的端口缓冲,并且进一步在交换机的级联端口进行缓冲,最后会进一步传导到服务器上。由于交换机间的级联线是共享的,所以一台存储或服务器的问题,如果不及时处置,会扩散到与这台设备共享级联线的其它多台设备上,影响大量应用系统。下面是由于一个设备问题,对其它设备造成影响的过程。
由于存储设备不能及时处理数据,导致它所连接的交换机端口buffer耗尽,端口堵塞。
数据包除了在存储连接的端口上积压,还会在A、B两台交换机之间的级联端口上积压。
A、B交换机间级联端口的buffer耗尽,B交换机不能向A交换机发送数据包了。
B交换机连接的3台服务器全部堵塞,无法向SAN网络发送数据包,无法访问A交换机连接的2台存储。
产生原因
慢速设备的产生原因是多种多样的,如:端设备故障、光纤线衰减大、SFP模块异常、HBA卡异常,以及该端口传输负载过重导致不能快速响应等等。
结语
慢速设备是无法消除的,而且随时可能发生。成熟的SAN交换机厂商都研发了慢速设备监测、隔离工具,可以自动监控各端口的数据传输状态,一旦丢包个数、延时等参数达到某个设定的阀值,就会将对应端口隔离出SAN网络,以免问题扩散。
领取专属 10元无门槛券
私享最新 技术干货