專利名稱:服務器網(wǎng)絡地址設定方法
技術領域:
本發(fā)明涉及服務器及其控制系統(tǒng)的網(wǎng)絡地址設定方法,尤其涉及一種多主板服務器的控制系統(tǒng)的網(wǎng)絡地址設定方法。
背景技術:
隨著現(xiàn)代服務器負荷承載能力的增加,包括多個主板的服務器運用越來越普遍。在現(xiàn)有的多主板服務器中,每個主板上都會安裝一個基板管理控制器(Baseboard Management Controller ;BMC) 0傳統(tǒng)的服務器控制系統(tǒng)則以每個主板上的基板管理控制器,分別管理控制其各自所在的主板,再由數(shù)個基板管理控制器來統(tǒng)籌控制每個主板之間的運作。從而,這些基板管理控制器可以為所述的多主機服務器控制系統(tǒng)分別提供所需的網(wǎng)絡地址,以保證多主機服務器的正常工作。然而,在服務器中的每個主板上均安裝一個基板管理控制器,龐大的硬件數(shù)量導致了多主板服務器的制造成本居高不下。
發(fā)明內容
有鑒于此,有必要提供一種可利用一個基板管理控制器為多主板服務器及其控制系統(tǒng)設定網(wǎng)絡地址的方法。本發(fā)明的一個實施例揭示了一種為具有多個主板的服務器及其控制系統(tǒng)設定網(wǎng)絡地址的方法。所述服務器可利用一個基板管理控制器(BaseboardManagement Controller ;BMC)來同時控制多個主板,并同時可通過主板上的網(wǎng)卡與外部交換信息。本發(fā)明的另一個實施例所揭示的服務器及其控制系統(tǒng)采用智能平臺管理接口 (Intelligent Platform Management hterface ;IPMI),且包括網(wǎng)卡和基板管理控制器 (Baseboard Management Controller ;BMC)。其中,基板管理控制器運行于Iinux操作系統(tǒng)下,并且通過一通訊協(xié)議與所述網(wǎng)卡交換數(shù)據(jù)。在此網(wǎng)絡地址設定方法中,首先提供欲設定的網(wǎng)絡地址,根據(jù)所述欲設定的網(wǎng)絡地址設定基板管理控制器對應于智能型平臺管理接口下的網(wǎng)絡地址,再根據(jù)欲設定的網(wǎng)絡地址設定基板管理控制器對應于所述Iinux操作系統(tǒng)下的網(wǎng)絡地址。接著,在所述Iirmx操作系統(tǒng)的驅動層建立/proc文件并提供文件寫(proc write)操作,并在Iinux操作系統(tǒng)的應用層中開啟/proc文件。然后,將欲設定的網(wǎng)絡地址寫入所述/proc文件中,關閉并保存所述/proc文件。當/proc文件被關閉時,/proc write 操作會根據(jù)/proc文件中的欲設定的網(wǎng)絡地址來設定所述網(wǎng)卡的網(wǎng)絡地址。本發(fā)明通過一個基板管理控制器為多個主板分別設定網(wǎng)絡地址,有效節(jié)省了基板管理控制器的數(shù)量,節(jié)省了服務器的制造成本及控制系統(tǒng)的運行成本。
圖1是本發(fā)明一實施例中服務器的功能方塊示意圖;以及圖2是本發(fā)明另一實施例中服務器控制系統(tǒng)的網(wǎng)絡地址設定方法流程圖。主要組件符號說明
100服務器110控制板
112網(wǎng)卡114基板管理控制器
120主板121網(wǎng)卡
123可編程芯片125南橋芯片
127中央處理器129電源模塊
130主板131網(wǎng)卡
133可編程芯片135南橋芯片
137中央處理器139電源模塊
140主板141網(wǎng)卡
143可編程芯片145南橋芯片
147中央處理器149電源模塊
150主板151網(wǎng)卡
153可編程芯片155南橋芯片
157中央處理器159電源模塊
160轉接模塊162主接口
164a轉接接口164t轉接接口
164c轉接接口164d 轉接接口
200網(wǎng)絡地址設定方法210地址設定步驟
220地址設定步驟230文件建立步驟
240寫入步驟250保存步驟
260判斷步驟270地址變更步驟
具體實施例方式以下將用附圖及詳細說明清楚闡釋本發(fā)明的實施方式,為明確說明起見,許多實務上的細節(jié)將在以下敘述中一并說明。然而,應了解到,這些實務上的細節(jié)不應用以限制本發(fā)明。也就是說,在本發(fā)明部分實施方式中,這些實務上的細節(jié)是非必要的。此外,為簡化附圖起見,一些已知慣用的結構與組件在附圖中將以簡單示意的方式繪示。請參照第1圖,所示為本發(fā)明一個實施例中服務器100的功能模塊示意圖。服務器100包括控制板110、主板120、130、140、150以及轉接模塊160,其中主板120 150通過轉接模塊160與控制板110電性連接。在服務器100中,主板120 150用于進行服務器100的數(shù)據(jù)運算,控制板110通過個轉接模塊160來管理主板120 150。每個主板包含有網(wǎng)卡、可編程芯片、南橋芯片、中央處理器和電源模塊。如主板 120包含有網(wǎng)卡121、可編程芯片123、南橋芯片125、中央處理器127和電源模塊129 ;主板 130包含有網(wǎng)卡131、可編程芯片133、南橋芯片135、中央處理器137和電源模塊139 ;主板 140包含有網(wǎng)卡141、可編程芯片143、南橋芯片145、中央處理器147和電源模塊149 ;主板 150包含有網(wǎng)卡151、可編程芯片153、南橋芯片155、中央處理器157和電源模塊159。在以下說明中,將以主板120為例來說明主板的運作。值得注意是,在本實施例中,每個主板的運作方式皆相同。在本發(fā)明的其他實施方式中,所述主板可以以不同的運行方式工作。在主板120中,網(wǎng)卡121用以與外部系統(tǒng)交換信息,如接收及發(fā)送數(shù)據(jù)。中央處理器127用以處理網(wǎng)卡121所接收的數(shù)據(jù),并將處理后的數(shù)據(jù)通過網(wǎng)卡121發(fā)送出去,以完成服務器100的主要工作。南橋芯片125為網(wǎng)卡121和中央處理器127的中介裝置,用以在網(wǎng)卡121和中央處理器127間傳輸數(shù)據(jù)。此外,南橋芯片125也是控制電源模塊129的開關。當南橋芯片125收到控制板 110所傳送的主板控制訊號時,南橋芯片125便會根據(jù)主板控制訊號的邏輯準位來控制電源模塊129,以開始或停止供電至中央處理器127。在本實施例中,電源模塊1 為電壓調節(jié)器(Voltage Regulator Down ;VRD),用以將電源供應器(未繪出)所提供的電壓轉換為中央處理器可用的電壓,并提供給中央處理器127。可編程芯片123電性連接至控制板110,以傳送主板120的工作信息(例如主板的溫度和中央處理器的電壓)至控制板110,同時接收控制板110所傳送的控制指令以控制主板120的工作。在本實施例中,可編程芯片123與控制板110間的傳輸協(xié)議為智能型平臺管理總線Qntelligent PlatformManagement Bus, IPMB),而可編程芯片為復雜可編程邏輯器件O^mplexProgrammable Logic Device ;CPLD)或可編程集成電路 (PrοgrammabIeIntegrated Circuit ;PIC)。由以上說明可知,在本實施例中,每個主板利用其包含的可編程芯片來與控制板 110交換數(shù)據(jù),從而,控制板110便可以通過每個主板上的可編程芯片來得知每個主板的信息,同時根據(jù)這些信息來管理主板。轉接模塊160包含有主接口 162和轉接接口 16乜、164b、16 和164d,其中主接口 162連接至控制板110,而轉接接口 164a、164b、16 禾口 164d分別連接至主板120、130、 140和150。在本實施例中,每個轉接接口對應至一個地址,當主板插入至轉接接口后,控制板110便可根據(jù)主板所插入的轉接接口來得知主板所對應的地址。例如,當主板120插入至轉接接口 16 時,可編程芯片123的兩根接腳的邏輯準位會被分別設置成1和0,如此控制板110便可知道主板120對應的地址為10。由于每個主板對應至一個地址,因此控制板 110可藉由地址來辨識這些主板,以避免數(shù)據(jù)交換時,數(shù)據(jù)被傳送到錯誤的主板上??刂瓢?10包含有網(wǎng)卡112和基板管理控制器(Baseboard ManagementController ;BMC) 114?;骞芾砜刂破?14電性連接至每個主板上的可編程芯片,以收集每個主板的工作信息,并根據(jù)這些工作信息來控制主板的工作。網(wǎng)卡112電性連接至基板管理控制器114,用以供使用者通過網(wǎng)絡查詢基板管理控制器114所收集的主板工作fn息。另外,基板管理控制器114也與網(wǎng)卡121、131、141和151電性連接,以通過內部整合電路anter-htegrated Circuit ;I2C)傳輸協(xié)議來與交換數(shù)據(jù)。因此,使用者不僅可通過網(wǎng)卡112來與基板管理控制器114溝通,亦可通過網(wǎng)卡121、131、141或151來與基板管理控制器114溝通。然而,當利用網(wǎng)卡121、131、141或151作為基板管理控制器114對外部的窗口時, 除了設置好基板管理控制器114的網(wǎng)絡地址,還必須設定好網(wǎng)卡121、131、141或151的網(wǎng)絡地址,使其與基板管理控制器114的網(wǎng)絡地址一致。在以下的說明中,將以網(wǎng)卡121為例子來說明本發(fā)明的另一實施例如何設定網(wǎng)卡121的網(wǎng)絡地址。請參照第2圖,所示服務器100的控制系統(tǒng)的網(wǎng)絡地址設定方法200,其中所述控制系統(tǒng)指基板管理控制器114和網(wǎng)卡121的集合,此控制系統(tǒng)可供使用者監(jiān)控服務器100的工作狀態(tài)。另外,基于成本的考慮,本實施例之基板管理控制器114采用Iinux操作系統(tǒng)來工作。在其他實施方式中,基板管理控制器114可以采用其他適用的操作系統(tǒng)工作。為舉例說明,在本實施方式中,以192. 168. 0. 01為欲設定的網(wǎng)絡地址。在地址設定方法200中,首先進行步驟210,以根據(jù)欲設定的網(wǎng)絡地址來設定基板管理控制器(BMC) 對應于智能型平臺管理接口(IMPI)下的網(wǎng)絡地址。由于基板管理控制器114對應于智能型平臺管理接口下的網(wǎng)絡地址可利用impitool來進行設定,故步驟210的詳細做法不在此贅述。在步驟220中,根據(jù)欲設定的網(wǎng)絡地址來設定基板管理控制器114對應于Iinux 操作系統(tǒng)下的網(wǎng)絡地址。然后,在Iinux操作系統(tǒng)中建立一個文件。在步驟230中,在所述Iinux操作系統(tǒng)中的驅動層建立一個文件,例如/proc文件,并提供一個文件寫操作,例如/proc write操作。在步驟MO中,以欲設定的網(wǎng)絡地址及與網(wǎng)卡121相應的辨識碼寫入建立于所述 Iinux操作系統(tǒng)中的驅動層的文件中。在本實施例中,由于基板管理控制器114對應多張網(wǎng)卡121、131、141、151,因此在所建立的文件中,必須填入網(wǎng)卡121所對應的辨識碼,例如 ethO,如此才能將地址192. 168. 0. 01設定至網(wǎng)卡121上。然后,在步驟250,關閉并保存所述文件。在步驟260中,判斷網(wǎng)卡121目前現(xiàn)有的網(wǎng)絡地址是否與欲設定的網(wǎng)絡地址相同。當網(wǎng)卡121目前現(xiàn)有的網(wǎng)絡地址與欲設定的網(wǎng)絡地址相同時,則不進行地址變更。當網(wǎng)卡121目前現(xiàn)有的網(wǎng)絡地址與欲設定的網(wǎng)絡地址不同時,則在步驟270中,利用文件寫操作將文件中的欲設定的網(wǎng)絡地址拷貝到驅動層中,并將網(wǎng)卡121目前現(xiàn)有的網(wǎng)絡地址更新為欲設定的網(wǎng)絡地址,即192. 168. 0. 01。由以上的說明可以了解,本發(fā)明的一個實施例揭示了一種多主板服務器,其中多個主板共享一個基板管理控制器。此外,本發(fā)明的另一實施例提供了一種為所述多主板服務器的控制系統(tǒng)設定網(wǎng)絡地址的方法,此網(wǎng)絡地址設定方法可使所述服務器通過主板上的網(wǎng)卡來對外進行數(shù)據(jù)交換。上文中,參照附圖描述了本發(fā)明的具體實施方式
。但是,本領域中的普通技術人員能夠理解,在不偏離本發(fā)明的精神和范圍的情況下,還可以對本發(fā)明的具體實施方式
作各種變更和替換。這些變更和替換都落在本發(fā)明權利要求書所限定的范圍內。
權利要求
1.一種網(wǎng)絡地址設定方法,應用于服務器及其控制系統(tǒng)中,所述控制系統(tǒng)包括一網(wǎng)卡和一基板管理控制器,所述基板管理控制器通過一串行接口與所述網(wǎng)卡交換數(shù)據(jù),其特征在于,所述網(wǎng)絡地址設定方法包括控制所述基板管理控制器運行一 Iinux操作系統(tǒng); 向所述網(wǎng)卡提供一欲設定的網(wǎng)絡地址;根據(jù)所述欲設定的網(wǎng)絡地址設定所述基板管理控制器對應于一智能平臺管理接口下的網(wǎng)絡地址;根據(jù)所述欲設定的網(wǎng)絡地址設定所述基板管理控制器對應于Iinux操作系統(tǒng)下的網(wǎng)絡地址;在Iinux操作系統(tǒng)的驅動層建立一文件并提供一文件寫操作; 在Iinux操作系統(tǒng)的應用層中開啟所述文件;進行所述文件寫操作,以將所述欲設定的網(wǎng)絡地址寫入所述文件中;以及關閉并保存所述文件;其中,當所述文件被關閉時,所述文件寫操作會根據(jù)所述文件中的欲設定的網(wǎng)絡地址來設定所述網(wǎng)卡的網(wǎng)絡地址。
2.如權利要求1所述的網(wǎng)絡地址設定方法,其特征在于,所述控制系統(tǒng)還包括 比較所述欲設定的網(wǎng)絡地址與所述網(wǎng)卡的一個現(xiàn)有網(wǎng)絡地址是否相同;以及當所述欲設定的網(wǎng)絡地址與所述網(wǎng)卡的一個現(xiàn)有網(wǎng)絡地址相同時,所述文件寫操作不設定所述網(wǎng)卡的網(wǎng)絡地址。
3.如權利要求1所述的網(wǎng)絡地址設定方法,其特征在于,所述控制系統(tǒng)還包括另一網(wǎng)卡,所述寫入步驟還包含將所述網(wǎng)絡的一識別碼寫入所述文件中,以使所述文件寫操作根據(jù)所述識別碼和所述欲設定的網(wǎng)絡地址來設定所述另一網(wǎng)卡的網(wǎng)絡地址。
4.如權利要求1所述的網(wǎng)絡地址設定方法,其特征在于,所述串行接口為內部集成電路(Inter-Integrated Circuit ;I2C)接口。
5.如權利要求1所述的網(wǎng)絡地址設定方法,其特征在于,所述服務器包括至少兩個主板,所述網(wǎng)卡位于所述主板其中之一上,所述另一網(wǎng)卡位于所述另一主板上。
6.如權利要求5所述的網(wǎng)絡地址設定方法,其特征在于,所述至少兩個主板中,每個主板包括至少一可編程芯片,電性連接至所述基板管理控制器,以接收所述基板管理控制器所傳送的指令。
7.如權利要求6所述的網(wǎng)絡地址設定方法,其特征在于,所述可編程芯片為復雜可編程邏輯器件(Complex Programmable Logic Device ;CPLD)或可編程集成電路 (Programmable Integrated Circuit ;PIC)。
8.如權利要求6所述的網(wǎng)絡地址設定方法,其特征在于,所述基板管理控制器通過智能平臺管理總線intelligent Platform Management Bus, IPMB)傳送指令給所述可編程-H-* I I心片。
全文摘要
本發(fā)明涉及一種服務器的網(wǎng)絡地址設定方法。所述服務器包含網(wǎng)卡和基板管理控制器(Baseboard Management Controller;BMC),所述基板管理控制器通過串行接口與網(wǎng)卡交換數(shù)據(jù)。在所述網(wǎng)絡地址設定方法中,控制基板管理控制器運行于linux操作系統(tǒng)下,并提供欲設定的網(wǎng)絡地址,根據(jù)欲設定的網(wǎng)絡地址來設定BMC對應于智能平臺管理接口下的網(wǎng)絡地址。然后根據(jù)欲設定的網(wǎng)絡地址來設定BMC對應于linux操作系統(tǒng)下的網(wǎng)絡地址。在所述linux操作系統(tǒng)的驅動層建立文件并提供文件寫操作,在linux操作系統(tǒng)的應用層中開啟所述文件,將欲設定的網(wǎng)絡地址寫入所述文件中。然后關閉并保存此文件。其中,當所述文件關閉時,文件寫操作會根據(jù)/proc文件中的網(wǎng)絡地址來設定網(wǎng)卡的網(wǎng)絡地址。
文檔編號H04L12/24GK102195800SQ20101013420
公開日2011年9月21日 申請日期2010年3月12日 優(yōu)先權日2010年3月12日
發(fā)明者余璘, 陳志偉 申請人:英業(yè)達股份有限公司