亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

編址方法、編址裝置、架構(gòu)管理器、交換機(jī)和數(shù)據(jù)路由方法

文檔序號(hào):7624683閱讀:251來源:國(guó)知局
專利名稱:編址方法、編址裝置、架構(gòu)管理器、交換機(jī)和數(shù)據(jù)路由方法
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)中心網(wǎng)絡(luò),更具體地,涉及一種用于數(shù)據(jù)中心網(wǎng)絡(luò)的編址方法、編址裝置、架構(gòu)管理器、交換機(jī)和數(shù)據(jù)路由方法,適用于數(shù)據(jù)中心所采用的多種網(wǎng)絡(luò)拓?fù)?,可?shí)現(xiàn)位置地址的聚合,以減小轉(zhuǎn)發(fā)表,而且能夠容易地實(shí)現(xiàn)網(wǎng)絡(luò)負(fù)載均衡。
背景技術(shù)
隨著互聯(lián)網(wǎng)和云計(jì)算服務(wù)等應(yīng)用的發(fā)展,數(shù)據(jù)中心的規(guī)模日益增大,當(dāng)前的數(shù)據(jù)中心包含著成千上萬臺(tái)的服務(wù)器和交換機(jī)。另外,數(shù)據(jù)中心通常同時(shí)支持多種不同的應(yīng)用,其中一些應(yīng)用要求數(shù)據(jù)中心內(nèi)部不同服務(wù)器之間的大量的數(shù)據(jù)通信。數(shù)據(jù)中心的規(guī)模的增大和應(yīng)用的發(fā)展對(duì)其網(wǎng)絡(luò)架構(gòu)帶來了新的挑戰(zhàn)。數(shù)據(jù)中心網(wǎng)絡(luò)的目標(biāo)是將大量的數(shù)據(jù)中心服務(wù)器進(jìn)行互連,并為上層的應(yīng)用提供高效和容錯(cuò)的路由轉(zhuǎn)發(fā)服務(wù)。數(shù)據(jù)中心網(wǎng)絡(luò)架構(gòu)主要有兩類選擇二層網(wǎng)絡(luò)(Layer 2 Network)和三層網(wǎng)絡(luò)(Layer 3 Network) 今在二層網(wǎng)絡(luò)架構(gòu)中,整個(gè)數(shù)據(jù)中心成為一個(gè)大的以太網(wǎng)。以太網(wǎng)給網(wǎng)絡(luò)管理帶來了很大的方便,“即插即用”,無縫的虛擬機(jī)遷移等。但是,以太網(wǎng)不能擴(kuò)展到成千上萬臺(tái)服務(wù)器的規(guī)模。今三層網(wǎng)絡(luò)架構(gòu)具有很好的可擴(kuò)展性,但是它不再具有以太網(wǎng)簡(jiǎn)單方便的優(yōu)點(diǎn),給網(wǎng)絡(luò)管理帶來了負(fù)擔(dān)。針對(duì)這個(gè)問題,研究人員提出了新的系統(tǒng)和方法來解決以太網(wǎng)的擴(kuò)展性問題,支持“即插即用”的大規(guī)模的數(shù)據(jù)中心網(wǎng)絡(luò)。以太網(wǎng)是當(dāng)今最常用的局域網(wǎng)技術(shù),它使用MAC地址來標(biāo)識(shí)網(wǎng)絡(luò)中的節(jié)點(diǎn)。不同于IP地址的層次化結(jié)構(gòu),MAC地址是一種平面(flat)結(jié)構(gòu),并且是全球唯一的。交換機(jī)中的轉(zhuǎn)發(fā)表記錄了目的MAC地址到發(fā)送端口的映射。圖I是用于說明交換機(jī)通過自學(xué)習(xí)的方式構(gòu)建轉(zhuǎn)發(fā)表的示意圖。當(dāng)一個(gè)數(shù)據(jù)幀到達(dá)交換機(jī)的時(shí)候,交換機(jī)查看該數(shù)據(jù)幀的源MAC地址,并且將此源MAC地址和此數(shù)據(jù)幀進(jìn)入的端口的映射存儲(chǔ)到轉(zhuǎn)發(fā)表。由于這種自學(xué)習(xí)機(jī)制以及MAC地址的使用,使得網(wǎng)絡(luò)管理非常方便,交換機(jī)可以“即插即用”。但是以太網(wǎng)不能擴(kuò)展到成千上萬臺(tái)服務(wù)器的規(guī)模,主要有以下幾點(diǎn)原因。首先,MAC地址是非層次化的,不能將多個(gè)MAC地址聚合在一起。交換機(jī)的轉(zhuǎn)發(fā)表存儲(chǔ)的是目的MAC地址和發(fā)送端口的映射,因此每個(gè)交換機(jī)的轉(zhuǎn)發(fā)表里面就需要存儲(chǔ)整個(gè)網(wǎng)絡(luò)的所有主機(jī)的MAC地址。交換機(jī)的緩存大小的限制使得網(wǎng)絡(luò)中主機(jī)的個(gè)數(shù)不能無限制的增長(zhǎng)。其次,如圖2所示,對(duì)于具有未知目的MAC地址的數(shù)據(jù)幀(轉(zhuǎn)發(fā)表中沒有存儲(chǔ)此目的MAC地址),交換機(jī)將其發(fā)送(廣播)至除了數(shù)據(jù)幀到達(dá)的端口以外的所有其他端口。另外,一些基本網(wǎng)絡(luò)服務(wù)(包括地址解析協(xié)議ARP、動(dòng)態(tài)主機(jī)配置協(xié)議DHCP等)都是通過廣播的方式進(jìn)行的。這種全網(wǎng)性的廣播機(jī)制也使得以太網(wǎng)不能擴(kuò)展到太大規(guī)模。最后,以太網(wǎng)使用生成樹協(xié)議(Spanning Tree Protocol-STP)來避免環(huán)路,但是沿著單一的生成樹來轉(zhuǎn)發(fā)數(shù)據(jù)包會(huì)導(dǎo)致低效的路由選擇和鏈路負(fù)載的不均衡。這些原因使得數(shù)據(jù)中心網(wǎng)絡(luò)不能被直接構(gòu)建成一個(gè)大的局域網(wǎng)。一個(gè)解決方法是使用二層三層混合的結(jié)構(gòu),數(shù)據(jù)中心被構(gòu)建成多個(gè)局域網(wǎng),這些局域網(wǎng)之間是由IP路由連接。每個(gè)局域網(wǎng)由幾十或者幾百臺(tái)機(jī)器組成,形成一個(gè)IP子網(wǎng)。這種二層三層混合的結(jié)構(gòu)解決了可擴(kuò)展性問題,但是不再具有以太網(wǎng)簡(jiǎn)單方便的優(yōu)點(diǎn),給網(wǎng)絡(luò)管理帶來了負(fù)擔(dān)。本發(fā)明的目的在于解決以太網(wǎng)的擴(kuò)展性問題,以支持“即插即用”的大規(guī)模數(shù)據(jù)中心網(wǎng)絡(luò)。參考文獻(xiàn)[I]提出了 PortLand協(xié)議——一種用于數(shù)據(jù)中心網(wǎng)絡(luò)的二層尋址、路由和轉(zhuǎn)發(fā)協(xié)議。根據(jù)該協(xié)議,給網(wǎng)絡(luò)中的主機(jī)分配一個(gè)假的MAC (PMAC)地址,用來編碼這些主機(jī)在網(wǎng)絡(luò)拓?fù)渲械奈恢?。PMAC地址可以用非常小的交換機(jī)的狀態(tài)來實(shí)現(xiàn)有效的路由轉(zhuǎn)發(fā)功能。以下,對(duì)PortLand系統(tǒng)進(jìn)行更為詳細(xì)的描述。

圖3是示出了 PortLand系統(tǒng)的系統(tǒng)結(jié)構(gòu)的示意圖。在PortLand系統(tǒng)中,終端主機(jī)被分配假的MAC地址(PMAC)(例如,如圖3所示,PMAC 地址 “00. 00. 01. 02. 00. 01” 被分配給 MAC 地址為 “00. 19. B9. FA. 88. E2”、IP 地址為“10. 5. I. 2”的終端主機(jī)),用來編碼這些終端主機(jī)在網(wǎng)絡(luò)拓?fù)渲械奈恢谩MAC代替實(shí)際的MAC地址存儲(chǔ)在轉(zhuǎn)發(fā)表中,用于數(shù)據(jù)包的轉(zhuǎn)發(fā)。不同于MAC地址的平面結(jié)構(gòu),PMAC是層次化的,可以聚合,因此交換機(jī)只需要保存很小的轉(zhuǎn)發(fā)表。另外,PortLand引入了一個(gè)中心化的架構(gòu)管理器(Fabric Manager-FM) 300。FM 300維護(hù)網(wǎng)絡(luò)配置信息和狀態(tài)(比如,拓?fù)浣Y(jié)構(gòu)等)。不同于傳統(tǒng)以太網(wǎng)中的純廣播機(jī)制,F(xiàn)M 300可以幫助進(jìn)行ARP解析和提高容錯(cuò)性能。Portland協(xié)議是基于Fat Tree網(wǎng)絡(luò)拓?fù)?參考文獻(xiàn)[3])的尋址、路由和轉(zhuǎn)發(fā)協(xié)議。在Fat Tree網(wǎng)絡(luò)拓?fù)渲?,交換機(jī)分成三層邊緣層、匯聚層和核心層。不同層中所有的交換機(jī)都是相同的,每個(gè)交換機(jī)包含k個(gè)端口。圖3示出了 k = 4的Fat Tree網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。Fat Tree分為k個(gè)獨(dú)立的分塊(pod),如圖3中邊緣層和匯聚層的虛線框所示,每個(gè)框里面的k個(gè)交換機(jī)組成一個(gè)分塊。Fat Tree網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)可以支持k3/4臺(tái)主機(jī),使用5k2/4個(gè)k 口交換機(jī)。邊緣交換機(jī)給其所有直接相連的主機(jī)分配一個(gè)48比特的PMAC地址。PMAC地址是層次化的,編碼了主機(jī)在網(wǎng)絡(luò)拓?fù)渲械奈恢?。PMAC地址的格式是pod, position, port, vmid,其中pod 16比特,表示此邊緣交換機(jī)所處的pod的序號(hào),position 8比特,表示此邊緣交換機(jī)在此pod中所處的位置,port 8比特,表示此主機(jī)連接的邊緣交換機(jī)的端口號(hào),vmid :16比特,表示此物理機(jī)上虛擬機(jī)的序號(hào)(因?yàn)橐粋€(gè)物理機(jī)上可能運(yùn)行多個(gè)虛擬機(jī))。在圖3所示的例子中,左側(cè)第三個(gè)主機(jī)的PMAC地址是00. 00. 01. 02. 00. 01。其中,pod :00· 00,表不 pod O,position :01,表不 pod O 中位置 I,port :02,表示此主機(jī)連接在邊緣交換機(jī)的2號(hào)端口,
vmid 00. 01,表示此主機(jī)上的虛擬機(jī)序號(hào)為I。如圖3所示,PMAC地址代替實(shí)際的MAC地址存儲(chǔ)在轉(zhuǎn)發(fā)表(如圖3中最右側(cè)的表格所示)中,用于數(shù)據(jù)包的轉(zhuǎn)發(fā)。不同于MAC地址的平面結(jié)構(gòu),PMAC是層次化的,可以聚合,因此交換機(jī)只需要保存很小的轉(zhuǎn)發(fā)表。各層交換機(jī)的轉(zhuǎn)發(fā)表如下今核心層交換機(jī):pod. * 發(fā)送端口。例如,圖3中最右端的核心交換機(jī),它的端口 O和pod O相連,端口 I和pod I相連,等等。因此,所有目的MAC地址為00. 00. *送往端口 0,表示所有去往pod O的數(shù)據(jù)包都送往端口 O ;同理,所有去往pod I的數(shù)據(jù)包都送往端口 1,等等。今匯聚層交換機(jī)pod. position. * O·發(fā)送端口。例如,圖3中最右端的匯聚交換機(jī),它屬于pod 3,即00. 11。所有目的MAC地址為00. 11. *的數(shù)據(jù)包都是發(fā)往本pod,其中00. 11. 00. *的數(shù)據(jù)包發(fā)往位置為O的邊緣交換機(jī),所以發(fā)送往端口 0,所有00. 11. 01. *的數(shù)據(jù)包發(fā)往位置為I的邊緣交換機(jī),所以發(fā)送往端口 I。其他的目的MAC地址的數(shù)據(jù)包是 發(fā)往其他pod的上行數(shù)據(jù)包,由端口 2或者端口 3發(fā)送。今邊緣交換機(jī)pod.position, port. * O·發(fā)送端口。例如,圖3中最右端的邊緣交換機(jī),它屬于pod 3,位置1,即00. 11.01。它有兩個(gè)直接相連的主機(jī),所有目的MAC為00. 11.01.00. *的數(shù)據(jù)包都發(fā)送往端口 0,所有目的MAC為00. 11. 01. 01. *的數(shù)據(jù)包都發(fā)送往端口 I。其他的目的MAC地址的數(shù)據(jù)包是發(fā)往其他主機(jī)的上行數(shù)據(jù)包,由端口 2或者端口 3發(fā)送。PortLand協(xié)議是一種用于數(shù)據(jù)中心網(wǎng)絡(luò)的二層尋址、路由和轉(zhuǎn)發(fā)協(xié)議。但是,PortLand協(xié)議局限于Fat Tree這一網(wǎng)絡(luò)拓?fù)?,不能方便地?yīng)用到其他拓?fù)?。例如,PortLand協(xié)議所使用的PMAC的形式pod. position, port, vmid不能直接應(yīng)用于參考文獻(xiàn)[2]所提出的Clos網(wǎng)絡(luò)拓?fù)?。圖4是示出了 Clos網(wǎng)絡(luò)拓?fù)涞氖疽鈭D。Clos網(wǎng)絡(luò)拓?fù)湟彩欠譃槿龑?,其中ToR(Topof Rack)交換機(jī)類似于Fat Tree網(wǎng)絡(luò)拓?fù)渲械倪吘壗粨Q機(jī),與終端主機(jī)直接相連。FatTree網(wǎng)絡(luò)拓?fù)渲兴械慕粨Q機(jī)都是一樣的。但是,在Clos網(wǎng)絡(luò)拓?fù)渲校诵慕粨Q機(jī)和匯聚交換機(jī)是10G 口的大交換機(jī),而ToR交換機(jī)通過10G的上行口連接匯聚交換機(jī),通過IG的下行口連接主機(jī)。在Clos網(wǎng)絡(luò)拓?fù)渲胁辉儆衟od的概念,所以PMAC格式(pod. position, port.vmid)無法直接使用。如果將一個(gè)匯聚交換機(jī)對(duì)應(yīng)于一個(gè)pod,例如,匯聚交換機(jī)S3為podO,匯聚交換機(jī)S4為podl,則無法編址ToR交換機(jī)。因?yàn)槊總€(gè)ToR交換機(jī)都與兩個(gè)匯聚交換機(jī)相連,例如,ToR交換機(jī)S7既與匯聚交換機(jī)S3相連,也與匯聚交換機(jī)S4相連,這樣,ToR交換機(jī)S7的pod序號(hào)可以為0,也可以為I。因此,參考文獻(xiàn)[I]提出的PortLand協(xié)議不能直接應(yīng)用于參考文獻(xiàn)[2]提出的這種Clos網(wǎng)絡(luò)拓?fù)?。參考文獻(xiàn)[I] “PortLand A Scalable Fault Tolerant Layer 2 Data CenterNetworkFabric,,,Radhika Niranjan Mysore etc. , in Sigcomm2009[2] “VL2 A Scalable and Flexible Data Center Network”,AlbertGreenbergetc. , in Sigcomm 2009[3] “A Scalable,Commodity Data Center Network Architecture”,M. Al-Faresetc. , in Sigcomm 2008

