|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] RE: iSCSI: reusing ISID for recoveryMarjorie, Jim, Mallikarjun, Deva & all Let's attemp to close that optimization that is so dear to your hearts. If we go for the following scheme (very close to B): The initiator knows "that he lost his way" (in the initiator jungle tough) and issues a Login + ISID + TSID=0 + X bit on (meaning " I think I have an old session - please clean it up for me" and open a new one) then the target may do one of the following: - before going to the effort of authenticating the new initiator check if a session exist (if he has the initiator name) or go to authentication if it does not - If he has a session then clean it and create a new one - If he does not have a session - we have 3 options: a)- tell him hid did not have an old session and drop him b)- tell him he did not have an old session but nevertheless create a new one c)- create a new session and do not tell him With option a we are close to the old option c but the initiator does not have to find the old session he can do now safely a new login With b & c we are back at the old b. Which one would you give your kingdom for ( and my peace!). Julo "Dev" <deva@stargateip.com>@ece.cmu.edu on 28-08-2001 01:44:15 Please respond to <deva@stargateip.com> Sent by: owner-ips@ece.cmu.edu To: "KRUEGER,MARJORIE \(HP-Roseville,ex1\)" <marjorie_krueger@hp.com>, <ips@ece.cmu.edu> cc: Subject: RE: iSCSI: reusing ISID for recovery All, When a session is already running authenticated, a login request with the same ISID + initiator fails authentication. Will the session continue to run? Or if the target fails during parameter negotiation? I guess, yes. i.e. target will not act on the existing session, until the login completes successfully. Or are there exception to these? Thanks Deva Platys Communications > -----Original Message----- > From: Julian Satran [mailto:Julian_Satran@il.ibm.com] > Sent: Saturday, August 25, 2001 12:23 AM > To: ips@ece.cmu.edu > Subject: RE: iSCSI: reusing ISID for recovery > > > > It may be another OS running on the same machine or CPU > complex or it could > be an attack. > In any case if the initiator is up and fine he can as well do logout. > It is a rare enough event for us not to try to optimize. > > The reboot is the only case in which the initiator can't > logout and about > which we care. > > And I would like to remind you all that we where on this > exact thread more > tan 3 months ago (other players). > I just restated the rationale for an (apparent) newcomer. > > Julo > > "KRUEGER,MARJORIE (HP-Roseville,ex1)" > <marjorie_krueger@hp.com>@ece.cmu.edu > on 25-08-2001 03:51:43 > > Please respond to "KRUEGER,MARJORIE (HP-Roseville,ex1)" > <marjorie_krueger@hp.com> > > Sent by: owner-ips@ece.cmu.edu > > > To: ips@ece.cmu.edu > cc: > Subject: RE: iSCSI: reusing ISID for recovery > > > > I don't see how Option A is prone to "wild closing of sessions". The > target > is only looking for sessions with this particular initiator > and closing > them > if the ISID matches. > > If an initiator doesn't have a valid TSID (login w/TSID=0), > it means it has > lost state entirely (reboot) or knows it wants to immediately reset a > session (NIC failure). How could there possibly be a case where the > initiator has an active valid session with the same ISID, but > just doesn't > know about it?? Rejecting the login seems pointless, since > obviously the > initiator either has a bug or intends to quickly reset the session. > > The behavior chosen (Option C) will cause the initiator's > recovery to be > delayed while the target NOPs all the connections and waits > for them to > time > out - this will only delay the initiators recovery > unnecessarily. I can't > help but think this will cause long term problems for the protocol. > > Marjorie Krueger > Networked Storage Architecture > Networked Storage Solutions Org. > Hewlett-Packard > tel: +1 916 785 2656 > fax: +1 916 785 0391 > email: marjorie_krueger@hp.com > > > -----Original Message----- > > From: Julian Satran [mailto:Julian_Satran@il.ibm.com] > > Sent: Thursday, August 23, 2001 9:39 PM > > To: ips@ece.cmu.edu > > Subject: Re: iSCSI: reusing ISID for recovery (Was: RE: iSCSI > > - Change - > > Login/Text...) > > > > > > > > Mallikarjun, > > > > On your point 1 that is what is stated today in the draft. > > > > On your point 2 option C is the one we took in the draft, after some > > debate. > > > > Option A is prone to "wild closing of sessions" and option B is also > > relaying to much on the good behaviour of the > > client. It also introduces a "feature" that complicates > login/logout. > > > > Our postion on this is that the initiator should logout the session > > explicitly if it can (and in this case it can as the target > > has ascertained > > that the session is alive). > > > > I agree that you may want to update the stayte diagram to > > reflect this. > > > > Julo > > > > > > "Mallikarjun C." <cbm@rose.hp.com>@ece.cmu.edu on > 24-08-2001 01:46:40 > > > > Please respond to cbm@rose.hp.com > > > > Sent by: owner-ips@ece.cmu.edu > > > > > > To: ips@ece.cmu.edu > > cc: > > Subject: iSCSI: reusing ISID for recovery (Was: RE: iSCSI > - Change - > > Login/Text...) > > > > > > > > Julian and all: > > > > This thread mirrors another discussion some of us are > > having in a different forum. Following (two bullets 1 > > & 2 below) is what I proposed there, attempting to address > > two issues - > > a) how to recover sessions when target and the initiator > > have conflicting views of the same TCP connection(s)? > > (Initiator NIC fails, but there's no I/O activity, > > and the target doesn't see any connection failure.) > > b) More specifically, how to address the above problem > > when the initiator *does not want* to re-instate failed > > connections since it only implements the mandatory > > session recovery? > > > > This could add clarity or muddle things up here, though hopefully > > the former... > > > > 1 If login is sent with the same ISID, same TSID, same CID > and X-bit, > > then it means a failed connection is being re-instated (whether > > or not there are multiple connections in the session). This login > > attempt must be done before the connection timeout > (transition M1), > > or if this is the only connection in the session, also before the > > session timeout (transition N6) - to be counted as a connection > > reinstatement effort. > > o CmdSN counters (CmdSN, ExpCmdSN) are continued. > > Initiator > > must do command plugging when there's a mismatch > > between its CmdSN and ExpCmdSN in the login response. > > o Since this is an implicit connection logout, all > > the active > > tasks on the connection are either internally > terminated, > > or made non-allegiant (based on ErrorRecoveryLevel=x/y, > > TBD) for recovery. > > > > 2 If login is sent with the same ISID and TSID=0, the session (if it > > exists on the target) is being cleared and any active connections > > that the target sees must be immediately (at the end of the login > > process including any initiator authentication) transport reset. > > Initiator may attempt this only after it ascertains a > > session failure > > on its end (ie. all connections entered RECOVERY_START). > > o CmdSN counters get reset. Initiator has to perform the > > currently defined session recovery actions. > > o All active tasks of the session are internally > > terminated. > > > > > > Essentially, I was proposing extending the same notion of "implicit > > logout" of a connection to the session level. The options that I > > see are - > > > > A) Should iSCSI let it happen by default as stated above (ie. > > same ISID, TSID=0 always wipes out the > pre-existing session > > on target, since we are mandating it to be used only when > > initiator sees a session failure)? > > B) Should iSCSI mandate making this intended cleanup explicit > > by setting a bit (Say C-bit, for Clear) in the > Login Command > > PDU to prevent an accidental session cleanup with a buggy > > initiator code? > > C) Should iSCSI merely state that targets must ascertain > > the connection state(s) whenever a new session creation > > attempt is made with a known ISID and TSID=0? (sort of > > defeats the intention of the initiator wanting quicker > > session recovery since the Login command PDU would have > > to idle till target ascertains the connection state(s)). > > > > I prefer A, or B. > > > > Going with A or B means that the description of transition N3 > > in the session state diagram would have to change to: > > Last LOGGED_IN connection had ceased to be LOGGED_IN, > > or a Login Command requesting clearing the session (also > > with C-bit set, if option B) was received by the target. > > > > The transition N7's description would have to be augmented as > > well to: > > Session recovery attempt with an implicit logout, > > or connection reinstatement/new CID addition. > > > > Comments? > > -- > > Mallikarjun > > > > > > Mallikarjun Chadalapaka > > Networked Storage Architecture > > Network Storage Solutions Organization > > MS 5668 Hewlett-Packard, Roseville. > > cbm@rose.hp.com > > > > > > >Stephen, > > > > > >That can happen as the target may set-up completely new TCP > > connections > > >(the old sockets are still there and look OK). > > >Untill the login is progessing he assumes that this is > just another > > >open-session attempt. Then he checks the old session and the > > session is > > >dead (initiator has closed the connections). > > > > > >The target has to distinguish only between a session that is > > alive (and > > >reject the new one) and one that its dead in which case it > > can clean-up. > > > > > >Julo > > > > > >"Wheat, Stephen R" <stephen.r.wheat@intel.com> on > 23-08-2001 22:50:56 > > > > > >Please respond to "Wheat, Stephen R" <stephen.r.wheat@intel.com> > > > > > >To: Julian Satran/Haifa/IBM@IBMIL, ips@ece.cmu.edu > > >cc: > > >Subject: RE: iSCSI - Change - Login/Text commands with the > > binary stage > > co > > > de > > > > > > > > > > > >Julian, > > > > > >I don't understand your answer. For the scenario given, I > > would presume > > >then that the target would reject the new session attempt, > > as it sees the > > >previous session still "alive". What is there to tell the > > target that > > this > > >is any different from when the Initiator is erroneously using the > > >repetitive > > >session id? > > > > > >Thanks, > > >Stephen > > > > > >-----Original Message----- > > >From: Julian Satran [mailto:Julian_Satran@il.ibm.com] > > >Sent: Thursday, August 23, 2001 11:15 AM > > >To: ips@ece.cmu.edu > > >Subject: Re: iSCSI - Change - Login/Text commands with the > > binary stage > > >co de > > > > > > > > >Stephen, > > > > > >1.If the initiator goes away for a while and reboots and > there was no > > >activity on the connections > > >the target may see a session alive (I am not sure that it > > has to appear on > > >the state diagram but maybe). > > > > > >2.Again - I am not sure that the curent state diagram > > includes death of > > the > > >initiator > > > > > >Julo > > > > > >"Wheat, Stephen R" <stephen.r.wheat@intel.com>@ece.cmu.edu > > on 23-08-2001 > > >19:58:34 > > > > > >Please respond to "Wheat, Stephen R" <stephen.r.wheat@intel.com> > > > > > >Sent by: owner-ips@ece.cmu.edu > > > > > > > > >To: ips@ece.cmu.edu > > >cc: > > >Subject: Re: iSCSI - Change - Login/Text commands with the > > binary stage > > co > > > de > > > > > > > > > > > >Julian, > > > > > >1.3.6 ISID states that the target should check to see if the > > old session > > is > > >still active when a duplicate session is detected. > > > > > >I have two questions, the second only if you answer in the > > affirmative on > > >the first ;^) > > > > > >1. Is there a properly executed sequence of events (i.e., no > > coding error > > >on > > >the target side) where the session is not active, but the > > target hadn't > > >taken notice of it? It appears this as a protocol-specified > > means to work > > >around a flaw in a target's implementation. I interpret the > > state diagram > > >transitions as being atomic wrt other commands. I.e., the > > last logout > > >would > > >result in the various transitions of the connection/session > > prior to the > > >initiator starting the session up again. And the target would have > > >completed the transitions prior to handling a new session request. > > > > > >2. If you answered (1) in the affirmative, then the word > > "Active" is not > > >consistent with the 6.3 Session State Diagram. Does this > > mean the target > > >got lost, due to transport failures of any sort, in its > > transition from > > >Q3-to-Q2-to-Q1? It sounds like the intent is to close the > > old session if > > >the session was in Q2 or Q4, presuming if it were in Q1, it > > would not > > have > > >been found as a duplicate. > > > > > >Stephen > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >
Home Last updated: Tue Sep 04 01:03:52 2001 6315 messages in chronological order |