31.07.2015 Views

network protocols handbook.pdf

network protocols handbook.pdf

network protocols handbook.pdf

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

233Protocols GuideSAN ProtocolsProtocol NameiSCSI: Internet Small ComputerSystem Interface (SCSI)Protocol DescriptionInternet Small Computer System Interface (iSCSI) is a TCP/IPbasedprotocol for establishing and managing connections betweenIP-based storage devices, hosts and clients, creating aStorage Area Network (SAN). The SAN makes possible to usethe SCSI protocol in <strong>network</strong> infrastructures for high-speed datatransfer at the block level between multiple elements of datastorage <strong>network</strong>s.The architecture of the SCSI is based on the client/server model,which is mostly implemented in an environment where devicesare very close to each other and connected with SCSI buses.Encapsulation and reliable delivery of bulk data transactions betweeninitiators and targets through the TCP/IP <strong>network</strong> is themain function of the iSCSI. iSCSI provides a mechanism for encapsulatingSCSI commands on an IP <strong>network</strong> and operates ontop of TCP.For today’s SAN (Storage Area Network), the key requirementsfor data communication are: 1) Consolidation of data storagesystems, 2) Data backup, 3) Server clusterization, 4) Replication,and 5) Data recovery in emergency conditions. In addition,a SAN is likely to have a geographic distribution over multipleLANs and WANs with various technologies. All operations mustbe conducted in a secure environment and with QoS. iSCSI isdesigned to perform the above functions in the TCP/IP <strong>network</strong>safely and with proper QoS.The iSCSI has four components:• iSCSI Address and Naming Conventions: An iSCSInode is an identifier of SCSI devices (in a <strong>network</strong> entity)available through the <strong>network</strong>. Each iSCSI node has aunique iSCSI name (up to 255 bytes) which is formedaccording to the rules adopted for Internet nodes.• iSCSI Session Management: The iSCSI session consistsof a Login Phase and a Full Feature Phase whichis completed with a special command.• iSCSI Error Handling: Because of a high probability oferrors in data delivery in some IP <strong>network</strong>s, especiallyWAN, where the iSCSI can work, the protocol providesa number of measures for handling errors.• iSCSI Security: As the iSCSI can be used in <strong>network</strong>swhere data can be accessed illegally, the protocol allowsdifferent security methods.Protocol StructureiSCSI PDU structure:iSCSI BHS Format:8 16 24 32bitBasic Header Structure (BHS)Additional Header Structure 1 (AHS) (optional)…Additional Header Structure n (AHS) (optional)Header Digest (optional)Data Segment (optional)Data Digest (optional)8 16 24 32bit. I Opcode F Opcode-specific fieldsTotal AHSLengthData Segment lengthOpcode-specific fields or Logic Unit Number (LUN) (8 bytes)Initiator Task Tag (4 bytes)Opcode-specific fields (28 bytes)• I - For request PDUs, the I bit set to 1 is an immediatedelivery marker.• Opcode - The Opcode indicates the type of iSCSIPDU the header encapsulates. The Opcodes are dividedinto two categories: initiator opcodes and targetopcodes. Initiator opcodes are in PDUs sent bythe initiator (request PDUs). Target opcodes are inPDUs sent by the target (response PDUs).• Final (F) bit - When set to 1 it indicates the final (oronly) PDU of a sequence.• Opcode-specific Fields - These fields have differentmeanings for different opcode types.• TotalAHSLength - Total length of all AHS header segmentsin units of four byte words including padding, ifany.• DataSegmentLength - This is the data segment payloadlength in bytes (excluding padding). The DataSegmentLengthMUST be 0 whenever the PDU hasno data segment.• LUN - Some opcodes operate on a specific LogicalUnit. The Logical Unit Number (LUN) field identifieswhich Logical Unit. If the opcode does not relate toa Logical Unit, this field is either ignored or may beused in an opcode specific way.• Initiator Task Tag - The initiator assigns a Task Tag toeach iSCSI task it issues. While a task exists, this tagMUST uniquely identify the task session-wide.Related <strong>protocols</strong>SCSI, iFCP, FCP, FCIP, mFCP, TCP

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!