亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

linux I/O棧 之 SCSI TARGET (2) iscsi target-<1>協議

發布時間:2020-06-30 17:53:36 來源:網絡 閱讀:2434 作者:慢慢存儲路 欄目:軟件技術

      1、iSCSI  概念

    

    我把iscsi target作為TARGET的第一篇來講,主要因為很多人知道I/O導出協議,也都是第一個想到iscsi。

    iscsi是什么。首先,我們來講講它的概念。

    

SCSI,小型計算機系統接口,是基于client-server模型設計的存儲接口,SCSI的client(initiator)將命令發送給server(target),server處理命令后回應result給client。由于要傳送命令必然要用到相應的傳輸協議保障,iSCSI就是其中的一種傳輸協議,除此之外還有FC和SAS等。

iSCSI是SCSI over IP縮寫,它使用TCP/IP協議來傳遞SCSI命令與響應,其借用現有成熟廉價的以太網來實現SCSI通訊,成本低,管理和使用非常方便。

iSCSI有initiator和target兩個部分,分別對應于SCSI的initiator和target,iSCSI的initiator與target使用TCP進行傳輸協議實現了SCSI的initiator與target之間的數據傳輸。


2、iSCSI 協議基本概念

SCSI target中包含許多LU(邏輯單元),每一個SCSI命令都有其目標LU,這些LU負責對針對其的SCSI命令進行處理與響應。iSCSI的命令單元是PDU,在iSCSI initiator端,PDU包含SCSI initiator下發給其的LUN(邏輯單元號碼)及SCSI命令(CDB),PDU被作為TCP的playload傳遞到iSCSI target端后由SCSI target core根據LUN將SCSI命令投放到目標LU中,LU在處理命令后把響應結果遞交給SCSI target,SCSI target再將其遞交給iSCSI target,iSCSI target把result封裝成iSCSI PDU,再使用TCP回傳給iSCSI initiator,iSCSI initiator再將結果遞交給上層。

linux I/O棧 之 SCSI TARGET (2)  iscsi target-<1>協議

        3、iSCSI 子系統成員概念

        

iSCSI Device

利用iSCSI協議傳遞服務子系統的SCSI設備,典型的就是IP-SAN了。

iSCSI Node

iSCSI節點表示一個iSCSI啟動器或者iSCSI目標器。在一個網絡實體里,可能有一或者多個iSCSI節點。可以通過一個或者多個網絡端口訪問iSCSI節點。iSCSI節點的標識是iSCSI名稱。把iSCSI名稱和地址分開來后,允許多個iSCSI節點使用同一個地址,或者一個iSCSI節點使用多個地址,它是組成IP-SAN fabric的基本單元。

Network Entity

     網絡實體。它表示一個可以通過IP網絡訪問的設備或者網關。一個網絡實體必須有一或者多個網絡端口,包含在該網絡實體內的iSCSI節點可以用這些端口來訪問IP網絡。

Network Portal

網絡端口。網絡實體的一個組成部分,它有一個TCP/IP地址。網絡端口在initiator用IP地址標識,在target用IP地址+偵聽的TCP端口標識。

Session

連接initiator和target的一組TCP連接構成一個session(可以簡單理解為I_T nexus)。可以向session添加TCP連接,也可以把TCP連接從session刪除。通過一個session的所有連接,initiator只看到同一個target。

Connection

    一對TCP連接。Initiator和target之間可以使用一或者多個TCP連接通信。

CID(Connection ID)

一個session里的每個connection用CID進行標識,該標識在session范圍內是唯一。CID由initiator產生,在login請求和使用logout關閉連接時傳遞給target。

Portal Groups

