A-A+

两种方法实现ISCSI Target-2

2007年06月24日 网络存储 暂无评论 阅读 3,032 次

  还有两种特别的商业版iSCSI Target 软件,如Wasabi Systems 的Storage Builder 1500i,此是将iSCSI Target 软件搭配嵌入式操作系统(推测为BSD),一并存于IDE 接口的Compact Flash 记忆卡内,只要将此卡插置于一般x86 硬件,即可让该硬件转变成iSCSI Target。另一则是RocketDivision 的StarWind 与StarPort,前者为iSCSI Target 软件,后者为iSCSI Initiator 软件,使用于Windows 操作系统上,但作用不在仿真硬盘,而在仿真光盘。

QLogic 的ISP3010 芯片仅为TOE 而不具iSOE,可当一般GbE NIC 之用,亦可加速存取NAS,而ISP4010 芯片则为iSOE,可加速对iSCSI Target 的存取。

硬件法:如何实现一个iSCSI Target

  接着是硬件实现法,我们完全锁定在如何实现一个iSCSI Disk Array 上,但即便如此,实现方式也依然是形形色色、百家争鸣。

  首先是从头设计到尾,前述用于iSCSI HBA 中的芯片在iSCSI Target 中也都适用,也统统要用,包括GbE NIC(TCP/IP)芯片、iSCSI 芯片、IPSec 芯片等,而且用量也比iSCSI HBA 多,iSCSI HBA 可能用1∼2 颗GbE 芯片或iSCSI 芯片,但iSCSI Target 会用到2∼4 颗,理由是一部iSCSI Target/Disk Array 要服务多个iSCSI Initiator/iSCSI HBA,传输量较大,所以要多个相同并行组态以增进效能,另外也可充当备援组件,增加运作的坚稳可用性。

  当然!上述这些芯片也可以部分舍弃不用,但道理一样:请改采软件方式来弥补,且代价是消耗部分的CPU 运算力。在这些之外,iSCSI Disk Array 的重点当然是RAID 控制芯片(RAID Controller),透过RAID 芯片及其支持接口以连接各式硬盘。

  要提醒的是,虽然设计目标为iSCSI,但不表示我们只能用SCSI 硬盘或SAS硬盘,其实也可使用ATA 硬盘、SATA 硬盘,或FC 硬盘等,这并不相抵触,重点只在于RAID 芯片支持何种硬盘接口,RAID 芯片与CPU 连接,CPU 与iSCSI芯片连接,过程中CPU 会进行运作中所需的各种数据转换,这也是iSCSI Target的设计实现不必限定非使用SCSI/SAS 硬盘的缘故。

  如果认为各环节都自主设计太久太累,那可以考虑以半成品为基础再行往上发展,例如iStor Networks 所提供的GigaStorATX 系统板,该板用上iStor 所自研的特用芯片:iSNP8008(iSNP=IP Storage Network Access Processor)、8 个1GbE 网埠(iSCSI 传输,另有支持10GbE 的系统板)、16 个SATA 埠(可接16 颗SATA 硬盘)、4GB 高速缓存,并已具备RAID 0,1,10,5 等数组组态,只要再搭配硬盘与些许设计,便可快速实现一部iSCSI Disk Array。

Stor 的GigaATX 系统板是专为加速iSCSI Target 设计所提出,该系统板上使用iStor 自研的iSNP8008 处理器。

  另一种半成品作法是用LSI Logic 的iMegaRAID iSCSI 套件,这套件包含软硬两部分,硬件方面是一张LSI Logic 的MegaRAID SATA 300-8X 或300-8XLP的磁盘阵列控制卡,用来形成SATA 磁盘阵列,软件部分则是LSI Logic 的iMegaRAID RAS Software,将控制卡装入一部使用Linux 操作系统的计算机,且该计算机已具备GbE NIC 功能,再安装上iMeagaRAID 软件,即可完成一部iSCSI Disk Array。

  严格来说,LSI Logic 提供的方式不太能算是硬件作法,应是软件作法,只是该软件相依于该公司自有的磁盘阵列控制卡上,非配装该卡才能发挥,其余部分都是以纯软件方式实现,例如 iSCSI 运算、TCP/IP 运算等,只要iMegaRAID 软件舍弃与自家控制卡的相依性,而能适用于任何数组控制卡,就是一个地道的软件iSCSI 方案。说穿了,此法只是让LSI Logic 用来增加既有RAID 控制卡的价值与运用范畴。

  不过,使用现成的iSCSI HBA 卡、现成的RAID 卡,甚至使用泛用的主机板等,确实是较快便的实现法,进而将研发心力更专注在韧体、驱动程序、嵌入式操作系统等层面,但相对的也必须牺牲硬件层面的最佳化设计。

  用一部x86 计算机,安装Linux 操作系统及一张GbE NIC,再安装上LSI Logic 的磁盘阵列控制卡:MegaRAID SATA 300-8x,以及LSI Logic 的iSCSI Target 软件:iMegaRAID RAS,即可让x86 计算机摇身变成iSCSI Disk Array。

  如果认为以半成品来进行设计还是过于麻烦,也还有更轻松行事的方式,甚至完全只要手工就能完成,无须任何电子工程设计,如ATTO Technology 的iPBridge 系列的iSCSI 桥接器,提供iSCSI-to-SCSI 与iSCSI-to-FC 的桥接,可让过去采直接附连(Direct Attached,如SCSI、FC 接口)的磁盘阵列柜(Disk Array,JBOS、DAS)或磁带设备(Autoloader、Tape Library)转变成iSCSI Target。

  又如SANRAD 的V-Switch 系列(iSCSI Gateway,也称iSCSI Bridge)也是直接取用既有DAS、JBOD 等直接附连式储存设备,重新转化成iSCSI,以保障企业用户在既有储存设备上的投资。也因为只要手动转接与相关调设,所以资管、网管者可自行完成转化程 序。