發(fā)明內(nèi)容
考慮到現(xiàn)有技術(shù)的上述缺陷,本發(fā)明提出了一種用于數(shù)據(jù)中心網(wǎng)絡(luò)的編址方法、編址裝置、架構(gòu)管理器、交換機(jī)和數(shù)據(jù)路由方法,適用于數(shù)據(jù)中心所采用的多種網(wǎng)絡(luò)拓?fù)?,可?shí)現(xiàn)位置地址的聚合,以減小轉(zhuǎn)發(fā)表,而且能夠容易地實(shí)現(xiàn)網(wǎng)絡(luò)負(fù)載均衡。本發(fā)明提出了一種用于數(shù)據(jù)中心網(wǎng)絡(luò)的編址方法、編址裝置、架構(gòu)管理器、交換機(jī)和數(shù)據(jù)路由方法。網(wǎng)絡(luò)中的主機(jī)和交換機(jī)被分配一個(gè)或者多個(gè)位置地址(locator),位置地址是層次化的,編碼了主機(jī)和交換機(jī)在網(wǎng)絡(luò)拓?fù)渲械奈恢谩?當(dāng)網(wǎng)絡(luò)拓?fù)涮峁┝巳哂嗟穆窂綍r(shí),給主機(jī)和交換機(jī)分配多個(gè)位置地址。位置地址代替MAC地址存儲(chǔ)在交換機(jī)的轉(zhuǎn)發(fā)表里,用于數(shù)據(jù)包的轉(zhuǎn)發(fā)。多個(gè)位置地址描述了多條路徑,在多條路徑中選擇合適的路徑可實(shí)現(xiàn)負(fù)載均衡。根據(jù)本發(fā)明的第一方案,提出了一種編址裝置,包括樹創(chuàng)建單元,用于依次以每個(gè)交換機(jī)為根,通過網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)功能,創(chuàng)建包含所有主機(jī)的樹,由此,得到多棵樹;樹選擇單元,用于從所述樹創(chuàng)建單元所創(chuàng)建的多棵樹中選擇具有最小高度的樹;以及地址分配單元,用于針對(duì)由所述樹選擇單元所選擇的每一棵具有最小高度的樹,為網(wǎng)絡(luò)中每個(gè)交換機(jī)和每個(gè)主機(jī)分配地址。優(yōu)選地,當(dāng)以一個(gè)交換機(jī)為根,能夠創(chuàng)建出多棵包含所有主機(jī)的樹時(shí),所述樹創(chuàng)建單元選擇以此交換機(jī)為根、高度最小的任意一棵樹,作為所創(chuàng)建的樹。優(yōu)選地,當(dāng)以一個(gè)交換機(jī)為根,能夠創(chuàng)建出多棵包含所有主機(jī)的樹時(shí),所述樹創(chuàng)建單元記錄所有這多棵樹,作為所創(chuàng)建的樹。優(yōu)選地,當(dāng)存在多棵高度相同的最小高度的樹時(shí),所述樹選擇單元選擇所有這多棵最小聞度的樹。優(yōu)選地,所述地址分配單元針對(duì)由所述樹選擇單元所選擇的每一棵具有最小高度H的樹,為位于所述樹的根節(jié)點(diǎn)的根交換機(jī),也稱為第O層交換機(jī),分配根交換機(jī)位置地址;從與所述根交換機(jī)直接相連的第I層交換機(jī)開始,針對(duì)與第i_l層交換機(jī)直接相連的每一個(gè)第i層交換機(jī),找出從所述根交換機(jī)到達(dá)此第i層交換機(jī)的所有路徑,針對(duì)每條路徑,為此第i層交換機(jī)分配一個(gè)第i層交換機(jī)位置地址,其格式為“根交換機(jī)位置地址.第I層交換機(jī)地址.···.第i層交換機(jī)地址”,其中I < i < H-2 ;為每個(gè)主機(jī)分配主機(jī)位置地址,其格式為“邊緣交換機(jī)位置地址.主機(jī)地址”,其中邊緣交換機(jī)是與主機(jī)直接相連的第k層交換機(jī),O彡k彡H-2。優(yōu)選地,第i層交換機(jī)地址是第i_l層交換機(jī)與每一個(gè)第i層交換機(jī)相連的端口的端口號(hào)。優(yōu)選地,主機(jī)地址是邊緣交換機(jī)與每一個(gè)主機(jī)相連的端口的端口號(hào)。根據(jù)本發(fā)明的第二方案,提出了一種編址方法,包括依次以每個(gè)交換機(jī)為根,通過網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)功能,創(chuàng)建包含所有主機(jī)的樹,由此,得到多棵樹;從所創(chuàng)建的多棵樹中選擇具有最小高度的樹;以及針對(duì)所選擇的每一棵具有最小高度的樹,為網(wǎng)絡(luò)中每個(gè)交換機(jī)和每個(gè)主機(jī)分配地址。優(yōu)選地,當(dāng)以一個(gè)交換機(jī)為根,能夠創(chuàng)建出多棵包含所有主機(jī)的樹時(shí),選擇以此交換機(jī)為根、高度最小的任意一棵樹,作為所創(chuàng)建的樹。優(yōu)選地,當(dāng)以一個(gè)交換機(jī)為根,能夠創(chuàng)建出多棵包含所有主機(jī)的樹時(shí),記錄所有這多棵樹,作為所創(chuàng)建的樹。優(yōu)選地,當(dāng)存在多棵高度相同的最小高度的樹時(shí),選擇所有這多棵最小高度的樹。優(yōu)選地,針對(duì)所選擇的每一棵具有最小高度H的樹,為位于所述樹的根節(jié)點(diǎn)的根交換機(jī),也稱為第O層交換機(jī),分配根交換機(jī)位置地址;從與所述根交換機(jī)直接相連的第I層交換機(jī)開始,針對(duì)與第i-Ι層交換機(jī)直接相連的每一個(gè)第i層交換機(jī),找出從所述根交換機(jī)到達(dá)此第i層交換機(jī)的所有路徑,針對(duì)每條路徑,為此第i層交換機(jī)分配一個(gè)第i層交換機(jī)位置地址,其格式為“根交換機(jī)位置地址.第I層交換機(jī)地址.···.第i層交換機(jī)地址”,其中K i < H-2 ;為每個(gè)主機(jī)分配主機(jī)位置地址,其格式為“邊緣交換機(jī)位置地址.主機(jī)地址”,其中邊緣交換機(jī)是與主機(jī)直接相連的第k層交換機(jī),OH-2。
優(yōu)選地,第i層交換機(jī)地址是第i_l層交換機(jī)與每一個(gè)第i層交換機(jī)相連的端口的端口號(hào)。優(yōu)選地,主機(jī)地址是邊緣交換機(jī)與每一個(gè)主機(jī)相連的端口的端口號(hào)。根據(jù)本發(fā)明的第三方案,提出了一種架構(gòu)管理器,包括根據(jù)本發(fā)明第一方案所述的編址裝置;以及存儲(chǔ)器,用于存儲(chǔ)全局位置地址表,所述全局位置地址表包括了每一個(gè)主機(jī)的因特網(wǎng)協(xié)議地址與所述主機(jī)的所有主機(jī)位置地址之間的映射。優(yōu)選地,所述架構(gòu)管理器還包括調(diào)度單元,用于在收到地址解析協(xié)議請(qǐng)求時(shí),以目的主機(jī)的因特網(wǎng)協(xié)議地址為索引查找所述全局位置地址表,并根據(jù)調(diào)度算法,從所找到的與目的主機(jī)的因特網(wǎng)協(xié)議地址對(duì)應(yīng)的一個(gè)或者多個(gè)主機(jī)位置地址中選擇一個(gè)主機(jī)位置地址返回給源主機(jī),完成地址解析協(xié)議地址解析。更優(yōu)選地,當(dāng)未能從所述全局位置地址表找到與目的主機(jī)的因特網(wǎng)協(xié)議地址對(duì)應(yīng)的主機(jī)位置地址時(shí),所述調(diào)度單元進(jìn)行全網(wǎng)絡(luò)的廣播,獲得目的主機(jī)的一個(gè)或者多個(gè)主機(jī)位置地址,再根據(jù)調(diào)度算法,從所獲得的與目的主機(jī)的因特網(wǎng)協(xié)議地址對(duì)應(yīng)的一個(gè)或者多個(gè)主機(jī)位置地址中選擇一個(gè)主機(jī)位置地址返回給源主機(jī),完成地址解析協(xié)議地址解析。更優(yōu)選地,所述架構(gòu)管理器還包括故障處理單元,用于在交換機(jī)檢測(cè)到相鄰交換機(jī)或鏈路發(fā)生故障時(shí),將全局位置地址表中相應(yīng)的主機(jī)位置地址設(shè)為失效,其中所述調(diào)度單元在選擇與目的主機(jī)的因特網(wǎng)協(xié)議地址對(duì)應(yīng)的主機(jī)位置地址時(shí),不選擇被設(shè)為失效的主機(jī)位置地址。根據(jù)本發(fā)明的第四方案,提出了一種交換機(jī),包括根據(jù)本發(fā)明第一方案所述的編
址裝置。根據(jù)本發(fā)明的第五方案,提出了一種數(shù)據(jù)路由方法,采用了根據(jù)本發(fā)明第二方案所述的編址方法編址的交換機(jī)位置地址和主機(jī)位置地址,所述數(shù)據(jù)路由方法包括根交換機(jī)/第O層交換機(jī)將包含了 “根交換機(jī)位置地址.第I層交換機(jī)地址/主機(jī)地址.*”作為目的主機(jī)的主機(jī)位置地址的數(shù)據(jù)包轉(zhuǎn)發(fā)至端口號(hào)為“第I層交換機(jī)地址/主機(jī)地址”的端口 ;第i層交換機(jī)將包含了“第i層交換機(jī)位置地址.第i+1層交換機(jī)地址/主機(jī)地址.作為目的主機(jī)的主機(jī)位置地址的數(shù)據(jù)包轉(zhuǎn)發(fā)至端口號(hào)為“第i+1層交換機(jī)地址/主機(jī)地址”的端口,其中I彡i彡H-2 ;以及第i層交換機(jī)將包含了 “根交換機(jī)位置地址.*”作為目的主機(jī)的主機(jī)位置地址的數(shù)據(jù)包轉(zhuǎn)發(fā)至與以具有“根交換機(jī)位置地址”作為根交換機(jī)位置地址的根交換機(jī)為根節(jié)點(diǎn)的第i_l層交換機(jī)相連的端口,其中H-2。本發(fā)明提出的新的編址/尋址方案適用于數(shù)據(jù)中心使用的多種網(wǎng)絡(luò)拓?fù)?,例如,F(xiàn)at Tree網(wǎng)絡(luò)拓?fù)?、Clos網(wǎng)絡(luò)拓?fù)涞取N恢玫刂反鍹AC地址存在交換機(jī)的轉(zhuǎn)發(fā)表里,用于數(shù)據(jù)包的轉(zhuǎn)發(fā)。因?yàn)槲恢玫刂肥菍哟位?,可以聚合,因此交換機(jī)只需要保存很小的轉(zhuǎn)發(fā)表。當(dāng)網(wǎng)絡(luò)拓?fù)涮峁┝巳哂嗟穆窂綍r(shí),主機(jī)和交換機(jī)具有多個(gè)位置地址,這多個(gè)位置地址分別描述了多條路徑,在多條路徑中選擇合適的路徑可以方便地實(shí)現(xiàn)負(fù)載均衡。