網絡端口組。iSCSI session支持多連接,一些實現能把通過多個端口建立的多個連接捆綁到一個session。一個iSCSI網絡實體的多個網絡端口被定義為一個網絡端口組,把該組和一個session聯系起來,該session就可以捆綁通過該組內多個端口建立的多個連接,再使它們一起協同工作以達到捆綁的目的。每一個該組的session并不需要包括該組的所有網絡端口。一個iSCSI節點可能有一或者多個網絡端口組,但是每一個iSCSI使用的網絡端口只能屬于iSCSI節點的一個組。

Portal Group Tag

網絡端口組標識。使用16比特的數標識一個網絡端口組。在一個iSCSI節點里,所有具有同樣組標志的端口構成一個網絡端口組。


 I_T nexus

I_T nexus是指一個SCSI initiator的端口和一個SCSI target端口之間的關系。對于iSCSI,這個關系對應一個session,它指session的initiator端和iSCSI target網絡端口組之間的關系。I_T nexus的標識是一對端口名稱(iSCSI initiator名稱+i+ISID,iSCSI target名稱+t+網絡端口組標識)。

PDU (Protocol Data Unit): initiator和target之間通信時把信息分割為消息。這些消息稱為iSCSI PDU。

SSID (Session ID)

iSCSI initiator和iSCSI target之間的session用SSID進行標識,該標識由initiator部分的ISID和target部分的TPGT構成。ISID由initiator在session建立的時候明確給出,TPGT隱含的由建立連接時選擇的網絡端口確定。當TargetName給定后,建立連接的過程中,target必須把TPGT關鍵字當作確認信息發送出去。

TSIH (Target Session Identifying Handle): Target分配給與特定名稱initiator建立的session的標識。但是0被保留著用于initiator告知target這是一個新session。在為一個session添加一個connect時,TSIH已經隱含指明。


        4、iscsi網絡映射關系


在SCSI arch中,一個Device(SCSI initiator或者SCSI target)可以包含多個ports,一個SCSI initiator port和一個SCSI target port之間的聯結就是一個I_T nexus,一個SCSI initiator port和一個SCSI target port之間只允許建立一個I_T nexus。

I_T nexus對應與iSCSI中的一個session(normal),SCSI target port對應于iSCSI target中的一個portal group(具有相同tag的一組ports,iSCSI target在這些ports上進行監聽等待iSCSI initiator的連接登陸login,所有這些ports一起支撐一個I_T nexus),SCSI initiator port對應于iSCSI initiator中的session(normal)的端口,如下圖所示。

linux I/O棧 之 SCSI TARGET (2)  iscsi target-<1>協議

一個iSCSI節點只能有且只有一個SCSI設備;只能通過正常運行的iSCSI session訪問SCSI設備;SCSI名稱也就是iSCSI節點的名稱。

SCSI initiator端口,它被映射到一定正常運行的iSCSI session的一端。在login過程中,一個iSCSI initiator節點和一個iSCSI target節點協商建立一個正常運行的session;當session成功建立后,一個隸屬于iSCSI initiator設備的SCSI initiator端口被創建(虛擬出一個port)。SCSI initiator端口的名稱和標識被定義為: iSCSI initiator name + i+ ISID標識。

對于iSCSI,SCSI initiator端口和SCSI target端口的定義是不一樣的。iSCSI target端口,映射為iSCSI target的一個網絡端口組中。

iSCSI target端口名稱和標識:都被定義為:iSCSI target name + t + iSCSI target PGT(port group tag)。


       5、iSCSI協議中的命名及標識和登錄過程

每個iSCSI initiator或者iSCSI target都有一個全球唯一的名稱,對于iSCSI initiator稱為initiator name,對于iSCSI target稱為target name。

iSCSI target中的port group使用port group tag來標識;

session在iSCSI initiator端使用ISID(initiator session identifier)標識,在iSCSI target端使用TSIH(target session identifier handle)標識。

