![]() 主機啟用管理頻道
专利摘要:
在目標虛擬機器(VM)與主機或與VM通訊的應用程式之間提供邏輯通訊路徑。目標VM在超管理器主機上執行,該超管理器主機具有超管理器及代理伺服器代理者。超管理器管理VM之執行。維持指示哪些VMs在哪些主機上執行之映射。當主機或應用程式欲將訊息或封包發送至目標VM時,諮詢映射且識別代管目標VM之超管理器主機。將可識別目標VM之訊息或封包傳輸至超管理器主機。超管理器主機處的代理伺服器代理者選擇超管理器與目標VM之間的通訊頻道。超管理器隨後將訊息或封包經由選定的頻道傳遞至目標VM。 公开号:TW201303734A 申请号:TW101115467 申请日:2012-05-01 公开日:2013-01-16 发明作者:Robert Fries;Srivatsan Parthasarathy;Ashvinkumar Sanghvi;Aravind Ramarathinam;Michael Grier 申请人:Microsoft Corp; IPC主号:H04L65-00
专利说明:
主機啟用管理頻道 本發明係關於主機啟用管理頻道。 在機器虛擬化之領域中,虛擬機器(virtual machines;VMs)具有網路功能性。亦即,VMs可實施網路協定堆疊,以經由網路與其他VMs或實體機器通訊。例如,虛擬化主機(例如,Hyper-V(TM)主機)可形成代管客VMs的虛擬化結構之部分,其中結構控制器管理虛擬化結構(此先前技術中所使用的「主機」可代表(例如)結構控制器或任何其他電腦)。然而,儘管主機與執行VM的機器(稱為「VM主機」)之間存在網路連接性,但出於各種原因,網路上的主機與VM之間可能不存在網路連接性。舉例而言,VM可能在虛擬專用網路(Virtual Private Network;VPN)上,主機不屬於該VPN,且VM之網路位址對該主機之網路可能無效。防火牆可能阻擋自主機之網路存取VM,同時允許對VM主機之網路的存取。VM可能僅在與可能需要與VM通訊之主機不同的網路上。 在一些情況下,希望使用標率協定與VM通訊,該標準協定諸如:HTTP(超文字傳送協定)、SOAP(簡單物件存取協定)、WMI(TM)(視窗管理儀表)、WS管理協定(經由HTTP在基於SOAP的協定內傳送WMI調用)等等。舉例而言,在一些資料中心或雲端中,VMs可能具有在該等VMs上執行的網路代理者或服務,該等網路代理者或服務執行管理功能(諸如,將修補程式應用於客作業系統、處置雲端結構任務等),或許具有用於控制(例如,經由HTTP之WMI)或資料(經由HTTP的BITS)之一或更多個通訊頻道。例如,此等管理服務或代理者由執行於控制器主機上之管理應用程式(例如,結構控制器)控制。管理應用程式將封包(例如,HTTP封包)發送至VM之網路位址,且HTTP封包被輸送至管理代理者。管理代理者可回應於封包之有效負載中的資訊而執行功能。然而,當管理應用程式不具有至VM之網路連接性時,該管理應用程式不能夠在VM上調用管理代理者。 下文論述啟用經由超管理器與VM之間的通訊頻道與VM通訊之技術。 包括以下概述僅用以介紹下文【實施方式】中論述的一些概念。此概述並非全面的且不意欲描繪所主張標的之範疇,所主張標的之範疇藉由結尾處提供的申請專利範圍來闡述。 在目標虛擬機器(VM)與主機或與VM通訊的應用程式之間提供邏輯通訊路徑。舉例而言,虛擬化主機與VM之間的路徑。目標VM在超管理器主機上執行,該超管理器主機具有超管理器及代理伺服器代理者(例如,HTTP代理伺服器)。超管理器管理VM之執行。維持指示哪些VMs在哪些主機上執行之映射。當主機或應用程式欲將訊息或封包發送至目標VM時,諮詢映射且識別代管目標VM之超管理器主機。將可識別目標VM之訊息或封包傳輸至超管理器主機。超管理器主機處的代理伺服器代理者選擇超管理器與目標VM之間的通訊頻道。超管理器隨後將訊息或封包經由選定的頻道傳遞至目標VM。 許多伴隨的特徵結構將在下文參閱結合隨附圖式考慮的以下詳細描述來解釋。 下文論述的實施例係關於在VM/超管理器主機上使用內部通訊頻道來允許外部網路通訊。論述將以虛擬化技術及虛擬化層(亦稱為超管理器)之概述開始。接下來將描述應用程式與VM之間的網路通訊之實例。將解釋使用在超管理器主機上的專用頻道的邏輯通訊路徑之概述。最終,將詳細描述此通訊路徑之細節,該通訊路徑在該通訊路徑之一個末端處包括應用程式且在該通訊路徑之另一末端處包括超管理器主機(VM主機)。 機器虛擬化 第1圖圖示實例虛擬化層100。電腦102具有硬體104,該硬體104包括中央處理單元(CPU)106、記憶體108、網路介面110、非揮發性儲存器112及諸如匯流排、顯示轉接器等之其他未圖示的組件。虛擬化層100管理且促進虛擬機器114之執行。儘管未圖示於第1圖中,但每一虛擬機器114通常具有相關聯虛擬碟片影像及客作業系統。為了簡便起見,有時將作業系統及或許虛擬機器114之應用軟體稱為客體,該客體自與虛擬機器114相關聯之虛擬碟片影像儲存且執行。為方便起見,本文中將使用術語「超管理器」來代表虛擬化層之各種形式。此外,如下文將論述的,虛擬機器114用以代管分散式應用之元件。 虛擬化層100可為任何種類之已知或未來的實施,諸如,Hyper-V伺服器(TM)、VMWare ESX伺服器(TM)、Xen、Oracle VM(TM)等。虛擬化層之架構可為具有執行於主作業系統上的虛擬機器監控器(virtual machine monitor;VMM)之經代管類型,或可為具有直接執行於電腦102之硬體104上的超管理器或類似物之裸露金屬類型。如本文中所使用的,術語「虛擬機器」是指系統類型的虛擬機器,該系統類型的虛擬機器模擬任何特定硬體架構(例如,x86),該任何特定硬體架構能夠執行彼硬體架構之本機碼;對於客體,虛擬機器可能幾乎不能與硬體機器區別。本文中論述的虛擬機器不是抽象或程序類型的虛擬機器(諸如,Java虛擬機器)。 虛擬化層100執行管理虛擬機器114及由該虛擬化層100本身與虛擬機器114兩者共享硬體104之基本功能。各種技術中之任何技術可用以隔離虛擬機器114與硬體104。在一個實施例中,虛擬化層可提供對應於虛擬機器114之不同的隔離環境(亦即,分區或域)。虛擬化層100中之一些虛擬化層100(諸如,共享虛擬裝置驅動程式、虛擬機器間通訊設施及虛擬機器管理APIs(應用程式設計介面))可在有特權的分區或域中執行,從而允許超管理器緊湊且有效率。在其他實施例中,虛擬機器管理及硬體104之同調共享之功能性可常駐於單塊金屬上的超管理器中。 第2圖圖示虛擬化層100相對於虛擬機器114及虛擬機器影像140之程序及互動。虛擬化層100可能根據相應的虛擬機器配置參數執行啟動及執行虛擬機器114之程序142。當虛擬機器114(VM)啟動時,虛擬化層識別相關聯的虛擬機器影像140。實際上,任何虛擬機器影像140可由任何虛擬機器114使用。虛擬機器影像140可為虛擬化層100之檔案系統141上之特定的格式化檔案(例如,VHD)。虛擬化層100載入經識別虛擬機器影像140。經啟動的虛擬機器114安裝且讀取虛擬機器影像140,從而或許尋找主啟動記錄或其他啟動資訊,且經啟動的虛擬機器114啟動開始執行之客作業系統。 虛擬化層100管理虛擬機器114之執行、處置對客體之核心的某些調用、超級調用等及協調虛擬機器114對下層硬體104之存取。當客體及該客體之軟體執行時,虛擬化層100可維持客體在虛擬碟片影像140上之狀態;當客體或該客體執行的應用程式將資料寫入至「碟片」時,虛擬化層100將資料轉換成虛擬碟片影像140之格式且寫入至影像。 虛擬化層100可執行用於關閉虛擬機器114之程序144。當接收指令以停止虛擬機器114時,將虛擬機器114及該虛擬機器114的客體之狀態保存至虛擬碟片影像140,且刪除執行虛擬機器114的程序(或分區)。虛擬機器114之規格可保留以用於虛擬機器114之隨後的再啟動。 與虛擬機器的通訊之概述 第3圖圖示與代理者182通訊的應用程式180之實例,該代理者182在由VM 186代管的客作業系統(客體184)上執行。可為管理應用程式之應用程式180(例如)在用戶端主機188上執行,該用戶端主機188可為具有允許經由網路190通訊的網路介面卡(NIC)189之普通電腦。用戶端主機188具有協定堆疊,該協定堆疊由各種協定實施組成,該等協定實施包括應用協定實施192(由應用程式180實施)、傳送協定實施194及網路協定實施196。 客體184亦具有以上提及的協定之實施,如同超管理器主機198上之超管理器196所具有的協定之實施那樣。超管理器主機198為執行超管理器196之電腦,該超管理器196管理VM 186之執行。代理者182(亦稱為「客代理者182」)常駐於客體184上且可實施由應用程式180實施的相同應用協定。應用程式180及客代理者182可為任何種類之軟體,例如,背景網路服務、互動應用程式、可執行檔案、較大應用程式或套件之組件等等。在一個實施例中,應用程式180為管理VMs之虛擬機器管理應用程式,且代理者182根據與應用程式180的通訊執行管理功能。 VM 186之執行由超管理器196管理,該超管理器196可管理未圖示於第3圖中之其他VMs。在用戶端主機188與VM 186之間的直接連接性可行的情況下,應用程式180及代理者182經由網路190如下進行通訊。應用程式180根據應用協定192(例如,HTTP封包或訊息)形成應用訊息。應用程式180請求該應用程式180之本端作業系統將訊息發送至超管理器主機198之網路位址(例如,HTTP位址)。本端作業系統之協定堆疊打開至超管理器主機198之連接、將應用程式180之訊息封裝於傳送有效負載中且將該傳送有效負載封裝於網路封包202內。網路封包202之網路標頭(該網路標頭含有超管理器主機198之網路位址)經由網路190投送至超管理器主機198。超管理器主機192可將封包202傳遞至VM 186且接著又傳遞至客體184及客代理者182。沿著該途徑,各種有效負載由各別協定實施擷取,且客代理者182接收經傳輸應用訊息(例如,「命令某某」)。當客代理者182將應用訊息傳輸至應用程式180時,程序相似但為逆向的。 如本文中所使用的,術語「用戶端」、「用戶端主機」、「應用程式」及「代理者」、「超管理器」及「超管理器主機」在該等術語之最廣泛的意義上使用。使用本文所述之技術通訊的特定平臺及軟體重要性較小。實際上,可能值得注意的是,現有應用程式位準軟體及協定可使用下文描述的通訊技術而無需顯著修正(若有),特定言之在經由網路(例如,應用程式180)與VM通訊之末端處。此外,雖然有時提及HTTP、IP(網際網路協定)及TCP/UDP(傳輸控制協定/通用資料包協定)協定以進行說明,但下文描述的通訊技術可與任何標準網路連接協定或該等標準網路連接協定之版本(例如,SOCKS)一起工作。此外,為了簡便起見,「HTTP」將被認為代表HTTP以及更多HTTPs之版本或變體(HTTP安全)。 邏輯通訊路徑、應用程式及超管理器實施例 第4圖圖示應用程式180與VM 186之間的邏輯通訊路徑220之概述。超管理器主機198上之代理伺服器代理者222跨接用戶端主機188與VM 186。可假定,VM 186及用戶端主機188具有必要的網路連接組件(例如,協定堆疊)來通訊,但VM 186及用戶端主機188不能夠直接通訊。舉例而言,網路190可能不能夠在VM 186與用戶端主機188之間投送網路封包(例如,VM 186與用戶端主機188中的任一者可能不可在網路190上定址)。然而,在用戶端主機188處,網路封包223可被導引至虛擬化層之網路位址(超管理器主機198之位址)。當接收封包223時,代理伺服器代理者222決定封包223意欲由VM 186接收,且代理伺服器代理者222使虛擬化層(超管理器)經由專用或本端通訊頻道224將封包傳遞至VM 186。 在一個實施例中,VM-主機映射226含有資訊,該資訊指示哪些VMs常駐於哪些超管理器主機上。用戶端主機188可使用VM 186之已知識別符(可能地為應用程式180所知)來在VM-主機映射226中查找超管理器主機198之網路位址。可將識別符添加至封包223以供代理伺服器代理者222使用。用戶端主機188將封包223發送至超管理器主機198之經查找網路位址,網路190使用該經查找網路位址將封包223投送226至超管理器主機198。如以上所提及,代理伺服器代理者222使用VM 186之識別符(例如,自HTTP連接標頭)來使虛擬化層將封包223傳遞至VM 186。 第5圖圖示啟動與VM 186的連接之用戶端主機188。用戶端主機188具有對VM-主機映射226之存取權限。用戶端主機188執行用於與VM 186通訊之程序250。在步驟252處,接收請求254以與特定VM 186通訊,或許接收請求254作為應用程式180之邏輯之部分,或可能地自外部實體接收請求254。在步驟256處,VM 186之識別符(例如,第5圖中之「VM1」)用以查找VM 186常駐之主機;超管理器主機186。查找可返回超管理器主機198之網路位址或網路主機名稱(如本文中所使用的,「網路位址」假定為包括數字位址以及可解析為數字位址之主機名稱兩者)。在步驟258處,形成封包223,該封包223包括大量有效負載(例如,應用程式-協定訊息)。在使用HTTP之實施例中,在步驟258處形成的封包223為HTTP封包,且超管理器主機之網路位址包括在HTTP標頭中。在步驟260處,使用超管理器之網路位址(第5圖中之「網路addr1」,例如,「128.1.2.3」)將封包223傳輸至網路190。 在一個實施例中,程序250可完全地或部分地由應用程式180執行。在另一實施例中,應用程式180可充當用於欲與VM 186通訊的其他應用程式之代理伺服器或服務。彼等應用程式將VM識別符及訊息主體傳遞給應用程式180,且該應用程式180構建主體之封包,添加VM識別符且將該封包傳輸至相應的超管理器主機。在又一實施例中,VM識別符可為向DNS(域名服務)伺服器(可能地具有局部或受限範疇以避免衝突)註冊之全局唯一的主機名稱,而非維持查找表(VM-主機映射226),該DNS伺服器映射至超管理器主機之對應於VMs的網路位址。在此情況下,當應用程式或用戶端主機希望與VM通訊時,該應用程式或用戶端主機經由本端DNS伺服器查找VM之識別符(例如,「偽」DNS名稱),以獲取正確的超管理器主機之網路位址。 只要代理伺服器代理者222及用戶端主機/應用程式共享相同名稱,則VM識別符之形式並不重要。系統可使用用於命名VMs之任何慣例,例如,客製URI(通用資源識別符)格式(諸如,「host#:vm#」)。 第6圖圖示處置來自用戶端主機188的封包223之超管理器主機198。代理伺服器代理者222結合虛擬化層或超管理器192操作,以執行程序280。在步驟282處,超管理器主機198接收封包223,該封包223包括目標VM之VM識別符(例如,「VM1」、「host1:VM1」等);VM 186。代理伺服器代理者222擷取VM識別符,且在步驟283處代理伺服器代理者222在頻道表284中查找VM識別符。頻道表283將通訊頻道224、224A映射至各別VM 186、VM 186A。每一通訊頻道224、224A可具有一對通訊端點,該對通訊端點包括超管理器側端點286及VM側端點288(在一個實施例中,VM側端點288為VM 186之虛擬NIC)。若步驟283找不到通訊頻道,則執行步驟290且建立新頻道。隨後將對新頻道之索引添加至頻道表284。注意到,虛擬NIC或管理NIC可為虛擬匯流排網路配接器,該虛擬匯流排網路配接器連接至內部網路開關,主機及VMs連接至該內部網路開關;具有自動內部IP位址(例如,169範圍中)之VMs。在一個實施例中,維持ACL(存取控制列表)與內部網路開關相關聯,以防止客VMs中之每一客VM在未經許可的情況下與彼此通訊;允許主機與VM通訊,但在ACL中缺少顯式許可的情況下不允許VM與VM通訊。 在已識別用於封包223之正確的通訊頻道224的情況下,在步驟292處超管理器192及/或代理伺服器代理者222將封包223傳遞至通訊頻道224。VM 186接著又執行程序294。在步驟296處客體184接收封包223。在步驟298處,基於封包223,客體184將封包223傳遞至客代理者182,該客代理者182繼續服務封包223之大量內容(例如,執行「命令某某」)。舉例而言,應用程式-協定類型之封包223(例如,HTTP)可能由客體映射至客代理者182收聽的埠號。亦即,客代理者182可在特定埠(例如,用於管理之經指定WS管理埠5986,用於資料之BITS埠8114等)上收聽。代理伺服器代理者222(例如,HTTP代理伺服器)在外部IP位址之(超管理器主機198之)相同埠(5986、8114)上收聽。代理伺服器代理者222隨後將任何進入訊務轉送至客VMs中的相應埠上,因此允許各種控制及資料訊務多工至客VMs上。 關於通訊頻道,在一個實施例中,通訊頻道基於用以輸送封包223至超管理器主機198之相同網路及/或傳送協定。實際上,通訊頻道可為超管理器主機192與VM 186之間的受限專用網路連接。在另一實施例中,代理伺服器代理者222可在將封包223轉送至VM 186之前觀察封包223且改變標頭資訊或者修正封包223。 實際上,自應用程式180及客代理者182之視角來看,該兩者能夠使用普通網路通訊協定及位址交換應用程式-位準通訊,就如VM可直接地自用戶端主機188存取或可直接地自用戶端主機188定址時該應用程式180及該客代理者182可能的那樣。關於接收封包,代理伺服器代理者222作用方式如同已知代理伺服器。 如以上所提及,通訊亦可來源於客體或客體184代理者182內且經由通訊頻道及虛擬化層傳遞至代理伺服器代理者222。舉例而言,客代理者182可配置有用戶端主機188之網路位址。代理伺服器代理者222接著又將源於客體之封包傳輸至用戶端主機188。 在一個實施例中,為提供VMs之可見性,當產生VM時,超管理器主機(執行VMs之主機)可自動註冊VM。舉例而言,超管理器主機可能將新項添加至VM-主機映射表226以用於新VM,從而識別主機及新VM。 結論 以上論述的實施例及特徵結構可以儲存於揮發性或非揮發性電腦或裝置可讀取媒體中的資訊之形式實現。此揮發性或非揮發性電腦或裝置可讀取媒體被認為包括諸如光學儲存器(例如,壓縮碟片唯讀記憶體(CD-ROM))、磁性媒體、快閃唯讀記憶體(ROM)或儲存數位資訊之任何當前或未來構件之至少媒體。所儲存的資訊可呈以下形式:機器可執行指令(例如,經編譯可執行二進制碼)、原始碼、位元組碼或可用以啟用或配置計算裝置以執行以上論述的各種實施例之任何其他資訊。此揮發性或非揮發性電腦或裝置可讀取媒體亦被認為包括在執行實施例的程式執行期間儲存諸如中央處理單元(CPU)指令之資訊的至少揮發性記憶體(諸如,隨機存取記憶體(RAM)及/或虛擬記憶體)以及儲存允許載入且執行程式或可執行程序的資訊之非揮發性媒體。實施例及特徵結構可在任何類型之計算裝置上執行,該任何類型之計算裝置包括攜帶型裝置、工作站、伺服器、行動無線裝置等等。 100‧‧‧虛擬化層 102‧‧‧電腦 104‧‧‧硬體 106‧‧‧中央處理單元 108‧‧‧記憶體 110‧‧‧網路介面 112‧‧‧非揮發性儲存器 114‧‧‧虛擬機器 140‧‧‧虛擬機器影像 141‧‧‧檔案系統 142‧‧‧程序 144‧‧‧程序 180‧‧‧應用程式 182‧‧‧代理者 184‧‧‧客體 186‧‧‧虛擬機器 186A‧‧‧虛擬機器 188‧‧‧用戶端主機 189‧‧‧網路介面卡 190‧‧‧網路 192‧‧‧超管理器 194‧‧‧傳送協定實施 196‧‧‧網路協定實施 198‧‧‧超管理器主機 202‧‧‧網路封包 220‧‧‧邏輯通訊路徑 222‧‧‧代理伺服器代理者 223‧‧‧網路封包 224‧‧‧通訊頻道 224A‧‧‧通訊頻道 226‧‧‧VM-主機映射/投送/VM-主機映射表 250‧‧‧程序 252‧‧‧步驟 254‧‧‧請求 256‧‧‧步驟 258‧‧‧步驟 260‧‧‧步驟 280‧‧‧程序 282‧‧‧步驟 283‧‧‧步驟 284‧‧‧頻道表 286‧‧‧超管理器側端點 288‧‧‧VM側端點 290‧‧‧步驟 292‧‧‧步驟 294‧‧‧程序 296‧‧‧步驟 298‧‧‧步驟 將自根據隨附圖式閱讀的以上詳細描述更好地理解本描述,其中相同元件符號用以指定伴隨描述中之相同元件。 第1圖圖示實例虛擬化層。 第2圖圖示虛擬化層相對於虛擬機器及虛擬機器影像之程序及互動。 第3圖圖示與代理者通訊的應用程式之實例,該代理者在由VM代管的客作業系統上執行。 第4圖圖示應用程式與VM之間的邏輯通訊路徑之概述。 第5圖圖示啟動與VM的連接之用戶端主機。 第6圖圖示處置來自用戶端主機的封包之超管理器主機。 180‧‧‧應用程式 186‧‧‧虛擬機器 188‧‧‧用戶端主機 190‧‧‧網路 198‧‧‧超管理器主機 220‧‧‧邏輯通訊路徑 222‧‧‧代理伺服器代理者 223‧‧‧網路封包 224‧‧‧通訊頻道 226‧‧‧VM-主機映射
权利要求:
Claims (20) [1] 一種提供一目標虛擬機器(VM)與一應用程式之間的網路連接性之方法,該目標虛擬機器(VM)在一第一主機上執行,該應用程式在一第二主機上執行,該方法包含以下步驟:經由該第一主機處的一網路接收由該應用程式啟動的一連接請求,該請求包含識別該目標VM之資訊;在管理該VM的一超管理器與該目標VM之間形成一通訊頻道;以及經由該頻道將該請求傳遞至該目標VM。 [2] 如請求項1所述之方法,其中該通訊頻道可僅對該超管理器及該目標VM存取,以使得該第一主機上之另一VM在未經授權的情況下無法使用該通訊頻道與該目標VM通訊。 [3] 如請求項1所述之方法,其中該等封包包含網際網路協定封包,其中該第一主機具有一第一網際網路協定(IP)位址,該第二主機具有一第二IP位址,且該目標VM具有一第三IP位址,其中該網路不能夠將封包自該第二主機之該第二IP位址投送至該VM之該第三IP位址。 [4] 如請求項3所述之方法,該方法進一步包含以下步驟:藉由該第二主機將該等封包定址至該第一IP位址,來將封包自該第二主機發送至該第一主機。 [5] 如請求項4所述之方法,其中該等封包包含符合一應用程式位準協定之有效負載,該方法進一步包含以下步驟:在經由通訊頻道已由該VM接收該等封包之後,將該等有效負載輸送至在該VM上執行的一代理者。 [6] 如請求項1所述之方法,其中該通訊頻道包含該超管理器之一內部網路開關及一虛擬網路介面卡,該虛擬網路介面卡由該超管理器提供且分配至該目標VM。 [7] 如請求項1所述之方法,其中該超管理器及該第一主機上之一代理伺服器代理者合作,以允許該第二主機使用一標準網路協定與該目標VM通訊。 [8] 一種儲存使得一電腦能夠執行一程序的資訊之電腦可讀取儲存媒體,該程序包含:執行一虛擬機器(VM)及該VM上之一客作業系統,其中該VM包含一網路位準協定之一實施及一傳送協定之一實施,且其中該VM之執行由該電腦上的一超管理器管理;在該電腦上執行一代理伺服器代理者;以及在該電腦處接收封包,該等封包符合一協定且已被定址並被使用一網路協定發送至該電腦之一網路位址,其中該代理伺服器代理者決定該VM將接收該等封包,且作為回應,該超管理器經由該VM與該超管理器之間的一專用通訊頻道將該等封包傳遞至該VM。 [9] 如請求項8所述之電腦可讀取儲存媒體,其中該VM實施該網路協定且具有根據該網路協定之一網路位址,經由該網路將該等封包傳輸至該電腦之一主機不具有經由該網路及該網路協定與該VM之該網路位址的直接連接性。 [10] 如請求項8所述之電腦可讀取儲存媒體,該程序進一步包含:在該電腦處維持頻道資訊,該頻道資訊指示哪些VMs對應於由該超管理器管理的哪些VMs。 [11] 如請求項10所述之電腦可讀取儲存媒體,該程序進一步包含:基於該頻道資訊選擇該通訊頻道。 [12] 如請求項10所述之電腦可讀取儲存媒體,該選擇之步驟包含:使用該等封包中之該VM之一識別符。 [13] 如請求項8所述之電腦可讀取儲存媒體,該程序進一步包含:在該VM上的一客作業系統處接收該等封包。 [14] 如請求項13所述之電腦可讀取儲存媒體,該程序進一步包含:將該等封包傳遞至在該客作業系統上執行的一客代理者。 [15] 一種方法,其中一第一主機包含一虛擬化層,該虛擬化層管理虛擬機器(VMs)在該第一主機之執行,該方法包含以下步驟:在該虛擬化層與一VM之間建立一通訊頻道,該VM包含該第一主機上的該等VMs中之一個VM,該通訊頻道在該虛擬化層中具有一第一端點且在該VM中具有一第二端點;在該第一主機處經由一網路自一第二主機接收封包;以及在該第二主機與該VM之間藉由一代理伺服器代理者啟用間接的網路連接性,該代理伺服器代理者在該第一主機上執行,該代理伺服器代理者使該虛擬化層經由該等通訊頻道中之一個通訊頻道將該等封包傳遞至該VM。 [16] 如請求項16所述之方法,該方法進一步包含以下步驟:分別維持與該虛擬化層與該等VMs之間的通訊頻道相關聯的關聯資訊,且當一封包由該代理伺服器代理者處置時,該代理伺服器代理者使用該關聯資訊選擇一通訊頻道,該通訊頻道將載運該封包至該等VMs中之一個VM。 [17] 如請求項16所述之方法,其中該代理伺服器代理者包含一超文字傳送協定(HTTP)。 [18] 如請求項17所述之方法,其中該等封包包含HTTP標頭,該等HTTP標頭包含識別該等VMs之識別符,且該代理伺服器代理者讀取該等HTTP標頭、擷取該等識別符且使用該等識別符來選擇欲接收該等封包之頻道。 [19] 如請求項15所述之方法,其中該VM之一客作業系統實施一傳送協定及一網路協定,以允許經由該客體之一網路位址連接至該客作業系統,其中該第二主機不能夠使用該網路協定及該網路位址經由該網路直接連接至該VM,其中該方法進一步包含以下步驟:該第二主機將該等封包定址至該第一主機之一網路位址。 [20] 如請求項15所述之方法,其中包括該第一主機之複數個超管理器主機代管包括該VM之複數個VMs,該方法包含以下步驟:維持VM-主機資訊,該VM-主機資訊指示該等超管理器主機中之哪些超管理器主機代管該等VMs中之哪些VM,且使用該VM-主機資訊來將該等封包定址至該第一主機。
类似技术:
公开号 | 公开日 | 专利标题 TWI544417B|2016-08-01|用於主機啟用管理頻道的方法及電腦可讀取儲存裝置 JP6677782B2|2020-04-08|仮想ネットワークインタフェースオブジェクト US9893977B2|2018-02-13|System and method for supporting live migration of virtual machines in a virtualization environment US10333889B2|2019-06-25|Central namespace controller for multi-tenant cloud environments US9860309B2|2018-01-02|Hybrid cloud network monitoring system for tenant use EP3525423B1|2021-04-07|Packet processing method in cloud computing system, host, and system EP2831729B1|2019-01-09|System and method for supporting live migration of virtual machines based on an extended host channel adaptor | model US8725898B1|2014-05-13|Scalable port address translations JP6771650B2|2020-10-21|クラウドコンピューティングシステムにおいて仮想マシンが物理サーバにアクセスするための方法、装置、およびシステム GB2511435B|2019-10-23|Virtual network overlays JP2014524086A5|2015-07-23| US9928093B2|2018-03-27|Methods and systems for establishing connections associated with virtual machine migrations US20140006638A1|2014-01-02|Method and a network node, for use in a data center, for routing an ipv4 packet over an ipv6 network US10237235B1|2019-03-19|System for network address translation US10853126B2|2020-12-01|Reprogramming network infrastructure in response to VM mobility US20200296077A1|2020-09-17|Methods for enabling enhanced firewall rules via arp-based annotations JP2022507398A|2022-01-18|プロバイダネットワークサービス拡張 WO2017083194A1|2017-05-18|Scalable addressing mechanism for virtual machines
同族专利:
公开号 | 公开日 EP3490222A1|2019-05-29| CN103621041A|2014-03-05| US20160248818A1|2016-08-25| JP6077536B2|2017-02-08| EP2724512B1|2019-01-16| WO2013002978A3|2013-04-11| US9191454B2|2015-11-17| EP3490222B1|2020-04-15| ES2719301T3|2019-07-09| EP2724512A2|2014-04-30| KR101948951B1|2019-02-15| JP2014524086A|2014-09-18| TWI544417B|2016-08-01| EP2724512A4|2015-08-05| US20120331461A1|2012-12-27| US9807129B2|2017-10-31| KR20140037145A|2014-03-26| CN103621041B|2017-02-08| WO2013002978A2|2013-01-03|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题 US7424710B1|2002-12-18|2008-09-09|Vmware, Inc.|TCP/IP offloading for virtual machines| US7257811B2|2004-05-11|2007-08-14|International Business Machines Corporation|System, method and program to migrate a virtual machine| US7434003B2|2005-11-15|2008-10-07|Microsoft Corporation|Efficient operating system operation on a hypervisor| WO2007087558A2|2006-01-24|2007-08-02|Citrix Systems, Inc.|Methods and systems for providing access to a computing environment| US20070174429A1|2006-01-24|2007-07-26|Citrix Systems, Inc.|Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment| JP4434168B2|2006-03-30|2010-03-17|日本電気株式会社|オンデマンドクライアントサービスシステム、その管理方法、及びプログラム| US7546398B2|2006-08-01|2009-06-09|International Business Machines Corporation|System and method for distributing virtual input/output operations across multiple logical partitions| US7996835B2|2006-10-10|2011-08-09|International Business Machines Corporation|System, method and program for managing communication with multiple configurations for virtual machine| US8079030B1|2007-03-13|2011-12-13|Symantec Corporation|Detecting stealth network communications| US7984449B2|2007-08-15|2011-07-19|International Business Machines Corporation|In-band communication with virtual machines via a hypervisor message bus| US8156492B2|2007-09-07|2012-04-10|Oracle International Corporation|System and method to improve memory usage in virtual machines running as hypervisor guests| US20090287571A1|2008-03-26|2009-11-19|Robb Fujioka|Hypervisor and virtual machine ware| US8359593B2|2008-04-21|2013-01-22|Vmware, Inc.|Computer machine migration of file system images using a redo-log file| US8195774B2|2008-05-23|2012-06-05|Vmware, Inc.|Distributed virtual switch for virtualized computer systems| US8195867B2|2008-06-06|2012-06-05|International Business Machines Corporation|Controlled shut-down of partitions within a shared memory partition data processing system| CN101631110B|2008-07-15|2013-01-02|国际商业机器公司|基于相对位置动态确定连接建立机制的装置和方法| US9009329B2|2008-11-25|2015-04-14|Microsoft Technology Licensing, Llc|Platform for enabling terminal services virtualization| US9086913B2|2008-12-31|2015-07-21|Intel Corporation|Processor extensions for execution of secure embedded containers| US9344401B2|2009-02-04|2016-05-17|Citrix Systems, Inc.|Methods and systems for providing translations of data retrieved from a storage system in a cloud computing environment| US8150971B2|2009-05-31|2012-04-03|Red Hat Israel, Ltd.|Mechanism for migration of client-side virtual machine system resources| US8352941B1|2009-06-29|2013-01-08|Emc Corporation|Scalable and secure high-level storage access for cloud computing platforms| US8954957B2|2009-07-01|2015-02-10|Riverbed Technology, Inc.|Network traffic processing according to network traffic rule criteria and transferring network traffic metadata in a network device that includes hosted virtual machines| US8238324B2|2009-07-24|2012-08-07|Broadcom Corporation|Method and system for network aware virtual machines| CN101998629B|2009-08-28|2014-05-21|国际商业机器公司|搜索虚拟资源的位置的方法、装置和系统| JP5403061B2|2009-09-24|2014-01-29|日本電気株式会社|仮想サーバ間通信識別システム、及び仮想サーバ間通信識別方法| US8392497B2|2009-11-25|2013-03-05|Framehawk, LLC|Systems and algorithm for interfacing with a virtualized computing service over a network using a lightweight client| US20110131330A1|2009-12-02|2011-06-02|International Business Machines Corporation|Collocating desktop virtual machines to proximity of the user| WO2011068091A1|2009-12-04|2011-06-09|日本電気株式会社|サーバ及びフロー制御プログラム| US8468550B2|2010-06-18|2013-06-18|At&T Intellectual Property I, L.P.|Mobile devices having plurality of virtual interfaces| US20120054486A1|2010-08-31|2012-03-01|MindTree Limited|Securing A Virtual Environment And Virtual Machines| US9473518B2|2010-10-22|2016-10-18|International Business Machines Corporation|Securing network communications with logical partitions| US20120287931A1|2011-05-13|2012-11-15|International Business Machines Corporation|Techniques for securing a virtualized computing environment using a physical network switch| US20140006638A1|2012-06-29|2014-01-02|Alan Kavanagh|Method and a network node, for use in a data center, for routing an ipv4 packet over an ipv6 network|JPWO2005115205A1|2004-05-26|2008-03-27|友田セーリング株式会社|間接加熱ボイル装置、間接加熱冷却装置および濃縮装置| TWI451245B|2011-09-14|2014-09-01|Inst Information Industry|虛擬機器監控方法、系統及儲存其之電腦可讀取紀錄媒體| JP5852677B2|2011-12-26|2016-02-03|インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation|レジスタ・マッピング方法| CN102726027B|2011-12-28|2014-05-21|华为技术有限公司|虚拟机全盘加密下预启动时的密钥传输方法和设备| US8825550B2|2012-08-23|2014-09-02|Amazon Technologies, Inc.|Scaling a virtual machine instance| US9135051B2|2012-11-02|2015-09-15|Red Hat Israel, Ltd.|Redirecting guest-generated events to an event aggregator in a networked virtualization environment| US9141416B2|2013-03-15|2015-09-22|Centurylink Intellectual Property Llc|Virtualization congestion control framework for modifying execution of applications on virtual machine based on mass congestion indicator in host computing system| US9430259B2|2013-03-15|2016-08-30|Centurylink Intellectual Property Llc|Virtualization congestion control framework for modifying execution of applications on virtual machine based on mass congestion indicator in host computing system| US10389577B2|2013-08-14|2019-08-20|Centurylink Intellectual Property Llc|Ethernet carrier group alarm | US9628433B2|2013-08-27|2017-04-18|International Business Machines Corporation|Transmission of short message servicemessage and notifications in virtualized wireless mobile computing device based on the status of intended recipient| US9619248B2|2013-08-30|2017-04-11|Bluedata Software, Inc.|Configuration manager and method for configuring a host system for processing a processing job in a virtual data-processing environment| US9832256B1|2013-09-20|2017-11-28|Ca, Inc.|Assigning client virtual machines based on location| US9065854B2|2013-10-28|2015-06-23|Citrix Systems, Inc.|Systems and methods for managing a guest virtual machine executing within a virtualized environment| US9864623B2|2013-11-21|2018-01-09|Centurylink Intellectual Property Llc|Physical to virtual network transport function abstraction| GB2521412A|2013-12-18|2015-06-24|Continuumbridge Ltd|An apparatus for network bridging| KR101571810B1|2013-12-30|2015-11-25|주식회사 시큐아이|복수의 가상 머신들을 포함하는 컴퓨팅 시스템| JP6591143B2|2014-03-31|2019-10-16|株式会社東芝|通信装置、通信方法、通信システムおよびプログラム| US10110710B2|2014-04-03|2018-10-23|Centurylink Intellectual Property Llc|System and method for implementing extension of customer LAN at provider network service point| US9948493B2|2014-04-03|2018-04-17|Centurylink Intellectual Property Llc|Network functions virtualization interconnection gateway| US10673978B2|2015-05-06|2020-06-02|Centurylink Intellectual Property Llc|Method and system for implementing network experience shifting using shared objects| US10481938B2|2015-05-06|2019-11-19|Centurylink Intellectual Property Llc|System and method for implementing network experience shifting| US20170171606A1|2014-04-30|2017-06-15|Lg Electronics Inc.|Broadcast signal transmitting device, broadcast signal receiving device, broadcast signal transmitting method, and broadcast signal receiving method| US9762625B2|2014-05-28|2017-09-12|Apple Inc.|Device and method for virtual private network connection establishment| US10225327B2|2014-08-13|2019-03-05|Centurylink Intellectual Property Llc|Remoting application servers| US9898318B2|2014-08-15|2018-02-20|Centurylink Intellectual Property Llc|Multi-line/multi-state virtualized OAM transponder| US9697026B1|2014-10-17|2017-07-04|Trend Micro Inc.|High availability service virtual machine in virtualization environment| US10169061B2|2015-05-06|2019-01-01|Ford Global Technologies, Llc|Scalable and flexible operating system platform| US9882833B2|2015-09-28|2018-01-30|Centurylink Intellectual Property Llc|Intent-based services orchestration| US10078528B2|2015-10-06|2018-09-18|Centurylink Intellectual Property Llc|Virtual machine-to-port peripheral device driver for implementing communications between virtual machines and client devices| US10846117B1|2015-12-10|2020-11-24|Fireeye, Inc.|Technique for establishing secure communication between host and guest processes of a virtualization architecture| CN105681547B|2015-12-31|2019-07-19|努比亚技术有限公司|中间件实例管理装置和方法| US9930029B2|2016-02-25|2018-03-27|Nutanix, Inc.|Hypervisor agnostic bidirectional secure channel for guest agent transport| US10270692B1|2016-11-10|2019-04-23|Juniper Networks, Inc.|Establishing a connection to multiple network devices using a single internet protocoladdress| US10360410B2|2016-11-14|2019-07-23|International Business Machines Corporation|Providing containers access to container daemon in multi-tenant environment| US10810030B2|2016-12-06|2020-10-20|Nutanix, Inc.|Identifying entities in a virtualization environment by converting heterogeneous string identifiers for interaction with a single API| US10496439B1|2016-12-15|2019-12-03|Space Sciences Corporation|Finite resource allocator with intrinsically subordinate operating system| US10191762B2|2017-01-31|2019-01-29|Vmware, Inc.|Transparent deployment of intermediary manager into guest operating system network traffic| US10644948B1|2017-08-29|2020-05-05|Juniper Networks, Inc.|Hypervisor detection of virtual machine and network interface compatibility| KR102337182B1|2017-09-29|2021-12-09|한국전력공사|기능 확장용 미들웨어 플랫폼이 탑재된 전자식 전력량계, 이를 이용한 전력량계 애플리케이션 관리 시스템 및 그 방법| US11044229B2|2017-12-22|2021-06-22|International Business Machines Corporation|Dynamically opening ports for trusted application processes hosted in containers| US10909010B2|2018-04-10|2021-02-02|Nutanix, Inc.|Efficient data restoration| US11182187B2|2018-04-17|2021-11-23|Red Hat Israel, Ltd.|Dynamic network connectivity verification in distributed virtual environments| KR102327886B1|2021-03-30|2021-11-18|지란지교시큐리티|가상 머신 운영 장치 및 방법|
法律状态:
2019-05-01| MM4A| Annulment or lapse of patent due to non-payment of fees|
优先权:
[返回顶部]
申请号 | 申请日 | 专利标题 US13/169,024|US9191454B2|2011-06-27|2011-06-27|Host enabled management channel| 相关专利
Sulfonates, polymers, resist compositions and patterning process
Washing machine
Washing machine
Device for fixture finishing and tension adjusting of membrane
Structure for Equipping Band in a Plane Cathode Ray Tube
Process for preparation of 7 alpha-carboxyl 9, 11-epoxy steroids and intermediates useful therein an
国家/地区
|