220 likes | 434 Views
By Anshul Chadda (Trebia Networks)-Speaker Ashish Palekar (Trebia Networks) Narendran Ganapathy (Sun Microsystems) R.D.Russell (University of New Hampshire). DESIGN, IMPLEMENTATION, AND PERFORMANCE ANALYSIS OF THE ISCSI PROTOCOL FOR SCSI OVER TCP/IP. Background SCSI Concepts SAN iSCSI
E N D
By Anshul Chadda (Trebia Networks)-Speaker Ashish Palekar (Trebia Networks) Narendran Ganapathy (Sun Microsystems) R.D.Russell (University of New Hampshire) DESIGN, IMPLEMENTATION, AND PERFORMANCE ANALYSIS OF THE ISCSI PROTOCOL FOR SCSI OVER TCP/IP Slide 1
Background SCSI Concepts SAN iSCSI SCSI Subsystem in Linux iSCSI Initiator Implementation Resources Used Basic Performance Analysis Conclusions and Future Work Questions Overview Slide 2
Acronym for Small Computer System Interface SCSI device identified by ID Logical Units present within the SCSI device Logical Unit Numbers: for logical addressing ID 7 ID 0 INITIATOR (Host) SCSI bus LUN 0 LUN 1 LUN 2 LUN 3 TARGET Hard disk What is SCSI? Slide 3
SCSI Terms Limitations Length of the SCSI bus (25 m) Number of SCSI devices supported Single host point-to-point INITIATOR COMMAND TARGET DATA IN DATA OUT STATUS MESSAGE IN MESSAGE OUT Slide 4
Host accesses the remote storage as a device Unit of Access: BLOCK Security, Consistency, Integrity Issues at BLOCK level Application Client 1 Application Client 2 Block Access Protocol Disk SAN Storage Area Network (SAN) Slide 5
TCP/IP/ Ethernet Network TCP/IP/ Ethernet Network Target Emulator New SAN Approaches Application Client 1 Ideal Solution Disk Application Client 2 Block Access Protocol Application Client 1 Our Approach Application Client 2 Disk Block Access Protocol Slide 6
Requires Reliable Transport Layer (TCP) Session established between Initiator and Target Multiple connections within a session Header size Large (48-byte) Basic header segment Additional Header Segment can be present Sequence Numbers Header and Data Digests optional Security and Authentication optional Parameter Negotiation Target Discovery Mechanism iSCSI Protocol (an IETF standard) Slide 7
Initiator Standard SCSI SCSI Over Network Target Emulator User Application User Application User space Transport Network Network Stack Kernel space File System File System SCSI iSCSI Subsystem SCSI iSCSI Subsystem SCSI SCSI HBA Driver Network Stack SCSI HBA Driver Disk Disk Slide 8
SCSI Upper level SCSI Mid level Transport Network Transport Network SCSI Command SCSI Status, Response SCSI Command SCSI Status, Response SCSI Host Bus Adapter (Low level driver) SCSI Host Bus Adapter (Low level driver) Target (Disk) Target (Disk) Target (Disk) Target (Disk) Target (Disk) Target (Disk) SCSI Subsystem in Linux Slide 9
iSCSI Initiator Implementation Slide 10
Initiator 2.4 GHz CPU, 1GB Memory Fast/Gigabit Ethernet Cards Linux Kernel (2.4.19) UNH iSCSI Initiator kernel modules Target 2.4 GHz CPU, 1GB Memory Fast/Gigabit Ethernet Cards Linux Kernel (2.4.19) UNH iSCSI Target kernel modules Resources Used For Testing Slide 11
Metrics: Bandwidth, Latency and % CPU utilization Variables Initiator Scatter-Gather List Size Ethernet Link Speed Target Sector Size Header & Data Digests TCP Nagle Algorithm Performance Metrics & Variables Slide 12
For the following Performance Variable values: Initiator Scatter-Gather List Size=64 Ethernet Link Speed=1000 Mbps Target Sector Size=512 B Header & Data Digests=OFF TCP Nagle Algorithm=OFF READ: Bandwidth=50.6761 MB/s, %CPU util. On target=18.65% %CPU util. On initiator=27% WRITE: Bandwidth=53.3937 MB/s %CPU util. On target=14.3% %CPU util. On initiator=26.9% Baseline Performance Values Slide 13
Effect of Initiator Scatter-Gather list size on Bandwidth Slide 14
To Increase Bandwidth Increase Initiator Scatter-Gather List Size Increase Ethernet Link Speed Increase Target Sector Size Turn OFF Header & Data Digests TCP Nagle Algorithm has negligible effect Conclusions Slide 19
Run multiple simultaneous applications on the initiator system to utilize the CPU and bandwidth Do Latency measurements too Detailed Performance Analysis for each network stack involved Analyze the effect of iSCSI protocol parameters on performance. Test hardware implementation for TCP/IP and iSCSI Compare with Fiber Channel technology for bandwidth, latency and CPU utilization Future Work Slide 20
SUN/EMC for funding the project Inter-Operability Lab. And Trebia Networks for providing system resources Acknowledgements Slide 21
Questions??? Slide 22