|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: Addition of CmdSN in Data-out PDUExcerpt of message (sent 10 October 2001) by Julian Satran: > Inconsistency can be legitimate. CmdSN is ephemeral. It can be reused, it > may have large holes and using it in an implementation is as bad as a > hashed index. Not true. CmdSN values are sequential, by definition. Yes, clearly there will be small holes because commands complete out of order. But "large" holes are unlikely. In any case, the target has control over that. I can use an array whose size is given by the number of pending commands times a correction factor to account for the likely density of holes. Then MaxCmdSN would be updated based on two considerations: the ability to handle more pending commands, and the need to keep the distance between oldest (lowest) still active CmdSN and MaxCmdSN bounded by the size of the lookup array. So having CmdSN in the DataOut PDU allows this approach, thereby replacing a hash lookup on a rapidly changing ID space by a simple array indexing operation. Without CmdSN, you're forced to use a mechanism that has a lot more overhead (in the insert/remove or in the lookup, depending on the mechanism chosen). paul
Home Last updated: Thu Oct 11 05:17:25 2001 7189 messages in chronological order |