网卡的选择
虽然大部分的操作系统支持iSCSI软件网卡接口,所以原则上容许任何以太网卡用来连接服务器和iSCSI磁盘阵列,但我们并不推荐你使用旧式的千兆以太网卡。旧式网卡主要针对的是工作站,而工作站内部通信主要是靠带宽仅达千兆的32位PCI总线,网卡需要和其他是设备共享总线通道。而服务器以太网卡使用的是速度快的多的PCI-X或PCI-E总线通道,并有板载硬件TCP/IP校检和装卸,这能降低CPU处理iSCSI数据的利用率,如Broadcom的NetXtreme板载控制芯片就被大多数服务器所采用。
另外,即使是选用了新型的网卡,一定要注意给它安装上生产商特定的驱动,因为Windows自带的驱动通常不支持网卡的高级功能,如Jumbo Frame和TCP校检和装卸。
如果选用了Alacritech或Chelsio公司的TOE卡,那么它的功能则更为强大。首先,它的卡载处理器能从硬件上处理TCP的分割和再组装,还有校检计算等。其次,TOE卡还能加速任一形式的TCP交通,并能与软件模拟的以太网卡并行工作。而像QLogic和Adaptec出品的iSCSI HBA,不仅能支持TCP管理中的装卸,甚至能支持更高级的iSCSI协议。这对主机操作系统而言,更像是一个磁盘控制器,而不仅仅是一个以太网卡了。
尽管TOE和iSCSI HBA在服务器运行一些常规应用程序,如SQL之类时,能帮助降低CPU 10-15%的运算周期时间。这点是不错,但对于厂商宣称的更快的磁盘I/O速度,我们在实践中却没有感觉出来。实际上,对于大多数中等规模以上的服务器,CPU并不是瓶颈所在,所以我们仅推荐少数需要的服务器使用TOE和HBA。
如果从iSCSI SAN的启动方面来看,那么iSCSI HBA的应用优势还是很明显的,它能使SAN的启动更为简易。此时的HBA扮演的是磁盘控制器的作用(还要有INT 13 BIOS支持),因此你可以把系统启动盘置于iSCSI的磁盘阵列上。况且,从SAN的启动方式使得创建多台同类服务器变得简单:只要简单拷贝启动卷就能在另一个磁盘创建Web站点或终端服务器。
EmBoot的netboot/i则是结合PXE(Pre-Execution Environment)和TFTP服务器使得服务器可以通过普通的以太网卡从iSCSI SAN启动。实现方式却是在本地磁盘中创建系统卷,然后通过传输拷贝到SAN作为启动项。听起来有点名不副实,不过我们却希望服务器厂商能在下一代产品中支持此项技术。