iSCSI 外的更精进路线:10GbE、iWARP

  要不是GbE 的技术及价格成熟,否则iSCSI 也不会到临,因为以100Mbps的Ethernet 来执行iSCSI 在效率上可说是完全不可行。

  有了GbE 后,虽然1Gbps 的iSCSI 依旧逊于1Gbps FC(理由是TCP/IP 协定的频宽占量多过FC 的FCP 协议,且Ethernet 协议有较大的传输延迟),但也逐渐逼近,迫使FC 将入门级从1Gbps 调升为2Gbps,好与1Gbps iSCSI 有所区隔,并往上追加4Gbps FC,以维持其效能领先地位。

  不过,Ethernet 并非只及1Gbps,10Gbps 也已经实现,40Gbps 也已经列入规划进程,所以也有业者提出让iSCSI 使用10Gbps 而非拘限在1Gbps,一举超越现有2Gbps、4Gbps 的FC,例如iVivity 的iDiSX 2000 芯片(iDiSX 2000 是I-Disks2000 的谐音),即是以单纯的10GbE 芯片,并搭配iSCSI 软件来实现iSCSI。

属于高阶高效性iSCSI 方案

  另外,只将高速Ethernet 用于「储存网络化」也过于可惜,所以也有众多业者发起iWARP,不仅可实现储存的网络化,也能实现I/O 的网络化,这在过去多半要倚赖IB(InfiniBand)才能达成,但iWARP 就是希望用更共通的Ethernet标准来实现,进而取代。从许多迹象可看出iWARP 取代IB 的意图,例如两者都具有RDMA(Remote Direct Memory Access)机制,简化网络两端的内存数据交换程序,从而加速。

  同时,RDMA 也可搭配iSER(iSCSI Extension to RDMA)协议,达到与iSCSI一模一样的储存网化功效,等于是iSCSI 的超集,既能将「储存资源及运作」网络化,也能将「I/O 资源及运作」网络化。目前NetEffect 的NE01 系列芯片即是针对iWARP 运用所开发,并提出所谓的ECA(Ethernet Channel Adapter),从名称上即可知有与IB 较量的意味,因为IB 卡称为HCA(Host Channel Adapter)或TCA(Target Channel Adapter),严格而论具iWARP 硬件加速及分担卸载功效的10GbE 网卡,当称为RNIC(RDMA NIC)。

Voltaire 为InfiniBand 的交换、路由设备大厂,但也支持RDMA 及iSER 协议,此也等于支持iWARP/iSCSI,图为iSCSI 与iSER 的协议架构。

  此外Broadcom 提出所谓的C-NIC(Converged NIC)聚合型网卡理念,即是在一颗NetXtreme II 系列的GbE 控制芯片内同时具备以太网络、储存网化、I/O网化等功效,传统以太网部分具有TOE 运算,储存网化则具备iSCSI 运算、I/O网化则具备RDMA 运算,大幅卸除CPU 的辅助运算,使CPU 占用率降至20%以下。

  关于C-NIC 理念,Broadcom 目前的代表性芯片为BCM5706(PCI/PCI-X 接口)与BCM5708S(PCIe 接口),其中BCM5706 为第一代,BCM5708S 为第二代,第二代还将传输率从1Gbps 提升至2.5Gbps,虽是专属超规作法,但却更贴近与符合C-NIC 的需要,毕竟一个网埠具备三种功效,若没有更高的频宽作为支持,反会造成三种网化功效互迁就或互干扰的影响。而且Broadcom 也于2005年7 月收并Siliquent Technologies,该公司专注于10GbE 芯片的技术,预计此一收并将有助于Broadcom 的C-NIC 方案从2.5Gbps 提升至10Gbps。

  不过,现在10GbE 的相关芯片仍偏贵,也必须使用光纤,铜线规格仅初步定案,仍待更完整,且据知铜线无法如过往GbE 般保持在100m,距离可能会缩短。所以,前言10GbE几乎必用光纤,如此将与FC愈来愈像,且目前FC芯片比10GbE芯片低廉,加上FC 未来也计划迈向10Gbps,所以10Gbps 的Ethernet 与FC 还有番价格效能比的争斗,甚至也要与10Gbps 的IB 争斗。

给我留言

Copyright © 【存储部落】 保留所有权利.   Theme  Ality

用户登录 ⁄ 注册

分享到: