專利名稱:具有分級正交交換結(jié)構(gòu)的多域處理系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)字處理,特別涉及多重處理環(huán)境中的同級間通信。
背景技術(shù):
在一個典型的處理區(qū)域中,主處理機通過某種形式的互聯(lián)與一些終端結(jié)點進行通信。過去比較典型的是總線互聯(lián)(例如外圍部件互聯(lián)(PCI)總線)。最近,在主機和終端結(jié)點的處理區(qū)域中出現(xiàn)了交換結(jié)構(gòu)的互聯(lián),可應用的交換結(jié)構(gòu)技術(shù)的例子包括3GIO,Rapid I/OTM和HyperTransportTM。在一些應用中(例如網(wǎng)絡應用),對跨越一些處理單元和/或冗余系統(tǒng)進行動態(tài)分布處理的期望,產(chǎn)生了對多域處理的要求??梢岳斫獾氖?,多域系統(tǒng)需要一些區(qū)域間的通信機制。在多域系統(tǒng)中區(qū)域間通信的現(xiàn)有技術(shù)(例如非透明橋,多重結(jié)構(gòu),平面地址表等)從實現(xiàn)和/或性能角度來說都不夠。所以,需要更好的方法和結(jié)構(gòu)來進行多域處理系統(tǒng)中處理區(qū)域之間的通信。
圖1所示是利用交換結(jié)構(gòu)來進行獨立處理節(jié)點之間通信的處理區(qū)域的框圖;圖2所示是用于圖1所示處理區(qū)域中的數(shù)據(jù)包結(jié)構(gòu);圖3所示是用于圖1所示處理區(qū)域中的本地交換機的一對查找表;圖4所示是根據(jù)本發(fā)明一實施例的多域處理系統(tǒng)的框圖;圖5所示是用于圖4所示處理區(qū)域中的數(shù)據(jù)包結(jié)構(gòu);圖6所示是用于圖4所示處理區(qū)域中的交換機的一系列本地和遠程查找表;以及圖7所示是根據(jù)本發(fā)明一實施例的具有三個分級正交平面的多維交換結(jié)構(gòu)的多域處理系統(tǒng)的框圖。
具體描述以下的具體描述參考相應的附圖進行的,并且通過圖示說明了本發(fā)明的具體實施例,下列實施例都描述得充分詳細,使本領(lǐng)域技術(shù)人員能夠?qū)嵤?。應當理解的是本發(fā)明的多個實施例盡管不同,但不互相限制。例如,一個特殊的部件,結(jié)構(gòu),或者與一實施例相關(guān)聯(lián)的特征也可在不脫離于本發(fā)明的思想和范圍的情況下,補充到另一實施例中;另外應當理解的是在每一實施例中的獨立部件的位置關(guān)系可以在不脫離于本發(fā)明的思想和范圍的情況下進行改變。因此,以下具體描述的內(nèi)容不作為本發(fā)明的限定,本發(fā)明的范圍由權(quán)利要求定義,可在權(quán)利要求聲明的相當?shù)姆秶鷥?nèi)作出適當?shù)慕忉?。所有附圖中的標記指示的是相同或相似的功能性部件。
本發(fā)明涉及一種在多域處理環(huán)境中進行處理區(qū)域之間通信的方法和結(jié)構(gòu)。在兩個或以上分級正交平面內(nèi)為數(shù)據(jù)報進行路由選擇,來進行多域系統(tǒng)中結(jié)點之間的通信。第一平面(例如本地平面)提供單個區(qū)域中處理結(jié)點之間的通信;第二平面(例如遠程平面)提供不同區(qū)域中處理結(jié)點之間的通信;而遠程交換機用來在系統(tǒng)中形成一個多維交換結(jié)構(gòu)。與利用平面地址表的系統(tǒng)相比(例如利用非透明橋,多重結(jié)構(gòu)等),遠程交換機幾乎很少甚至沒有給區(qū)域中的本地交換機造成運行的負擔。因此,交換結(jié)構(gòu)的多維特性提高了總體的運行能力。利用本分發(fā)明原理的多維交換結(jié)構(gòu)有可能具有超高的可擴展性。另外,本發(fā)明的原理也可應用于利用不同操作系統(tǒng)和/或不用交換結(jié)構(gòu)技術(shù)(例如在一個域中用快速輸入/輸出即Rapid I/O而在另一個域中用3GIO)的處理區(qū)域之間的通信。對本領(lǐng)域技術(shù)人員來說很明顯,本發(fā)明的原理可以廣泛應用于需要在多重處理區(qū)域之間通信的應用領(lǐng)域。
圖1所示是利用交換結(jié)構(gòu)來進行獨立處理節(jié)點之間通信的處理區(qū)域10的框圖。如圖所示,處理區(qū)域10由下列組成主機(N1)12,一定數(shù)量的終端結(jié)點(N2-N6)14,以及交換結(jié)構(gòu)16。交換結(jié)構(gòu)16包括一對本地交換機(S1,S2)18和一定數(shù)量的點對點傳輸段20。應當理解的是,終端結(jié)點14的數(shù)量,本地交換機18的數(shù)量,以及交換結(jié)構(gòu)16的結(jié)構(gòu)可隨情況不同而變化。交換結(jié)構(gòu)16提供主機12和獨立終端結(jié)點14之間的通信;另外,交換結(jié)構(gòu)16還可用于提供獨立終端結(jié)點14之間的直接通信,而不需要經(jīng)過主機12的中間處理。為了提供軟件透明度,用于區(qū)域10中的交換結(jié)構(gòu)16可效仿傳統(tǒng)的基于總線方式(例如PCI)的特征,這就可允許傳統(tǒng)的總線軟件經(jīng)過很小甚至可不經(jīng)修改就能應用于本系統(tǒng)中。
主機12可以由很多不同類型的處理器構(gòu)成,例如,通常的微處理器,數(shù)字信號處理器(DSP),精簡指令系統(tǒng)計算機(RISC),復雜指令系統(tǒng)計算機(CISK),程序化的門陣列(FPGA),和/或其它具有多個處理器的裝置。在至少一種實施方式中,主機12包括一個按其自身的操作系統(tǒng)操作的強耦合的聯(lián)合處理裝置。終端結(jié)點14是在區(qū)域10中執(zhí)行特定處理任務的處理部件。每個結(jié)點14包括例如,一個插入于相應的底板結(jié)構(gòu)的單獨的處理板或卡,當然其它的配置也有可能。特定處理區(qū)域中終端結(jié)點14的種類隨所執(zhí)行的特定應用而變化。有可能的結(jié)點類型包括例如,網(wǎng)絡接口卡(NICs),存儲接口卡,以及其它智能和/或非智能的輸入/輸出(I/O)裝置。
處理區(qū)域10的交換結(jié)構(gòu)16中的通信是基于數(shù)據(jù)包的,即利用獨立的數(shù)據(jù)包在處理結(jié)點之間傳輸信息,并且對每個數(shù)據(jù)包識別目標結(jié)點。在一種實施方式中,對區(qū)域10中的每個處理結(jié)點指定一個唯一的識別號碼,然后相應結(jié)點的識別號碼包含在區(qū)中的源結(jié)點所傳送的每個數(shù)據(jù)包中。圖2所示是用于圖1所示的處理區(qū)域10中的數(shù)據(jù)包的可能的一種結(jié)構(gòu)。如圖所示,數(shù)據(jù)包22包括包頭字段24傳送包頭信息,本地ID(LID)字段26傳送一個LID,包尾字段28傳送包尾信息。包頭和包尾信息可在其它數(shù)據(jù)中分辨出數(shù)據(jù)包的起始和終止點,而LID用以確認區(qū)域10中數(shù)據(jù)包22的目標結(jié)點。數(shù)據(jù)包22也可包含其它字段,例如有效負載字段用以傳送與數(shù)據(jù)包相關(guān)聯(lián)的用戶數(shù)據(jù)。
每個本地交換機18包括多個輸入/輸出端口(圖1中的0-3)用以輸入和輸出數(shù)據(jù)包。一個本地交換機18在其端口之一接收數(shù)據(jù)包,并按照數(shù)據(jù)包中的目標信息,將其路由發(fā)送至另一端口(即用于發(fā)送)。查找表(LUT)或其它路由信息也可用于本地交換機中,從而便于完成路由選擇功能。特定的本地交換機18中的LUT列出例如區(qū)域10中的所有處理結(jié)點12、14,以及表示出交換機18中每個列出結(jié)點的適當?shù)亩丝?。當本地交換機18接收了一個數(shù)據(jù)包,交換機18確定該數(shù)據(jù)包的目標結(jié)點,并查詢LUT來確定數(shù)據(jù)包的適當?shù)妮敵龆丝?,該?shù)據(jù)包就從所確定的端口路由發(fā)送。一個數(shù)據(jù)報可能在達到目標結(jié)點前,要路由通過多個本地交換機18。圖3所示是可用于區(qū)域10中相應的本地交換機中(S1,S2)的一對LUT30,32。
在一種實施方式中,一個實際存儲映射表用于描述區(qū)域10中的資源,這可能是在例如傳統(tǒng)PCI系統(tǒng)中出現(xiàn)的情況。在這種系統(tǒng)中,路由選擇可基于存儲映射表中的實際存儲地址來執(zhí)行(即代替基于結(jié)點ID的方式)。內(nèi)容尋址存儲器(CAM)可代替路由查找表來執(zhí)行上述路由發(fā)送。即CAM可從拓撲結(jié)構(gòu)上確定從實際存儲區(qū)到特定結(jié)點的路由。其它的路由技術(shù)也可用于本地交換機18中。
圖4所示是根據(jù)本發(fā)明一實施例的多域處理系統(tǒng)40的框圖。如圖所示,多域處理系統(tǒng)40包括四個獨立處理區(qū)域(D1,D2,D3,D4),每個處理區(qū)域包括一個相應的主機42和相應的終端結(jié)點44。另外,多域處理系統(tǒng)40包括在兩個正交路由平面(即一個本地平面和一個遠程平面)進行系統(tǒng)處理結(jié)點42,44之間的數(shù)據(jù)包路由選擇操作的二維交換結(jié)構(gòu)46。交換結(jié)構(gòu)46可提供處理系統(tǒng)40中區(qū)域內(nèi)和區(qū)域間的同級之間的通信,將在下面進行更詳細的描述。二維交換結(jié)構(gòu)46包括一定數(shù)量的本地交換機48執(zhí)行相應處理區(qū)域的本地路由選擇發(fā)送,以及至少一個遠程交換機50執(zhí)行區(qū)域之間的遠程路由選擇發(fā)送。在本發(fā)明的至少一個實施例中,系統(tǒng)的本地和遠程交換機都集成在一個共同的半導晶片上實現(xiàn),當然一些等同配置也可以。應當理解的是,區(qū)域的數(shù)量以及交換結(jié)構(gòu)46中交換機48,50的數(shù)量將根據(jù)實際情況而改變。
在圖4所示的多域處理系統(tǒng)40中,每個數(shù)據(jù)包包括一個包的目標域的指示以及目標域中的目標結(jié)點的指示。圖5所示是用于多域處理系統(tǒng)40中提供這些指示的數(shù)據(jù)包的可能結(jié)構(gòu)。如圖所示,數(shù)據(jù)包54包括如前所述類似的包頭字段56,LID字段58,包尾字段64。另外,數(shù)據(jù)包54還包括遠程ID(GID)字段60和本地/遠程標記字段62。數(shù)據(jù)包54的GID字段60包括一個表示數(shù)據(jù)包54的目標域的唯一的GID號碼;本地/遠程標記字段62包括數(shù)據(jù)包54是被本地傳送(即在本地平面內(nèi))還是遠程傳送(即在遠程平面內(nèi))的標記,上述標記可作為一個已有字段中的特定碼,來代替一個單獨字段62來提供本地/遠程標記;LID字段58包括一個LID號碼用以確定相關(guān)目標域中的目標結(jié)點。應當理解的是多種等同的在獨立數(shù)據(jù)包中提供目標關(guān)聯(lián)信息的方法也是可用的。
本地交換機48處理接受到的數(shù)據(jù)包的方式隨該數(shù)據(jù)包是需要區(qū)域內(nèi)路由選擇還是區(qū)域間路由選擇而變化。在至少一個實施例中,每個本地交換機48同時包括本地路由信息(例如本地LUT)和遠程路由信息(例如遠程LUT)。本地交換機48也包括具有如下功能的裝置(例如一個選擇單元)可根據(jù)包含在數(shù)據(jù)包中的信息,選擇使用本地路由信息還是遠程路由信息對接收到的數(shù)據(jù)包進行路由選擇。當本地交換機48從本地處理結(jié)點42,44接收到一個數(shù)據(jù)包,本地交換機48首先讀出包內(nèi)的信息(例如本地/遠程標記等),來確定是執(zhí)行本地或遠程路由選擇。如果信息表示是進行本地路由選擇,本地交換機讀出數(shù)據(jù)包中的目標結(jié)點信息(例如LID號)然后查詢本地路由信息,為數(shù)據(jù)包確定一個適當?shù)妮敵龆丝?,然后?jù)此來路由發(fā)送數(shù)據(jù)包。如果隨后數(shù)據(jù)包到達另外一個本地交換機48,即將重復上述過程。于是數(shù)據(jù)包即可最終被傳送到根據(jù)包內(nèi)信息所確定的本地目標結(jié)點。
如果包內(nèi)信息表示將執(zhí)行遠程路由選擇,本地交換機48查詢遠程路由信息來確定數(shù)據(jù)包的適當?shù)妮敵龆丝?,然后?jù)此來為數(shù)據(jù)包選擇路由。這個過程不斷重復,直到數(shù)據(jù)包被發(fā)送至遠程交換機50。遠程交換機50讀出包內(nèi)包含的目標域信息(例如GID號碼),查詢存儲在交換機50中的遠程路由信息(例如遠程LCT)來確定域目標域相應的輸出端口,隨即數(shù)據(jù)包通過所確定的端口路由發(fā)送。數(shù)據(jù)包在被目標域中的本地交換機48接收之前,可能會被依次發(fā)送給一個或多個遠程交換機50。
與在起始域中相同,目標域中的本地交換機48讀出接收到的數(shù)據(jù)包中的信息,確定路由選擇是在本地平面還是遠程平面執(zhí)行。在使用本地/遠程標記的系統(tǒng)中,當數(shù)據(jù)包已經(jīng)在區(qū)域間傳送之后,數(shù)據(jù)包中的標記可由“遠程”改為“本地”。上述操作最好是在接收數(shù)據(jù)包的第一個遠程交換機50執(zhí)行(例如在交換機的觸發(fā)單元中)。在本地交換機48確定將對數(shù)據(jù)包執(zhí)行本地路由選擇之后,它讀出數(shù)據(jù)包的目標結(jié)點信息,然后查詢它的本地路由信息來確定一個合適的輸出端口,然后據(jù)此來路由發(fā)送數(shù)據(jù)包。數(shù)據(jù)包在到達目標結(jié)點之前有可能路由通過一個或多個本地交換機48。
應當理解的是除了本地/遠程標記之外的信息也可用于確定數(shù)據(jù)包是在本地平面還是遠程平面?zhèn)魉?。例如在一個實施方式中,本地交換機48讀出各個接收數(shù)據(jù)包的GID字段,比較其中的GID字段從而獲得相應區(qū)域的GID(存儲于本地交換機48的存儲器中)。如果GID都相同,本地交換機48確定在本地平面執(zhí)行路由選擇,并且查詢它的本地路由信息來路由發(fā)送數(shù)據(jù)包;如果GID不同,本地交換機48確定在遠程平面執(zhí)行路由,并且查詢它的遠程路由信息來路由發(fā)送數(shù)據(jù)包。這種實施方式就無需在域間傳送時改變本地/遠程標記。其它一些技術(shù)也可應用與此。
圖6所示是一系列用于圖4所示的二維交換結(jié)構(gòu)46中的交換機48,50的本地和遠程LUT。第一組LUT66對應于區(qū)域D1中的本地交換機LS1和LS2,第二組LUT70對應于區(qū)域D2中的本地交換機LS3和LS4,第三組LUT72對應于區(qū)域D3中的本地交換機LS5和LS6,第四組LUT72對應于區(qū)域D4中的本地交換機LS7和LS8。如圖所示,每個區(qū)域中的本地交換機48同時包括一個本地LUT和一個遠程LUT。這些LUT被存儲于例如本地交換機48所空出的相應的存儲空間中。遠程LUT74也可用于圖4所示的遠程交換機(GS1)50中。在至少一種實施方式中,二維交換結(jié)構(gòu)46中本地交換機的路由是利用根據(jù)存儲地址的路由選擇技術(shù)來執(zhí)行的。
如前所述,圖1所示的交換結(jié)構(gòu)和區(qū)域10之間的互聯(lián),可模仿傳統(tǒng)互聯(lián)方法的特征(例如PCI總線)來保持軟件透明度。當實現(xiàn)根據(jù)本發(fā)明的多維交換結(jié)構(gòu)時(例如圖4所示的交換結(jié)構(gòu)46),有可能保持多域系統(tǒng)中每個單獨區(qū)域的軟件透明度,因此可允許再利用已有的互聯(lián)基礎(chǔ)構(gòu)造(例如PCI基礎(chǔ)構(gòu)造)。這種實施方式允許向這種擴充技術(shù)方案(例如多域處理方案)的逐漸過渡,而不需要完全丟棄已有的基礎(chǔ)結(jié)構(gòu)。
根據(jù)本發(fā)明的一個方面,具有多級交換結(jié)構(gòu)的多域處理系統(tǒng)的計數(shù)(例如圖4所示的多域處理系統(tǒng)40)是通過多階段處理的方式進行的。在初級階段(即本地計數(shù)階段),多域系統(tǒng)中的每個區(qū)域被單獨計數(shù);在接下來的階段(即遠程計數(shù)階段),計數(shù)是基于遠程進行的。計數(shù)是通過應用一種發(fā)現(xiàn)模式,給系統(tǒng)中的不同結(jié)點傳送確認數(shù)據(jù)包來進行的。在本地計數(shù)階段,每個區(qū)域中的主機通過傳送確認數(shù)據(jù)包來“發(fā)現(xiàn)”域中的不同終端結(jié)點,即主機給每個可能的終端結(jié)點位置發(fā)送確認數(shù)據(jù)包,如果終端結(jié)點存在于該位置,終端結(jié)點將回傳信息給主機,指示身份和/或終端結(jié)點的性能;然后主機收集來自每個本地終端結(jié)點的信息,收集的信息用于產(chǎn)生域中每個本地交換機的本地路由信息(例如本地LUT)。在本地交換機被本地路由信息初始化以后,便能開始在每個域中進行同級間的通信(例如加載/存儲)。
用于本地計數(shù)階段的確認數(shù)據(jù)包包括指示它們是本地數(shù)據(jù)包的標志(例如,當使用本地/遠程標記時即指示為本地路由選擇)。在至少一種實施方式中,多維交換結(jié)構(gòu)中的一些或者全部遠程交換機50包括過濾單元來阻止本地數(shù)據(jù)包。在本地計數(shù)階段,這可防止來自其它區(qū)域中確認數(shù)據(jù)包產(chǎn)生的干擾。如果使用本地/遠程標記,過濾單元只需簡單讀出每個輸入數(shù)據(jù)包的標記,并且通過那些指示為本地的數(shù)據(jù)包。在另一種可能的技術(shù)中,域中的交換機可通過以某種形式標記的根式端口互聯(lián)(例如管腳接片)。在這種配置中,系統(tǒng)中的遠程交換機可根據(jù)根式端口的不存在來識別。其它一些可防止本地計數(shù)的區(qū)域間干擾的計數(shù)亦可用于此。
本地計數(shù)結(jié)束后,便開始遠程計數(shù)。為執(zhí)行遠程計數(shù),系統(tǒng)中的主機之一被指定為系統(tǒng)管理器。系統(tǒng)管理器可通過例如如下方式選擇,在遠程計數(shù)階段之前或期間用軟件實現(xiàn)的仲裁協(xié)議。在遠程計數(shù)期間,發(fā)現(xiàn)步驟跨越區(qū)域而執(zhí)行。在一種實施方式中,系統(tǒng)管理器通過在多域系統(tǒng)中傳送確認數(shù)據(jù)包來發(fā)現(xiàn)系統(tǒng)中其它的域(注意其它通信機制,例如簡單報文協(xié)議也可替代來實現(xiàn)此目的)。每個用于遠程計數(shù)階段的確認數(shù)據(jù)包包括一些標志,指示它們是遠程數(shù)據(jù)包(例如,當使用本地/遠程標記即指示為遠程路由)。其它域中的主機接收遠程確認數(shù)據(jù)包,并回傳與相應域中可用處理結(jié)點相關(guān)的信息(即在前本地計數(shù)階段集中的信息)給系統(tǒng)管理器作為應答,然后系統(tǒng)管理器收集來自每個所發(fā)現(xiàn)域的信息。收集的信息隨后用來為系統(tǒng)中的本地和遠程交換機產(chǎn)生遠程路由信息(例如遠程LUT)。指示系統(tǒng)中其它處理結(jié)點的可用性、性能和/或位置等信息也可傳送給每個域中的獨立終端結(jié)點,以備其以后使用。在所有交換機被遠程路由信息適當初始化后,便能開始進行系統(tǒng)內(nèi)區(qū)域間的同級通信(例如加載/存儲,信息傳送等)。
在前面所述的本地計數(shù)階段中,可以在單獨域中運用傳統(tǒng)計數(shù)技術(shù)。如前所述,可允許運用已有軟件來進行本地計數(shù)。在一種可能實施方式中,例如PCI兼容計數(shù)技術(shù)可用于執(zhí)行本地計數(shù)。運用這些技術(shù),特定域中交換機的每個端口被看作一個位于其專有的總線段的唯一PCI總線透明橋裝置。發(fā)現(xiàn)步驟開始時,每個所發(fā)現(xiàn)的裝置與一個相應區(qū)域的存儲映射表相結(jié)合。在步驟結(jié)束時,存儲映射表的任務便建立完成,并且LUT(或CAM)都為適當?shù)谋镜芈酚蛇x擇進行了初始化。由于總線段數(shù)是由PCI所支持的,運用本技術(shù)的區(qū)域拓撲結(jié)構(gòu)將被限制在最多為256個結(jié)點。
根據(jù)本發(fā)明的至少一個實施例中,提供一個具有多維交換結(jié)構(gòu)和三個或以上的正交分級平面的多維處理系統(tǒng)。這種系統(tǒng)可以用來提供例如兩個或以上的多域子處理系統(tǒng)中的處理結(jié)點之間的通信。圖7所示是所述實施例的框圖。如圖,所示是一定數(shù)量的類似于圖4所示系統(tǒng)40的二維多域處理子系統(tǒng)80,82,84,86,即每個子系統(tǒng)80,82,84,86由一定數(shù)量的處理區(qū)域88構(gòu)成,每個處理區(qū)域包括一個主機和一個或以上的終端結(jié)點(未示出)。每個子系統(tǒng)80,82,84,86中的處理區(qū)域88可以通過具有本地交換機(認為存在于圖7所示的域88中)和至少一個遠程交換機90的交換結(jié)構(gòu)互相通信。除此之外,一個或以上通用交換機92可用來支持不同處理子系統(tǒng)80,82,84,86之間的通信。這為整個系統(tǒng)的交換結(jié)構(gòu)增加了一個第三正交平面。應當理解的是,子系統(tǒng)的數(shù)量,每個子系統(tǒng)中區(qū)域的數(shù)量以及交換結(jié)構(gòu)中本地、遠程和通用交換機的數(shù)量和結(jié)構(gòu)隨情況不同而變化。
為支持圖7所示的拓撲結(jié)構(gòu),下面將補充與上述技術(shù)相近的技術(shù)。例如,系統(tǒng)中的每個數(shù)據(jù)包包含目標子系統(tǒng)的指示標記(例如一個通用ID(UID)),目標子系統(tǒng)中目標域的指示標記(例如GID),以及目標子系統(tǒng)的目標域中目標結(jié)點的指示標記(例如LID)。一個或多個標記也可用于數(shù)據(jù)包中表示數(shù)據(jù)包將于哪個平面進行路由選擇(即本地,遠程,通用)。通用LUT可以添加到系統(tǒng)中的每個遠程交換機90來支持通用平面的路由選擇,通用LUT也可添加到系統(tǒng)中的每個本地交換機。當數(shù)據(jù)包被遠程交換機90接收,交換機90首先確定接收到的數(shù)據(jù)包將在哪個平面路由選擇(例如讀取標記等),然后在與確定平面關(guān)聯(lián)的交換機中查詢路由信息(例如LUT)。通用路由交換機92讀出包含在每個接收的數(shù)據(jù)包中的目標子系統(tǒng)信息(例如UID),并且基于其中的通用路由信息(例如通用LUT)路由發(fā)送數(shù)據(jù)包。通用交換機92也可更改數(shù)據(jù)包中的標記(或其余信息)來反映數(shù)據(jù)包的路由平面即將發(fā)生的改變。另外的正交路由平面(例如第四平面,第五平面等)也可以類似的方式添加在處理系統(tǒng)上。
本發(fā)明的原理可用于一系列不同的應用領(lǐng)域中。一種可能的應用就是例如,可用于多處理環(huán)境中來提供一個弱耦合處理區(qū)域的系統(tǒng),該處理區(qū)域具有一個強耦合分級聯(lián)合處理裝置。在此,“強耦合”是指共享一個存儲空間的處理器,而“弱耦合”是指不共享一個存儲空間。在另一種可能的應用中,本發(fā)明的原理用來提供,例如嵌入應用于共同底盤上的冗余系統(tǒng)(例如多個聯(lián)合處理裝置)。在另一種應用中,本發(fā)明的原理用來提供位于一個cPCI底板上的一種分布式的,弱耦合的多重處理系統(tǒng)。在另一種應用中,本發(fā)明的原理應用于一個服務器環(huán)境(例如一個I/O處理器和/或智能I/O設備)來提供多重服務處理器之間的通信。應當理解的是,也可以有很多其它的應用。
盡管本發(fā)明描述了一些實施例,應當理解的是在不脫離本領(lǐng)域技術(shù)人員所理解的本發(fā)明的精神和范圍的情況下,可以對其采取修改和變更。這樣的修改和變更被認為落在本發(fā)明以及權(quán)利要求所述的范圍之內(nèi)。
權(quán)利要求
1.多域處理系統(tǒng),由下列構(gòu)成包括第一主處理機和至少第一終端結(jié)點的第一處理區(qū)域;包括第二主處理機和至少第二終端結(jié)點的第二處理區(qū)域;以及與所述的第一處理區(qū)域和所述的第二處理區(qū)域耦合的多維交換結(jié)構(gòu),提供處理系統(tǒng)中多個正交平面內(nèi)同級之間數(shù)據(jù)包的通信,第一平面提供區(qū)域內(nèi)數(shù)據(jù)包的通信,第二平面提供區(qū)域間數(shù)據(jù)包的通信。
2.如權(quán)利要求1所述的多域處理系統(tǒng),其中所述的第一主處理機包括一個強耦合的聯(lián)合處理裝置。
3.如權(quán)利要求2所述的多域處理系統(tǒng),其中所述的第一和第二處理區(qū)域是弱耦合的。
4.如權(quán)利要求1所述的多域處理系統(tǒng),其中所述的多維交換結(jié)構(gòu)包括至少一個與所述第一處理區(qū)域結(jié)合的本地交換機,至少一個與所述第二處理區(qū)域結(jié)合的本地交換機,以及至少一個遠程交換機提供所述第一和第二處理區(qū)域之間數(shù)據(jù)包的通信。
5.如權(quán)利要求4所述的多域處理系統(tǒng),其中與所述第一處理區(qū)域結(jié)合的所述至少一個本地交換機包括本地數(shù)據(jù)包路由信息和遠程數(shù)據(jù)包路由信息。
6.如權(quán)利要求5所述的多域處理系統(tǒng),其中所述本地數(shù)據(jù)包路由信息包括一個本地查找表,所述遠程數(shù)據(jù)包路由信息包括一個遠程查找表。
7.如權(quán)利要求5所述的多域處理系統(tǒng),其中所述本地數(shù)據(jù)包路由信息包括存儲映射表,所述遠程數(shù)據(jù)包路由信息包括遠程查找表。
8.如權(quán)利要求5所述的多域處理系統(tǒng),其中與所述第一處理區(qū)域結(jié)合的所述至少一個本地交換機,基于所接收數(shù)據(jù)包中的信息,選擇是使用本地數(shù)據(jù)包路由信息還是遠程數(shù)據(jù)包路由信息來為所接收數(shù)據(jù)包選擇路由。
9.如權(quán)利要求8所述的多域處理系統(tǒng),其中所述所接收數(shù)據(jù)包中的信息包括一個本地/遠程標記。
10.如權(quán)利要求8所述的多域處理系統(tǒng),其中所述所接收數(shù)據(jù)包中的信息包括數(shù)據(jù)包的目標信息。
11.如權(quán)利要求4所述的多域處理系統(tǒng),其中所述至少一個遠程交換機包括遠程數(shù)據(jù)包路由信息,用來基于所接收數(shù)據(jù)包中的目標域信息為所接收的數(shù)據(jù)包選擇路由。
12.如權(quán)利要求1所述的多域處理系統(tǒng),其中所述第一主處理機包括一個數(shù)據(jù)包生成器,生成的數(shù)據(jù)包用于發(fā)送到目標結(jié)點,其中包含識別目標結(jié)點所在域的信息,
13.如權(quán)利要求1所述的多域處理系統(tǒng),其中所述第一主處理機包括一個數(shù)據(jù)包生成器,生成的數(shù)據(jù)包用于發(fā)送到目標結(jié)點,其中包含識別數(shù)據(jù)包將在多維交換結(jié)構(gòu)中的哪個平面內(nèi)進行路由選擇的信息。
14.多域處理系統(tǒng),由下列構(gòu)成包括第一主處理機、至少一個第一本地交換機、以及至少一個第一終端結(jié)點的第一處理區(qū)域,所述至少一個第一本地交換機提供所述第一主處理機和所述至少一個第一終端結(jié)點之間數(shù)據(jù)包的通信;包括第二主處理機、至少一個第二本地交換機、以及至少一個第二終端結(jié)點的第二處理區(qū)域,所述至少一個第二本地交換機提供所述第二主處理機和所述至少一個第二終端結(jié)點之間數(shù)據(jù)包的通信;以及至少一個遠程交換機提供所述第一處理區(qū)域中的第一本地交換機和所述第二處理區(qū)域中的第二本地交換機之間的數(shù)據(jù)包的通信。
15.如權(quán)利要求14所述的多域處理系統(tǒng),其中所述至少一個第一本地交換機包括本地路由信息和遠程路由信息。
16.如權(quán)利要求15所述的多域處理系統(tǒng),其中所述至少一個第一本地交換機,基于所接收數(shù)據(jù)包中的信息,選擇是使用本地路由信息還是遠程路由信息來為所接收數(shù)據(jù)包選擇路由。
17.如權(quán)利要求15所述的多域處理系統(tǒng),其中所述本地路由信息包括所述第一處理區(qū)域的存儲映射表信息。
18.如權(quán)利要求14所述的多域處理系統(tǒng),其中所述至少一個遠程交換機包括一個過濾單元,用于阻止所接收數(shù)據(jù)包中識別的本地數(shù)據(jù)包。
19.如權(quán)利要求14所述的多域處理系統(tǒng),其中所述至少一個遠程交換機包括一個觸發(fā)單元,用于把所接收數(shù)據(jù)包的本地/遠程標記由遠程改為本地。
20.如權(quán)利要求14所述的多域處理系統(tǒng),其中所述至少一個遠程交換機包括遠程數(shù)據(jù)包路由信息,用于根據(jù)所接收數(shù)據(jù)包中的目標域信息為所接收的數(shù)據(jù)包選擇路由。
21.如權(quán)利要求14所述的多域處理系統(tǒng),其中所述第一處理區(qū)域和所述第二處理區(qū)域使用不同的操作系統(tǒng)。
22.如權(quán)利要求14所述的多域處理系統(tǒng),其中所述第一處理區(qū)域和所述第二處理區(qū)域使用不同的交換結(jié)構(gòu)技術(shù)。
23.用于多域處理系統(tǒng)的多維交換結(jié)構(gòu)中的交換機,由下列構(gòu)成第一存儲空間,存儲用于在第一正交平面內(nèi)進行路由選擇操作的第一數(shù)據(jù)包路由信息;第二存儲空間,存儲用于在第二正交平面內(nèi)進行路由選擇操作的第二數(shù)據(jù)包路由信息;以及選擇單元,根據(jù)所接收數(shù)據(jù)包中的信息,選擇是使用第一數(shù)據(jù)包路由信息還是第二數(shù)據(jù)包路由信息來為所接收的數(shù)據(jù)包選擇路由。
24.如權(quán)利要求23所述的交換機,其中第一數(shù)據(jù)包路由信息所包含的是,為始終處在多域處理系統(tǒng)中的一個處理區(qū)域內(nèi)的數(shù)據(jù)包選擇路由的信息。
25.如權(quán)利要求24所述的交換機,其中第二數(shù)據(jù)包路由信息所包含的是,為在多域處理系統(tǒng)中的處理區(qū)域之間傳送的數(shù)據(jù)包選擇路由的信息。
26.如權(quán)利要求25所述的交換機,其中還包括第三存儲空間,存儲用于在第三正交平面內(nèi)進行路由選擇操作的第三數(shù)據(jù)包路由信息,所述第三數(shù)據(jù)包路由信息包含的是,為在第一多域處理系統(tǒng)和第二多域處理系統(tǒng)之間傳送的數(shù)據(jù)包選擇路由的信息,其中所述的選擇單元根據(jù)所接收數(shù)據(jù)包中的信息選擇使用第一、第二還是第三數(shù)據(jù)包路由信息。
27.如權(quán)利要求23所述的交換機,其中第一數(shù)據(jù)包路由信息包含的是,為在多域處理系統(tǒng)中的處理區(qū)域之間傳送的數(shù)據(jù)包選擇路由的信息。
28.如權(quán)利要求23所述的交換機,其中第二數(shù)據(jù)包路由信息包含的是,為在第一多域處理系統(tǒng)和第二多域處理系統(tǒng)之間傳送的數(shù)據(jù)包選擇路由的信息。
29.如權(quán)利要求23所述的交換機,其中第一數(shù)據(jù)包路由信息作為第一查找表存儲,第二數(shù)據(jù)包路由信息作為第二查找表存儲。
30.如權(quán)利要求23所述的交換機,其中所述選擇單元根據(jù)所接收數(shù)據(jù)包中的標記,選擇使用第一數(shù)據(jù)包路由信息還是第二數(shù)據(jù)包路由信息。
31.一種配置一個具有多維交換結(jié)構(gòu)的多域處理系統(tǒng)的方法,由下列步驟構(gòu)成發(fā)現(xiàn)在多域處理系統(tǒng)的多個處理區(qū)域的每一個區(qū)域中的終端結(jié)點,并向其收集相關(guān)信息;在多域處理系統(tǒng)中確定一個系統(tǒng)管理結(jié)點;以及通過系統(tǒng)管理結(jié)點發(fā)現(xiàn)多域系統(tǒng)中的域,并收集所發(fā)現(xiàn)域的相關(guān)信息,所述與所發(fā)現(xiàn)域的相關(guān)信息包括發(fā)現(xiàn)終端結(jié)點時收集的信息。
32.如權(quán)利要求31所述的方法,其中發(fā)現(xiàn)終端結(jié)點的步驟包括在所述的多個處理區(qū)域中的每一個區(qū)域中傳輸本地確認數(shù)據(jù)包。
33.如權(quán)利要求31所述的方法,其中所述多個處理區(qū)域包括第一處理區(qū)域和第二處理區(qū)域,其中所述方法包括阻止在第一處理區(qū)域中傳輸?shù)谋镜卮_認數(shù)據(jù)包發(fā)送至第二處理區(qū)域。
34.如權(quán)利要求31所述的方法,其中所述多個處理區(qū)域,每一個包括一個主處理機,其中發(fā)現(xiàn)終端結(jié)點的步驟包括通過所述的多個處理區(qū)域中的每一個的相應主處理機來發(fā)現(xiàn)終端結(jié)點。
35.如權(quán)利要求34所述的方法,其中在多域處理系統(tǒng)中確定一個系統(tǒng)管理結(jié)點的步驟包括,在所述多個處理區(qū)域中的每一個區(qū)域中確定一個主處理機。
36.如權(quán)利要求31所述的方法,其中在多域處理系統(tǒng)中發(fā)現(xiàn)域的步驟包括,通過多維交換結(jié)構(gòu)從系統(tǒng)管理結(jié)點向其它域傳送遠程確認數(shù)據(jù)包。
37.如權(quán)利要求36所述的方法,其中在多域處理系統(tǒng)中發(fā)現(xiàn)域的步驟包括,作為所述遠程確認數(shù)據(jù)包的應答,從其它域中接收關(guān)于其它域中可用處理結(jié)點的信息。
38.如權(quán)利要求31所述的方法,其中利用發(fā)現(xiàn)所述第一處理區(qū)域中的終端結(jié)點時所收集的信息,生成本地路由信息,用于與第一處理區(qū)域結(jié)合的本地交換機中。
39.如權(quán)利要求38所述的方法,其中利用發(fā)現(xiàn)多域處理系統(tǒng)中的域時所收集的信息,生成遠程路由信息,用于與所述第一處理區(qū)域結(jié)合的本地交換機中。
40.如權(quán)利要求31所述的方法,其中利用發(fā)現(xiàn)多域處理系統(tǒng)中的域時所收集的信息,生成遠程路由信息,用于多維交換結(jié)構(gòu)中的遠程交換機。
41.如權(quán)利要求31所述的方法,其中在第一處理區(qū)域中發(fā)現(xiàn)終端結(jié)點的步驟包括在所述第一處理區(qū)域中產(chǎn)生一個用于識別資源的存儲映射表。
全文摘要
一個多域處理系統(tǒng),包括一個多維交換結(jié)構(gòu)提供系統(tǒng)的區(qū)域內(nèi)以及區(qū)域間的通信。
文檔編號H04L12/56GK1613052SQ02826704
公開日2005年5月4日 申請日期2002年10月30日 優(yōu)先權(quán)日2001年11月2日
發(fā)明者O·奧西恩科, E·布特勒, G·麥卡爾平, D·明圖恩, J·謝菲爾, G·索羅蒙 申請人:英特爾公司