四、session和connection的狀態劃分及登陸登出。對于connection,有兩種狀態,即login phase(登陸狀態)和full function phase(全功能狀態),登陸狀態即iSCSI initiator與iSCSI target正處于登陸協商過程;全功能狀態即登陸過程已經完成,該connection已經能為上層SCSI提供服務。Session與connection一樣也有login phase和full function phase,當session中僅有的一個connection處于登陸狀態時,session處于登陸狀態,當session至少有一個connection處于全功能狀態時session處于全功能狀態。

iSCSI initiator登陸到iSCSI target的過程分三個過程:

1)  首先是iSCSI initiator往iSCSI target發送initial login請求,請求中包括iSCSI initiator支持的協議版本、iSCSI initiator name和iSCSI target name、ISID和TSIH及CID;

2)  其次是安全協商,也就是chap認證之類,用于iSCSI initiator和iSCSI target互相之間的授權認證;

3)  最后是操作參數協商,用于協商在全功能時期的一些通訊參數。

有兩種登出方式,一種是iSCSI initiator主動發出logout請求,在收到iSCSI target的logout響應后完成登出;另一種就是iSCSI target發送包含“request logout”的Async協議數據包,啟動器再發送logout請求。

       linux I/O棧 之 SCSI TARGET (2)  iscsi target-<1>協議

       5  iSCSI PDU格式

        

1. 一個Basic Header Segment(BHS,48字節);

2. 可選地n(任意)個Additional Header Segment(AHS,長度不固定,字節數為4的整數倍(不夠必須填補0),iSCSI target發往iSCSI initiator的PDU中不包含AHS);

3. 可選地一個Header Digest(頭校驗信息,4個字節);

4. 可選地一個Data Segment(數據段,長度不固定,字節數為4的整數倍(不夠必須填補0));

