10.8. Ready To Transfer (R2T)
10.8. 전송 준비 완료 (R2T)
Byte/ 0 | 1 | 2 | 3 |
/ | | | |
|0 1 2 3 4 5 6 7|0 1 2 3 4 5 6 7|0 1 2 3 4 5 6 7|0 1 2 3 4 5 6 7|
+---------------+---------------+---------------+---------------+
0|.|.| 0x31 |1| Reserved |
+---------------+---------------+---------------+---------------+
4|TotalAHSLength | DataSegmentLength |
+---------------+---------------+---------------+---------------+
8| LUN |
+ +
12| |
+---------------+---------------+---------------+---------------+
16| Initiator Task Tag |
+---------------+---------------+---------------+---------------+
20| Target Transfer Tag |
+---------------+---------------+---------------+---------------+
24| StatSN |
+---------------+---------------+---------------+---------------+
28| ExpCmdSN |
+---------------+---------------+---------------+---------------+
32| MaxCmdSN |
+---------------+---------------+---------------+---------------+
36| R2TSN |
+---------------+---------------+---------------+---------------+
40| Buffer Offset |
+---------------+---------------+---------------+---------------+
44| Desired Data Transfer Length |
+---------------------------------------------------------------+
48| Header-Digest (Optional) |
+---------------+---------------+---------------+---------------+
When an initiator has submitted a SCSI Command with data that passes from the initiator to the target (WRITE), the target may specify which blocks of data it is ready to receive.
이니시에이터가 이니시에이터에서 타겟으로 전달되는 데이터 (WRITE)와 함께 SCSI 명령을 제출하면 타겟은 수신할 준비가 된 데이터 블록을 지정할 수 있습니다.
The target may request that the data blocks be delivered in whichever order is convenient for the target at that particular instant.
타겟은 특정 순간에 타겟에게 편리한 순서로 데이터 블록이 전달되도록 요청할 수 있습니다.
This information is passed from the target to the initiator in the Ready To Transfer (R2T) PDU.
이 정보는 (R2T) (Ready To Transfer) PDU를 통해 타겟에서 이니시에이터로 전달됩니다.
In order to allow write operations without an explicit initial R2T, the initiator and target MUST have negotiated the key InitialR2T to No during Login.
명시적인 초기 R2T 없이 쓰기 작업을 허용하려면 이니시에이터와 타겟이 로그인 중에 키 초기 R2T를 아니요로 협상해야 합니다.
An R2T MAY be answered with one or more SCSI Data-Out PDUs with a matching Target Transfer Tag.
R2T는 일치하는 타겟 전송 태그가 있는 하나 이상의 SCSI 데이터 출력 PDU로 응답할 수 있습니다.
If an R2T is answered with a single Data-Out PDU, the Buffer Offset in the Data PDU MUST be the same as the one specified by the R2T, and the data length of the Data PDU MUST be the same as the Desired Data Transfer Length specified in the R2T.
R2T가 단일 Data-Out PDU로 응답받는 경우, Data PDU의 버퍼 오프셋은 R2T에서 지정한 것과 동일해야 하며, Data PDU의 데이터 길이는 R2T에서 지정한 Desired Data Transfer Length/원하는 데이터 전송 길이와 동일해야 합니다.
If the R2T is answered with a sequence of Data PDUs, the Buffer Offset and Length MUST be within the range of those specified by R2T, and the last PDU MUST have the F bit set to 1.
R2T가 일련의 데이터 PDU로 응답하는 경우 버퍼 오프셋 및 길이는 R2T에서 지정한 범위 내에 있어야 하며 마지막 PDU의 F 비트는 1로 설정되어야 합니다.
If the last PDU (marked with the F bit) is received before the Desired Data Transfer Length is transferred, a target MAY choose to Reject that PDU with "Protocol error" reason code.
원하는 데이터 전송 길이가 전송되기 전에 마지막 PDU (F 비트로 표시됨)가 수신되면 타겟은 "프로토콜 오류" 이유 코드와 함께 해당 PDU를 거부하도록 선택할 수 있습니다.
DataPDUInOrder governs the Data-Out PDU ordering.
DataPDUInOrder 는 데이터 출력 PDU 순서를 관리합니다.
If DataPDUInOrder is set to Yes, the Buffer Offsets and Lengths for consecutive PDUs MUST form a continuous non-overlapping range and the PDUs MUST be sent in increasing offset order.
DataPDUInOrder가 Yes로 설정된 경우 연속 PDU의 버퍼 오프셋 및 길이는 연속적인 비중첩 범위를 형성해야 하며 PDU는 오프셋 증가 순서로 전송되어야 합니다.
The target may send several R2T PDUs.
타겟은 여러 R2T PDU를 보낼 수 있습니다.
It, therefore, can have a number of pending data transfers.
따라서 보류 중인 데이터 전송 수가 많을 수 있습니다.
The number of outstanding R2T PDUs are limited by the value of the negotiated key MaxOutstandingR2T.
미해결 R2T PDU 수는 협상된 키 MaxOutstandingR2T의 값으로 제한됩니다.
Within a connection, outstanding R2Ts MUST be fulfilled by the initiator in the order in which they were received.
연결 내에서 미해결 R2T는 수신된 순서대로 이니시에이터에 의해 이행되어야 합니다.
R2T PDUs MAY also be used to recover Data Out PDUs.
R2T PDU는 데이터 출력 PDU를 복구하는 데에도 사용될 수 있습니다.
Such an R2T (Recovery-R2T) is generated by a target upon detecting the loss of one or more Data-Out PDUs due to:
이러한 R2T (Recovery-R2T)는 타겟이 다음으로 인해 하나 이상의 Data-Out PDU 손실을 감지하면 생성됩니다:
- Digest error
- 다이제스트 오류
- Sequence error
- 시퀀스 오류
- Sequence reception timeout
- 시퀀스 수신 타임아웃
A Recovery-R2T carries the next unused R2TSN, but requests part of or the entire data burst that an earlier R2T (with a lower R2TSN) had already requested.
Recovery-R2T는 사용되지 않은 다음 R2TSN을 전달하지만 이전 R2T (낮은 R2TSN 포함)가 이미 요청한 데이터 버스트의 일부 또는 전체를 요청합니다.
DataSequenceInOrder governs the buffer offset ordering in consecutive R2Ts.
DataSequenceInOrder는 연속 R2T의 버퍼 오프셋 순서를 제어합니다.
If DataSequenceInOrder is Yes, then consecutive R2Ts MUST refer to continuous non-overlapping ranges except for Recovery-R2Ts.
DataSequenceInOrder가 Yes인 경우 연속 R2T는 Recovery-R2T를 제외하고 연속적이고 겹치지 않는 범위를 참조해야 합니다.