|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] RE: sector alignment for DataOut PDUs?Paul, As Rod Harrison points out, MaxRecvPDULength is not negotiated, it is "declared" and is likely to be different for Initiator and Target. I had missed the implication of this change which occurred at draft 09. I can now appreciate your earlier proposal. To be fair to all targets, we should allow targets with arbitrary sized sectors/blocks to request the same kind of boundary alignment. Today we already have a need to support 512, 1K, 2K, and 4K sectors for disk, and anything from 512 up to at least 64K blocks for tape (including non-powers of 2 like 10K). [Ouch, I just realized that the tape block size can be changed mid-session, the most likely time being after a media change. The tape folks may not be able to use of this in the same way, but let's not prevent them from trying.] Further we do not really want iSCSI initiators (or their drivers) to have to guess or issue SCSI commands to learn the sector size. The size needs to be specified by the target during operational parameter negotiation if it is requesting sector/block aligned PDU payloads. I actually do not think unaligned payloads are likely, but there is nothing to prevent them. We may simplify some target designs by eliminating the requirement to support them. Certainly, we want to eliminate loopholes which allow compliant but non-interoperable implementations. Please consider whether the following proposal meets all of your requirements. Proposed addition to chapter 12 to enable requiring sector aligned PDU payloads: " DataPDUAlignment Use: LO Senders: Target and Initiator Scope: SW DataPDUAlignment=<number-512-to-(2**24-1)> The default is 0. The initiator and target negotiate the alignment boundary on which data transfers may be continued to a subsequent PDU. The value 0 means no boundary alignment limitation is imposed on data carrying PDUs. The minimum of two non-zero values is selected. If one value is zero, then the other value is selected. This is intended primarily for a target to force an initiator to send PDU data buffers whose boundaries match physical media boundaries such as disk sector size. When DataPDUAlignment is non-zero, for any PDU other than the last in a sequence, the PDU data segment length (DataSegmentLength) is required to be an integer multiple of DataPDUAlignment less than or equal to MaxRecvPDULength. " Thanks, Nick > -----Original Message----- > From: Paul Koning [mailto:ni1d@arrl.net] > Sent: Wednesday, February 27, 2002 12:57 PM > To: Martin, Nick > Cc: ips@ece.cmu.edu > Subject: RE: sector alignment for DataOut PDUs? > > > >>>>> "Nick" == Martin, Nick <Nick.Martin@COMPAQ.com> writes: > > Nick> Paul, For all data carrying PDUs except the last in a sequence, > Nick> the sender is expected to send maximum sized PDU allowed. When > Nick> the negotiated maximum is a multiple of 512, this effect is > Nick> what you request. > > Nick> I thought this was a requirement, but I did not find it as such > Nick> in draft 10. ... > > Nick> IMHO, it makes more sense to include stronger wording > Nick> encouraging maximum negotiated length transfers rather than to > Nick> add another parameter requiring PDU breaks on different > Nick> boundaries. > > That sounds like a fine suggestion, if it gives the target enough > power to achieve the alignment I'm looking for. Strengthening the > text you quoted is a start, but other places would have to be > strengthened as well -- for example the rules on responding to an R2T. > > Nick> If such initiator behavior may not be supported by all targets, > Nick> then the initiators SHOULD NOT do it. > > That's not sufficient. You need "MUST NOT". The reason: if you say > "should not" then you can build a conforming initiator that cannot > interoperate with a conforming target. All correctly written protocol > specs have the property that conformance implies interoperability. > (Unfortunately, few specs pass this test... :-( ) So a target can be > allowed to rely on full size PDUs only if initiators are required (not > merely encouraged) to send full size PDUs. > > paul > >
Home Last updated: Thu Feb 28 02:18:07 2002 8922 messages in chronological order |