5. 可選的一個Data Digest(數據校驗信息,4個字節)。

        linux I/O棧 之 SCSI TARGET (2)  iscsi target-<1>協議

        5.1 BHS(Basic Header Segment格式

        linux I/O棧 之 SCSI TARGET (2)  iscsi target-<1>協議

            

1. I bit:1bit,標識本PDU為需要馬上發送;

2. Opcode操作碼:6bit,標識本PDU的類型;

   (1)由iSCSI initiator發往iSCSI target的請求PDU opcode 

        

        0x00 NOP-Out
        0x01 SCSI Command (encapsulates a SCSI Command Descriptor Block)
        0x02 SCSI Task Management function request
        0x03 Login Request
        0x04 Text Request
        0x05 SCSI Data-Out (for WRITE operations)
        0x06 Logout Request
        0x10 SNACK Request
        0x1c-0x1e Vendor specific codes


(2)由iSCSI target發往iSCSI initiator的相應PDU opcode 

        0x20 NOP-In
        0x21 SCSI Response - contains SCSI status and possibly sense information or other response information.
        0x22 SCSI Task Management function response
        0x23 Login Response
        0x24 Text Response
        0x25 SCSI Data-In - for READ operations.
        0x26 Logout Response
        0x31 Ready To Transfer (R2T) - sent by target when it is ready to receive data.
        0x32 Asynchronous Message - sent by target to indicate certain special conditions.
        0x3c-0x3e Vendor specific codes
        0x3f Reject

3. F bit:1bit,標識本PDU為一個PDU序列中的最后一個;

4. Total AHS Length:1byte,本PDU中所有AHS的長度,以4字節為單位,包括可能需要填補的0(padding);

5. Data Segment Length:3byte,本PDU中數據段的長度,以字節為單位,不包括可能需要填補的0(padding);

6. LUN:如果此(命令/響應/數據)PDU與具體的LU相關聯,則使用LUN(Logical Unit Number)標識該LU;

7. Initial Task Tag(ITT):在一個session中使用ITT標識iSCSI initiator發起的任何iSCSI任務,凡是與某iSCSI 任務相關聯的PDU,不管是由iSCSI initiator發出的還是由iSCSI target發出的,都攜帶該iSCSI 任務相應的ITT,這個ITT就是scsi cmd的命令標識符,它代表一個scsi cmd。

    

    6 pdu的傳輸

  6.1 SCSI read命令

    ① iSINI(iscsi initiator)發送 SCSI cmd pdu(OP=R,F=1)給iSTGT,①pdu seq結束

    ② iSTGT向ISINI發送data pdu和respone pdu。

      data pdu包含三次datain pdu,dataSN(seq number)在遞增,并且在最后一個標記F=1,pdu seq結束。

      response pdu會帶著ExpDataSN,它代表此次iSCSI taget已發送的DATA PDU的個數。

   linux I/O棧 之 SCSI TARGET (2)  iscsi target-<1>協議

        

            6.2   SCSI寫命令

              iscsi 寫命令的流程,包括立即數據和非立即數據的兩種情況。

              ① iSINI 發送scsi cmd pdu(op=w,F=0,I=1(immediate)),包含立即數據。

                 iSINI dataout pdu(DataSN=0,F=1) 值得是當前的dataout seq結束。

              ② 接下來的流程就是r2t(ready to transfer)和dataout的交互。


linux I/O棧 之 SCSI TARGET (2)  iscsi target-<1>協議



    7 iSCSI錯誤處理


錯誤修復范圍(class)within command

目標器:Write命令時目標器丟失dataout pdu(digest error or sequence error)。解決:使用recovery R2T。

啟動器:Read命令時啟動器丟失datain pdu或者r2t pdu(digest error or sequence error)。解決:使用snack。

within connection

啟動器:發出的命令沒有得到響應(ExpCmdSN)、丟失response pdu(digest error or sequence error)。解決:前者使用retry,后者使用snack。

目標器:發出response pdu沒有得到啟動器的確認(ExpStatSN)。解決:使用nop-in通知啟動器使啟動器發送snack要求重傳輸。

connection recovery

啟動器:檢測到tcp connection失敗或者接收到目標器異步消息(Asynchronous Message)通知其tcp connection失敗。解決:connection recovery(task reassign)。

目標器:檢測到tcp connetion失敗。解決:關閉connection,如果還有connection可用則通過異步消息通知啟動器tcp connection失敗

session recovery

其它三種修復嘗試后,才考慮使用session修復。

Session修復對于啟動器:關閉所有的連接connection,中止所有未決命令以恰當的結果返回上層SCSI,重新建立一個新的session連接到目標器。

錯誤修復層次/級別(hierarchy/level)

錯誤修復層次/級別用于定義iSCSI initiator/iSCSI target修復錯誤的能力,分級如下:

0級,不管遇到什么錯誤僅能進行session recovery,修復能力很差。

1級,能在command、connection范圍內進行修復,同時擁有session recovery能力,遇到錯誤先考慮within command修復,不行再考慮within connection修復,最后才會考慮session recovery。

2級,能在command、connection范圍內進行修復,同時擁有connection recovery、session recovery能力,遇到錯誤先考慮within command修復,不行再考慮within connection修復,不行再考慮connection recovery,最后才會考慮session recovery。

task reassign

在iSCSI中,每個iSCSI命令(task)都與唯一的一個connection關聯,有關該命令的所有pdu都需要在該connection上發送/接收,在進行connection recovery之后,iSCSI initiator可以考慮進行task reassign,就是把原connection上的task(iSCSI命令)重新關聯到另一個或者新的connection,這要通過在新connection上發送iSCSI任務管理命令――task reassign來完成。

retry

當iSCSI initiator往iSCSI target發送了iSCSI cmd pdu但卻收不到iSCSI target的確認(通過ExpCmdSN或者datain/r2t pdu或者response pdu),此時iSCSI initiator需要重新發送該iSCSI cmd pdu(需要使用跟原來一樣的ITT及CmdSN)。

reject pdu

如果reject是針對cmd pdu,則意味著iSCSI target要丟棄該cmd;如果是針對非cmd pdu,則iSCSI target必須還要發送一個response pdu來完成該命令,同時iSCSI initiator可以選擇是否重傳輸被reject了的pdu。

Digest Error

對于header digest error,會接收并丟棄pdu中的數據或者直接關閉當前connection。

payload(data) digest error

iSCSI initiator直接丟棄該pdu,如果該pdu是datain pdu,則發送一個data SNACK請求重傳輸或者可以中止該任務(任務管理命令)從而完成該命令。如果該pdu是response pdu,則發送一個status SNACK請求重傳輸,或者進行connection修復(在新connection完成該命令),或者直接關閉該connection。如果該pdu是一個非請求pdu(如Async,Reject等)則無需進一步的處理。iSCSI target響應一個reject pdu,pdu中reason設為Data-Digest-Error,然后丟棄該pdu。如果該pdu是一個dataout pdu(r2t請求的或者非請求的),則發送r2t請求重傳輸,或者響應一個cmd response pdu 中止該任務(完成該命令)(Status字段為“CHECK CONDITION”,sense data為“protocol service CRC error”)。如果該pdu不是一個dataout pdu,則無需進一步的處理。

Sequense Error

當iSCSI initiator接收到一個R2TSN/DataSN亂序的r2t/datain pdu或者一個內含ExpDataSN指示有r2t/datain pdu丟失的response pdu,意味著iSCSI initiator之前曾接收到過一個或多個Digest Error的r2t/datain pdu。

當iSCSI target接收到一個DataSN亂序的dataout pdu,則意味著iSCSI target之前至少接收到過一個Digest Error的dataout pdu,使用1.7.3介紹的方法進行處理。

當iSCSI initiator接收到一個StatSN亂序的response pdu時,意味著之前曾接收到過digest error的response pdu,所以使用1.7.3介紹的方法進行處理就行了。

format error

如果iSCSI initiator或者iSCSI target檢測到接收到的pdu格式錯誤(內容非法或者內容不一致),則會關閉當前session并重建一個session(session recovery)


  8  pdu分類和概述

        

    8.1只攜帶SCSI信息的PDU

   8.1.1 SCSI Command

iSCSI initiatoràiSCSI target。PDU中包含SCSI CDB(Command Description Block)和命令執行需要的所有參數(如任務屬性,希望傳輸的數據的長度,LUN,ITT等);也包含iSCSI協議通訊需要用到的信息:

CmdSN(session范圍內iSCSI命令的序號,與ExpCmdSN一起用于檢測iSCSI命令是否在傳輸過程中有丟失)。

ExpStatSN(期望iSCSI target發送的connection狀態序號,用于向iSCSI target確認該connection中所有StatSN小于ExpStatSN的狀態響應都已被iSCSI initiator接收到,與StatSN一起用于檢測含Status信息的iSCSI pdu是否在傳輸過程中有丟失);

8.1.2 SCSI Response

iSCSI targetàiSCSI initiator,用于iSCSI target反饋SCSI Command的執行結果。PDU中包含SCSI命令執行的結果,是沒有被執行還是已經被執行但執行中出現一些問題;如果命令中進行了數據傳輸,還包括數據傳輸的偏差值Residual count(如iSCSI initiator起初表明要寫5k字節,目標器接收到了5k+2字節等,Residual count就為2)。SCSI命令執行結果字段:response和status,如果response為0(command completed)而status為2(check condition),將會有sense data(含有check condition的詳細信息)包含在pdu的data字段中。

iSCSI協議通訊需要用到的字段:

ExpCmdSN

session范圍內iSCSI target期望iSCSI initiator發送的命令序號,用于向iSCSI initiator確認所有CmdSN小于ExpCmdSN的命令都已被iSCSI target接收到。

MaxCmdSN

session中iSCSI initiator能夠發送的最大命令序號,用于構建一個窗口緩沖區,匹配iSCSI initiator和iSCSI target的命令發送速率和命令處理速率。

StatSN

connection范圍內iSCSI響應pdu的狀態序號,用于狀態響應編號),

