Chinaunix首页 | 论坛 | 博客
  • 博客访问: 686921
  • 博文数量: 94
  • 博客积分: 3369
  • 博客等级: 中校
  • 技术积分: 1144
  • 用 户 组: 普通用户
  • 注册时间: 2009-01-09 11:25
文章分类

全部博文(94)

文章存档

2014年(1)

2013年(1)

2012年(65)

2011年(20)

2009年(7)

我的朋友

分类: 服务器与存储

2011-03-09 15:50:24

 

5.8 Target port group access states

5.8.1 Target port group access overview

Logical units may be connected to the service delivery subsystem via multiple target ports (see SAM-3). The

access to logical units through the multiple target ports may be symmetrical (see 5.8.3) or asymmetrical (see

5.8.2).

5.8.2 Asymmetric logical unit access

5.8.2.1 Introduction to asymmetric logical unit access

Asymmetric logical unit access occurs when the access characteristics of one port may differ from those of another

port. SCSI target devices with target ports implemented in separate physical units may need to designate differing

levels of access for the target ports associated with each logical unit. While commands and task management

functions (see SAM-3) may be routed to a logical unit through any target port, the performance may not be optimal,

and the allowable command set may be less complete than when the same commands and task management

functions are routed through a different target port. When a failure on the path to one target port is detected, the

SCSI target device may perform automatic internal reconfiguration to make a logical unit accessible from a different

set of target ports or may be instructed by the application client to make a logical unit accessible from a different set

of target ports.

A target port characteristic called target port asymmetric access state (see 5.8.2.4) defines properties of a target

port and the allowable command set for a logical unit when commands and task management functions are routed

through the target port maintaining that state

 

A target port group is defined as a set of target ports that are in the same target port asymmetric access state at all

times. A target port group asymmetric access state is defined as the target port asymmetric access state common

to the set of target ports in a target port group. The grouping of target ports is vendor specific.

A logical unit may have commands and task management functions routed through multiple target port groups.

Logical units support asymmetric logical unit access if different target port groups may be in different target port

group asymmetric access states.

An example of asymmetric logical unit access is a SCSI controller device with two separated controllers where all

target ports on one controller are in the same asymmetric access state with respect to a logical unit and are

members of the same target port group. Target ports on the other controller are members of another target port

group. The behavior of each target port group may be different with respect to a logical unit, but all members of a

single target port group are always in the same target port asymmetric access state with respect to a logical unit.

An example of target port groups is shown in figure 4.

 

5.8.2.2 Explicit and implicit asymmetric logical unit access

Asymmetric logical unit access may be managed explicitly by an application client using the REPORT TARGET

PORT GROUPS (see 6.25) and SET TARGET PORT GROUPS (see 6.31) commands.

Alternatively, asymmetric logical unit access may be managed implicitly by the SCSI target device based on the

type of transactions being routed through each target port and the internal configuration capabilities of the target

port group(s) through which the logical unit may be accessed. The logical units may attempt to maintain full performance

across the target port groups that are busiest and that show the most reliable performance, allowing other

target port groups to select a lower performance target port asymmetric access state.

If both explicit and implicit asymmetric logical unit access management methods are implemented, the precedence

of one over the other is vendor specific.

5.8.2.3 Discovery of asymmetric logical unit access behavior

SCSI logical units with asymmetric logical unit access may be identified using the INQUIRY command. The value in

the target port group support (TPGS) field (see 6.4.2) indicates whether or not the logical unit supports asymmetric

logical unit access and if so whether implicit or explicit management is supported. The asymmetric access states

supported by a logical unit may be determined by the REPORT TARGET PORT GROUPS command parameter

data (see 6.25).

 

5.8.2.4 Target port asymmetric access states

5.8.2.4.1 Target port asymmetric access states overview

For all SCSI target devices that report in the INQUIRY data that they support asymmetric logical unit access, all of

the target ports in a target port group shall be in the same target port asymmetric access state with respect to the

ability to route information to a logical unit. The target port asymmetric access states are:

a) Active/optimized;

b) Active/non-optimized;

c) Standby; and

d) Unavailable.

5.8.2.4.2 Active/optimized state

When commands and task management functions are being routed through a target port in the active/optimized

target port asymmetric access state, the device server shall function (e.g., respond to commands) as specified in

the appropriate command standards (see 3.1.18). All target ports within a target port group should be capable of

immediately accessing the logical unit.

The SCSI target device shall participate in all task management functions as defined in SAM-3 and modified by the

applicable SCSI transport protocol standards (see 3.1.102).

5.8.2.4.3 Active/non-optimized state

