国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      到云計算環(huán)境中的工作空間的低延遲連接的制作方法

      文檔序號:12287755閱讀:496來源:國知局
      到云計算環(huán)境中的工作空間的低延遲連接的制作方法與工藝

      許多公司和其他組織操作計算機網絡,所述計算機網絡使眾多計算系統(tǒng)互連以支持它們的操作,諸如其中計算系統(tǒng)位于同一位置(例如,作為本地網絡的一部分)或者替代地位于多個不同的地理位置中(例如,經由一個或多個私有或公共中間網絡加以連接)。例如,容納顯著數(shù)量的互連的計算系統(tǒng)的數(shù)據(jù)中心已變得司空見慣,諸如由單個組織操作并用于所述組織的私有數(shù)據(jù)中心和由實體進行商業(yè)運營來向顧客或客戶端提供計算資源的公共數(shù)據(jù)中心。一些公共數(shù)據(jù)中心運營商為由各種客戶端所擁有的硬件提供網絡訪問、電力以及安全安裝設施,而其他公共數(shù)據(jù)中心運營商提供還包括可供其客戶端使用的硬件資源的“全方位服務”設施。然而,隨著典型數(shù)據(jù)中心規(guī)模和范圍的不斷擴大,供應、操縱和管理物理計算資源的任務變得越來越復雜。

      用于商用硬件的虛擬化技術的出現(xiàn)已針對管理大規(guī)模計算資源而為具有多樣化需求的許多客戶端提供益處,從而允許各種計算資源有效且安全地由多個客戶端共享。例如,虛擬化技術可通過為每個用戶提供由單個物理計算機器托管的一個或多個虛擬機而允許所述單個物理計算機器在多個用戶之間共享,其中每個此類虛擬機是充當不同邏輯計算系統(tǒng)的軟件模擬,所述邏輯計算系統(tǒng)為用戶提供以為自己是給定硬件計算資源的唯一操作者和管理員的錯覺,同時還提供各種虛擬機之間的應用隔離和安全性。此外,一些虛擬化技術能夠提供跨越兩個或更多個物理資源的虛擬資源,諸如具有跨越多個不同物理計算系統(tǒng)的多個虛擬處理器的單個虛擬機。利用虛擬化,單個物理計算裝置可按照動態(tài)方式創(chuàng)建、維持或刪除虛擬機。反過來,用戶可從數(shù)據(jù)中心請求計算機資源并在“按需”基礎上或至少在“按請求”基礎上被提供變化數(shù)量的虛擬機資源。在一些系統(tǒng)中,虛擬化計算資源可用于實現(xiàn)虛擬桌面。

      附圖說明

      圖1為示出根據(jù)至少一些實施方案的示例性提供者網絡環(huán)境的方框圖。

      圖2為示出根據(jù)至少一些實施方案的示例性提供者網絡的方框圖,所述提供者網絡向客戶端提供存儲虛擬化服務和硬件虛擬化服務。

      圖3為示出根據(jù)至少一些實施方案的聯(lián)網計算環(huán)境的方框圖,所述聯(lián)網計算環(huán)境包括與服務提供者計算機網絡通信的客戶端計算裝置。

      圖4為示出根據(jù)至少一些實施方案的示例性服務提供者數(shù)據(jù)中心的方框圖。

      圖5為示出根據(jù)至少一些實施方案的向客戶端提供私有網絡的示例性提供者網絡的方框圖。

      圖6為示出根據(jù)至少一些實施方案的示例性聯(lián)網環(huán)境的方框圖,在所述示例性聯(lián)網環(huán)境中向客戶端提供虛擬桌面服務。

      圖7A為示出根據(jù)至少一些實施方案的示例性聯(lián)網環(huán)境的方框圖,在所述示例性聯(lián)網環(huán)境中,位于存在點位置處的網關部件在虛擬桌面服務的虛擬私有云內操作。

      圖7B為示出根據(jù)至少一些實施方案的示例性聯(lián)網環(huán)境的方框圖,在所述示例性聯(lián)網環(huán)境中,位于存在點位置處的一些網關部件在虛擬桌面服務的虛擬私有云內操作并且其他在對等VPC內操作。

      圖8為示出方法的一個實施方案的流程圖,所述方法用于通過位于存在點位置處的網關部件向客戶端提供虛擬桌面服務。

      圖9為示出方法的一個實施方案的流程圖,所述方法用于通過位于存在點位置處的網關部件,管理工作空間提供者與客戶端之間的交互視頻流量。

      圖10為示出方法的一個實施方案的流程圖,所述方法用于通過位于存在點位置處的網關部件,使客戶端連接到工作空間服務并且與工作空間服務通信。

      圖11為示出根據(jù)不同實施方案的示例性計算機系統(tǒng)方框圖,所述示例性計算機系統(tǒng)實現(xiàn)本文所描述的一些或所有技術。

      雖然在本文中通過對若干實施方案和示意性附圖舉例的方式描述了實施方案,但本領域的那些技術人員應認識到,實施方案不限于所描述的實施方案或附圖。應理解,附圖和對其的詳細描述并非意圖將實施方案限于所公開的特定形式,而相反,其意圖在于涵蓋落入由所附權利要求書限定的精神和范圍內的所有修改、等效物和替代方案。本文中使用的標題都僅用于組織目的,并且并不意圖用于限制本說明書或權利要求書的范圍。貫穿本申請所使用的詞語“可以”是在許可的意義上(即意指具有可能性)、而非強制的意義上(即意指必須)使用。類似地,詞語“包括(include/including/includes)”表示包括但不限于。

      具體實施方式

      用于提供到系統(tǒng)中的工作空間(例如,虛擬桌面實例)的低延遲連接(或通信通道)的系統(tǒng)和方法的各種實施方案在本文中描述,所述系統(tǒng)向客戶端提供虛擬化計算資源。提供虛擬計算服務的計算系統(tǒng)可產生和管理在客戶端計算裝置與托管在服務提供者的網絡上的虛擬桌面實例(工作空間)之間的遠程計算會話。例如,系統(tǒng)可實現(xiàn)工作空間服務,交互視頻流通過所述工作空間服務遞送到終端用戶(在其自身計算裝置上)。工作空間服務性能的一大部分(例如,在遞送交互視頻流中的延遲和/或所遞送的視頻流的質量)可取決于提供連接的網絡(或網絡系列),交互視頻流通過所述連接遞送到終端用戶(例如,從托管在服務提供者的網絡上的虛擬計算資源實例一直到坐落在終端用戶的辦公室中的客戶端裝置的通信通道)。一般來說,交互視頻流的遞送可以是非常時間敏感的,因為任何種類的不利網絡影響可影響針對終端用戶的連接的質量。在一些實施方案中,本文所描述的系統(tǒng)和方法可最小化該路徑的部分,所述部分橫越公共網絡(例如,公共互聯(lián)網)并且因此將交互視頻流暴露到相對低質量網絡,工作空間服務對所述相對低質量網絡幾乎沒有控制。

      在一些實施方案中,本文所描述的系統(tǒng)可實現(xiàn)用于工作空間服務的虛擬私有云(VPC),其向外延伸到在多個地理分布的存在點(POP)位置處的安全網關部件或訪問網關部件(在本文中有時被稱為“網關部件”或簡單地稱為“網關”)。換言之,這些系統(tǒng)可包括網關部件,所述網關部件在靠近終端用戶的客戶端裝置物理定位的計算節(jié)點上執(zhí)行,同時在操作工作空間服務的VPC內操作(并且在工作空間服務的控制下保持)。在一些實施方案中,此方法可通過使用安全、可靠、低延遲、高帶寬、低損耗和低抖動通信通道來提供高質量連接和終端用戶體驗,所述通信通道用于在切換到網關部件與客戶端裝置之間的潛在較不可靠、較高延遲公共網絡連接之前,將虛擬桌面會話的交互視頻流傳送直到盡可能靠近客戶端裝置的點。注意,術語“連接”和“通信通道”在以下的描述中可在某種程度上可互換地使用。然而,在各種實施方案中,在虛擬桌面實例與客戶端裝置之間的通過網關部件的連接或通信通道可能實現(xiàn)或可能未實現(xiàn)(或依賴)高級別信號交換協(xié)議,并且不限于特定類型的聯(lián)網部件或在聯(lián)網部件之間的特定類型的虛擬連接或物理連接。

      在一些實施方案中,服務提供者的聯(lián)網環(huán)境可包括多個虛擬桌面實例,所述多個虛擬桌面實例中的每一個托管在共同實現(xiàn)虛擬桌面(工作空間)服務的多個計算節(jié)點中的相應一個上。這些計算節(jié)點可定位在多個可用性區(qū)中(例如,在不同建筑物、城市、國家或區(qū)域中)的數(shù)據(jù)中心內。在一些實施方案中,此聯(lián)網環(huán)境可包括多個網關部件,所述多個網關部件中的每一個托管在可用性區(qū)中的一個的POP位置處的相應計算節(jié)點上。如在本文中更詳細描述的,虛擬桌面服務的這些網關部件和管理部件可在虛擬桌面服務的虛擬私有云內彼此互操作,并且可通過虛擬私有網絡彼此通信。在一些實施方案中,可使用托管在POP位置處的計算節(jié)點上的虛擬化資源實例來實現(xiàn)網關部件。

      在一些實施方案中,響應于對虛擬桌面會話的客戶端請求,服務可將虛擬計算資源實例配置成虛擬桌面實例(其上實現(xiàn)虛擬桌面會話)。此虛擬計算資源實例可以是多個虛擬資源實例中的一個,所述多個虛擬資源實例在客戶端的虛擬私有云內操作(或參與),所述多個虛擬資源實例代表所述客戶端被例示和/或配置(例如,代表其從客戶端裝置接收請求的客戶端)。一個或多個其他虛擬計算資源實例可被配置來實現(xiàn)服務的管理部件。

      響應于對虛擬桌面會話的客戶端請求,服務也可建立在虛擬計算資源實例與位于客戶端裝置附近的POP位置處的網關部件之間的安全、可靠、低延遲連接(例如,通過虛擬私有網絡),以用于會話的雙向交互視頻流的傳送。例如,交互視頻流可包括從虛擬桌面實例傳送到客戶端裝置的像素流、以及從客戶端裝置傳送到虛擬桌面實例的輸入,所述輸入表示與虛擬桌面實例的用戶交互。在一些實施方案中,交互視頻流可包括命令,所述命令從虛擬桌面實例傳送到客戶端裝置,并且表示指導客戶端裝置產生和/或呈現(xiàn)用于通過客戶端裝置顯示的像素(例如,代替像素流或除像素流之外)的指令。如在本文中更詳細描述的,網關部件可以是托管在各種POP位置處的多個此類網關部件中的一個,并且可至少部分由于其鄰近客戶端被選擇用于在提供會話中使用。例如,網關部件可以是托管在與客戶端裝置(從其接收請求)相同的城市、國家或區(qū)域中的POP位置處的多個網關部件中的一個。注意,網關部件被托管在其中的可用性區(qū)可不同于用于會話的資源實例位于其中的可用性區(qū)。在一些實施方案中,服務的管理部件(例如,在服務的VPC內操作的管理部件)可自動選擇網關部件,而在其他實施方案中服務的客戶端部分可選擇網關部件。一旦服務已經建立在虛擬計算資源實例與網關部件之間的連接(并且在客戶端裝置與網關部件之間建立連接),服務可在虛擬桌面會話上開始虛擬桌面會話并且發(fā)起用于會話的交互視頻流的傳送。

      在不同實施方案中,本文所描述的系統(tǒng)和方法可在網絡環(huán)境上實現(xiàn),或通過網絡環(huán)境內的一個或多個計算系統(tǒng)實現(xiàn)。在圖11中示出在其上可實現(xiàn)用于固定在本文所描述的云計算環(huán)境中的工作空間的技術的實施方案的示例性計算機系統(tǒng)。用于實現(xiàn)這些技術的各種系統(tǒng)和方法的實施方案通常在服務提供者的背景下在本文中描述,所述服務提供者通過中間網絡(諸如互聯(lián)網)向客戶端提供虛擬化資源(例如,虛擬化計算和存儲資源),所述虛擬化資源在服務提供者的提供者網絡上實現(xiàn)。圖1-7和圖11(以及其對應描述)示出和描述示例性環(huán)境,在所述示例性環(huán)境中,本文所描述的系統(tǒng)和方法的實施方案可實現(xiàn)并且不旨在是限制的。在至少一些實施方案中,通過提供者網絡向服務提供者的客戶端提供的資源中的至少一些可以是在與其他客戶端共享的多租戶硬件上和/或專用于特定客戶端的硬件上實現(xiàn)的虛擬化計算資源。每個虛擬化計算資源可稱為資源實例。資源實例可例如租借或租賃給服務提供者的客戶端。例如,服務提供者的客戶端可經由對服務的API訪問提供者網絡的一個或多個服務,以便獲得和配置資源實例以及建立和管理包括資源實例的虛擬網絡配置(例如,虛擬化私有網絡)。

      在一些實施方案中,資源實例可例如根據(jù)硬件虛擬化技術來實現(xiàn),所述硬件虛擬化技術使得多個操作系統(tǒng)能夠同時在主計算機上(即,作為主機上的虛擬機(VM))運行。主機上的管理程序或虛擬機監(jiān)視器(VMM)可通過虛擬平臺呈現(xiàn)主機上的VM并且監(jiān)測VM的執(zhí)行。每個VM可設置有一個或多個私有IP地址;主機上的VMM可以知道主機上的VM的私有IP地址。采用這種硬件虛擬化技術的系統(tǒng)的示例在圖4中示出并且在以下詳細描述。

      注意,在各種實施方案中,本文所描述的用于提供虛擬計算服務的系統(tǒng)可跨多個“可用性區(qū)”部署,所述“可用性區(qū)”的每個可包括其自身物理不同的獨立基礎設施,在所述基礎設施上實現(xiàn)一系列計算節(jié)點。在一些實施方案中,每個可用性區(qū)可駐留在不同地理位置或區(qū)域中,而在其他實施方案中,多個可用性區(qū)可駐留在相同地理位置或區(qū)域中。

      示例性提供者網絡環(huán)境

      這個部分描述了其中可實現(xiàn)如本文所述的方法的實施方案的示例性提供者網絡環(huán)境。然而,這些示例性提供者網絡環(huán)境并非旨在進行限制。在各種實施方案中,在這些提供者網絡環(huán)境中,服務提供者可托管代表顧客的可以被終端用戶訪問的虛擬化資源實例。例如,與代表其托管虛擬化資源實例的顧客相關聯(lián)的終端用戶(例如,相同組織或企業(yè)的成員)可以能夠使用客戶端裝置上的客戶端應用來訪問虛擬化資源實例。在一些實施方案中,虛擬化資源實例可被配置來實現(xiàn)虛擬桌面實例。

      圖1示出根據(jù)至少一些實施方案的示例性提供者網絡環(huán)境。提供者網絡100可通過一個或多個虛擬化服務110向客戶端提供資源虛擬化,所述一個或多個虛擬化服務110允許客戶端購買、租借或以其他方式獲得在一個或多個數(shù)據(jù)中心中的提供者網絡或多個提供者網絡內的裝置上實現(xiàn)的虛擬化資源(包括但不限于計算和存儲資源)的實例112。私有IP地址116可與資源實例112相關聯(lián);私有IP地址是提供者網絡100上的資源實例112的內部網絡地址。在一些實施方案中,提供者網絡100還可提供客戶端可從提供者100獲得的公共IP地址114和/或公共IP地址范圍(例如,第四版互聯(lián)網協(xié)議(IPv4)地址或第六版互聯(lián)網協(xié)議(IPv6)地址)。

      常規(guī)地,提供者網絡100通過虛擬化服務110可允許服務提供者的客戶端(例如,操作客戶端網絡150A、150B或150C的客戶端,所述客戶端網絡中的每一個可包括一個或多個客戶端裝置152)動態(tài)地使指派或分配給客戶端的至少一些公共IP地址114與指派給客戶端的特定資源實例112相關聯(lián)。提供者網絡100還可允許客戶端將先前映射到分配給客戶端的一個虛擬化計算資源實例112的公共IP地址114重新映射到同樣分配給客戶端的另一個虛擬化計算資源實例112。例如,使用由服務提供者提供的虛擬化計算資源實例112和公共IP地址114,服務提供者的客戶端(諸如客戶端網絡150A的操作者)可實現(xiàn)客戶端特定的應用并且將客戶端的應用呈現(xiàn)在中間網絡140(諸如互聯(lián)網)上。中間網絡140上的其他網絡實體120然后可產生到由客戶端網絡150A發(fā)布的目的地公共IP地址114的流量;流量路由到服務提供者數(shù)據(jù)中心,并且在數(shù)據(jù)中心處通過網絡底層路由到虛擬化計算資源實例112的當前映射到目的地公共IP地址114的私有IP地址116。類似地,來自虛擬化計算資源實例112的響應流量可通過網絡底層路由回到中間網絡140上,到源實體120。

      如本文所使用的私有IP地址是指提供者網絡中的資源實例的內部網絡地址。私有IP地址只可在提供者網絡內路由。源于提供者網絡外部的網絡流量不直接路由至私有IP地址;替代地,流量使用映射至資源實例的公共IP地址。提供者網絡可包括提供網絡地址轉換(NAT)或類似功能以執(zhí)行從公共IP地址到私有IP地址并且反之亦然的映射的網絡裝置或設備。

      如本文使用,公眾IP地址是由服務提供者或客戶端分配至資源實例的互聯(lián)網可路由網絡地址。路由至公共IP地址的流量例如經由1:1網絡地址轉換(NAT)來轉換,并且轉發(fā)至資源實例的相應私有IP地址。

      一些公共IP地址可由提供者網絡基礎設施指派給特定資源實例;這些公共IP地址可稱為標準公共IP地址或簡單地稱為標準IP地址。在至少一些實施方案中,將資源實例的標準IP地址映射至私有IP地址是所有資源實例類型的默認啟動配置。

      至少一些公共IP地址可被分配給提供者網絡100的客戶端或由其獲得;客戶端然后可將其被分配的公共IP地址指派給分配給客戶端的特定資源實例。這些公共IP地址可稱為客戶端公共IP地址或簡單地稱為客戶端IP地址。替代如標準IP地址的情況下那樣由提供者網絡100指派給資源實例,客戶端IP地址可由客戶端通過例如由服務提供者提供的API指派給資源實例。不像標準IP地址,客戶端IP地址可以被分配給客戶端賬戶并且由相應客戶端根據(jù)需要或希望重新映射到其他資源實例。在一些實施方案中,客戶端IP地址與客戶端的賬戶而不是特定資源實例相關聯(lián),并且客戶端控制所述IP地址,直到客戶端選擇釋放它為止。不像常規(guī)靜態(tài)IP地址,客戶端IP地址可允許客戶端通過將客戶端的公共IP地址重新映射到與客戶端的賬戶相關聯(lián)的任何資源實例來屏蔽資源實例或可用性區(qū)故障。客戶端IP地址例如可使得客戶端能夠通過將客戶端IP地址重新映射到替換資源實例來解決客戶端的資源實例或軟件的問題。

      還應注意,在一些實施方案中,經由虛擬化服務110使其對于客戶端(例如,客戶端裝置152)可用的資源實例112可包括多個網絡接口。例如,至少一些虛擬化計算資源實例(包括被配置來實現(xiàn)虛擬桌面實例的一些)可包括用于與客戶端網絡150的各種部件通信的一個網絡接口、以及用于與提供者網絡100外部的另一個網絡(未示出)上的資源或其他網絡實體通信的另一個網絡接口。

      圖2為根據(jù)至少一些實施方案的另一個示例性提供者網絡環(huán)境的方框圖,所述提供者網絡環(huán)境向客戶端提供存儲虛擬化服務和硬件虛擬化服務。在此示例中,硬件虛擬化服務220向客戶端提供多個計算資源224(例如,VM)。計算資源224可例如租借或租賃給提供者網絡200的客戶端(例如,實現(xiàn)客戶端網絡250的客戶端)。每個計算資源224可設置有一個或多個私有IP地址。提供者網絡200可被配置來將分組從計算資源224的私有IP地址路由到公共互聯(lián)網目的地,以及從公共互聯(lián)網源路由到計算資源224。

      提供者網絡200可使得例如通過本地網絡256聯(lián)接到中間網絡240的客戶端網絡250能夠通過聯(lián)接到中間網絡240并聯(lián)接到提供者網絡200的硬件虛擬化服務220實現(xiàn)虛擬計算系統(tǒng)292。在一些實施方案中,硬件虛擬化服務220可提供一個或多個API 202(例如,web服務接口),通過API 202,客戶端網絡250可以(例如)通過控制臺294訪問由硬件虛擬化服務220提供的功能。在至少一些實施方案中,在提供者網絡200處,客戶端網絡250處的每個虛擬計算系統(tǒng)292可對應于租賃、租借或以其他方式提供給客戶端網絡250的計算資源224。

      客戶端可從虛擬計算系統(tǒng)292的實例和/或另一個客戶端裝置290或控制臺294(例如)通過一個或多個API 202訪問存儲虛擬化服務210的功能,以訪問來自由提供者網絡200提供的虛擬數(shù)據(jù)存儲216的數(shù)據(jù)以及將數(shù)據(jù)存儲到虛擬數(shù)據(jù)存儲216。在一些實施方案中,可在客戶端網絡250處提供虛擬化數(shù)據(jù)存儲網關(未示出),所述虛擬化數(shù)據(jù)存儲網關可本地高速緩存(例如)頻繁被訪問的至少一些數(shù)據(jù)或重要數(shù)據(jù),并且可通過一個或多個通信通道與虛擬化數(shù)據(jù)存儲服務210通信,以從本地高速緩存上傳新的或修改的數(shù)據(jù),使得數(shù)據(jù)的主存儲(虛擬化數(shù)據(jù)存儲216)得以維持。在至少一些實施方案中,用戶可通過虛擬計算系統(tǒng)292和/或在另一個客戶端裝置290上安裝并訪問虛擬數(shù)據(jù)存儲216的一個或多個存儲卷218,所述一個或多個存儲卷218中的每一個作為本地虛擬化存儲裝置298呈現(xiàn)給用戶。

      雖然圖2中未示出,但是還可通過API 202從提供者網絡200內的資源實例訪問虛擬化服務。例如,客戶端、設施服務提供者或其他實體可通過API 202從提供者網絡200上的相應私有網絡內部訪問虛擬化服務,以請求分配私有網絡內或另一個私有網絡內的一個或多個資源實例。注意,在一些實施方案中,硬件虛擬化服務220可被配置來提供已經被配置來實現(xiàn)虛擬桌面實例的計算資源224,所述虛擬桌面實例可在用戶看來像本地桌面(通過虛擬計算系統(tǒng)292實現(xiàn))。還應注意,在一些實施方案中,經由硬件虛擬化服務220使其對于客戶端可用的計算資源224可包括多個網絡接口。例如,它們的至少一些可包括用于與客戶端網絡250的各種部件通信的一個網絡接口、以及用于與提供者網絡200外部的另一個網絡(未示出)上的計算資源或其他網絡實體通信的另一個網絡接口。

      在一些實施方案中,服務提供者網絡的各種部件可被配置用于產生和管理在客戶端計算裝置與程序執(zhí)行服務(PES)平臺的一個或多個遠程數(shù)據(jù)中心計算機所托管的虛擬桌面實例之間的遠程計算會話。許多數(shù)據(jù)中心可以組織為單個PES平臺的一部分,所述PES平臺可以促進PES的顧客對數(shù)據(jù)中心的資源的利用。在一些實施方案中,PES可包括幾百個或幾千個數(shù)據(jù)中心計算機。例如,在一些實施方案中,客戶端計算裝置可在一個或多個遠程計算會話期間訪問虛擬桌面實例,并且虛擬桌面實例可給用戶提供客戶端桌面環(huán)境的所有能力,但其中集中供應客戶端所訪問的服務。

      在一些實施方案中,用戶經由客戶端計算裝置可傳輸請求以便加載諸如遠程計算應用的應用。在接收請求之后,客戶端計算裝置可與PES平臺通信以便開始遠程計算會話。在一個實施方案中,在客戶端計算裝置與PES平臺之間的通信可包括登錄信息。在其他實施方案中,通信還可包括信息識別資源使用信息、處理要求、或有關客戶端計算裝置的用戶的遠程計算會話的持續(xù)時間或條件的規(guī)則??蛻舳擞嬎阊b置可另外傳送關于裝置狀態(tài)的各種信息,包括但不限于,裝置資源(例如,處理能力、存儲器、存儲裝置、網絡使用等)的當前或未來可用性。使用所接收的信息,PES平臺可識別一個或多個虛擬桌面實例用于在一個或多個遠程計算會話中執(zhí)行。在一個示例中,PES平臺可例示或致使已經例示在數(shù)據(jù)中心計算機上的虛擬機實例,并且虛擬機實例可包括操作系統(tǒng)??蛻舳擞嬎阊b置可隨后與虛擬機建立遠程計算會話,操作系統(tǒng)的用戶接口(例如,操作系統(tǒng)的輸出,諸如圖形用戶接口、聲音等)可經由虛擬機實例或虛擬桌面實例的特定網絡接口發(fā)送到客戶端計算裝置,并且向用戶呈現(xiàn)(例如,圖形用戶接口可在客戶端計算裝置的顯示器上呈現(xiàn))。操作系統(tǒng)可使用與用戶相關聯(lián)的并且存儲在PES可訪問的桌面存儲上的桌面配置文件,以便通過設置桌面背景、屏幕保護、桌面布局、指針優(yōu)選設置、聲音設置等來配置用于用戶的虛擬桌面實例。諸如鼠標和鍵盤活動的用戶輸入可隨后被發(fā)送到虛擬機(經由虛擬機實例或虛擬桌面實例的特定網絡接口),并且注入到操作系統(tǒng)中,好像用戶直接在虛擬機處執(zhí)行所述活動。

      在一些實施方案中,PES平臺可在遠程計算會話期間接收或產生數(shù)據(jù),所述數(shù)據(jù)與客戶端計算裝置和所述客戶端計算裝置上的虛擬桌面實例的交互相關聯(lián)。數(shù)據(jù)可包括用戶數(shù)據(jù)和優(yōu)選設置、文件等。在接收數(shù)據(jù)之后,PES平臺可將數(shù)據(jù)保存到與虛擬桌面實例相關聯(lián)的桌面存儲。在一些實施方案中,桌面存儲可在卷上或在另一個邏輯塊存儲裝置上實現(xiàn)。在一些實施方案中,PES可創(chuàng)建數(shù)據(jù)的備份副本,或另外將數(shù)據(jù)存儲到中央存儲庫。保存的數(shù)據(jù)可隨后用于恢復由于故障(諸如虛擬桌面實例、托管虛擬桌面實例的服務器、網絡等的故障)已經中斷的遠程計算會話。通過保存用戶數(shù)據(jù),PES平臺可確保在對客戶端計算裝置用戶的最小延時和破壞的情況下,遠程計算會話的重新建立發(fā)生。

      在一些實施方案中,所提供的虛擬桌面實例可根據(jù)在PES的用戶配置文件存儲處存儲的用戶配置文件來配置。虛擬桌面實例的配置也可根據(jù)實例的監(jiān)測使用來調整。在一些實施方案中,用戶配置文件可由與控制用戶的使用的實體相關聯(lián)的管理員設置。用戶配置文件可指示與執(zhí)行一個或多個虛擬桌面實例的PES計算機相關聯(lián)的各種存儲器和處理要求,以及對虛擬桌面實例的要求。例如,用戶配置文件可指示在使用虛擬桌面實例時給予用戶對其訪問的程序。用戶配置文件還可指示與遠程計算會話相關聯(lián)的最大時間或成本。PES可在放置和配置虛擬桌面實例時,將用戶的用戶配置文件考慮在內。此外,還可基于用戶與虛擬桌面隨時間的交互來調整放置決定和配置決定。

      圖3為示出示例性聯(lián)網計算環(huán)境300的方框圖,所述示例性聯(lián)網計算環(huán)境300包括通過通信網絡304與服務提供者計算機網絡305通信的客戶端計算裝置306??蛻舳擞嬎阊b置306可用于向用戶提供對遠程操作系統(tǒng)和應用的訪問。在各種實施方案中,客戶端計算裝置306可以對應于各種各樣的計算裝置,包括個人計算裝置、膝上型計算裝置、手持式計算裝置、終端計算裝置、移動裝置(例如,移動電話、平板計算裝置、電子書閱讀器等)、無線裝置、各種電子裝置和設備等。在一些實施方案中,客戶端計算裝置306包括用于通過通信網絡304(諸如廣域網或局域網)建立通信的必要硬件和軟件部件。例如,客戶端計算裝置306可以配備有促進經由互聯(lián)網或內部網絡進行通信的聯(lián)網設備和瀏覽器軟件應用??蛻舳擞嬎阊b置306可以具有不同的本地計算資源,諸如中央處理單元和架構、存儲器、大容量存儲裝置、圖形處理單元、通信網絡可用性和帶寬等。

      在一個實施方案中,客戶端計算裝置306可運行遠程計算應用330。遠程計算應用330可請求對服務提供者計算機網絡305所托管的虛擬桌面實例的訪問。遠程計算應用330還可管理在客戶端計算裝置306與服務提供者計算機網絡305之間的遠程計算會話。如在圖3中所示出的,服務提供者計算機網絡305也可包括PES平臺302。圖3中示出的PES平臺302對應于與服務提供者相關的一個或多個數(shù)據(jù)中心的邏輯關聯(lián)。PES平臺302可與多個數(shù)據(jù)中心計算機相關聯(lián),例如像數(shù)據(jù)中心計算機310。每個數(shù)據(jù)中心計算機310可托管一個或多個虛擬桌面實例314。例如,數(shù)據(jù)中心計算機310可通過執(zhí)行物理裝置上的虛擬機來托管虛擬桌面實例。虛擬機可執(zhí)行操作系統(tǒng)和應用軟件的實例以便創(chuàng)建虛擬桌面實例。由PES 302執(zhí)行的每個虛擬桌面實例可以被一個或多個客戶端計算裝置(諸如客戶端計算裝置306)訪問。

      在一些實施方案中,數(shù)據(jù)中心計算機310可與服務提供者計算機網絡305內的私有網絡地址(諸如IP地址)相關聯(lián),以使得它們可以不是由客戶端計算裝置306可直接訪問的。虛擬桌面實例314可與公共網絡地址相關聯(lián),所述公共網絡地址可通過服務提供者計算機網絡305的邊緣處的網關可用。因此,虛擬桌面實例314可以是由客戶端計算裝置306經由公共網絡地址可直接尋址的。相關領域的技術人員將認識到,每個數(shù)據(jù)中心計算機310將包括物理計算裝置資源和軟件,以便執(zhí)行多個虛擬桌面實例314或動態(tài)例示虛擬桌面實例314。此類例示可基于諸如來自客戶端計算裝置306的特定請求。

      如在圖3中所示出的,數(shù)據(jù)中心計算機310可包括一個或多個實例管理器322。實例管理器322可以在與相應實例314相同的計算機上、或在單獨的計算機上。實例管理器322可追蹤在數(shù)據(jù)中心計算機310上執(zhí)行的實例的進程,經由客戶端計算裝置監(jiān)測和協(xié)調用戶所創(chuàng)建的數(shù)據(jù)的存儲同時與實例314交互,并且監(jiān)測數(shù)據(jù)中心計算機310和在客戶端計算裝置306上運行的遠程計算應用的總體健康和狀態(tài)。實例管理器322可使通過追蹤和監(jiān)測收集的信息與PES平臺302的數(shù)據(jù)中心管理部件301通信,以便有效管理在數(shù)據(jù)中心計算機310與客戶端計算裝置306之間的各種遠程計算會話。

      如在圖3中所示出的,服務提供者網絡305還可包括存儲服務平臺303。存儲服務平臺303可包括,或連接到,一個或多個存儲服務器307。存儲服務器307可用于存儲由虛擬桌面實例314產生或利用的數(shù)據(jù)。由虛擬桌面實例314產生或利用的數(shù)據(jù)可基于在客戶端計算裝置306與PES 302之間的經由一個或多個遠程計算會話的交互。

      在一些實施方案中,存儲服務平臺303可邏輯上組織和維持與桌面存儲中的托管的虛擬桌面實例314相關聯(lián)的信息。與桌面存儲中維持的虛擬桌面實例314相關聯(lián)的信息可包括,但不限于,用戶優(yōu)選設置、用戶或顧客-特定的策略、與程序數(shù)據(jù)執(zhí)行相關聯(lián)的信息、用戶內容、對用戶內容的參考等。例如,用戶用來在其他存儲裝置上存儲音樂、文件等的文件夾(包括通過存儲服務提供者)還可經由對那些存儲位置的參考映射到桌面存儲。也就是說,輸入/輸出操作(諸如對打開這些文件夾中的文件的請求)可重定向到桌面存儲。由此,當用戶試圖打開存儲在他的或她的文件夾中的文件時,請求可通過在虛擬桌面實例中運行的操作系統(tǒng)重定向到桌面存儲。除用戶所創(chuàng)建的數(shù)據(jù)之外,用戶的桌面配置文件也可存儲在與用戶的虛擬桌面實例相關聯(lián)的桌面存儲上,所述用戶的桌面配置文件可包括例如桌面的配置信息,諸如背景圖片、字體、圖標布置等。在一些實施方案中,服務提供者計算機網絡305可以能夠通過將數(shù)據(jù)存儲在獨立于數(shù)據(jù)中心計算機310的存儲服務器上,減輕運行虛擬桌面實例314的數(shù)據(jù)中心計算機310的故障或與數(shù)據(jù)中心計算機310上的虛擬桌面實例314的執(zhí)行相關聯(lián)的錯誤的影響。另外,服務提供者網絡305還可通過維持桌面存儲中的信息,促進與多個虛擬桌面實例314的客戶端交互。在一些實施方案中,如果一個虛擬桌面實例314出故障,新實例可以被啟動并且附接到相同桌面存儲,所述桌面存儲先前附接到出故障的虛擬桌面實例314。

      在各種實施方案中,桌面存儲可以跨多個服務器分布,它們可以出于性能目的在不同網絡區(qū)域中的服務器上復制,或它們可以出于備份或故障性能目的跨具有獨立故障配置文件的多個服務器復制。例如,服務器可附接到不同電源或冷卻系統(tǒng),服務器可定位在數(shù)據(jù)中心的不同機房中或不同數(shù)據(jù)中心中,和/或服務器可附接到不同路由器或網絡交換機。在一些實施方案中,桌面存儲可定位在一個存儲服務器上,并且對桌面存儲進行的改變可復制到不同存儲服務器上的另一個桌面存儲。此類復制可創(chuàng)建用戶的數(shù)據(jù)的備份副本。如果桌面存儲出故障或虛擬桌面實例314失去其到桌面存儲的連接,PES 302可將虛擬桌面實例314的連接從桌面存儲切換到備份桌面存儲。

      如在圖3中所示出的,PES平臺302還可包括中央存儲裝置(諸如PES存儲庫340),用于存儲由存儲服務器307上的各種桌面存儲和備份存儲所存儲的數(shù)據(jù)。數(shù)據(jù)中心計算機310和存儲服務器307可以還包括促進通信的額外軟件或硬件部件,所述額外軟件和/或硬件部件包括但不限于用于選擇支持所請求的應用的虛擬機的實例且/或向DNS名稱服務器提供信息以促進請求路由的負載平衡或負載共享軟件/硬件部件。

      如在此示例中所示出的,服務提供者計算機網絡305可包括用戶配置文件存儲308。用戶配置文件存儲308可用于存儲,例如,在使用虛擬桌面實例314時用戶被給予訪問的各種程序。所存儲的用戶配置文件還可指示與不同用戶的遠程計算會話相關聯(lián)的最大時間或成本。PES平臺302可在放置、配置和/或管理虛擬桌面實例314時將用戶配置文件考慮在內。PES平臺302也可包括,或連接到,虛擬桌面圖像存儲309。虛擬桌面圖像存儲309可包括操作系統(tǒng)的模板圖像而不用按照用戶配置文件施加的定制化。

      在一些實施方案中,數(shù)據(jù)中心計算機310和存儲服務器307可被認為在邏輯上分組,而不管所述部件或所述部件的部分是否在物理上是分開的。例如,服務提供者計算機網絡305可維持分開的位置,以用于提供虛擬桌面實例314和存儲部件。另外,盡管數(shù)據(jù)中心計算機310在圖3中被示出為與PES平臺302邏輯相關聯(lián),數(shù)據(jù)中心計算機310可能以用于最好服務其用戶的各種人口統(tǒng)計特征的方式地理分布。另外,相關領域的技術人員將認識到,服務提供者計算機網絡305可以與各種額外的計算資源相關聯(lián),此類額外的計算裝置用于管理內容和資源等。例如,服務提供者計算機網絡305(和/或在其上實現(xiàn)的虛擬桌面實例314中的各種一些)可被配置來通過通信網絡304或通過另一個通信網絡與其他網絡實體320通信(例如,虛擬桌面實例314中的至少一些可包括可用于訪問一個或多個其他網絡實體320的網絡接口,所述網絡接口是與可用于和客戶端計算裝置306通信的網絡接口分開和不同的)。這些其他網絡實體320可包括,例如,其他客戶端網絡或其計算裝置、提供用于服務從客戶端計算裝置306接收的請求的資源的計算系統(tǒng)、和/或通過互聯(lián)網訪問其他服務、應用、或數(shù)據(jù)的網絡或其計算裝置。

      在一些實施方案中,可基于各種情景來確定與用戶或客戶端計算裝置相關聯(lián)的處理要求。在一些實施方案中,所述確定可基于在啟動遠程計算應用330時的用戶請求。例如,用戶可以被呈現(xiàn)有顯示資源和應用的各種選項的圖形用戶接口(GUI)。用戶可隨后選擇他們希望訪問的應用、或可替代地選擇那些應用的版本。例如,一個用戶可希望訪問應用的基本版本,而另一個用戶可希望訪問相同應用的專業(yè)版本。所述確定還可基于如由與用戶相關聯(lián)的實體的管理員所確定的、為某些用戶預先選擇的選項。例如,預先選擇的選項可向用戶呈現(xiàn),作為用戶可能希望訪問的不同的應用程序包的列表。在一些情況下,可關于用戶的歷史使用數(shù)據(jù)做出確定,一旦從用戶接收請求,PES平臺302可確定所述歷史使用數(shù)據(jù)。在其他情況下,一旦發(fā)起遠程計算會話,處理要求的確定可基于用戶的過程使用的進行中的監(jiān)測。在此類情況下,適當資源實例的選擇可在建立會話之后動態(tài)改變,并且對新實例的動態(tài)改變可如以上相對于圖3所描述的執(zhí)行。在一些實施方案中,遠程計算應用330可請求虛擬桌面會話代表客戶端打開,響應于此虛擬桌面實例314可以被例示,被配置用于客戶端的使用,和/或通過網絡304連接到客戶端計算裝置306(例如,經由虛擬桌面實例314的兩個網絡接口中的一個)。

      在一些實施方案中,實現(xiàn)VM和VMM的服務提供者網絡可使用互聯(lián)網協(xié)議(IP)隧道技術,以便通過提供者網絡內的不同主機上的客戶端資源實例之間的網絡底層封裝和路由客戶端數(shù)據(jù)分組。提供者網絡可包括物理網絡底層,所述物理網絡底層包括聯(lián)網裝置諸如路由器、交換機、網絡地址轉換器(NAT)等以及裝置之間的物理連接。提供者網絡可采用IP隧道技術以便提供覆蓋網絡,經由所述覆蓋網絡封裝分組(即已經用覆蓋網絡元數(shù)據(jù)標記的客戶端分組,所述元數(shù)據(jù)包括但不限于用于通過覆蓋網絡路由的覆蓋網絡地址信息)可經由隧道或覆蓋網絡路線穿過網絡底層。IP隧道技術可提供用于在網絡底層上創(chuàng)建覆蓋網絡的映射和封裝系統(tǒng),并且可為覆蓋網絡層(公共IP地址)和網絡底層(私有IP地址)提供單獨的命名空間。在至少一些實施方案中,可針對映射目錄檢查在覆蓋網絡層中的封裝分組,以便確定其隧道底層目標(私有IP地址)應當是什么。IP隧道技術可提供覆蓋在物理網絡底層上的虛擬網絡拓撲;呈現(xiàn)給客戶端的接口(例如,服務API)附接到覆蓋網絡,使得當客戶端資源實例提供分組將被發(fā)送到的IP地址時,IP地址通過與可確定IP覆蓋地址位于何處的映射服務通信而在虛擬空間中運行。覆蓋網絡技術的示例性使用在圖4中示出并且在以下詳細描述。

      在各種實施方案中,主機上的客戶端資源實例可根據(jù)狀態(tài)協(xié)議(諸如傳輸控制協(xié)議(TCP))和/或根據(jù)無狀態(tài)協(xié)議(諸如用戶數(shù)據(jù)報協(xié)議(UDP))與相同主機或不同主機上的其他客戶端資源實例通信。然而,客戶端分組根據(jù)覆蓋網絡協(xié)議通過發(fā)送VMM來封裝并且通過接收VMM來解封。主機上的VMM,在接收來自主機上的客戶端資源實例的并且目標是另一個客戶端資源實例的IP地址的客戶端分組(例如,TCP或UDP分組)之后,根據(jù)覆蓋網絡(或IP隧道)協(xié)議封裝或標記客戶端分組,并且將封裝分組發(fā)送到覆蓋網絡上以用于遞送。封裝分組可隨后根據(jù)IP隧道技術經由覆蓋網絡路由到另一個VMM。另一個VMM將覆蓋網絡封裝從分組剝離,并且將客戶端分組(例如,TCP或UDP分組)遞送到主機上的實現(xiàn)目標客戶端資源實例的適當VM。換言之,在一些實施方案中,盡管在服務提供者計算環(huán)境(例如,服務提供者數(shù)據(jù)中心)中可能存在單個基礎物理網絡,本文所描述的封裝可允許其看起來好像每個客戶端應用(或一個或多個客戶端應用在其上執(zhí)行的每個客戶端資源實例)正在其自身虛擬網絡上運行(例如,用于多個客戶端應用的數(shù)據(jù)分組可在相同物理網絡上行進,但它可能看起來好像針對每個客戶端應用的流量在私有網絡上行進)。

      在一些實施方案中,覆蓋網絡可以是根據(jù)無連接(或無狀態(tài))IP協(xié)議實現(xiàn)的無狀態(tài)網絡。在一些此類實施方案中,發(fā)送的VMM將封裝分組發(fā)送到覆蓋網絡上用于路由和遞送,但不接收有關分組的遞送的確認(ACK)或其他響應。在其他實施方案中,VMM可接收有關封裝分組的遞送的ACK或其他響應。

      圖4示出根據(jù)至少一些實施方案的示例性數(shù)據(jù)中心(例如,使用IP隧道技術在網絡底層上實現(xiàn)覆蓋網絡的一個數(shù)據(jù)中心)。如在此示例中所示出的,提供者數(shù)據(jù)中心400可包括網絡底層,所述網絡底層包括聯(lián)網裝置412,諸如路由器、交換機、網絡地址轉換器(NAT)等。至少一些實施方案可采用互聯(lián)網協(xié)議(IP)隧道技術來提供覆蓋網絡,可使用隧道經由所述覆蓋網絡將封裝分組傳遞通過網絡底層410。IP隧道技術可提供用于在網絡(例如,圖4的數(shù)據(jù)中心400中的本地網絡)上創(chuàng)建覆蓋網絡的映射和封裝系統(tǒng),并且可為覆蓋層(公共IP地址)和網絡底層410層(私有IP地址)提供單獨的命名空間。可針對映射目錄(例如,由映射服務430提供)檢查覆蓋層中的分組,以確定它們的隧道底層目標(私有IP地址)應該是什么。IP隧道技術提供虛擬網絡拓撲(覆蓋網絡);呈現(xiàn)給客戶端的接口(例如,服務API)附接到覆蓋網絡,使得當客戶端提供客戶端想要將分組發(fā)送到的IP地址時,IP地址通過與知道IP覆蓋地址位置的映射服務(例如,映射服務430)通信而在虛擬空間中運行。

      在至少一些實施方案中,IP隧道技術可將IP覆蓋地址(公共IP地址)映射到底層IP地址(私有IP地址),將分組封裝在兩個命名空間之間的隧道中,并且經由隧道將分組遞送到其中封裝從分組剝離的正確端點。在圖4中,示出從主機420A上的虛擬機(VM)424A到中間網絡440上的裝置(例如,計算系統(tǒng)470、本地網絡450上的計算系統(tǒng)452、或數(shù)據(jù)中心46)的示例性覆蓋網絡隧道434A、以及主機420B上的VM 424B與主機420A上的VM 424A之間的示例性覆蓋網絡隧道434B。在一些實施方案中,可在發(fā)送之前以覆蓋網絡分組格式封裝分組,并且可在接收之后剝離覆蓋網絡分組。在其他實施方案中,替代以覆蓋網絡分組形式封裝分組,可在發(fā)送之前將覆蓋網絡地址(公共IP地址)嵌入分組的底層地址(私有IP地址)中,并且在接收之后將覆蓋網絡地址從分組地址剝離。作為示例,可使用32位IPv4(第四版互聯(lián)網協(xié)議)地址作為公共IP地址來實現(xiàn)覆蓋網絡,并且IPv4地址可作為在底層網絡上作為私有IP地址使用的128位IPv6(第六版互聯(lián)網協(xié)議)地址的一部分來嵌入。

      其中可實現(xiàn)本文所描述的用于固定在云計算環(huán)境中的工作空間的技術的實施方案的至少一些網絡可包括使得多個操作系統(tǒng)能夠同時在主計算機(例如,圖4的主機420A和420B)上(即作為主機420上的虛擬機(VM)424)運行的硬件虛擬化技術。VM 424(其中一些可被配置來實現(xiàn)虛擬桌面實例以用于客戶端的使用)可例如租借或租賃給網絡提供者的客戶端。在主機420上的管理程序、或虛擬機監(jiān)視器(VMM)422可用作主機420上的VM 424和/或其他虛擬化資源實例的實例管理器,其可包括通過虛擬平臺呈現(xiàn)主機上的VM 424并且監(jiān)測VM 424的執(zhí)行。每個VM 424可設置有一個或多個私有IP地址;主機420上的VMM 422可以知道主機上的VM 424的私有IP地址。映射服務430可以知道服務本地網絡上的IP地址的路由器或其他裝置的所有網絡IP前綴和IP地址。這包括服務多個VM 424的VMM422的IP地址。映射服務430可例如集中在一個服務器系統(tǒng)上,或可替代地可分布在網絡上的兩個或更多個服務器系統(tǒng)或其他裝置之間。網絡可使用例如映射服務技術和IP隧道技術以例如在數(shù)據(jù)中心400網絡內的不同主機420上的VM 424之間路由數(shù)據(jù)分組;需注意,內部網關協(xié)議(IGP)可用于在這種本地網絡內交換路由信息。

      此外,諸如提供者數(shù)據(jù)中心400網絡(有時稱為自主系統(tǒng)(AS))的網絡可使用映射服務技術、IP隧道技術和路由服務技術來將分組從VM 424路由到互聯(lián)網目的地以及從互聯(lián)網源路由到VM 424。需注意,外部網關協(xié)議(EGP)或邊界網關協(xié)議(BGP)通常用于在互聯(lián)網上的源與目的地之間進行互聯(lián)網路由。圖4示出根據(jù)至少一些實施方案的實現(xiàn)網絡的示例性提供者數(shù)據(jù)中心400,所述網絡提供資源虛擬化技術并且通過連接到互聯(lián)網轉接提供者的邊緣路由器414提供完全互聯(lián)網訪問。提供者數(shù)據(jù)中心400可例如使得客戶端能夠通過硬件虛擬化服務(諸如圖2中的硬件虛擬化服務220)實現(xiàn)虛擬計算系統(tǒng)(VM424)并且能夠通過存儲虛擬化服務(諸如圖2中的存儲虛擬化服務210)在存儲資源418上實現(xiàn)虛擬化數(shù)據(jù)存儲416。

      在一些實施方案中,數(shù)據(jù)中心400網絡可實現(xiàn)IP隧道技術、映射服務技術和路由服務技術,以將流量路由到虛擬化資源并從虛擬化資源路由流量,例如將分組從數(shù)據(jù)中心400中的主機420上的VM 424路由到互聯(lián)網目的地,以及從互聯(lián)網源路由到VM 424。互聯(lián)網源和目的地可包括例如連接到中間網絡440的計算系統(tǒng)470和連接到本地網絡450的計算系統(tǒng)452,本地網絡450連接到中間網絡440(例如,通過將網絡450連接到互聯(lián)網轉接提供者的邊緣路由器414)。提供者數(shù)據(jù)中心400網絡還可在數(shù)據(jù)中心400中的資源之間路由分組,例如從數(shù)據(jù)中心400中的主機420上的VM 424路由到同一主機或數(shù)據(jù)中心400中的其他主機420上的其他VM 424。在一些實施方案中,至少一些VM 424可包括兩個或更多個網絡接口。例如,它們可包括可用于在VM 424與提供者代表其托管VM 424的客戶端之間的通信的一個網絡接口、以及可用于訪問在除提供者網絡和客戶端網絡之外的網絡上的外部資源、計算系統(tǒng)、數(shù)據(jù)中心、或互聯(lián)網目的地的第二(分開和不同的)網絡接口,所述提供者網絡和客戶端網絡中的任一個或兩者可采用IP隧道技術,如本文所描述的。

      提供數(shù)據(jù)中心400的服務提供者還可提供另外的數(shù)據(jù)中心460,所述另外的數(shù)據(jù)中心460包括類似于數(shù)據(jù)中心400的硬件虛擬化技術并且也可連接到中間網絡440。分組可從數(shù)據(jù)中心400轉發(fā)至其他數(shù)據(jù)中心460,例如從數(shù)據(jù)中心400中的主機420上的VM 424轉發(fā)至另一個類似數(shù)據(jù)中心460中的另一個主機上的另一個VM,并且反之亦然。

      雖然上文描述了使得多個操作系統(tǒng)能夠作為主機上的虛擬機(VM)同時在主計算機上運行的硬件虛擬化技術,其中VM可租借或租賃給網絡提供者的客戶端,但是硬件虛擬化技術還可用于以類似方式將其他計算資源(例如,存儲資源418)作為虛擬化資源提供給網絡提供者的客戶端。

      注意,公共網絡廣義上可定義為向多個實體提供開放訪問并且在多個實體之間提供互連性的網絡。互聯(lián)網或萬維網(WWW)是公共網絡的示例。共享網絡廣義上可定義為與訪問通常不受限的公共網絡相比、訪問僅限于兩個或更多個實體的網絡。共享網絡可包括例如一個或多個局域網(LAN)和/或數(shù)據(jù)中心網絡,或互連以形成廣域網(WAN)的兩個或更多個LAN或數(shù)據(jù)中心網絡。共享網絡的示例可包括但不限于公司網和其他企業(yè)網。共享網絡可以在從覆蓋局部地區(qū)的網絡到全球網絡范圍中的任何位置。需注意,共享網絡可與公共網絡共享至少一些網絡基礎設施,并且共享網絡可聯(lián)接到一個或多個其他網絡,所述一個或多個其他網絡可包括在其他網絡與共享網絡之間具有受控訪問的公共網絡。與公共網絡(諸如互聯(lián)網)相比,共享網絡也可被視為私有網絡。在實施方案中,共享網絡或公共網絡可用作在提供者網絡與客戶端網絡之間的中間網絡,或在提供者網絡與其他網絡實體(例如,在除提供者網絡和客戶端網絡之外的提供者代表其托管VM424的網絡上的外部資源、計算系統(tǒng)、數(shù)據(jù)中心、或互聯(lián)網目的地)之間的中間網絡。

      在一些實施方案中,盡管存在執(zhí)行本文所描述的客戶端應用和其他過程的物理計算機,客戶端應用可作為虛擬機在物理計算機上運行。例如,云計算環(huán)境的內部過程可在云計算環(huán)境中的控制面層(或管理程序)中執(zhí)行,所述云計算環(huán)境的內部過程被配置來管理這些虛擬機的創(chuàng)建,為這些虛擬機供應資源,和/或代表客戶端和/或其應用執(zhí)行其他管理任務(例如,監(jiān)測資源使用、顧客記賬、服務計費等)。相比之下,客戶端應用(例如,實現(xiàn)應用部件的每個資源實例)可在云計算環(huán)境的數(shù)據(jù)面層中執(zhí)行。在這些層下面,在一些實施方案中,對于每個主機節(jié)點(或對于多個托管節(jié)點)可能僅存在一個物理網絡卡,但每個資源實例可執(zhí)行好像它具有其自身網絡(例如,虛擬網絡)。在一些實施方案中,每個資源實例可具有其自身數(shù)據(jù)面網絡連接,但可進行本地API呼叫(例如,到相同節(jié)點上的部件的呼叫)而不需要依賴這些數(shù)據(jù)面網絡連接。

      在一些實施方案中,顧客可具有在本地機器上運行的應用,但可在云計算環(huán)境中供應資源實例以便在本地機器上的故障的情況下使用。在一些實施方案中,多個資源實例可在云計算環(huán)境中執(zhí)行,以便代表客戶端實現(xiàn)分布式應用。在不同實施方案中,云計算環(huán)境可以是其中每個應用(和/或每個虛擬私有網絡)可具有其自身命名空間的多租戶環(huán)境。在一些實施方案中,每個客戶端可具有其自身的網絡連通性和/或吞吐能力(帶寬)的分配。例如,數(shù)據(jù)面網絡中的網絡連通性和/或吞吐能力可被供應(例如,指定或保留)以用于使用各種客戶端。

      圖5示出根據(jù)至少一些實施方案的示例性提供者網絡,其將提供者網絡上的私有網絡提供給至少一些客戶端。客戶端在提供者網絡500上的虛擬化私有網絡560例如可使得客戶端能夠將它們在客戶端網絡550上的現(xiàn)有基礎設施(例如,客戶端裝置552)連接到一組邏輯上隔離的資源實例(例如,VM 524A和524B以及存儲裝置518A和518B),并且能夠擴展管理能力(諸如安全服務、防火墻和入侵檢測系統(tǒng))以便包括它們的資源實例。

      在一些實施方案中,客戶端的虛擬化私有網絡560可通過私有通信通道542連接到客戶端網絡550。私有通信通道542可以是例如根據(jù)網絡隧道技術或通過中間網絡540的其他對等連接實現(xiàn)的隧道。中間網絡可以是例如共享網絡或公共網絡(諸如互聯(lián)網)。可替代地,私有通信通道542可通過虛擬化私有網絡560與客戶端網絡550之間的直接的、專用的連接實現(xiàn)。

      公共網絡廣義上可定義為向多個實體提供開放訪問并且在多個實體之間提供互連性的網絡?;ヂ?lián)網或萬維網(WWW)是公共網絡的示例。共享網絡廣義上可定義為與訪問通常不受限的公共網絡相比、訪問僅限于兩個或更多個實體的網絡。共享網絡可包括例如一個或多個局域網(LAN)和/或數(shù)據(jù)中心網絡,或互連以形成廣域網(WAN)的兩個或更多個LAN或數(shù)據(jù)中心網絡。共享網絡的示例可包括但不限于公司網和其他企業(yè)網。共享網絡可以在從覆蓋局部地區(qū)的網絡到全球網絡范圍中的任何位置。需注意,共享網絡可與公共網絡共享至少一些網絡基礎設施,并且共享網絡可聯(lián)接到一個或多個其他網絡,所述一個或多個其他網絡可包括在其他網絡與共享網絡之間具有受控訪問的公共網絡。與公共網絡(諸如互聯(lián)網)相比,共享網絡也可被視為私有網絡。在實施方案中,共享網絡或公共網絡可用作提供者網絡與客戶端網絡之間的中間網絡。

      為了為客戶端在提供者網絡500上建立虛擬化私有網絡560,可將一個或多個資源實例(例如,VM 524A和524B以及存儲裝置518A和518B)分配給虛擬私有網絡560。需注意,其他資源實例(例如,存儲裝置518C和VM 524C)可在提供者網絡500上保持可用以供其他客戶端使用。還可將公共IP地址范圍分配給虛擬化私有網絡560。此外,還可將提供者網絡500的一個或多個聯(lián)網裝置(路由器、交換機等)分配給虛擬化私有網絡560??稍谔摂M化私有網絡560處的私有網關562與客戶端網絡550處的網關556之間建立私有通信通道542。

      在至少一些實施方案中,除了或替代私有網關562,虛擬化私有網絡560可包括公共網關564,所述公共網關564使得虛擬化私有網絡560內的資源能夠通過中間網絡540(代替或除了通過私有通信通道542)與實體(例如,網絡實體544)直接通信,并且反之亦然。

      在一些實施方案中,虛擬私有網絡560可以但不必細分成兩個或更多個子網(未示出)。例如,在包括私有網關562和公共網關564兩者的實現(xiàn)方式中,私有網絡可細分成包括可通過私有網關562到達的資源(在這個示例中為VM 524A和存儲裝置518A)的子網以及包括可通過公共網關564到達的資源(在這個示例中為VM 524B和存儲裝置518B)的子網。在其他實施方案,VM 524中的一個或多個可被配置來通過一個通過私有網關562的私有通信通道542訪問客戶端網絡550(例如,經由被配置用于在VM 524與客戶端裝置552之間的通信的網絡接口),并且通過一個通過公共網關564的替代性通信通道546訪問其他網絡實體544(例如,經由被配置用于在VM 524與外部資源、計算系統(tǒng)、數(shù)據(jù)中心、或除提供者網絡500和客戶端網絡550之外的網絡上的互聯(lián)網目的地的網絡接口,所述提供者網絡500和客戶端網絡550中的任一個或兩者可采用IP隧道技術,如本文所描述的)。在另外的其他實施方案中,私有網關和/或公共網關以及通信通道(包括私有網關562、公共網關564、私有通信通道542、替代性通信通道546和/或中間網絡540)可能以各種不同組合中的任一個使用,以用于VM 524、客戶端網絡550與其他網絡實體544之間的通信。

      在一些實施方案中,客戶端可將特定客戶端公共IP地址指派給虛擬化私有網絡560中的特定資源實例。中間網絡540上的網絡實體544然后可向由客戶端發(fā)布的公共IP地址發(fā)送流量;流量由提供者網絡500路由到相關聯(lián)的資源實例。從資源實例返回的流量由提供者網絡500可通過中間網絡540路由回網絡實體544。需注意,在資源實例與網絡實體544之間路由流量可能需要進行網絡地址轉換以在資源實體的公共IP地址與私有IP地址之間進行轉換。

      至少一些實施方案可允許客戶端將如圖5中所示的客戶端的虛擬化私有網絡560中的公共IP地址重新映射到客戶端的外部網絡550上的裝置。當(例如,從網絡實體544)接收分組時,網絡500可確定由分組指示的目的地IP地址已經重新映射到外部網絡550上的端點并且通過私有通信通道542、替代性通信通道546、或中間網絡540處理分組到相應端點的路由。響應流量可通過提供者網絡500從端點路由到網絡實體544,或可替代地可由客戶端網絡550直接路由到網絡實體544。從網絡實體544的角度,可能看起來好像網絡實體544正在與客戶端在提供者網絡500上的公共IP地址通信。然而,網絡實體544實際上可能正與客戶端網絡550上的端點通信。

      雖然圖5示出位于中間網絡540上并且在提供者網絡500外部的網絡實體544,但是在其他實施方案中,網絡實體可以是提供者網絡500上的實體。例如,由提供者網絡500提供的資源實例中的一個可以是向由客戶端發(fā)布的IP地址發(fā)送流量的網絡實體。在一些實施方案中,此流量可經由VM 524的網絡接口來發(fā)送,所述網絡接口是與通過其發(fā)送VM 524與客戶端網絡550之間的流量的網絡接口分開和不同的。

      虛擬桌面實例

      在各種實施方案中,服務提供者可采用以上所描述的一個示例性提供者網絡(或另一合適的提供者網絡環(huán)境),以便實現(xiàn)云計算環(huán)境中的托管的桌面服務。在此類實施方案中,顧客可訪問云計算環(huán)境中的提供者網絡,以便請求一個或多個虛擬桌面實例在云中的例示和/或配置,并且可隨后向一個或多個終端用戶提供對那些虛擬桌面實例的訪問(例如,通過客戶端應用)。例如,組織或企業(yè)內的管理員可與服務提供者建立賬戶,可與服務提供者簽訂合同以便建立某個數(shù)目的虛擬桌面實例(其還可被稱為“虛擬工作空間”或簡單稱為“工作空間”),并且(一旦建立虛擬桌面實例)可提供用于訪問這些虛擬桌面實例的憑證。在此示例中,一旦已經建立虛擬桌面實例并且已經提供憑證,一個或多個終端用戶可啟動在其客戶端裝置(例如,計算機、平板裝置,或其他移動裝置)上的客戶端應用,并且輸入用于虛擬桌面實例的憑證,在這之后他們可登錄到虛擬工作空間環(huán)境中。盡管虛擬工作空間環(huán)境通過云計算環(huán)境中的虛擬化資源實例實現(xiàn),它可能在終端用戶看來好像它是本地桌面,并且它可操作好像它是用戶連接到的獨立計算機。在一些實施方案中,虛擬工作空間環(huán)境可提供對生產力軟件和其他軟件程序的訪問,如果用戶登錄到組織或企業(yè)所擁有的物理計算機中,用戶通常將訪問所述生產力軟件和其他軟件程序。

      在一些實施方案中,這些虛擬工作空間可旨在替換臺式計算機,例如,所述虛擬工作空間可旨在運行相同軟件程序,組織或企業(yè)的成員(代表其例示和配置所述虛擬工作空間)將在處于辦公室設置的臺式計算機上訪問所述相同軟件程序(例如,執(zhí)行終端用戶生產力任務的應用)。注意,這些應用可能是或可能不是獨立式應用。例如,在一些情況下,每個虛擬工作空間(和/或在其上運行的應用)可以是組織或企業(yè)的活動目錄框架的一部分,并且一旦在登錄到虛擬工作空間中之后已經認證由用戶呈現(xiàn)的憑證,可以能夠訪問共享文件或在組織或企業(yè)的現(xiàn)有網絡上的其他資源。

      在一些實施方案中,在服務提供者網絡上例示的每個虛擬桌面實例可包括兩個(或更多個)網絡接口,各自用于特定目的。在一些實施方案中,可基于用戶意圖和/或各種可應用策略中的任一個(例如,服務提供者的默認策略、顧客特定的策略、或應用特定的策略)控制這些虛擬網絡接口。接口中的一個(在本文中有時被稱為“E0”接口)可被配置來接收進入的終端用戶請求,以便開始交互視頻流(例如,連接到虛擬桌面實例)。一旦接收請求,此接口可被用作視頻流到終端用戶的接口。例如,描繪在虛擬桌面實例上執(zhí)行的應用或操作系統(tǒng)的用戶接口的圖像(例如,諸如圖形用戶接口、聲音等的應用或操作系統(tǒng)的輸出)可以流式傳送到客戶端計算裝置,并且向用戶呈現(xiàn)(例如,描繪圖形用戶接口的圖像可呈現(xiàn)在客戶端計算裝置的顯示器上)。其他網絡接口(在本文中有時被稱為“E1”接口)可用于將終端用戶web流量(諸如瀏覽器請求)從虛擬桌面實例發(fā)送到各種互聯(lián)網目的地,和/或連接到組織或企業(yè)(代表其例示虛擬桌面實例)的內部網絡上的共享資源。例如,在一些實施方案中,虛擬桌面實例的E1接口可以是具有到顧客(例如,代表其例示虛擬桌面實例的組織或企業(yè))的內部網絡的連接的虛擬私有云(VPC)的一部分。由此,虛擬桌面實例可接合到顧客的域,并且可具有對顧客的web服務器的訪問,包括任何共享應用和/或數(shù)據(jù)。

      在一些實施方案中,每個虛擬桌面實例的第一網絡接口(E0接口)可被服務提供者完全控制。例如,在一些實施方案中,僅在該接口上允許的流量可以是發(fā)送到終端用戶的視頻流、以及有關在服務提供者控制下的管理功能的流量。第二接口(E1接口)可能不被虛擬桌面實例的終端用戶直接使用,但可為托管虛擬桌面實例的虛擬化計算資源實例提供網絡連接,所述網絡連接與用于視頻流的連接分開并且允許虛擬桌面實例(或在其上執(zhí)行的應用或處理)訪問其他網絡和在其他網絡上的網絡實體。在一些實施方案中,E0接口可用于傳送命令以便啟動虛擬桌面實例上的瀏覽器應用,但從該瀏覽器應用向外到互聯(lián)網的傳送可能通過E1接口發(fā)生。

      如先前所指出的,在一些實施方案中,本文所描述的系統(tǒng)可實現(xiàn)用于工作空間服務的虛擬私有云(VPC),其向外延伸以便訪問在多個地理分布的存在點(POP)位置處的網關。在各種實施方案中,網關部件可用作沿產生像素流的虛擬桌面實例(工作空間)與接收流的客戶端裝置之間的路徑的橋。在一些實施方案中,此類路徑可用于傳送命令,所述命令從虛擬桌面實例傳送到客戶端裝置,并且表示指導客戶端裝置產生和/或呈現(xiàn)用于通過客戶端裝置顯示的像素(例如,代替像素流或除像素流之外)的指令。在一個示例中,表示將由客戶端裝置顯示的文本或圖形的數(shù)據(jù)可作為像素流從虛擬桌面實例發(fā)送到客戶端裝置。然而,如果客戶端裝置將顯示視頻,虛擬桌面實例可向客戶端裝置發(fā)送在定位和訪問視頻中有用的鏈接、連同指示客戶端裝置應呈現(xiàn)用于顯示的視頻的命令。在其他實施方案中,表示圖形處理命令的數(shù)據(jù)可從虛擬桌面實例傳送到客戶端裝置,這可致使客戶端裝置產生和呈現(xiàn)用于在客戶端裝置上顯示的像素。

      在一些實施方案中,相同網關也可橋接重疊返回路徑,所述重疊返回路徑將表示與虛擬桌面實例(例如,鍵盤、觸摸屏/板、和/或鼠標事件)的用戶交互的數(shù)據(jù)從客戶端裝置傳送回到虛擬桌面實例。在從服務提供者的出口上,這些訪問網關可以是在通過公共網絡傳送像素流之前(例如,在其進入公共互聯(lián)網之前)被服務控制的最后點。通過移動網關更靠近客戶端裝置,同時保持對其的控制作為工作空間服務的VPC的一部分,所述服務可提供較高質量連接和/或終端用戶體驗。例如,安全、可靠、低延遲高帶寬、低損耗和/或低抖動連接(例如,通過虛擬私有網絡)可用于在切換到網關部件與客戶端裝置之間的潛在較不可靠、高延遲公共網絡連接之前,將用于虛擬桌面會話的雙向交互視頻流傳送直到盡可能靠近客戶端裝置的點。

      在一些實施方案中,網關部件可以是多租戶訪問網關,所述多租戶訪問網關為服務代表其托管虛擬桌面實例的多個不同工作空間客戶端(例如,不同顧客或服務訂戶)提供網關功能性。注意,在一些實施方案中,網關部件僅可在遞送虛擬桌面會話的交互視頻流中被涉及,并且不用于虛擬桌面實例與客戶端裝置之間的其他類型的流量(例如,為其他目的,諸如安全、認證、或目錄服務)或用于虛擬桌面實例與代表工作空間客戶端的其他網絡實體之間的流量。相反,這些其他類型的流量(其通常不像交互視頻流那樣時間敏感的或對各種網絡效應敏感的)可通過其他接口傳送到虛擬桌面實例(例如,經由E1型接口,如以上所描述的)。

      如先前所指出的,被配置作為虛擬桌面實例的虛擬計算資源實例可托管在跨多個可用性區(qū)分布的多個數(shù)據(jù)中心中的計算節(jié)點上。類似地,工作空間服務的網關部件(其也可通過虛擬計算資源來實現(xiàn))可托管在地理分布的存在點(POP)位置處的計算節(jié)點上。如以下更詳細描述的,在一些實施方案中,服務可為自動指派網關部件用于特定客戶端(例如,特定終端用戶)。當客戶端試圖登入到工作空間服務時,服務可提供托管在相同區(qū)域(例如,客戶端物理位于的區(qū)域)中的訪問網關地址,并且可執(zhí)行從虛擬桌面實例到該網關部件的映射。

      如本文所描述的,在一些實施方案中,網關部件在工作空間服務管理的和對于所有客戶端(例如,顧客或服務訂戶)共同的多租戶VPC內參與。此VPC可用作用于工作空間服務的管理網絡,并且也可用作將交互視頻流量向外傳送到各種POP位置處的網關部件的網絡(例如,通過虛擬私有網絡)。工作空間服務可提供客戶端特定的VPC,并且代表每個客戶端創(chuàng)建和管理的虛擬計算資源實例可參與這些VPC的一個。例如,這些客戶端特定的VPC可以被客戶端自身創(chuàng)建(或可發(fā)起其創(chuàng)建),或它們可以被代表其的服務創(chuàng)建。這些客戶端VPC可傳送除虛擬桌面會話的交互視頻流之外的網絡流量(例如,用于諸如結合域或允許終端用戶瀏覽互聯(lián)網網站的操作的網絡流量)。在一些實施方案中,實現(xiàn)虛擬桌面實例的虛擬計算資源的部件也可附接到(或參與)工作空間服務的VPC(即服務的管理網絡)。

      如以下更詳細描述的,在一些實施方案中,交互視頻流可通過UDP網絡協(xié)議傳送,并且可在特定端口(例如,端口4172)上運行。然而,這是可能通常不在顧客的防火墻上開放的網絡協(xié)議和端口。可能通常在顧客的防火墻上開放的另一個端口是TCP 443,其為安全TCP端口。在一些實施方案中,網關部件可以被放置在顧客的被配置來從UDP轉換到TCP 443的不安全(或DMZ)網絡中,以使得顧客不必須打開在其防火墻上的任何附加端口以便接收交互視頻流。在此類實施方案中,終端用戶可獲取直到其住所上的網絡的UDP(其是用于實時流量的非常有效的遞送協(xié)議,諸如交互視頻流,而沒有TCP的開銷)的益處,并且隨后可將流轉換到最后的TCP 443。例如,在客戶端裝置上運行的本地過程(本地網關)可從工作空間網關部件接收UDP流量,并且隨后(就在顧客的防火墻的不安全側上)可將其轉換到TCP用于端口443。

      本文所描述的用于提供到云計算環(huán)境中的工作空間的低延遲連接的技術可另外在圖6-11中并且通過以下所描述的示例性實施方案來示出。例如,圖6為示出根據(jù)至少一些實施方案的示例性聯(lián)網環(huán)境的方框圖,在所述示例性聯(lián)網環(huán)境中向客戶端提供虛擬桌面服務。如在此示例中所示出的,聯(lián)網計算環(huán)境600可包括虛擬計算服務提供者610,其至少部分通過公共網絡650與兩個客戶端計算裝置670和680以及其他網絡實體660通信。虛擬計算服務提供者610可包括多個虛擬計算資源實例,所述多個虛擬計算資源實例中的一些被配置為虛擬桌面(工作空間)實例,諸如虛擬桌面(工作空間)實例632和642。這些虛擬桌面(工作空間)實例可用于代表客戶端托管虛擬桌面會話。在一些實施方案中,其他虛擬計算資源實例(例如,虛擬機的實例,如以上所描述的)可被配置用于托管應用,諸如數(shù)據(jù)流應用。這些虛擬計算資源實例中的任一個可包括物理計算裝置資源和軟件,以便提供虛擬機的多個實例或者以便動態(tài)地致使創(chuàng)建虛擬機的實例。這類創(chuàng)建可以基于特定請求,諸如來自客戶端計算裝置的請求,或工作空間服務(或其工作空間服務管理部件)可以自行發(fā)起虛擬機的實例的動態(tài)創(chuàng)建。注意,每個虛擬計算資源實例可包括一個或多個存儲裝置,以用于存儲在網絡資源或計算資源的遞送和處理中所使用的任何類型的數(shù)據(jù),在一些實施方案中,所述數(shù)據(jù)包括但不限于用戶數(shù)據(jù)、狀態(tài)信息、處理要求、歷史使用數(shù)據(jù)以及來自內容提供者的資源,所述資源將由一個或多個虛擬計算資源實例處理并傳輸?shù)礁鞣N客戶端計算機。在一些實施方案中,一個或多個虛擬計算資源實例(或工作空間服務VPC 620內和/或每個顧客VPC 630或640內的其他部件)可包括促進通信的附加軟件和/或硬件部件,包括但不限于,負載平衡或負載共享軟件/硬件部件。

      如在此示例中所示出的,虛擬桌面(工作空間)實例632和一個或多個其他計算和/或網絡存儲資源實例638可在虛擬計算服務提供者610的物理資源上的虛擬私有云630內代表客戶端操作(參與),并且可通過虛擬私有網絡(VPN)彼此通信。類似地,如在此示例中所示出的,虛擬桌面(工作空間)實例642和一個或多個其他計算和/或網絡存儲資源實例648可在虛擬計算服務提供者610的物理資源上的虛擬私有云640內代表客戶端(例如,相同客戶端或不同客戶端)操作,并且可通過虛擬私有網絡(VPN)彼此通信。如本文所描述的,這些虛擬桌面(工作空間)實例中的每一個可包括用作不同目的的兩個分開和不同的網絡接口。例如,虛擬桌面(工作空間)實例632包括用于與客戶端通信(例如,經由一個工作空間網關626)的E0接口634、以及用于與其他網絡實體660通信的E1接口636,同時虛擬桌面(工作空間)實例642包括用于與客戶端通信(例如,經由一個工作空間網關626)的E0接口644、以及用于與其他網絡實體660通信的E1接口646。

      如通過圖6中的實例所示出的,虛擬計算服務提供者610可包括多個“存在點”(或“POP”)位置624,其對應于在工作空間服務的虛擬私有云(被示出作為工作空間服務VPC 620)內的邊緣節(jié)點。大體上,存在點是其中一個或多個物理計算節(jié)點(例如,服務器、路由器、交換機和/或其他部件)被配置來用作對互聯(lián)網的訪問點的物理位置。虛擬計算服務提供者610還可包括在工作空間服務VPC 620內操作的一個或多個工作空間服務管理部件622,其中的每一個管理代表客戶端實現(xiàn)虛擬桌面實例(工作空間)的計算資源實例。例如,在一些實施方案中,工作空間服務管理部件622可包括用于建立在各種虛擬桌面(工作空間)實例和/或其他虛擬計算資源實例與客戶端(虛擬計算服務提供者代表其托管這些資源實例)之間的連接的計算資源。在一些實施方案中,工作空間服務管理部件622可包括用于管理內容和資源等的計算資源。如在此示例中所示出的,虛擬桌面實例630和640的E0接口(被示出作為634和644)可分別在工作空間服務VPC 620內以及在顧客VPC 630和640內操作。

      如在此示例中所示出的,每個工作空間POP位置624可包括一個或多個工作空間網關部件626,通過其客戶端與虛擬桌面(工作空間)實例通信。每個工作空間POP位置624可包括用于解決來自客戶端計算機670和680的DNS查詢的DNS部件、和/或用于存儲來自內容提供者的資源并且將各種請求的資源傳輸?shù)礁鞣N客戶端計算機的資源高速緩存部件(未示出)。在一些實施方案中,這些部件(或每個工作空間POP位置624內的其他部件)可包括促進通信的附加軟件和/或硬件部件,包括但不限于,負載平衡或負載共享軟件/硬件部件。注意,工作空間服務管理部件622和工作空間POP位置624的各種部件(包括工作空間網關部件626)可被認為是邏輯分組的(并且可在工作空間服務VPC 620內彼此互操作以及通過虛擬私有網絡彼此通信),無論部件或部件的部分是否是物理分開的。例如,工作空間服務管理部件622和工作空間POP位置624的各種部件可能以用于最好服務客戶端計算裝置(諸如客戶端670和680)的各種人口統(tǒng)計特征的方式在整個聯(lián)網環(huán)境600上地理分布。另外,相關領域的技術人員將認識到,CDN服務提供者106可以與各種額外計算資源相關聯(lián),如用于管理內容和資源的額外計算裝置等。在各種實施方案中,虛擬桌面(工作空間)實例632和642可以是使用與代表客戶端管理其他類型的虛擬計算資源實例(例如,其他虛擬計算和/或存儲資源實例638或648)的部件相同或不同的部件的管理。

      如在此示例中所示出的,從虛擬計算服務提供者610接收虛擬計算和/或存儲服務(例如,虛擬桌面服務)的每個客戶端可包括在客戶端裝置上執(zhí)行的工作空間服務的客戶端側部件。在一些實施方案中,工作空間服務的此客戶端側部件可在客戶端的防火墻部件后面操作。例如,客戶端670包括在防火墻672后面操作的工作空間服務客戶端部件675,并且客戶端680包括在防火墻682后面操作的工作空間服務客戶端部件685。例如,交互視頻流量可通過工作空間POP位置624處的一個工作空間網關部件626以及通過虛擬桌面實例的E0網絡接口(例如,E0接口634或644),在客戶端670或680中的一個與虛擬桌面實例(例如,虛擬桌面實例632或642)之間傳送。在一些實施方案中,工作空間服務可通過從虛擬桌面實例到POP位置處(但未超過)的網關部件的安全、可靠和低延遲連接,提供(和控制)交互視頻流的流式傳送。換言之,在工作空間POP位置處的網關部件可表示在虛擬桌面實例與客戶端之間連接的最后點,在所述最后點處通信在通過較不可靠和/或較高延遲公共網絡傳送以便到達其最后目的地(客戶端)之前被工作空間服務控制。然而,通過將工作空間服務的網關部件定位更靠近客戶端裝置,在遞送交互視頻流時此類公共網絡對服務性能的貢獻可減少。

      如本文所描述的,在一些實施方案中,工作空間服務的虛擬私有云可延伸,以便包括在可跨聯(lián)網環(huán)境地理分布的工作空間存在點位置中的網關部件。根據(jù)至少一些實施方案的聯(lián)網環(huán)境的一個示例通過圖7A中的方框圖示出,其中位于存在點位置處的網關部件在虛擬桌面(工作空間)服務的虛擬私有云內操作(參與),并且通過虛擬私有網絡(VPN)彼此通信(以及與工作空間服務的其他部件通信)。在此示例中,聯(lián)網環(huán)境700包括至少兩個可用性區(qū)或區(qū)域。如以上所指出的,每個可用性區(qū)/區(qū)域可包括其自身物理不同、獨立的基礎設施,在所述基礎設施上實現(xiàn)一系列計算節(jié)點(例如,在一個或多個數(shù)據(jù)中心內)。在一些實施方案中,每個可用性區(qū)/區(qū)域可駐留在不同地理位置或區(qū)域中,而在其他實施方案中,多個可用性區(qū)/區(qū)域可駐留在相同地理位置或區(qū)域中。在此示例中,聯(lián)網環(huán)境700包括可用性區(qū)或區(qū)域710,所述可用性區(qū)或區(qū)域710包括數(shù)據(jù)中心712,并且數(shù)據(jù)中心712托管一個或多個工作空間實例714和/或工作空間管理部件716(例如,在數(shù)據(jù)中心712內的一個或多個計算節(jié)點上)。類似地,聯(lián)網環(huán)境700包括可用性區(qū)或區(qū)域720,所述可用性區(qū)或區(qū)域720包括數(shù)據(jù)中心722,并且數(shù)據(jù)中心722托管一個或多個工作空間實例724和/或工作空間管理部件726(例如,在數(shù)據(jù)中心722內的一個或多個計算節(jié)點上)。

      如以上所描述的,一個或多個工作空間實例(包括實現(xiàn)工作空間實例的任何和所有虛擬計算和/或存儲資源)可在顧客VPC被托管在其中的相應數(shù)據(jù)中心中的顧客VPC內操作,并且一些或所有的工作空間實例(例如,工作空間實例714和/或724)可包括兩個分開的和不同的網絡接口,諸如本文所描述的E0和E1接口(未示出)。

      如在圖7A中所示出的,定位在不同可用性區(qū)或區(qū)域中的工作空間管理部件716和726可在工作空間服務VPC 730內操作,并且可提供功能性用于創(chuàng)建和/或配置虛擬桌面實例,選擇通過其在虛擬桌面實例與客戶端之間傳送交互視頻流的網關部件,建立虛擬桌面實例與客戶端之間的連接和/或執(zhí)行工作空間服務的其他管理或通信功能。此外,多個工作空間存在點(POP)網關部件(被示出作為WS POP網關部件731–736),盡管它們分布在兩個可用性區(qū)/區(qū)域710和720之間,可在工作空間服務VPC內操作并且可與工作空間服務VPC 730內的工作空間服務的其他部件互操作(例如,通過VPN)。在一些實施方案中,任何或所有的工作空間實例714和/或724的E0接口也可與工作空間管理部件716和/或726互操作,和/或與工作空間服務VPC730內的任何WS POP網關部件731–736互操作(未示出)。如在此示例中所示出的,工作空間服務的一些或所有的工作空間POP網關部件可定位在代表客戶端托管工作空間實例的數(shù)據(jù)中心之外。在其他實施方案中,工作空間服務的一些或所有的工作空間POP網關部件可定位在代表客戶端托管工作空間實例的數(shù)據(jù)中心內。注意,在各種實施方案中,每個可用性區(qū)或區(qū)域中可存在兩個或更多個數(shù)據(jù)中心,所述數(shù)據(jù)中心中的每一個可包括托管相應工作空間實例的多個計算節(jié)點。

      在一些實施方案中,客戶端可通過經由附近的工作空間網關部件(例如,位于客戶端附近的存在點位置處的工作空間網關部件)連接來訪問其工作空間(即工作空間服務代表客戶端創(chuàng)造和管理的工作空間實例)。然而,這些網關部件可能未必托管在它們的工作空間實例被托管在其中的數(shù)據(jù)中心或可用性區(qū)/區(qū)域中。在圖7A所示出的示例中,四個客戶端(例如,客戶端752、754、756和758)可通過WS POP網關部件731–726中的各種網關部件來訪問各種工作空間實例(例如,托管在可用性區(qū)/區(qū)域710內的數(shù)據(jù)中心712中的工作空間實例714中的各種工作空間實例、或托管在可用性區(qū)/區(qū)域720內的數(shù)據(jù)中心722中的工作空間實例724中的各種工作空間實例)。在此,客戶端752、754、756、和758可通過諸如互聯(lián)網的公共網絡(被示出作為公共網絡740)連接到這些工作空間POP網關部件中的任一個(并且與其通信),無論它們的工作空間被托管在何處。如在此示例中所示出的,客戶端752可通過可用性區(qū)/區(qū)域710中的WS POP網關部件732來訪問工作空間實例714(在可用性區(qū)/區(qū)域710中的數(shù)據(jù)中心712中)或724(在可用性區(qū)/區(qū)域720中的數(shù)據(jù)中心722中)中的任一個,例如,如果通過其客戶端752訪問它的工作空間實例的客戶端裝置物理定位在可用性區(qū)/區(qū)域710中或附近。從另一方面來說,如果客戶端752隨后通過物理定位在另一個可用性區(qū)/區(qū)域中的客戶端裝置訪問其工作空間實例,它可通過不同的工作空間POP網關部件訪問其工作空間實例。

      如先前所指出的,WS POP網關部件(諸如WS POP網關部件732)可以是多租戶訪問網關,所述多租戶訪問網關為服務代表其托管工作空間實例的多個不同工作空間客戶端(例如,不同顧客或服務訂戶)提供網關功能性。在此示例中,客戶端758也可通過可用性區(qū)/區(qū)域710中的WS POP網關部件732來訪問工作空間實例714(在可用性區(qū)/區(qū)域710中的數(shù)據(jù)中心712中)或724(在可用性區(qū)/區(qū)域720中的數(shù)據(jù)中心722中)中的任一個,(例如,如果通過其客戶端758訪問它的工作空間實例的客戶端裝置物理定位在可用性區(qū)/區(qū)域710中或附近),并且可隨后通過不同的工作空間POP網關部件訪問其工作空間實例(例如,如果它通過物理定位在另一個可用性區(qū)/區(qū)域中的客戶端裝置來訪問其工作空間實例)。

      在圖7A所示出的示例中,客戶端754可通過可用性區(qū)/區(qū)域720中的WS POP網關部件734訪問工作空間實例714(在可用性區(qū)/區(qū)域710中的數(shù)據(jù)中心712中)或724(在可用性區(qū)/區(qū)域720中的數(shù)據(jù)中心722中)中的任一個。類似地,客戶端756可通過可用性區(qū)/區(qū)域720中的WS POP網關部件736訪問工作空間實例714(在可用性區(qū)/區(qū)域710中的數(shù)據(jù)中心712中)或724(在可用性區(qū)/區(qū)域720中的數(shù)據(jù)中心722中)中的任一個。在一些實施方案中,客戶端可首先試圖通過一個網關部件訪問其工作空間實例中的一個,并且隨后(例如,如果試圖連接到工作空間實例是不成功的,如果連接上的延遲是不可接受的,或如果通過其客戶端訪問工作空間實例的客戶端裝置改變)可試圖通過另一個工作空間POP網關部件訪問工作空間實例。

      圖7B為示出根據(jù)至少一些實施方案的向客戶端提供工作空間服務的另一個示例性聯(lián)網環(huán)境的方框圖。聯(lián)網環(huán)境705類似于圖7A所示出的聯(lián)網環(huán)境700。然而,在此示例中,在存在點位置處的一些網關部件在虛擬桌面服務的虛擬私有云(例如,工作空間服務VPC 730)內操作,而其他網關部件在緊密聯(lián)接到虛擬桌面服務的虛擬私有云的對等VPC(例如,對等VPC 760)內操作。更具體地,在此示例中,WS POP網關部件731、732、733和734在虛擬桌面服務的虛擬私有云(例如,工作空間服務VPC 730)內操作,而WS POP網關部件735和736與對等VPC 760一起操作,所述對等VPC 760通過對等連接765通信聯(lián)接到工作空間服務VPC 730。如在先前示例中,客戶端756可通過可用性區(qū)/區(qū)域720中的WS POP網關部件736訪問工作空間實例714(在可用性區(qū)/區(qū)域710中的數(shù)據(jù)中心712中)或724(在可用性區(qū)/區(qū)域720中的數(shù)據(jù)中心722中)中的任一個。然而,在此示例中,WS POP網關部件736在對等VPC 760內操作而不是在工作空間服務VPC 730內操作。注意,雖然WS POP網關部件736在對等VPC 760內操作,在WS POP網關部件736與客戶端756所訪問的任何工作空間實例之間的通信通道的可靠性和延遲可基本上類似于在工作空間服務VPC 730內操作的WS POP網關部件與客戶端752、754、756、或758中的任一個所訪問的工作空間實例之間的通信通道的可靠性和延遲。注意,在一些實施方案中,對等VPC(諸如對等VPC 760)可包括托管在多個可用性區(qū)或區(qū)域中的計算節(jié)點上的WS POP網關部件。還應注意,在另外的其他實施方案中,提供工作空間服務的聯(lián)網環(huán)境的所有WS POP網關部件可在緊密聯(lián)接到工作空間服務VPC的一個或多個對等VPC內操作,而不是在工作空間服務VPC自身內操作。

      如先前所指出的,在一些實施方案中,工作空間服務可被配置來選擇用于在取決于其位置處理虛擬桌面會話的交互視頻流中使用的特定POP位置處的網關部件(例如,POP位置與交互視頻流將被傳送到的客戶端裝置的鄰近度)。例如,如果客戶端(例如,顧客或服務訂戶)正連接到來自紐約市內的客戶端計算裝置的虛擬桌面會話,所述會話的交互視頻流可能通過與如果客戶端正連接到來自上海的客戶端計算裝置的虛擬桌面會話不同的訪問網關來處理(取決于適當?shù)木W關部件被托管在其上的位置),無論代表客戶端托管會話的虛擬桌面實例的物理計算資源(例如,一個或多個計算節(jié)點)定位在何處。使用此方法,客戶端無論其物理位置如何可體驗良好的網絡性能(其至少直到所選擇的POP位置網關被工作空間服務自身控制)。換言之,在一些實施方案中,當客戶端物理移動通過其所述客戶端連接到虛擬桌面實例的裝置時,服務可自動將會話的交互視頻流量重新定向到最好的可用網關(例如,靠近客戶端裝置的網關)。

      在一些實施方案中,在不同存在點處(例如,在不同地理區(qū)域中的邊緣位置處)的至少一些資源(例如,物理計算資源和/或虛擬計算資源實例)可以被相同(或附近)的城市、國家或區(qū)域中的客戶端供應作為在其使用預期中的工作空間服務的VPC內的網關部件。在一些實施方案中,如果并且當連接到來自相同地理區(qū)域中的客戶端裝置的工作空間服務的用戶數(shù)目保證這種增加時,服務(或其管理部件)可供應附加的虛擬計算資源作為特定存在點位置處的網關部件(例如,增大支持客戶端的連接的能力)。在不同實施方案中,網關實例的此自動擴展可按需針對工作空間服務集中執(zhí)行,或在特定POP位置處執(zhí)行。在一些實施方案中,服務可實現(xiàn)故障解決機構,通過所述故障解決機構在客戶端裝置與工作空間實例之間的流量可在與一個或多個網關部件的通信的損耗、或一個或多個網關部件被托管在其上的特定POP位置處的計算節(jié)點的故障之后,定向(或重新定向)到替代性網關部件(例如,未托管在離客戶端裝置最近的POP位置處的網關部件)。類似地,響應于網關部件(或POP位置)所經歷的相對工作負載的改變,服務可將在客戶端裝置與工作空間實例之間的流量定向(或重新定向)到特定網關部件(和/或POP位置)。在一些實施方案中,如果來自客戶端裝置的流量需要被重新定向遠離在客戶端裝置附近的網關部件(或POP位置)(例如,由于負載平衡的故障或任何其他原因),系統(tǒng)可自動將流量重新定向到最近的網關部件(或POP位置)。在其他實施方案中,此類流量被重新定向到的網關部件和/或POP位置可取決于負載平衡策略或用于從可用網關部件中選擇網關部件的一些其他類型的優(yōu)先級策略,所述網關部件可包括托管在客戶端附近的存在點位置處的網關部件、以及托管在更遠離客戶端的存在點位置處的網關部件。

      在一些實施方案中,服務可維持指示哪些網關可用于特定客戶端的使用的信息,并且可給那些客戶端提供可用網關部件(在特定POP位置處)的目的地地址的列表。例如,服務可被配置來自動確定一組兩個或更多個網關部件,所述網關部件可用于提供客戶端與虛擬計算服務之間的網絡接口以及它們被托管在其上的存在點位置,并且將那個提供到工作空間服務的客戶端側部件(例如,代表特定客戶端正執(zhí)行的工作空間客戶端過程)。在此類實施方案中,工作空間服務的客戶端側部件可被配置來從列表選擇可用網關部件,并且如果試圖通過所選擇的網關部件連接到虛擬桌面實例和開始虛擬桌面會話失敗,可被配置來在試圖連接和開始會話中重復循環(huán)可用網關部件的列表。在一些實施方案中,服務可被配置來基于負載信息或可用性信息(例如,響應于先前可用網關部件被托管在其上的一個或多個計算節(jié)點上所經歷的工作負載的增加或減少,與一個或多個先前可用網關部件的通信的損耗,或一個或多個先前可用網關部件被托管在其上的計算節(jié)點的故障)修改可用網關部件(在特定POP位置處)的目的地地址的列表,并且可向工作空間服務的客戶端側部件提供更新的列表。

      圖8為示出方法的一個實施方案的流程圖,所述方法用于通過位于存在點位置處的網關部件向客戶端提供虛擬桌面服務。如在810處所示出的,在此示例中,方法可包括從客戶端接收登入到虛擬桌面服務并且開始虛擬桌面會話(例如,例示虛擬桌面實例和/或連接到虛擬桌面實例)的請求。如果未認證請求(例如,如果客戶端未產生有效的憑證),如從820的否定出口所示出的,方法可包括將失敗指示返回到客戶端,如在825中。然而,如果認證請求,如從820的肯定出口所示出的),方法可包括配置虛擬桌面(工作空間)實例的虛擬計算資源以用于客戶端的使用,如在830中。例如,方法可包括例示虛擬資源實例并且配置它以便代表客戶端實現(xiàn)虛擬桌面(工作空間)。

      如在此示例中所示出的,方法可包括確定通過其虛擬桌面會話的交互視頻流應當傳送到客戶端的適當存在點(POP)位置,如在840中。在一些實施方案中,客戶端(或終端用戶)可選擇特定POP位置(或其網關部件)用于在與虛擬桌面實例通信中使用。在其他實施方案,虛擬桌面服務可被配置來確定(自動地,例如,基于在各種網關部件的工作負載上通過其接收請求的客戶端裝置的位置,或使用其他標準或策略)多個可用POP位置(和/或其網關部件)中的哪些應當用于處理虛擬桌面實例與客戶端之間的交互視頻流流量。

      一旦已經確定適合的POP位置(和/或其網關部件),方法可包括通過在工作空間服務的虛擬私有云內的選擇的POP位置處的網關部件,建立客戶端與工作空間實例之間的連接(或通信通道),如在850中。例如,在一些實施方案中,方法可包括工作空間服務的管理部件通過虛擬私有網絡建立從虛擬桌面實例到POP位置處的網關部件的隧道或管道,以使得通過其傳送虛擬桌面實例的交互流的可靠和低延遲連接可以被工作空間服務控制一直向外到POP位置,并且通過較不可靠和/或較高延遲公共網絡傳送的連接部分(例如,網關部件與客戶端之間的通過公共互聯(lián)網的連接)可以最小化。注意,通過POP位置處的網關部件建立客戶端與工作空間實例之間的連接或通信通道的管理部件可能或可能不托管在計算節(jié)點上,在不同實施方案中,所述計算節(jié)點被物理定位在與托管網關部件的計算節(jié)點或托管工作空間實例的計算節(jié)點相同的區(qū)域或可用性區(qū)。

      一旦建立連接,方法可包括發(fā)起使用客戶端與虛擬桌面實例之間的交互視頻流量的連接,如在860中。例如,方法可包括工作空間服務使得虛擬桌面實例對于客戶端(其可包括提供客戶端可使用的憑證以便訪問虛擬化計算資源實例)可用,發(fā)起向客戶端傳送像素流(和/或用于產生和呈現(xiàn)像素的命令)用于顯示,和/或準備接收和處理通過此連接從客戶端接收的輸入(例如,表示與虛擬桌面實例的用戶交互的輸入,諸如鍵盤輸入、鼠標輸入、或基于觸摸的接口輸入)。

      圖9為示出方法的一個實施方案的流程圖,所述方法用于通過位于存在點位置處的網關部件,管理工作空間提供者與客戶端之間的交互視頻流量。如在910處所示出的,在此示例中,方法可包括在數(shù)據(jù)中心內,工作空間服務例示虛擬化計算資源實例,配置它用于作為代表客戶端的虛擬桌面(工作空間)實例使用,以及開始虛擬桌面(工作空間)會話。在一些實施方案中,配置虛擬桌面實例以用于作為虛擬桌面(工作空間)實例使用并且開始工作空間會話可包括建立虛擬桌面(工作空間)實例與客戶端之間的通信通道,代表所述客戶端的虛擬桌面(工作空間)實例通過工作空間POP位置處的網關部件配置。如本文所描述的,在虛擬桌面(工作空間)實例與網關部件之間的通信通道部分可通過虛擬私有網絡實現(xiàn),而網關部件與客戶端之間的通信通道部分可通過公共網絡實現(xiàn)。一旦虛擬桌面實例被配置用于作為虛擬桌面(工作空間)實例使用并且已經建立通信通道,方法可包括管理虛擬桌面(工作空間)實例與客戶端之間的在并行路徑上的雙向交互視頻流量,所述兩個并行路徑可包括網關部件。例如,一個路徑可用于將像素流(和/或用于產生和呈現(xiàn)像素的命令)從客戶端的虛擬桌面(工作空間)實例傳送到客戶端,并且另一個路徑可用于將輸入從客戶端傳送到虛擬桌面(工作空間)實例。這兩個并行路徑分別由圖9中的流程圖的左側和右側上的并行路徑示出。

      如在此示例中所示出的,方法可包括工作空間實例通過UDP網絡協(xié)議產生視頻流用于在客戶端裝置上顯示客戶端工作空間,如在920中。例如,方法可包括響應于代表客戶端在工作空間實例上執(zhí)行應用,工作空間實例(或其虛擬化計算資源)通過UDP網絡協(xié)議產生像素流。方法還可包括工作空間實例向在客戶端裝置位置附近的POP位置處的網關部件提供視頻流,如在940中。如先前所指出的,在一些實施方案中,工作空間實例還可向客戶端裝置提供以下命令:表示指導客戶端裝置產生和/或呈現(xiàn)像素以用于由客戶端裝置(未示出)顯示的指令。注意,如以上所描述的,網關部件可以是與工作空間服務的虛擬私有云內的工作空間管理部件通信和互操作(例如,通過虛擬私有網絡通信)的多個網關部件中的一個,或它可在使用VPC對等機構通信聯(lián)接到工作空間服務的虛擬私有云的分開的虛擬私有云內操作。例如,在網關部件在緊密聯(lián)接到工作空間服務的VPC的對等VPC內操作的實施方案中,視頻流(包括像素數(shù)據(jù)和/或用于在客戶端裝置處產生和/或呈現(xiàn)像素的命令)可通過跨越兩個VPC的安全、可靠、低延遲通信通道從工作空間實例傳送到網關部件。

      方法可包括在客戶端裝置上執(zhí)行的工作空間服務的客戶端部件從網關部件接收UDP視頻流并且將其轉換到TCP,如在960中。例如,在一些實施方案中,客戶端裝置可通過客戶端裝置上的防火墻在端口4172上接收UDP流,并且在該防火墻后面,工作空間服務的客戶端部件可將所述UDP流轉換到TCP用于端口443。如在此示例中所示出的,方法可包括客戶端側應用在客戶端裝置上呈現(xiàn)和顯示轉換的視頻流,如在980中。

      同時(例如,在示出要素920–980中示出的操作正被執(zhí)行時),方法還可包括工作空間服務的客戶端部件向在客戶端裝置位置附近的POP位置處的網關部件提供輸入(例如,與處理像素流的網關部件相同的網關部件),如在930中。例如,客戶端可提供輸入,其表示類似于包括本地桌面的用戶交互的與虛擬桌面實例的用戶交互(例如,包括鍵盤、基于觸摸的接口和/或鼠標的交互)。

      如在此示例中所示出的,方法可包括網關部件橋接從客戶端到工作空間實例的返回路徑,如在950中。注意,在一些情況下,此路徑可跨可用性區(qū)和/或地理區(qū)域邊界。方法還可包括工作空間實例接收客戶端輸入、執(zhí)行請求的行動、并且響應于采用的行動產生視頻流(例如,通過UDP網絡協(xié)議),如在970中。一旦已經產生視頻流,方法可在此示例中如在940中繼續(xù)。

      如在此示例中所示出的,由于從客戶端接收的輸入并且產生新像素流(和/或用于產生和呈現(xiàn)像素的命令)以及將其傳送到客戶端裝置作為響應(被示出作為通過要素930、950、970、920、940、960和980的路徑、以及從980至930的反饋),并且由于將響應于在工作空間實例上執(zhí)行各種客戶端應用而由工作空間實例產生的視頻流傳送到客戶端裝置(被示出為包括要素920、940、960、980的路徑、以及從980到920的反饋),可重復在圖9中示出并且對應于交互視頻流的處理的操作。

      圖10為示出方法的一個實施方案的流程圖,所述方法用于通過位于存在點位置處的網關部件,使客戶端連接到工作空間服務并且與工作空間服務通信。如在1010處所示出的,在此示例中,方法可包括代表終端用戶將工作空間實例托管在遠程數(shù)據(jù)中心上的工作空間服務的客戶端部件,接收網關部件被托管在其上的POP位置的目的地地址的列表。例如,在一些實施方案中,工作空間服務的客戶端部件可在客戶端裝置上的客戶端部件的例示(安裝)或配置(初始化)期間,從工作空間服務接收這種列表(其可識別一組兩個或更多個網關部件,所述網關部件可用于提供工作空間服務的客戶端部件在其上執(zhí)行的客戶端裝置與工作空間服務之間的通信接口、以及它們被托管在其上的存在點位置)。在一些此類實施方案中,客戶端部件可周期性地、或在按需或按請求的基礎上(例如,響應于網關部件的數(shù)目或配置的改變)接收更新的列表(或將向列表施加的更新)。

      如在此示例中所示出的,方法可包括工作空間服務的客戶端部件從包括在從工作空間服務接收的列表上包括的那些目的地地址中,選擇網關部件被托管在其上的POP位置的目的地地址(如在1020中)。例如,在各種實施方案中,可自動或通過用戶輸入選擇目的地地址,并且選擇自身可基于在其上執(zhí)行客戶端部件的客戶端裝置的位置、在一個或多個POP位置處和/或由其各種網關部件所經歷的工作負載、和/或其他標準或優(yōu)選設置(其中的一些可以在工作空間服務的默認策略中或客戶端特定的策略中指定)。如在圖10中所示出的,方法可包括工作空間服務的客戶端部件試圖通過選擇的POP位置處的網關部件與工作空間實例連接,如在1030中。

      如果試圖連接到工作空間實例是成功的(被示出作為從1040的肯定出口),方法可包括客戶端部件開始通過選擇的POP位置處的網關部件與工作空間實例交換交互視頻流數(shù)據(jù),這可包括從工作空間實例接收像素流并且(并行)返回用戶輸入(如在1050中),如本文所描述的。如先前所指出的,在一些實施方案中,交互視頻流還可包括以下命令:所述命令從工作空間實例傳送到客戶端部件,并且表示指導客戶端部件產生和/或呈現(xiàn)用于通過客戶端裝置顯示的像素的指令。然而,如果試圖連接到工作空間實例不是成功的(被示出作為從1040的否定出口),方法可包括工作空間服務的客戶端部件為網關部件被托管在其處的POP位置選擇另一個目的地地址,并且再次嘗試與工作空間實例連接。這在圖10中通過從1040的否定出口至1020的反饋來示出。注意,如本文所描述的,在工作空間實例與客戶端之間除交互視頻流之外的流量(例如,連接請求或其他類型的請求或數(shù)據(jù))可通過與用于傳送交互視頻流的接口不同的工作空間實例接口來傳送。例如,E0-型接口(諸如以上所描述的接口)可用于傳送交互視頻流,而E1-型接口(諸如以上所描述的接口)可用于傳送其他類型的信息和/或與除代表其創(chuàng)建工作空間實例的工作空間服務客戶端之外的網絡實體通信。還應注意,在一些實施方案中,客戶端(例如,顧客或服務訂戶)可能夠指定(例如,通過工作空間服務的客戶端部件的接口)對其工作空間實例的所有訪問應當通過特定網關部件傳送,無論通過其客戶端訪問它們的工作空間實例的客戶端裝置的物理位置如何。在其他實施方案中,客戶端可能夠指定默認網關部件以供使用(無論其位置如何),但可允許在某些情況下重寫此默認。在另外的其他實施方案中,客戶端可能夠指定應當至少部分取決于通過其客戶端訪問它們的工作空間實例的客戶端裝置的物理位置選擇網關部件以供使用。

      注意,已經根據(jù)定位在對應于服務提供者網絡邊緣的POP位置處的網關部件描述許多示例性實施方案。然而,在其他實施方案中,本文所描述的用于提供到云計算環(huán)境中的工作空間的低延遲連接的技術可以應用到沿從工作空間實例到客戶端裝置的各種路徑執(zhí)行網絡功能的其他類型的網關部件或路由器。例如,工作空間服務的虛擬私有云可向外延伸到類似的遠程聯(lián)網部件,所述遠程聯(lián)網部件不位于邊緣位置,但被定位比數(shù)據(jù)中心更靠近客戶端裝置,工作空間實例被托管在其上的計算節(jié)點物理定位在所述數(shù)據(jù)中心中。在此類實施方案中,可通過經由直到那些遠程聯(lián)網部件的安全、可靠和低延遲連接(例如,通過工作空間服務所控制的虛擬私有網絡)提供虛擬桌面會話的交互視頻流來改善性能,從而減少沿路徑的其他網絡(例如,潛在較低質量網絡)對客戶端裝置的影響。

      說明性系統(tǒng)

      在至少一些實施方案中,實現(xiàn)如本文所描述的用于提供到云計算環(huán)境中的工作空間的低延遲連接的一些或所有技術的系統(tǒng)可包括通用計算機系統(tǒng),所述通用計算機系統(tǒng)包括或被配置來訪問非暫時性計算機可訪問(例如,計算機可讀)介質,諸如圖11所示出的計算機系統(tǒng)1100。例如,在各種實施方案中,本文所描述的任何或所有的計算機系統(tǒng)部件(包括,例如,在服務提供者網絡上共同提供虛擬計算服務和/或虛擬存儲服務的數(shù)據(jù)中心計算機和/或其他部件、虛擬化計算資源實例、虛擬機、虛擬機監(jiān)視器或管理程序、工作空間管理部件、和/或虛擬桌面實例;網關部件或存在點位置處的其他部件;或客戶端計算裝置、工作空間服務的客戶端側部件、防火墻、或客戶端網絡上的其他部件)可使用類似于已經被配置來提供那些部件的功能性的計算機系統(tǒng)1100的計算機系統(tǒng)來實現(xiàn)。在示出的實施方案中,計算機系統(tǒng)1100包括通過輸入/輸出(I/O)接口1130耦接到系統(tǒng)存儲器1120的一個或多個處理器1110。計算機系統(tǒng)1100還包括耦接到I/O接口1130的一個或多個網絡接口1140。在一些實施方案中,網絡接口1140可包括兩個或更多個網絡接口,其包括例如,被配置用于在托管在計算機系統(tǒng)1100上的虛擬化計算資源與其客戶端之間的通信的網絡接口,以及被配置用于在虛擬化計算資源與外部資源、計算系統(tǒng)、數(shù)據(jù)中心、或除代表其托管虛擬化計算資源的提供者網絡和客戶端網絡之外的網絡上的互聯(lián)網目的地之間的通信的網絡接口。

      在各種實施方案中,計算機系統(tǒng)1100可以是包括一個處理器1110的單處理器系統(tǒng),或包括若干處理器1110(例如兩個、四個、八個或另一合適數(shù)量)的多處理器系統(tǒng)。處理器1110可以是能夠執(zhí)行指令的任何處理器。例如,在各種實施方案中,處理器1110可以是實現(xiàn)各種指令集架構(ISA)任何一種架構的通用或嵌入式處理器,所述架構諸如x86、PowerPC、SPARC、或MIPS ISA或任何其他合適ISA。在多處理器系統(tǒng)中,處理器1110中的每一個通常可以但不一定實現(xiàn)相同的ISA。

      系統(tǒng)存儲器1120可被配置來存儲可由處理器1110訪問的指令和數(shù)據(jù)。在各種實施方案中,系統(tǒng)存儲器1120可使用任何合適存儲器技術來實施,所述存儲器技術諸如靜態(tài)隨機存取存儲器(SRAM)、同步動態(tài)RAM(SDRAM)、非易失性/快閃型存儲器或任何其他類型的存儲器。在所示出的實施方案中,實現(xiàn)一個或多個所需功能的程序指令和數(shù)據(jù)(諸如以上所描述的用于提供到云計算環(huán)境中的工作空間的低延遲連接的那些方法、技術和數(shù)據(jù))被示出作為代碼1125和數(shù)據(jù)1126存儲在系統(tǒng)存儲器1120內。

      在一個實施方案中,I/O接口1130可被配置來協(xié)調處理器1110、系統(tǒng)存儲器1120和裝置中的任何外圍裝置之間的I/O流量,所述外圍裝置包括網絡接口1140或其他外圍接口中的任何。在一些實施方案中,I/O接口1130可執(zhí)行任何必需協(xié)議、時序或其他數(shù)據(jù)變換以將來自一個部件(例如,系統(tǒng)存儲器1120)的數(shù)據(jù)信號轉換成適合于由另一個部件(例如,處理器1110)使用的格式。在一些實施方案中,I/O接口1130可包括對于通過各種類型的外圍總線附接的裝置的支持,所述外圍總線諸如外圍組件互連(PCI)總線標準或通用串行總線(USB)標準的改變形式。在一些實施方案中,I/O接口1130的功能可分到兩個或更多個單獨的部件中,諸如北橋和南橋。另外,在一些實施方案中,I/O接口1130的一些或所有功能,諸如到系統(tǒng)存儲器1120的接口,可直接并入處理器1110中。

      網絡接口1140可被配置來允許數(shù)據(jù)在計算機系統(tǒng)1100與附接到一個或多個網絡1150的其他裝置1160(例如像如附圖中所示的其他計算機系統(tǒng)或裝置)之間進行交換。在各個實施方案中,網絡接口1140可以支持通過任何合適有線或無線通用數(shù)據(jù)網絡(例如像以太網網絡類型)進行通信。另外,網絡接口1140可以支持通過電信/電話網絡(諸如模擬語音網絡或數(shù)字光纖通信網絡)、通過存儲區(qū)域網絡(諸如光纖通道SAN)或通過任何其他合適類型的網絡和/或協(xié)議進行通信。

      在一些實施方案中,系統(tǒng)存儲器1120可以是被配置來存儲如以上所描述的用于實現(xiàn)本文所描述的提供到云計算環(huán)境中的工作空間的低延遲連接的技術的各種實施方案的程序指令和數(shù)據(jù)的計算機可訪問介質的一個實施方案。然而,在其他實施方案中,可以在不同類型的計算機可訪問介質上接收、發(fā)送或存儲程序指令和/或數(shù)據(jù)。一般來說,計算機可訪問(例如,計算機可讀)介質可包括非暫時性存儲介質或存儲器介質,諸如磁性介質或光學介質,例如通過I/O接口1130耦接到計算機系統(tǒng)1100的磁盤或DVD/CD。非暫時性計算機可訪問(例如,計算機可讀)存儲介質還可以包括可作為系統(tǒng)存儲器1120或另一類型的存儲器包括在計算機系統(tǒng)1100的一些實施方案中的任何易失性或非易失性介質,諸如RAM(例如,SDRAM、DDR SDRAM、RDRAM、SRAM等)、ROM等。另外,計算機可訪問介質可包括傳輸介質或信號(諸如電信號、電磁信號或數(shù)字信號),通過通信介質(諸如網絡和/或無線鏈路)傳送,諸如可通過網絡接口1140來實現(xiàn)。

      本公開的實施方案可以鑒于以下條款來描述:

      1.一種系統(tǒng),其包括:

      定位在多個地理區(qū)域中的多個計算節(jié)點,其共同向一個或多個客戶端提供虛擬計算服務,所述計算節(jié)點中的每一個包括至少一個處理器和存儲器;

      多個虛擬化計算資源實例,各自在所述區(qū)域的相應一個中的數(shù)據(jù)中心內的所述計算節(jié)點的相應一個上執(zhí)行;以及

      多個網關部件,其中所述網關部件的每一個托管在位于所述區(qū)域的相應一個中的存在點位置處的所述計算節(jié)點的相應一個上;

      其中所述虛擬化計算資源實例中的一個或多個被配置來實現(xiàn)虛擬桌面服務的管理部件;

      其中所述多個網關部件中的至少一些和所述虛擬桌面服務的所述管理部件在所述虛擬桌面服務的虛擬私有云內彼此互操作;

      其中所述虛擬化計算資源實例中的一個被配置來實現(xiàn)虛擬桌面實例;

      其中所述多個網關部件中的兩個或更多個被配置作為用于客戶端裝置與所述虛擬桌面服務之間的網絡接口,其中客戶端裝置通過公共網絡與所述兩個或更多個網關部件通信;

      其中響應于從客戶端裝置接收連接到所述虛擬桌面實例的請求,所述虛擬桌面服務的所述管理部件被配置來建立在所述虛擬桌面實例與所述兩個或更多個所述網關部件中的一個之間的通信通道,用于交互視頻流在所述客戶端裝置與所述虛擬桌面實例之間的雙向傳送,其中所述交互視頻流包括從所述虛擬桌面實例傳送到所述客戶端裝置的像素流、以及從所述客戶端裝置傳送到所述虛擬桌面實例的多個輸入,所述多個輸入表示與所述虛擬桌面實例的用戶交互。

      2.如條款1所述的系統(tǒng),其中所述兩個或更多個所述網關部件中的所述一個和所述虛擬化計算資源實例定位在所述區(qū)域的不同區(qū)域中,所述虛擬桌面實例在所述虛擬化計算資源實例上執(zhí)行。

      3.如任何前述條款所述的系統(tǒng),其中所述虛擬桌面服務的所述管理部件另外被配置來至少部分取決于所述客戶端裝置位于的所述區(qū)域確定,在建立所述通信通道之前,所述兩個或更多個所述網關部件中的哪些用于所述交互視頻流在所述客戶端裝置與所述虛擬桌面實例之間的雙向傳送。

      4.如任何前述條款所述的系統(tǒng),其中所述虛擬化計算資源實例是客戶端的虛擬私有云內操作的多個虛擬化計算資源實例中的一個,所述虛擬桌面實例在所述虛擬化計算資源實例上執(zhí)行。

      5.一種方法,其包括:

      由一個或多個計算機執(zhí)行以下各項:

      從客戶端裝置接收開始虛擬桌面實例上的虛擬桌面會話的請求,其中所述虛擬桌面實例托管在定位在多個可用性區(qū)中并且共同實現(xiàn)虛擬桌面服務的多個計算節(jié)點中的一個上;

      建立在所述虛擬桌面實例與網關部件之間的通信通道,其中所述網關部件是被配置來提供在客戶端裝置與所述虛擬桌面服務之間的通信接口的多個網關部件中的一個,其中所述多個網關部件中的每一個托管在所述多個可用性區(qū)的相應一個中的存在點位置處的相應計算節(jié)點上,并且其中所述多個網關部件中的至少一些與所述虛擬桌面服務的一個或多個其他部件在所述虛擬桌面服務的虛擬私有云內互操作;以及

      開始所述虛擬桌面實例上的虛擬桌面會話,其中所述開始包括發(fā)起交互視頻流在所述虛擬桌面實例與所述客戶端裝置之間經由所述網關部件的傳送,以使得所述客戶端裝置通過公共網絡與所述網關部件通信,其中所述交互視頻流包括從所述虛擬桌面實例傳送到所述客戶端裝置的像素流、以及從所述客戶端裝置傳送到所述虛擬桌面實例的多個輸入,所述多個輸入表示與所述虛擬桌面實例的用戶交互。

      6.如條款5所述的方法,其中所述虛擬桌面實例通過在客戶端的虛擬私有云內操作的多個虛擬化計算資源實例中的一個實現(xiàn),從所述客戶端裝置接收代表所述客戶端的所述請求。

      7.如條款5或6所述的方法,其中所述多個網關部件中的每一個是代表多個客戶端提供客戶端裝置與所述虛擬桌面服務之間的通信接口的多租戶網關部件。

      8.如條款5-7中任一項所述的方法,其還包括,在所述建立之前:

      至少部分取決于所述多個網關部件中的至少一個被托管在其處的所述存在點位置與所述客戶端裝置的接近度,確定所述多個網關部件中的哪一個用于處理所述交互視頻流在所述客戶端裝置與所述虛擬桌面實例之間的傳送。

      9.如條款8所述的方法,

      其中所述確定由所述虛擬桌面服務的管理部件自動執(zhí)行,所述虛擬桌面服務在定位在除所述網關部件位于的可用性區(qū)之外的可用性區(qū)中的數(shù)據(jù)中心中的計算節(jié)點上執(zhí)行。

      10.如條款8所述的方法,

      其中所述確定由在所述客戶端裝置上執(zhí)行的所述虛擬桌面服務的客戶端側部件執(zhí)行。

      11.如條款10所述的方法,其還包括,在所述確定之前:

      將信息傳送到所述虛擬桌面服務的所述客戶端側部件,從而識別可用于提供所述客戶端裝置與所述虛擬桌面服務之間的通信接口的一組兩個或更多個網關部件,并且識別它們被托管在其中的所述存在點位置。

      12.如條款5-11中任一項所述的方法,

      其中所述發(fā)起所述交互視頻流在所述虛擬桌面實例與所述客戶端裝置之間經由所述網關部件的傳送包括發(fā)起所述交互視頻流從所述虛擬桌面實例到所述網關部件通過無狀態(tài)、基于數(shù)據(jù)報的網絡協(xié)議的傳送。

      13.如條款12所述的方法,其還包括:

      通過所述公共網絡上的部件將所述交互視頻流從所述無狀態(tài)基于數(shù)據(jù)報的協(xié)議網絡協(xié)議轉換到有狀態(tài)網絡協(xié)議;以及

      向所述客戶端裝置上的邏輯端點提供所述轉換的交互視頻流。

      14.如條款5-13中任一項所述的方法,其中多個網關部件的所述至少一些中的每一個通過所述虛擬桌面服務的所述虛擬私有云內執(zhí)行的一個或多個虛擬化計算資源實例來實現(xiàn)。

      15.如條款5-14中任一項所述的方法,其中所述網關部件在除所述虛擬桌面服務的所述虛擬私有云之外的虛擬私有云內操作,并且其中所述另一個虛擬私有云使用虛擬私有云對等機構通信聯(lián)接到所述虛擬桌面服務的所述虛擬私有云。

      16.如條款5-15中任一項所述的方法,其中所述交互視頻流還包括一個或多個命令,所述一個或多個命令從所述虛擬桌面實例傳送到所述客戶端裝置,并且表示指導所述客戶端裝置產生或呈現(xiàn)用于通過所述客戶端裝置顯示的像素的指令。

      17.一種存儲程序指令的非暫時性計算機可讀存儲介質,所述程序指令在一個或多個計算機上執(zhí)行時致使所述一個或多個計算機執(zhí)行以下操作:

      配置虛擬化計算資源實例以便代表一個或多個客戶端提供虛擬桌面會話,其中所述虛擬化計算資源實例托管在定位在多個區(qū)域中并且共同提供虛擬計算服務的多個計算節(jié)點中的一個上;

      從客戶端接收打開所述虛擬化計算資源實例上的虛擬桌面會話的請求;

      確定被配置來提供客戶端與所述虛擬計算服務之間的網絡接口的多個網關部件中的哪一個將用于處理交互視頻流在所述虛擬化計算資源實例與所述客戶端之間的傳送,其中所述多個網關部件中的每一個托管在所述區(qū)域的相應一個中的存在點位置處的相應計算節(jié)點上,其中所述多個網關部件中的至少一些與所述虛擬計算服務的一個或多個其他部件在虛擬私有云內參與;以及其中所述確定至少部分取決于所述客戶端位于的所述區(qū)域;

      代表所述客戶端建立在所述虛擬化計算資源實例與所述確定的網關部件之間的通信通道。

      18.如條款17所述的非暫時性計算機可讀存儲介質,其中當在所述一個或多個計算機上執(zhí)行時,所述程序指令致使所述一個或多個計算機執(zhí)行以下操作:

      開始所述虛擬化計算資源實例上的虛擬桌面會話,其中所述開始包括發(fā)起交互視頻流在所述虛擬化計算資源與所述客戶端之間經由所述網關部件的傳送,以使得所述客戶端通過公共網絡與所述網關部件通信,其中所述交互視頻流包括從所述虛擬化計算資源實例傳送到所述客戶端的像素流、以及從所述客戶端傳送到所述虛擬化計算資源實例的多個輸入,所述多個輸入表示與所述虛擬桌面實例的用戶交互。

      19.如條款17或18所述的非暫時性計算機可讀存儲介質,其中所述確定被配置來提供客戶端與所述虛擬計算服務之間的網絡接口的多個網關部件中的哪一個將用于處理交互視頻流在所述虛擬化計算資源實例與所述客戶端之間的傳送包括自動識別托管在最靠近所述客戶端的所述存在點位置的存在點位置處的計算節(jié)點上的網關部件。

      20.如條款17-19中任一項所述的非暫時性計算機可讀存儲介質,其中所述確定被配置來提供客戶端與所述虛擬計算服務之間的網絡接口的多個網關部件中的哪一個將用于處理交互視頻流在所述虛擬化計算資源實例與所述客戶端之間的傳送包括取決于用于從托管在所述客戶端附近的存在點位置處的一個或多個計算節(jié)點上的所述多個網關部件的兩個或更多個中選擇網關部件的負載平衡策略或優(yōu)先級策略,來選擇托管在除最靠近所述客戶端的所述存在點位置之外的存在點位置處的計算節(jié)點上的網關部件。

      21.如條款17-20中任一項所述的非暫時性計算機可讀存儲介質,其中當在所述一個或多個計算機上執(zhí)行時,所述程序指令致使所述一個或多個計算機執(zhí)行以下操作:

      自動確定一組兩個或更多個網關部件,其可用于提供客戶端與所述虛擬計算服務之間的網絡接口、以及它們被托管在其處的所述存在點位置;以及

      修改可用于提供客戶端與所述虛擬計算服務之間的網絡接口的所述一組兩個或更多個網關部件,取決于以下中的一個或多個:所述兩個或更多個網關部件被托管在其上的所述計算節(jié)點中的一個或多個上經歷的工作負載的增加或減少、與所述兩個或更多個網關部件中的一個的通信的損耗、或所述兩個或更多個網關部件中的一個被托管在其上的計算節(jié)點的故障。

      22.如條款17-21中任一項所述的非暫時性計算機可讀存儲介質,其中當在所述一個或多個計算機上執(zhí)行時,所述程序指令致使所述一個或多個計算機執(zhí)行以下操作:

      響應于故障或錯誤情況的檢測,確定被配置來提供客戶端與所述虛擬計算服務之間的網絡接口的所述多個網關部件中的不同一個將用于處理交互視頻流在所述虛擬化計算資源實例與所述客戶端之間的傳送,以及

      代表所述客戶端建立在所述虛擬化計算資源實例與所述不同網關部件之間的通信通道。

      如在圖中所示和本文所描述的各種方法表示方法的示例性實施方案。所述方法可以軟件、硬件或其組合實現(xiàn)。方法的順序可以改變,并且各種要素可以添加、重新排序、組合、省略、修改等。

      受益于本公開的本領域技術人員將清楚地知曉可做出各種修改和變化。旨在包括所有這些修改和變化,并且因此,以上描述應視為具有說明性而非限制性意義。

      當前第1頁1 2 3 
      網友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1