The first article in a two-part series examines application and performance requirements, and software versus hardware initiators.
By Saqib Jang
While Fibre Channel storage area networks (SANs) are best-suited for high-end, high-throughput applications that require 100 or 200MBps throughput (such as enterprise-level OLTP, data mining/warehousing, visualization, and video editing), there are a range of low-end and midrange business applications that typically require less than 20% of these throughput rates. The emerging iSCSI protocol is gaining increased interest for more cost-effective and less resource-intensive deployment of consolidated storage in such environments.
However, successful iSCSI implementation needs careful planning at the early stage of each project, including defining applications, performance, scalability, security, and availability requirements.
This article will cover applications, initiators, and performance requirements. The next article in the series will review iSCSI security, availability, network infrastructure, and storage system component issues.
There are a number of business applications, including the dominant e-mail (Microsoft Exchange) and OLTP (SQL Server) applications, for small to mid-sized businesses that expect direct access to block storage and so are well-suited to iSCSI. An Exchange server platform, for example, uses the SCSI protocol to read and write records to a back-end database for information and message storage. Unlike direct-attached storage, iSCSI allows separation of servers from storage, providing economies of scale for both storage volumes and administrative resources.
"iSCSI is emerging as a key enabler for storage consolidation in Exchange environments," says Zane Adam, director of product management and marketing in Microsoft's Enterprise Storage Division. "Customers can expect to see a dramatic improvement in cost of ownership for Exchange, including easier backup, dynamic volume sizing, and business continuance protection."
iSCSI also offers a cost-effective alternative for enterprises to consolidate their SQL Server resources. iSCSI can be deployed across a shared IP infrastructure and can span longer distances. Enterprises can thus provide inexpensive access to SQL Server resources from remote branches over the existing IP infrastructure.
A common side effect of server consolidation projects or implementing a centralized Fibre Channel SAN is scores of unused disk arrays. "iSCSI makes it relatively simple to migrate server disks—either direct-attached external JBOD or RAID—to an IP SAN," according to Bill Huber, CTO of StoneFly Networks, a vendor of IP-based storage provisioning appliances. "Administrators can take storage that is directly attached to a server and convert it to networked storage."
One question likely to arise as companies evaluate iSCSI is the extent to which network-attached storage (NAS) may be used in place of iSCSI. In reality, NAS-based file services can be complementary to IP network-based block services for transactional business applications provided by iSCSI. Applications such as personal productivity and CAD/CAM, which require file sharing, are ideally suited for NAS, whereas iSCSI provides higher performance for OLTP applications and those with large numbers of relatively small files.
"Initial iSCSI deployment will be focused on applications that generate changes at the block level, such as database and messaging applications," says Microsoft's Adam. "Eventually, iSCSI will be used in advanced applications such as expanded scalability of NAS clusters and network-based boot storage."
iSCSI initiator options
A storage network using iSCSI requires application servers to run iSCSI initiators. An iSCSI initiator is analogous to an NFS client in a NAS environment or a host bus adapter (HBA) in a Fibre Channel SAN. The initiator encapsulates SCSI commands and data so that they can be sent over TCP/IP to an iSCSI target, which extracts the commands and data.
Both software and hardware initiators are available. Software initiators for Windows 2000, XP, and 2003 are available from Microsoft via a free download, while initiators for Novell NetWare and Red Hat Linux are now components of those operating systems. Free downloads of software initiators for the major Unix variants—such as Solaris, AIX, and HP-UX—are available from Cisco; the Unix vendors are expected to add support for iSCSI into their operating systems in the near future.
iSCSI hardware initiators offload iSCSI and TCP/IP protocols to a dedicated adapter, providing improved performance and reduced server CPU utilization. The type of hardware initiator that offloads both iSCSI and TCP/IP protocols is commonly called an HBA. iSCSI HBAs are (or will be) available from vendors such as Adaptec, Emulex, Intel, iReady, and QLogic. Microsoft has launched a branding program to certify Windows-based third-party iSCSI peripherals, including HBAs.
The other hardware initiator option is a TCP offload engine network interface card (TOE NIC, or TNIC). Vendors include Adaptec and Alacritech. While TNICs offload TCP and iSCSI processing, they are not optimized to function as server storage peripherals for device management and availability purposes.
For example, TNIC cards are not compatible with Microsoft's iSCSI for Windows certification (there is no Microsoft-approved interface for TNIC integration in Windows environments).
iSCSI software initiators
There are a number of factors that play an important role in the decision of whether to use iSCSI software or hardware initiators, including the nature of front-end applications, back-end server-to-storage traffic profile, and disk system characteristics. Software initiators may be best-suited for lightly loaded servers supporting a single application with low user counts, where application headroom is not a high priority.
For applications with higher throughput requirements and larger TCP transaction sizes—such as messaging, backup, and file services—software initiators would work well for average data-transfer rates below 40MBps. For example, iSCSI load simulation results of up to 4,000 Microsoft Exchange users, published by Cisco, show that Exchange application servers generate on average less than 20MBps server-to-storage traffic. Because Exchange requests are typically very random in nature, the limiting factor in server-to-storage traffic latency was found to be disk access and seek times.
For transactional applications having I/O sizes approaching Ethernet sizes, such as OLTP services, software initiators work well under constrained conditions. Cisco's tests emulating a small-to-medium enterprise with up to 150 users accessing OLTP and data warehousing applications on a single SQL Server equipped with iSCSI software initiator and Fibre Channel HBAs show that iSCSI meets performance expectations, as compared to Fibre Channel.
"iSCSI offers compelling performance and cost benefits for departmental and branch office environments," says Ed Chapman, senior director of marketing in Cisco's Enterprise Storage Division. "The benefits of high-performance, scalable storage arrays can now be available to users enterprise-wide."
iSCSI hardware initiators
Compared to software initiators, iSCSI hardware initiators enable optimum performance as server and storage system parameters are scaled and should be considered in scenarios where application headroom is critical.
For large transaction size applications, hardware initiators enable delivery of wire-speed server-to-storage performance once bottlenecks in the system (e.g., server CPU capacity and network performance) are eliminated. Adaptec's iSCSI HBA is able to deliver up to 130MBps full-duplex throughput for 64KB I/O sizes, with less than 5% CPU utilization on a 1GHz processor.
For small transaction size applications such as OLTP, iSCSI hardware initiators could enable dramatically higher user counts and transaction rates. For example, internal testing performed by iReady using a Pentium III server running the Iometer benchmark test with 1,500-byte I/O sizes over an iSCSI HBA shows 30,000 I/Os per second (IOPS) with host CPU at 75% utilization. Running the same test with a software initiator yields 12,000 IOPS at around 90% CPU utilization. "iSCSI offloading provides important benefits for applications having high throughput but small I/O size. In these situations, since the header/data ratio is much higher, there is a dramatic improvement in host CPU utilization," says Ryo Koyama, CEO at iReady.
The next article in this series will focus on availability issues and iSCSI target storage systems, security, and interoperability with Fibre Channel.
Saqib Jang is a principal at Margalla Communications, a Woodside, CA-based strategic and technical marketing consulting firm focused on storage networking. He can be contacted at firstname.lastname@example.org.