[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: sector alignment for DataOut PDUs?
Rod, I don't think a maximum PDU size would have made sense for v08 or earlier either. When the size was negotiated, the resulting maximum receive PDU would be the minimum of the two offered key values. If the target wanted 512 and the initiator was offering 493, then the target would have had to accept 493. To let a target choose a size that makes the data convenient for its buffers, then one would have to have a list negotiation rather than numeric. Such a requirement would be very burdensome for bridges which can't force the data to be delivered to them into neat sizes. Regards, Pat Thaler -----Original Message----- From: Rod Harrison [mailto:email@example.com] Sent: Tuesday, February 26, 2002 6:08 PM To: Martin, Nick; Paul Koning; firstname.lastname@example.org Subject: RE: sector alignment for DataOut PDUs? Nick, This makes sense for unsolicited data but it doesn't stop the initiator sending more than one "weird" sized DATA-OUT PDU in response to an R2T, even if the R2T is for a multiple of 512 bytes. Strengthening the wording to make sending "full" PDUs a requirement is not really practical in the post v08 world where we don't have a negotiated PDU size. It would have made sense when the max PDU size was agreed upon but given the current scheme of allowing the receiver to name an arbitrary sized maximum receive PDU it would place an unreasonable burden on the initiator. - Rod -----Original Message----- From: email@example.com [mailto:firstname.lastname@example.org]On Behalf Of Martin, Nick Sent: Wednesday, February 27, 2002 12:14 AM To: Paul Koning; email@example.com Subject: RE: sector alignment for DataOut PDUs? Paul, For all data carrying PDUs except the last in a sequence, the sender is expected to send maximum sized PDU allowed. When the negotiated maximum is a multiple of 512, this effect is what you request. I thought this was a requirement, but I did not find it as such in draft 10. I did find this: : 8.5 Unsolicited Data and Performance : Unsolicited data on write are meant to reduce the effect of latency on : throughput (no R2T is needed to start sending data). In addition, : immediate data are meant to reduce the protocol overhead (both bandwidth : and execution time). : However, negotiating an amount of unsolicited data for writes and : sending less than the negotiated amount when the total data amount to : be sent by a command is larger than the negotiated amount may negatively : impact performance and may not be supported by all the targets. This is a warning that an initiator sending less than the negotiated maximum when the expected data transfer is greater than the maximum a) may reduce performance and b) may not be supported by all targets. IMHO, it makes more sense to include stronger wording encouraging maximum negotiated length transfers rather than to add another parameter requiring PDU breaks on different boundaries. If such initiator behavior may not be supported by all targets, then the initiators SHOULD NOT do it. A disk target which can not handle such behavior is forgiven in advance ;). Thanks, Nick > -----Original Message----- > From: Paul Koning [mailto:firstname.lastname@example.org] > Sent: Tuesday, February 26, 2002 3:51 PM > To: email@example.com > Subject: sector alignment for DataOut PDUs? > > > In the past, a number of login parameters were specified as multiples > of 512 bytes, which makes a lot of sense for disk targets (but not so > much for tape targets). With the spec as it stands now, you can > negotiate pretty much arbitrary burst sizes etc. And in any case, the > sender can pick "strange" PDU sizes even if the negotiated sizes are > multiples of 512, because after all those are limits, not required > sizes. > > It would be very attractive for disk targets to be able to specify > that they require DataOut PDUs to be multiples of 512 bytes in length. > That way, any PDU would correspond exactly to one or more sectors, > rather than potentially having several PDUs straddling sector > boundaries as is currently permitted. This could be done by a Boolean > key (512 byte alignment, yes or no). (An integer key would allow > other values than 512, but I'm not sure that such flexibility is a > whole lot more useful.) > > Basically, the effect of this feature would be to tell the initiator > that it must send DataOut PDUs and immediate data whose length is > always a multiple of 512. Obviously, targets can't ask for that > unless the devices on that target already come with such a limitation. > > paul > >
Last updated: Mon Mar 04 21:18:09 2002
9003 messages in chronological order