Discussion of FCP-2 login requirements for ELS
Bob Snively
Bob.Snively at ebay.sun.com
Fri Nov 12 21:57:27 PST 1999
* From the T10 Reflector (t10 at t10.org), posted by:
* Bob Snively <Bob.Snively at ebay.sun.com>
*
Bob,
We have a continuing action item that requires us to identify which
ELSs can be executed on an FCP-2 compliant device before the various logins,
particularly FLOGIN, PLOGIN, and PRLI. It is not clear whether
these requirements ultimately wind up in FC-FS or in FCP-2, but I would
like to start them out as a normative annex of FCP-2 as a placeholder.
In our last FC-TAPE/FCP-2/SCC meeting, we noted very few ELS's that could
operate without some degree of successful login. This chart is the first
formal testing of that theory.
Note that at least one of these is still a likely candidate for deletion. Such
ELSs are marked with a preceeding asterisk (*).
References are for FC-FS.
General rules:
1) A login is between two nodes (PLOGI, PRLI), a node and a
fabric (FLOGI), or a process in one node and a process in
another node (PRLI)
2) A logout for any reason does not change the logged-in state
of any node pairs except the node pair explicitly or implicitly
logged out.
3) The fabric is required to be logged in if a fabric is present
and any node-to-node operation is being requested. Nodes which
are not logged in to the fabric are assumed to be inaccessible
from all nodes. No path is formed to such nodes.
Login states:
Logged Out from Fabric (LOF)
1) Result of LOGO to "FFFFFEh"
2) Result of power on, link initialized, no login.
Limits types of communication that can be performed to fabric.
May not exist if implicit login states are defined for fabric.
Logged out from Node (LON)
1) Result of LOGO to node D_ID
2) Result of power on, link initialized, no login.
3) Result of certain node-to-node error recovery failures
Limits types of communication that can be performed to node.
May not exist if implicit login states are defined for node.
Process Logged Out from Node (PRLON)
1) Result of PRLO to node D_ID
2) Result of power on, link initialized, no login.
Limits protocols and roles within a protocol.
May not exist if implicit process login states are defined for node.
Logged in to Fabric (17.3): (LIF)
1) Result of FLOGI
2) Result of implicit FLOGI
3) Considered to be implicitly logged in if no fabric.
Required to assign node address from fabric
Required to negotiate link parameters with local fabric attachment
Rejected if no fabric
Rejected if incompatible parameters or classes
Ended by link failure
Ended by LOGO
Ended by power off
Logged in to node: (LIN)
1) Result of PLOGI
2) Result of implicit PLOGI
Required to perform PRLI
Required to perform any data frame transfers (15.4.7)
Rejected if incompatible parameters or classes
Ended by link failure
Ended by LOGO
Ended by power off
Ended by unsucessful recovery
Process Logged in to node (PRLIN)
1) Result of PRLI with image bit set
2) Result of implicit PRLI
Required to perform SCSI FCP operations (also for other protocols)
Rejected if incompatible capabilities
Ended by PRLO
Ended by power off
BASIC LINK SERVICES AND REQUIRED STATES:
SERVICE REQUIRED STATES NOTES
No Operation NOP
Abort Sequence ABTS ANY Required for aborting
login sequence.
Remove Connection RMC LIF Requires awareness of
fabric.
Basic_Accept BA_ACC ANY
Basic_Reject BA_RJT ANY
Preempted PRMT LIF Requires awareness of
fabric.
EXTENDED LINK SERVICES AND REQUIRED STATES:
SERVICE REQUIRED STATES NOTES
ELS requests
PLOGI LIF Required if fabric
FLOGI ANY
LOGO ANY LOGO allowed if not
logged in.
ABTX ANY May ABTX Login exchanges
RCS LIF, LIN Assumes path formed
RES ANY May RES Login exchanges
RSS LIF, LIN Assumes path formed
RSI LIF, LIN Assumes path formed
ESTS LIF, LIN Assumes path formed
ESTC LIF, LIN Assumes path formed
* ADVC LIF, LIN Assumes credit known,
changes parameters.
RTV LIF, LIN Assumes path formed
RLS LIF, LIN Assumes path formed
ECHO LIF, LIN Assumes path formed
TEST LIF Requires node to be
known to fabric
RRQ LIF, LIN Assumes path formed
PRLI LIF, LIN Assumes path formed
PRLO LIF, LIN Assumes path formed
SCN LIF, LIN Assumes formed path is
changed
TPLS LIF, LIN Assumes path formed
TPRLO LIF, LIN Assumes path formed.
GAID LIF Assumes node known to
fabric
FACT LIF, LIN Requires login to
alias server, assumes
node known to fabric.
FDACT LIF, LIN Requires login to
alias server, assumes
node known to fabric.
NACT LIF, LIN Requires login to
alias server, assumes
node known to fabric.
NDACT LIF, LIN Requires login to
alias server, assumes
node known to fabric.
QoSR LIF, LIN Requires login to
fabric, Requires login
to recipient node.
RVCS LIF, LIN Requires circuit
PDISC LIF, LIN Assumes path formed.
FDISC LIF, LIN Assumes path formed.
ADISC LIF, LIN Assumes path formed.
RNC LIF, LIN Assumes path formed.
ELS responses
LS_RJT ANY
ACC ANY
New ELS requests
CSS LIF, LIN Assumes path formed,
logged in to clock
server.
REC LIF, LIN Assumes path formed.
RTIN LIF, LIN Assumes path formed.
whatever the other is LIF, LIN Assumes path formed.
New FC-4 requests
SRR LIF, LIN, PRLIN Requires SCSI device
identification.
ANNEX A: TABLE OF EXTENDED LINK SERVICES (ELSs)
hex '03' N_Port Login PLOGI
hex '04' F_Port Login FLOGI
hex '05' Logout LOGO
hex '06' Abort Exchange ABTX
hex '07' Read Connection Status RSC
hex '08' Read Exchange Status Block RES
hex '09' Read Sequence Status Block RSS
hex '0A' Request Sequence Initiative RSI
hex '0B' Establish Streaming ESTS
hex '0C' Estimate Credit ESTC
hex '0D' Advise Credit ADVC
hex '0E' Read Time-out Value RTV
hex '0F' Read Link Status RLS
hex '10' Echo ECHO
hex '11' Test TEST
hex '12' Reinstate Recovery Qualifier RRQ
hex '20' Process Login PRLI
hex '21' Process Logout PRLO
hex '22' State Change Notification SCN
hex '23' Test Process Login State TPLS
hex '24' Third Party Process Logout TPRLO
hex '30' Get Alias_ID GAID
hex '31' Fabric Activate Alias_ID FACT
hex '32' Fabric Deactivate Alias_ID FDACT
hex '33' N_Port Activate Alias_ID NACT
hex '34' N_Port Deactivate Alias_ID NDACT
hex '40' Quality of Service Request QoSR
hex '41' Read Virtual Circuit Status RVCS
hex '50' Discover N_Port Service Parm PDISC
hex '51' Discover F_Port Service Parm FDISC
hex '52' Discover Address ADISC
hex '53' Report Node Capability RNC
ANNEX B: ADDITIONAL ERRORS
1) Error in Table 49:
In table 49, Read Connection Status is incorrectly abbreviated as
RSC. It should be RCS.
2) REC not yet included in FC-FS
REC needs to be included in FC-FS.
*
* For T10 Reflector information, send a message with
* 'info t10' (no quotes) in the message body to majordomo at t10.org
More information about the T10
mailing list