網絡存儲(二)之ISCSI原理


組成

一個簡單ISCSI系統大致由以下部分構成

  • ISCSI Initiator 或者 ISCSI HBA
  • ISCSI Target
  • 以太網交換機
  • 一台或者多台服務器

結構圖如下:

  1. iscsi服務器用來安裝ISCSI驅動程序,即安裝ISCSI Initiator。
  2. IP網絡就是以太網。
  3. Storage Route可以是以太網交換機或者路由器。
  4. ISCSI存儲設備可以是ISCSI磁盤陣列,可以是具有存儲功能的PC或者服務器。
iscsi Initiator

這是安裝在計算機上的軟件或者硬件設備,它負責與ISCSI存儲設備進行通信。這里有2種通信方式:

  1. 軟件形式
    即ISCSI initiator軟件。在iscsi服務器上安裝initiator后,Initiator軟件可以將以太網虛擬成ISCSI卡,進而接受和發送ISCSI服務器上,從而實現主機和ISCSI存儲設備之間的ISCSI協議和TCP/IP協議傳輸功能。這種方式只需要以太網卡和以太網交換機,無需其他的設備,因此成本最低。但是ISCSI報文和TCP/IP報文轉換需要消耗服務器的CPU資源,只有在低I/O和低帶寬性能要求的應用環境中才能使用這種方式。
  2. 硬件形式
    使用ISCSI HBA(Host Bus Adapter),即iSCSI Initiator硬件。這種方式需要先購買ISCSI HBA卡。然后將其安裝在ISCSI服務器上,從而實現ISCSI服務器與交換機之間、iSCSI服務器與存儲設備之間的高效數據傳輸。與第一種方式比較,硬件ISCSI HBA卡方式不需要消耗ISCSI服務器的CPU資源,同時硬件設備專用的。所以基於硬件的ISCSI Initiator可以提供更好的數據傳輸和存儲性能,但是ISCSI HBA卡畢竟昂貴,需要使用者自己在性能和成本之間權衡。

so far,iSCSI Initiator軟件一般都是免費的,CentOs和Rhel都能夠很好的支持。現在發行的linux系統都默認自帶了iscsi initiator

ISCSI Target

    一個可以用於存儲數據的ISCSI磁盤陣列或者具有ISCSI功能的設備都可以被成為“ISCSI Target”,因為大多數操作系統都可以利用一些軟件將系統轉為一個ISCSI Target。linux下的開源ISCSI Target軟件---ISCSI Enterprise Target。
    利用ISCSI Target軟件,可以將服務器存儲空間分配給客戶機使用,客戶機可以像使用本地硬盤一樣使用ISCSI磁盤。包括對齊分區,格式化以及讀寫等。而且每個客戶端可以向ISCSI磁盤寫數據,互不干擾,並且不會破壞存儲到服務器中的數據。同時,ISCSI target軟件對用戶的權限控制非常靈活,支持配置文件。
   我們知道,ISCSI是使用TCP/IP協議進行通信的,因此ISCSI兩端連接起來,僅僅需要一個以太網絡就行了,所以,以太網絡的速度很大程度上絕對了ISCSI的性能,所以我們需要配置一個最好是萬兆交換機,再差勁也不能低於千兆交換機,且要做好交換機冗余,避免交換機宕機造成存儲無法使用。

ISCSI原理

   在先了解ISCSI的工作原理之前,就必須知道ISCSI的層次結構,根據OSI模型,ISCSI的協議從上往下一共可以分為三層。如下所示:

  • SCSI層 根據客戶端發出的請求建立SCSI CDB(命令描述塊),並且傳給ISCSI層。同事接收來自ISCSI層的CDB,並向應用返回數據。
  • ISCSI 對SCSI CDB進行封裝,以便能夠在基於TCP/IP協議的網絡上進行傳輸,完成SCSI到TCP/IP的協議映射。這一層是ISCSI協議的核心層。
  • TCP/IP層 對IP報文進行路由和轉發,並且提供端到端的透明可靠傳輸。
傳輸過程詳解

   iSCSI協議定義了在TCP/IP網絡發送,接受數據塊存儲數據的規則和方式。發送端將SCSI命令和數據封裝到TCP/IP包中,然后通過IP網絡轉發,接收端收到TCP/IP包之后,將其還原為SCSI命令和數據並執行,執行完成之后,將返回SCSI命令和數據再封裝到TCP/IP包中,之后再傳回發送端。這樣完成這個傳輸過程。
   ISCSI的整個數據傳輸過程在用戶來看都是透明的,用戶使用遠端的存儲設備就像使用本地的硬盤設備一樣。實際上,ISCSI的數據傳輸速率並不能完全達到本地硬盤的數據傳輸率,但這差別並不明顯,而這中網絡存儲模式還有一個有點就是安全性高,這對於數據集中存儲的ISCSI來說非常重要。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM