|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: iSCSI state transitionsSandeep, Thanks for the comments. >pages 5-6 look good >but pages 1-4 have a high information density. >(Uneasy rests the eye which traces the transitions..) Not sure what's implied above.... I was merely trying to keep the pdf file small. >I suspect the primary problem is that the initiator and >target connection state diagrams have got combined into >one diagram. Depends on the viewpoint. Out of 30 transitions, 7 are role-specific, rest are role-agnostic - that is 76.6% are the same. I consider duplicating >75% in two separate diagrams as unnecessary. Besides, 100% of the transitions are the same for both roles in both connection recovery and session state diagrams. While this hasn't been a "problem" for any of the reviewers so far, let us wait for more comments. >State S13 should be called "suspended" or "to_be_recovered" > The tasks are undoubtedly "busy" but the connection is > certainly suspended. I am not that certain. The connection state machine is simply entering into the recovery state diagram, S13 is _not_ a suspended dead end. When in S13, CSM-R is actively counting time to possibly take transition M1 to get to R3. Would RECOVERY_START be a better name than BUSY? > We seem to be tracking the TCP state (S2, S12 for SYN,FIN) > It adds to the complexity and sidetracks one > from the main purpose, which (i thought) was to document > error recovery. Sorry, not true - section 6 goes beyond error recovery(section 7). As stated in the preface, these document the entire life of the iSCSI connection and iSCSI session. At the iSCSI level, we have to clearly specify how iSCSI state machines react to transport connection events, since an implementation must deal with those. Section 1.2.6 clearly lays out how to deal with transport connection termination events for the same reason. >Assume that connection > establishment and destruction is an action on transition .. > On error, the connection will be closed and the state can be > restored to S1 in one step. These state diagrams are hoped to be implementable "as is". In reality, connection establishment is not atomic - an iSCSI driver/ASIC has to send a connect request and wait for the result, S2 represents the state of the iSCSI connection record during that time. Similar comments apply for connection termination. Regards. -- Mallikarjun Mallikarjun Chadalapaka Networked Storage Architecture Network Storage Solutions Organization MS 5668 Hewlett-Packard, Roseville. cbm@rose.hp.com >Mallikarjun, > >Just a few comments on this.. pages 5-6 look good >but pages 1-4 have a high information density. >(Uneasy rests the eye which traces the transitions..) > >I suspect the primary problem is that the initiator and >target connection state diagrams have got combined into >one diagram. As a result, most states as well as transitions >have got special-cased as initiator-only or target-only. > >(For example, T1, T2, T3, T7, T15 are all initiator-only) > >Other points: >a) State S13 should be called "suspended" or "to_be_recovered" > The tasks are undoubtedly "busy" but the connection is > certainly suspended. The state name must reflect the state > of the connection, not the individual tasks. > >b) We seem to be tracking the TCP state (S2, S12 for SYN,FIN) > It adds to the complexity and sidetracks one > from the main purpose, which (i thought) was to document > error recovery. If we remove the TCP state tracking, we > may be be able to eliminate some states (S2, S12, etc) > and keep the focus on iSCSI. Assume that connection > establishment and destruction is an action on transition, > not a whole new state to document. > >c) Transitions T7, T8 can be removed. How individual implementations > behave on login errors (do a retry/bailout) need not be covered. > On error, the connection will be closed and the state can be > restored to S1 in one step. > >All in all, it should be possible to express the connection state >for each end (with error recovery) in about 7-8 states. > >The following patterns would then be easy to spot: >1) There is one way to move from FREE to LOGGED_IN >2) There are four ways to move from LOGGED_IN to FREE > a) by self-initiated logout > -target sends Async > -initiator sends Logout command > b) by "other-end" requested logout > -target receives a Logout command > -initiator receives an Async message > c) a transport failure followed by connection recovery failure > which indicates a need to abort tasks. > d) a transport failure followed by connection recovery success > which indicates a clean shutdown. > >regards, >-Sandeep > > >"Mallikarjun C." wrote: >> >> All: >> >> Excuse my posting of the (relatively small sized, 27KB) >> pdf file with the iSCSI state diagrams. I'll post a URL >> shortly, but I wanted to get this out sooner to give >> reviewers a graphical description of rev07, section 6. >> >> This was reviewed in the ERT forum, and the ASCII versions >> of this slide set were incorporated into rev07. >> >> Mallikarjun >> >> Mallikarjun Chadalapaka >> Networked Storage Architecture >> Network Storage Solutions Organization >> Hewlett-Packard, Roseville >> cbm@rose.hp.com >> >> ------------------------------------------------------------------------ >> Name: iscsi_states.pdf >> iscsi_states.pdf Type: Portable Document Format (application/pdf) >> Encoding: base64 >> Download Status: Not downloaded with message >
Home Last updated: Tue Sep 04 01:04:14 2001 6315 messages in chronological order |