基于流的覆蓋網(wǎng)絡(luò)的制作方法
【專利摘要】本發(fā)明公開涉及基于流的覆蓋網(wǎng)絡(luò)。在一種實施例中,一種用于給覆蓋網(wǎng)絡(luò)中的流量分類的系統(tǒng)包括:處理器,適于執(zhí)行邏輯;適于接收覆蓋分組的邏輯;適于確定覆蓋分組和/或覆蓋分組的一個或多個內(nèi)部分組的至少一個特性以便給覆蓋分組分類的邏輯;適于把流標(biāo)識符關(guān)聯(lián)到覆蓋分組的邏輯、適于確定與流標(biāo)識符關(guān)聯(lián)的一個或多個策略的邏輯,其中一個或多個策略基于覆蓋分組和/或覆蓋分組的一個或多個內(nèi)部分組的至少一個特性;及適于把流標(biāo)識符存儲在覆蓋分組的頭中的邏輯。根據(jù)其它實施例給出了用于給覆蓋網(wǎng)絡(luò)中的流量分類的更多系統(tǒng)、方法與計算機程序產(chǎn)品。
【專利說明】基于流的覆蓋網(wǎng)絡(luò)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)中心基礎(chǔ)設(shè)施,更具體地,本發(fā)明涉及基于流的覆蓋網(wǎng)絡(luò)(overlay network)體系結(jié)構(gòu)及其部件。
【背景技術(shù)】
[0002]網(wǎng)絡(luò)虛擬化是新興數(shù)據(jù)中心與云計算趨勢,其目標(biāo)是以大大簡化多租戶環(huán)境及傳統(tǒng)環(huán)境中的網(wǎng)絡(luò)供應(yīng)的方式虛擬化終端站看到的網(wǎng)絡(luò)。實現(xiàn)網(wǎng)絡(luò)虛擬化的更多常見技術(shù)中的一種是使用網(wǎng)絡(luò)覆蓋,其中在服務(wù)器、邊緣網(wǎng)絡(luò)交換機和終端站所連接到的網(wǎng)關(guān)之間建立隧道。隧道實際上是通過將源終端站發(fā)送的分組封裝到覆蓋頭中實現(xiàn)的,其中覆蓋頭把來自源交換機的分組經(jīng)基于互聯(lián)網(wǎng)協(xié)議(IP)的網(wǎng)絡(luò)以用戶數(shù)據(jù)報協(xié)議(UDP)傳輸傳輸?shù)侥繕?biāo)交換機。覆蓋頭包括唯一識別虛擬網(wǎng)絡(luò)的標(biāo)識符(ID)。目標(biāo)交換機剝離覆蓋頭封裝、UDP傳輸頭和IP頭,并且把原始分組交給目標(biāo)終端站。除了這種隧道機制,邊緣交換機也參與到地址發(fā)現(xiàn)協(xié)議,這種協(xié)議可以是基于學(xué)習(xí)/洪泛的,或者基于查找的。
[0003]像虛擬可擴(kuò)展局域網(wǎng)(VXLAN)的覆蓋網(wǎng)絡(luò)利用隧道在地理上連接分離的層-2(L2)網(wǎng)絡(luò)。這些是層3 (L3)隧道之上的L2。源自VXLAN中的虛擬機(VM)并且目的地是位于另一物理位置的同一 VXLAN中的另一個VM或VM組的L2分組在L3隧道之上攜帶。
[0004]覆蓋網(wǎng)絡(luò)很復(fù)雜,難以管理。這種復(fù)雜性的一個原因是網(wǎng)絡(luò)管理員管理網(wǎng)絡(luò),而服務(wù)器管理員管理服務(wù)器。網(wǎng)絡(luò)與服務(wù)器管理員需要一起工作,來管理覆蓋網(wǎng)絡(luò),其中覆蓋網(wǎng)絡(luò)可以使用覆蓋體系結(jié)構(gòu)中的這兩種實體。這種增加的復(fù)雜性可能導(dǎo)致誤傳,從而導(dǎo)致有些任務(wù)被執(zhí)行兩次,而有些任務(wù)沒有執(zhí)行(因為一個管理員可能假設(shè)另一個管理員在處理它),及由于需要合作而導(dǎo)致的整體延遲。因而,具有可以被一個管理員管理的覆蓋網(wǎng)絡(luò)將是有益的。
【發(fā)明內(nèi)容】
[0005]在一種實施例中,一種系統(tǒng)包括:處理器,適于執(zhí)行邏輯;適于確定與覆蓋分組關(guān)聯(lián)的流標(biāo)識符的邏輯;適于確定與所述流標(biāo)識符關(guān)聯(lián)的一個或多個策略的邏輯;及適于應(yīng)用與所述流標(biāo)識符關(guān)聯(lián)的一個或多個策略的邏輯;其中,所述流標(biāo)識符存儲在所述覆蓋分組的頭中。
[0006]在另一種實施例中,一種用于給覆蓋網(wǎng)絡(luò)中的流量分類的系統(tǒng),所述系統(tǒng)包括:處理器,適于執(zhí)行邏輯;適于接收覆蓋分組的邏輯;適于確定覆蓋分組和/或所述覆蓋分組的一個或多個內(nèi)部分組的至少一個特性以便給所述覆蓋分組分類的邏輯;適于把流標(biāo)識符關(guān)聯(lián)到覆蓋分組的邏輯;適于確定與流標(biāo)識符關(guān)聯(lián)的一個或多個策略的邏輯,其中所述一個或多個策略基于所述覆蓋分組和/或所述覆蓋分組的一個或多個內(nèi)部分組的至少一個特性;及適于把所述流標(biāo)識符存儲在所述覆蓋分組的頭中的邏輯。
[0007]在還有另一種實施例中,一種用于管理覆蓋網(wǎng)絡(luò)中的流量的方法,所述方法包括:確定與覆蓋分組關(guān)聯(lián)的流標(biāo)識符;確定與所述流標(biāo)識符關(guān)聯(lián)的一個或多個策略;及應(yīng)用與所述流標(biāo)識符關(guān)聯(lián)的一個或多個策略;其中,所述流標(biāo)識符存儲在所述覆蓋分組的頭中。
[0008]根據(jù)另一種實施例,一種用于給覆蓋網(wǎng)絡(luò)中的流量分類的方法,所述方法包括:接收覆蓋分組;確定所述覆蓋分組和/或所述覆蓋分組的一個或多個內(nèi)部分組的至少一個特性,以便給所述覆蓋分組分類;把流標(biāo)識符關(guān)聯(lián)到所述覆蓋分組;確定與所述流標(biāo)識符關(guān)聯(lián)的一個或多個策略,其中所述一個或多個策略基于所述覆蓋分組和/或所述覆蓋分組的一個或多個內(nèi)部分組的至少一個特性;及把所述流標(biāo)識符存儲在所述覆蓋分組的頭中。
[0009]在還有另一種實施例中,一種用于管理覆蓋網(wǎng)絡(luò)上的流量的計算機程序產(chǎn)品包括:具有體現(xiàn)在其中的計算機可讀程序代碼的計算機可讀存儲介質(zhì),該計算機可讀程序代碼包括:配置成確定與覆蓋分組關(guān)聯(lián)的流標(biāo)識符的計算機可讀程序代碼;配置成確定與流標(biāo)識符關(guān)聯(lián)的一個或多個策略的計算機可讀程序代碼;及配置成應(yīng)用與流標(biāo)識符關(guān)聯(lián)的一個或多個策略的計算機可讀程序代碼,其中流標(biāo)識符存儲在所述覆蓋分組的頭中。
[0010]從以下具體描述中,本發(fā)明的其它方面和實施例將變得顯而易見,以下具體描述連同附圖一起通過例子說明本發(fā)明的原理。
【專利附圖】
【附圖說明】
[0011]圖1說明了根據(jù)一種實施例的網(wǎng)絡(luò)體系結(jié)構(gòu)。
[0012]圖2示出了根據(jù)一種實施例的、可以與圖1的服務(wù)器和/或客戶端關(guān)聯(lián)的代表性硬件環(huán)境。
[0013]圖3是根據(jù)一種實施例的虛擬化數(shù)據(jù)中心的簡化圖。
[0014]圖4示出了根據(jù)一種實施例的系統(tǒng)。
[0015]圖5是根據(jù)一種實施例的方法的流程圖。
[0016]圖6是根據(jù)一種實施例的方法的流程圖。
[0017]圖7A是根據(jù)一種實施例的示例性策略數(shù)據(jù)庫。
[0018]圖7B是根據(jù)一種實施例的示例性流與策略數(shù)據(jù)庫。
[0019]圖8包括根據(jù)一種實施例的、包括流標(biāo)識符的覆蓋分組幀格式的簡化示意圖。
具體實施例方式
[0020]進(jìn)行以下描述是為了說明本發(fā)明的通用原理而不是要限制在此要求保護(hù)的發(fā)明性概念。另外,在此所述的特定特征可以結(jié)合其它所述特征以各種可能組合與置換中的每
一種一起使用。
[0021]除非在這里另外具體定義,所有術(shù)語都要賦予其最廣泛的可能解釋,包括本說明書暗示的意義及本領(lǐng)域技術(shù)人員可以理解和/或在字典、論文等中定義的意義。
[0022]還必須指出,如在說明書和所附權(quán)利要求中所使用的,除非另外規(guī)定,否則單數(shù)形式“一個”和“這個”也包括復(fù)數(shù)個被指對象。
[0023]在一種方法中,覆蓋網(wǎng)絡(luò)可以由集中式或分布式控制器控制,由此允許策略和規(guī)定(provisioning)提供給覆蓋流量的內(nèi)部分組。在一種這樣的實施例中,控制器可以遵守在軟件定義的網(wǎng)絡(luò)(SDN)中運行的OpenFlow標(biāo)準(zhǔn)。
[0024]在一種通用實施例中,一種系統(tǒng)包括:處理器,適于執(zhí)行邏輯;適于確定與覆蓋分組關(guān)聯(lián)的流標(biāo)識符的邏輯;適于確定與所述流標(biāo)識符關(guān)聯(lián)的一個或多個策略的邏輯;及適于應(yīng)用與所述流標(biāo)識符關(guān)聯(lián)的一個或多個策略的邏輯;其中,所述流標(biāo)識符存儲在所述覆蓋分組的頭中。
[0025]在另一種通用實施例中,一種用于給覆蓋網(wǎng)絡(luò)中的流量分類的系統(tǒng),所述系統(tǒng)包括:處理器,適于執(zhí)行邏輯;適于接收覆蓋分組的邏輯;適于確定覆蓋分組和/或所述覆蓋分組的一個或多個內(nèi)部分組的至少一個特性以便給所述覆蓋分組分類的邏輯;適于把流標(biāo)識符關(guān)聯(lián)到覆蓋分組的邏輯;適于確定與流標(biāo)識符關(guān)聯(lián)的一個或多個策略的邏輯,其中所述一個或多個策略基于所述覆蓋分組和/或所述覆蓋分組的一個或多個內(nèi)部分組的至少一個特性;及適于把所述流標(biāo)識符存儲在所述覆蓋分組的頭中的邏輯。
[0026]在還有另一種通用的實施例中,一種用于管理覆蓋網(wǎng)絡(luò)中的流量的方法,所述方法包括:確定與覆蓋分組關(guān)聯(lián)的流標(biāo)識符;確定與所述流標(biāo)識符關(guān)聯(lián)的一個或多個策略;及應(yīng)用與所述流標(biāo)識符關(guān)聯(lián)的一個或多個策略;其中,所述流標(biāo)識符存儲在所述覆蓋分組的頭中。
[0027]根據(jù)另一種通用實施例,一種用于給覆蓋網(wǎng)絡(luò)中的流量分類的方法,所述方法包括:接收覆蓋分組;確定所述覆蓋分組和/或所述覆蓋分組的一個或多個內(nèi)部分組的至少一個特性,以便給所述覆蓋分組分類;把流標(biāo)識符關(guān)聯(lián)到所述覆蓋分組;確定與所述流標(biāo)識符關(guān)聯(lián)的一個或多個策略,其中所述一個或多個策略基于所述覆蓋分組和/或所述覆蓋分組的一個或多個內(nèi)部分組的至少一個特性;及把所述流標(biāo)識符存儲在所述覆蓋分組的頭中。
[0028]在還有另一種通用實施例中,一種用于管理覆蓋網(wǎng)絡(luò)上的流量的計算機程序產(chǎn)品包括:具有體現(xiàn)在其中的計算機可讀程序代碼的計算機可讀存儲介質(zhì),該計算機可讀程序代碼包括:配置成確定與覆蓋分組關(guān)聯(lián)的流標(biāo)識符的計算機可讀程序代碼;配置成確定與流標(biāo)識符關(guān)聯(lián)的一個或多個策略的計算機可讀程序代碼;及配置成應(yīng)用與流標(biāo)識符關(guān)聯(lián)的一個或多個策略的計算機可讀程序代碼,其中流標(biāo)識符存儲在所述覆蓋分組的頭中。
[0029]所屬【技術(shù)領(lǐng)域】的技術(shù)人員知道,本發(fā)明的各個方面可以實現(xiàn)為系統(tǒng)、方法或計算機程序產(chǎn)品。因此,本發(fā)明的各個方面可以具體實現(xiàn)為以下形式,即:完全的硬件實施方式、完全的軟件實施方式(包括固件、駐留軟件、微代碼等),或硬件和軟件方面結(jié)合的實施方式,這里可以統(tǒng)稱為“邏輯”、“電路”、“模塊”或“系統(tǒng)”。此外,在一些實施例中,本發(fā)明的各個方面還可以實現(xiàn)為在一個或多個計算機可讀介質(zhì)中的計算機程序產(chǎn)品的形式,該計算機可讀介質(zhì)中包含計算機可讀的程序代碼。
[0030]可以采用一個或多個計算機可讀介質(zhì)的任意組合。計算機可讀介質(zhì)可以是計算機可讀信號介質(zhì)或者非臨時性的計算機可讀存儲介質(zhì)。非臨時性的計算機可讀存儲介質(zhì)例如可以是——但不限于——電、磁、光、電磁、紅外線、或半導(dǎo)體的系統(tǒng)、裝置或器件,或者以上的任意組合。非臨時性計算機可讀存儲介質(zhì)的更具體的例子(非窮舉的列表)包括以下:便攜式計算機磁盤、硬盤、隨機存取存儲器(RAM)、只讀存儲器(ROM)、可擦式可編程只讀存儲器(EPR0M或閃存)、便攜式緊湊磁盤只讀存儲器(⑶-ROM)、Blu-Ray盤只讀存儲器(BD-R0M)、光存儲器件、磁存儲器件、或者上述的任意合適組合。在本文件的背景中,非臨時性計算機可讀存儲介質(zhì)可以是任何能夠包含或存儲程序或應(yīng)用的有形介質(zhì),該程序或應(yīng)用可以被指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用。
[0031]計算機可讀的信號介質(zhì)可以包括在基帶中或者作為載波一部分傳播的數(shù)據(jù)信號,其中承載了計算機可讀的程序代碼。這種傳播的數(shù)據(jù)信號可以采用多種形式,包括一但不限于一電磁信號、光信號或上述的任意合適的組合。計算機可讀的信號介質(zhì)還可以是非易失性計算機可讀存儲介質(zhì)以外的任何計算機可讀介質(zhì),該計算機可讀介質(zhì)可以發(fā)送、傳播或者傳輸用于由指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用的程序,例如具有一個或多個有線、光纖等的電連接。
[0032]計算機可讀介質(zhì)上包含的程序代碼可以用任何適當(dāng)?shù)慕橘|(zhì)傳輸,包括一但不限于一無線、有線、光纜、射頻(RF)等等,或者上述的任意合適組合。
[0033]可以以一種或多種程序設(shè)計語言的任意組合來編寫用于執(zhí)行本發(fā)明操作的計算機程序代碼,所述程序設(shè)計語言包括面向?qū)ο蟮某绦蛟O(shè)計語言一諸如Java、Smalltalk、C++等,還包括常規(guī)的過程式程序設(shè)計語言一諸如“C”語言或類似的程序設(shè)計語言。程序代碼可以完全地在用戶計算機上執(zhí)行、部分地在用戶計算機上執(zhí)行、作為一個獨立的軟件包執(zhí)行、部分在用戶計算機上部分在遠(yuǎn)程計算機上執(zhí)行、或者完全在遠(yuǎn)程計算機或服務(wù)器上執(zhí)行。在涉及遠(yuǎn)程計算機的情形中,遠(yuǎn)程計算機或服務(wù)器可以通過任意種類的網(wǎng)絡(luò)一包括局域網(wǎng)(LAN)、存儲區(qū)域網(wǎng)(SAN)和/或廣域網(wǎng)(WAN),任何虛擬網(wǎng)絡(luò),或可以連接到外部計算機的連接,例如利用因特網(wǎng)服務(wù)提供上(ISP)通過因特網(wǎng)一連接到用戶計算機。
[0034]下面將參照根據(jù)本發(fā)明的各個實施例的方法、裝置(系統(tǒng))和計算機程序產(chǎn)品的流程圖和/或框圖描述本發(fā)明。應(yīng)當(dāng)理解,流程圖和/或框圖的每個方框以及流程圖和/或框圖中各方框的組合,都可以由計算機程序指令實現(xiàn)。這些計算機程序指令可以提供給通用計算機、專用計算機或其它可編程數(shù)據(jù)處理裝置的處理器,從而生產(chǎn)出一種機器,使得這些計算機程序指令在通過計算機或其它可編程數(shù)據(jù)處理裝置的處理器執(zhí)行時,產(chǎn)生了實現(xiàn)流程圖和/或框圖中的一個或多個方框中規(guī)定的功能/動作的裝置。
[0035]也可以把這些計算機程序指令存儲在計算機可讀介質(zhì)中,這些指令使得計算機、其它可編程數(shù)據(jù)處理裝置、或其他設(shè)備以特定方式工作,從而,存儲在計算機可讀介質(zhì)中的指令就產(chǎn)生出包括實現(xiàn)流程圖和/或框圖中的一個或多個方框中規(guī)定的功能/動作的指令的制造品(article of manufacture)0
[0036]也可以把計算機程序指令加載到計算機、其它可編程數(shù)據(jù)處理裝置、或其它設(shè)備上,使得在計算機、其它可編程數(shù)據(jù)處理裝置或其它設(shè)備上執(zhí)行一系列操作步驟,以產(chǎn)生計算機實現(xiàn)的過程,從而使得在計算機或其它可編程裝置上執(zhí)行的指令能夠提供實現(xiàn)流程圖和/或框圖中的一個或多個方框中規(guī)定的功能/操作的過程。
[0037]圖1說明了根據(jù)一種實施例的網(wǎng)絡(luò)體系結(jié)構(gòu)100。如圖1中所示,提供了多個遠(yuǎn)程網(wǎng)絡(luò)102,包括第一遠(yuǎn)程網(wǎng)絡(luò)104和第二遠(yuǎn)程網(wǎng)絡(luò)106。網(wǎng)關(guān)101可以稱合在遠(yuǎn)程網(wǎng)絡(luò)102與近端網(wǎng)絡(luò)108之間。在所給出的網(wǎng)絡(luò)體系結(jié)構(gòu)100的背景下,網(wǎng)絡(luò)104、106每個都可以采取任何形式,包括但不限于LAN、VLAN、諸如互聯(lián)網(wǎng)的WAN、公共交換電話網(wǎng)絡(luò)(PSTN)、內(nèi)部電話網(wǎng)絡(luò),等等。
[0038]在使用當(dāng)中,網(wǎng)關(guān)101承當(dāng)從遠(yuǎn)程網(wǎng)絡(luò)102到近端網(wǎng)絡(luò)108的進(jìn)入點。照此,網(wǎng)關(guān)101可以充當(dāng)能夠指引到達(dá)網(wǎng)關(guān)101的給定數(shù)據(jù)分組的路由器,還可以充當(dāng)對給定分組提供出入網(wǎng)關(guān)101的實際路徑的交換機。
[0039]還包括至少一個耦合到近端網(wǎng)絡(luò)108的數(shù)據(jù)服務(wù)器114,該數(shù)據(jù)服務(wù)器114還可以經(jīng)網(wǎng)關(guān)101從遠(yuǎn)程網(wǎng)絡(luò)102訪問。應(yīng)當(dāng)指出,數(shù)據(jù)服務(wù)器114可以包括任何類型的計算設(shè)備/組件。耦合到每個數(shù)據(jù)服務(wù)器114的是多個用戶設(shè)備116。這種用戶設(shè)備116可以包括臺式計算機、膝上型計算機、手持式計算機、打印機和/或任何其它類型的邏輯包含設(shè)備。應(yīng)當(dāng)指出,在有些實施例中,用戶設(shè)備111也可以直接耦合到任何網(wǎng)絡(luò)。
[0040]外圍設(shè)備120或外圍設(shè)備120的系列,例如傳真機、打印機、掃描儀、硬盤驅(qū)動器、聯(lián)網(wǎng)和/或本地存儲單元或系統(tǒng)等,可以耦合到網(wǎng)絡(luò)104、106、108中的一個或多個。應(yīng)當(dāng)指出,數(shù)據(jù)庫和/或附加部件可以供耦合到網(wǎng)絡(luò)104、106、108的任何類型的網(wǎng)絡(luò)元件使用或者集成到其中。在本描述的背景下,網(wǎng)絡(luò)元件可以指網(wǎng)絡(luò)的任何部件。
[0041]根據(jù)有些方法,在這里描述的方法與系統(tǒng)可以利用虛擬系統(tǒng)和/或模擬一個或多個其它系統(tǒng)的系統(tǒng)——諸如模擬IBM z/OS環(huán)境的UNIX系統(tǒng)、虛擬寄存MICROSOFT WINDOWS環(huán)境的UNIX系統(tǒng)、模擬IBM z/OS環(huán)境的MICROSOFT WINDOWS系統(tǒng),等等——實現(xiàn)和/或在其上實現(xiàn)。在有些實施例中,這種虛擬化和/或模擬可以通過使用VMWARE軟件來增強。
[0042]在更多的方法中,一個或多個網(wǎng)絡(luò)104、106、108可以代表統(tǒng)稱為“云”的系統(tǒng)群集。在云計算中,共享資源,諸如處理能力、外圍設(shè)備、軟件、數(shù)據(jù)、服務(wù)器等,按需提供給云中的任何系統(tǒng),由此允許跨許多計算系統(tǒng)對服務(wù)的訪問與分布。云計算一般涉及運行在云中的系統(tǒng)之間的互聯(lián)網(wǎng)連接,但是,如本領(lǐng)域中已知的,連接系統(tǒng)的其它技術(shù)也可以使用。
[0043]圖2示出了根據(jù)一種實施例、與圖1的用戶設(shè)備116和/或服務(wù)器114關(guān)聯(lián)的代表性硬件環(huán)境。根據(jù)幾種實施例,圖2說明了具有諸如微處理器的中央處理單元(CPU)210和經(jīng)一根或多根總線212互連的多個其它單元的工作站的典型硬件配置,其中的總線可以是不同類型,諸如本地總線、并行總線、串行總線等。其它類型的處理器也可以使用,諸如集成電路(1C)、專用集成電路(ASIC)、現(xiàn)場可編程門陣列(FPGA)或者本領(lǐng)域中已知的任何其它類型的處理器。
[0044]圖2中所示的工作站包括隨機存取存儲器(RAM) 214、只讀存儲器(ROM) 216、用于把諸如盤存儲單元220的外圍設(shè)備連接到一根或多根總線212的1/0適配器218、用于把鍵盤224、鼠標(biāo)226、揚聲器228、麥克風(fēng)232和/或諸如觸摸屏、數(shù)碼相機(未示出)等的其它用戶接口設(shè)備連接到一根或多根總線212的用戶接口適配器222、用于把工作站連接到通信網(wǎng)絡(luò)235 (例如,數(shù)據(jù)處理網(wǎng)絡(luò))的通信適配器234及用于把一根或多根總線212連接到顯示設(shè)備238的顯示適配器236。
[0045]工作站可以具有駐留在其上的操作系統(tǒng),諸如MICROSOFT WINDOWS操作系統(tǒng)
(OS)、MAC OS、UNIX OS等。應(yīng)當(dāng)認(rèn)識到,優(yōu)選實施例還可以在除所提到的那些之外的平臺與操作系統(tǒng)上實現(xiàn)。優(yōu)選實施例可以利用JAVA、XML、C和/或C++語言,或者其它編程語言,以及面向?qū)ο蟮木幊谭椒▉砭帉憽W兊萌找嬗脕黹_發(fā)復(fù)雜應(yīng)用的面向?qū)ο蟮木幊?00P)也可以使用。
[0046]現(xiàn)在參考圖3,示出了根據(jù)一種實施例的覆蓋網(wǎng)絡(luò)300的概念性視圖。為了虛擬化網(wǎng)絡(luò)服務(wù),除了簡單地在設(shè)備之間提供構(gòu)架路徑(連接性),當(dāng)分組移動通過網(wǎng)關(guān)314時,月艮務(wù)也可以在分組上提供,其中網(wǎng)關(guān)314提供在非虛擬網(wǎng)絡(luò)312和虛擬網(wǎng)絡(luò)A304與虛擬網(wǎng)絡(luò)B306之間移動的分組的路由與轉(zhuǎn)發(fā)。一個或多個虛擬網(wǎng)絡(luò)304、306存在于物理(實際)網(wǎng)絡(luò)基礎(chǔ)設(shè)施302中。網(wǎng)絡(luò)體系結(jié)構(gòu)302可以包括任何部件、硬件、軟件和/或一般與網(wǎng)絡(luò)基礎(chǔ)設(shè)施關(guān)聯(lián)和/或用在其中的功能,其中,如本領(lǐng)域技術(shù)人員將知道的,網(wǎng)絡(luò)基礎(chǔ)設(shè)施包括但不限于交換機、連接器、電線、電路、電纜、服務(wù)器、主機、存儲介質(zhì)、操作系統(tǒng)、應(yīng)用、端口、I/O等。這種網(wǎng)絡(luò)基礎(chǔ)設(shè)施302支持至少一個非虛擬網(wǎng)絡(luò)312,該非虛擬網(wǎng)絡(luò)可以是傳統(tǒng)網(wǎng)絡(luò)。
[0047]每個虛擬網(wǎng)絡(luò)304、306都可以使用任意數(shù)量的虛擬機(VM)308、310。在一種實施例中,虛擬網(wǎng)絡(luò)A304包括一個或多個VM308,而虛擬網(wǎng)絡(luò)B306包括一個或多個VM310。如圖3所示,VM308、310不是由虛擬網(wǎng)絡(luò)304、306共享的,而是在任何給定時刻都只包括在一個虛擬網(wǎng)絡(luò)304、306中。
[0048]根據(jù)一種實施例,覆蓋網(wǎng)絡(luò)300可以隧道通過與一個或多個分布式線卡(DLC)互連的一個或多個單元交換域可縮放架構(gòu)部件(Scalable Fabric Component, SFC)。
[0049]通過具有“平交換機”體系結(jié)構(gòu),多個VM可以既容易又有效地跨該體系結(jié)構(gòu)移動數(shù)據(jù)。通常,VM很難跨層3 (L3)域從一個子網(wǎng)移動到另一個子網(wǎng),從一個互聯(lián)網(wǎng)協(xié)議(IP)子網(wǎng)移動到另一個IP子網(wǎng),等等。但是,如果體系結(jié)構(gòu)類似于非常大的層2 (L2)域中的大型平交換機,那么就有助于VM嘗試跨體系結(jié)構(gòu)移動數(shù)據(jù)。
[0050]覆蓋網(wǎng)絡(luò)300的部件一般基于稱為VNI或者VNID的虛擬網(wǎng)絡(luò)標(biāo)識符識別把分組路由到哪里。這一般是24位的代碼或數(shù)字,除0x0和OxFFFFFF之外。覆蓋網(wǎng)絡(luò)300具有通過把L2分組封裝到覆蓋頭中在L3網(wǎng)絡(luò)之上隧道傳輸L2分組的能力。這可以利用虛擬可擴(kuò)展局域網(wǎng)(VXLAN)或者某種其它具有覆蓋能力的協(xié)議——諸如利用通用路由封裝的網(wǎng)絡(luò)虛擬化(NVGRE)定位器/ID分離協(xié)議(LISP)、覆蓋傳輸虛擬化(0TV),等等——來執(zhí)行。分組還可以封裝在用戶數(shù)據(jù)報協(xié)議(M)P)和互聯(lián)網(wǎng)協(xié)議(IP)UDP/IP頭中。覆蓋網(wǎng)絡(luò)300可以包括一個或多個點到點隧道,和/或點到多點隧道。此外,這些隧道中的任何一個都可以基于任意數(shù)量的因素來創(chuàng)建、除去、更改和修改,諸如將新設(shè)備添加到覆蓋網(wǎng)絡(luò)300、從覆蓋網(wǎng)絡(luò)300除去設(shè)備、任何終端設(shè)備的啟動,即,其中的終端設(shè)備是指管理隧道終端點的設(shè)備,諸如虛擬覆蓋網(wǎng)絡(luò)網(wǎng)關(guān)、虛擬機管理程序(Hypervisor)、具有覆蓋功能的交換機,等等。為了讓設(shè)備管理隧道,需要原始分組的源地址、目的地地址和隧道標(biāo)識符之間的映射。以這種方式,物理服務(wù)器能夠把封裝的原始分組轉(zhuǎn)發(fā)到適當(dāng)?shù)哪康牡卦O(shè)備。
[0051]根據(jù)各種實施例,覆蓋網(wǎng)絡(luò)上的源地址與目的地地址之間的、在這里被稱為流標(biāo)識符(ID)的唯一會話標(biāo)識符可以用于給流量分類并且更有效地管理覆蓋網(wǎng)絡(luò)。覆蓋網(wǎng)絡(luò)可以是VXLAN網(wǎng)絡(luò)、NVRGE網(wǎng)絡(luò)或者本領(lǐng)域中已知的任何其它覆蓋網(wǎng)絡(luò)。每個流ID可以是唯一的整數(shù),諸如8位整數(shù)、16位整數(shù)、32位整數(shù)、64位整數(shù)、128位整數(shù)、256位整數(shù),等等。覆蓋網(wǎng)絡(luò)中的每個交換節(jié)點能夠識別包括在由該交換節(jié)點接收到的覆蓋分組中的流ID。交換節(jié)點可以是覆蓋網(wǎng)關(guān)、有覆蓋能力的交換機、運行虛擬機管理程序的有覆蓋能力的服務(wù)器或者本領(lǐng)域中已知的任何其它合適的設(shè)備或軟件。
[0052]當(dāng)接收到具有與其關(guān)聯(lián)的流ID的覆蓋分組時,每個交換節(jié)點可以應(yīng)用與該流ID關(guān)聯(lián)的一個或多個策略,如隨后更具體地描述的。此外,所述策略指示關(guān)于包括或不包括識別出的流ID的分組要采取的一個或多個動作。如果沒有為一個流ID規(guī)定策略,就可以應(yīng)用缺省策略。
[0053]根據(jù)一種實施例,每個覆蓋分組都在該覆蓋分組中某個地方,例如在覆蓋分組的頭中,包括用于該覆蓋分組的關(guān)聯(lián)的流ID,如隨后更具體地描述的。具有覆蓋頭的每個分組都在分組中攜帶流ID作為覆蓋頭的一部分。
[0054]在另一種實施例中,關(guān)于多個流的多個流ID可以與單個策略關(guān)聯(lián)。此外,多個策略可以與單個流ID關(guān)聯(lián)。策略可以分組并且在組中應(yīng)用,而且一個或多個策略可以應(yīng)用到一組流ID。
[0055]策略可以存儲在策略數(shù)據(jù)庫中并且在其中檢索,對策略ID進(jìn)行索引。策略數(shù)據(jù)庫可以是集中式或分布式數(shù)據(jù)庫,包括關(guān)聯(lián)到本地覆蓋網(wǎng)絡(luò)、整個數(shù)據(jù)中心或者任何其它部分的策略。
[0056]策略可以被網(wǎng)絡(luò)管理員和/或服務(wù)器管理員添加、刪除和/或更新。策略或者其任何部分可以安全地傳送到網(wǎng)絡(luò)中所有的覆蓋交換實體。每個覆蓋交換元件可以把策略數(shù)據(jù)庫下載到其存儲器。標(biāo)準(zhǔn)的或?qū)S械膮f(xié)議可以用于策略服務(wù)器之間的交互。交換機強制執(zhí)行基于流ID發(fā)現(xiàn)的策略。
[0057]不是所有覆蓋交換機都需要完整的策略數(shù)據(jù)庫,因此策略服務(wù)器可以“智能地”決定策略數(shù)據(jù)庫的哪個部分要發(fā)送到每個單個的交換機,由此節(jié)省三元內(nèi)容可尋址存儲器(TCAM)和/或查找表空間。策略數(shù)據(jù)庫可以維護(hù)策略ID和關(guān)聯(lián)策略的表。它還保持流與策略數(shù)據(jù)庫中流ID與策略ID的映射。
[0058]根據(jù)各種備選實施例,分布式覆蓋虛擬以太網(wǎng)(DOVE)策略服務(wù)器可以在分類之后提供流ID。在一種方法中,流ID可以行政(administratively)管理,例如,管理員可以決定流并且在DOVE策略服務(wù)器分配流ID。在另一種方法中,流ID可以基于會話類型分配,例如,流ID= {VM MAC,域ID,應(yīng)用ID,等等}。例如,應(yīng)用ID可以在有效載荷傳輸層看到而且流可以基于應(yīng)用ID來分類。
[0059]現(xiàn)在參考圖4,示出了根據(jù)一種實施例的系統(tǒng)400。策略服務(wù)器402可以連接到一個或多個具有覆蓋能力的設(shè)備,諸如具有覆蓋能力的服務(wù)器418、用于在虛擬網(wǎng)絡(luò)416與覆蓋網(wǎng)絡(luò)之間橋接的虛擬覆蓋網(wǎng)絡(luò)網(wǎng)關(guān)414,等等。如所示出的,每個具有覆蓋能力的服務(wù)器418的虛擬機管理程序410能夠隧道通過覆蓋網(wǎng)絡(luò)到達(dá)其它具有覆蓋能力的設(shè)備。當(dāng)然,這是一種簡化的體系結(jié)構(gòu),而且可以存在多得多的隧道,而且覆蓋網(wǎng)絡(luò)中可以有多得多的具有覆蓋能力的設(shè)備(隧道發(fā)起或終止的地方),如本領(lǐng)域技術(shù)人員將理解的。
[0060]每個虛擬機管理程序410可以連接到任何數(shù)量的VM412。此外,覆蓋接口 406,諸如DOVE接口、VXLAN接口等,可以位于每個虛擬機管理程序410的下游側(cè)??梢蕴峁┨摂M覆蓋網(wǎng)絡(luò)網(wǎng)關(guān)414以在覆蓋網(wǎng)絡(luò)與存在的任何非虛擬化網(wǎng)絡(luò)416之間接口,可以為VXLAN或某種其它覆蓋網(wǎng)絡(luò)啟用任一個網(wǎng)關(guān)414。
[0061 ] 策略服務(wù)器402連接到策略數(shù)據(jù)庫404,策略數(shù)據(jù)庫404可以包括覆蓋網(wǎng)絡(luò)中的策略、策略ID和用于流的流ID。
[0062]在一種實施例中,當(dāng)覆蓋分組從識別出流ID的域發(fā)出時,該分組從域中發(fā)出的設(shè)備可以從覆蓋分組的頭中除去或者剝離流ID。
[0063]在另一種實施例中,如果一個特定策略是丟棄分組,則只有進(jìn)入的具有覆蓋能力的設(shè)備可以具有丟棄寫到它們的策略,而其它具有覆蓋能力的設(shè)備可能不能,從而節(jié)約存儲器空間。
[0064]具有覆蓋能力的服務(wù)器418、策略服務(wù)器402和/或虛擬覆蓋網(wǎng)絡(luò)網(wǎng)關(guān)414中的每一個都可以包括用于執(zhí)行邏輯的處理器,例如中央處理單元(CPU)、現(xiàn)場可編程門陣列(FPGA)、集成電路(IC)和專用集成電路(ASIC)或者本領(lǐng)域中已知的某種其它合適的處理器。[0065]根據(jù)一種實施例,訪問控制列表(ACL)可以被策略服務(wù)器402應(yīng)用來確定在接收到覆蓋分組時要采取的一個或多個動作。在一種實施例中,ACL可以指示要對覆蓋分組的內(nèi)部分組執(zhí)行的服務(wù)。如本領(lǐng)域技術(shù)人員將知道的,在許多其它的可能性當(dāng)中,本領(lǐng)域中已知的任何服務(wù)都可以應(yīng)用到內(nèi)部分組,諸如防火墻服務(wù)、防止入侵系統(tǒng)(IPS)服務(wù)、入侵檢測系統(tǒng)(IDS)、IPS/IDS服務(wù)、服務(wù)器負(fù)載平衡服務(wù)、LAN優(yōu)化服務(wù)、VPN服務(wù)、視頻優(yōu)化服務(wù)、網(wǎng)絡(luò)地址翻譯(NAT)服務(wù)、加密服務(wù)、解密服務(wù)等。這些服務(wù)中的每一種都可以獨立地被激活、獨立地被繞過或者手動選擇,如在起草ACL時系統(tǒng)管理員所希望的那樣。
[0066]在一種實施例中,策略服務(wù)器402可以遵守OpenFlow而且可能能夠經(jīng)識別出的覆蓋協(xié)議,諸如VXLAN、NVGRE等通信。還可以分配和管理流ID,而且可以確定在覆蓋分組沒有流ID時要采取的動作。此外,策略服務(wù)器402可以管理用于單個流ID的時間限制,使得流ID可以在某個時間量之后過期。此外,策略服務(wù)器402可以從具有覆蓋能力的設(shè)備接收消息,其指示已經(jīng)接收到與已過期的流ID關(guān)聯(lián)的流,而且,通過丟棄分組、重新分配流ID或者執(zhí)行某種其它動作,可以在情況發(fā)生時處理它。
[0067]對于多播覆蓋分組,策略服務(wù)器402可以把流ID分配給多播分組而且可以指示哪些設(shè)備接收多播分組及哪些設(shè)備不接收。
[0068]在另一種實施例中,策略服務(wù)器402可以連接到OpenFlow控制器420,該控制器420可以連接到多個非覆蓋交換機422。
[0069]現(xiàn)在參考圖5,示出了根據(jù)一種實施例的、用于管理覆蓋網(wǎng)絡(luò)上的流量的方法500的流程圖。在各種實施例中,方法500可以根據(jù)本發(fā)明在圖1-4、7A-7B和8中所繪出的任一環(huán)境中執(zhí)行。當(dāng)然,比圖5中具體描述的那些更多或更少的操作可以包括在方法500中,如本領(lǐng)域技術(shù)人員在閱讀本描述時將理解的。
[0070]方法500的每個步驟都可以由操作環(huán)境的任何合適部件執(zhí)行。例如,在一種實施例中,在各種非限制性方法中,方法500可以部分或完全地由覆蓋交換機、處理器(諸如CPU、ASIC、FPGA等)、端點站(諸如虛擬機管理程序、虛擬覆蓋網(wǎng)絡(luò)網(wǎng)關(guān)設(shè)備、能夠發(fā)起或終止隧道的覆蓋交換機等)或者嵌入在計算機可讀存儲介質(zhì)中的計算機程序代碼執(zhí)行。
[0071]如圖5中所示,方法500可以以操作502開始,其中確定與覆蓋分組關(guān)聯(lián)的流標(biāo)識符。在一種方法中,流標(biāo)識符可以存儲在覆蓋分組的頭中。具體而言,流標(biāo)識符可以存儲在覆蓋分組的覆蓋網(wǎng)絡(luò)頭、最外面的L2頭、最外面的IP頭或者最外面的UDP頭中。對于流標(biāo)識符可以存儲在什么地方的細(xì)節(jié),參考圖8。
[0072]在一種實施例中,如果沒有流標(biāo)識符與覆蓋分組關(guān)聯(lián),則覆蓋分組可以發(fā)送到策略服務(wù)器,進(jìn)行進(jìn)一步的處理,或者它可以根據(jù)缺省處理指令被丟棄。在一種實施例中,連同覆蓋網(wǎng)關(guān)一起,策略服務(wù)器可以遵守OpenFlow標(biāo)準(zhǔn)而且可以在覆蓋網(wǎng)絡(luò)中每個具有覆蓋能力的服務(wù)器上與DOVE接口通信。
[0073]再次參考圖5,在操作504中,確定與流標(biāo)識符關(guān)聯(lián)的一個或多個策略。本領(lǐng)域中已知的用于確定策略的任何方法都可以使用,諸如一個流標(biāo)識符與一個策略之間的一對一關(guān)系、一個流標(biāo)識符與多個策略之間的一對多關(guān)系、多個流標(biāo)識符與單個策略之間的多對
一關(guān)系,等等。
[0074]在一種實施例中,如果沒有策略與流標(biāo)識符關(guān)聯(lián),則覆蓋分組可以發(fā)送到策略服務(wù)器以進(jìn)行進(jìn)一步的處理,或者它可以根據(jù)缺省的處理指令被丟棄。[0075]在另一種實施例中,一個或多個策略可以在一個或多個ACL中指示。根據(jù)一種實施例,可以應(yīng)用ACL,來確定在接收到覆蓋分組時要采取的一個或多個動作。
[0076]在還有另一種實施例中,每個ACL可以指示要對覆蓋分組的內(nèi)部分組執(zhí)行的服務(wù)。如本領(lǐng)域技術(shù)人員將知道的,在許多其它的可能性當(dāng)中,本領(lǐng)域中已知的任何服務(wù)都可以應(yīng)用到內(nèi)部分組,諸如防火墻服務(wù)、防止入侵系統(tǒng)(IPS)服務(wù)、入侵檢測系統(tǒng)(IDS)、IPS/IDS服務(wù)、服務(wù)器負(fù)載平衡服務(wù)、LAN優(yōu)化服務(wù)、VPN服務(wù)、視頻優(yōu)化服務(wù)、網(wǎng)絡(luò)地址翻譯(NAT)服務(wù)、加密服務(wù)、解密服務(wù)等。這些服務(wù)中的每一種都可以獨立地被激活、獨立地被繞過或者手動選擇,如在起草ACL時系統(tǒng)管理員所希望的那樣。
[0077]在操作506中,應(yīng)用與流標(biāo)識符關(guān)聯(lián)的一個或多個策略。一個或多個策略的應(yīng)用可以包括確定每個策略指示什么作為要執(zhí)行的動作。有些示例性動作包括,但不限于,關(guān)于如何處理覆蓋分組或者其內(nèi)部分組的指示、關(guān)于要對覆蓋分組或者其內(nèi)部分組做什么的指令、關(guān)于要把覆蓋分組或者其內(nèi)部分組發(fā)送到哪里的路由信息、要把覆蓋分組或者其內(nèi)部分組轉(zhuǎn)發(fā)到哪里的交換信息、確定關(guān)于覆蓋分組或者其內(nèi)部分組的進(jìn)一步特性、要對覆蓋分組或者其內(nèi)部分組執(zhí)行的服務(wù)或者響應(yīng)接收到覆蓋分組要采取的任何其它適當(dāng)動作。
[0078]在一種實施例中,應(yīng)用與流標(biāo)識符關(guān)聯(lián)的一個或多個策略可以包括:對覆蓋分組(并且有可能對其一個或多個內(nèi)部分組)執(zhí)行特定于策略的動作,包括把覆蓋分組和/或其一個或多個內(nèi)部分組轉(zhuǎn)發(fā)到在一個或多個策略中規(guī)定的設(shè)備。以這種方式,覆蓋分組可以路由到能夠?qū)Ω采w分組或者對其一個或多個內(nèi)部分組執(zhí)行某種動作的設(shè)備。
[0079]根據(jù)另一種實施例,方法500還可以包括在接收覆蓋分組之前從策略服務(wù)器接收一組流標(biāo)識符和關(guān)聯(lián)的策略標(biāo)識符,并且把這組流標(biāo)識符和關(guān)聯(lián)的策略標(biāo)識符存儲在策略與流數(shù)據(jù)庫中。這組流標(biāo)識符可以對應(yīng)于用于接收這組流標(biāo)識符和關(guān)聯(lián)的策略標(biāo)識符的特定設(shè)備的典型覆蓋流量。在其它實施例中,這組流標(biāo)識符可以包括用于整個覆蓋網(wǎng)絡(luò)的所有流標(biāo)識符、只用于源和目的地設(shè)備之間特定流量的流標(biāo)識符、用于特定網(wǎng)絡(luò)段的流標(biāo)識符、用于特定消費者的流量的流標(biāo)識符,等等。用于整個覆蓋網(wǎng)絡(luò)的所有流標(biāo)識符的任何子集都可以被接收并存儲到策略與流數(shù)據(jù)庫。
[0080]根據(jù)一種實施例,在一種實施例中,流與策略數(shù)據(jù)庫可以包括圖7B中所示的示例性表710中所示的信息。在這種示例性表710中,多個桶標(biāo)識符(ID)與一個流ID和一個策略ID關(guān)聯(lián)。每個策略ID可以與一個特定策略關(guān)聯(lián),如圖7A中所示的示例性策略數(shù)據(jù)庫700中所示。
[0081]現(xiàn)在參考圖7A-7B,作為一個例子,DEFAULT_POLICY (缺省策略)與策略表700中的策略ID0000關(guān)聯(lián)。然后,流IDOxFFFFFFFFFFFFFFFF與策略IDOxOOOI關(guān)聯(lián),該策略IDOxOOOI沒有桶ID,這指示分組應(yīng)當(dāng)被丟棄。對于其它流ID,通過遵循指向存儲在與該特定桶ID有關(guān)的存儲器中的對應(yīng)信息的桶ID指針,系統(tǒng)能夠確定什么策略要用于任何特定的流ID。
[0082]其它標(biāo)識符只是代表性的,而不意味著以任何方式進(jìn)行限制。類似地,策略名字也只是代表性的,而不意味著以任何方式進(jìn)行限制或限制它們與策略ID、流ID或桶ID的關(guān)系O
[0083]再次參考圖5,在操作504中,當(dāng)確定與流標(biāo)識符關(guān)聯(lián)的一個或多個策略時,這種確定可以通過分析策略與流數(shù)據(jù)庫進(jìn)行,以便確定任何策略標(biāo)識符是否與流標(biāo)識符關(guān)聯(lián)。
[0084]現(xiàn)在參考圖6,根據(jù)一種實施例示出了用于分類覆蓋網(wǎng)絡(luò)中的流量的方法600的流程圖。在各種實施例中,方法600可以根據(jù)本發(fā)明在圖1-4中所繪出的任一環(huán)境中執(zhí)行。當(dāng)然,比圖6中具體描述的那些更多或更少的操作可以包括在方法600中,如本領(lǐng)域技術(shù)人員在閱讀本描述時將理解的。
[0085]方法600的每一步都可以由操作環(huán)境的任何合適部件執(zhí)行。例如,在一種實施例中,在各種非限制性方法中,方法500可以部分或完全由覆蓋交換機、處理器(諸如CPU、ASIC、FPGA等)、端點站(諸如虛擬機管理程序、虛擬覆蓋網(wǎng)絡(luò)網(wǎng)關(guān)設(shè)備、能夠發(fā)起或終止隧道的覆蓋交換機等)或者嵌入在計算機可讀存儲介質(zhì)中的計算機程序代碼執(zhí)行。
[0086]如圖6中所示,方法600可以以操作602開始,其中接收覆蓋分組。在一種實施例中,覆蓋分組可以在策略服務(wù)器接收,諸如遵守OpenFlow標(biāo)準(zhǔn)的OpenFlow控制器。策略服務(wù)器能夠確定和分發(fā)流ID和與其關(guān)聯(lián)的策略到覆蓋網(wǎng)絡(luò)中的設(shè)備,如在此所述的。
[0087]在一種實施例中,覆蓋分組在接收的時候可能缺乏流ID,例如,沒有與覆蓋分組關(guān)聯(lián)的流ID。
[0088]在操作604中,確定覆蓋分組和/或該覆蓋分組的一個或多個內(nèi)部分組的至少一個特性,以便給覆蓋分組分類。特性可以包括,但不限于,源地址、目的地地址、覆蓋網(wǎng)絡(luò)ID、分組尺寸、分組類型、包含在分組頭中的信息,等等,覆蓋分組的分類可以包括確定用于覆蓋分組的一個或多個策略。在一種實施例中,策略可以作為ACL包括。
[0089]在操作606中,流ID關(guān)聯(lián)到覆蓋分組。在一種方法中,流ID可以是唯一的二進(jìn)制、數(shù)字、字母數(shù)字、十六進(jìn)制或者某種其它形式的標(biāo)識符。在一種實施例中,流ID可以是64位整數(shù),但不限于此。在有些其它實施例中,流ID可以是8位、16位、32位、128位、256位或者更大的整數(shù)。
[0090]在各種實施例中,流ID可以是整個覆蓋網(wǎng)絡(luò)、一個虛擬網(wǎng)絡(luò)、該覆蓋網(wǎng)絡(luò)的一部分、整個數(shù)據(jù)中心唯一的、全局唯一的,等等。
[0091]在操作608中,確定與流標(biāo)識符關(guān)聯(lián)的一個或多個策略。一個或多個策略可以基于覆蓋分組和/或該覆蓋分組的一個或多個內(nèi)部分組的至少一個特性,也就是說,這一個或多個策略可以間接地基于覆蓋分組的分類。
[0092]在操作610中,流標(biāo)識符存儲在覆蓋分組的頭中。任何頭都可以使用,諸如在覆蓋分組的覆蓋網(wǎng)絡(luò)頭、最外面的L2頭、最外面的IP頭或者最外面的UDP頭中,等等。
[0093]根據(jù)另一種實施例,方法600還可以包括:確定適合覆蓋網(wǎng)絡(luò)中的第一設(shè)備的一組流標(biāo)識符和關(guān)聯(lián)的策略標(biāo)識符,并且把這組流標(biāo)識符和關(guān)聯(lián)的策略標(biāo)識符發(fā)送到第一設(shè)備。在一種方法中,這組流標(biāo)識符可以對應(yīng)于由第一設(shè)備接收或者從第一設(shè)備發(fā)送的典型覆蓋流量。在其它實施例中,這組流標(biāo)識符可以對應(yīng)于整個覆蓋網(wǎng)絡(luò)、對應(yīng)于由第一設(shè)備使用的特定虛擬網(wǎng)絡(luò)(例如,用于虛擬網(wǎng)絡(luò)的流量是通過第一設(shè)備發(fā)送的)、對應(yīng)于由第一設(shè)備提供服務(wù)的覆蓋網(wǎng)絡(luò)的一部分、對應(yīng)于整個數(shù)據(jù)中心,等等。
[0094]在另一種實施例中,方法600還可以包括為來自策略數(shù)據(jù)庫的一個或多個關(guān)聯(lián)策略中的每一個確定策略ID并且把流ID和一個或多個策略ID存儲到策略與流數(shù)據(jù)庫。策略與流數(shù)據(jù)庫可以包括策略ID與關(guān)聯(lián)的策略,如根據(jù)圖7B中所示的示例性實施例所示出的。在這種示例性實施例中,策略與流數(shù)據(jù)庫710包括桶標(biāo)識符(bucket identifier),每個桶標(biāo)識符都與流ID和策略標(biāo)識符關(guān)聯(lián),而且該桶標(biāo)識符指向存儲與關(guān)聯(lián)的策略標(biāo)識符有關(guān)的路由信息的位置。當(dāng)然,其它數(shù)據(jù)庫結(jié)構(gòu)也可以使用,如本領(lǐng)域技術(shù)人員在閱讀本描述時將理解的。
[0095]現(xiàn)在參考圖5-6,根據(jù)進(jìn)一步的實施例,方法500或600中的任意一個都可以從計算機程序產(chǎn)品利用能夠執(zhí)行這種計算機可讀程序代碼的處理器執(zhí)行。例如,用于管理覆蓋網(wǎng)絡(luò)上的流量的計算機程序產(chǎn)品可以包括其中體現(xiàn)了計算機可讀程序代碼的計算機可讀存儲介質(zhì)。計算機可讀程序代碼可以包括配置成確定與覆蓋分組關(guān)聯(lián)的流標(biāo)識符的計算機可讀程序代碼、配置成確定與該流標(biāo)識符關(guān)聯(lián)的一個或多個策略的計算機可讀程序代碼、配置成應(yīng)用與該流標(biāo)識符關(guān)聯(lián)的一個或多個策略的計算機可讀程序代碼、配置成在接收覆蓋分組之前從策略服務(wù)器接收一組流標(biāo)識符和關(guān)聯(lián)的策略標(biāo)識符的計算機可讀程序代碼和/或配置成把這組流標(biāo)識符和關(guān)聯(lián)的策略標(biāo)識符存儲在策略與流數(shù)據(jù)庫中的計算機可讀程序代碼中的一些或者全部。
[0096]在一種實施例中,這組流標(biāo)識符可以對應(yīng)于用于接收這組流標(biāo)識符和關(guān)聯(lián)的策略標(biāo)識符的特定設(shè)備的典型覆蓋流量,而且配置成確定與該流標(biāo)識符關(guān)聯(lián)的一個或多個策略的計算機可讀程序代碼可以包括配置成分析策略與流數(shù)據(jù)庫以便確定任何策略標(biāo)識符是否與該流標(biāo)識符關(guān)聯(lián)的計算機可讀程序代碼。
[0097]此外,流標(biāo)識符可以存儲在覆蓋分組的頭中。在另一種實施例中,配置成應(yīng)用與流標(biāo)識符關(guān)聯(lián)的一個或多個策略的計算機可讀程序代碼可以包括配置成把覆蓋分組或其一個或多個內(nèi)部分組路由到在一個或多個策略中規(guī)定的設(shè)備的計算機可讀程序代碼。
[0098]根據(jù)另一種實施例,如果沒有流標(biāo)識符與覆蓋分組關(guān)聯(lián)或者如果沒有策略與流標(biāo)識符關(guān)聯(lián),則覆蓋分組可以發(fā)送到策略服務(wù)器以進(jìn)行進(jìn)一步的處理。
[0099]現(xiàn)在參考圖8,根據(jù)各種實施例,流ID803存儲到在各個位置的覆蓋分組頭。流ID804的存儲可以按不違反現(xiàn)有標(biāo)準(zhǔn)的方式存儲在覆蓋分組的頭中。在覆蓋分組800中,流ID804存儲在覆蓋網(wǎng)絡(luò)頭806中。在覆蓋分組820中,流ID804存儲在最外面的UDP頭808中。根據(jù)各種方法,在覆蓋分組830中,流ID804存儲在最外面的L2頭812、最外面的IP頭810和/或最外面的UDP頭808中的一個當(dāng)中。在覆蓋分組800、820、830每一個中,存儲一個或多個內(nèi)部分組802。
[0100]在其它實施例中,流ID804可以存儲到覆蓋分組的其它部分或者存儲到覆蓋分組頭中,如本領(lǐng)域技術(shù)人員在閱讀本描述時將理解的。
[0101]盡管以上已經(jīng)描述了各種實施例,但是應(yīng)當(dāng)理解,它們僅僅是作為例子而不是限制給出的。因此,本發(fā)明實施例的廣度與范圍不應(yīng)當(dāng)受上述任一示例性實施例的限制,而是只應(yīng)當(dāng)根據(jù)以下權(quán)利要求及其等同來定義。
【權(quán)利要求】
1.一種系統(tǒng),包括: 處理器,適于執(zhí)行邏輯; 適于確定與覆蓋分組關(guān)聯(lián)的流標(biāo)識符的邏輯; 適于確定與所述流標(biāo)識符關(guān)聯(lián)的一個或多個策略的邏輯;及 適于應(yīng)用與所述流標(biāo)識符關(guān)聯(lián)的一個或多個策略的邏輯, 其中,所述流標(biāo)識符存儲在所述覆蓋分組的頭中。
2.如權(quán)利要求1所述的系統(tǒng),還包括: 適于在沒有流標(biāo)識符與覆蓋分組關(guān)聯(lián)時或者在沒有策略與流標(biāo)識符關(guān)聯(lián)時把覆蓋分組發(fā)送到所述策略服務(wù)器進(jìn)行進(jìn)一步處理的邏輯。
3.如權(quán)利要求1所述的系統(tǒng),其中所述流標(biāo)識符存儲在覆蓋分組的覆蓋網(wǎng)絡(luò)頭、最外面的層2頭、最外面的互聯(lián)網(wǎng)協(xié)議(IP)頭或者最外面的用戶數(shù)據(jù)報協(xié)議(UDP)頭中。
4.如權(quán)利要求1所述的系統(tǒng),還包括: 適于在接收覆蓋分組之前從策略服務(wù)器接收一組流標(biāo)識符和關(guān)聯(lián)的策略標(biāo)識符的邏輯,其中所述一組流標(biāo)識符對應(yīng)于用于所述系統(tǒng)的典型覆蓋流量;及 適于把所述一組流標(biāo)識符和關(guān)聯(lián)的策略標(biāo)識符存儲在策略與流數(shù)據(jù)庫中的邏輯; 其中,所述適于確定與所述流 標(biāo)識符關(guān)聯(lián)的一個或多個策略的邏輯包括:適于分析所述策略與流數(shù)據(jù)庫以確定是否有任何策略標(biāo)識符與所述流標(biāo)識符關(guān)聯(lián)的邏輯。
5.如權(quán)利要求1所述的系統(tǒng),其中所述適于應(yīng)用與所述流標(biāo)識符關(guān)聯(lián)的一個或多個策略的邏輯包括: 適于把覆蓋分組或者其一個或多個內(nèi)部分組路由到一個或多個策略中規(guī)定的設(shè)備的邏輯。
6.一種用于給覆蓋網(wǎng)絡(luò)中的流量分類的系統(tǒng),所述系統(tǒng)包括: 處理器,適于執(zhí)行邏輯; 適于接收覆蓋分組的邏輯; 適于確定覆蓋分組和/或所述覆蓋分組的一個或多個內(nèi)部分組的至少一個特性以便給所述覆蓋分組分類的邏輯; 適于把流標(biāo)識符關(guān)聯(lián)到覆蓋分組的邏輯; 適于確定與流標(biāo)識符關(guān)聯(lián)的一個或多個策略的邏輯,其中所述一個或多個策略基于所述覆蓋分組和/或所述覆蓋分組的一個或多個內(nèi)部分組的至少一個特性;及適于把所述流標(biāo)識符存儲在所述覆蓋分組的頭中的邏輯。
7.如權(quán)利要求6所述的系統(tǒng),還包括: 適于為來自策略數(shù)據(jù)庫的一個或多個關(guān)聯(lián)策略中的每一個確定策略標(biāo)識符的邏輯;及 適于把所述流標(biāo)識符和所述一個或多個策略標(biāo)識符存儲到策略與流數(shù)據(jù)庫的邏輯, 其中所述策略數(shù)據(jù)庫包括策略標(biāo)識符和關(guān)聯(lián)的策略, 其中所述策略與流數(shù)據(jù)庫包括桶標(biāo)識符,每個桶標(biāo)識符都與流標(biāo)識符和策略標(biāo)識符關(guān)聯(lián),及 其中所述桶標(biāo)識符指向存儲與關(guān)聯(lián)的策略標(biāo)識符有關(guān)的路由彳目息的位置。
8.如權(quán)利要求6所述的系統(tǒng),其中當(dāng)接收到覆蓋分組時,所述覆蓋分組不具有與其關(guān)聯(lián)的流標(biāo)識符。
9.如權(quán)利要求6所述的系統(tǒng),還包括: 適于確定適合所述覆蓋網(wǎng)絡(luò)中的第一設(shè)備的一組流標(biāo)識符與關(guān)聯(lián)的策略標(biāo)識符的邏輯,其中所述一組流標(biāo)識符對應(yīng)于從所述第一設(shè)備接收或發(fā)送的典型覆蓋流量;及適于把所述一組流標(biāo)識符和關(guān)聯(lián)的策略標(biāo)識符發(fā)送到所述第一設(shè)備的邏輯。
10.如權(quán)利要求6所述的系統(tǒng),其中所述流標(biāo)識符存儲在覆蓋分組的覆蓋網(wǎng)絡(luò)頭、最外面的層2頭、最外面的互聯(lián)網(wǎng)協(xié)議(IP)頭或者最外面的用戶數(shù)據(jù)報協(xié)議(UDP)頭中。
11.一種用于管理覆蓋網(wǎng)絡(luò)中的流量的方法,所述方法包括: 確定與覆蓋分組關(guān)聯(lián)的流標(biāo)識符; 確定與所述流標(biāo)識符關(guān)聯(lián)的一個或多個策略;及 應(yīng)用與所述流標(biāo)識符關(guān)聯(lián)的一個或多個策略, 其中,所述流標(biāo)識符存儲在所述覆蓋分組的頭中。
12.如權(quán)利要求11所述的方法,其中,如果沒有流標(biāo)識符與覆蓋分組關(guān)聯(lián)或者如果沒有策略與流標(biāo)識符關(guān)聯(lián),就把所述覆蓋分組發(fā)送到策略服務(wù)器進(jìn)行進(jìn)一步處理。
13.如權(quán)利要求11所述的方法,其中所述流標(biāo)識符存儲在覆蓋分組的覆蓋網(wǎng)絡(luò)頭、最外面的層2頭、最外面的互聯(lián)網(wǎng)協(xié)議(IP)頭或者最外面的用戶數(shù)據(jù)報協(xié)議(UDP)頭中。
14.如權(quán)利要求11所述的方法,還包括: 在接收覆蓋分組之前從策略服務(wù)器接收一組流標(biāo)識符和關(guān)聯(lián)的策略標(biāo)識符,其中所述一組流標(biāo)識符對應(yīng)于用于接收所述一組流標(biāo)識符和關(guān)聯(lián)的策略標(biāo)識符的特定設(shè)備的典型覆蓋流量;及 把所述一組流標(biāo)識符和關(guān)聯(lián)的策略標(biāo)識符存儲在策略與流數(shù)據(jù)庫中, 其中,確定與所述流標(biāo)識符關(guān)聯(lián)的一個或多個策略包括:分析所述策略與流數(shù)據(jù)庫以確定是否有任何策略標(biāo)識符與所述流標(biāo)識符關(guān)聯(lián)。
15.如權(quán)利要求11所述的方法,其中應(yīng)用與流標(biāo)識符關(guān)聯(lián)的一個或多個策略包括: 對覆蓋分組或其一個或多個內(nèi)部分組執(zhí)行特定于策略的動作,其中包括:把覆蓋分組或其一個或多個內(nèi)部分組轉(zhuǎn)發(fā)到在所述一個或多個策略中規(guī)定的設(shè)備。
16.一種用于給覆蓋網(wǎng)絡(luò)中的流量分類的方法,所述方法包括: 接收覆蓋分組; 確定所述覆蓋分組和/或所述覆蓋分組的一個或多個內(nèi)部分組的至少一個特性,以便給所述覆蓋分組分類; 把流標(biāo)識符關(guān)聯(lián)到所述覆蓋分組; 確定與所述流標(biāo)識符關(guān)聯(lián)的一個或多個策略,其中所述一個或多個策略基于所述覆蓋分組和/或所述覆蓋分組的一個或多個內(nèi)部分組的至少一個特性;及把所述流標(biāo)識符存儲在所述覆蓋分組的頭中。
17.如權(quán)利要求16所述的方法,還包括: 為來自策略數(shù)據(jù)庫的一個或多個關(guān)聯(lián)策略中的每一個確定策略標(biāo)識符;及 把所述流標(biāo)識符和所述一個或多個策略標(biāo)識符存儲到策略與流數(shù)據(jù)庫, 其中所述策略數(shù)據(jù)庫包括策略標(biāo)識符和關(guān)聯(lián)的策略, 其中所述策略與流數(shù)據(jù)庫包括桶標(biāo)識符,每個桶標(biāo)識符都與流標(biāo)識符和策略標(biāo)識符關(guān)聯(lián),及其中所述桶標(biāo)識符指向存儲與關(guān)聯(lián)的策略標(biāo)識符有關(guān)的路由彳目息的位置。
18.如權(quán)利要求16所述的方法,其中當(dāng)接收到覆蓋分組時所述覆蓋分組不具有與其關(guān)聯(lián)的流標(biāo)識符。
19.如權(quán)利要求16所述的方法,還包括: 確定適合所述覆蓋網(wǎng)絡(luò)中的第一設(shè)備的一組流標(biāo)識符與關(guān)聯(lián)的策略標(biāo)識符,其中所述一組流標(biāo)識符對應(yīng)于所述第一設(shè)備接收的或從所述第一設(shè)備發(fā)送的典型覆蓋流量;及把所述一組流標(biāo)識符和關(guān)聯(lián)的策略標(biāo)識符發(fā)送到所述第一設(shè)備。
20.如權(quán)利要求16所述的方法,其中所述流標(biāo)識符存儲在覆蓋分組的覆蓋網(wǎng)絡(luò)頭、最外面的層2頭、最外 面的互聯(lián)網(wǎng)協(xié)議(IP)頭或者最外面的用戶數(shù)據(jù)報協(xié)議(UDP)頭中。
【文檔編號】G06F9/44GK103546451SQ201310296041
【公開日】2014年1月29日 申請日期:2013年7月16日 優(yōu)先權(quán)日:2012年7月16日
【發(fā)明者】D·G·卡瑪斯, K·G·坎伯, V·A·潘迪 申請人:國際商業(yè)機器公司