When commands and task management functions are being routed through a target port in the active/

non-optimized target port asymmetric access state, the device server shall function as specified in the appropriate

command standards.

The processing of some task management functions and commands, especially those involving data transfer or

caching, may operate with lower performance than they would if the target port were in the active/optimized target

port asymmetric access state.

The SCSI target device shall participate in all task management functions as defined in SAM-3 and modified by the

applicable SCSI transport protocol standards (see 3.1.102).

5.8.2.4.4 Standby state

When being accessed through a target port in the standby target port asymmetric access state, the device server

shall support those of the following commands that it supports while in the active/optimized target port asymmetric

access state:

a) INQUIRY;

b) LOG SELECT;

c) LOG SENSE;

d) MODE SELECT;

e) MODE SENSE;

f) REPORT LUNS (for LUN 0);

g) RECEIVE DIAGNOSTIC RESULTS;

h) SEND DIAGNOSTIC;

i) REPORT TARGET PORT GROUPS;

j) SET TARGET PORT GROUPS;

k) REQUEST SENSE;

l) PERSISTENT RESERVE IN;

 

m) PERSISTENT RESERVE OUT;

n) Echo buffer modes of READ BUFFER; and

o) Echo buffer modes of WRITE BUFFER.

The device server may support other commands.

For those commands that are not supported, the device server shall terminate the command with CHECK

CONDITION status, with the sense key set to NOT READY, and the additional sense code set to LOGICAL UNIT

NOT ACCESSIBLE, TARGET PORT IN STANDBY STATE.

The SCSI target device shall participate in all task management functions as defined in SAM-3 and modified by the

applicable SCSI transport protocol standards (see 3.1.102).

5.8.2.4.5 Unavailable state

When being accessed through a target port in the unavailable target port asymmetric access state, the device

server shall accept only a limited set of commands. The unavailable target port asymmetric access state is

intended for situations when the target port accessibility to a logical unit may be severely restricted due to SCSI

target device limitations (e.g., hardware errors). Therefore it may not be possible to transition from this state to

either the active/optimized, active/non-optimized or standby states. The unavailable target port asymmetric access

state is also intended for minimizing any disruption when using the downloading microcode mode of the WRITE

BUFFER command.

While in the unavailable target port asymmetric access state, the device server shall support those of the following

commands that it supports while in the active/optimized state:

a) INQUIRY (the peripheral qualifier (see 6.4.2) shall be set to 001b);

b) REPORT LUNS (for LUN 0);

c) REPORT TARGET PORT GROUPS;

d) SET TARGET PORT GROUPS;

e) REQUEST SENSE;

f) Echo buffer modes of READ BUFFER;

g) Echo buffer modes of WRITE BUFFER; and

h) Download microcode mode of WRITE BUFFER.

The device server may support other commands.

For those commands that are not supported, the device server shall terminate the command with CHECK

CONDITION status, with the sense key set to NOT READY, and the additional sense code set to LOGICAL UNIT

NOT ACCESSIBLE, TARGET PORT IN UNAVAILABLE STATE.

The SCSI target device is not required to participate in all task management functions (see SAM-3 and the applicable

SCSI transport protocol standards).

5.8.2.5 Transitions between target port asymmetric access states

The movement from one target port asymmetric access state to another is called a transition.

During a transition between target port asymmetric access states the device server shall respond to a command in

one of the following ways:

a) If during the transition the logical unit is inaccessible, then the transition is performed as a single indivisible

event and the device server shall respond by either returning BUSY status, or returning CHECK

 

CONDITION status, with the sense key set to NOT READY, and an the sense code set to LOGICAL UNIT

NOT ACCESSIBLE, ASYMMETRIC ACCESS STATE TRANSITION; or

b) If during the transition the target ports in a target port group are able to access the requested logical unit,

then the device server shall support those of the following commands that it supports while in the active/

optimized asymmetric access state:

A) INQUIRY;

B) REPORT LUNS (for LUN 0);

C) REPORT TARGET PORT GROUPS;

D) REQUEST SENSE;

E) Echo Buffer modes of READ BUFFER; and

F) Echo Buffer modes of WRITE BUFFER.

The device server may support other commands when those commands are routed though a target port

that is transitioning between asymmetric access states.

For those commands that are not supported during a transition, the device server shall terminate the

command with CHECK CONDITION status, with the sense key set to NOT READY, and the additional

sense code set to LOGICAL UNIT NOT ACCESSIBLE, ASYMMETRIC ACCESS STATE TRANSITION.

The SCSI target device is not required to participate in all task management functions.

