iSCSI - E.1. 일반 데이터 구조 및 절차 설명

목록

E.1. General Data Structure and Procedure Description

E.1. 일반 데이터 구조 및 절차 설명

This section defines the procedures and data structures that are commonly used by all the error recovery algorithms.

이 섹션에서는 모든 오류 복구 알고리즘에서 공통적으로 사용되는 절차 및 데이터 구조를 정의합니다.

The structures may not be the exhaustive representations of what is required for a typical implementation.

구조는 일반적인 구현에 필요한 사항을 철저하게 표현하지 못할 수도 있습니다.

Data structure definitions - struct TransferContext { int TargetTransferTag; int ExpectedDataSN; }; struct TCB { /* task control block */ Boolean SoFarInOrder; int ExpectedDataSN; /* used for both R2Ts, and Data */ int MissingDataSNList[MaxMissingDPDU]; Boolean FbitReceived; Boolean StatusXferd; Boolean CurrentlyAllegiant; int ActiveR2Ts; int Response; char *Reason; struct TransferContext TransferContextList[MaxOutStandingR2T]; int InitiatorTaskTag; int CmdSN; int SNACK_Tag; }; struct Connection { struct Session SessionReference; Boolean SoFarInOrder; int CID; int State; int CurrentTimeout; int ExpectedStatSN; int MissingStatSNList[MaxMissingSPDU]; Boolean PerformConnectionCleanup; }; struct Session { int NumConnections; int CmdSN; int Maxconnections; int ErrorRecoveryLevel; struct iSCSIEndpoint OtherEndInfo; struct Connection ConnectionList[MaxSupportedConns]; }; Procedure descriptions - Receive-a-In-PDU(transport connection, inbound PDU); check-basic-validity(inbound PDU); Start-Timer(timeout handler, argument, timeout value); Build-And-Send-Reject(transport connection, bad PDU, reason code);