TWI566168B - 用於叢集式儲存系統的路由方法 - Google Patents
用於叢集式儲存系統的路由方法 Download PDFInfo
- Publication number
- TWI566168B TWI566168B TW104136489A TW104136489A TWI566168B TW I566168 B TWI566168 B TW I566168B TW 104136489 A TW104136489 A TW 104136489A TW 104136489 A TW104136489 A TW 104136489A TW I566168 B TWI566168 B TW I566168B
- Authority
- TW
- Taiwan
- Prior art keywords
- input
- output
- host
- storage device
- output modules
- Prior art date
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Description
本發明是有關於一種路由方法,特別是指一種用於叢集式儲存系統的路由方法。
現有的叢集式儲存系統包含一主機及多數與該主機共同形成一網路拓撲的儲存設備。每一儲存設備例如為可安裝多數硬碟的簡單磁碟綁定(just a bunch of disks,JBOD)磁碟伺服器,該儲存設備包含多數輸出入模組(Input/Output Module,IOM)、一用於儲存資料的儲存模組,及一電連接該儲存模組及該等輸出入模組的處理器。該主機以序列式小型電腦系統介面(Serial Attached SCSI,SAS)連接至少一儲存設備的該等輸出入模組。該主機與該等儲存設備之間的資料傳輸的路由的建立方式為:該主機利用動態路由,以廣播(broadcast)方式傳送一詢問訊框到每一儲存設備的各個輸出入模組,然後每一儲存設備的處理器根據該詢問訊框,藉由每一儲存設備的每一輸出入模組回傳一包含該輸出入模
組與其所連接的其他輸出入模組的之間的連接資訊的回傳訊框至該主機,而使該主機能根據該等回傳訊框建立資料傳輸的路由。
現有的叢集式儲存系統在較大的網路裡,因為動態路由的機制,容易產生資料傳輸的迴圈(loop)。當該主機傳送資料時,資料可能在迴圈上不斷地重複地轉發,佔據網路頻寬和儲存設備的資源,造成效能下降。
舉例來說,參閱圖1,該叢集式儲存系統包含一主機11、一儲存設備12A、一儲存設備12B,及一儲存設備12C。該儲存設備12A包括一輸出入模組121A1及一與該輸出入模組121A1連接的輸出入模組121A2。該儲存設備12B包括一輸出入模組121B1及一與該輸出入模組121B1連接的輸出入模組121B2。該儲存設備12C包括一輸出入模組121C1及一與該輸出入模組121C1連接的輸出入模組121C2。在該主機11根據所有的輸出入模組回傳的回傳訊框建立資料傳輸的路由之後,若該主機11要送出資料到該儲存設備12C的該輸出入模組121C2,因為該輸出入模組121A2連接與其同屬於儲存設備12A的該輸出入模組121A1,所以該主機11傳送資料到該輸出入模組121A2之後,所送出的資料可能會被該儲存設備12A的該輸出入模組121A2送至該輸出入模組121A1,再由該輸出入模組121A1送回該主機11,產生了資料傳輸的迴圈。
目前已有數種技術試著解決資料傳輸的迴圈問題。例如,當有迴圈存在時,切斷迴圈上的某些資料傳輸的連接(link)以使迴圈消失。然而,這種方式可能會造成資料的傳輸集中在少數路徑而造成資料傳輸堵塞,或者路徑刪除後資料無法傳送至某些輸出入模組。
因此,如何研發出一種能避免發生資料傳輸迴圈的路由方法,便成為相關業者所欲努力研究的方向。
因此,本發明之目的,即在提供一種用於叢集式儲存系統的路由方法。
於是,本發明用於叢集式儲存系統的路由方法,該叢集式儲存系統包含一主機及多數與該主機共同形成一網路拓撲並分別包括多數輸出入模組的儲存設備,在該網路拓撲中,該主機連接該等儲存設備的至少其中一者的每一輸出入模組,每一儲存設備的每一輸出入模組連接該輸出入模組所屬的儲存設備的其他每一輸出入模組,且連接至少一其他儲存設備的該等輸出入模組的其中一者,且該主機到任一輸出入模組的由該主機與屬於不同儲存設備的一或多數輸出入模組所組成的路徑僅有一條,該用於叢集式儲存系統的路由方法包含一步驟(A)、一步驟(B),及一步驟(C)。
在步驟(A)中,該主機藉由該網路拓撲發送一詢問訊框到該等儲存設備的該等輸出入模組。
在步驟(B)中,每一儲存設備的每一輸出入模組在接收到該詢問訊框之後回傳一回傳訊框至該主機,其中該回傳訊框包含該輸出入模組與其所連接的每一其他儲存設備的輸出入模組之間的外部連接資訊,且不包含該輸出入模組與其所屬的儲存設備的其他任一輸出入模組之間的內部連接資訊。
在步驟(C)中,該主機根據該等輸出入模組回傳的該等回傳訊框產生該主機與該等輸出入模組之間的資料傳輸的路由。
本發明之功效在於:藉由該等輸出入模組回傳的該等回傳訊框不包含該等輸出入模組與其所屬的儲存設備的其他任一輸出入模組之間的外部連接資訊,以在建立資料傳輸的路由時避免產生資料傳輸的迴圈。
11‧‧‧主機
12A‧‧‧儲存設備
121A1‧‧‧輸出入模組
121A2‧‧‧輸出入模組
12B‧‧‧儲存設備
121B1‧‧‧輸出入模組
121B2‧‧‧輸出入模組
12C‧‧‧儲存設備
121C1‧‧‧輸出入模組
121C2‧‧‧輸出入模組
2‧‧‧主機
3‧‧‧儲存設備
3A‧‧‧儲存設備
31‧‧‧輸出入模組
31A1‧‧‧輸出入模組
31A2‧‧‧輸出入模組
3B‧‧‧儲存設備
31B1‧‧‧輸出入模組
31B2‧‧‧輸出入模組
3C‧‧‧儲存設備
31C1‧‧‧輸出入模組
31C2‧‧‧輸出入模組
401~403‧‧‧步驟
本發明之其他的特徵及功效,將於參照圖式的實施方式中清楚地呈現,其中:圖1是一方塊圖,說明一習知的叢集式儲存系統;圖2是一方塊圖,說明執行本發明用於叢集式儲存系統的路由方法的一的實施例的一叢集式儲存系統;
圖3是一流程圖,說明本發明用於叢集式儲存系統的路由方法的一實施例;圖4是一示意圖,說明本發明用於叢集式儲存系統的路由方法的該實施例的一詢問訊框的傳輸情形;圖5是一示意圖,說明本發明用於叢集式儲存系統的路由方法的該實施例的多數回傳訊框的傳輸情形;圖6是一示意圖,說明本發明用於叢集式儲存系統的路由方法的該實施例的該叢集式儲存系統的一主機與多數儲存設備的每一輸出入模組之間的資料傳輸的路由;圖7是一示意圖,說明本發明用於叢集式儲存系統的路由方法的該實施例的該叢集式儲存系統的該主機與該等儲存設備共同形成一樹狀網路拓撲;及圖8是一示意圖,說明本發明用於叢集式儲存系統的路由方法的該實施例的該叢集式儲存系統的該主機與該等儲存設備共同形成一星狀網路拓撲。
參閱圖2,本發明用於叢集式儲存系統的路由方法之一實施例是由一叢集式儲存系統執行。該叢集式儲存系統包含一主機2及多數與該主機2共同形成一網路拓撲的儲存設備3。每一儲存設
備3包括多數輸出入模組31、一用於儲存資料的儲存模組(圖未示),及一電連接該儲存模組及該等輸出入模組的處理器(圖未示)。其中,該主機2連接該等儲存設備3的至少其中一者的每一輸出入模組31。每一儲存設備3的每一輸出入模組31具有一SAS地址,並連接該輸出入模組31所屬的儲存設備3的其他每一輸出入模組31,且連接至少一其他儲存設備3的該等輸出入模組31的其中一者,且該主機2到任一輸出入模組31的由該主機2與屬於不同儲存設備3的一或多數輸出入模組31所組成的路徑僅有一條。例如,由該主機2到該輸出入模組31C2的該路徑由該主機2與屬於不同儲存設備3的該輸出入模組31A2、該輸出入模組31B2、該輸出入模組31C2所組成;又例如,由該主機2到該輸出入模組31B1的該路徑由該主機2與屬於不同儲存設備3的該輸出入模組31A1、該輸出入模組31B1所組成。在本實施例中,是以該叢集式儲存系統包含三儲存設備3,且每一儲存設備3包括二輸出入模組31為例,但不以此為限。且在本實施例中,該儲存設備3例如為JBOD磁碟伺服器,該主機2例如為伺服器主機,且該主機2及該等儲存設備3分別具有二個埠(port),並透過主機匯流排配接器(host bus adapter,HBA)連接,形成SAS網路拓撲,但不以此為限。
參閱圖2與圖3,以下說明該實施例的各個步驟。
在步驟401中,該主機2藉由該網路拓撲發送一詢問訊框到該等儲存設備3的該等輸出入模組31,其中該詢問訊框為SAS訊框(SAS frame)。詳細而言,如圖4所示,該詢問訊框被傳送到一儲存設備3A的一輸出入模組31A1;然後,再藉由該輸出入模組31A1發送該詢問訊框到其所連接的另一儲存設備3B的一輸出入模組31B1;最後,由該輸出入模組31B1發送該詢問訊框到其所連接的另一儲存設備3C的一輸出入模組31C1。類似地,該詢問訊框也被傳送到該儲存設備3A的一輸出入模組31A2;然後,再藉由該輸出入模組31A2發送該詢問訊框到其所連接的該儲存設備3B的一輸出入模組31B2;最後,由該輸出入模組31B2發送該詢問訊框到其所連接的該儲存設備3C的一輸出入模組31C2。
在步驟402中,每一儲存設備3的每一輸出入模組31在接收到該詢問訊框之後,每一儲存設備3的該處理器根據該詢問訊框,藉由該儲存設備3的每一輸出入模組31傳送一回傳訊框至該主機2,其中該回傳訊框包含該輸出入模組31與其所連接的每一其他儲存設備3的輸出入模組31之間的外部連接資訊,也就是包含該輸出入模組31的SAS地址及與其所連接的每一其他儲存設備3的輸出入模組31的SAS地址,且不包含該輸出入模組31與其所屬的儲存設備3的其他任一輸出入模組31之間的內部連接資訊,也就是不包
含該輸出入模組31所屬的儲存設備3的其他任一輸出入模組31的SAS地址。
其中,在實施上,每一儲存設備3的處理器針對該儲存設備3的每一輸出入模組31,先藉由習知技術產生習知的包含該儲存設備3中所有的輸出入模組31的SAS地址與該輸出入模組31所連接的每一其他儲存設備3的輸出入模組31的SAS地址的該回傳訊框,接著執行一程式碼來辨識該回傳訊框中是否除了該輸出入模組31的SAS地址之外還包含該儲存設備3的其他輸出入模組31的SAS地址,再從該回傳訊框中刪除該儲存設備3的其他輸出入模組31的SAS地址,而使得該回傳訊框僅包含該輸出入模組31的SAS地址及與其所連接的每一其他儲存設備3的輸出入模組31的SAS地址,而不包含該輸出入模組31所屬的儲存設備3的其他任一輸出入模組31的SAS地址。
參閱圖5,在本實施例中,該輸出入模組31C1回傳的回傳訊框包含下列表一所示的一包含自身的SAS地址與該輸出入模組31B1的SAS地址的表格資料,以讓該主機2據以判斷出該輸出入模組31C1連接該輸出入模組31B1。該輸出入模組31B1回傳的回傳訊框包含下列表二所示的一包含自身的SAS地址、該輸出入模組31C1的SAS地址,及該輸出入模組31A1的SAS地址的表格資料,以讓該主機2據以判斷出該輸出入模組31B1連接該輸出入模組
31C1與該輸出入模組31A1。該輸出入模組31A1回傳的回傳訊框包含下列表三所示的一包含自身的SAS地址與該輸出入模組31B1的SAS地址的表格資料,以讓該主機2據以判斷出該輸出入模組31A1連接該輸出入模組31B1。同理,該輸出入模組31A2、該輸出入模組31B2,及該輸出入模組31C2,所回傳方式亦相同。
在步驟403中,該主機2根據該等輸出入模組31傳送的該等回傳訊框產生該主機2與該等儲存設備3的該等輸出入模組31之間的資料傳輸的路由。
特別地,如圖6所示,因為在步驟403中的該等回傳訊框不包含屬於同一儲存設備3的該等輸出入模組31之間的內部連接資訊,而使該主機2判定屬於同一儲存設備3的該等輸出入模組31之間沒有路徑連接。如此,該主機2與該輸出入模組31C1之間的路
由,為經該輸出入模組31A1及該輸出入模組31B1,而到該輸出入模組31C1的路徑;該主機2與該輸出入模組31B1之間的路由,為經該輸出入模組31A1,而到該輸出入模組31B1的路徑;該主機2與該輸出入模組31A1之間的路由,則是由該主機2直接傳送到該輸出入模組31A1。同理,該主機2與該輸出入模組31A2、該輸出入模組31B2,及該輸出入模組31C2之間所建立的路由類似上述。由上述可知,因為該主機2判定屬於同一儲存設備3的該等輸出入模組31之間沒有路徑連接,所以該主機2藉由動態路由所產生的該主機2與該輸出入模組31之間的資料傳輸的路由不會造成迴圈。相對地,在習知的叢集式儲存系統的動態路由方法中,因為回傳訊框包含屬於同一儲存設備的輸出入模組之間的內部連接資訊,因而主機與輸出入模組之間的資料傳輸的路由容易造成迴圈。此外,在本實施例中是以靜態路由的方式建立同一儲存設備3的該等輸出入模組31之間的路由,以達成同一儲存設備3的該等輸出入模組31之間的資料傳輸。
此外,雖然在本實施例中,該網路拓撲為圖2所示的線形拓撲,但該網路拓撲可有其他的實施態樣,例如為圖7所示的樹狀拓撲、圖8所示的星狀拓撲等,其中該主機2到任一輸出入模組31的由該主機2與屬於不同儲存設備3的一或多數輸出入模組31所組成的路徑也僅有一條。
綜上所述,本發明用於叢集式儲存系統的路由方法,藉由每一輸出入模組31傳送的該回傳訊框不包含該等輸出入模組31與其所屬的儲存設備3的其他任一輸出入模組31之間的內部連接資訊,以避免該主機2傳送的資料由動態路由所建立路由經由其中一輸出入模組31時,傳送到位於同一儲存設備3的其他輸出入模組31而產生迴圈,故確實能達成本發明之目的。
惟以上所述者,僅為本發明之實施例而已,當不能以此限定本發明實施之範圍,凡是依本發明申請專利範圍及專利說明書內容所作之簡單的等效變化與修飾,皆仍屬本發明專利涵蓋之範圍內。
401~403‧‧‧步驟
Claims (7)
- 一種用於叢集式儲存系統的路由方法,該叢集式儲存系統包含一主機及多數與該主機共同形成一網路拓撲並分別包括多數輸出入模組的儲存設備,在該網路拓撲中,該主機連接該等儲存設備的至少其中一者的每一輸出入模組,每一儲存設備的每一輸出入模組連接該輸出入模組所屬的儲存設備的其他每一輸出入模組,且連接至少一其他儲存設備的該等輸出入模組的其中一者,且該主機到任一輸出入模組的由該主機與屬於不同儲存設備的一或多數輸出入模組所組成的路徑僅有一條,該用於叢集式儲存系統的路由方法包含:(A)該主機藉由該網路拓撲發送一詢問訊框到該等儲存設備的該等輸出入模組;(B)每一儲存設備的每一輸出入模組在接收到該詢問訊框之後回傳一回傳訊框至該主機,其中該回傳訊框包含該輸出入模組與其所連接的每一其他儲存設備的輸出入模組之間的外部連接資訊,且不包含該輸出入模組與其所屬的儲存設備的其他任一輸出入模組之間的內部連接資訊;及(C)該主機根據該等輸出入模組回傳的該等回傳訊框產生該主機與該等輸出入模組之間的資料傳輸的路由。
- 如請求項1所述的用於叢集式儲存系統的路由方法,其中,在步驟(A)中,該主機發送該詢問訊框到其所連接的 該等輸出入模組,且每一輸出入模組發送該詢問訊框到其所連接的屬於其他儲存設備的該輸出入模組。
- 如請求項1所述的用於叢集式儲存系統的路由方法,其中,在步驟(B)中,該回傳訊框包含該輸出入模組的地址及與其所連接的每一其他儲存設備的輸出入模組的地址,且不包含該輸出入模組所屬的儲存設備的其他任一輸出入模組的地址。
- 如請求項3所述的用於叢集式儲存系統的路由方法,其中,在步驟(B)中,該儲存設備針對該輸出入模組,先產生包含該儲存設備中所有的輸出入模組的地址與該輸出入模組所連接的每一其他儲存設備的輸出入模組的地址的該回傳訊框,再從該回傳訊框中刪除除了該輸出入模組的地址之外的該儲存設備所包括的其他輸出入模組的地址。
- 如請求項4所述的用於叢集式儲存系統的路由方法,其中,在步驟(B)中該儲存設備執行一程式碼後,辨識該回傳訊框中是否包含除了該輸出入模組的地址之外的還該儲存設備的所包括的其他輸出入模組的地址,再從該回傳訊框中刪除該儲存設備的其他輸出入模組的地址。
- 如請求項3~5中任一項所述的用於叢集式儲存系統的路由方法,其中,在步驟(B)中,該地址為一序列式小型電腦系統介面地址。
- 如請求項1所述的用於叢集式儲存系統的路由方法,其中,該詢問訊框及該回傳訊框為序列式小型電腦系統介面訊框。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW104136489A TWI566168B (zh) | 2015-11-05 | 2015-11-05 | 用於叢集式儲存系統的路由方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW104136489A TWI566168B (zh) | 2015-11-05 | 2015-11-05 | 用於叢集式儲存系統的路由方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI566168B true TWI566168B (zh) | 2017-01-11 |
TW201716977A TW201716977A (zh) | 2017-05-16 |
Family
ID=58407971
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW104136489A TWI566168B (zh) | 2015-11-05 | 2015-11-05 | 用於叢集式儲存系統的路由方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI566168B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112578994A (zh) * | 2019-09-29 | 2021-03-30 | 佛山市顺德区顺达电脑厂有限公司 | 用于扩充硬盘扩充单元的丛集式储存系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060085425A1 (en) * | 2004-10-15 | 2006-04-20 | International Business Machines Corporation | Cluster spanning command routing |
TW200828887A (en) * | 2006-10-30 | 2008-07-01 | Raytheon Co | System and method for networking computer clusters |
US8127059B1 (en) * | 2005-09-02 | 2012-02-28 | Pmc-Sierra Us, Inc. | Apparatus for interconnecting hosts with storage devices |
-
2015
- 2015-11-05 TW TW104136489A patent/TWI566168B/zh active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060085425A1 (en) * | 2004-10-15 | 2006-04-20 | International Business Machines Corporation | Cluster spanning command routing |
US8127059B1 (en) * | 2005-09-02 | 2012-02-28 | Pmc-Sierra Us, Inc. | Apparatus for interconnecting hosts with storage devices |
TW200828887A (en) * | 2006-10-30 | 2008-07-01 | Raytheon Co | System and method for networking computer clusters |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112578994A (zh) * | 2019-09-29 | 2021-03-30 | 佛山市顺德区顺达电脑厂有限公司 | 用于扩充硬盘扩充单元的丛集式储存系统 |
Also Published As
Publication number | Publication date |
---|---|
TW201716977A (zh) | 2017-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11765057B2 (en) | Systems and methods for performing end-to-end link-layer and IP-layer health checks between a host machine and a network virtualization device | |
US9231849B2 (en) | Apparatus and method for controlling virtual switches | |
US8942139B2 (en) | Support for converged traffic over ethernet link aggregation (LAG) | |
US8976652B2 (en) | Relay device, method of controlling relay device, and relay system | |
US9197539B2 (en) | Multicast miss notification for a distributed network switch | |
US20160352578A1 (en) | System and method for adaptive paths locator for virtual network function links | |
US9397851B2 (en) | Directed route load/store packets for distributed switch initialization | |
US20160357468A1 (en) | Maintenance of a fabric priority during synchronous copy operations | |
US9282036B2 (en) | Directed route load/store packets for distributed switch initialization | |
US9832255B2 (en) | Event distribution method, control device, and processor on software-defined network | |
US12052180B2 (en) | Managing network state for high flow availability within distributed network platform | |
US9401862B2 (en) | Optimized internet small computer system interface path | |
WO2016187967A1 (zh) | 一种实现日志传输的方法及装置 | |
US9641611B2 (en) | Logical interface encoding | |
US9032118B2 (en) | Administration device, information processing device, and data transfer method | |
US10623341B2 (en) | Configuration of a set of queues for multi-protocol operations in a target driver | |
TWI566168B (zh) | 用於叢集式儲存系統的路由方法 | |
WO2018099241A1 (zh) | 磁盘阵列控制器、数据处理方法及其装置 | |
JP4609331B2 (ja) | 複合型情報プラットフォーム装置およびその通信帯域保証方法 | |
WO2018145267A1 (zh) | 一种转发器入网识别方法、sdn控制器及转发器 | |
CN106817307B (zh) | 用于丛集式储存系统的建立路由的方法 | |
JP2024524992A (ja) | グラフィック処理ユニットのルーティングポリシー |