摘要:網絡設備的睡眠機制是實現網絡節(jié)能的一種方法。本文對網絡設備睡眠機制進行了詳細的設計,先分析了傳統(tǒng)睡眠機制存在的缺陷,然后提出動態(tài)閾值調整睡眠時間的方法。
關鍵詞:網絡設備 睡眠機制 運行狀態(tài)
0 引言
網絡設備的睡眠機制需要實際硬件的支持,Microsoft,Intel,Toshiba在1997年共同制定了ACPI規(guī)范,ACPI定義了設備電源狀態(tài)、系統(tǒng)的全局狀態(tài)和處理器電源狀態(tài),ACPI的主要目標是使系統(tǒng)動態(tài)地管理電源。根據ACPI規(guī)范,本文將網絡設備按照網絡設備狀態(tài)劃分。
1 網絡設備狀態(tài)劃分
為了清楚地闡述網絡設備的睡眠機制,本文將網絡設備的狀態(tài)劃分:運行狀態(tài)、睡眠狀態(tài)、空閑狀態(tài)、關閉狀態(tài)。
2 動態(tài)調整睡眠時間機制
利用網絡設備睡眠可以實現網絡節(jié)能。對于一個設備,如果其狀態(tài)轉換是即時的,即設備性能和功耗的損失為0,那么網絡設備睡眠機制的設計將會非常容易,設備狀態(tài)轉換策略可以非常貪婪:只要設備一空閑,就將其轉換到最深睡眠狀態(tài);如果有請求到來,設備立即轉換到運行狀態(tài)。然而,這種假設只存在于理想設備中,現實情況是大多數設備在狀態(tài)轉換時,性能和功耗損失都不可忽略。設備從運行狀態(tài)進入睡眠狀態(tài)需要一定的時間完成狀態(tài)轉換,從睡眠狀態(tài)返回到運行狀態(tài)需要的恢復時間更長,因為在該過程中設備需要依次完成穩(wěn)定電源和始終、重新初始化設備、恢復上下文等工作。
因此,當網絡設備正處于空閑狀態(tài)時,系統(tǒng)將決定該設備是選擇繼續(xù)保持空閑狀態(tài)還是進入低功耗的睡眠狀態(tài)。如果選擇進入睡眠狀態(tài),系統(tǒng)需要先保存當前的數據,然后再讓設備進入睡眠狀態(tài),直到檢測到設備喚醒信號為止。系統(tǒng)檢測到設備喚醒信號后,系統(tǒng)需要先恢復設備數據,然后將設備轉換回到運行狀態(tài)。網絡設備睡眠機制的關鍵問題就在于在什么時候、根據什么條件發(fā)起狀態(tài)轉換的命令。
由于設備從運行狀態(tài)轉入低功耗睡眠狀態(tài)需要付出額外的代價,一是增加了狀態(tài)轉換時所需的能耗Eex,二是增加了系統(tǒng)的延遲tde。因此設備只有在空閑時間足夠長的情況下,轉換至睡眠狀態(tài)才會節(jié)省設備的能量損耗。設這個足夠長的空閑時間最小值為Tthr,設備運行狀態(tài)的功耗為Pa,睡眠狀態(tài)的功耗為Ps,空閑時間為Ti,設備喚醒所需的時間Twup和進入睡眠狀態(tài)所需的時間tde之和為T0,則設備狀態(tài)轉換時必須滿足的條件:
設備在空閑狀態(tài)消耗的能量小于該時間段內設備為工作狀態(tài)消耗的能量,即如下公式所示:Ps×(Ti-T0)+E0
然而在Ti時間段內,設備仍然處于高功耗運行狀態(tài),因而造成部分能量損耗。為了改善這種能量浪費,本文使用另一種策略,空閑時間預測策略。該策略的核心思想是對當前的空閑時間T長度進行預測,當預測的空閑時間長度Ti>T,那么設備一空閑就進入睡眠狀態(tài)??臻e時間T長度與很多因素有關,如網絡環(huán)境、用戶習慣和網絡設備的工作頻率等,并且設備空閑時間T的取值并沒有規(guī)律性可循,不能用傳統(tǒng)的概率方法來預測??紤]到在大多數情況下,在同一網絡環(huán)境中用戶的習慣是相似的,因此在同一網絡中的設備空閑時間長度一般在某個固定的范圍內。從這個角度來分析,同一網絡中的設備相鄰的空閑時間段一般具有一定的延續(xù)性。然而空閑時間也有突發(fā)性情況,比如說使用某一網絡設備的所有用戶突然都離開電腦去休息或做別的事情,造成網絡設備很長一段時間的空閑時間,過一段時間后,空閑時間段的延續(xù)性又會恢復到常態(tài)。
為了更好地描述設備空閑時間的突發(fā)性情況,文獻定義:若ti(n)/Ti(n)≥C(其中,ti(n)為當前空閑時間的長度,Ti(n)為預測空閑時間的長度,C為常數),則認為ti(n)是網絡設備突發(fā)性的空閑時間段。由于設備當前空閑時間的長度是根據它與上一個空閑時間的長度有延續(xù)性預測的,因此設備突發(fā)性的空閑時間段出現使實際值和上一空閑時間段長度的預測之間出現偏差,對當前設備的空閑時間長度預測產生不利,為了糾正空閑時間長度預測中的偏差,采用下式來預測當前的空閑時間長度如公式所示:Ti(n+1)=
本文提出一種新的網絡設備睡眠機制策略,采用動態(tài)閾值方法調整網絡設備的睡眠時間。由于本文的網絡設備節(jié)能QoS路由算法在選路時繞開空閑設備,因此空閑設備的空閑時間更多,有機會進入睡眠狀態(tài)。設網絡設備可在任何時刻進入睡眠狀態(tài)和運行狀態(tài),而且將網絡設備關閉能夠進一步地降低設備能耗。這里假定將網絡設備轉換為睡眠狀態(tài)和關閉網絡設備的功耗是可忽略的,但是網絡設備轉換為運行狀態(tài)和重新開啟的功耗是不可忽略的。如果網絡設備在某一時刻不執(zhí)行任何命令,就稱網絡設備在該時刻處于“空閑狀態(tài)”。初始狀態(tài)設設備的睡眠時間閾值為Ts,Ts的值通過該網絡設備的歷史情況預測。應用動態(tài)閾值法調整睡眠時間的長度,前提是網絡在運行期間的工作負載不均勻,并且系統(tǒng)能夠以一定的可信度預測到工作負載的波動性,并且系統(tǒng)對工作負載的預測不消耗過多的能量。接下來討論網絡設備進入睡眠和喚醒的時間和條件:
3 結語
雖然這種睡眠機制還會有丟包現象,但是在網絡設備睡眠時間閾值Ts不斷調整的過程中,睡眠時間會越來越適應數據包到達時間,丟包率明顯下降。
參考文獻:
[1]Hewleet-Packard I.Advanced configuration and power interface specification.ACPI Specification Document.Revision4.0a,2010.
[2]吳福煒,甘駿人.一種實時功耗管理算法[J].計算機學報, 2003,29(5): 30-31.
[3]Nedevschi S,Popa L,Iannaccone G,Ratnasamy S, Wether-all D.Reducing network energy consumption via sleeping and rate-adaptationA].Proceeding of the 5th USENIX Symposium on Networked Systems Design and Implementation (NSDI'08)[C],San Francisco,CA,2008,323-336.
作者簡介:王超(1972-),女,遼寧朝陽人,信息工程系副主任,副教授,研究方向:軟件開發(fā)。
摘要:網絡設備的睡眠機制是實現網絡節(jié)能的一種方法。本文對網絡設備睡眠機制進行了詳細的設計,先分析了傳統(tǒng)睡眠機制存在的缺陷,然后提出動態(tài)閾值調整睡眠時間的方法。
關鍵詞:網絡設備 睡眠機制 運行狀態(tài)
0 引言
網絡設備的睡眠機制需要實際硬件的支持,Microsoft,Intel,Toshiba在1997年共同制定了ACPI規(guī)范,ACPI定義了設備電源狀態(tài)、系統(tǒng)的全局狀態(tài)和處理器電源狀態(tài),ACPI的主要目標是使系統(tǒng)動態(tài)地管理電源。根據ACPI規(guī)范,本文將網絡設備按照網絡設備狀態(tài)劃分。
1 網絡設備狀態(tài)劃分
為了清楚地闡述網絡設備的睡眠機制,本文將網絡設備的狀態(tài)劃分:運行狀態(tài)、睡眠狀態(tài)、空閑狀態(tài)、關閉狀態(tài)。
2 動態(tài)調整睡眠時間機制
利用網絡設備睡眠可以實現網絡節(jié)能。對于一個設備,如果其狀態(tài)轉換是即時的,即設備性能和功耗的損失為0,那么網絡設備睡眠機制的設計將會非常容易,設備狀態(tài)轉換策略可以非常貪婪:只要設備一空閑,就將其轉換到最深睡眠狀態(tài);如果有請求到來,設備立即轉換到運行狀態(tài)。然而,這種假設只存在于理想設備中,現實情況是大多數設備在狀態(tài)轉換時,性能和功耗損失都不可忽略。設備從運行狀態(tài)進入睡眠狀態(tài)需要一定的時間完成狀態(tài)轉換,從睡眠狀態(tài)返回到運行狀態(tài)需要的恢復時間更長,因為在該過程中設備需要依次完成穩(wěn)定電源和始終、重新初始化設備、恢復上下文等工作。
因此,當網絡設備正處于空閑狀態(tài)時,系統(tǒng)將決定該設備是選擇繼續(xù)保持空閑狀態(tài)還是進入低功耗的睡眠狀態(tài)。如果選擇進入睡眠狀態(tài),系統(tǒng)需要先保存當前的數據,然后再讓設備進入睡眠狀態(tài),直到檢測到設備喚醒信號為止。系統(tǒng)檢測到設備喚醒信號后,系統(tǒng)需要先恢復設備數據,然后將設備轉換回到運行狀態(tài)。網絡設備睡眠機制的關鍵問題就在于在什么時候、根據什么條件發(fā)起狀態(tài)轉換的命令。
由于設備從運行狀態(tài)轉入低功耗睡眠狀態(tài)需要付出額外的代價,一是增加了狀態(tài)轉換時所需的能耗Eex,二是增加了系統(tǒng)的延遲tde。因此設備只有在空閑時間足夠長的情況下,轉換至睡眠狀態(tài)才會節(jié)省設備的能量損耗。設這個足夠長的空閑時間最小值為Tthr,設備運行狀態(tài)的功耗為Pa,睡眠狀態(tài)的功耗為Ps,空閑時間為Ti,設備喚醒所需的時間Twup和進入睡眠狀態(tài)所需的時間tde之和為T0,則設備狀態(tài)轉換時必須滿足的條件:
設備在空閑狀態(tài)消耗的能量小于該時間段內設備為工作狀態(tài)消耗的能量,即如下公式所示:Ps×(Ti-T0)+E0
然而在Ti時間段內,設備仍然處于高功耗運行狀態(tài),因而造成部分能量損耗。為了改善這種能量浪費,本文使用另一種策略,空閑時間預測策略。該策略的核心思想是對當前的空閑時間T長度進行預測,當預測的空閑時間長度Ti>T,那么設備一空閑就進入睡眠狀態(tài)??臻e時間T長度與很多因素有關,如網絡環(huán)境、用戶習慣和網絡設備的工作頻率等,并且設備空閑時間T的取值并沒有規(guī)律性可循,不能用傳統(tǒng)的概率方法來預測??紤]到在大多數情況下,在同一網絡環(huán)境中用戶的習慣是相似的,因此在同一網絡中的設備空閑時間長度一般在某個固定的范圍內。從這個角度來分析,同一網絡中的設備相鄰的空閑時間段一般具有一定的延續(xù)性。然而空閑時間也有突發(fā)性情況,比如說使用某一網絡設備的所有用戶突然都離開電腦去休息或做別的事情,造成網絡設備很長一段時間的空閑時間,過一段時間后,空閑時間段的延續(xù)性又會恢復到常態(tài)。
為了更好地描述設備空閑時間的突發(fā)性情況,文獻定義:若ti(n)/Ti(n)≥C(其中,ti(n)為當前空閑時間的長度,Ti(n)為預測空閑時間的長度,C為常數),則認為ti(n)是網絡設備突發(fā)性的空閑時間段。由于設備當前空閑時間的長度是根據它與上一個空閑時間的長度有延續(xù)性預測的,因此設備突發(fā)性的空閑時間段出現使實際值和上一空閑時間段長度的預測之間出現偏差,對當前設備的空閑時間長度預測產生不利,為了糾正空閑時間長度預測中的偏差,采用下式來預測當前的空閑時間長度如公式所示:Ti(n+1)=
本文提出一種新的網絡設備睡眠機制策略,采用動態(tài)閾值方法調整網絡設備的睡眠時間。由于本文的網絡設備節(jié)能QoS路由算法在選路時繞開空閑設備,因此空閑設備的空閑時間更多,有機會進入睡眠狀態(tài)。設網絡設備可在任何時刻進入睡眠狀態(tài)和運行狀態(tài),而且將網絡設備關閉能夠進一步地降低設備能耗。這里假定將網絡設備轉換為睡眠狀態(tài)和關閉網絡設備的功耗是可忽略的,但是網絡設備轉換為運行狀態(tài)和重新開啟的功耗是不可忽略的。如果網絡設備在某一時刻不執(zhí)行任何命令,就稱網絡設備在該時刻處于“空閑狀態(tài)”。初始狀態(tài)設設備的睡眠時間閾值為Ts,Ts的值通過該網絡設備的歷史情況預測。應用動態(tài)閾值法調整睡眠時間的長度,前提是網絡在運行期間的工作負載不均勻,并且系統(tǒng)能夠以一定的可信度預測到工作負載的波動性,并且系統(tǒng)對工作負載的預測不消耗過多的能量。接下來討論網絡設備進入睡眠和喚醒的時間和條件:
3 結語
雖然這種睡眠機制還會有丟包現象,但是在網絡設備睡眠時間閾值Ts不斷調整的過程中,睡眠時間會越來越適應數據包到達時間,丟包率明顯下降。
參考文獻:
[1]Hewleet-Packard I.Advanced configuration and power interface specification.ACPI Specification Document.Revision4.0a,2010.
[2]吳福煒,甘駿人.一種實時功耗管理算法[J].計算機學報, 2003,29(5): 30-31.
[3]Nedevschi S,Popa L,Iannaccone G,Ratnasamy S, Wether-all D.Reducing network energy consumption via sleeping and rate-adaptationA].Proceeding of the 5th USENIX Symposium on Networked Systems Design and Implementation (NSDI'08)[C],San Francisco,CA,2008,323-336.
作者簡介:王超(1972-),女,遼寧朝陽人,信息工程系副主任,副教授,研究方向:軟件開發(fā)。
摘要:網絡設備的睡眠機制是實現網絡節(jié)能的一種方法。本文對網絡設備睡眠機制進行了詳細的設計,先分析了傳統(tǒng)睡眠機制存在的缺陷,然后提出動態(tài)閾值調整睡眠時間的方法。
關鍵詞:網絡設備 睡眠機制 運行狀態(tài)
0 引言
網絡設備的睡眠機制需要實際硬件的支持,Microsoft,Intel,Toshiba在1997年共同制定了ACPI規(guī)范,ACPI定義了設備電源狀態(tài)、系統(tǒng)的全局狀態(tài)和處理器電源狀態(tài),ACPI的主要目標是使系統(tǒng)動態(tài)地管理電源。根據ACPI規(guī)范,本文將網絡設備按照網絡設備狀態(tài)劃分。
1 網絡設備狀態(tài)劃分
為了清楚地闡述網絡設備的睡眠機制,本文將網絡設備的狀態(tài)劃分:運行狀態(tài)、睡眠狀態(tài)、空閑狀態(tài)、關閉狀態(tài)。
2 動態(tài)調整睡眠時間機制
利用網絡設備睡眠可以實現網絡節(jié)能。對于一個設備,如果其狀態(tài)轉換是即時的,即設備性能和功耗的損失為0,那么網絡設備睡眠機制的設計將會非常容易,設備狀態(tài)轉換策略可以非常貪婪:只要設備一空閑,就將其轉換到最深睡眠狀態(tài);如果有請求到來,設備立即轉換到運行狀態(tài)。然而,這種假設只存在于理想設備中,現實情況是大多數設備在狀態(tài)轉換時,性能和功耗損失都不可忽略。設備從運行狀態(tài)進入睡眠狀態(tài)需要一定的時間完成狀態(tài)轉換,從睡眠狀態(tài)返回到運行狀態(tài)需要的恢復時間更長,因為在該過程中設備需要依次完成穩(wěn)定電源和始終、重新初始化設備、恢復上下文等工作。
因此,當網絡設備正處于空閑狀態(tài)時,系統(tǒng)將決定該設備是選擇繼續(xù)保持空閑狀態(tài)還是進入低功耗的睡眠狀態(tài)。如果選擇進入睡眠狀態(tài),系統(tǒng)需要先保存當前的數據,然后再讓設備進入睡眠狀態(tài),直到檢測到設備喚醒信號為止。系統(tǒng)檢測到設備喚醒信號后,系統(tǒng)需要先恢復設備數據,然后將設備轉換回到運行狀態(tài)。網絡設備睡眠機制的關鍵問題就在于在什么時候、根據什么條件發(fā)起狀態(tài)轉換的命令。
由于設備從運行狀態(tài)轉入低功耗睡眠狀態(tài)需要付出額外的代價,一是增加了狀態(tài)轉換時所需的能耗Eex,二是增加了系統(tǒng)的延遲tde。因此設備只有在空閑時間足夠長的情況下,轉換至睡眠狀態(tài)才會節(jié)省設備的能量損耗。設這個足夠長的空閑時間最小值為Tthr,設備運行狀態(tài)的功耗為Pa,睡眠狀態(tài)的功耗為Ps,空閑時間為Ti,設備喚醒所需的時間Twup和進入睡眠狀態(tài)所需的時間tde之和為T0,則設備狀態(tài)轉換時必須滿足的條件:
設備在空閑狀態(tài)消耗的能量小于該時間段內設備為工作狀態(tài)消耗的能量,即如下公式所示:Ps×(Ti-T0)+E0
然而在Ti時間段內,設備仍然處于高功耗運行狀態(tài),因而造成部分能量損耗。為了改善這種能量浪費,本文使用另一種策略,空閑時間預測策略。該策略的核心思想是對當前的空閑時間T長度進行預測,當預測的空閑時間長度Ti>T,那么設備一空閑就進入睡眠狀態(tài)。空閑時間T長度與很多因素有關,如網絡環(huán)境、用戶習慣和網絡設備的工作頻率等,并且設備空閑時間T的取值并沒有規(guī)律性可循,不能用傳統(tǒng)的概率方法來預測。考慮到在大多數情況下,在同一網絡環(huán)境中用戶的習慣是相似的,因此在同一網絡中的設備空閑時間長度一般在某個固定的范圍內。從這個角度來分析,同一網絡中的設備相鄰的空閑時間段一般具有一定的延續(xù)性。然而空閑時間也有突發(fā)性情況,比如說使用某一網絡設備的所有用戶突然都離開電腦去休息或做別的事情,造成網絡設備很長一段時間的空閑時間,過一段時間后,空閑時間段的延續(xù)性又會恢復到常態(tài)。
為了更好地描述設備空閑時間的突發(fā)性情況,文獻定義:若ti(n)/Ti(n)≥C(其中,ti(n)為當前空閑時間的長度,Ti(n)為預測空閑時間的長度,C為常數),則認為ti(n)是網絡設備突發(fā)性的空閑時間段。由于設備當前空閑時間的長度是根據它與上一個空閑時間的長度有延續(xù)性預測的,因此設備突發(fā)性的空閑時間段出現使實際值和上一空閑時間段長度的預測之間出現偏差,對當前設備的空閑時間長度預測產生不利,為了糾正空閑時間長度預測中的偏差,采用下式來預測當前的空閑時間長度如公式所示:Ti(n+1)=
本文提出一種新的網絡設備睡眠機制策略,采用動態(tài)閾值方法調整網絡設備的睡眠時間。由于本文的網絡設備節(jié)能QoS路由算法在選路時繞開空閑設備,因此空閑設備的空閑時間更多,有機會進入睡眠狀態(tài)。設網絡設備可在任何時刻進入睡眠狀態(tài)和運行狀態(tài),而且將網絡設備關閉能夠進一步地降低設備能耗。這里假定將網絡設備轉換為睡眠狀態(tài)和關閉網絡設備的功耗是可忽略的,但是網絡設備轉換為運行狀態(tài)和重新開啟的功耗是不可忽略的。如果網絡設備在某一時刻不執(zhí)行任何命令,就稱網絡設備在該時刻處于“空閑狀態(tài)”。初始狀態(tài)設設備的睡眠時間閾值為Ts,Ts的值通過該網絡設備的歷史情況預測。應用動態(tài)閾值法調整睡眠時間的長度,前提是網絡在運行期間的工作負載不均勻,并且系統(tǒng)能夠以一定的可信度預測到工作負載的波動性,并且系統(tǒng)對工作負載的預測不消耗過多的能量。接下來討論網絡設備進入睡眠和喚醒的時間和條件:
3 結語
雖然這種睡眠機制還會有丟包現象,但是在網絡設備睡眠時間閾值Ts不斷調整的過程中,睡眠時間會越來越適應數據包到達時間,丟包率明顯下降。
參考文獻:
[1]Hewleet-Packard I.Advanced configuration and power interface specification.ACPI Specification Document.Revision4.0a,2010.
[2]吳福煒,甘駿人.一種實時功耗管理算法[J].計算機學報, 2003,29(5): 30-31.
[3]Nedevschi S,Popa L,Iannaccone G,Ratnasamy S, Wether-all D.Reducing network energy consumption via sleeping and rate-adaptationA].Proceeding of the 5th USENIX Symposium on Networked Systems Design and Implementation (NSDI'08)[C],San Francisco,CA,2008,323-336.
作者簡介:王超(1972-),女,遼寧朝陽人,信息工程系副主任,副教授,研究方向:軟件開發(fā)。