ExpDataSN(本命令中iSCSI target已發送Data PDU的個數。

Task Management Function Request

iSCSI initiatoràiSCSI target,用于iSCSI initiator控制管理(如中止)之前發往iSCSI target的多個任務。

Task Management Function Response

iSCSI targetàiSCSI initiator,用于iSCSI target反饋任務管理請求的執行結果

SCSI Data Out和SCSI Data In

iSCSI initiator?àiSCSI target,用于傳輸SCSI數據。

PDU中除了包含SCSI數據外,還包含用于iSCSI協議通訊的信息:所攜帶數據在命令所要傳送的所有數據中的Buffer Offset和Data Segment Length。

DataSN

數據在一個Data PDU序列中的序號,用于檢測是否有Data PDU在傳輸中丟失。

Ready To Transfer(R2T)

iSCSI initiator?iSCSI target,用于iSCSI initiator往iSCSI target傳輸數據時,iSCSI target通知iSCSI initiator其已準備好接收數據了,收到此PDU后iSCSI initiator就可以往iSCSI target發送數據了。

Target Transfer Tag(TTT)

iSCSI initiator針對此PDU發送的Data Out PDU中包含一樣的TTT以標識此數據包與此R2T的關聯性。

R2TSN

是在一個iSCSI命令范圍內R2T的序號,iSCSI initiator據此可以檢測到R2T pdu的丟失。


8.2攜帶SCSI信息和iSCSI信息的PDU

Asynchronous Message

異步消息是一種iSCSI target可以主動向iSCSI initiator發送的pdu,用于告知iSCSI initiator一些事件。異步消息pdu中可以是SCSI消息,也可以是iSCSI消息。

Pdu中有一個字段AsyncEvent用于指示具體的事件,如為0表示是SCSI異步事件,具體內容放置在pdu的data部分(稱為sense data);如為1表示iSCSI target要求iSCSI initiator登出(logout);等等。


8.3只攜帶iSCSI信息的PDU

Text request和Text response

文本請求和文本響應用于實現參數(啟動器和目標器在通訊時要使用到,具體參見RFC3720第12章)的協商。Pdu中的data部分以形式“key=value”出現。

多個文本請求/響應pdu內包含相同的ITT來標識這些請求/響應屬于同一個協商操作。此外,Pdu中的TTT使用不同的機制來標識是否繼續一個協商操作還是啟動一個新的協商操作。

login request和login response

登陸請求和響應用來實現iSCSI initiator登陸到iSCSI target。Pdu header內含:

(1) 登陸階段信息T bit、C bit、CSG、NSG(登陸分兩個階段,安全協商階段和操作參數協商階段);

(2) ISID和TSIH(分別在iSCSI initiator和iSCSI target中唯一地標識session),指示本次登陸session的ID;

CID(在session中唯一的標識connection),指示本次登陸connection的ID;

(3) CmdSN、ExpStatSN(login request);

(4) StatSN、ExpCmdSN、MaxCmdSN(login response)。

Pdu 的data部分與文本請求/響應pdu一樣以形式“key=value”出現,內含登陸參數,包括安全協商參數(參見RFC3720第11章)和操作參數(參見RFC3720第12章)。

一個session的第一個connection的登陸過程會確定/協商整個session范圍內的一些參數,如iSCSI協議版本號、session ID、session內允許創建的connection個數。

logout request和logout response

(1)登出請求和響應用來實現iSCSI登出iSCSI target,登出request pdu中包含登出的原因:

a.關閉整個session;

b.關閉session中的某個connecton(可以是發送登出請求的connection本身由pdu header中的CID確定);

c.刪除session中的某個connecton以便進行修復,原connection中的未決iSCSI命令都將被轉移到另外的connection中進行傳輸處理,也就是所謂的connection recovery。

(2)登出response pdu header中包含response字段反饋登出請求的響應結果:

a.成功關閉session或者connection;

b.找不到connection;

c.iSCSI target不支持connection recovery;

d.關閉session/connection失敗或者修復connection失敗。

如果是connection修復響應pdu,pdu header中還包含兩個字段:

Time2Wait:如果iSCSI initiator要進行把任務(iSCSI命令)重新指派到別的connection(task reasign),至少要等待的時間,單位為秒;

Time2Retain:iSCSI target在Time2Wait之后會等待iSCSI initiator進行task reasign的時間,超過這個時間后將丟棄該任務(iSCSI命令)。

SNACK request

SNACK就是對SN的ack,就是對各種有序號的pdu包括包含Status/response信息的pdu、datain pdu、r2t pdu進行確認(對于無誤的情況)或者要求iSCSI target重傳輸(對于出錯的情況)。

具體而言在SNACK request pdu header中包含字段Type:

a.請求datain pdu或者r2t pdu的重傳輸

1.請求包含Status/Response信息的pdu的重傳輸

2.確認接收到datain pdu(針對A bit被置位的datain pdu)

3.在MaxRecvDataSegmentLength被改變后請求datain pdu的重傳輸

另外兩個字段BegRun和RunLength指示需要重傳輸的pdus的起始SN及pdu個數(重傳輸時)或者指示期待的下一個datain pdu的SN(確認接收時)。

reject

reject pdu用于向iSCSI initiator提示一個iSCSI錯誤,表示拒絕之前的iSCSI initiator發送過來的某一個pdu。Pdu header中含一個指示拒絕原因的字段Reason:

a.pdu的數據字段校驗錯誤,需要iSCSI initiator的重傳輸

b.拒絕之前的一個SNACK pdu,需要重傳輸

c.協議錯誤

d.不支持該iSCSI命令

此外reject pdu還把被拒絕的pdu的header部分拷貝到reject pdu的data部分發送給iSCSI initiator。

nop in和nop out

nop in和nop out用于iSCSI initiator和iSCSI target周期性的檢測其對端是否還處于可操作狀態,相當于TCP/IP協議中的“ping”。

由iSCSI initiator主動發起并要求iSCSI target響應的nop out pdu必須包含一個有效的ITT(非全1),此外的其它nop out pdu所包含的ITT必須為全1。

由iSCSI target主動發起并要求iSCSI initiator響應的nop in pdu必須包含一個有效的TTT(非全1),此外的其它nop in pdu所包含的TTT必須為全1。

由iSCSI initiator響應iSCSI target的nop in pdu(內含非全1的TTT)而發送的nop out pdu必須包含與其響應的nop in pdu一樣的TTT,此外其它nop out pdu所包含的TTT都為全1。

由iSCSI target響應iSCSI initiator的nop out pdu(內含非全1的ITT)而發送的nop in pdu必須包含與其響應的nop out pdu一樣的ITT,此外其它nop in pdu所包含的ITT必須為全1。

    


【本文只在51cto博客作者 “底層存儲技術” https://blog.51cto.com/12580077  個人發布,公眾號發布:存儲之谷】,如需轉載,請于本人聯系,謝謝。


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

孝昌县| 大余县| 临桂县| 临汾市| 宁化县| 资溪县| 汪清县| 富源县| 舞阳县| 牡丹江市| 黄石市| 志丹县| 四川省| 云阳县| 集安市| 桂林市| 呼图壁县| 蒙阴县| 苍梧县| 乌鲁木齐县| 南丰县| 巴塘县| 普安县| 丹寨县| 慈溪市| 宝应县| 高碑店市| 吉隆县| 津市市| 防城港市| 奉化市| 兰坪| 乐平市| 曲沃县| 连云港市| 色达县| 天镇县| 邮箱| 绵阳市| 哈密市| 元江|