此外还有iSCSI Router(路由器),不过,目前似乎只有Cisco 一家提供,这是在需要以iSCSI 进行异地备援传输时才会使用。至于iSCSI Gateway(网关器)则在接口转换时才需要,例如让iSCSI 网络与FC 网络接轨,就需要iSCSI-to-FC Gateway,或将网络型的iSCSI 转换成本地端的传统SCSI,这时则用iSCSI-to-SCSI Gateway,iSCSI Gateway 也不见得用硬件方式实现,用CPU 执行特定的转换程序,效用与角色等同于iSCSI Gateway。 很明显的,一般的设计需求会集中在iSCSI Initiator(iSCSI Initiator Software、iSCSI HBA)及iSCSI Target(iSCSI Disk Array、iSCSI Tape Library)两者,至于iSCSI Switch 即Ethernet Switch,无须更动,而iSCSI Router 则较少运用。
Alacritech 自研的因特网协议处理芯片(Internet Protocol Processor,IPP):1000x1,此芯片运用该公司特有SLIC(session-Layer Interface Control)技术,由IPP 芯片来加速TCP/IP、iSCSI 等执行,使用此芯片所形成的适配卡Alacritech称为TNIC,其实即是TOE GbE NIC+iSOE iSCSI HBA。 首先我们先要了解Ethernet 卡的过往,早在1982 年Sun 的第一部工作站出货时就已具Ethernet 功能,在Ethernet 卡发展的初期,由于计算机CPU 效能(此处的计算机指的是工作站、个人计算机)仍不足,所以当时的Ethernet 卡都有专责处理TCP/IP 程序的芯片及电路,不需耗用CPU 效能,然之后计算机CPU 效能跃增,使Ethernet 芯片/网卡开始被设计成只负责部分工作,而非过去的全部工作,舍去处理的部分改由CPU 与执行搭配软件来负责。 然而今日iSCSI 的出现,倘若是使用iSCSI Initiator 软件,服务器CPU 除了要执行iSCSI 的传送、接收等程序外,就连GbE NIC 的TCP/IP 编解工作也是由CPU 来负担,倘若CPU 效能不足,或软件反应不够快(程序撰写不佳,或操作系统架构特性使然),过重的负担就会影响iSCSI 的传输表现。 因此,要加速iSCSI 传输,第一种作法即是使用iSCSI HBA 卡,iSCSI HBA卡主要是担负iSCSI 程序的处理执行,如此CPU 可以卸下此方面的工作,但仍要执行TCP/IP 方面的工作,不过已有加速效用,此称为iSOE(iSCSI Offload Engine)。第二种作法,是使用「较尽责」的GbE NIC 卡(或控制芯片),能完整包办TCP/IP 层面的运算,不需CPU 操烦,CPU 可以专心处理iSCSI 程序,此称为TOE(TCP/IP Offload Engine),由于仍是个NIC 卡/芯片,所以依然需要iSCSI Initiator 软件的辅助,但一样有加速效果。 第三种作法则是让iSCSI HBA 卡(芯片)既负责TCP/IP 工作也负责iSCSI工作,那么CPU 就更加轻松,也可如第一种作法般地舍去iSCSI Initiator 软件,加速效果也胜过前两者。 再者,假如是重视iSCSI 传输安全性者,则希望在TCP/IP 环境中再添入IPSec的加密,然而IPSec 一样要耗用CPU 来编解运算,若能用特有芯片来承担此一运算,卸除CPU 的负担,自然又可以更快,此称为SOE(Security Offload Engine)。当然!若不使用IPSec 则与第三法无所差别。 有了上述概念后,在此就以QLogic 的iSCSI 芯片为例作说明,QLogic 的ISP3010 芯片只是颗具TOE 效果的Ethernet 加速芯片,依旧是GbE NIC 卡/芯片,搭配iSCSI Initiator 软件即可加速iSCSI 的传输执行,此即是第二法。 接着,QLogic 的ISP4010 芯片是个TOE 的GbE NIC 芯片,也是个iSCSI 芯片,等于将TCP/IP、iSCSI 等执行工作都一手包办,不需倚赖CPU 参与运算,但若用上IPSec 传输加密则还是要倚赖CPU 来运算,此为第三法。 然后,QLogic 也提供一颗ISPSEC1000 的辅助芯片,专责处理IPSec 运算,可搭配前述的ISP3010 或ISP4010 使用,若搭配ISP4010 则属于我们前述的第四法,若搭配ISP3010 虽没有前述的对应法,但也只剩iSCSI 收发程序要交由CPU负责,一样要搭配iSCSI Initiator 软件。
Adaptec 的iSCSI HBA 卡:7211F,F 即Fiber 之意,使用1Gbps 以太光纤连接,控制芯片则是由Adaptec 自行研发,能卸载CPU 的TCP/IP、iSCSI 等运算负荷,另有7211C,C 即Copper,使用1Gbps 以太铜线。 上述的四、五法是较常见的几种,但不代表全部,例如Intel 的iSCSI HBA卡:PRO/1000 T IP Storage Adapter(2003 年7 月提出,2005 年1 月停供)则又是另一种作法,该卡使用一套IOP310 的I/O 处理芯片组(由一颗80200 处理控制芯片与一颗80312 辅助芯片所组成)及一颗82544EI 的GbE MAC 控制芯片,这些都是较中性、泛用取向的芯片,并未针对任何应用调整过功能规格,但以此再搭配软件(驱动程序)执行,一样可以实现iSCSI 效用,不过CPU 负荷的卸载性在此不得而知。
QLogic 的ISP4010 芯片,以64bit PCI/PCI-X 与系统主存储器相连,ROM 方面使用8-bit 宽、2MB~16MB 的闪存,RAM 方面使用72-bit 宽(含查核位)、16MB~256MB 的SDRAM,另有36-bit 宽(含查核位)、2MB 的额外程序/数据存储器(使用SRAM,很明显是扮演快取加速功效),ISP4010 芯片具备TCP/IP卸载及GbE 接口。新闻热点
疑难解答