SORT BY:

LIST ORDER
THREAD
AUTHOR
SUBJECT


SEARCH

IPS HOME


    [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

    Re: iSCSI Requirements Draft - Informal WG Last Call - A few concerns about the document.



    
    Having reviewed the iSCSI requirements draft, I have identified the
    following issues.  Where possible, I have proposed corrections.
    
    1)  MISSING REQUIREMENT FOR AVOIDING LUN BLOCKING
    
    	At present, there does not appear to be any text
    	referencing the problems of hanging up all logical units
    	on a target because one command to one logical unit
    	was stalled.  This should be addressed explicitly, 
    	probably in section 4.2.
    
    2)  ORDERING OF COMMANDS
    
    	In section 2.4, the following text is given:
        
       MUST provide a FIFO transport of SCSI commands, even when commands 
       are sent along different paths. This command ordering mechanism 
       SHOULD seek to minimize the amount of communication necessary across 
       multiple adapters doing transport off-load. 
        
    	This was heavily discussed already.  Related to point 1, the
    	issue should actually be the FIFO transport of SCSI commands
    	for a particular I_T_L nexus.  If the commands are going to
    	different logical units or crossing different I_T nexi, the
    	requirement should not be present.  I would propose changing
    	the MUST to apply only to an I_T_L nexus, allowing other
    	relationships to have an un-ordered relationship.  This will
    	be especially useful for recovery on systems that install
    	a lower level framing capability.
    
    3)  CLARIFY AN UNCLEAR SECURITY REQUIREMENT  
    
    Section 6.2 provides a requirement that uses the oxymoron 
    "passive attack".  If it is an attack, there is an intent and
    it is active.  I would propose deleting the word "passive" in
    the following requirement:
        
       iSCSI authenticated login MUST be resilient against >passive< attacks. 
      
    4)  REMOVE SALES/MARKETING FLUFF
    
    	Certain sections are filled with opinions that have no
    	relevance to the standards activities upon which these
    	requirements are being placed.  The wording may or may
    	not be correct and is often improvable.  Such wording
    	should be deleted from this document.  The more
    	egregious examples, but not the only examples, of text
    	that should be deleted include:
    
    	In section 2.1: 
    
       "The IP infrastructure offers compelling advantages for volume/block-
       oriented storage attachment compared to current approaches.  It 
       offers the opportunity to take advantage of the performance/cost 
       benefits provided by competition in the internet marketplace. This 
       reduces the cost of storage infrastructure by: 
        
        -- Increasing performance (market driven by networking demand) 
        -- Offers richer array of management, security and QoS solutions 
        -- Economies arising from the need to install and operate only 
           single type of network 
        
       In addition, mapping SCSI over IP provides: 
        
        -- Extended distance ranges 
        -- Connectivity to "carrier class" services that support IP"
    
    	While an intriguing marketing statement, there is absolutely
    	no objective information that indicates what is the standard of 	comparison and whether or not any of this is true.  This text
    	should be deleted.
    
    	On page 7:
    
       "Products could initially be offered for Gigabit Ethernet attachment, 
       with rapid migration to 10 GbE.  For performance competitive with 
       alternative SCSI transports, it will be necessary to implement the 
       performance path of the full protocol stack in hardware.  These new 
       storage NICs might perform full-stack processing of a complete SCSI 
       task, analogous to today's SCSI and Fibre Channel HBAs, and might 
       also support all host protocols that use TCP (NFS, CIFS, HTTP, etc)."
    
    	All these statements depend on what market is being approached
    	by the implementation.  For any particular market, any or all
    	of this information may be incorrect.  This text should be deleted.
    
    	Other similar text is sprinkled throughout the document and 
    	should be deleted.
    
    5)  CORRECT TEXT ASSOCIATED WITH DIRECT DATA PLACEMENT
    
    	The text associated with direct data placement in section 2.2
    	is largely associated with routing buffering and framing, not
    	the requirements for zero-copy.  The text at present is:
    
       Direct data placement (zero-copy iSCSI): 
        
       This is an important implementation goal.  In an iSCSI system, each 
       of the end nodes (for example host computer and storage controller) 
       has ample memory; but the intervening nodes (NIC, switches) do not.  
       Assume a WAN-scale retransmission requirement of 25 MB (1 Gbps) or 
       250 MB (10 Gbps, see Framing discussion).  Therefore, intervening 
       nodes MUST NOT be required to buffer data. 
    
    	It should be rewritten to say:
    
       Direct data placement (zero-copy iSCSI): 
        
       Direct data placement allows iSCSI data to be moved directly
       to the required memory locations in memory with no requirement
       to recopy the incoming information.  Direct data placement 
       significantly reduces the memory bus and I/O bus loading in
       the end-point systems, allowing improved performance.
       
    6)  ALTERNATE CONNECTION BINDING
    
    	The section in 2.4 discussing an alternate mechanism for
    	connection binding merely serves to weaken the stand
    	in favor of the selected binding relationship.  The following
    	text should be deleted:
    
       "An alternate approach that was extensively discussed involved 
       sending all commands on a single connection and the associated data 
       and status on a different connection (asymetric approach). In this 
       scheme, the transport ensures the commands arrive in order. The 
       protocol on the data and status connections is simpler, perhaps 
       lending itself to a simpler realization in hardware.  One 
       disadvantage of this approach is that the recovery procedure is 
       different if a command connection fails vs. a data connection. Some 
       argued that this approach would require greater inter-processor 
       communication when connections are spread across processors.   
       The reader may reference the mail archives of the IPS mailing list 
       between June and September of 2000 for extensive discussions on 
       symmetric vs asymmetric connection models." 
    
    7)  OPTIONAL BEHAVIOR
    
    	In clause 2.4, wording about the desirability of minimizing
    	optional features is discussed.  However, it reaches the 
    	mistaken conclusion that there is only one time at which
    	options may be negotiated and that rejection is required if
    	the options are not supported.  The following text should 
    	be changed from:
    
       "In the interest of simplicity, iSCSI SHOULD minimize optional 
       features.  When features are deemed necessary, the protocol SHOULD 
       allow for feature negotiation at session establishment (login) and 
       provide for rejection when an implementation does not support a 
       requested feature."
    
    	to:
    
       "iSCSI SHOULD minimize optional features.  When features are
       deemed necessary, the protocol SHALL provide for negotiation of
       the use of those features.  iSCSI SHALL operate correctly whether
       an optional feature is negotiated to be used or is 
       negotiated not to be used."
    
    8)  REMOVE OPTIONAL EXTENSIONS
    
    	In section 4.1, the text suggests that various digest
    	implementations may be used.  This is an option that has
    	no reason to be allowed, since we will choose the proper
    	digest calculation method after due study and no other
    	calculation method should be allowed.  The following
    	text should be deleted.
     
       "The iSCSI header format SHOULD be extensible to include other digest 
       calculation methods."
    
    9)  SOFTEN REQUIREMENT TO IMPLEMENT STRANGE SAM-2 FUNCTIONS
    
    	In section 5.2, the following text suggests that any
    	feature in SAM-2 requires a valid transport mapping.  However,
    	it further suggests making such functions recommended or
    	required to implement, even if they are rarely used or 
    	used only in contexts different from iSCSI.  The following
    	text:    
    
       "In order to be considered a SCSI transport, the iSCSI standard must 
       comply with the requirements of the SCSI Architecture Model [SAM2] 
       for a SCSI transport.  Any feature SAM2 requires in a valid 
       transport mapping MUST be specified by iSCSI and the specification 
       SHOULD make such a feature either RECOMMENDED or REQUIRED in 
       implementations."
    
    	should be changed to read:
    
      "In order to be considered a SCSI transport, the iSCSI standard SHALL 
       comply with the requirements of the SCSI Architecture Model [SAM2] 
       for a SCSI transport.  Any feature SAM2 requires in a valid 
       transport mapping SHALL be specified by iSCSI.  The iSCSI document 
       SHALL specify for each feature whether it is OPTIONAL, RECOMMENDED,
       or REQUIRED to implement and/or use."
    
    10)  INCORRECT REQUIREMENT FOR BRIDGES/ROUTERS  
    
    	In section 5.2, there is a paragraph treating gateways.
    	I contend that all present SCSI transports are easily bridged
    	BECAUSE they have chosen a very similar encapsulation format.
    	The similar encapsulation format is that used by FCP, FCP-2,
    	SBP-2, Packetized Parallel, and SSA.  The structure of 
    	iSCSI packets and the protocol for transmitting them should
    	be similar to the encapsulation formats used by those
    	protocols.  Using this as a guideline, the following
    	requirement is incorrect:
    
       "The iSCSI protocol MUST allow for the construction of gateways to 
       other SCSI transports, including parallel SCSI [SPI-X] and to SCSI-
       FCP[FCP, FCP-2].  It MUST be possible to construct "translating" 
       gateways so that iSCSI hosts can interoperate with SCSI-X devices; 
       so that SCSI-X devices can communicate over an iSCSI network; and so 
       that SCSI-X hosts can use iSCSI targets (where SCSI-X refers to 
       parallel SCSI, SCSI-FCP, or SCSI over any other transport).  This 
       requirement is implied by support for SAM-2, but is worthy of 
       emphasis. These are true application protocol gateways, and not just 
       bridge/routers.  The different standards have only the SCSI-3 
       command set layer in common.  These gateways are not mere packet 
       forwarders."
    
    	That paragraph should be reworded as follows:
    
       "The iSCSI protocol MUST allow for the construction of simple
       gateways to other SCSI transports, including parallel SCSI and
       packetized parallel SCSI as specified by SPI-4, and Fibre
       Channel Protocol for SCSI as specified by FCP and FCP-2.
       It MUST be possible to construct  
       gateways so that iSCSI devices can use SCSI commands to communicate with
       devices using other protocols.  This 
       requirement is implied by support for SAM-2, but is worthy of 
       emphasis. iSCSI SHALL use packet formats similar to the common
       packet formats used by other packetized SCSI protocols where
       possible to allow both simple bridging gateways and more
       sophisticated translating gateways."
    
    11) CLARIFY CONGESTION QUESTION
    
    	Section 8.3 considers congestion in a rather strange way.
    	It was my impression that a well-behaved TCP/IP connection
    	provided appropriate congestion management, regardless of
    	the information passed across it.  As a result, the following
    	text in 8.3 should be removed:
    
       "The iSCSI protocol MUST be a good network citizen with proven 
       congestion control (as defined in RFC 2309). In addition, iSCSI 
       implementations MUST NOT use multiple connections as a means to 
       avoid transport-layer congestion control."
    
    	and replaced with:
    
       "iSCSI implementations MUST NOT use multiple connections as a means to 
       avoid transport-layer congestion control.  Standard TCP/IP 
       congestion management mechanisms operate normally while transporting
       iSCSI information."
    
    
          
    


Home

Last updated: Tue Sep 04 01:04:52 2001
6315 messages in chronological order