Subject: iSCSI: Recognizing Recovery R2Ts

From: Nick Bellinger <[email-masked]>
Date: 15 Sep 2002 15:54:30 -0600

Greetings all,  
	
		The question is how does an initiator know when a R2T is a recovery
R2T and not a normal R2T?  The case I am referring is in regard to the
last paragraph in section 9.8 of iSCSI-v17-working:

"DataSequenceInOrder governs the buffer offset ordering in consecutive 
 R2Ts. If DataSequenceInOrder is Yes, then consecutive R2Ts MUST refer 
 to continuous non-overlapping ranges except for Recovery-R2Ts."

So the initiator is allowed to ignore the buffer offset in the case of 
DataSequenceInOrder=Yes when receiving a Recovery R2T,  but how does the
initiator know in fact an R2T is being used for within-command
recovery?  AFAICS there is no "Recovery bit" in the R2T pdu,  and am at
a loss as to how the initiator would reliably ascertain this situation.

Cheers,
	Nicholas Bellinger - PyxTechnologies.com

---

From: "Mallikarjun C." <[email-masked]>
Date: Sun, 15 Sep 2002 23:04:10 -0700

> a loss as to how the initiator would reliably ascertain this situation.

An operational ErrorRecoveryLevel>=1 and DataSequenceInOrder=Yes 
is assumed for this discussion.

- Generally from the initiator's perspective, any R2T with a "Buffer Offset"
  that's seeking some data that the initiator already transmitted as Data-Out 
  is a recognizable recovery R2T. 

- While the target may be generating a "recovery R2T" in some cases, the 
   initiator may not recognize it as such because the earlier R2T was lost for
   the initiator. 
--
Mallikarjun

Mallikarjun Chadalapaka
Networked Storage Architecture
Network Storage Solutions
Hewlett-Packard MS 5668 
Roseville CA 95747
[email-masked]