国产精品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>

      能夠在聯(lián)網(wǎng)計(jì)算機(jī)中節(jié)能的架構(gòu)的制作方法

      文檔序號(hào):6594782閱讀:269來(lái)源:國(guó)知局
      專利名稱:能夠在聯(lián)網(wǎng)計(jì)算機(jī)中節(jié)能的架構(gòu)的制作方法
      能夠在聯(lián)網(wǎng)計(jì)算機(jī)中節(jié)能的架構(gòu)相關(guān)申請(qǐng)的交叉引用本申請(qǐng)要求于2008年7月14日提交的、標(biāo)題為“SERVER AIDED HOST COMPUTER SLEEP METHOD AND SOFTWARE” 的、將 ^vraj Agarwal 和 Rajesh K. Gupta 列為發(fā)明人的第 61/134,擬4號(hào)美國(guó)臨時(shí)申請(qǐng)的優(yōu)先權(quán)。
      背景技術(shù)
      本申請(qǐng)涉及計(jì)算機(jī)和對(duì)其睡眠操作模式的管理。計(jì)算機(jī)的現(xiàn)代應(yīng)用對(duì)能量的使用作出了顯著貢獻(xiàn)。因此,計(jì)算機(jī)常常設(shè)計(jì)有一個(gè) 或多個(gè)操作模式,該一個(gè)或多個(gè)模式使用較少的能量以執(zhí)行較少的傳輸或?yàn)榱嗽谶\(yùn)行模式 中得到更多的時(shí)間來(lái)完成有用工作。雖然計(jì)算機(jī)可能處于低利用模式,但其經(jīng)常保持運(yùn)行 以允許啟用遠(yuǎn)程訪問(wèn)、互聯(lián)網(wǎng)電話服務(wù)、日歷與聯(lián)系人同步、以及其它廣泛流行的應(yīng)用程 序。雖然為了這些用途而保持運(yùn)行的計(jì)算機(jī)大多數(shù)情況下是空閑的,但盡管如此,計(jì)算機(jī)還 是消耗顯著的功率,隨著時(shí)間的流逝,這可以導(dǎo)致能量賬單的增加或電池壽命的縮短。測(cè)試 證明,空閑的計(jì)算機(jī)與100瓦特的電燈泡幾乎消耗相同的電量。

      發(fā)明內(nèi)容
      本公開(kāi)包括允許計(jì)算機(jī)在處于低功率模式時(shí)保持可訪問(wèn)的系統(tǒng)和技術(shù)??商峁┫?列優(yōu)點(diǎn)中的一個(gè)或多個(gè)。本發(fā)明的軟件、計(jì)算機(jī)和網(wǎng)絡(luò)可以對(duì)網(wǎng)絡(luò)服務(wù)器上的一個(gè)計(jì)算機(jī) 或多個(gè)計(jì)算機(jī)的指定的最小功能進(jìn)行仿真,從而在其它應(yīng)用程序、計(jì)算機(jī)和網(wǎng)絡(luò)裝備看來(lái), 即使當(dāng)各計(jì)算機(jī)處于低功率模式時(shí),在睡眠服務(wù)器系統(tǒng)上仿真的一個(gè)或多個(gè)計(jì)算機(jī)也處于 工作中。本文中,“睡眠服務(wù)器”指提供諸如文中所描述的睡眠管理服務(wù)的數(shù)據(jù)處理設(shè)備(該 設(shè)備可以是一同工作的多個(gè)計(jì)算機(jī))。因此,不一定將“睡眠服務(wù)器”實(shí)施為獨(dú)立的服務(wù)器 系統(tǒng)。相反,可以通過(guò)多種方式實(shí)施“睡眠服務(wù)器”,包括不使用傳統(tǒng)服務(wù)器計(jì)算機(jī)。睡眠服務(wù)器系統(tǒng)可以被實(shí)施為多種網(wǎng)絡(luò)裝置,包括如在多個(gè)網(wǎng)絡(luò)裝置上并發(fā)地運(yùn) 行的分布式進(jìn)程。當(dāng)外部應(yīng)用程序或裝置的活動(dòng)指示應(yīng)對(duì)被仿真的一個(gè)或多個(gè)計(jì)算機(jī)進(jìn)行 上電或使其可用以提高的處理能力時(shí),睡眠服務(wù)器系統(tǒng)可以激活計(jì)算機(jī)的上電周期。指示 上電的示例性狀況可以包括傳入的遠(yuǎn)程訪問(wèn)請(qǐng)求或當(dāng)檢測(cè)到傳入的互聯(lián)網(wǎng)電話服務(wù)呼叫 時(shí)。本發(fā)明提供了顯著的降低功率使用的可能性,特別是在大型網(wǎng)絡(luò)上。在操作有本 發(fā)明的軟件的網(wǎng)絡(luò)上,當(dāng)指定事件發(fā)生時(shí),可以透明地(transparently)喚醒待關(guān)閉或進(jìn) 入諸如睡眠(ACPI狀態(tài)S3)的低功率模式的、空閑并連接至服務(wù)器的臺(tái)式計(jì)算機(jī)和便攜式 計(jì)算機(jī)。這種指定事件可以包括傳入的互聯(lián)網(wǎng)電話呼叫、遠(yuǎn)程登錄請(qǐng)求(遠(yuǎn)程桌面、文件存 取),等等。即使計(jì)算機(jī)處于低功率模式,它們也可以保持可訪問(wèn)的假象(例如,響應(yīng)Ping 消息、回答ARP(地址分辨協(xié)議)請(qǐng)求)、保持DHCP(動(dòng)態(tài)主機(jī)配置協(xié)議)租賃,等等)。由 于計(jì)算機(jī)有效地處于低功率狀態(tài)并且可以根據(jù)要求被喚醒,故在長(zhǎng)期使用中可以大大節(jié)約 能量°
      本發(fā)明的實(shí)施不需要改變路由器、交換機(jī)的任何硬件,也不需要對(duì)想要使用該計(jì) 劃的臺(tái)式計(jì)算機(jī)本身增加任何硬件。將要使用睡眠管理服務(wù)的計(jì)算機(jī)可以運(yùn)行支持與“睡 眠服務(wù)器”系統(tǒng)通信的軟件,“睡眠服務(wù)器”系統(tǒng)可以是新的服務(wù)器計(jì)算機(jī)或服務(wù)器系統(tǒng),并 且還可以執(zhí)行更多通常的網(wǎng)絡(luò)服務(wù)器功能??蛇x地,“睡眠服務(wù)器”系統(tǒng)可以被實(shí)施在其它 網(wǎng)絡(luò)裝置中,諸如網(wǎng)絡(luò)交換機(jī)和網(wǎng)絡(luò)路由器中,或可以是在計(jì)算機(jī)網(wǎng)絡(luò)上的多個(gè)主計(jì)算機(jī) 上運(yùn)行的分布式睡眠管理系統(tǒng)。本發(fā)明可以通過(guò)允許計(jì)算機(jī)轉(zhuǎn)換為低功率模式且仍然保持可訪問(wèn)、并且可根據(jù)需 要被喚醒至全功率模式來(lái)節(jié)約大量能量。本發(fā)明不需要對(duì)各計(jì)算機(jī)進(jìn)行任何硬件修改或增 加,這使其易于在大型網(wǎng)絡(luò)中實(shí)施。在本發(fā)明的網(wǎng)絡(luò)系統(tǒng)中,睡眠服務(wù)器可以為已經(jīng)轉(zhuǎn)換為低功率模式的各計(jì)算機(jī)保 持虛擬機(jī)(VM)。因此睡眠服務(wù)器上的VM可以以它們所代表的各計(jì)算機(jī)的名義行動(dòng)。VM充 當(dāng)可以在最小的內(nèi)存和處理器占用量下運(yùn)行的、各計(jì)算機(jī)的代理,因此允許由單個(gè)睡眠服 務(wù)器代表幾百個(gè)計(jì)算機(jī),因此節(jié)約大量功率。在本發(fā)明的實(shí)施方式中,在主計(jì)算機(jī)(例如,臺(tái)式計(jì)算機(jī)或便攜式計(jì)算機(jī))進(jìn)入睡 眠(例如,ACPI狀態(tài)S3-掛起至RAM)之前,主計(jì)算機(jī)將其關(guān)心的事件和具體應(yīng)用程序觸發(fā) 轉(zhuǎn)移至睡眠服務(wù)器。這些事件可以是諸如“根據(jù)遠(yuǎn)程桌面或SSH請(qǐng)求喚醒”或“根據(jù)網(wǎng)絡(luò)語(yǔ) 音電話呼叫喚醒”等的事件。睡眠服務(wù)器為主計(jì)算機(jī)實(shí)例化出新的虛擬機(jī)(VM)并且將該虛 擬機(jī)的網(wǎng)絡(luò)接口地址設(shè)定為與進(jìn)入睡眠的主計(jì)算機(jī)相同;例如,可以將虛擬機(jī)的以太網(wǎng)接 口的MAC (介質(zhì)訪問(wèn)控制)地址設(shè)定為相同(如果使用DHCP,則使MAC地址保持相同允許對(duì) DHCP服務(wù)器的查詢返回相同的IP地址),或可以將IP (互聯(lián)網(wǎng)協(xié)議)地址設(shè)定相同(如果 使用靜態(tài)IP地址,則睡眠服務(wù)器可以發(fā)送新MAC地址的免費(fèi)ARP消息,S卩,MAC到IP地址映 射)。因此特定主計(jì)算機(jī)的這種VM偽裝和答復(fù)ICMP (互聯(lián)網(wǎng)控制消息協(xié)議)請(qǐng)求、ARP請(qǐng) 求等等,就好像主計(jì)算機(jī)仍然清醒并且親自回答請(qǐng)求。此外,VM可以執(zhí)行喚醒事件(使用嵌 入網(wǎng)絡(luò)接口的標(biāo)準(zhǔn)局域網(wǎng)喚醒功能)的包過(guò)濾處理(例如,限定在包分析器模塊中)來(lái)使 主計(jì)算機(jī)脫離低功率狀態(tài)(諸如S3)并恢復(fù)正常操作。對(duì)于遠(yuǎn)程應(yīng)用程序(不需要改變) 和網(wǎng)絡(luò)基礎(chǔ)結(jié)構(gòu),這可以透明地完成。因此,可以將睡眠管理作為服務(wù)透明地傳送至最終主 機(jī)。本發(fā)明具有許多應(yīng)用并可以在許多商業(yè)和公共網(wǎng)絡(luò)中實(shí)現(xiàn)顯著的功率節(jié)約。例 如,大型企業(yè)、學(xué)校、小型企業(yè)、政府機(jī)構(gòu),等等全部都可以使用本發(fā)明來(lái)節(jié)約它們的聯(lián)網(wǎng)的 臺(tái)式計(jì)算機(jī)和便攜式計(jì)算機(jī)的能耗。臺(tái)式機(jī)日常地消耗75-150瓦特。本發(fā)明的原型睡眠 服務(wù)器(實(shí)施為獨(dú)立服務(wù)器系統(tǒng))被估計(jì)為消耗約300瓦特。故適當(dāng)?shù)兀绻P(guān)閉100個(gè) 臺(tái)式機(jī)并采用本發(fā)明的睡眠服務(wù)器架構(gòu),則所消耗的功率將從10,000W(100*120W平均)降 低至500W(100*2W處于睡眠模式的每臺(tái)式機(jī)+睡眠服務(wù)器的300W)??紤]45小時(shí)的標(biāo)準(zhǔn) 工作周(五個(gè)工作日每天8小時(shí)+每周用于午餐的額外5小時(shí),等等)并假設(shè)對(duì)于該周的 其他小時(shí),臺(tái)式機(jī)處于低功率模式,相比于使這些臺(tái)式機(jī)一直保持開(kāi)啟的當(dāng)前方案,這轉(zhuǎn)化 為約70%的能量(和成本節(jié)約)。此外,本發(fā)明的應(yīng)用可以為改善的網(wǎng)絡(luò)管理提供機(jī)會(huì),這 種管理可以識(shí)別特定計(jì)算機(jī)何時(shí)處于睡眠狀態(tài)、何時(shí)其已經(jīng)當(dāng)機(jī)需要額外的診斷和修復(fù)服 務(wù)。大體上,本說(shuō)明書中所描述的主題的一個(gè)創(chuàng)新方面可以實(shí)施為方法,該方法包括以下行為經(jīng)由計(jì)算機(jī)網(wǎng)絡(luò)在第一計(jì)算機(jī)處接收與轉(zhuǎn)換為低功率操作模式的第二計(jì)算機(jī)相 關(guān)的信息;在計(jì)算機(jī)網(wǎng)絡(luò)上發(fā)送至少一條消息以使計(jì)算機(jī)網(wǎng)絡(luò)中的至少一個(gè)網(wǎng)絡(luò)交換機(jī)改 變第二計(jì)算機(jī)的至少一個(gè)被分配端口 ;在第一計(jì)算機(jī)處接收被指定給第二計(jì)算機(jī)的網(wǎng)絡(luò)通 信,該網(wǎng)絡(luò)通信通過(guò)至少一個(gè)網(wǎng)絡(luò)交換機(jī);在不使第二計(jì)算機(jī)從低功率操作模式轉(zhuǎn)換出來(lái) 的情況下,在第一計(jì)算機(jī)處以第二計(jì)算機(jī)的名義處理網(wǎng)絡(luò)通信的至少一部分,其中該處理 包括在對(duì)應(yīng)于第二計(jì)算機(jī)的虛擬機(jī)內(nèi)以第二計(jì)算機(jī)的名義處理網(wǎng)絡(luò)通信的至少一部分;以 及當(dāng)網(wǎng)絡(luò)通信中的至少一個(gè)滿足預(yù)定條件時(shí),經(jīng)由計(jì)算機(jī)網(wǎng)絡(luò),開(kāi)始使第二計(jì)算機(jī)從低功 率操作模式轉(zhuǎn)換出來(lái)。這些實(shí)施方式和其他實(shí)施方式可以各自任選地包括下列特征的一個(gè)或多個(gè)。當(dāng)?shù)?二計(jì)算機(jī)處于低功率操作模式時(shí),可以將第二計(jì)算機(jī)的地址(例如,IP地址、MAC地址)分 配給虛擬機(jī)。第一計(jì)算機(jī)可以運(yùn)行管理虛擬機(jī)的管理程序,該虛擬機(jī)處于對(duì)應(yīng)于待運(yùn)行于 低功率操作模式的多個(gè)計(jì)算機(jī)的多個(gè)輕量虛擬機(jī)之間。管理程序可以由計(jì)算機(jī)網(wǎng)絡(luò)上的包 括第一計(jì)算機(jī)的多個(gè)對(duì)等計(jì)算機(jī)運(yùn)行,并且對(duì)應(yīng)于待運(yùn)行于低功率操作模式的多個(gè)計(jì)算機(jī) 的虛擬機(jī)的管理可以分布在多個(gè)對(duì)等計(jì)算機(jī)之間??梢曰谂c處于低功率操作模式的第二計(jì)算機(jī)有關(guān)的要求增大或縮小虛擬機(jī)的 資源分配。計(jì)算機(jī)網(wǎng)絡(luò)可以包括虛擬局域網(wǎng)(VLAN)??梢允褂冒ǖ诙?jì)算機(jī)的介質(zhì)訪問(wèn) 控制(MAC)地址的局域網(wǎng)喚醒協(xié)議包來(lái)執(zhí)行該開(kāi)始??梢栽诘谝挥?jì)算機(jī)處記錄對(duì)應(yīng)于轉(zhuǎn)換為低功率操作模式的第二計(jì)算機(jī)的信息,其 中被記錄信息的至少一部分限定預(yù)定條件。第一計(jì)算機(jī)可以包括服務(wù)器計(jì)算機(jī)系統(tǒng)、網(wǎng)絡(luò) 交換機(jī)、網(wǎng)絡(luò)路由器、或主計(jì)算機(jī)。該方法還可以包括以下行為接收計(jì)算機(jī)網(wǎng)絡(luò)上的包括 第二計(jì)算機(jī)的多個(gè)計(jì)算機(jī)的加密密鑰;以及使用相應(yīng)組的加密密鑰在各自的虛擬機(jī)內(nèi)以多 個(gè)計(jì)算機(jī)的名義處理網(wǎng)絡(luò)通信。一種系統(tǒng)可以包括計(jì)算機(jī)網(wǎng)絡(luò);與計(jì)算機(jī)網(wǎng)絡(luò)耦接的多個(gè)計(jì)算機(jī);位于計(jì)算機(jī)網(wǎng) 絡(luò)中的網(wǎng)絡(luò)交換機(jī);以及與計(jì)算機(jī)網(wǎng)絡(luò)耦接并被配置為執(zhí)行操作的睡眠管理器計(jì)算機(jī)系 統(tǒng),該操作包括經(jīng)由計(jì)算機(jī)網(wǎng)絡(luò)接收與多個(gè)計(jì)算機(jī)中的一個(gè)或多個(gè)轉(zhuǎn)換為低功率操作模 式相關(guān)的信息;在計(jì)算機(jī)網(wǎng)絡(luò)上發(fā)送至少一條消息以使計(jì)算機(jī)網(wǎng)絡(luò)中的至少一個(gè)網(wǎng)絡(luò)交換 機(jī)改變?cè)摱鄠€(gè)計(jì)算機(jī)中的一個(gè)或多個(gè)的至少一個(gè)被分配端口 ;接收被指定給該多個(gè)計(jì)算機(jī) 中的一個(gè)或多個(gè)的網(wǎng)絡(luò)通信,該網(wǎng)絡(luò)通信通過(guò)網(wǎng)絡(luò)交換機(jī);在對(duì)應(yīng)于該多個(gè)計(jì)算機(jī)中的一 個(gè)或多個(gè)的一個(gè)或多個(gè)虛擬機(jī)內(nèi)以該多個(gè)計(jì)算機(jī)中的一個(gè)或多個(gè)的名義處理網(wǎng)絡(luò)通信的 至少一部分;以及當(dāng)網(wǎng)絡(luò)通信的至少一個(gè)滿足預(yù)定條件時(shí),經(jīng)由計(jì)算機(jī)網(wǎng)絡(luò),開(kāi)始使該多個(gè) 計(jì)算機(jī)中的一個(gè)或多個(gè)從低功率操作模式轉(zhuǎn)換出來(lái)。睡眠管理器計(jì)算機(jī)系統(tǒng)可以運(yùn)行管理一個(gè)或多個(gè)虛擬機(jī)的管理程序,其中該一個(gè) 或多個(gè)虛擬機(jī)的每一個(gè)被分配有該多個(gè)計(jì)算機(jī)中的相應(yīng)計(jì)算機(jī)的硬件地址(例如,MAC地 址)和網(wǎng)絡(luò)地址(例如,IP地址)的其中一個(gè)或二者。睡眠管理器計(jì)算機(jī)系統(tǒng)可以包括位 于計(jì)算機(jī)網(wǎng)絡(luò)上的多個(gè)對(duì)等計(jì)算機(jī),該多個(gè)對(duì)等計(jì)算機(jī)在分布式進(jìn)程中管理對(duì)應(yīng)于該多個(gè) 計(jì)算機(jī)的虛擬機(jī)。睡眠管理器計(jì)算機(jī)系統(tǒng)可以被配置為執(zhí)行操作,該操作包括基于與該多 個(gè)計(jì)算機(jī)中的一個(gè)或多個(gè)相關(guān)的要求對(duì)該一個(gè)或多個(gè)虛擬機(jī)的資源分配進(jìn)行增大或縮小。計(jì)算機(jī)網(wǎng)絡(luò)可以包括覆蓋多個(gè)單獨(dú)局域網(wǎng)的虛擬局域網(wǎng)(VLAN)。睡眠管理器計(jì)算 機(jī)系統(tǒng)可以被配置為發(fā)送包括重復(fù)的介質(zhì)訪問(wèn)控制(MAC)地址的局域網(wǎng)喚醒協(xié)議包,并且該多個(gè)計(jì)算機(jī)被配置為接收包括重復(fù)的介質(zhì)訪問(wèn)控制(MAC)地址的局域網(wǎng)喚醒協(xié)議包。睡 眠管理器計(jì)算機(jī)系統(tǒng)可以包括服務(wù)器計(jì)算機(jī)系統(tǒng)、網(wǎng)絡(luò)交換機(jī)、網(wǎng)絡(luò)路由器、或該多個(gè)計(jì)算 機(jī)的適合的子集。此外,該系統(tǒng)可以包括網(wǎng)絡(luò)附加存儲(chǔ)器,網(wǎng)絡(luò)附加存儲(chǔ)器與計(jì)算機(jī)網(wǎng)絡(luò)耦接并且 被共享為該多個(gè)計(jì)算機(jī)和睡眠管理器計(jì)算機(jī)系統(tǒng)的公共資源。例如,可以使用網(wǎng)絡(luò)上的硬 件驅(qū)動(dòng)器來(lái)處理與虛擬機(jī)和主計(jì)算機(jī)相關(guān)的多種狀態(tài)轉(zhuǎn)移信息(例如,當(dāng)主計(jì)算機(jī)睡眠時(shí) 由虛擬機(jī)以主計(jì)算機(jī)的名義下載的文件)。使用主計(jì)算機(jī)和虛擬機(jī)均可見(jiàn)的網(wǎng)絡(luò)附加存儲(chǔ) 驅(qū)動(dòng)器,可以容易地改善對(duì)虛擬機(jī)和主計(jì)算機(jī)的相互作用的管理。其他實(shí)施包括一種編碼程序的存儲(chǔ)媒介,該程序可操作以使計(jì)算機(jī)執(zhí)行所述操
      作。根據(jù)另一個(gè)方面,存儲(chǔ)媒介編碼程序,該程序可操作以使計(jì)算機(jī)執(zhí)行以下操作在主計(jì)
      算機(jī)處,向睡眠服務(wù)器指示睡眠模式并在進(jìn)入睡眠模式之前向睡眠服務(wù)器發(fā)送預(yù)定事件和
      應(yīng)用程序觸發(fā);在睡眠服務(wù)器處,通過(guò)接收事件和應(yīng)用程序觸發(fā)來(lái)響應(yīng)指示睡眠模式的主
      計(jì)算機(jī);在睡眠服務(wù)器處,對(duì)于指示睡眠模式的主計(jì)算機(jī),使主計(jì)算機(jī)的新虛擬機(jī)(VM)實(shí)
      例化并將VM的網(wǎng)絡(luò)接口地址設(shè)置為與進(jìn)入睡眠的主計(jì)算機(jī)相同;在睡眠服務(wù)器處,使用虛
      擬機(jī)來(lái)回答預(yù)定請(qǐng)求,就好像主計(jì)算機(jī)仍然清醒,并且通過(guò)預(yù)定喚醒事件喚醒主計(jì)算機(jī)。實(shí)
      例化可以包括為新的VM分配內(nèi)存和處理資源,對(duì)于主計(jì)算機(jī),VM在睡眠服務(wù)器中被預(yù)先注冊(cè)。所述的系統(tǒng)和技術(shù)可以被實(shí)施在電子電路中,或在計(jì)算機(jī)硬件、固件、軟件中,或 在它們的組合中,諸如本說(shuō)明書中所公開(kāi)的結(jié)構(gòu)化裝置及其結(jié)構(gòu)化等同。這可以包括編碼 一個(gè)或多個(gè)程序的計(jì)算機(jī)存儲(chǔ)媒介,該一個(gè)或多個(gè)程序可操作以使得包括一個(gè)或多個(gè)處理 器的一個(gè)或多個(gè)可編程計(jì)算機(jī)(例如,睡眠服務(wù)器系統(tǒng))執(zhí)行所述操作。因此,可以從公開(kāi) 的方法、系統(tǒng)、或設(shè)備實(shí)現(xiàn)程序?qū)嵤?,并且可以從公開(kāi)的系統(tǒng)、程序、或方法實(shí)現(xiàn)設(shè)備實(shí)施。 類似地,可以從公開(kāi)的系統(tǒng)、程序、或設(shè)備實(shí)現(xiàn)方法實(shí)施,并且可以從公開(kāi)的方法、程序、或 設(shè)備實(shí)現(xiàn)系統(tǒng)實(shí)施。在下面的附圖和描述中陳述的一個(gè)或多個(gè)實(shí)施的細(xì)節(jié)。通過(guò)描述和說(shuō)明并通過(guò)權(quán) 利要求,其他特征和優(yōu)點(diǎn)可以變得顯而易見(jiàn)。


      現(xiàn)在將參照下列附圖詳細(xì)描述這些方面和其它方面。圖1是示出允許計(jì)算機(jī)在低功率模式下保持可訪問(wèn)的操作環(huán)境和系統(tǒng)的實(shí)施例 的框圖。圖2是示出用于對(duì)網(wǎng)絡(luò)上的計(jì)算機(jī)的睡眠操作模式進(jìn)行管理的數(shù)據(jù)處理設(shè)備的 實(shí)施例的框圖。圖3A是示出睡眠服務(wù)器系統(tǒng)的實(shí)施例的框圖。圖;3B是示出睡眠服務(wù)器的實(shí)施例的框圖。圖4是示出低功率模式計(jì)算機(jī)管理過(guò)程的實(shí)施例的流程圖。圖5是示出低功率模式計(jì)算機(jī)管理過(guò)程的另一個(gè)實(shí)施例的流程圖。在各個(gè)附圖中,相似的參考標(biāo)號(hào)指示相似的元件。
      具體實(shí)施例方式本申請(qǐng)描述了允許計(jì)算機(jī)在低功率模式下保持可訪問(wèn)的系統(tǒng)和技術(shù)。例如,本發(fā) 明允許空閑且連接至網(wǎng)絡(luò)(有線、無(wú)線或二者)的臺(tái)式計(jì)算機(jī)和便攜式計(jì)算機(jī)被關(guān)閉或進(jìn) 入諸如睡眠(在ACPI (高級(jí)配置與電源接口)中稱為S3)的低功率模式并且當(dāng)用戶指定的 事件發(fā)生時(shí)被透明地喚醒。這種事件可以是任何事,諸如遠(yuǎn)程登錄請(qǐng)求(遠(yuǎn)程桌面、SSH、 文件訪問(wèn))等。即使計(jì)算機(jī)處于低功率(例如睡眠)模式下,睡眠中的計(jì)算機(jī)也保持它們 的可訪問(wèn)性(ICMP ping響應(yīng)、回答ARP請(qǐng)求等、保持DHCP租賃)。由于計(jì)算機(jī)有效地處于 低功率狀態(tài)并且能夠“根據(jù)要求”被喚醒,故節(jié)約了大量能量。所公開(kāi)的方法不需要對(duì)路由 器、交換機(jī)作任何改變,也不需要對(duì)想要使用該方法的臺(tái)式計(jì)算機(jī)本身增加任何硬件,而僅 僅需要增加“睡眠服務(wù)器”并在想要使用該方法的計(jì)算機(jī)上增加軟件。圖1是示出允許計(jì)算機(jī)在低功率模式下保持可訪問(wèn)的操作環(huán)境和系統(tǒng)的實(shí)施例 的框圖。如文中所述,服務(wù)器系統(tǒng)100提供睡眠管理服務(wù)。服務(wù)器系統(tǒng)100可以是獨(dú)立的 服務(wù)器計(jì)算機(jī),也可以是服務(wù)器群集。此外,服務(wù)器系統(tǒng)100不必在通常服務(wù)器系統(tǒng)環(huán)境中 實(shí)施,而是還可以在多種網(wǎng)絡(luò)裝置(諸如網(wǎng)絡(luò)交換機(jī)和網(wǎng)絡(luò)路由器)中實(shí)施,或可以是在計(jì) 算機(jī)網(wǎng)絡(luò)上的多個(gè)主計(jì)算機(jī)上(例如,裝置135上)運(yùn)行的分布式睡眠管理系統(tǒng)。服務(wù)器系統(tǒng)100可以是諸如企業(yè)網(wǎng)絡(luò)的網(wǎng)絡(luò)系統(tǒng)120的一部分。網(wǎng)絡(luò)系統(tǒng)120可 以包括一個(gè)或多個(gè)網(wǎng)絡(luò)130、140,該一個(gè)或多個(gè)網(wǎng)絡(luò)130、140可以是單個(gè)局域網(wǎng)(LAN)(例 如,以太局域網(wǎng))、或連接在一起成為互聯(lián)網(wǎng)絡(luò)的多個(gè)局域網(wǎng)。在任何情況下,在網(wǎng)絡(luò)系統(tǒng) 120內(nèi)的某處,網(wǎng)絡(luò)交換機(jī)125 (例如,第2層交換機(jī)或第3層交換機(jī))作出關(guān)于將LAN內(nèi)的 一個(gè)或多個(gè)客戶端裝置135的包發(fā)向何處的決定??蛻舳搜b置135可以包括任何可利用由服務(wù)器系統(tǒng)100提供的睡眠管理服務(wù)的計(jì) 算機(jī)。例如,客戶端裝置135可以包括臺(tái)式個(gè)人計(jì)算機(jī)、便攜式計(jì)算機(jī)、工作站、消費(fèi)電子裝 置、移動(dòng)裝置,等等。在任何情況下,客戶端135至少通過(guò)網(wǎng)絡(luò)交換機(jī)125連接至LAN。然 而,應(yīng)注意,這種LAN可以是覆蓋更加復(fù)雜的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的虛擬局域網(wǎng)(VLAN)。VLAN的 使用允許多種功能,并且對(duì)于本公開(kāi)值得注意的是,允許多個(gè)網(wǎng)絡(luò)段(或子網(wǎng))在相同的物 理以太線路上全部可用。因此,除了客戶端裝置135之外,通過(guò)公共的互聯(lián)網(wǎng)絡(luò)110(例如, 因特網(wǎng))連接至網(wǎng)絡(luò)系統(tǒng)120的更多客戶端裝置105也可以利用由服務(wù)器系統(tǒng)100提供的 睡眠管理服務(wù)。多種計(jì)算機(jī)105、135可以使用服務(wù)器系統(tǒng)100以通過(guò)轉(zhuǎn)換為低功率模式來(lái)節(jié)約大 量能量,且依然可訪問(wèn),并能夠根據(jù)需要被喚醒為全功率模式。這可以在不對(duì)各計(jì)算機(jī)105、 135進(jìn)行任何硬件修改或增加的情況下實(shí)現(xiàn),并且能夠使用現(xiàn)有機(jī)器工作。例如,這可以通 過(guò)在聯(lián)網(wǎng)和分布式的計(jì)算環(huán)境中設(shè)計(jì)睡眠服務(wù)器軟件來(lái)實(shí)現(xiàn),該睡眠服務(wù)器軟件為處于低 功率模式的各聯(lián)網(wǎng)計(jì)算機(jī)保持虛擬機(jī)(VM)。此外,該系統(tǒng)可以包括可以在多個(gè)位置與計(jì)算機(jī)網(wǎng)絡(luò)(例如,VLAN)相聯(lián)的網(wǎng)絡(luò)附 加存儲(chǔ)器150。網(wǎng)絡(luò)附加存儲(chǔ)器150可以被共享為客戶端裝置105、135和系統(tǒng)100的公共 資源。例如,網(wǎng)絡(luò)上的硬件驅(qū)動(dòng)器可用于處理與計(jì)算機(jī)135有關(guān)的多種狀態(tài)轉(zhuǎn)換信息(例 如當(dāng)計(jì)算機(jī)135處于睡眠狀態(tài)時(shí)由系統(tǒng)100以計(jì)算機(jī)135的名義下載的文件)。使用計(jì)算 機(jī)135和系統(tǒng)100均可見(jiàn)的網(wǎng)絡(luò)附加存儲(chǔ)驅(qū)動(dòng)器,可以進(jìn)一步改善對(duì)虛擬機(jī)和主計(jì)算機(jī)的 相互作用的管理。
      圖2是示出用于在網(wǎng)絡(luò)上對(duì)計(jì)算機(jī)的睡眠操作模式進(jìn)行管理的數(shù)據(jù)處理設(shè)備200 的實(shí)施例的框圖。即使某些實(shí)施不需要專用的服務(wù)器計(jì)算機(jī),但由于數(shù)據(jù)處理設(shè)備200可 以在關(guān)于睡眠管理的服務(wù)器模式下操作,故數(shù)據(jù)處理設(shè)備200又被稱為“睡眠服務(wù)器”。例 如,數(shù)據(jù)處理設(shè)備200可以代表多個(gè)計(jì)算機(jī),其中睡眠管理功能作為在點(diǎn)對(duì)點(diǎn)環(huán)境中實(shí)現(xiàn) 的分布式服務(wù)而被提供。在數(shù)據(jù)處理設(shè)備200的硬件部分中,數(shù)據(jù)處理設(shè)備200包括一個(gè)或多個(gè)處理器 210 (例如,集成電路板上的微處理器和芯片組)、計(jì)算機(jī)可讀媒介220 (例如,磁盤驅(qū)動(dòng)器中 的磁盤)、以及輸入/輸出裝置230 (例如,鍵盤、鼠標(biāo)、顯示器、網(wǎng)絡(luò)連接器等)。設(shè)備200 的軟件部分包括虛擬化環(huán)境250和對(duì)應(yīng)于其睡眠狀態(tài)被管理的計(jì)算機(jī)105,135的一個(gè)或多 個(gè)虛擬機(jī)(VM)沈0。如圖所示,虛擬化環(huán)境250可以運(yùn)行在操作系統(tǒng)240上,或者虛擬化環(huán) 境可以直接在物理機(jī)上運(yùn)行。因此,在某些實(shí)施中,不存在操作系統(tǒng)對(duì)0。睡眠服務(wù)器上的VM作為其所代表的各計(jì)算機(jī)的代理以相應(yīng)的計(jì)算機(jī)的名義而動(dòng) 作。這些VM代理可以被設(shè)計(jì)為在最小的內(nèi)存和處理器占用量下運(yùn)行,因此允許單個(gè)睡眠服 務(wù)器計(jì)算機(jī)代表幾百個(gè)計(jì)算機(jī)。這導(dǎo)致大量的能量節(jié)約,并且還提供了一種方法使用來(lái)自 大規(guī)模計(jì)算、數(shù)據(jù)和存儲(chǔ)服務(wù)器中的各計(jì)算機(jī)的功率狀態(tài)和其它重要信息來(lái)擴(kuò)大動(dòng)態(tài)功率 管理算法。此外,由于各VM與睡眠中的機(jī)器可以執(zhí)行什么行為的要求相關(guān),故這些VM自身 可以基于各VM的需求在被分配的內(nèi)存和處理能力方面增大,甚至是動(dòng)態(tài)地增大。虛擬化環(huán)境250包括管理程序255,管理程序255管理用于虛擬化環(huán)境250的保護(hù) 域、以及對(duì)應(yīng)于VM 260的用戶域。因此,這些虛擬機(jī)260并不僅僅用于動(dòng)態(tài)資源管理以及 安全和保護(hù),還創(chuàng)建復(fù)制計(jì)算機(jī)功能的代理,以便當(dāng)計(jì)算機(jī)處于低功率操作模式時(shí)代表該 計(jì)算機(jī)進(jìn)行行動(dòng)。虛擬機(jī)260可以是對(duì)應(yīng)于待運(yùn)行于低功率操作模式下的多個(gè)計(jì)算機(jī)的輕 量虛擬機(jī)。應(yīng)注意,操作系統(tǒng)240可以與虛擬機(jī)260代表的計(jì)算機(jī)的操作系統(tǒng)相同或不同。管理程序255可以基于任意給定時(shí)刻的需要增大或縮小提供給單獨(dú)VM 260的資 源。管理程序255還可以采用寫時(shí)復(fù)制技術(shù)來(lái)調(diào)整至比基于物理存儲(chǔ)器的限制的可能數(shù)量 更多的虛擬機(jī)。此外,在分布式點(diǎn)對(duì)點(diǎn)實(shí)施中,管理程序255可以由多個(gè)對(duì)等計(jì)算機(jī)運(yùn)行 (例如,在裝置135之間),并且管理程序255可以在多個(gè)對(duì)等計(jì)算機(jī)之間的分布式樣式中 管理對(duì)應(yīng)于待運(yùn)行于低功率操作模式的多個(gè)計(jì)算機(jī)的VIC60。同樣地,在點(diǎn)對(duì)點(diǎn)實(shí)施中,多 個(gè)睡眠服務(wù)器和管理程序還可以通信以確定它們正在代理哪些機(jī)器。當(dāng)滿足所需的觸發(fā)事件時(shí),諸如處于低功率模式的某一主機(jī)的遠(yuǎn)程登錄請(qǐng)求,可 以使用公知和廣泛實(shí)施的局域網(wǎng)喚醒標(biāo)準(zhǔn)(或其無(wú)線等同,即,無(wú)線局域網(wǎng)喚醒(WoWLAN)) 來(lái)喚醒該計(jì)算機(jī),同時(shí)其位于睡眠服務(wù)器上的相應(yīng)VM被自動(dòng)禁用或刪除。這可以在不對(duì) 遠(yuǎn)程主計(jì)算機(jī)作除了啟用局域網(wǎng)喚醒功能以外的任何改變、也不對(duì)底層的網(wǎng)絡(luò)基礎(chǔ)結(jié)構(gòu) (即,網(wǎng)絡(luò)交換機(jī)或路由器)作任何改變的情況下完成。已經(jīng)作為以太網(wǎng)控制器的一部分被實(shí)施在許多主板上的局域網(wǎng)喚醒(WOL)是用 于喚醒遠(yuǎn)程計(jì)算機(jī)的當(dāng)前標(biāo)準(zhǔn)。WOL由操作系統(tǒng)管理(例如,WINDOWS 操作系統(tǒng))并由 BIOS(基本輸入輸出系統(tǒng))支持。WOL通常需要互聯(lián)網(wǎng)路由基礎(chǔ)結(jié)構(gòu)的支持以傳送局域網(wǎng) 喚醒包。即使作為一種標(biāo)準(zhǔn),也存在局域網(wǎng)喚醒工作不正常并因此迫使位于本地和數(shù)據(jù)中 心的用戶將他們的機(jī)器保持打開(kāi)的多種原因。根本原因在于應(yīng)用程序需求相對(duì)于局域網(wǎng)喚 醒所采取的網(wǎng)絡(luò)級(jí)行為之間的“語(yǔ)義間隙”。此外,可能錯(cuò)過(guò)重要的事件或?qū)е绿^(guò)頻繁的喚醒的十分粗糙的喚醒行為以及缺少可配置性以提供選擇性的喚醒事件和行為嚴(yán)重地限 制了 WOL的采用。在某些實(shí)施中,還可以使用無(wú)線局域網(wǎng)喚醒(WoWLAN)。相比之下,本睡眠服務(wù)器架構(gòu)通過(guò)將其某些功能(諸如保持網(wǎng)絡(luò)存在)轉(zhuǎn)移至睡 眠服務(wù)器(例如專用的單獨(dú)服務(wù)器)上的相應(yīng)虛擬機(jī)(VM)來(lái)使主計(jì)算機(jī)能夠進(jìn)入低功率 模式(諸如睡眠)。運(yùn)行在睡眠服務(wù)器上的VM可以創(chuàng)建主計(jì)算機(jī)處于開(kāi)啟并對(duì)于遠(yuǎn)程計(jì)算 機(jī)完全可用的的假象。VM可以被(動(dòng)態(tài)地或靜態(tài)地)配置為以主計(jì)算機(jī)的名義照管某些工 作。虛擬機(jī)還可以被架構(gòu)為當(dāng)且僅當(dāng)它們不能響應(yīng)或照管一些工作時(shí)禁用它們并無(wú)縫地喚 醒相應(yīng)主計(jì)算機(jī)。在某些實(shí)施中,可以將幾百個(gè)VM合并至單個(gè)睡眠服務(wù)器上,并且因此,能 量收益的可以是大量的。其它實(shí)施方式可以使用被更好地調(diào)整以創(chuàng)建、配置和調(diào)度這種代 理的專用或定制的機(jī)器。圖3是示出睡眠服務(wù)器系統(tǒng)的一個(gè)實(shí)施例的框圖。主計(jì)算機(jī)Hl-HlOO通過(guò)包括網(wǎng) 絡(luò)交換機(jī)310、315的網(wǎng)絡(luò)與睡眠服務(wù)器320通信。此外,各主計(jì)算機(jī)HN的喚醒觸發(fā)可以 (例如,由主計(jì)算機(jī)親自)相對(duì)于各主計(jì)算機(jī)指定,或(例如,由睡眠服務(wù)器320)自動(dòng)確定。主計(jì)算機(jī)HN可以是任何計(jì)算裝置,諸如上網(wǎng)本、便攜式計(jì)算機(jī)、臺(tái)式機(jī)或服務(wù)器。 在主計(jì)算機(jī)轉(zhuǎn)到諸如睡眠(S3-掛起到RAM)或休眠(S4-掛起到硬盤)的低功率狀態(tài)之前, 主計(jì)算機(jī)將其所關(guān)心的要響應(yīng)的事件和具體應(yīng)用程序觸發(fā)傳遞到睡眠服務(wù)器320。這些事 件可以是諸如根據(jù)進(jìn)入的遠(yuǎn)程臺(tái)式機(jī)或SSH請(qǐng)求喚醒,或根據(jù)網(wǎng)絡(luò)語(yǔ)音(VoIP)呼叫喚醒 等,或它們的任意組合。用戶還可以僅指定他們所關(guān)心的應(yīng)用程序,并且這些喚醒觸發(fā)可以 使用各應(yīng)用程序正在監(jiān)聽(tīng)的TCP/UDP端口(例如,遠(yuǎn)程臺(tái)式機(jī)(TCP 3389)、SSH(TCP :22)、 VoIP(UDP :5060),等等)來(lái)提取。這些喚醒事件和觸發(fā)可以是較少限制的(例如,根據(jù)來(lái)自 任意IP地址的RDP或SSH請(qǐng)求喚醒)或較多限制的(例如,僅根據(jù)來(lái)自特定IP地址的RDP 或SSH請(qǐng)求喚醒)并且可以利用跨過(guò)不同層(例如,傳輸層TCP/UDP,路由層(IP),MAC層, 等等)的協(xié)議報(bào)頭的任意字段。喚醒觸發(fā)甚至可以基于應(yīng)用層觸發(fā)(例如,來(lái)自特定好友 的即時(shí)消息,或當(dāng)特定文件在點(diǎn)對(duì)點(diǎn)網(wǎng)絡(luò)上變得可供下載時(shí),等等)。然而,應(yīng)注意,雖然本說(shuō)明書主要詳述了與Windows-Intel機(jī)器上的ACPI標(biāo)準(zhǔn) 相關(guān)的睡眠行為,但其它睡眠狀態(tài)和標(biāo)準(zhǔn)也可以被用來(lái)在睡眠服務(wù)器架構(gòu)中管理除了 Windows-htel機(jī)器之外的計(jì)算機(jī)的低功率操作。從性能的觀點(diǎn)來(lái)看,可以提供非常普通的 方法,其中喚醒事件可以是基于任何協(xié)議報(bào)頭字段的任何正則表達(dá)式。這樣,可以在位于并 跨過(guò)網(wǎng)絡(luò)協(xié)議棧的多個(gè)層指定這些喚醒事件作為事件和行為的組合。在某些實(shí)施中,還可 以基于網(wǎng)絡(luò)包的有效載荷內(nèi)的檢查來(lái)觸發(fā)喚醒。在任何情況下,可以將使用這種架構(gòu)的主 計(jì)算機(jī)增加至該架構(gòu)且僅具有較小軟件增加,從而可以根據(jù)需要與睡眠服務(wù)器320通信。睡眠服務(wù)器320可以被實(shí)施為運(yùn)行在通用目的計(jì)算機(jī)器上的一套專用軟件。術(shù)語(yǔ) “睡眠服務(wù)器”被用來(lái)指服務(wù)器軟件和底層機(jī)器,其區(qū)別在上下文中指出。通常,睡眠服務(wù)器 機(jī)器是商用服務(wù)器類別的機(jī)器。依賴于想要利用這種架構(gòu)的主機(jī)的數(shù)量,睡眠服務(wù)器的范 圍可以從最適當(dāng)?shù)挠布渲?例如,單核CPU,小于2GB的RAM)到更高性能的機(jī)器(例如, 對(duì)于100臺(tái)主機(jī),可使用多核CPU和IOGB的RAM)。對(duì)于具有1000臺(tái)計(jì)算機(jī)數(shù)量級(jí)的更大 的企業(yè),可以存在多個(gè)睡眠服務(wù)器,而對(duì)于具有幾十臺(tái)PC的小型企業(yè),睡眠服務(wù)器可以僅 僅是普通臺(tái)式機(jī)類別的機(jī)器。睡眠服務(wù)器還可以是專用或定制的機(jī)器(諸如使用FPGA或 多處理器陣列的機(jī)器)以被調(diào)整為快速創(chuàng)建和管理作為主機(jī)器的代理的虛擬機(jī)。
      主計(jì)算機(jī)/機(jī)器HN最初可以與睡眠服務(wù)器320協(xié)作并且指定各種參數(shù),諸如其硬 件地址(例如,網(wǎng)絡(luò)MAC地址)、其網(wǎng)絡(luò)地址(例如,IP地址)、以及協(xié)議信息(例如,DHCP 或靜態(tài)IP)。這種配置信息由運(yùn)行在睡眠服務(wù)器機(jī)器上的軟件使用(通常僅一次),以創(chuàng)建 具有適當(dāng)參數(shù)的虛擬機(jī)(VM)。當(dāng)使用DHCP配置時(shí),對(duì)于每個(gè)主機(jī)-虛擬機(jī)對(duì)需要將MAC地 址設(shè)置為相同(如圖3A和;3B所示)。因此,當(dāng)VM查詢DHCP服務(wù)器時(shí),其獲得相同的IP地 址。當(dāng)使用靜態(tài)IP時(shí),VM可以具有與其相應(yīng)主機(jī)不同的MAC地址,這是因?yàn)樘摂M機(jī)可以發(fā) 送新MAC地址的免費(fèi)ARP包(S卩,Mac到IP地址映射)。此外,雖然目前的技術(shù)狀態(tài)可能未使用可信平臺(tái)模塊(TPM),但將來(lái)TPM在將來(lái)可 能與硬件可信根(ROT)同樣普遍。在這種情況下,本方法允許通過(guò)將經(jīng)由適當(dāng)?shù)腁PI呼叫 提供對(duì)TPM功能的訪問(wèn)的虛擬機(jī)(位于可信虛擬機(jī)器中)來(lái)實(shí)現(xiàn)對(duì)TPM功能的虛擬化。由于主機(jī)和相應(yīng)虛擬機(jī)的網(wǎng)絡(luò)參數(shù)(例如,IP地址,在一些情況下,MAC地址)是 相同的,故VM顯得與網(wǎng)絡(luò)中的任何其它主機(jī)一樣。這些虛擬機(jī)可以通過(guò)僅安裝最基本的軟 件而被設(shè)計(jì)為輕量的,并且以完整的網(wǎng)絡(luò)協(xié)議棧為特征。具體地,它們不需要提供真機(jī)的圖 形(GUI)和人機(jī)接口能力。因此,VM本身可以使用極其有限的內(nèi)存(例如,每個(gè)RAM均小 于64M)以及處理資源來(lái)運(yùn)行。這可以使得睡眠服務(wù)器架構(gòu)十分易于縮放,單個(gè)睡眠服務(wù)器 可以處理相應(yīng)主計(jì)算機(jī)對(duì)于處于低功率狀態(tài)的幾百個(gè)這種VM。此外,可能存在需要在連續(xù)通信的主計(jì)算機(jī)上運(yùn)行的具體應(yīng)用程序,首先基本是 需要主計(jì)算機(jī)保持打開(kāi)。這種應(yīng)用程序的實(shí)施例包括點(diǎn)對(duì)點(diǎn)(P2P)文件共享應(yīng)用程序、即 時(shí)消息(IM)程序、發(fā)送定期的保持工作狀態(tài)的消息等等。對(duì)于這些類別的應(yīng)用程序,可以 建立應(yīng)用程序存根。這些應(yīng)用程序存根是運(yùn)行在主計(jì)算機(jī)上的并可以替換為運(yùn)行在VM上 的、完全成熟的應(yīng)用程序的充分減少了功能的變體/替換。例如,對(duì)于支持使用bit-torrent協(xié)議的點(diǎn)對(duì)點(diǎn)(P2P)文件共享的完全成熟的圖 形P2P應(yīng)用程序,應(yīng)用程序存根可以是支持bit-torrent協(xié)議但不具有任意圖形組件的純 文本變體。根據(jù)所關(guān)心的應(yīng)用程序,這些“應(yīng)用程序存根”和它們相應(yīng)的驗(yàn)證證書(例如, 經(jīng)由來(lái)自TPM的信任鏈的多種IM網(wǎng)絡(luò)的密碼或驗(yàn)證密鑰)可以被安裝在運(yùn)行于睡眠服務(wù) 器上的相應(yīng)虛擬機(jī)上??纱嬖趧?chuàng)建這些“應(yīng)用程序存根”以獲得類似功能的其他可選方案, 諸如對(duì)不同應(yīng)用程序使用自動(dòng)協(xié)議推理引擎以便理解它們的協(xié)議行為。隨后這可以被用來(lái) 重復(fù)該協(xié)議,而不需要在VM上實(shí)施單獨(dú)的應(yīng)用程序存根。VM的多種實(shí)施可以用來(lái)跨過(guò)代理實(shí)現(xiàn)隔離、安全和保護(hù)保證??梢詫?shí)現(xiàn)這些或類 似能力的系統(tǒng)和方法可以包括集裝箱化的VM和/或多個(gè)化名的網(wǎng)絡(luò)接口。然而VM的使用 還可以允許只讀VM圖像的構(gòu)造(使用寫時(shí)復(fù)制或類似機(jī)制),只讀VM圖像可以進(jìn)一步減少 單獨(dú)VM的內(nèi)存占用量。相應(yīng)地,單獨(dú)VM還可以基于應(yīng)用程序的要求放大(內(nèi)存和CPU的 資源分配)。也就是說(shuō),各虛擬機(jī)可以從最小內(nèi)存占用量開(kāi)始,如果應(yīng)用程序存根需要更多 資源,則內(nèi)存占用量隨后被增加。當(dāng)主計(jì)算機(jī)HN進(jìn)入睡眠時(shí),其可以將喚醒事件轉(zhuǎn)移至如文中所述的睡眠服務(wù)器 320。如果這組喚醒事件/觸發(fā)是完全靜態(tài)的,比如,它們因同一組應(yīng)用程序而出現(xiàn),則隨后 默認(rèn)組的觸發(fā)可以被建立一次并稍后被重新使用。可以或者由用戶明確地使其進(jìn)入睡眠, 或者通過(guò)電源管理觸發(fā)(例如,基于活動(dòng)觸發(fā)的計(jì)時(shí)器)或通過(guò)其它機(jī)制使主計(jì)算機(jī)轉(zhuǎn)換 至低功率狀態(tài)(諸如S3)。這種向低功率模式的轉(zhuǎn)換或者可由主機(jī)親自明確地告知睡眠服務(wù)器320,或者可由睡眠服務(wù)器自動(dòng)檢測(cè)(例如,用ICMP Ping主機(jī)或?qū)Σ灰痦憫?yīng)的主機(jī) 的MAC地址進(jìn)行ARP查找。)—旦確定特定主機(jī)已經(jīng)轉(zhuǎn)換為低功率狀態(tài),就在睡眠服務(wù)器上啟用對(duì)應(yīng)于該特定 主機(jī)的VM;并且在該特定主機(jī)轉(zhuǎn)換為低功率狀態(tài)之前,將VM的網(wǎng)絡(luò)接口配置為與主計(jì)算機(jī) 網(wǎng)絡(luò)接口(諸如上面所描述的)完全相同。應(yīng)注意,為睡眠服務(wù)器創(chuàng)建的代理還可以用于 其它目的,諸如數(shù)據(jù)中心的增加的實(shí)用性和可靠性。此外,可以從一批現(xiàn)有VM中對(duì)特定主 機(jī)的VM授權(quán),其中這些VM的網(wǎng)絡(luò)參數(shù)被動(dòng)態(tài)地建立。隨后睡眠服務(wù)器320可以保持對(duì)主機(jī)的網(wǎng)絡(luò)連通性和可訪問(wèn)性的假象。事實(shí)上, 睡眠(主)計(jì)算機(jī)是不可訪問(wèn)的,也就是說(shuō)睡眠(主)計(jì)算機(jī)不能回答任何通常網(wǎng)絡(luò)流通 或進(jìn)行任何計(jì)算工作。然而,如上所述,對(duì)應(yīng)于特定主機(jī)的VM在睡眠服務(wù)器320上運(yùn)行,并 且可以以正在睡眠的主計(jì)算機(jī)的名義行動(dòng)。由于各VM與相應(yīng)主計(jì)算機(jī)具有至少一個(gè)相同 地址(例如,相同的IP地址,和可能相同的MAC地址),故現(xiàn)在其能夠答復(fù)ICMP Ping請(qǐng)求, 回答地址解析協(xié)議(ARP)查詢,保持DHCP租賃,等等,就好像該響應(yīng)來(lái)自預(yù)期的主計(jì)算機(jī)。 因此,以對(duì)未修改的底層網(wǎng)絡(luò)基礎(chǔ)結(jié)構(gòu)和網(wǎng)絡(luò)上的其它計(jì)算機(jī)透明的方式保持對(duì)主機(jī)的連 續(xù)可訪問(wèn)性的假象。已經(jīng)處理多個(gè)技術(shù)挑戰(zhàn)以實(shí)現(xiàn)從真機(jī)到它們的代理的透明切換。這些挑戰(zhàn)包括諸 如主計(jì)算機(jī)和睡眠服務(wù)器很可能位于不同網(wǎng)絡(luò)或子網(wǎng)上的問(wèn)題。代理可能缺少必要的能力 來(lái)響應(yīng)傳入的請(qǐng)求或計(jì)算負(fù)荷。雖然可以提供機(jī)制和必要接口(包括睡眠服務(wù)器上的虛擬 局域網(wǎng)的使用)來(lái)克服這些挑戰(zhàn),但增加的延遲可能被遠(yuǎn)程應(yīng)用程序發(fā)現(xiàn),在這種情況下, VM能力的動(dòng)態(tài)擴(kuò)展變得必要。如上所述,在主計(jì)算機(jī)變化為低功率模式之前,必要的喚醒事件和觸發(fā)可以被指 定并被傳遞至睡眠服務(wù)器??蛇x地,如果必要的喚醒觸發(fā)在以前被傳遞并且還沒(méi)有改變,則 睡眠服務(wù)器可以直接使用最初或默認(rèn)的觸發(fā)。由于這些喚醒觸發(fā)對(duì)于各主機(jī)都可以是唯一 的,故這些喚醒事件和觸發(fā)隨后緊接著被睡眠服務(wù)器用來(lái)為各主機(jī)配置單獨(dú)的虛擬機(jī)。在 圖3B是框圖示出包括主機(jī)Hl的虛擬機(jī)VMl的睡眠服務(wù)器320的實(shí)施例。各單獨(dú)VM可以執(zhí)行多套軟件。首先,它們可以執(zhí)行捕獲去往VM網(wǎng)絡(luò)接口的全部 包的包分析器(PA)模塊。PA模塊能夠處理全部應(yīng)用程序,這些應(yīng)用程序不需要保持開(kāi)放的 網(wǎng)絡(luò)連接并僅通過(guò)監(jiān)聽(tīng)指定端口上的網(wǎng)絡(luò)插口來(lái)享受服務(wù)。由于PA模塊可以翻譯多種協(xié) 議報(bào)頭(MAC、IP、TCP/UDP等),故其同樣還可以被用來(lái)基于任意字段的協(xié)議報(bào)頭(例如,來(lái) 自特定IP地址的RDP請(qǐng)求),或基于數(shù)據(jù)有效載荷的內(nèi)容來(lái)識(shí)別觸發(fā)。因此可以由PA模塊處理各種各樣的應(yīng)用程序和它們相應(yīng)的喚醒觸發(fā)事件。重要 的是應(yīng)注意,對(duì)于由PA模塊處理的應(yīng)用程序,應(yīng)用程序本身的任何部分都不需要在VM上執(zhí) 行,并且可以通過(guò)增加適當(dāng)?shù)膮f(xié)議(TCP/UDP)端口號(hào)來(lái)支持任何新的這類應(yīng)用程序。有狀 態(tài)且面向連接的使用協(xié)議(諸如TCP)的應(yīng)用程序需要多加小心地被PA模塊處理。在VM 上運(yùn)行的PA模塊檢測(cè)傳入的連接請(qǐng)求的原始包,并觸發(fā)主計(jì)算機(jī)的喚醒。由于這些包是面 向連接的會(huì)話建立的一部分,故它們需要被傳遞至主計(jì)算機(jī)并被插入其協(xié)議棧??蛇x地,可 以使用由這些面向連接并有狀態(tài)的協(xié)議支持的機(jī)制(諸如明確確認(rèn)和重發(fā))來(lái)處理丟失的 包。在這種情況下,PA檢測(cè)原始包以喚醒主計(jì)算機(jī),并且由完全激活的主計(jì)算機(jī)親自成功 接收隨后的被重新發(fā)送的包。
      另一個(gè)類別的應(yīng)用屬于“激活”類,其中它們保持開(kāi)放的網(wǎng)絡(luò)連接并且或者發(fā)送定 期的保持工作狀態(tài)(例如,VoIP、IM)或發(fā)送/接收定期的更新(例如,IM),或者甚至進(jìn)行 連續(xù)的數(shù)據(jù)轉(zhuǎn)移(例如,諸如bit-torrent的點(diǎn)對(duì)點(diǎn)協(xié)議)。不應(yīng)純粹地通過(guò)被動(dòng)的PA模 塊途徑來(lái)處理這類應(yīng)用程序,并且應(yīng)適當(dāng)?shù)夭东@它們的應(yīng)用程序語(yǔ)義。這些應(yīng)用程序可以 通過(guò)創(chuàng)建基本脫去應(yīng)用程序版本(即,特別是協(xié)議語(yǔ)義)并完全移除或減少用戶接口組件 的“應(yīng)用程序存根”來(lái)處理。驗(yàn)證證書(例如,IM網(wǎng)絡(luò)的用戶名/密碼)也被配置。這種途 徑考慮一個(gè)事實(shí),最現(xiàn)代的協(xié)議和應(yīng)用程序能夠應(yīng)對(duì)瞬時(shí)斷開(kāi)(通常由于無(wú)線物理接口) 并及時(shí)恢復(fù)網(wǎng)絡(luò)的重新連接。因此,當(dāng)主計(jì)算機(jī)轉(zhuǎn)換為低功率狀態(tài)(關(guān)閉運(yùn)行在主機(jī)上的 主應(yīng)用程序)時(shí),在相應(yīng)VM上運(yùn)行的應(yīng)用程序存根接管并恢復(fù)操作。一旦檢測(cè)到相關(guān)喚醒事件,便可使用適當(dāng)?shù)臋C(jī)制來(lái)遠(yuǎn)程地喚醒睡眠主計(jì)算機(jī)(例 如,處于ACPI標(biāo)準(zhǔn)中的S3或S4狀態(tài))。為了提供這種功能,可以使用來(lái)自被嵌入最現(xiàn)代網(wǎng) 絡(luò)接口(作為以太網(wǎng)或PCI控制器的一部分)的局域網(wǎng)喚醒(WOL)的通常實(shí)施的機(jī)制。由 于睡眠服務(wù)器存在于在其支持的多種主計(jì)算機(jī)的所有局部子網(wǎng),故其可以在主機(jī)的特定子 網(wǎng)上發(fā)送WOL ‘魔法包’(例如,特別形成的具有十六份待喚醒裝置的MAC地址的包),而不 需要任何附加網(wǎng)絡(luò)基礎(chǔ)結(jié)構(gòu)支持(例如,無(wú)路由器支持)。還可以存在允許僅被授權(quán)的睡眠 服務(wù)器來(lái)發(fā)送WOL魔法包(例如,通過(guò)禁用轉(zhuǎn)發(fā)WOL包的路由器并限制子網(wǎng)廣播,諸如通過(guò) 配置網(wǎng)絡(luò)交換機(jī)(例如,網(wǎng)絡(luò)交換機(jī)12 或路由器來(lái)限制局域網(wǎng)喚醒協(xié)議包的被授權(quán)發(fā)送 器的數(shù)量)的機(jī)制。例如,可以在某些實(shí)施中使用路由器級(jí)訪問(wèn)控制列表(ACL)來(lái)實(shí)現(xiàn)這 種限制。這可以提供安全以防涉及試圖通過(guò)虛假地喚醒處于低功率狀態(tài)的主機(jī)來(lái)妨礙能量 管理計(jì)劃的惡意方的攻擊。如上所述,各單獨(dú)的虛擬機(jī)可以執(zhí)行包分析器(PA)和多種應(yīng)用程序存根。當(dāng)檢測(cè) 到適當(dāng)?shù)膯拘咽录?例如,傳入的RDP請(qǐng)求)時(shí),睡眠服務(wù)器立即禁用特定虛擬機(jī)并將WOL 魔法包發(fā)送至適當(dāng)?shù)闹饔?jì)算機(jī)以使其離開(kāi)低功率狀態(tài)(例如,睡眠/S3)。所有后續(xù)的包由 主計(jì)算機(jī)親自處理。一旦主計(jì)算機(jī)從低功率狀態(tài)中恢復(fù),其準(zhǔn)備在使包括網(wǎng)絡(luò)接口的裝置初始化所消 耗的短暫延遲之后進(jìn)行通信。在現(xiàn)代網(wǎng)絡(luò)中,可能存在多個(gè)級(jí)聯(lián)的網(wǎng)絡(luò)交換機(jī),該多個(gè)級(jí)聯(lián) 的網(wǎng)絡(luò)交換機(jī)執(zhí)行協(xié)議(諸如生成樹(shù)協(xié)議(STP))以檢測(cè)并得知針對(duì)特定主機(jī)的包需要被 發(fā)送至哪一個(gè)交換機(jī)端口。由于當(dāng)主計(jì)算機(jī)睡眠時(shí),睡眠服務(wù)器上的虛擬機(jī)(可能位于不同的交換機(jī)端口 上)為針對(duì)主計(jì)算機(jī)的包服務(wù),故需要對(duì)交換機(jī)端口進(jìn)行更新以反映現(xiàn)正在被激活的主計(jì) 算機(jī)。為了更新交換機(jī),主計(jì)算機(jī)可以或者將少數(shù)包發(fā)送至網(wǎng)關(guān)節(jié)點(diǎn)或可選地發(fā)送公告其 IP到MAC地址映射的“免費(fèi)ARP”。雖然可能同時(shí)存在另一種機(jī)制,但這兩種機(jī)制工作良好 以更新網(wǎng)絡(luò)交換機(jī)。一旦更新傳播,針對(duì)主計(jì)算機(jī)的MAC地址的所有后續(xù)包隨后被轉(zhuǎn)發(fā)至 適當(dāng)?shù)慕粨Q機(jī)端口,并且緊接著轉(zhuǎn)發(fā)至適當(dāng)?shù)闹饔?jì)算機(jī)(而不是其代理)。此時(shí)此刻,主計(jì)算機(jī)(現(xiàn)醒著并完全激活)與觸發(fā)喚醒(例如,RDP請(qǐng)求)的遠(yuǎn)程 主機(jī)或應(yīng)用程序之間的通信可以向正常那樣進(jìn)行,就好像主計(jì)算機(jī)一直醒著。通過(guò)為睡眠服務(wù)器的功能架構(gòu)代理,可以向系統(tǒng)架構(gòu)師和數(shù)據(jù)中心操作員提供功 能完整的、高功耗機(jī)器與無(wú)功能的睡眠機(jī)器之間的一系列連續(xù)選擇。在一個(gè)極端,代理可能 代表‘負(fù)載平衡’功能,而在另一個(gè)極端,它們可能基于數(shù)據(jù)中心上的用戶要求而代表資源供應(yīng)和管理功能。必須小心選擇操作點(diǎn)。只是將工作從重負(fù)載機(jī)器轉(zhuǎn)移至其它處于工作狀 態(tài)的機(jī)器除了涉及這一過(guò)程的日常開(kāi)支而導(dǎo)致的工作和能量效率的損失之外僅僅浪費(fèi)了 網(wǎng)絡(luò)帶寬并可能產(chǎn)生計(jì)算/通信瓶頸。因此,目的是使最初不進(jìn)行大量工作的機(jī)器(例如,主PC)進(jìn)入低功率模式(例 如,睡眠)。這些大部分空閑的機(jī)器為在不對(duì)性能或?qū)嵱眯缘脑斐擅黠@損失的情況下的能量 節(jié)約帶來(lái)了機(jī)會(huì)?!蟛糠帧臻e(空閑或輕載)的機(jī)器的功能可由聯(lián)網(wǎng)的‘睡眠服務(wù)器’ 機(jī)器上的相當(dāng)小的虛擬機(jī)支持。因此,可以在單個(gè)睡眠服務(wù)器上實(shí)例化幾百個(gè)虛擬機(jī)。輕 量虛擬機(jī)的功能由根據(jù)要求喚醒主機(jī)的能力來(lái)補(bǔ)充。因此,當(dāng)主機(jī)再次醒來(lái)時(shí)用戶可以得 到的實(shí)際計(jì)算機(jī)功率/資源沒(méi)有打折。更重要地,機(jī)器的具體功能的這種封裝和隔離提供構(gòu)建系統(tǒng)架構(gòu)(而不需要改變 硬件)的能力,相比于具有大的‘受攻擊面’的完全配置的系統(tǒng),這種系統(tǒng)架構(gòu)提供增加的 安全性、保護(hù)、可靠性和實(shí)用性的保證。比如,可以在本VM架構(gòu)內(nèi)進(jìn)行包處理(在L2/L3處 的包過(guò)濾、匹配)以在整個(gè)應(yīng)用程序中提供隔離保證和為了性能需要而使虛擬機(jī)的能力與 應(yīng)用程序存根相匹配的能力。圖4示出低功率模式的計(jì)算機(jī)管理程序400的實(shí)施例的流程圖。在第一計(jì)算機(jī)處 (例如,服務(wù)器系統(tǒng)100)接收410第二計(jì)算機(jī)(例如,裝置135)的相關(guān)信息,其中第二計(jì)算 機(jī)轉(zhuǎn)換為低功率操作模式。這可以包括接收對(duì)第二計(jì)算機(jī)的狀態(tài)進(jìn)行監(jiān)視而得到的信息, 或由第二計(jì)算機(jī)在其轉(zhuǎn)換為低功率狀態(tài)(例如,睡眠或休眠,等等)之前發(fā)送至第一計(jì)算機(jī) 的信息。例如,最終主計(jì)算機(jī)可以安裝有在最終主計(jì)算機(jī)進(jìn)入低功率操作模式之前與睡眠 管理計(jì)算機(jī)通信的軟件。主計(jì)算機(jī)使用該通信來(lái)要求睡眠管理計(jì)算機(jī)以其名義行動(dòng)并且還 可能地指定諸如上面所詳細(xì)描述的一個(gè)或多個(gè)條件,睡眠管理計(jì)算機(jī)將根據(jù)這些條件喚醒 主計(jì)算機(jī)。來(lái)自主計(jì)算機(jī)的通信可以包括主計(jì)算機(jī)的MAC地址、IP地址和主機(jī)名、以及其 所使用的協(xié)議(動(dòng)態(tài)DHCP或靜態(tài)IP),還包括基于觸發(fā)喚醒的任何協(xié)議報(bào)頭字段的任何正 則表達(dá)式。在計(jì)算機(jī)網(wǎng)絡(luò)上發(fā)送420至少一條消息以使計(jì)算機(jī)網(wǎng)絡(luò)中的至少一個(gè)網(wǎng)絡(luò)交換 機(jī)改變第二計(jì)算機(jī)的至少一個(gè)被分配端口。網(wǎng)絡(luò)交換機(jī)的端口的這種重新分配允許目的在 于第二計(jì)算機(jī)的未來(lái)的包反而被轉(zhuǎn)發(fā)至第一計(jì)算機(jī)。例如,第一計(jì)算機(jī)可以發(fā)送如上所述 的免費(fèi)ARP包以連通旨在發(fā)送給第二計(jì)算機(jī)的包的新終點(diǎn),并且可以在第一計(jì)算機(jī)處將第 二計(jì)算機(jī)的MAC地址分配給相應(yīng)虛擬機(jī)??梢愿鶕?jù)需要使該虛擬機(jī)實(shí)例化,或在某些實(shí)施 中,在計(jì)算機(jī)轉(zhuǎn)換為低功率模式之前,在初始化階段期間使該虛擬機(jī)充分實(shí)例化。此外,可 以使一批VM實(shí)例化并保持等待,等待可以減少為已經(jīng)轉(zhuǎn)換為低功率模式的特定主機(jī)(Hl) 啟用特定VM(VMl)的延遲。在第一計(jì)算機(jī)處接收430被指定給第二計(jì)算機(jī)并隨后通過(guò)至少一個(gè)網(wǎng)絡(luò)交換機(jī) 的網(wǎng)絡(luò)通信。仍然在不使第二計(jì)算機(jī)從低功率操作模式轉(zhuǎn)換出來(lái)的情況下,以第二計(jì)算機(jī) 的名義處理440這些網(wǎng)絡(luò)通信的至少一些。該處理可以包括僅涉及基本可訪問(wèn)性的處理包 (例如,響應(yīng)ping消息,回答ARP請(qǐng)求,保持DHCP租賃,等等)。此外,該處理可以包括應(yīng)用 級(jí)程序的處理包,諸如上面所描述的。在對(duì)應(yīng)于第二計(jì)算機(jī)的虛擬機(jī)內(nèi)以第二計(jì)算機(jī)的名義執(zhí)行處理440。這種虛擬機(jī)可以是輕量虛擬機(jī)從最小初始占用量開(kāi)始(例如,以20MB RAM運(yùn)行的小操作系統(tǒng),其中虛 擬機(jī)可以僅從32或64MB的RAM開(kāi)始),隨后可以基于需要增大或縮小占用量。因此,如果 對(duì)以第二計(jì)算機(jī)的名義執(zhí)行的處理的要求470存在改變,則隨后可以基于該處理的要求縮 放480資源分配。資源分配可以對(duì)應(yīng)于內(nèi)存使用、處理周期、網(wǎng)絡(luò)帶寬、存儲(chǔ)空間或這些的組合。縮 放資源分配可以包括基于對(duì)以第二計(jì)算機(jī)的名義執(zhí)行的處理的要求的改變?cè)黾踊驕p少對(duì) 虛擬機(jī)有用的資源。例如,文件下載處理可以由遠(yuǎn)程系統(tǒng)延遲,并且因此虛擬機(jī)可能不需要 大量的資源;隨后,一旦遠(yuǎn)程系統(tǒng)開(kāi)始傳輸文件,便可以給予虛擬機(jī)更大的資源以供文件傳 輸。如另一個(gè)實(shí)施例,可以基于由虛擬機(jī)所運(yùn)行的應(yīng)用程序存根的數(shù)量和/或類型為特定 虛擬機(jī)分配資源。當(dāng)網(wǎng)絡(luò)通信中的至少一個(gè)滿足預(yù)定條件450(例如,由睡眠服務(wù)器系統(tǒng)確定的條 件或由第二計(jì)算機(jī)指定的條件)時(shí),經(jīng)由計(jì)算機(jī)網(wǎng)絡(luò)開(kāi)始460使第二計(jì)算機(jī)從低功率操作 模式轉(zhuǎn)換出來(lái)。這可以包括使用包括第二計(jì)算機(jī)的MAC地址的局域網(wǎng)喚醒協(xié)議包??蛇x地, 另一種途徑可以被用來(lái)喚醒第二計(jì)算機(jī),諸如intel AMT或其它喚醒技術(shù)。圖5是示出低功率模式計(jì)算機(jī)管理程序500的另一個(gè)實(shí)施例的流程圖。接收510 計(jì)算機(jī)網(wǎng)絡(luò)上的多個(gè)計(jì)算機(jī)的加密密鑰。可以在,在任何特定計(jì)算機(jī)已經(jīng)指示向低功率操 作模式的轉(zhuǎn)換之前(例如,在初始化階段期間)提前接收這些密鑰,或可以在計(jì)算機(jī)轉(zhuǎn)換為 低功率操作模式之時(shí)接收這些密鑰。這些密鑰可以由企業(yè)管理計(jì)算機(jī)網(wǎng)絡(luò)指定并可以有助 于保持安全。企業(yè)常常使用某些程度的安全策略,從而對(duì)PC之間的通信進(jìn)行加密(例如,使用 IPSec)。由于所有PC都是同一企業(yè)領(lǐng)域的一部分,故經(jīng)常由中央控制器對(duì)所有的加密密鑰 進(jìn)行分配。因此,在某些實(shí)施中,單獨(dú)的VM(對(duì)于各單獨(dú)的主PC)還可以復(fù)制這些密鑰從而 VM可以以主機(jī)的名義進(jìn)行行動(dòng)。因此,通過(guò)在VM中采用等同于由主PC完成的安全策略,可 以為計(jì)算機(jī)保持網(wǎng)絡(luò)的存在。在第一計(jì)算機(jī)處記錄520對(duì)應(yīng)于轉(zhuǎn)換為低功率操作模式的計(jì)算機(jī)的信息,其中被 記錄信息的至少一部分限定一個(gè)或多個(gè)喚醒條件。各VM可以保持對(duì)指定給相應(yīng)主計(jì)算機(jī) 的信息(包括喚醒條件)的跟蹤。根據(jù)需要記錄這種信息,諸如當(dāng)主計(jì)算機(jī)由于其轉(zhuǎn)換為 低功率操作模式而在對(duì)睡眠服務(wù)器的請(qǐng)求中包括新的喚醒條件時(shí)。以多個(gè)計(jì)算機(jī)的名義接收530網(wǎng)絡(luò)通信,并且在使用相應(yīng)組加密密鑰(例如,使用 IPSec)的各自的虛擬機(jī)內(nèi)以該多個(gè)計(jì)算機(jī)的名義處理540這些網(wǎng)絡(luò)通信的至少一些。此 外,當(dāng)網(wǎng)絡(luò)通信的至少一個(gè)滿足給定的多個(gè)睡眠計(jì)算機(jī)之一的預(yù)定條件550時(shí),經(jīng)由計(jì)算 機(jī)網(wǎng)絡(luò)開(kāi)始560使該計(jì)算機(jī)從低功率操作模式轉(zhuǎn)換出來(lái)。這可以包括使用包括第二計(jì)算機(jī) 的MAC地址的局域網(wǎng)喚醒協(xié)議包,或任何其它喚醒技術(shù)。本文僅描述了少數(shù)實(shí)施。然而,應(yīng)理解,可以對(duì)其進(jìn)行變化和增強(qiáng)。例如,某些實(shí) 施可以使用多種形式的虛擬機(jī)。某些實(shí)施可以完全避免使用虛擬機(jī),其中獨(dú)立程序/進(jìn)程 被提供以供各主機(jī)代表,并且這些程序/進(jìn)程中的每一個(gè)均負(fù)責(zé)構(gòu)建作為響應(yīng)的適當(dāng)?shù)陌?并檢測(cè)喚醒條件。作為使用VM的替代,這種實(shí)施可以包括在與主PC具有相同地址(例如, 相同的IP地址和可能相同的MAC地址)的睡眠服務(wù)器上具有化名的聯(lián)網(wǎng)的接口,從而針對(duì) 該特定主機(jī)的所有通信被發(fā)送至睡眠服務(wù)器(注意,使用化名的實(shí)施可以具有基于VM的實(shí)施的功能的子集)。上述流程,以及本說(shuō)明書中所描述的所有功能性操作,可以在電子電路中,或在計(jì) 算機(jī)硬件、固件、軟件中,或在它們的組合中實(shí)施,諸如本說(shuō)明書中所公開(kāi)的結(jié)構(gòu)化裝置及 其結(jié)構(gòu)化等同物,包括編碼程序(或計(jì)算機(jī)程序指令的模塊的多個(gè)程序)的計(jì)算機(jī)存儲(chǔ)媒 介(或多個(gè)計(jì)算機(jī)存儲(chǔ)媒介),該計(jì)算機(jī)存儲(chǔ)媒介可操作以使得包括處理器的可編程計(jì)算 機(jī)執(zhí)行所述操作。計(jì)算機(jī)存儲(chǔ)媒介可以是,或被包含于,計(jì)算機(jī)可讀存儲(chǔ)裝置、計(jì)算機(jī)可讀 存儲(chǔ)基板、隨機(jī)或串行存取存儲(chǔ)器陣列或裝置、它們中的一種或多種的組合。此外,雖然計(jì) 算機(jī)存儲(chǔ)媒介不是被傳播信號(hào),但計(jì)算機(jī)存儲(chǔ)媒介可以是被編碼在人工生成的被傳播信號(hào) 中的計(jì)算機(jī)程序指令的源或終點(diǎn)。計(jì)算機(jī)存儲(chǔ)媒介還可以是,或被包含于,一個(gè)或多個(gè)單獨(dú) 物理組件或媒介(例如,硬盤驅(qū)動(dòng)器的多個(gè)高密度磁盤、硬盤,或其它存儲(chǔ)裝置)。術(shù)語(yǔ)“數(shù)據(jù)處理設(shè)備”包含所有種類的處理數(shù)據(jù)的設(shè)備、裝置、以及機(jī)器,包括例如 可編程處理器、計(jì)算機(jī)、片上系統(tǒng)、或多個(gè)前述之一或前述的組合。設(shè)備可以包括專用邏輯 電路,例如,F(xiàn)PGA(現(xiàn)場(chǎng)可編程門陣列)或ASIC(特定用途集成電路)。除了硬件,設(shè)備還可 以包括為上述計(jì)算機(jī)程序創(chuàng)建執(zhí)行環(huán)境的代碼,例如,構(gòu)成處理器固件、協(xié)議棧、數(shù)據(jù)庫(kù)管 理系統(tǒng)、操作系統(tǒng)、運(yùn)行時(shí)間環(huán)境、虛擬機(jī)或它們中的一種或多種的組合的代碼。設(shè)備和執(zhí) 行環(huán)境可以識(shí)別多種不同計(jì)算模型基礎(chǔ)結(jié)構(gòu),諸如網(wǎng)絡(luò)服務(wù)、安全協(xié)議、分布式計(jì)算和網(wǎng)格 計(jì)算基礎(chǔ)結(jié)構(gòu)。適于執(zhí)行計(jì)算機(jī)程序的處理器包括,例如,通用和專用微處理器、以及任何種類的 數(shù)字計(jì)算機(jī)的任何一個(gè)或多個(gè)處理器。通常,處理器將接收來(lái)自只讀存儲(chǔ)器或隨機(jī)存取存 儲(chǔ)器或同時(shí)來(lái)自二者的指令和數(shù)據(jù)。計(jì)算機(jī)的基本元件是根據(jù)指令執(zhí)行行動(dòng)的處理器和存 儲(chǔ)指令和數(shù)據(jù)的一個(gè)或多個(gè)存儲(chǔ)裝置。通常,計(jì)算機(jī)還將包括,或被可操作地連接以從存儲(chǔ) 數(shù)據(jù)的一個(gè)或多個(gè)大容量存儲(chǔ)裝置(例如磁盤、磁光盤、或光盤)接收數(shù)據(jù),或向其發(fā)送數(shù) 據(jù),或同時(shí)從其接收或向其發(fā)送數(shù)據(jù)。然而,計(jì)算機(jī)不必具有這種裝置。此外,計(jì)算機(jī)可以 被嵌入另一個(gè)裝置,例如,移動(dòng)電話、個(gè)人數(shù)字助手(PDA)、移動(dòng)音頻或視頻播放器、游戲主 機(jī)、網(wǎng)絡(luò)交換機(jī)、或網(wǎng)絡(luò)路由器,等等。適于存儲(chǔ)計(jì)算機(jī)指令和數(shù)據(jù)的裝置包括所有形式的 非易失性存儲(chǔ)器、媒介和存儲(chǔ)裝置,包括例如半導(dǎo)體存儲(chǔ)裝置,例如,EPR0M、EEPR0M、和閃速 存儲(chǔ)裝置;磁盤,例如,內(nèi)部硬盤或可移動(dòng)硬盤;磁光盤;以及⑶ROM和DVD-ROM盤。處理 器和存儲(chǔ)器可以由專用邏輯電路補(bǔ)充,或合并到專用邏輯電路中。雖然本說(shuō)明書包含許多實(shí)施細(xì)節(jié),但這些不應(yīng)被解釋為對(duì)發(fā)明范圍的限制或?qū)κ?么可能會(huì)被要求的限制,而是作為指定本發(fā)明的特定實(shí)施方式的特征的描述。某些在單獨(dú) 實(shí)施方式的上下文中所描述的本說(shuō)明書中的特征還可以結(jié)合單個(gè)實(shí)施方式來(lái)實(shí)施。相反, 單個(gè)實(shí)施方式的上下文中所描述的多種特征還可以在多個(gè)實(shí)施方式中單獨(dú)實(shí)施或在任何 合適的再組合中實(shí)施。此外,雖然特征可以上面被描述為某些組合中的行動(dòng),但來(lái)自要求的 組合的一個(gè)或多個(gè)特征在某些情況下可以從該組合分離,并且所要求的組合可以針對(duì)再組 合或再組合的變體。類似地,雖然在附圖中以特定順序描述了操作。但這不應(yīng)被理解為需要以所示的 特定順序或以連續(xù)的順序執(zhí)行這種操作或需要執(zhí)行所有示出的操作來(lái)實(shí)現(xiàn)期望的結(jié)果。應(yīng) 理解,所呈現(xiàn)的操作順序在本說(shuō)明書中僅為了清楚起見(jiàn)??梢圆恍枰囟樞蛞怨┻@些操 作來(lái)實(shí)現(xiàn)期望的結(jié)果,并且可以同時(shí)出現(xiàn)多種操作。
      其它實(shí)施方式可在所附權(quán)利要求的范圍內(nèi)。
      權(quán)利要求
      1.一種方法,包括經(jīng)由計(jì)算機(jī)網(wǎng)絡(luò)在第一計(jì)算機(jī)處接收與轉(zhuǎn)換為低功率操作模式的第二計(jì)算機(jī)相關(guān)的 fn息;在所述計(jì)算機(jī)網(wǎng)絡(luò)上發(fā)送至少一條消息以使所述計(jì)算機(jī)網(wǎng)絡(luò)中的至少一個(gè)網(wǎng)絡(luò)交換 機(jī)改變所述第二計(jì)算機(jī)的至少一個(gè)被分配端口;在所述第一計(jì)算機(jī)處接收被指定給所述第二計(jì)算機(jī)的網(wǎng)絡(luò)通信,所述網(wǎng)絡(luò)通信通過(guò)所 述至少一個(gè)網(wǎng)絡(luò)交換機(jī);在所述第一計(jì)算機(jī)處以所述第二計(jì)算機(jī)的名義處理所述網(wǎng)絡(luò)通信的至少一部分,而不 使所述第二計(jì)算機(jī)從所述低功率操作模式轉(zhuǎn)換出來(lái),其中,所述處理包括在對(duì)應(yīng)于所述第 二計(jì)算機(jī)的虛擬機(jī)內(nèi)以所述第二計(jì)算機(jī)的名義處理所述網(wǎng)絡(luò)通信的至少一部分;以及當(dāng)所述網(wǎng)絡(luò)通信中的至少一個(gè)滿足預(yù)定條件時(shí),經(jīng)由所述計(jì)算機(jī)網(wǎng)絡(luò),開(kāi)始使所述第 二計(jì)算機(jī)從所述低功率操作模式轉(zhuǎn)換出來(lái)。
      2.根據(jù)權(quán)利要求1所述的方法,包括當(dāng)所述第二計(jì)算機(jī)處于所述低功率操作模式時(shí)將 所述第二計(jì)算機(jī)的地址分配給所述虛擬機(jī)。
      3.根據(jù)權(quán)利要求1或2所述的方法,其中所述第一計(jì)算機(jī)運(yùn)行管理所述虛擬機(jī)的管理 程序,所述虛擬機(jī)處于對(duì)應(yīng)于待運(yùn)行于所述低功率操作模式的多個(gè)計(jì)算機(jī)的多個(gè)輕量虛擬 機(jī)中。
      4.根據(jù)權(quán)利要求3所述的方法,其中所述管理程序由所述計(jì)算機(jī)網(wǎng)絡(luò)上的包括所述第 一計(jì)算機(jī)的多個(gè)對(duì)等計(jì)算機(jī)運(yùn)行,并且對(duì)應(yīng)于所述待運(yùn)行于所述低功率操作模式的多個(gè)計(jì) 算機(jī)的所述虛擬機(jī)的管理分布在所述多個(gè)對(duì)等計(jì)算機(jī)之間。
      5.根據(jù)權(quán)利要求1至4中任一項(xiàng)所述的方法,包括基于與處于所述低功率操作模式的所述第二計(jì)算機(jī)有關(guān)的要求,對(duì)分配給所述虛擬機(jī) 的資源進(jìn)行放大。
      6.根據(jù)權(quán)利要求1至5中任一項(xiàng)所述的方法,其中所述計(jì)算機(jī)網(wǎng)絡(luò)包括虛擬局域網(wǎng) (VLAN)。
      7.根據(jù)權(quán)利要求6所述的方法,其中使用包括所述第二計(jì)算機(jī)的介質(zhì)訪問(wèn)控制(MAC) 地址的局域網(wǎng)喚醒協(xié)議包來(lái)執(zhí)行所述開(kāi)始。
      8.根據(jù)權(quán)利要求1至7中任一項(xiàng)所述的方法,包括在所述第一計(jì)算機(jī)處記錄對(duì)應(yīng)于轉(zhuǎn)換為所述低功率操作模式的所述第二計(jì)算機(jī)的信 息,其中被記錄的信息的至少一部分限定所述預(yù)定條件。
      9.根據(jù)權(quán)利要求1至3中任一項(xiàng)所述的方法,其中所述第一計(jì)算機(jī)包括服務(wù)器計(jì)算機(jī) 系統(tǒng)、網(wǎng)絡(luò)交換機(jī)、網(wǎng)絡(luò)路由器、或主計(jì)算機(jī)。
      10.根據(jù)權(quán)利要求1至3中任一項(xiàng)所述的方法,包括接收用于所述計(jì)算機(jī)網(wǎng)絡(luò)上包括所述第二計(jì)算機(jī)在內(nèi)的多個(gè)計(jì)算機(jī)的加密密鑰;以及使用相應(yīng)的加密密鑰的集合在各虛擬機(jī)內(nèi)以所述多個(gè)計(jì)算機(jī)的名義處理網(wǎng)絡(luò)通信。
      11.一種系統(tǒng),包括計(jì)算機(jī)網(wǎng)絡(luò);與所述計(jì)算機(jī)網(wǎng)絡(luò)耦接的多個(gè)計(jì)算機(jī);位于所述計(jì)算機(jī)網(wǎng)絡(luò)中的網(wǎng)絡(luò)交換機(jī);以及與所述計(jì)算機(jī)網(wǎng)絡(luò)耦接并被配置為執(zhí)行以下操作的睡眠管理器計(jì)算機(jī)系統(tǒng)經(jīng)由所述計(jì)算機(jī)網(wǎng)絡(luò)接收與所述多個(gè)計(jì)算機(jī)中的一個(gè)或多個(gè)轉(zhuǎn)換為低功率操作模式相關(guān)的信息;在所述計(jì)算機(jī)網(wǎng)絡(luò)上發(fā)送至少一條消息以使所述計(jì)算機(jī)網(wǎng)絡(luò)中的所述網(wǎng)絡(luò)交換機(jī)改 變用于所述多個(gè)計(jì)算機(jī)中的所述一個(gè)或多個(gè)的至少一個(gè)被分配端口;接收被指定給所述多個(gè)計(jì)算機(jī)中的所述一個(gè)或多個(gè)的網(wǎng)絡(luò)通信,所述網(wǎng)絡(luò)通信通過(guò)所 述網(wǎng)絡(luò)交換機(jī);在對(duì)應(yīng)于所述多個(gè)計(jì)算機(jī)中的所述一個(gè)或多個(gè)的一個(gè)或多個(gè)虛擬機(jī)內(nèi)以所述多個(gè)計(jì) 算機(jī)中的所述一個(gè)或多個(gè)的名義處理所述網(wǎng)絡(luò)通信的至少一部分;以及當(dāng)所述網(wǎng)絡(luò)通信中的至少一個(gè)滿足預(yù)定條件時(shí),經(jīng)由所述計(jì)算機(jī)網(wǎng)絡(luò),開(kāi)始使所述多 個(gè)計(jì)算機(jī)中的所述一個(gè)或多個(gè)從所述低功率操作模式轉(zhuǎn)換出來(lái)。
      12.根據(jù)權(quán)利要求11所述的系統(tǒng),其中所述睡眠管理器計(jì)算機(jī)系統(tǒng)運(yùn)行管理所述一個(gè) 或多個(gè)虛擬機(jī)的管理程序,其中所述一個(gè)或多個(gè)虛擬機(jī)中的每一個(gè)被分配有所述多個(gè)計(jì)算 機(jī)中的相應(yīng)計(jì)算機(jī)的硬件地址和網(wǎng)絡(luò)地址的其中一個(gè)或二者。
      13.根據(jù)權(quán)利要求11或12任一項(xiàng)所述的系統(tǒng),其中所述睡眠管理器計(jì)算機(jī)系統(tǒng)包括位 于所述計(jì)算機(jī)網(wǎng)絡(luò)上的多個(gè)對(duì)等計(jì)算機(jī),所述多個(gè)對(duì)等計(jì)算機(jī)在分布式進(jìn)程中管理對(duì)應(yīng)于 所述多個(gè)計(jì)算機(jī)的虛擬機(jī)。
      14.根據(jù)權(quán)利要求11至13中任一項(xiàng)所述的系統(tǒng),其中所述睡眠管理器計(jì)算機(jī)系統(tǒng)被配 置為執(zhí)行操作,所述操作包括基于與所述多個(gè)計(jì)算機(jī)中的一個(gè)或多個(gè)相關(guān)的要求對(duì)所述一 個(gè)或多個(gè)虛擬機(jī)的資源分配進(jìn)行放大。
      15.根據(jù)權(quán)利要求11至14中任一項(xiàng)所述的系統(tǒng),其中所述計(jì)算機(jī)網(wǎng)絡(luò)包括覆蓋多個(gè)單 獨(dú)的局域網(wǎng)的虛擬局域網(wǎng)(VLAN)。
      16.根據(jù)權(quán)利要求15所述的系統(tǒng),其中所述睡眠管理器計(jì)算機(jī)系統(tǒng)被配置為發(fā)送包括 重復(fù)的介質(zhì)訪問(wèn)控制(MAC)地址的局域網(wǎng)喚醒協(xié)議包,并且所述多個(gè)計(jì)算機(jī)被配置為接收 包括重復(fù)的介質(zhì)訪問(wèn)控制(MAC)地址的局域網(wǎng)喚醒協(xié)議包。
      17.根據(jù)權(quán)利要求11至16中任一項(xiàng)所述的系統(tǒng),其中所述睡眠管理器計(jì)算機(jī)系統(tǒng)包括 服務(wù)器計(jì)算機(jī)系統(tǒng)、網(wǎng)絡(luò)交換機(jī)、網(wǎng)絡(luò)路由器、或所述多個(gè)計(jì)算機(jī)的適合的子集。
      18.根據(jù)權(quán)利要求11至17中任一項(xiàng)所述的系統(tǒng),包括網(wǎng)絡(luò)附加存儲(chǔ)器,所述網(wǎng)絡(luò)附加存儲(chǔ)器與所述計(jì)算機(jī)網(wǎng)絡(luò)耦接并且被共享為所述多個(gè) 計(jì)算機(jī)和所述睡眠管理器計(jì)算機(jī)系統(tǒng)的公共資源。
      19.一種編碼程序的存儲(chǔ)媒介,所述程序可操作以使計(jì)算機(jī)執(zhí)行以下操作在主計(jì)算機(jī)處,向睡眠服務(wù)器指示睡眠模式并在進(jìn)入所述睡眠模式之前向所述睡眠服 務(wù)器發(fā)送預(yù)定事件和應(yīng)用程序觸發(fā);在所述睡眠服務(wù)器處,通過(guò)接收事件和應(yīng)用程序觸發(fā)來(lái)響應(yīng)指示睡眠模式的所述主計(jì) 算機(jī);在所述睡眠服務(wù)器處,對(duì)于指示所述睡眠模式的所述主計(jì)算機(jī),將所述主計(jì)算機(jī)的新 虛擬機(jī)(VM)實(shí)例化并將所述VM的網(wǎng)絡(luò)接口地址設(shè)置為與進(jìn)入睡眠的所述主計(jì)算機(jī)相同;在所述睡眠服務(wù)器處,使用所述VM來(lái)回答預(yù)定請(qǐng)求,就好像所述主計(jì)算機(jī)仍然處于清 醒,并且通過(guò)預(yù)定的喚醒事件喚醒所述主計(jì)算機(jī)。
      20.根據(jù)權(quán)利要求19的存儲(chǔ)媒介,其中所述實(shí)例化包括為所述新的VM分配內(nèi)存和處理 資源,所述VM被預(yù)先注冊(cè)在所述睡眠服務(wù)器中用于所述主計(jì)算機(jī)。
      全文摘要
      本申請(qǐng)包括允許計(jì)算機(jī)在處于低功率模式時(shí)保持可訪問(wèn)性的系統(tǒng)和技術(shù)。在某些實(shí)施中,該技術(shù)包括經(jīng)由計(jì)算機(jī)網(wǎng)絡(luò)在第一計(jì)算機(jī)處接收與轉(zhuǎn)換為低功率操作模式的第二計(jì)算機(jī)相關(guān)的信息;在第一計(jì)算機(jī)處接收被指定給第二計(jì)算機(jī)的網(wǎng)絡(luò)通信;在不使第二計(jì)算機(jī)從低功率操作模式轉(zhuǎn)換出來(lái)的情況下,在第一計(jì)算機(jī)處以第二計(jì)算機(jī)的名義處理網(wǎng)絡(luò)通信的至少一部分,其中該處理包括在對(duì)應(yīng)于第二計(jì)算機(jī)的虛擬機(jī)內(nèi)以第二計(jì)算機(jī)的名義處理網(wǎng)絡(luò)通信的至少一部分;以及當(dāng)網(wǎng)絡(luò)通信中的至少一個(gè)滿足預(yù)定條件時(shí),經(jīng)由計(jì)算機(jī)網(wǎng)絡(luò),開(kāi)始使第二計(jì)算機(jī)從低功率操作模式轉(zhuǎn)換出來(lái)。
      文檔編號(hào)G06F1/32GK102150103SQ200980136018
      公開(kāi)日2011年8月10日 申請(qǐng)日期2009年7月14日 優(yōu)先權(quán)日2008年7月14日
      發(fā)明者尤維瑞吉·阿加瓦爾, 拉杰什·K·古普塔 申請(qǐng)人:加利福尼亞大學(xué)董事會(huì)
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1