|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: iSCSI : Digest Error Problems & CmdSN/ExpCmdSN window issuesSantosh Rao wrote: > Matt, > > The description of CmdSN window mangement in Section 1.2.2.1 reads : > > "- The target MUST silently ignore any command > outside this range or duplicates within the range not flagged with > the retry bit (the X bit in the opcode)." > > Does this imply : > - ignore all commands outside the (ExpCmdSN, MaxCmdSN) range. > - ignore all duplicate commands within the range that are not flagged with the > retry > ? > > If so, a command with the "retry" bit set and received outside the > (ExpCmdSN, MaxCmdSN) window causes the target to drop the > received retry. Is this a valid interpretation of the draft ? I think so, normally an initiator before issuing a "retry" does a Logout. In the Logout response it receives an ExpCmdSN. Form this value the initiator decides to retry the command not numbered if the original CmdSN is less than ExpCmdSN. It avoids the "retry" to be rejected. Regards, Pierre > > > Regards, > Santosh > > Matt Wakeley wrote: > > > Santosh, > > > > I guess I don't understand what it is that you think needs clarification. > > > > -Matt > > > > Santosh Rao wrote: > > > > > > Matt, > > > > > > (You may want to take another look at the thread.). Here's the details again : > > > > > > > 3) The policy of "discard and restart" is also subject some race > > > > conditions in the CmdSN sliding window. At the time the digest error was > > > > > > > > detected at the initiator, the ExpCmdSN may not yet have acknowledged > > > > that > > > > command. This causes the initiator to restart the command with the same > > > > Initiator Task Tag, CmdSN and "retry" bit set. > > > > > > > > However, by the time the command gets to the target, the target may have > > > > > > > > updated its ExpCmdSN window having sent a later PDU which updated the > > > > ExpCmdSN. This results in the target discarding the received CmdSN since > > > > > > > > <js> at command restart you never really rely on the CmdSN. you will want > > > > to check > > > > the Initiator Task Tag and accept it in the above case. </js> > > > > > > The draft states the following on this subject : > > > > > > Section 5.1 > > > ========= > > > - the initiator will reissue all outstanding commands with their > > > original Initiator Task Tag and their original CmdRN if they > > > are not acknowledged yet or a CmdRN of 0 (not-numbered) if they > > > were acknowledged; the retry (X) flag in the command PDU will > > > be set > > > > > > Section 1.2.2.1 > > > =========== > > > - The target MUST silently ignore any command > > > outside this range or duplicates within the range not flagged with > > > the retry bit (the X bit in the opcode). > > > > > > This, to me, means : > > > - ignore all commands outside the (ExpCmdSN, MaxCmdSN) range. > > > - ignore all duplicate commands within the range that are not flagged with the > > > retry > > > bit. << "duplicate" added this time >> > > > > > > Can you please clarify the intent of the text ? > > > >
Home Last updated: Tue Sep 04 01:05:40 2001 6315 messages in chronological order |