天天看點

存儲知識學習之--IP網絡存儲iSCSI的概念與工作原理

存儲知識學習之--IP網絡存儲iSCSI的概念與工作原理

存儲的概念與術語

    在存儲的世界裡,有各種各樣的名詞和術語,常見的有SCSI、FC、DAS、NAS、SAN等。本節重點介紹與存儲相關的術語和知識。

1、SCSI介紹

    SCSI是小型計算機系統接口(Small Computer System Interface)的簡稱,SCSI作為輸入/輸出接口,主要用于硬碟、CD光牒、錄音帶機、掃描器、列印機等裝置。

2、FC介紹

    FC是光纖通道(Fibre Channel)的簡稱,是一種适合于千兆資料傳輸的、成熟而安全的解決方案。與傳統的SCSI技術相比,FC提供更高的資料傳輸速率,更遠的傳輸距離,更多的裝置連接配接支援,更穩定的性能,更簡易的安裝。

3、DAS介紹

4、NAS介紹

    網絡接入存儲(Network-Attached Storage)簡稱NAS,它通過網絡交換機連接配接存儲系統和伺服器,建立專門用于資料存儲的私有網絡,使用者通過TCP/IP協定通路資料,采用業界标準的檔案共享協定如NFS、HTTP、CIFS來實作基于檔案級的資料共享。NAS存儲使檔案共享通路變得更友善和快捷,并且能很容易地增加存儲容量。通過專業化的檔案伺服器與存儲技術相結合,NAS為那些需要共享大量檔案資料的企業提供了一個高效的、高可靠的、高成本效益的解決方案。但是NAS也有一定的局限性,它會受到網絡帶寬和網絡擁堵的影響,在一定程度上限制了NAS的網絡傳輸能力。

5、SAN介紹

    存儲區域網絡(Storage Area Network)簡稱SAN,它是一種通過光纖交換機、光纖路由器、光纖集線器等裝置将磁盤陣列、錄音帶等儲存設備與相關伺服器連接配接起來的高速專用子網。

    SAN由3個部分組成,分别是連接配接裝置(如路由器、光纖交換機和Hub)、接口(如SCSI、FC)、通信協定(如IP和SCSI)。這3個部分再加上儲存設備和伺服器就構成了一個SAN系統。SAN捉供了一個靈活的、高性能的和高擴充性的存儲網絡環境,它可以更加有效地傳輸海量的資料塊。由于采用了光纖接口,是以SAN還具有更高的帶寬,同時,SAN也使統一管理和集中控制實作簡化。現在SAN已經廣泛應用于ISP和銀行等,随着使用者業務量的增大,SAN的應用前景将越來越光明。

iSCSI的概念

    iSCSI,即Internet SCSI,是IETF制訂的一項标準,用于将SCSI資料塊映射為以太網資料包。從根本上說,它是一種基于IP Storage理論的新型存儲技術,該技術将存儲行業廣泛應用的SCSI接口技術與IP網絡技術相結合,可以在IP網絡上建構SAN。簡單地說,iSCSI就是在IP網絡上運作SCSI協定的一種網絡存儲技術。iSCSI技術最初由Cisco和IBM兩家開發,并且得到了廣大IP存儲技術愛好者的大力支援,這幾年得到迅速的發展壯大。

    對于中小企業的存儲網絡來說,iSCSI是個非常好的選擇。首先,從技術實作上來講,iSCSI是基于IP協定的技術标準,它允許網絡在TCP/IP協定上傳輸SCSI指令,實作SCSI和TCP/IP協定的連接配接,這樣使用者就可以通過TCP/IP網絡來建構SAN,隻需要不多的投資,就可以友善、快捷地對資訊和資料進行互動式傳輸和管理。但是,在iSCSI出現之前,建構SAN的唯一技術是利用光纖通道,這要花費很大的建設成本,一般中小企業無法承擔。其次,iSCSI技術解決了傳輸效率、存儲容量、相容性、開放性、安全性等方面的諸多問題,在使用性能上絕對不輸給商業的存儲系統或光纖存儲網絡。

    iSCSI的優勢主要表現為:首先,iSCSI沿用TCP/IP協定,而TCP/IP是在網絡方面最通用、最成熟的協定,且IP網絡的基礎建設非常完善,同時,SCSI技術是被磁盤和錄音帶等裝置廣泛采用的存儲标準,這兩點使iSCSI的建設費用和維護成本非常低廉;其次,iSCSI支援一般的以太網交換機而不是特殊的光纖通道交換機,進而減少了異構網絡帶來的麻煩;還有,iSCSI是通過IP封包傳輸存儲指令,是以可以在整個Internet上傳輸資料,沒有距離的限制。

 FC SAN與IP SAN

    在iSCSI技術出現後,通過IP技術搭建的存儲網絡也應運而生,SAN技術也就出現了兩種不同的實作方式,即FC SAN與IP SAN。簡單來說,以光纖搭建的存儲網絡就是FC SAN.以iSCSI技術搭建的存儲網絡叫做IP SAN。

    作為SAN的兩種實作方式,FC SAN與IP SAN各有優劣,下面從幾個方面分别闡述。

    在資料傳輸方式上,FC SAN與IP SAN都采用塊協定方式來完成。這是它們的相同點。

    在傳輸速度上,就目前的傳輸速率而言,FC SAN(2Gbit/s)最快,iSCSI(lGbit/s)次之

    在傳輸距離上,FC SAN理論上可以達到100公裡,而事實上,傳輸超過50公裡後,就會出現瓶頸。而通過IP網絡的iSCSI技術在理論上沒有距離的限制,即iSCSI可以進行沒有距離限制的資料傳輸。

    管理及維護成本上,架設FC SAN網絡需要投入很多硬體成本,并且需要特定的工具軟體進行操作管理,而IP SAN建構成本低廉,由于iSCSI是通過IP網絡來傳輸資料和配置設定存儲資源的,是以隻要在現有的網絡上進行管理和使用即可,這樣就可以省下大筆的管理費用及教育訓練成本。

    其實IP SAN也面臨着一些不可回避的困擾:首先,基于IP SAN的網絡存儲還沒有得到使用者的充分肯定:其次,IP SAN存儲需要專門的驅動和裝置,幸運的是,一些傳統的光纖擴充卡廠商都釋出了iSCSI HBA裝置,同時Inter也推出了專用的IP存儲擴充卡,而Microsoft、HP、Novell、SUN、AIX、Linux也具有iSCSI Initiator軟體,并且免費供使用者使