If the transition was explicit to a supported asymmetric access state and it failed, then the command shall be terminated

with CHECK CONDITION status, with the sense key set to HARDWARE ERROR, and the additional sense

code set to SET TARGET PORT GROUPS COMMAND FAILED. The target port group that encountered the error

should complete a transition to the unavailable target port asymmetric access state. If a target port group

asymmetric access state change occurred as a result of the failed transition, then the device server shall establish

a unit attention condition for the initiator port associated with every I_T nexus other than the I_T nexus on which the

SET TARGET PORT GROUPS command was received with the additional sense code set to ASYMMETRIC

ACCESS STATE CHANGED.

If the transition was implicit and it failed, then the device server shall establish a unit attention condition for the

initiator port associated with every I_T nexus with the additional sense code set to IMPLICIT ASYMMETRIC

ACCESS STATE TRANSITION FAILED.

An implicit CLEAR TASK SET task management function may be performed following a transition failure.

Once a transition is completed, the new target port asymmetric access state may apply to some or all tasks

entered into the task set before the completion of the transition. The new target port asymmetric access state shall

apply to all tasks received by the device server after completion of a transition.

After an implicit target port asymmetric access state change, a device server shall establish a unit attention

condition for the initiator port associated with every I_T nexus with the additional sense code set to ASYMMETRIC

ACCESS STATE CHANGED.

After an explicit target port asymmetric access state change, a device server shall establish a unit attention

condition with the additional sense code set to ASYMMETRIC ACCESS STATE CHANGED for the initiator port

associated with every I_T nexus other than the I_T nexus on which the SET TARGET GROUPS command was

received.

5.8.2.6 Preference Indicator

A device server may indicate one or more target port groups is a preferred target port group for accessing a logical

unit by setting the PREF bit to one in the target port group descriptor (see 6.25). The preference indication is

independent of the asymmetric access state.

 

An application client may use the PREF bit value in the target port group descriptor to influence the path selected to

a logical unit (e.g., a target port group in the standby target port asymmetric access state with the PREF bit set to

one may be chosen over a target port group in the active/optimized target port asymmetric access state with the

PREF bit set to zero).

The value of the PREF bit for a target port group may change whenever an asymmetric access state changes.

5.8.2.7 Implicit asymmetric logical units access management

SCSI target devices with implicit asymmetric logical units access management are capable of setting the target

port group asymmetric access state of each target port group using mechanisms other than the SET TARGET

PORT GROUPS command.

All logical units that report in the standard INQUIRY data (see 6.4.2) that they support asymmetric logical units

access and support implicit asymmetric logical unit access (i.e., the TPGS field contains 01b or 11b) shall:

a) Implement the INQUIRY command Device Identification VPD page identifier types 4h (see 7.6.3.7) and 5h

(see 7.6.3.8); and

b) Support the REPORT TARGET PORT GROUPS command as described in 6.25.

Implicit logical unit access state changes may be disabled with the IALUAE bit in the Control Extension mode page

(see 7.4.7).

5.8.2.8 Explicit asymmetric logical units access management

All logical units that report in the standard INQUIRY data (see 6.4.2) that they support asymmetric logical units

access and support explicit asymmetric logical unit access (i.e., the TPGS field contains 10b or 11b) shall:

a) Implement the INQUIRY command Device Identification VPD page (see 7.6.3) identifier types 4h and 5h;

b) Support the REPORT TARGET PORT GROUPS command as described in 6.25; and

c) Support the SET TARGET PORT GROUPS command as described in 6.31.

5.8.2.9 Behavior after power on, hard reset, logical unit reset, and I_T nexus loss

For all SCSI target devices that report in the standard INQUIRY data (see 6.4.2) that they support only explicit

asymmetric logical unit access (i.e., the TPGS field contains 10b), the target port shall preserve the target port

asymmetric access state during any power cycle, hard reset, logical unit reset, and I_T nexus loss.

5.8.3 Symmetric logical unit access

A device server that provides symmetrical access to a logical unit may use a subset of the asymmetrical logical

access features (see 5.8.2) to indicate this ability to an application client, providing an application client a common

set of commands to determine how to manage target port access to a logical unit.

Symmetrical logical unit access should be represented as follows:

a) The TPGS field in the standard INQUIRY data (see 6.4.2) indicates that implicit asymmetric access is

supported;

b) The REPORT TARGET PORT GROUPS command is supported; and

c) The REPORT TARGET PORT GROUPS parameter data indicates that the same state (e.g., active/

optimized state) is in effect for all target port groups.

阅读(5005) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~