Re: Immediate Commands in iSCSI
William Stouder-Studenmund <[email protected]> Sun, 2 Dec 2007 21:54:11 -0800
| Newsgroups | gmane.ietf.ips |
|---|---|
| Message-ID | <[email protected]> |
On Dec 2, 2007, at 7:20 PM, [email protected] wrote: > RFC 3720 states: > The number of commands used for immediate delivery is not limited > and their delivery for execution is not acknowledged through the > numbering scheme. Immediate commands MAY be rejected by the iSCSI > target layer due to a lack of resources. An iSCSI target MUST be > able to handle at least one immediate task management command and > one immediate non-task-management iSCSI command per connection at > any time. > > With storage systems that have very large number of logical units, > we run into an issue when we use LU Reset or Abort Task for reset > recovery. I couldn’t find a way to tell an initiator how many > immediate commands a target can accept. The issue with this is that > if we have to issue multiple task management commands and it is more > than what the target can accept, it will reject the task management > request. Since we don’t know why it was rejected, we will have to > escalate the reset. This can be very disruptive with nodes that have > very large number of logical units. There may be two ways to resolve > this: > > 1) Define a new Text negotiation key for number of outstanding > immediate commands supported. Unlike non-immediate (data) commands > where we can send TASK SET FULL, there is no way for a target to > report in the Task Management Function Response PDU that is unable > to process the current request before it is out of resources. The > default vaule for this new key can be 1, so if this key is not > negotiated initiators can assume one per connection. If we were to add this key, I think there should be no default. No negotiation result should leave both parties with the current "try it and see what happens" behavior. > 2) Define a new value for the Response field in the Task > Management Function Response PDU for reporting that the target > cannot process the request currently. > > Any suggestions on how to resolve this? Since we're talking about changing the protocol, why not just fix the problem? The problem is a lack of clarity about why an operation failed, so let's add an extra response code to indicate a transient issue. Something to the effect of, "I'm rejecting/failing this, but I think the reasons was transient and may not hold true if you try the command again." I'm not sure if anything other than TMR needs this treatment. Take care, Bill _______________________________________________ Ips mailing list [email protected] https://www1.ietf.org/mailman/listinfo/ips