通過下面結(jié)合

本發(fā)明的優(yōu)選實(shí)施例,將使本發(fā)明的上述及其它目的、特征和優(yōu)點(diǎn)更加清楚,其中圖I是用于說明交換機(jī)通過自學(xué)習(xí)的方式構(gòu)建轉(zhuǎn)發(fā)表的示意圖。 圖2是用于說明交換機(jī)轉(zhuǎn)發(fā)(廣播)具有未知目的MAC的數(shù)據(jù)幀的示意圖。圖3是示出了 PortLand系統(tǒng)的系統(tǒng)結(jié)構(gòu)的示意圖。圖4是示出了 Clos網(wǎng)絡(luò)拓?fù)涞氖疽鈭D。圖5是示出了根據(jù)本發(fā)明的編址裝置500的結(jié)構(gòu)方框圖。圖6是示出了根據(jù)本發(fā)明的編址方法600的流程圖。圖7是再次示出了參考文獻(xiàn)[3]所提出的Fat Tree網(wǎng)絡(luò)拓?fù)涞氖疽鈭D。圖8示出了基于Fat Tree網(wǎng)絡(luò)拓?fù)洹⑼ㄟ^網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)功能創(chuàng)建的一棵樹的示例。圖9示出了基于Fat Tree網(wǎng)絡(luò)拓?fù)?、通過網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)功能創(chuàng)建的另一棵樹的示例。圖10示出了基于Fat Tree網(wǎng)絡(luò)拓?fù)?、通過網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)功能創(chuàng)建的另一棵樹的示例。圖11示出了基于Fat Tree網(wǎng)絡(luò)拓?fù)涞牟糠志幹方Y(jié)果。圖12示出了基于Clos網(wǎng)絡(luò)拓?fù)涞牟糠志幹方Y(jié)果。圖13是示出了 Fat Tree網(wǎng)絡(luò)拓?fù)湎聰?shù)據(jù)包轉(zhuǎn)發(fā)的示例示意圖。圖14是示出了包含了根據(jù)本發(fā)明的編址裝置500的示例架構(gòu)管理器1400的結(jié)構(gòu)方框圖。圖15示出了多個(gè)位置地址分別對(duì)應(yīng)多條路徑的示意圖。在本發(fā)明的所有附圖中,相同或相似的結(jié)構(gòu)和步驟均以相同或相似的附圖標(biāo)記標(biāo)識(shí)。
具體實(shí)施例方式下面參照附圖對(duì)本發(fā)明的優(yōu)選實(shí)施例進(jìn)行詳細(xì)說明,在描述過程中省略了對(duì)于本發(fā)明來說是不必要的細(xì)節(jié)和功能,以防止對(duì)本發(fā)明的理解造成混淆。圖5是示出了根據(jù)本發(fā)明的編址裝置500的結(jié)構(gòu)方框圖。根據(jù)本發(fā)明的編址裝置500可以位于圖3所示的架構(gòu)管理器300中、也可以位于任何一個(gè)交換機(jī)中。如圖5所示,根據(jù)本發(fā)明的編址裝置500包括樹創(chuàng)建單元510、樹選擇單元520和地址分配單元530。樹創(chuàng)建單元510用于依次以每個(gè)交換機(jī)為根,通過網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)功能,創(chuàng)建一棵包含所有主機(jī)的樹,由此,得到多棵樹。因?yàn)榫W(wǎng)絡(luò)拓?fù)淇赡軙?huì)提供冗余的路徑,不一定每棵樹都包含所有的交換機(jī)。另外,以一個(gè)交換機(jī)為根,可能會(huì)創(chuàng)建出多棵包含所有主機(jī)的樹,在這種情況下,可以先于樹選擇單元520的操作,由樹創(chuàng)建單元510先選擇以此交換機(jī)為根、高度最小的任意一棵樹,作為所創(chuàng)建的樹。也可以創(chuàng)建并記錄所有這些樹,由樹選擇單元520統(tǒng)一進(jìn)行選擇。樹選擇單元520用于從樹創(chuàng)建單元510所創(chuàng)建的多棵樹中選擇具有最小高度的樹,如果存在多棵高度相同的最小高度的樹,則選出所有這多棵最小高度的樹。根據(jù)樹選擇單元520的操作,當(dāng)存在多棵高度相同的最小高度的樹時(shí),網(wǎng)絡(luò)拓?fù)鋵⒈粯?gòu)建成一個(gè)多根樹。地址分配單元530用于完成網(wǎng)絡(luò)中每個(gè)交換機(jī)和每個(gè)主機(jī)的編址操作。為了描述方便,先對(duì)網(wǎng)絡(luò)中的交換機(jī)的分層結(jié)構(gòu)進(jìn)行描述。
將位于每棵樹的根節(jié)點(diǎn)的交換機(jī)稱為根交換機(jī)(也稱為第O層交換機(jī)),將與第i-Ι層交換機(jī)直接相連的交換機(jī)稱為第i層交換機(jī)(l<i< H-2,H是樹的高度),將與主機(jī)直接相連的交換機(jī)稱為邊緣交換機(jī)(邊緣交換機(jī)可以是第k層交換機(jī),OH-2)。首先,對(duì)于所選擇的每一棵具有最小高度的樹,為該樹的根交換機(jī)(也可以稱為第O層交換機(jī))分配根交換機(jī)位置地址。然后,從與所述根交換機(jī)(第O層交換機(jī))直接相連的第I層交換機(jī)開始,針對(duì)每一個(gè)第i層交換機(jī),找出從根交換機(jī)到達(dá)此第i層交換機(jī)的所有路徑,針對(duì)每條路徑,為此第i層交換機(jī)分配一個(gè)第i層交換機(jī)位置地址,其格式為“根交換機(jī)位置地址.第I層交換機(jī)地址.···.第i層交換機(jī)地址”,其中第i層交換機(jī)地址可以是第i_l層交換機(jī)與第i層交換機(jī)相連的端口的端口號(hào)。最后,為每個(gè)主機(jī)分配主機(jī)位置地址,其格式為“邊緣交換機(jī)位置地址.主機(jī)地址”,其中主機(jī)地址可以是邊緣交換機(jī)與每一個(gè)主機(jī)相連的端口的端口號(hào)。圖6是示出了根據(jù)本發(fā)明的編址方法600的流程圖。在步驟S610,樹創(chuàng)建單元510依次以每個(gè)交換機(jī)為根,通過網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)功能,創(chuàng)建一棵包含所有主機(jī)的樹,由此,得到多棵樹。因?yàn)榫W(wǎng)絡(luò)拓?fù)淇赡軙?huì)提供冗余的路徑,不一定每棵樹都包含所有的交換機(jī)。另外,以一個(gè)交換機(jī)為根,可能會(huì)創(chuàng)建出多棵包含所有主機(jī)的樹,在這種情況下,可以先于樹選擇單元520的操作,由樹創(chuàng)建單元510先選擇以此交換機(jī)為根、高度最小的任意一棵樹,作為所創(chuàng)建的樹。也可以創(chuàng)建并記錄所有這些樹,由樹選擇單元520統(tǒng)一進(jìn)行選擇。在步驟S620,樹選擇單元520從樹創(chuàng)建單元510所創(chuàng)建的多棵樹中選擇具有最小高度的樹,如果存在多棵高度相同的最小高度的樹,則選出所有這多棵最小高度的樹。根據(jù)樹選擇單元520的操作,當(dāng)存在多棵(R棵)高度相同的最小高度的樹時(shí),網(wǎng)絡(luò)拓?fù)鋵⒈粯?gòu)建成一個(gè)多根樹。所述多根樹的高度為H。位于每棵樹的根節(jié)點(diǎn)的交換機(jī)稱為根交換機(jī)(也稱為第O層交換機(jī)),與第i_l層交換機(jī)直接相連的交換機(jī)稱為第i層交換機(jī)(l^i^ H-2),與主機(jī)直接相連的交換機(jī)稱為邊緣交換機(jī)(邊緣交換機(jī)可以是第k層交換機(jī),O彡k彡H-2)。在步驟S630,地址分配單元530對(duì)于所選擇的每一棵具有最小高度H的樹,將該樹的根節(jié)點(diǎn)作為根交換機(jī)(也可以稱為第O層交換機(jī)),分配根交換機(jī)位置地址。例如,可以依次為每棵樹的根節(jié)點(diǎn)分配根交換機(jī)位置地址“O”、“I”、…、“R-ι”。在步驟S640,地址分配單元530從與每個(gè)根交換機(jī)直接相連的第I層交換機(jī)開始,針對(duì)每一個(gè)第i層交換機(jī),找出從根交換機(jī)到達(dá)此第i層交換機(jī)的所有路徑,針對(duì)每條路徑,為此第i層交換機(jī)分配一個(gè)第i層交換機(jī)位置地址,其格式為“根交換機(jī)位置地址.第I層交換機(jī)地址.···.第i層交換機(jī)地址”,其中第i層交換機(jī)地址可以是第i-Ι層交換機(jī)與第i層交換機(jī)相連的端口的端口號(hào)。在步驟S640,地址分配單元530為每個(gè)主機(jī)分配主機(jī)位置地址,其格式為“邊緣交換機(jī)位置地址.主機(jī)地址”,其中主機(jī)地址可以是邊緣交換機(jī)與主機(jī)相連的端口的端口號(hào)。對(duì)于位置地址“根交換機(jī)位置地址.第I層交換機(jī)地址.第2層交換機(jī)地址.···.第i層交換機(jī)地址.···.邊緣交換機(jī)地址.主機(jī)地址”,每層地址可以用8比特表示。這樣當(dāng)通過拓?fù)浒l(fā)現(xiàn)功能得到的多根樹的高度H小于等于6時(shí),位置地址的長(zhǎng)度不會(huì) 超過MAC地址的48比特的空間。當(dāng)位置地址未用滿6層(48比特)時(shí),用全I(xiàn)填充表示無效地址(可以由地址分配單元530完成)。例如,“O. I. 2. 3. 255. 255”表示這個(gè)主機(jī)的位置地址格式為“根交換機(jī)位置地址.第一層地址.第二層地址.主機(jī)地址”,具體值為“O. 1.2.3”。在本說明書的描述中,為了行文方便,無效地址通常被省略,即“O. L 2. 3”就表示“O. I. 2. 3. 255. 255”?!案粨Q機(jī)位置地址”的地址空間大小是由根交換機(jī)的個(gè)數(shù)決定的,8比特最多可以表示255個(gè)根交換機(jī)。核心層的交換機(jī)一般是IOG 口的大交換機(jī),假設(shè)核心層交換機(jī)是128 口,共255個(gè),那么可以支持255*128*10 = 326,400個(gè)主機(jī)的IG線速通信,這個(gè)數(shù)目完全可以滿足一個(gè)數(shù)據(jù)中心的最大規(guī)模。除“根交換機(jī)位置地址”以外,其他“第I層交換機(jī)地址”、“第2層交換機(jī)地址”、…、“第i層交換機(jī)地址”和“主機(jī)地址”的地址空間大小是由交換機(jī)的端口數(shù)決定的,8比特最多可以表示255個(gè)端口,也可以滿足現(xiàn)有交換機(jī)的需求。另一方面,當(dāng)通過拓?fù)浒l(fā)現(xiàn)功能得到的多根樹的高度H大于6時(shí),需要對(duì)位置地址“根位置地址.第I層交換機(jī)地址.第2層交換機(jī)地址.….第i層交換機(jī)地址.….邊緣交換機(jī)地址.主機(jī)地址”進(jìn)行壓縮。假定某層地址的最大地址空間<2N-1,就把這層的比特?cái)?shù)壓縮到N比特(可以由地址分配單元530完成)。因?yàn)槊繉硬辉儆晒潭ㄩL(zhǎng)度8比特表示,在這種情況下,在完成拓?fù)浒l(fā)現(xiàn)之后,架構(gòu)管理器300 (圖3)需要將每層的比特長(zhǎng)度通知給所有交換機(jī)。本發(fā)明提出的新的編址方案可適用于數(shù)據(jù)中心使用的多種網(wǎng)絡(luò)拓?fù)?,下面給出幾種常用網(wǎng)絡(luò)拓?fù)湎戮幹返睦?。圖7示出了參考文獻(xiàn)[3]所提出的Fat Tree網(wǎng)絡(luò)拓?fù)洹>唧w描述可參考對(duì)圖3的具體內(nèi)容,為了行文簡(jiǎn)潔,此處不再贅述。圖8示出了基于Fat Tree網(wǎng)絡(luò)拓?fù)?、通過網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)功能創(chuàng)建的一棵樹的示例。如圖8所示,樹創(chuàng)建單元510以交換機(jī)SI為根,通過網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)功能,創(chuàng)建了一棵包含所有主機(jī)的樹,樹的高度H = 4(步驟S610)。圖9示出了基于Fat Tree網(wǎng)絡(luò)拓?fù)洹⑼ㄟ^網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)功能創(chuàng)建的另一棵樹的示例。如圖9所示,樹創(chuàng)建單元510以交換機(jī)S5為根,通過網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)功能,創(chuàng)建了另一棵包含所有主機(jī)的樹,樹的高度H = 5 (步驟S610)。圖10示出了基于Fat Tree網(wǎng)絡(luò)拓?fù)?、通過網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)功能創(chuàng)建的另一棵樹的示例。如圖10所示,樹創(chuàng)建單元510以交換機(jī)S13為根,通過網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)功能,創(chuàng)建了另一棵包含所有主機(jī)的樹,樹的高度H = 6 (步驟S610)。按照以上操作,樹創(chuàng)建單元510針對(duì)圖7所示的Fat Tree網(wǎng)絡(luò)拓?fù)湟还部梢詣?chuàng)建 至少20棵樹。圖11示出了基于Fat Tree網(wǎng)絡(luò)拓?fù)涞牟糠志幹方Y(jié)果。樹選擇單元520從樹創(chuàng)建單元510所創(chuàng)建的至少20棵樹中選擇具有最小高度的樹(H = 4)。一共有4棵高度H = 4的樹,分別以4個(gè)核心交換機(jī)S1、S2、S3和S4為根(步驟 S620)。因此,地址分配單元530分別將這4個(gè)核心交換機(jī)S1、S2、S3和S4作為根交換機(jī),分配根交換機(jī)位置地址分別“0”、“1”、“2”、“3” (步驟S630)。交換機(jī)S5 S12直接和根交換機(jī)相連,是第I層交換機(jī)。對(duì)于每個(gè)第I層交換機(jī),從根交換機(jī)出發(fā)到達(dá)這些交換機(jī)有兩條路徑,所以這些交換機(jī)被分配兩個(gè)位置地址。例如,交換機(jī)S5,一條路徑是SI — S5,假設(shè)交換機(jī)S5連接到根交換機(jī)SI的第O號(hào)端口,那么對(duì)應(yīng)這條路徑,交換機(jī)S5得到的交換機(jī)位置地址是“O. O”。另外一條從根交換機(jī)到交換機(jī)S5的路徑是S2 — S5,假設(shè)交換機(jī)S5和根交換機(jī)S2的第O號(hào)端口相連,那么對(duì)應(yīng)這條路徑,交換機(jī)S5得到的交換機(jī)位置地址是“ I. O”。交換機(jī)S13 S20和第I層交換機(jī)相連,是第2層交換機(jī)。對(duì)于每個(gè)第2層交換機(jī),從根交換機(jī)出發(fā)到這些交換機(jī)有4條路徑,所以這些交換機(jī)被分配4個(gè)位置地址。例如,交換機(jī)S13,4條路徑分別為S1 — S5 — S13、S2 — S5 — S13、S3 — S6 — S13、S4 — S6 — S13,對(duì)應(yīng)的4個(gè)交換機(jī)位置地址分別為:“0· O. 0,,、“1· O. O”、“ 2. O. O ” 和 “ 3. O. O ”(步驟 S630)。主機(jī)與邊緣交換機(jī)(第2層交換機(jī))直接相連,對(duì)應(yīng)邊緣交換機(jī)的每個(gè)交換機(jī)位置地址,主機(jī)被分配一個(gè)主機(jī)位置地址,因此,圖11中的每個(gè)主機(jī)有4個(gè)主機(jī)位置地址。例如,主機(jī)Hl與交換機(jī)S13的第O號(hào)端口相連,因此對(duì)應(yīng)交換機(jī)S13的4個(gè)交換機(jī)位置地址“O. O. 0”、“1. O. 0”、“2. O. O”和“3. O. 0”,此主機(jī)Hl的主機(jī)位置地址分別為“O. O. O. O”、“I. O. O. O”、“2. O. O. O”和 “3. O. O. O”(步驟 S640)。圖12示出了基于Clos網(wǎng)絡(luò)拓?fù)涞牟糠志幹方Y(jié)果。樹創(chuàng)建單元510針對(duì)圖12所示的Fat Tree網(wǎng)絡(luò)拓?fù)湟还部梢詣?chuàng)建至少10棵樹。樹選擇單元520從樹創(chuàng)建單元510所創(chuàng)建的至少10棵樹中選擇具有最小高度的樹(H = 4)。一共有2棵高度H = 4的樹,分別以2個(gè)核心交換機(jī)SI和S2為根(步驟S620)。因此,地址分配單元530分別將這2個(gè)核心交換機(jī)SI和S2作為根交換機(jī),分配根交換機(jī)位置地址分別“O”和“I”(步驟S630)。交換機(jī)S3 S6直接和根交換機(jī)相連,是第I層交換機(jī)。對(duì)于每個(gè)第I層交換機(jī),從根交換機(jī)出發(fā)到達(dá)這些交換機(jī)有兩條路徑,所以這些交換機(jī)被分配兩個(gè)位置地址。例如,交換機(jī)S3,一條路徑是SI — S3,假設(shè)交換機(jī)S3連接到根交換機(jī)SI的第O號(hào)端口,那么對(duì)應(yīng)這條路徑,交換機(jī)S3得到的交換機(jī)位置地址是“O. O”。另外一條從根交換機(jī)到交換機(jī)S3的路徑是S2 — S3,假設(shè)交換機(jī)S3和根交換機(jī)S2的第O號(hào)端口相連,那么對(duì)應(yīng)這條路徑,交換機(jī)S3得到的交換機(jī)位置地址是“I. O”。交換機(jī)S7 SlO和第I層交換機(jī)相連,是第2層交換機(jī)。對(duì)于每個(gè)第2層交換機(jī),從根交換機(jī)出發(fā)到這些交換機(jī)有4條路徑,所以這些交換機(jī)被分配4個(gè)位置地址。例如,交換機(jī)S7,4條路徑分別為S1 — S3 — S7、S2 — S3 — S7、SI — S4 — S7、S2 — S4 — S7,對(duì)應(yīng)的4個(gè)交換機(jī)位置地址分別為:“0· O. 0,,、“1· O. O”、“O. I. O,,和 “I. I. O” (步驟 S630)。主機(jī)與邊緣交換機(jī)(第2層交換機(jī))直接相連,對(duì)應(yīng)邊緣交換機(jī)的每個(gè)交換機(jī)位置地址,主機(jī)被分配一個(gè)主機(jī)位置地址,因此,圖12中的每個(gè)主機(jī)有4個(gè)主機(jī)位置地址。 例如,主機(jī)Hl與交換機(jī)S7的第O號(hào)端口相連,因此對(duì)應(yīng)交換機(jī)S7的4個(gè)交換機(jī)位置地址“O. O. 0”、“1. O. 0”、“0. I. O”和“I. I. 0”,此主機(jī)Hl的主機(jī)位置地址分別為“O. O. O. O”、“I. O. O. 0,,、“0· I. O. O” 和 “I. I. O. O” (步驟 S640)。位置地址代替MAC地址存在交換機(jī)的轉(zhuǎn)發(fā)表里,用于數(shù)據(jù)包的轉(zhuǎn)發(fā)。圖13是示出了 Fat Tree網(wǎng)絡(luò)拓?fù)湎聰?shù)據(jù)包轉(zhuǎn)發(fā)的示例示意圖。各層交換機(jī)的轉(zhuǎn)發(fā)表如下今根交換機(jī)
self locator, port. * 端口 port。其中“selflocator”表示根交換機(jī)自身的根交換機(jī)位置地址,以及“port”表示位于根交換機(jī)位置地址后的下一地址字段。例如,根交換機(jī)SI,selflocator是“O”。它的端口 O和S5相連,分配給S5的第一層地址也是“0”,因此目的位置地址為“0. 0.*”的數(shù)據(jù)包都送往端口 O ;同理,所有目的位置地址為“0. I. *”的數(shù)據(jù)包都送往端口 I等。今第i層交換機(jī)
selflocator, port.氺P port;
parent's root. * <->與第i-1層交換機(jī)相連的端口。其中“selflocator”表示第i層交換機(jī)自身的第i層交換機(jī)位置地址,“port”表示位于第i層交換機(jī)位置地址后的下一地址字段,“parent’ s root”表示與第i層交換機(jī)相連的第i_l層交換機(jī)的根交換機(jī)的根交換機(jī)位置地址。例如,交換機(jī)S5,selflocator是“O. O”和“I. 0”,端口 O和交換機(jī)S13相連,分配給交換機(jī)S13的第2層地址也是“0”,因此,所有目的位置地址為“selflocator. 0.的數(shù)據(jù)包都送往端口 0,也就是“0.0.0.*”G端口 0、“1.0.0.*”<^端口 0;同理,所有目的位置地址為“selflocator. I.*”的數(shù)據(jù)包都送往端口 1,也就是“0.0.1.*” e端口 1,“1.0.1.*” e端口 I。交換機(jī)S5的端口 2和3為上行端口,連到第i_l層交換機(jī),與其相連的第i_l層交換機(jī)稱為其父交換機(jī)(parent),交換機(jī)S5有兩個(gè)父交換機(jī)——交換機(jī)SI和交換機(jī)S2,假設(shè)交換機(jī)S2和交換機(jī)S5的端口 2相連,交換機(jī)S2的根節(jié)點(diǎn)為其自身(根交換機(jī)位置地址“I”(parent’ s root)),因此對(duì)應(yīng)的轉(zhuǎn)發(fā)表項(xiàng)為“ I. G端口 2;同理,交換機(jī)SI和交換機(jī)S5的端口 3相連,交換機(jī)SI的根節(jié)點(diǎn)為其自身(根交換機(jī)位置地址“O”(parent’ S root)),因此對(duì)應(yīng)的轉(zhuǎn)發(fā)表項(xiàng)為“O·*” ^ 端口 3。再例如,交換機(jī)S13, selflocator 是“O. O. 0,,、“1· O. 0,,、“2· O. O” 和“3.0.0”,端口 O和主機(jī)Hl相連,分配給Hl的主機(jī)位置地址也是0,因此所有目的位置地址為"selflocator. O. *”的數(shù)據(jù)包都送往端口 0,也就是“ 0. 0. 0. 0. * ” G端口 O、“1.0.0. 端口 O、“2. 0. 0. O.*,,G 端口 O、“3. 0. 0. 0.氺”
e端口 0;同理,所有目的位置地址為“selflocator· I·*”的數(shù)據(jù)包都送往端口 1,也就是 “0. 0. 0. l.*”e 端口 1、“1.0. 0. I.*”—> 端口 I、“2. 0.0.1·*” G 端口 1、“3. 0.0. I.*” O 端口 I。父換機(jī) S13 的端口 2和3為上行端口,連到第i-Ι層交換機(jī),與其相連的第i_l層交換機(jī)稱為其父交 換機(jī)(parent),交換機(jī)S13有兩個(gè)父交換機(jī)——交換機(jī)S5和交換機(jī)S6,假設(shè)交換機(jī)S6和交換機(jī)S13的端口 2相連,交換機(jī)S6的根節(jié)點(diǎn)為根交換機(jī)S3 (根交換機(jī)位置地址“2”(parent’ s root))或根交換機(jī)S4 (根交換機(jī)位置地址“3”(parent’ s root)),因此對(duì)應(yīng)的轉(zhuǎn)發(fā)表項(xiàng)為“2.*” G端口 2和I “3.*” 0端口 2;同理,交換機(jī)S5和交換機(jī)S13的端口 3相連,交換機(jī)S5的根節(jié)點(diǎn)為根交換機(jī)SI (根交換機(jī)位置地址“O”(parent’ sroot))或根交換機(jī)S2(根交換機(jī)位置地址“I”(parent’s root)),因此對(duì)應(yīng)的轉(zhuǎn)發(fā)表項(xiàng)為“O·*,,<-> 端口 3 和 “I.*” G 端口 3。當(dāng)網(wǎng)絡(luò)拓?fù)涮峁┝巳哂嗟穆窂綍r(shí),主機(jī)和交換機(jī)分配多個(gè)位置地址。多個(gè)位置地址描述了多條路徑,在多條路徑中選擇合適的路徑可以實(shí)現(xiàn)負(fù)載均衡。圖14是示出了包含了根據(jù)本發(fā)明的編址裝置500的示例架構(gòu)管理器1400的結(jié)構(gòu)方框圖,以及圖15示出了多個(gè)位置地址分別對(duì)應(yīng)多條路徑的示意圖。如圖14所示,包含了根據(jù)本發(fā)明的編址裝置500的示例架構(gòu)管理器1400還包括存儲(chǔ)器1410、調(diào)度單元1420和故障處理單元1430。存儲(chǔ)器1410存儲(chǔ)了全局位置地址表。全局位置地址表包括了每一個(gè)主機(jī)的IP地址與由編址裝置500生成的所述主機(jī)的所有主機(jī)位置地址之間的映射。調(diào)度單元1420在收到地址解析協(xié)議(ARP)請(qǐng)求時(shí),以目的主機(jī)的IP地址為索引查找所述全局位置地址表,并根據(jù)調(diào)度算法,從所找到的與目的主機(jī)的IP地址對(duì)應(yīng)的一個(gè)或者多個(gè)主機(jī)位置地址中選擇一個(gè)主機(jī)位置地址返回給源主機(jī),完成ARP地址解析。當(dāng)未能從所述全局位置地址表找到與目的主機(jī)的IP地址對(duì)應(yīng)的主機(jī)位置地址時(shí),調(diào)度單元1420進(jìn)行全網(wǎng)絡(luò)的廣播,獲得目的主機(jī)的一個(gè)或者多個(gè)主機(jī)位置地址(可以將這樣得到的一個(gè)或者多個(gè)主機(jī)位置地址與目的主機(jī)的IP地址之間的映射存儲(chǔ)到全局位置表中),再根據(jù)調(diào)度算法,從所獲得的與目的主機(jī)的IP地址對(duì)應(yīng)的一個(gè)或者多個(gè)主機(jī)位置地址中選擇一個(gè)主機(jī)位置地址返回給源主機(jī),完成ARP地址解析。故障處理單元1430在交換機(jī)檢測(cè)到相鄰交換機(jī)或鏈路發(fā)生故障時(shí),將全局位置地址表中相應(yīng)的主機(jī)位置地址設(shè)為失效。此時(shí),調(diào)度單元1420在選擇與目的主機(jī)的IP地址對(duì)應(yīng)的主機(jī)位置地址時(shí),不再選擇被設(shè)為失效的主機(jī)位置地址。如圖15所示,主機(jī)Hl是源主機(jī),主機(jī)H5是目的主機(jī),主機(jī)H5具有4個(gè)位置地址,相對(duì)應(yīng)地,主機(jī)Hl到主機(jī)H5之間有4條不同的路徑,如圖14中所示。全局位置地址表(存儲(chǔ)于存儲(chǔ)器1410中)中存儲(chǔ)了所有主機(jī)的所有主機(jī)位置地址。當(dāng)架構(gòu)管理器收到地址解析協(xié)議(ARP)請(qǐng)求的時(shí)候,調(diào)度單元1420可以從多個(gè)主機(jī)位置地址中選擇一個(gè)主機(jī)位置地址進(jìn)行應(yīng)答。對(duì)主機(jī)位置地址的選擇相當(dāng)于從多個(gè)路徑中選擇一個(gè)路徑,選擇合適的路徑可以實(shí)現(xiàn)負(fù)載均衡。選擇方法可以是隨機(jī)選擇、RoundRobin、或者其他調(diào)度算法。針對(duì)ARP地址解析,架構(gòu)管理器存儲(chǔ)有全局位置地址表。在收到ARP請(qǐng)求時(shí),架構(gòu)管理器在全局位置地址表中查找與目的主機(jī)的IP地址相對(duì)應(yīng)的主機(jī)位置地址。如果找到了與目的主機(jī)的IP地址對(duì)應(yīng)的一個(gè)或者多個(gè)主機(jī)位置地址,可以根據(jù)調(diào)度算法,從所找出的一個(gè)或者多個(gè)主機(jī)位置地址中選擇一個(gè)主機(jī)位置地址,并返回所選擇的目的主機(jī)的主機(jī)位置地址給源主機(jī),完成ARP地址解析。如果在全局位置地址表沒有找到與目的主機(jī)的IP地址對(duì)應(yīng)的主機(jī)位置地址,架構(gòu)管理器可以進(jìn)行全網(wǎng)絡(luò)的廣播,獲得目的主機(jī)的一個(gè)或者多個(gè)主機(jī)位置地址,并采用調(diào)度算法從所獲得的一個(gè)或者多個(gè)主機(jī)位置地址中選擇一個(gè)主機(jī)位置地址,并返回所選擇的目的主機(jī)的主機(jī)位置地址給源主機(jī),完成ARP地址解析。由于架構(gòu)管理器的參與,大部分情況下不需要進(jìn)行全網(wǎng)廣播。
另外,因?yàn)閿?shù)據(jù)中心中包含了成千上萬臺(tái)服務(wù)器和交換機(jī),并且經(jīng)常支撐著數(shù)據(jù)密集型應(yīng)用,因此對(duì)數(shù)據(jù)中心網(wǎng)絡(luò)的容錯(cuò)性要求比較高。本發(fā)明由于采用了與一個(gè)交換機(jī)對(duì)應(yīng)的一個(gè)或多個(gè)交換機(jī)位置地址,可以方便地提供容錯(cuò)性。交換機(jī)之間通過定期交換Keep Alive消息來檢測(cè)鄰居交換機(jī)的運(yùn)行狀態(tài)(可以由交換機(jī)中的故障檢測(cè)單元完成)。當(dāng)交換機(jī)或者鏈路出現(xiàn)故障時(shí),相鄰交換機(jī)的故障檢測(cè)單元可以檢測(cè)到此故障并報(bào)告給架構(gòu)管理器,故障處理單元1430將全局位置地址表中相應(yīng)的主機(jī)位置地址設(shè)為失效。這樣,在處理稍后的ARP請(qǐng)求時(shí),調(diào)度單元1420就不再選擇被設(shè)為失效的主機(jī)位置地址,而是選擇其他有效的主機(jī)位置地址,來完成ARP地址解析。這里所公開的本發(fā)明實(shí)施例的其他設(shè)置包括執(zhí)行在先概述并隨后詳述的方法實(shí)施例的步驟和操作的軟件程序。更具體地,計(jì)算機(jī)程序產(chǎn)品是如下的一種實(shí)施例具有計(jì)算機(jī)可讀介質(zhì),計(jì)算機(jī)可讀介質(zhì)上編碼有計(jì)算機(jī)程序邏輯,當(dāng)在計(jì)算設(shè)備上執(zhí)行時(shí),計(jì)算機(jī)程序邏輯提供相關(guān)的操作,從而提供上述編址方案。當(dāng)在計(jì)算系統(tǒng)的至少一個(gè)處理器上執(zhí)行時(shí),計(jì)算機(jī)程序邏輯使得處理器執(zhí)行本發(fā)明實(shí)施例所述的操作(方法)。本發(fā)明的這種設(shè)置典型地提供為設(shè)置或編碼在例如光介質(zhì)(例如CD-ROM)、軟盤或硬盤等的計(jì)算機(jī)可讀介質(zhì)上的軟件、代碼和/或其他數(shù)據(jù)結(jié)構(gòu)、或者諸如一個(gè)或多個(gè)ROM或RAM或PROM芯片上的固件或微代碼的其他介質(zhì)、或?qū)S眉呻娐?ASIC)、或一個(gè)或多個(gè)模塊中的可下載的軟件圖像、共享數(shù)據(jù)庫(kù)等。軟件或固件或這種配置可安裝在計(jì)算設(shè)備上,以使得計(jì)算設(shè)備中的一個(gè)或多個(gè)處理器執(zhí)行本發(fā)明實(shí)施例所述的技術(shù)。結(jié)合諸如一組數(shù)據(jù)通信設(shè)備或其他實(shí)體中的計(jì)算設(shè)備進(jìn)行操作的軟件過程也可以提供根據(jù)本發(fā)明的編址裝置。根據(jù)本發(fā)明的編址裝置也可以分布在多個(gè)數(shù)據(jù)通信設(shè)備上的多個(gè)軟件過程、或者在一組小型專用計(jì)算機(jī)上運(yùn)行的所有軟件過程、或者單個(gè)計(jì)算機(jī)上運(yùn)行的所有軟件過程之間。應(yīng)該理解,嚴(yán)格地講,本發(fā)明的實(shí)施例可以實(shí)現(xiàn)為數(shù)據(jù)處理設(shè)備上的軟件程序、軟件和硬件、或者單獨(dú)的軟件和/或單獨(dú)的電路。至此已經(jīng)結(jié)合優(yōu)選實(shí)施例對(duì)本發(fā)明進(jìn)行了描述。應(yīng)該理解,本領(lǐng)域技術(shù)人員在不脫離本發(fā)明的精神和范圍的情況下,可以進(jìn)行各種其它的改變、替換和添加。因此,本發(fā)明的范圍不局限于上述特定實(shí)施例,而應(yīng)由所附權(quán)利要求所限定 。
權(quán)利要求
1.一種編址裝置,包括 樹創(chuàng)建単元,用于依次以每個(gè)交換機(jī)為根,通過網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)功能,創(chuàng)建包含所有主機(jī)的樹,由此,得到多棵樹; 樹選擇単元,用于從所述樹創(chuàng)建単元所創(chuàng)建的多棵樹中選擇具有最小高度的樹;以及地址分配単元,用于針對(duì)由所述樹選擇單元所選擇的每ー棵具有最小高度的樹,為網(wǎng)絡(luò)中每個(gè)交換機(jī)和每個(gè)主機(jī)分配地址。
2.根據(jù)權(quán)利要求I所述的編址裝置,其中 當(dāng)以ー個(gè)交換機(jī)為根,能夠創(chuàng)建出多棵包含所有主機(jī)的樹時(shí),所述樹創(chuàng)建単元選擇以此交換機(jī)為根、高度最小的任意ー棵樹,作為所創(chuàng)建的樹。
3.根據(jù)權(quán)利要求I所述的編址裝置,其中 當(dāng)以ー個(gè)交換機(jī)為根,能夠創(chuàng)建出多棵包含所有主機(jī)的樹時(shí),所述樹創(chuàng)建単元記錄所有這多棵樹,作為所創(chuàng)建的樹。
4.根據(jù)權(quán)利要求I 3之一所述的編址裝置,其中 當(dāng)存在多棵高度相同的最小高度的樹時(shí),所述樹選擇單元選擇所有這多棵最小高度的樹。
5.根據(jù)權(quán)利要求I 4之一所述的編址裝置,其中所述地址分配單元針對(duì)由所述樹選擇單元所選擇的姆ー棵具有最小高度H的樹,為位于所述樹的根節(jié)點(diǎn)的根交換機(jī),也稱為第O層交換機(jī),分配根交換機(jī)位置地址;從與所述根交換機(jī)直接相連的第I層交換機(jī)開始,針對(duì)與第i_l層交換機(jī)直接相連的每ー個(gè)第i層交換機(jī),找出從所述根交換機(jī)到達(dá)此第i層交換機(jī)的所有路徑,針對(duì)每條路徑,為此第i層交換機(jī)分配ー個(gè)第i層交換機(jī)位置地址,其格式為“根交換機(jī)位置地址.第I層交換機(jī)地址.···.第i層交換機(jī)地址”,其中I彡i彡H-2 ; 為每個(gè)主機(jī)分配主機(jī)位置地址,其格式為“邊緣交換機(jī)位置地址.主機(jī)地址”,其中邊緣交換機(jī)是與主機(jī)直接相連的第k層交換機(jī),O < k < H-2。
6.根據(jù)權(quán)利要求5所述的編址裝置,其中 第i層交換機(jī)地址是第i_l層交換機(jī)與每ー個(gè)第i層交換機(jī)相連的端ロ的端口號(hào)。
7.根據(jù)權(quán)利要求5或6所述的編址裝置,其中 主機(jī)地址是邊緣交換機(jī)與每ー個(gè)主機(jī)相連的端ロ的端ロ號(hào)。
8.—種編址方法,包括 依次以每個(gè)交換機(jī)為根,通過網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)功能,創(chuàng)建包含所有主機(jī)的樹,由此,得到多棵樹; 從所創(chuàng)建的多棵樹中選擇具有最小高度的樹;以及 針對(duì)所選擇的每ー棵具有最小高度的樹,為網(wǎng)絡(luò)中每個(gè)交換機(jī)和每個(gè)主機(jī)分配地址。
9.根據(jù)權(quán)利要求8所述的編址方法,其中 當(dāng)以一個(gè)交換機(jī)為根,能夠創(chuàng)建出多棵包含所有主機(jī)的樹時(shí),選擇以此交換機(jī)為根、高度最小的任意ー棵樹,作為所創(chuàng)建的樹。
10.根據(jù)權(quán)利要求8所述的編址方法,其中 當(dāng)以ー個(gè)交換機(jī)為根,能夠創(chuàng)建出多棵包含所有主機(jī)的樹時(shí),記錄所有這多棵樹,作為所創(chuàng)建的樹。
11.根據(jù)權(quán)利要求8 10之一所述的編址方法,其中 當(dāng)存在多棵高度相同的最小高度的樹時(shí),選擇所有這多棵最小高度的樹。
12.根據(jù)權(quán)利要求8 11之一所述的編址方法,其中 針對(duì)所選擇的每ー棵具有最小高度H的樹, 為位于所述樹的根節(jié)點(diǎn)的根交換機(jī),也稱為第O層交換機(jī),分配根交換機(jī)位置地址; 從與所述根交換機(jī)直接相連的第I層交換機(jī)開始,針對(duì)與第i_l層交換機(jī)直接相連的每ー個(gè)第i層交換機(jī),找出從所述根交換機(jī)到達(dá)此第i層交換機(jī)的所有路徑,針對(duì)每條路徑,為此第i層交換機(jī)分配ー個(gè)第i層交換機(jī)位置地址,其格式為“根交換機(jī)位置地址.第I層交換機(jī)地址.···.第i層交換機(jī)地址”,其中I彡i彡H-2 ; 為每個(gè)主機(jī)分配主機(jī)位置地址,其格式為“邊緣交換機(jī)位置地址.主機(jī)地址”,其中邊緣交換機(jī)是與主機(jī)直接相連的第k層交換機(jī),O < k < H-2。
13.根據(jù)權(quán)利要求12所述的編址方法,其中 第i層交換機(jī)地址是第i_l層交換機(jī)與每ー個(gè)第i層交換機(jī)相連的端ロ的端口號(hào)。
14.根據(jù)權(quán)利要求12或13所述的編址方法,其中 主機(jī)地址是邊緣交換機(jī)與每ー個(gè)主機(jī)相連的端ロ的端ロ號(hào)。
15.一種架構(gòu)管理器,包括 根據(jù)權(quán)利要求I 7之一所述的編址裝置;以及 存儲(chǔ)器,用于存儲(chǔ)全局位置地址表,所述全局位置地址表包括了每ー個(gè)主機(jī)的因特網(wǎng)協(xié)議地址與所述主機(jī)的所有主機(jī)位置地址之間的映射。
16.根據(jù)權(quán)利要求15所述的架構(gòu)管理器,還包括 調(diào)度單元,用于在收到地址解析協(xié)議請(qǐng)求時(shí),以目的主機(jī)的因特網(wǎng)協(xié)議地址為索引查找所述全局位置地址表,井根據(jù)調(diào)度算法,從所找到的與目的主機(jī)的因特網(wǎng)協(xié)議地址對(duì)應(yīng)的一個(gè)或者多個(gè)主機(jī)位置地址中選擇ー個(gè)主機(jī)位置地址返回給源主機(jī),完成地址解析協(xié)議地址解析。
17.根據(jù)權(quán)利要求16所述的架構(gòu)管理器,其中 當(dāng)未能從所述全局位置地址表找到與目的主機(jī)的因特網(wǎng)協(xié)議地址對(duì)應(yīng)的主機(jī)位置地址時(shí),所述調(diào)度單元進(jìn)行全網(wǎng)絡(luò)的廣播,獲得目的主機(jī)的一個(gè)或者多個(gè)主機(jī)位置地址,再根據(jù)調(diào)度算法,從所獲得的與目的主機(jī)的因特網(wǎng)協(xié)議地址對(duì)應(yīng)的一個(gè)或者多個(gè)主機(jī)位置地址中選擇ー個(gè)主機(jī)位置地址返回給源主機(jī),完成地址解析協(xié)議地址解析。
18.根據(jù)權(quán)利要求16或17所述的架構(gòu)管理器,還包括 故障處理單元,用于在交換機(jī)檢測(cè)到相鄰交換機(jī)或鏈路發(fā)生故障時(shí),將全局位置地址表中相應(yīng)的主機(jī)位置地址設(shè)為失效, 其中所述調(diào)度単元在選擇與目的主機(jī)的因特網(wǎng)協(xié)議地址對(duì)應(yīng)的主機(jī)位置地址時(shí),不選擇被設(shè)為失效的主機(jī)位置地址。
19.一種交換機(jī),包括根據(jù)權(quán)利要求I 7之一所述的編址裝置。
20.ー種數(shù)據(jù)路由方法,采用了根據(jù)權(quán)利要求14所述的編址方法編址的交換機(jī)位置地址和主機(jī)位置地址,所述數(shù)據(jù)路由方法包括 根交換機(jī)/第O層交換機(jī)將包含了 “根交換機(jī)位置地址.第I層交換機(jī)地址/主機(jī)地址.*”作為目的主機(jī)的主機(jī)位置地址的數(shù)據(jù)包轉(zhuǎn)發(fā)至端口號(hào)為“第I層交換機(jī)地址/主機(jī)地址”的端ロ ; 第i層交換機(jī)將包含了“第i層交換機(jī)位置地址.第i+1層交換機(jī)地址/主機(jī)地址.作為目的主機(jī)的主機(jī)位置地址的數(shù)據(jù)包轉(zhuǎn)發(fā)至端口號(hào)為“第i+1層交換機(jī)地址/主機(jī)地址”的端ロ,其中I≤i≤H-2 ;以及 第i層交換機(jī)將包含了 “根交換機(jī)位置地址.*”作為目的主機(jī)的主機(jī)位置地址的數(shù)據(jù)包轉(zhuǎn)發(fā)至與以具有“根交換機(jī)位置地址”作為根交換機(jī)位置地址的根交換機(jī)為根節(jié)點(diǎn)的第i-Ι層交換機(jī)相連的端ロ,其中I≤i≤H-2。
全文摘要
本發(fā)明提出了一種用于數(shù)據(jù)中心網(wǎng)絡(luò)的編址方法、編址裝置、架構(gòu)管理器、交換機(jī)和數(shù)據(jù)路由方法。根據(jù)本發(fā)明的編址裝置,包括樹創(chuàng)建單元,用于依次以每個(gè)交換機(jī)為根,通過網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)功能,創(chuàng)建包含所有主機(jī)的樹,由此,得到多棵樹;樹選擇單元,用于從所述樹創(chuàng)建單元所創(chuàng)建的多棵樹中選擇具有最小高度的樹;以及地址分配單元,用于針對(duì)由所述樹選擇單元所選擇的每一棵具有最小高度的樹,為網(wǎng)絡(luò)中每個(gè)交換機(jī)和每個(gè)主機(jī)分配地址。本發(fā)明適用于數(shù)據(jù)中心所采用的多種網(wǎng)絡(luò)拓?fù)洌蓪?shí)現(xiàn)位置地址的聚合,以減小轉(zhuǎn)發(fā)表,而且能夠容易地實(shí)現(xiàn)網(wǎng)絡(luò)負(fù)載均衡。
文檔編號(hào)H04L29/12GK102694720SQ20111007713
公開日2012年9月26日 申請(qǐng)日期2011年3月24日 優(yōu)先權(quán)日2011年3月24日
發(fā)明者劉永強(qiáng), 夏勇, 胡艷, 黃權(quán) 申請(qǐng)人:日電(中國(guó))有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1