用:還有,在安全方面,IP SAN雖然有一套規範的安全機制,但是尚未得到使用者的認可。

    這些問題和困擾雖然會妨礙iSCSI的發展,但是相信在未來的網絡存儲世界裡,IP SAN絕對金擁有一席之地。

iSCSI的組成

一個簡單的iSCSI系統大緻由以下部分組成:

一個完整的iSCSI系統的拓撲結構如圖7-1所示。

    圖7-1  完整的iSCSI系統拓撲結構

    在圖7-1中,iSCSI伺服器用來安裝iSCSI驅動程式,即安裝iSCSI Initiator;Storage Router可以是以太網交換機或者路由器;iSCSI儲存設備可以是iSCSI磁盤陣列,也可以是具有存儲功能的PC伺服器。下面詳細介紹一下iSCSI Initiator與iSCSI Target的含義。

1、iSCSI Initiator

    iSCSI Initiator是一個安裝在計算機上的軟體或硬體裝置,它負責與iSCSI儲存設備進行通信。

    iSCSI伺服器與iSCSI儲存設備之間的連接配接方式有兩種:

    第一種是基于軟體的方式,即iSCSI Initiator軟體。在iSCSI伺服器上安裝Initiator後,Initiator軟體可以将以太網卡虛拟為iSCSI卡,進而接受和發送iSCSI資料封包,進而實作主機和iSCSI儲存設備之間的iSCSI協定和TCP/IP協定傳輸功能。這種方式隻需以太網卡和以太網交換機,無需其他裝置,是以成本是最低的。但是iSCSI封包和TCP/IP封包轉換需要消耗iSCSI伺服器的一部分CPU資源,隻有在低I/O和低帶寬性能要求的應用環境中才能使用這種方式。

    第二種是硬體iSCSI HBA (Host Bus Adapter)卡方式,即iSCSI Initiator硬體。這種方式需要先購買iSCSI HBA卡,然後将其安裝在iSCSI伺服器上,進而實作iSCSI伺服器與交換機之間、iSCSI伺服器與儲存設備之間的高效資料傳輸。與第一種方式相比,硬體iSCSIHBA卡方式不需要消耗iSCSI伺服器的CPU資源,同時硬體裝置是專用的,是以基于硬體的iSCSI Initiator可以提供更好的資料傳輸和存儲性能。但是,iSCSI HBA卡的價格比較昂貴,是以使用者要在性能和成本之間進行權衡。

    iSCSI Initiator軟體一般都是免費的,Centos和RHEL對iSCSI Initiator的支援都非常不錯,現在的Linux發行版本都預設自帶了iSCSI Initiator。

2、iSCSI Target

    一個可以用于存儲資料的iSCSI磁盤陣列或者具有iSCSI功能的裝置都可以被稱為“iSCSI Target”,因為大多數作業系統都可以利用一些軟體将系統轉變為一個“iSCSI Target”。本章重點講述如何建構一個PC構架的iSCSI存儲系統。所謂PC構架就是選擇一個普通的、性能優良的、可支援多塊磁盤的PC(一般為PC伺服器),再選擇一款相對成熟穩定的iSCSI Target軟體,将iSCSI Target軟體安裝在PC伺服器上,使普通的PC伺服器轉變成一台iSCSI儲存設備,并通過PC伺服器的以太網卡對外提供iSCSI資料傳輸服務。

    利用iSCSI Target軟體,可以将伺服器的存儲空間配置設定給客戶機使用,客戶機可以像使用本地硬碟一樣使用iSCSI磁盤,包括對其進行分區、格式化及讀寫等。而且每個用戶端都可以向iSCSI磁盤寫資料,互不幹擾,并且不會破壞存儲到伺服器中的資料。同時,iSCSITarget軟體對使用者權限控制非常靈活,支援配置檔案。

    我們知道,iSCSI是使用TCP/IP協定進行通信的,是以,将iSCSI兩端連接配接起來,僅僅需要一個以太網絡就可以了。由此可知,iSCSI的存儲性能和這個以太網絡有直接關系,是以最好在iSCSI網絡中使用千兆以太網交換機,劣質的網絡裝置會嚴重影響存儲系統的性能,也就是說,要為每個伺服器配備高品質的千兆以太網交換機,并提供兩個連接配接。對于iSCSI Target,應該為每個獨立陣列中的兩個獨立端口配備交換機,最後将交換機連接配接起來,采用這種配置方式,即使兩個交換機中的一個出現了故障,整個iSCSI存儲系統仍然能夠正常工作,這保證了存儲系統的不間斷運作。

iSCSI的工作原理

    要了解iSCSI的工作原理,就必須知道iSCSI的層次結構。根據OSI模型,iSCSI的協定自頂向下一共可以分為三層,如圖7-2所示。

圖7-2  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來說顯然非常重要。

本文轉自xiaocao1314051CTO部落格,原文連結:http://blog.51cto.com/xiaocao13140/1931853 ,如需轉載請自行聯系原作者

繼續閱讀