應(yīng)用于集群存儲(chǔ)系統(tǒng)的輸出入傳遞方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及網(wǎng)絡(luò)技術(shù)領(lǐng)域,特別是涉及一種應(yīng)用于集群存儲(chǔ)系統(tǒng)的輸出入傳遞方法及系統(tǒng)。
【背景技術(shù)】
[0002]透明橋接通常用于總線擴(kuò)展中,其主側(cè)和次側(cè)的地址完全透明,在主側(cè)和次側(cè)之間的地址傳遞是直接傳遞的模式,沒有地址翻譯。通過透明橋隔離PCI總線段,可以提供擴(kuò)展負(fù)載數(shù)量和匹配不同工作頻率、總線寬度或電壓的能力,但沒有隔離主、從總線段之間地址域的功能。
[0003]基于PCI (Peripheral Component Interconnect,外設(shè)組件互連標(biāo)準(zhǔn))的單處理器系統(tǒng)依靠主處理器來枚舉和配置系統(tǒng),并處理中斷和錯(cuò)誤情況。主處理器有效地?fù)碛姓麄€(gè)系統(tǒng)。而基于PCI的多處理器系統(tǒng)中如果系統(tǒng)中有兩個(gè)或多個(gè)處理器而且沒有特別地隔離它們,那么每個(gè)處理器都將嘗試提供主處理器功能,并相互爭奪系統(tǒng)的控制權(quán),硬盤數(shù)據(jù)易產(chǎn)生沖突。
[0004]傳統(tǒng)的使用SAS(Serial Attached SCSI,串行連接SCSI)當(dāng)雙邊控制器的傳送功能,需要協(xié)議轉(zhuǎn)換,數(shù)據(jù)交換效率較低;而使用PC1-E (PCI Express,總線接口 )當(dāng)信息傳送功能,需要在接收端配置一個(gè)緩沖區(qū),并且大量數(shù)據(jù)需分段傳送,數(shù)據(jù)傳送效率低。
【發(fā)明內(nèi)容】
[0005]鑒于此,本發(fā)明提供了一種應(yīng)用于集群存儲(chǔ)系統(tǒng)的輸出入傳遞方法及系統(tǒng),能高效交換數(shù)據(jù),且能夠有效隔離主、從總線之間的地址域。
[0006]本申請(qǐng)中,“輸出入信號(hào)”指的是輸出/輸入信號(hào)(I/O信號(hào))。
[0007]為達(dá)到發(fā)明目的,本發(fā)明提供一種應(yīng)用于集群存儲(chǔ)系統(tǒng)的輸出入傳送方法,包括以下步驟:
[0008]第一控制器接收主機(jī)發(fā)送的輸出入信號(hào),并判斷所述第一控制器是否為所述輸出入信號(hào)對(duì)應(yīng)的邏輯卷預(yù)設(shè)的主控制器;
[0009]若是,則所述第一控制器根據(jù)所述輸出入信號(hào)控制所述邏輯卷讀寫數(shù)據(jù),并轉(zhuǎn)至所述邏輯卷讀寫數(shù)據(jù)完成后,所述第一控制器返回讀寫完成信號(hào)到所述主機(jī)的步驟;
[0010]若否,則所述第一控制器將所述輸出入信號(hào)傳遞給作為所述邏輯卷主控制器的第二控制器,且所述第二控制器根據(jù)所述輸出入信號(hào)控制所述邏輯卷讀寫數(shù)據(jù);
[0011]所述邏輯卷讀寫數(shù)據(jù)完成后,所述第一控制器返回讀寫完成信號(hào)到所述主機(jī)。
[0012]作為一種可實(shí)施例,所述第一控制器根據(jù)所述輸出入信號(hào)控制所述邏輯卷讀寫數(shù)據(jù),包括如下步驟:
[0013]將所述第二控制器的第二內(nèi)存地址映射到所述第一控制器,并與所述第一控制器的第一內(nèi)存地址合并構(gòu)成第一合并內(nèi)存地址;
[0014]若所述輸出入信號(hào)為輸出信號(hào),所述第一控制器控制所述邏輯卷將其內(nèi)的數(shù)據(jù)緩存到所述第一合并內(nèi)存地址內(nèi),并通過所述第一合并內(nèi)存地址讀出數(shù)據(jù);
[0015]若所述輸出入信號(hào)為輸入信號(hào),所述第一控制器將所述數(shù)據(jù)緩存到所述第一合并內(nèi)存地址中,并通過所述第一合并內(nèi)存地址將所述數(shù)據(jù)寫入所述邏輯卷。
[0016]作為一種可實(shí)施例,所述第一控制器將所述輸出入信號(hào)傳遞給作為所述邏輯卷主控制器的第二控制器,且所述第二控制器根據(jù)所述輸出入信號(hào)控制所述邏輯卷讀寫數(shù)據(jù),包括如下步驟:
[0017]所述第一控制器將所述輸出入信號(hào)封裝為輸出入信號(hào)包,并將所述輸出入信號(hào)包傳遞給所述第二控制器;
[0018]所述第二控制器接收所述輸出入信號(hào)包后,將所述輸出入信號(hào)包轉(zhuǎn)換為本地輸出入信號(hào);
[0019]所述第二控制器根據(jù)所述本地輸出入信號(hào)控制所述邏輯卷讀寫數(shù)據(jù)。
[0020]作為一種可實(shí)施例,所述第二控制器根據(jù)所述本地輸出入信號(hào)控制所述邏輯卷讀寫數(shù)據(jù),包括如下步驟:
[0021]將所述第一控制器的第一內(nèi)存地址映射到所述第二控制器,并與所述第二控制器的第二內(nèi)存地址合并構(gòu)成第二合并內(nèi)存地址;
[0022]若所述本地輸出入信號(hào)為輸出信號(hào),所述第二控制器將所述邏輯卷內(nèi)的數(shù)據(jù)緩存到所述第二合并內(nèi)存地址內(nèi),并通過所述第二合并內(nèi)存地址讀出數(shù)據(jù);
[0023]若所述本地輸出入信號(hào)為輸入信號(hào),所述第二控制器將所述數(shù)據(jù)緩存到所述第二合并內(nèi)存地址中,并通過所述第二合并內(nèi)存地址將所述數(shù)據(jù)寫入所述邏輯卷。
[0024]作為一種可實(shí)施例,所述邏輯卷讀寫數(shù)據(jù)完成后,所述第一控制器返回讀寫完成信號(hào)到所述主機(jī),包括如下步驟:
[0025]若所述第一控制器為所述主控制器,所述第一控制器控制所述邏輯卷讀寫數(shù)據(jù)完成后,返回所述讀寫完成信號(hào)到所述主機(jī);
[0026]若所述第二控制器為所述主控制器,所述第二控制器控制所述邏輯卷讀寫數(shù)據(jù)完成后,向所述第一控制器發(fā)送確認(rèn)信息,所述第一控制器接收所述確認(rèn)信息后,返回所述讀寫完成信號(hào)到所述主機(jī)。
[0027]本發(fā)明還提供一種應(yīng)用于集群存儲(chǔ)系統(tǒng)的輸出入傳遞系統(tǒng),包括第一控制器、第二控制器及主機(jī),控制器中包括接收模塊,判斷模塊和返回模塊,其中:所述第一控制器,被配置以通過所述接收模塊接收主機(jī)發(fā)送的輸出入信號(hào);
[0028]所述第一控制器,被配置以通過所述判斷模塊判斷所述第一控制器是否為所述輸出入信號(hào)對(duì)應(yīng)的邏輯卷預(yù)設(shè)的主控制器;若是,則所述第一控制器根據(jù)所述輸出入信號(hào)控制所述邏輯卷讀寫數(shù)據(jù),并轉(zhuǎn)至所述返回模塊;若否,則所述第一控制器將所述輸出入信號(hào)傳遞給作為所述邏輯卷主控制器的第二控制器,且所述第二控制器根據(jù)所述輸出入信號(hào)控制所述邏輯卷讀寫數(shù)據(jù);
[0029]所述第一控制器,被配置以所述邏輯卷讀寫數(shù)據(jù)完成后,通過所述返回模塊返回讀寫完成信號(hào)到所述主機(jī)。
[0030]作為一種可實(shí)施例,所述判斷模塊包括映射單元,讀出單元和寫入單元,其中:
[0031]所述第一控制器,被配置以通過所述映射單元將所述第二控制器的第二內(nèi)存地址映射到所述第一控制器,并與所述第一控制器的第一內(nèi)存地址合并構(gòu)成第一合并內(nèi)存地址;
[0032]所述第一控制器,被配置以若所述輸出入信號(hào)為輸出信號(hào),通過所述讀出單元將所述邏輯卷內(nèi)的數(shù)據(jù)緩存到所述第一合并內(nèi)存地址內(nèi),并通過所述第一合并內(nèi)存地址讀出數(shù)據(jù);
[0033]所述第一控制器,被配置以若所述輸出入信號(hào)為輸入信號(hào),通過所述寫入單元將所述數(shù)據(jù)緩存到所述第一合并內(nèi)存地址中,并通過所述第一合并內(nèi)存地址將所述數(shù)據(jù)寫入所述邏輯卷。
[0034]作為一種可實(shí)施例,所述判斷模塊包括封裝單元,轉(zhuǎn)換單元和讀寫單元,其中:
[0035]所述第一控制器,被配置以通過所述封裝單元將所述輸出入信號(hào)封裝為輸出入信號(hào)包,并將所述輸出入信號(hào)包傳遞給所述第二控制器;
[0036]所述第二控制器,被配置以通過所述轉(zhuǎn)換單元接收所述輸出入信號(hào)包后,將所述輸出入信號(hào)包轉(zhuǎn)換為本地輸出入信號(hào);
[0037]所述第二控制器,被配置以通過所述讀寫單元根據(jù)所述本地輸出入信號(hào)控制所述邏輯卷讀寫數(shù)據(jù)。
[0038]作為一種可實(shí)施例,所述讀寫單元包括映射子單元,讀出子單元和寫入子單元,其中:
[0039]所述第二控制器,被配置以通過所述映射子單元將所述第一控制器的第一內(nèi)存地址映射到所述第二控制器,并與所述