專利名稱:用于虛擬分布式業(yè)務(wù)的網(wǎng)絡(luò)接口控制器的制作方法
技術(shù)領(lǐng)域:
本公開涉及電子數(shù)據(jù)業(yè)務(wù),尤其是支持虛擬化的數(shù)據(jù)中心業(yè)務(wù)。
背景技術(shù):
數(shù)據(jù)中心中的計算機網(wǎng)絡(luò)愈發(fā)依賴于復(fù)雜業(yè)務(wù)來使能擴展性、虛擬化和安全。這些業(yè)務(wù)的范圍從負(fù)載均衡到防火墻再到細(xì)粒度網(wǎng)絡(luò)度量。隨著云計算和其他大規(guī)模虛擬服務(wù)器部署增長,以可擴展和可管理方式提供這些網(wǎng)絡(luò)業(yè)務(wù)愈發(fā)困難。理想地,大規(guī)模服務(wù)器部署中的每個單獨網(wǎng)絡(luò)流被跟蹤以向標(biāo)識出的連接或流提供適當(dāng)業(yè)務(wù),例如業(yè)務(wù)質(zhì)量、策略等。在某些情況下,數(shù)據(jù)中心交換機可以提供這些業(yè)務(wù)中的某些業(yè)務(wù),但是穿過單個交換機的單獨流的數(shù)目需要過多的交換機資源來跟蹤和管理每個流。
圖1示出了為在單個服務(wù)器上工作的多個虛擬機服務(wù)的網(wǎng)絡(luò)接口卡或控制器。圖2和圖3分別示出了支持多個虛擬網(wǎng)絡(luò)接口控制器的分組流的進(jìn)入和外出的網(wǎng)絡(luò)接口卡的示例實施例。圖4示出了對待作為如下分組流的一部分的分組的一系列示例步驟,該分組流經(jīng)由包括多個虛擬網(wǎng)絡(luò)控制器的網(wǎng)絡(luò)接口卡從網(wǎng)絡(luò)傳遞到在服務(wù)器上運行的虛擬機。圖5示出了對待作為如下分組流的一部分的分組的一系列示例步驟,該分組流經(jīng)由包括多個虛擬網(wǎng)絡(luò)控制器的網(wǎng)絡(luò)接口卡從在服務(wù)器上運行的虛擬機傳遞到網(wǎng)絡(luò)
發(fā)明內(nèi)容
概覽這里描述的是支持包括在服務(wù)器上運行的虛擬機的虛擬網(wǎng)絡(luò)接口控制功能在內(nèi)的虛擬業(yè)務(wù)的方法和裝置的實施例。一種方法包括在網(wǎng)絡(luò)接口卡處接收來自數(shù)據(jù)通信網(wǎng)絡(luò)的分組,在該網(wǎng)絡(luò)接口卡內(nèi)對該分組分類以選擇該分組應(yīng)被指派給的多個流表之一以獲得選中的流表,該分類至少基于與該分組相關(guān)聯(lián)的邏輯接口,基于所選中流表中存儲的信息來處理該分組,并且將該分組傳遞給在與該網(wǎng)絡(luò)接口卡通信連接的計算機上工作的虛擬機,該虛擬機與該邏輯接口相關(guān)聯(lián)。該方法還包括在該網(wǎng)絡(luò)接口卡處接收來自與該網(wǎng)絡(luò)接口卡通信連接的計算機的第二分組,并且轉(zhuǎn)發(fā)該第二分組以在該網(wǎng)絡(luò)接口卡內(nèi)進(jìn)行分類。
具體實施例方式示例實施例圖1示出了支持由管理程序115支持的多個虛擬機(VM) 120a、120b、120c的服務(wù)器110。服務(wù)器110可以是獨立服務(wù)器或者可以是數(shù)據(jù)中心基礎(chǔ)設(shè)施中的服務(wù)器叢的一部分。網(wǎng)絡(luò)接口卡(或者控制器)(NIC)200與服務(wù)器110通信耦合。如將在下面更詳細(xì)說明的,NIC200支持虛擬業(yè)務(wù),即支持在服務(wù)器110上運行的虛擬機120a、120b、120c中的相應(yīng)虛擬機的網(wǎng)絡(luò)接口控制業(yè)務(wù)。因此,從虛擬機120a、120b、120c中的每一個虛擬機的角度,NIC200擔(dān)當(dāng)專用的網(wǎng)絡(luò)接口控制器。NIC200包括處理器201和存儲器202,處理器201和存儲器202的功能也將在下面更加完全地描述。NIC200例如經(jīng)由路由器170連接到計算機網(wǎng)絡(luò)。集中管理工具180可被用來管理NIC200。如圖所示,NIC200與集中管理工具180之間的通信可以經(jīng)由路由器170(或者其他網(wǎng)絡(luò)元件)或者可以經(jīng)由更加私有和/或直接的鏈路185。NIC200的功能可被實現(xiàn)為一個或多個硬件組件、一個或多個軟件組件,或者其組合。更具體地說,處理器201可以是可編程處理器(微處理器或者微控制器)或者固定邏輯處理器。在可編程處理器的情況下,任何相關(guān)存儲器202可以是編碼有或者存儲用來實現(xiàn)NIC200的功能的指令的任何類型的有形處理器可讀存儲器(例如,隨機存取、只讀等)。在固定邏輯處理設(shè)備的情況下,邏輯或者指令例如可被編碼在專用集成電路(ASIC)中或者配置有由致使處理器201執(zhí)行這里描述的功能的指令或者邏輯組成的固件的數(shù)字信號處理器中。因此,NIC200可以采用各種形式中的任一種,以便被編碼在一個或多個有形介質(zhì)中,以供例如利用固定邏輯或者可編程邏輯(例如,軟件/由處理器執(zhí)行的計算機指令)來執(zhí)行,并且任何處理器可以是可編程處理器、可編程數(shù)字邏輯(例如,現(xiàn)場可編程門陣列)或者包括固定數(shù)字邏輯的ASIC,或者其組合??偠灾?,任何處理邏輯可被實現(xiàn)在處理器(或者計算機)可讀介質(zhì)中,該介質(zhì)編碼有供處理器執(zhí)行的指令,這些指令當(dāng)被該處理器執(zhí)行時可操作來使該處理器執(zhí)行這里描述的功能。圖2示出了支持多個虛擬網(wǎng)絡(luò)接口控制器200a、200b、200c的分組流的進(jìn)入的NIC200的實施例,這多個虛擬網(wǎng)絡(luò)接口控制器200a、200b、200c支持在服務(wù)器110上運行的虛擬機。在高層次上,NIC200將流跟蹤機制、分組轉(zhuǎn)發(fā)控制、分組重寫能力以及自治管理代理集成到位于服務(wù)器邊緣的設(shè)備中。這允許基于單獨流的操縱和/或業(yè)務(wù)被推送到數(shù)據(jù)中心網(wǎng)絡(luò)的計算機(服務(wù)器)邊緣。抵達(dá)NIC200的分組在轉(zhuǎn)發(fā)模塊210處被接收到并且然后被傳遞到分類器模塊220。這些分組然后被與內(nèi)部流表230比較,從而產(chǎn)生例如未命中、命中或者沖突。轉(zhuǎn)發(fā)模塊210例如通過檢查分組以及這些分組的任何封裝來執(zhí)行邏輯接口(LIF)標(biāo)識,并且還可以對要么從網(wǎng)絡(luò)進(jìn)入要么從可直接來自內(nèi)部流表230的環(huán)回路徑215進(jìn)入要么從自治代理250進(jìn)入的分組執(zhí)行復(fù)制(例如以供多播)。轉(zhuǎn)發(fā)模塊210檢查每個進(jìn)入分組的頭部并且通常通過在本地轉(zhuǎn)發(fā)表中查找該分組的目的地地址來將每個分組關(guān)聯(lián)到邏
輯接口。分類器模塊220接收LIF標(biāo)識并且基于該信息并且利用存儲器中的適當(dāng)數(shù)據(jù)來識別分組類型。分組類型例如可包括符合與TCP或UDP協(xié)議或者FTP或其他公知協(xié)議相關(guān)聯(lián)的IPv4或IPv6層的那些。一旦分組類型已知,分類器模塊220就被配置為指派選中的流表來處理該分組。換言之,分類器模塊220確定進(jìn)入分組屬于什么流類型并且按照與該流類型相關(guān)聯(lián)的策略指派適當(dāng)?shù)牧鞅?30a、230b、230c等來處理該分組。流表例如可被分為四類:傳輸控制協(xié)議(TCP)流、用戶數(shù)據(jù)報協(xié)議(UDP)流、因特網(wǎng)協(xié)議(IP)(但不是TCP或者m)P)流,以及非IP流。一旦分類器模塊220已經(jīng)識別出流類型,流表機制就在表中搜索該特定流。該特定流例如可通過TCP源和目的地端口以及源和目的地IP地址來識別。該流可能已經(jīng)存在于表中,這被定義為表命中,或者其可能未存在于表中,這被定義為未命中或者沖突。未命中在該流未存在于表中并且表中存在用來存儲該流的可用位置時發(fā)生,沖突在該流未存在于表中并且沒有用來存儲該流的可用位置時發(fā)生。如上面指出,查找流表將產(chǎn)生未命中、命中或者沖突。未命中例如可引起自動流表插入以及諸如向業(yè)務(wù)進(jìn)行新流登記之類的動作。例如,當(dāng)為LIF啟用了防火墻業(yè)務(wù)并且新流的第一分組抵達(dá)并且未命中流表時,將為該流自動生成條目并且該分組將被轉(zhuǎn)發(fā)給防火墻業(yè)務(wù)而非被遞送到目的地虛擬機。當(dāng)防火墻業(yè)務(wù)節(jié)點以許可或者拒絕動作作為響應(yīng)時,流表條目被更新并且該流中的未來分組此后被直接遞送到目的地虛擬機(許可)或者丟棄(拒絕)。取決于分組類型和編程的未命中動作,新的流分組可被封裝到業(yè)務(wù)頭部中并被轉(zhuǎn)發(fā)給可作為虛擬業(yè)務(wù)本地駐留或者作為業(yè)務(wù)節(jié)點遠(yuǎn)程駐留的適當(dāng)?shù)臉I(yè)務(wù)節(jié)點,其中該業(yè)務(wù)節(jié)點可以是防火墻、負(fù)載均衡器、入侵檢測業(yè)務(wù)或者其他基于網(wǎng)絡(luò)的業(yè)務(wù)。類似地,流命中可具有可包括分組重寫、封裝和/或轉(zhuǎn)發(fā)動作在內(nèi)的相關(guān)動作。因此,例如,命中流表條目的分組在防火墻拒絕動作的情況下可被丟棄,被重新緩存到本地排隊系統(tǒng)以實施諸如高至低優(yōu)先級、速率限制或者承諾信息速率策略之類的業(yè)務(wù)質(zhì)量策略,利用針對低等待時間策略的高優(yōu)先級中斷被遞送到目的地虛擬機,或者只是在流表中被計數(shù)并加時間戳以支持網(wǎng)絡(luò)流統(tǒng)計。當(dāng)查找流表產(chǎn)生無匹配并且所有可用表條目被其他流占據(jù)時,沖突發(fā)生。在沖突的情況下,各種動作可以發(fā)生。例如,分組可被放入指定隊列以供軟件沖突處理,或者沖突分組可在沒有流表卸載機制幫助的情況下被轉(zhuǎn)發(fā)給附加業(yè)務(wù)。此外,自治管理代理250可被配置為對沖突結(jié)果執(zhí)行某些功能。例如,自治管理代理250可被配置為將該流插入在本地存儲器中或者在其本地存儲器(例如,存儲器202)中建立軟件沖突表。如在圖2中示出,多個流表230a、230b、230c被支持并且可被根據(jù)分組分類結(jié)果和/或虛擬接口標(biāo)識符來使用。例如針對TCP、UDP、FTP以及其他L2協(xié)議創(chuàng)建不同的流表,這是因為這些協(xié)議中的每一種提供了為了唯一地識別該協(xié)議內(nèi)的流將被從分組中提取的不同頭部字段。流表條目可以保存包括分組和字節(jié)計數(shù)以及時間戳在內(nèi)的流統(tǒng)計信息,自治管理代理250例如可以利用這些信息來支持網(wǎng)絡(luò)流采集點。在一種示例實現(xiàn)方式中,自治管理代理250包括具有存儲器系統(tǒng)202的三個嵌入式中央處理單元(CPU) 201以及多個硬件輸入/輸出IO設(shè)備(未不出)。自治管理代理250不僅可被配置為如已經(jīng)指出那樣工作,而且也可被配置作為與集中管理工具180通信的接口。例如,流表策略和處理指令可被從集中管理工具180經(jīng)由自治管理代理250 “上傳”到NIC200。代理250也可被配置為處理特殊情況分組和流事件。例如,包含用來控制向LIF指派網(wǎng)絡(luò)業(yè)務(wù)的管理命令的分組由代理250直接處理,或者不匹配任何流表描述的分組可被遞送到代理250以供軟件處理或者記錄。代理250還可被配置為執(zhí)行分組封裝和轉(zhuǎn)發(fā)。例如,復(fù)雜或演進(jìn)的封裝或隧穿協(xié)議無法總是由硬件表機制處理但是可以在硬件機制繼續(xù)處理已知封裝的同時被遞送到代理250以進(jìn)行更低速度的處理。圖3示出了正從服務(wù)器110 (例如,在服務(wù)器110上運行的VM)發(fā)送的分組如何被NIC200處理以便外出到網(wǎng)絡(luò)。適當(dāng)?shù)奶摂MNIC200a、200b、200c將有效地接收分組(充當(dāng)該分組發(fā)送自的VM的“專用”網(wǎng)絡(luò)接口控制器)并將該分組傳遞給傳輸調(diào)度模塊310。傳輸調(diào)度模塊310被配置為向每個vNIC指派調(diào)度優(yōu)先級和帶寬分配。如在圖3中看見,自治管理代理250與傳輸調(diào)度模塊310通信以便根據(jù)從網(wǎng)絡(luò)接收到的具有管理命令的分組來設(shè)置每個nNIC200a、200b、200c的調(diào)度策略。在被傳輸調(diào)度模塊310處理過之后,給定分組被傳遞到分類器模塊220,在該處基于LIF和存儲器中的匹配來標(biāo)識分組類型。然后可以基于分組類型來指派流表。在這樣標(biāo)識出分組類型的情況下,分組被傳遞到流表模塊230中的適當(dāng)流表230a、230b、230c。再一次,分組被查找,并且確定是否已經(jīng)發(fā)生命中、未命中或者沖突。適當(dāng)?shù)奶幚砣缓罂杀粓?zhí)行。例如,流表命中意味著該流被確立并且可以根據(jù)流表條目中的控制位來轉(zhuǎn)發(fā),而未命中表明該流是新的并且在被允許傳輸?shù)骄W(wǎng)絡(luò)之前可能需要被發(fā)送到防火墻業(yè)務(wù)以進(jìn)行檢查。基于在選中的流表中應(yīng)用的策略,分組可被轉(zhuǎn)發(fā)模塊210發(fā)送出來回到網(wǎng)絡(luò),或者可被發(fā)送以便經(jīng)由路徑215環(huán)回。這里描述的實施例允許流被跟蹤到虛擬機和虛擬設(shè)備層級,支持完全分布式的流跟蹤和管理模型,并且隨著數(shù)據(jù)中心中的計算機的數(shù)目和類型從流計數(shù)擴展到性能層級。這里描述的實施例的一個潛在優(yōu)點在于管理程序115被配置為執(zhí)行流跟蹤等的程度,極大的負(fù)擔(dān)可被從管理程序和主機處理器(即,在服務(wù)器110上運行的一個或多個處理器)中去除。此外,通過以這里描述的方式來配置NIC200,即使在沒有管理程序的情況下流跟蹤和業(yè)務(wù)應(yīng)用也可發(fā)生。本領(lǐng)域技術(shù)人員將認(rèn)識到前面描述了網(wǎng)絡(luò)接口控制器如何可被與虛擬接口支持、分組分類、流表、轉(zhuǎn)發(fā)機制以及自治管理代理緊密集成以便向數(shù)據(jù)中心提供安全和可擴展的網(wǎng)絡(luò)業(yè)務(wù)。注意到NIC200可以是用來跟蹤流的最能縮放的點,這是因為其與如下單個實體機器相關(guān)聯(lián),在該單個實體機器處網(wǎng)絡(luò)連接的數(shù)目隨著主機處理器和網(wǎng)絡(luò)接口控制器技術(shù)而擴展。另外,在計算機邊緣標(biāo)識流和跟蹤流也許提供了虛擬機連接的最精確視圖,這是因為NIC200知曉哪個虛擬操作系統(tǒng)和/或應(yīng)用與哪個虛擬接口設(shè)備相關(guān)聯(lián)。例如,因為外圍組件快速互連(PCIe)總線處的虛擬NIC或虛擬功能可被與其虛擬機流相關(guān)聯(lián),可能存在連接末端的減少的不確定性或欺騙。虛擬機移動事件也利用它們的流被跟蹤。另外,可以在不涉及或者不知曉虛擬或?qū)嶓w的計算機操作系統(tǒng)的情況下在NIC200處管理流??梢酝ㄟ^集中管理工具180經(jīng)由到網(wǎng)絡(luò)接口控制器的自治管理代理250的安全連接來應(yīng)用流管理和策略。還注意到分布式的流跟蹤允許分布式的業(yè)務(wù)操縱。針對業(yè)務(wù)應(yīng)用標(biāo)識出的流可以被遞送到本地虛擬業(yè)務(wù)或者在應(yīng)用業(yè)務(wù)頭部之后被轉(zhuǎn)發(fā)到遠(yuǎn)程業(yè)務(wù)節(jié)點。不需要中央的流分配器或者業(yè)務(wù)節(jié)點。最后,NIC200可以在不依賴于主機配置或操作系統(tǒng)的情況下跟蹤流和應(yīng)用網(wǎng)絡(luò)業(yè)務(wù)??梢越?jīng)由基于網(wǎng)絡(luò)的管理系統(tǒng)來應(yīng)用管理并且要實施基于流的策略無需信任主機軟件。圖4示出了用于對待作為如下分組流一部分的分組的一系列示例步驟,該分組流經(jīng)由包括多個虛擬網(wǎng)絡(luò)控制器的網(wǎng)絡(luò)接口卡從網(wǎng)絡(luò)傳遞到在服務(wù)器上運行的虛擬機。也參考圖2,在步驟410處,分組在NIC200處被接收到。在步驟412處,分組被分類以確定該分組屬于什么流類型。利用該流類型信息,在步驟414處基于與指示流相關(guān)聯(lián)的流表來處理該分組。在步驟416處,分組朝向在與NIC200通信耦合的計算機上運行的虛擬機被從NIC200中傳遞出來,并且/或者被環(huán)回NIC200內(nèi)部以進(jìn)行附加處理。圖5示出了用于對待作為如下分組流一部分的分組的一系列示例步驟,該分組流經(jīng)由包括多個虛擬網(wǎng)絡(luò)控制器的網(wǎng)絡(luò)接口卡從在服務(wù)器上運行的虛擬機傳遞到網(wǎng)絡(luò)。也參考圖3,在步驟510處,分組被從例如運行虛擬機的計算機或者服務(wù)器接收到。在步驟512處,分組被分類以確定其類型?;谄漕愋?,與該分組相關(guān)聯(lián)的流可被確定。然后在步驟514處基于與指出流類型相關(guān)聯(lián)的流表來處理該分組。經(jīng)處理的分組然后在步驟516處被傳遞到網(wǎng)絡(luò)并且/或者被環(huán)回以便在NIC200內(nèi)進(jìn)行進(jìn)一步處理。盡管系統(tǒng)和方法在此被例示和描述為在一個或多個具體示例中實現(xiàn),然而其并非旨在被限制到所示出的細(xì)節(jié),這是因為各種修改和結(jié)構(gòu)改變在不脫離裝置、系統(tǒng)和方法的范圍的情況下可被做出并且在權(quán)利要求的等同物的范圍內(nèi)。因此,寬廣地且以與如在此闡述的裝置、系統(tǒng)和方法的范圍一致的方式理解權(quán)利要求是適當(dāng)?shù)摹?br>
權(quán)利要求
1.一種方法,包括: 在網(wǎng)絡(luò)接口卡處接收來自數(shù)據(jù)通信網(wǎng)絡(luò)的分組; 在所述網(wǎng)絡(luò)接口卡內(nèi)對所述分組分類以選擇所述分組應(yīng)被指派給的多個流表之一以獲得選中的流表,該分類至少基于與所述分組相關(guān)聯(lián)的邏輯接口 ; 基于所述選中流表中存儲的信息來處理所述分組;以及 將所述分組傳遞到在與所述網(wǎng)絡(luò)接口卡通信連接的計算機上工作的虛擬機,該虛擬機與所述邏輯接口相關(guān)聯(lián)。
2.如權(quán) 利要求1所述的方法,還包括在所述網(wǎng)絡(luò)接口卡處接收來自與所述網(wǎng)絡(luò)接口卡通信連接的計算機的第二分組,以及轉(zhuǎn)發(fā)該第二分組以在所述網(wǎng)絡(luò)接口卡內(nèi)進(jìn)行分類。
3.如權(quán)利要求1所述的方法,還包括復(fù)制所述分組以進(jìn)行多播。
4.如權(quán)利要求1所述的方法,還包括以下步驟中的至少一個:重寫所述分組的至少一部分、封裝所述分組或者基于所述選中流表中存儲的信息來轉(zhuǎn)發(fā)所述分組。
5.如權(quán)利要求1所述的方法,還包括,當(dāng)所述分組屬于新流時更新所述選中流表以包括所述分組的各方面。
6.如權(quán)利要求1所述的方法,還包括從與與所述網(wǎng)絡(luò)接口卡連接的計算機不同的管理工具接收控制數(shù)據(jù)。
7.如權(quán)利要求6所述的方法,還包括利用所述管理工具來設(shè)定分組流的管理和策略。
8.如權(quán)利要求1所述的方法,還包括在所述網(wǎng)絡(luò)接口卡內(nèi)針對所述流表中表示的每個流來跟蹤分組和字節(jié)統(tǒng)計信息。
9.如權(quán)利要求1所述的方法,還包括在所述網(wǎng)絡(luò)接口卡內(nèi)環(huán)回已被所述選中流表處理過的分組。
10.一種編碼有當(dāng)被處理器執(zhí)行時使該處理器執(zhí)行以下操作的指令的處理器可讀介質(zhì): 在網(wǎng)絡(luò)接口卡處接收來自數(shù)據(jù)通信網(wǎng)絡(luò)的分組; 對所述分組分類以選擇所述分組應(yīng)被指派給的多個流表之一以獲得選中的流表,其中分類至少基于與所述分組相關(guān)聯(lián)的邏輯接口; 基于所述選中流表中存儲的信息來處理所述分組;以及 將所述分組傳遞到在與所述網(wǎng)絡(luò)接口卡通信連接的計算機上工作的虛擬機,該虛擬機與所述邏輯接口相關(guān)聯(lián)。
11.如權(quán)利要求10所述的處理器可讀介質(zhì),還包括當(dāng)被所述處理器執(zhí)行時使所述處理器執(zhí)行以下操作的指令: 在所述網(wǎng)絡(luò)接口卡處接收來自與所述網(wǎng)絡(luò)接口卡通信連接的計算機的第二分組,以及轉(zhuǎn)發(fā)該第二分組以在所述網(wǎng)絡(luò)接口卡內(nèi)進(jìn)行分類。
12.如權(quán)利要求10所述的處理器可讀介質(zhì),還包括當(dāng)被所述處理器執(zhí)行時使所述處理器執(zhí)行以下操作的指令: 復(fù)制所述分組以進(jìn)行多播。
13.如權(quán)利要求10所述的處理器可讀介質(zhì),還包括當(dāng)被所述處理器執(zhí)行時使所述處理器執(zhí)行以下操作中的至少一個的指令: 重寫所述分組的至少一部分、封裝所述分組或者基于所述選中流表中存儲的信息來轉(zhuǎn)發(fā)所述分組。
14.如權(quán)利要求10所述的處理器可讀介質(zhì),還包括當(dāng)被所述處理器執(zhí)行時使所述處理器執(zhí)行以下操作的指令: 當(dāng)所述分組屬于新流時更新所述選中流表以包括所述分組的各方面。
15.如權(quán)利要求10所述的處理器可讀介質(zhì),還包括當(dāng)被所述處理器執(zhí)行時使所述處理器執(zhí)行以下操作的指令: 從與與所述網(wǎng)絡(luò)接口卡連接的計算機不同的管理工具接收控制數(shù)據(jù)。
16.如權(quán)利要求15所述的處理器可讀介質(zhì),還包括當(dāng)被所述處理器執(zhí)行時使所述處理器執(zhí)行以下操作的指令: 基于來自所述管理工具的數(shù)據(jù)設(shè)定分組流的管理和策略。
17.一種裝置,包括: 轉(zhuǎn)發(fā)模塊,其被配置為接收來自電子網(wǎng)絡(luò)的分組并且確定與該分組相關(guān)聯(lián)的邏輯接Π ; 分類器模塊,其被配置為基于所述邏輯接口來標(biāo)識與所述分組相關(guān)聯(lián)的流;以及多個流表,其中的一個被配置為基于與所述分組相關(guān)聯(lián)的流而被選擇,所選中的流表被配置為按照預(yù)定策略來處理所述分組, 其中所述裝置被配置為操作多個虛擬網(wǎng)絡(luò)接口控制器,所述多個虛擬網(wǎng)絡(luò)接口控制器被配置為當(dāng)所述裝置與服務(wù)器通信耦合時服務(wù)在服務(wù)器上運行的相應(yīng)虛擬機。
18.如權(quán)利要求17所述的裝置 ,還包括自治管理代理模塊,其被配置為執(zhí)行以下操作中的至少一個: 重寫所述分組的至少一部分、封裝所述分組或者基于所述流表中存儲的信息來轉(zhuǎn)發(fā)所述分組。
19.如權(quán)利要求17所述的裝置,其中,所述自治管理代理模塊被配置為從與與所述服務(wù)器不同的管理工具接收控制信息。
20.如權(quán)利要求17所述的裝置,還包括在所述流表與所述轉(zhuǎn)發(fā)模塊之間的環(huán)回路徑。
全文摘要
在一個實施例中一種方法和裝置支持包括在服務(wù)器上運行的虛擬機的虛擬網(wǎng)絡(luò)接口控制功能在內(nèi)的虛擬服務(wù)。一種方法包括在網(wǎng)絡(luò)接口卡處接收來自數(shù)據(jù)通信網(wǎng)絡(luò)的分組,在該網(wǎng)絡(luò)接口卡內(nèi)對該分組分類以選擇該分組應(yīng)被指派給的多個流表之一以獲得選中的流表,該分類至少基于與該分組相關(guān)聯(lián)的邏輯接口,基于所選中流表中存儲的信息來處理該分組,并且將該分組傳遞到在與該網(wǎng)絡(luò)接口卡通信連接的計算機上工作的虛擬機,該虛擬機與該邏輯接口相關(guān)聯(lián)。
文檔編號H04L29/08GK103141058SQ201180045891
公開日2013年6月5日 申請日期2011年4月5日 優(yōu)先權(quán)日2010年9月23日
發(fā)明者邁克爾·B·加勒, 伊蘭戈·加內(nèi)桑, 邁克爾·佛雷德, 勞倫斯·R·克里格 申請人:思科技術(shù)公司