我对iSCSI协议的理解是,原端服务器iSCSI协议将SCSI设备、命令和数据封装成了标准的TCP/IP包,然后通过TCP/IP协议进行传输,目标端存储通过iSCSI协议将标准TCP/IP包解包成SCSI设备、命令和数据。
对于服务器网卡来说,网卡驱动只能识别和处理TCP/IP包,要将SCSI设备、命令和数据打包成标准TCP/IP包,就需要一个软件来实现,这个软件就是我们看到的initiator软件。在较老的操作系统,标准的软件包里不包含initator软件包,需要额外下载安装,如:windows2003系统要普通网卡支持iSCSI协议,就需要安装Initiator-2.08-build3825-x86fre.exe软件。
initator软件安装后,需要占用服务器CPU来处理SCSI协议封装为TCP/IP协议,这样,将降低服务器的计算能力。
使用iSCSI HBA卡后,对SCSI协议的封装交由独立的iSCSI HBA卡硬件处理,不再占用服务器CPU,减少对服务器性能的影响。
因此,标准的网卡要传输iSCSI协议的TCP/IP,必须要安装initator软件。iSCSI HBA卡的功能就是释放服务器计算资源,提供独立的硬件处理SCSI协议封装为TCP/IP协议。
疑问:现在的CPU是否是瓶颈?使用iscsi网卡之后会提升多大的性能?