The iSCSI login enables:
A TCP connection for iSCSI use
Authentication of the parties
Negotiation of the session’s parameters
Marking the connection as belonging to an iSCSI
session
An iSCSI session is established to identify all of the connections
between an initiator and a target belonging to the same I_T nexus.
Targets listen on a well-known TCP port (3260, as defined
in the iSCSI Protocol Specification), or on a user configured TCP
port, for incoming connections. The initiator begins the login process
by connecting to one of these TCP ports.
An iSCSI Session has two phases:
Login Phase
The iSCSI Login Phase consists of Login requests and responses.
Once authentication has occurred and operational parameters have
been set, the session transitions to the Full Feature Phase and
the initiator begins performing SCSI I/Os. NOTE: Using authentication
is optional.
iSCSI parameters are negotiated using Login Requests and Responses,
during session establishment. During the Full Feature Phase, iSCSI
parameters are negotiated using Text Requests and Responses. In
both cases the mechanism is an exchange of iSCSI-text-key=value
pairs (also referred to as key=value pairs).
The Login Phase proceeds in two stages:
Security/Authentication
Stage
This stage consists of text exchanges using IDs, Certificates,
etc., using key=value pairs.
One of the keys that is negotiated in this stage of the Login
Phase is AuthMethod. For example:
key=value AuthMethod=CHAP
AuthMethod defines the authentication
method.
Operational Parameters Negotiation Stage
This stage consists of text string negotiation of operating
parameters using key=value pairs of login parameter exchanges.
Two of the many login keys that are negotiated in the Operational
Parameters Negotiation stage of the Login Phase are MaxRecvDataSegmentLength
and FirstBurstLength. For example:
key=value MaxRecvDataSegmentLength=<numerical-value>
MaxRecvDataSegmentLength defines
the maximum data segment length an initiator or target can receive
in an iSCSI PDU (in bytes).
key=value FirstBurstLength=<numerical-value>
FirstBurstLength defines the
maximum amount of unsolicited data the initiator can send to the target
during the execution of a single SCSI command (in bytes).
 |
 |  |
 |
 | NOTE: For a complete list of iSCSI login keys, consult RFC
3720 at: http://www.ietf.org/rfc/rfc3720.txt |
 |
 |  |
 |
iSCSI Full Feature Phase
After successfully completing the Login Phase on the first
(leading) connection of the session, a session is in Full Feature
Phase.
In the Full Feature Phase, the initiator sends SCSI commands
and data to the target by encapsulating them in iSCSI PDUs that
go over the iSCSI session (transport). The initiator receives SCSI
responses embedded in iSCSI PDUs, from the target. SCSI I/O only
occurs after the Full Feature Phase begins.