亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

利用內(nèi)存零復(fù)制降低云計(jì)算網(wǎng)絡(luò)傳輸能源消耗的方法

文檔序號(hào):7894087閱讀:460來源:國(guó)知局
專利名稱:利用內(nèi)存零復(fù)制降低云計(jì)算網(wǎng)絡(luò)傳輸能源消耗的方法
技術(shù)領(lǐng)域
本發(fā)明屬于云計(jì)算平臺(tái)技術(shù)領(lǐng)域,具體涉及一種降低云計(jì)算網(wǎng)絡(luò)傳輸能源消耗的方法。
背景技術(shù)
近年來,隨著云計(jì)算的迅猛發(fā)展,各大公司都推出了服務(wù)器規(guī)模達(dá)到數(shù)以百萬計(jì)的大型數(shù)據(jù)中心。這些數(shù)據(jù)中心對(duì)能源的消耗非常高,這與當(dāng)今世界“低碳節(jié)能環(huán)保”的主題產(chǎn)生了矛盾。因此,如何在保證計(jì)算中心服務(wù)能力的同時(shí),盡可能降低其對(duì)能源的消耗,成為了一個(gè)重要的課題。因此,本專利所描述的節(jié)能方法,能夠通過降低完成相同計(jì)算任務(wù)的前提下服務(wù)器所消耗的能量,從而為節(jié)能事業(yè)做出貢獻(xiàn)。網(wǎng)絡(luò)數(shù)據(jù)傳輸是云計(jì)算平臺(tái)的重要操作之一。無論是云平臺(tái)中運(yùn)行的用戶服務(wù),還是平臺(tái)自身的維護(hù)與管理操作,都會(huì)產(chǎn)生大量的網(wǎng)絡(luò)傳輸。因此,網(wǎng)絡(luò)數(shù)據(jù)傳輸成為了云平臺(tái)能量消耗的重要組成部分。在傳統(tǒng)的網(wǎng)絡(luò)傳輸過程中,所需傳輸?shù)臄?shù)據(jù)會(huì)在內(nèi)存中進(jìn)行多次復(fù)制首先從用戶內(nèi)存空間復(fù)制至內(nèi)核進(jìn)程空間,再?gòu)膬?nèi)核進(jìn)程空間復(fù)制至設(shè)備內(nèi)存。其中,前一次的內(nèi)存復(fù)制是為了保證在內(nèi)核傳輸數(shù)據(jù)時(shí),應(yīng)用程序不會(huì)對(duì)數(shù)據(jù)進(jìn)行修改;但這次內(nèi)存復(fù)制并不是必須的。本發(fā)明通過引入網(wǎng)絡(luò)傳輸?shù)摹傲銖?fù)制”技術(shù),去掉了這次額外的內(nèi)存復(fù)制操作,從而大大降低了網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)娜哂鄰?fù)制,在提高性能的同時(shí)也很好的減少了完成相同工作所耗費(fèi)的能源。

發(fā)明內(nèi)容
本發(fā)明的目的在于提出一種能夠方便、有效降低云計(jì)算網(wǎng)絡(luò)傳輸能源消耗的方法。本發(fā)明提出的降低云計(jì)算網(wǎng)絡(luò)傳輸能源消耗的方法,是通過減少網(wǎng)絡(luò)數(shù)據(jù)傳輸時(shí)的冗余內(nèi)存復(fù)制操作,提高網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)男剩档屯瓿蓚鬏數(shù)哪芰肯?,從而減少服務(wù)器能耗。本發(fā)明的主要原理為用戶指定需要傳輸?shù)臄?shù)據(jù)內(nèi)存位置,標(biāo)記為“零復(fù)制”區(qū)域,由操作系統(tǒng)直接發(fā)送給網(wǎng)絡(luò)設(shè)備,從而避免從應(yīng)用到內(nèi)核的數(shù)據(jù)復(fù)制,避免不必要的能量消耗。具體來說第一,由用戶指定“零復(fù)制”網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)在內(nèi)存中的區(qū)域。第二,通過零復(fù)制內(nèi)存管理庫函數(shù)分配需要網(wǎng)絡(luò)傳輸?shù)膬?nèi)存區(qū)域。第三,通過操作系統(tǒng)中的零復(fù)制代理模塊,直接將數(shù)據(jù)從用戶的內(nèi)存?zhèn)鬏斨辆W(wǎng)絡(luò)設(shè)備。第四,通過操作系統(tǒng)中的零復(fù)制數(shù)據(jù)保護(hù)模塊,對(duì)數(shù)據(jù)傳輸過程中的用戶內(nèi)存寫操作進(jìn)行寫時(shí)復(fù)制從而保護(hù)數(shù)據(jù)的完整性。第五,通過減少多余的內(nèi)存復(fù)制操作,有效提高網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)男?,壓縮網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)臅r(shí)間,從而降低完成等效工作量的服務(wù)器能耗。
本發(fā)明提出的降低云計(jì)算平臺(tái)能源消耗的方法,具體步驟為
第一,對(duì)于云平臺(tái)應(yīng)用程序的網(wǎng)絡(luò)傳輸,由用戶應(yīng)用指定傳輸數(shù)據(jù)的內(nèi)存區(qū)域;
第二,通過零復(fù)制內(nèi)存管理庫函數(shù)動(dòng)態(tài)分配內(nèi)存區(qū)域;該函數(shù)將分配的內(nèi)存區(qū)域標(biāo)記為零復(fù)制區(qū)域; 第三,通過操作系統(tǒng)中的零復(fù)制代理模塊,直接將數(shù)據(jù)從用戶的內(nèi)存區(qū)域傳輸至網(wǎng)絡(luò)設(shè)備,避免該傳輸數(shù)據(jù)在內(nèi)核與用戶態(tài)之間的多余復(fù)制,從而減少網(wǎng)絡(luò)傳輸?shù)目傮w時(shí)間;第四,通過操作系統(tǒng)中的零復(fù)制數(shù)據(jù)保護(hù)模塊,對(duì)數(shù)據(jù)傳輸過程中用戶的內(nèi)存寫操作進(jìn)行寫時(shí)復(fù)制(Copy-on-write),從而保護(hù)數(shù)據(jù)的完整性。本發(fā)明方法能夠在保證數(shù)據(jù)完整性的同時(shí),有效提高網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)男?,壓縮網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)臅r(shí)間,減少無效內(nèi)存復(fù)制的操作數(shù),從而降低完成等效工作量的服務(wù)器能耗。本發(fā)明的具體實(shí)現(xiàn)為對(duì)應(yīng)用程序、內(nèi)存分配庫和操作系統(tǒng)進(jìn)行修改,對(duì)網(wǎng)絡(luò)傳輸?shù)囊韵虏襟E進(jìn)行優(yōu)化。第一,對(duì)于應(yīng)用程序,首先確定需要進(jìn)行網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)位置,通過調(diào)用零復(fù)制內(nèi)存管理庫函數(shù)進(jìn)行內(nèi)存的分配和回收操作,其他不需要進(jìn)行網(wǎng)絡(luò)傳輸?shù)膬?nèi)存則可以不用修改。第二,零復(fù)制的內(nèi)存管理函數(shù)會(huì)通過特定的參數(shù),在操作系統(tǒng)內(nèi)核中標(biāo)記這段內(nèi)存區(qū)域。第三,當(dāng)用戶應(yīng)用進(jìn)行網(wǎng)絡(luò)傳輸時(shí),操作系統(tǒng)首先將內(nèi)存映射改為只讀,并直接將數(shù)據(jù)從內(nèi)存通過DMA (Direct Memory Access)發(fā)送至網(wǎng)絡(luò)設(shè)備,從而減少了從應(yīng)用到操作系統(tǒng)的復(fù)制操作。第四,當(dāng)應(yīng)用程序?qū)φ贒MA的內(nèi)存區(qū)域進(jìn)行寫操作時(shí),由于內(nèi)存已被置為只讀,因此會(huì)觸發(fā)硬件保護(hù)異常。操作系統(tǒng)在異常處理函數(shù)中,通過寫時(shí)復(fù)制(Copy-on-write)技術(shù)進(jìn)行處理,從而保證內(nèi)存寫操作的正確性。本書面說明可使該技術(shù)領(lǐng)域具有普通技能的人能夠使用含有與權(quán)利要求所列要素近似的可替代要素的實(shí)施方案。因此,這項(xiàng)發(fā)明的范圍包括與權(quán)利要求的字面意思完全相同的方法,還包括其他與權(quán)利要求的字面意思沒有實(shí)質(zhì)性區(qū)別的方法。雖然在這里只描述和說明了部分特征和實(shí)施方案,但相關(guān)技術(shù)的基本方法可以進(jìn)行許多修改和變化。所附權(quán)利要求將涵蓋所有這些修改和變化。


圖I為零復(fù)制操作的整體框架與數(shù)據(jù)流示意圖。圖2為網(wǎng)絡(luò)包結(jié)構(gòu)對(duì)比和數(shù)據(jù)間關(guān)系示意圖。圖3為零復(fù)制操作的整體流程示意圖。
具體實(shí)施例方式下面結(jié)合實(shí)例對(duì)本發(fā)明進(jìn)行進(jìn)一步說明。當(dāng)前,許多公司與機(jī)構(gòu)均擁有大規(guī)模的數(shù)據(jù)中心,部署了大量的網(wǎng)絡(luò)服務(wù)器,網(wǎng)絡(luò)數(shù)據(jù)傳輸是一個(gè)關(guān)鍵的操作,發(fā)生的頻率相當(dāng)高?,F(xiàn)有的網(wǎng)絡(luò)傳輸會(huì)將數(shù)據(jù)從應(yīng)用程序復(fù)制到操作系統(tǒng)內(nèi)核,不但因此降低了性能,而且浪費(fèi)了能耗。尤其是當(dāng)數(shù)據(jù)中心內(nèi)部進(jìn)行遷移等服務(wù)需要進(jìn)行大量網(wǎng)絡(luò)傳輸時(shí),這一浪費(fèi)更為明顯。因此,通過本發(fā)明對(duì)網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)哪芎倪M(jìn)行優(yōu)化,從數(shù)據(jù)中心整體來看,能夠節(jié)約的能量總量非??捎^。應(yīng)用程序?qū)τ谛枰M(jìn)行零復(fù)制的內(nèi)存區(qū)域,使用零復(fù)制內(nèi)存管理庫函數(shù)分配內(nèi)存,如圖I所示。該函數(shù)負(fù)責(zé)將分配的內(nèi)存區(qū)域標(biāo)記為零復(fù)制區(qū)域。操作系統(tǒng)在為應(yīng)用程序分配網(wǎng)絡(luò)包時(shí),并不分配具體的內(nèi)存區(qū)域,而僅僅分配相應(yīng)的網(wǎng)絡(luò)包頭,指向零復(fù)制內(nèi)存所分配的內(nèi)存區(qū)域。具體結(jié)構(gòu)如圖2所示。
操作系統(tǒng)的網(wǎng)絡(luò)協(xié)議棧在復(fù)制內(nèi)存區(qū)域時(shí),流程如圖3所示首先判斷復(fù)制區(qū)域是否為零復(fù)制區(qū)域,若不是則按照正常流程,將內(nèi)存從應(yīng)用復(fù)制到內(nèi)核后發(fā)送給網(wǎng)絡(luò)設(shè)備; 若是,則將內(nèi)存區(qū)域設(shè)置為只讀,并將數(shù)據(jù)發(fā)送給網(wǎng)絡(luò)設(shè)備,發(fā)送完畢后將恢復(fù)內(nèi)存頁的寫權(quán)限,不斷迭代至所有數(shù)據(jù)發(fā)送完畢為止。此間若發(fā)生了用戶對(duì)內(nèi)存區(qū)域的寫操作,則會(huì)觸發(fā)硬件的異常,操作系統(tǒng)在異常處理函數(shù)中,通過寫時(shí)復(fù)制的方法保證寫操作的正確性。
權(quán)利要求
1.一種利用內(nèi)存零復(fù)制降低云計(jì)算網(wǎng)絡(luò)傳輸能源消耗的方法,其特征在于具體步驟為第一,對(duì)于云平臺(tái)應(yīng)用程序的網(wǎng)絡(luò)傳輸,由用戶應(yīng)用指定傳輸數(shù)據(jù)的內(nèi)存區(qū)域;第二,通過零復(fù)制內(nèi)存管理庫函數(shù)動(dòng)態(tài)分配內(nèi)存區(qū)域;該函數(shù)將分配的內(nèi)存區(qū)域標(biāo)記為零復(fù)制區(qū)域;第三,通過操作系統(tǒng)中的零復(fù)制代理模塊,直接將數(shù)據(jù)從用戶的內(nèi)存區(qū)域傳輸至網(wǎng)絡(luò)設(shè)備,避免該傳輸數(shù)據(jù)在內(nèi)核與用戶態(tài)之間的多余復(fù)制,從而減少網(wǎng)絡(luò)傳輸?shù)目傮w時(shí)間; 第四,通過操作系統(tǒng)中的內(nèi)存保護(hù)模塊,對(duì)數(shù)據(jù)傳輸過程中用戶的內(nèi)存寫操作進(jìn)行寫時(shí)復(fù)制,從而保護(hù)數(shù)據(jù)的完整性。
2.根據(jù)權(quán)利要求I所述的利用內(nèi)存零復(fù)制降低云計(jì)算網(wǎng)絡(luò)傳輸能源消耗的方法,其特征在于操作系統(tǒng)在為應(yīng)用程序分配網(wǎng)絡(luò)包時(shí),并不分配具體的內(nèi)存區(qū)域,僅分配相應(yīng)的網(wǎng)絡(luò)包頭,指向零復(fù)制內(nèi)存所分配的內(nèi)存區(qū)域。
3.根據(jù)權(quán)利要求I所述的利用內(nèi)存零復(fù)制降低云計(jì)算網(wǎng)絡(luò)傳輸能源消耗的方法,其特征在于操作系統(tǒng)的網(wǎng)絡(luò)協(xié)議棧在復(fù)制內(nèi)存區(qū)域時(shí),首先判斷復(fù)制區(qū)域是否為零復(fù)制區(qū)域,若不是則按照正常流程,將內(nèi)存從應(yīng)用復(fù)制到內(nèi)核后發(fā)送給網(wǎng)絡(luò)設(shè)備;若是,則將內(nèi)存區(qū)域設(shè)置為只讀,并將數(shù)據(jù)發(fā)送給網(wǎng)絡(luò)設(shè)備,發(fā)送完畢后恢復(fù)內(nèi)存頁的寫權(quán)限,不斷迭代至所有數(shù)據(jù)發(fā)送完畢為止;此間若發(fā)生了用戶對(duì)內(nèi)存區(qū)域的寫操作,則觸發(fā)硬件的異常,操作系統(tǒng)在異常處理函數(shù)中,通過寫時(shí)復(fù)制的方法保證寫操作的正確性。
全文摘要
本發(fā)明屬于云計(jì)算平臺(tái)技術(shù)領(lǐng)域,具體為一種利用內(nèi)存零復(fù)制降低云計(jì)算網(wǎng)絡(luò)傳輸能源消耗的方法。具體步驟為對(duì)于云平臺(tái)應(yīng)用程序的網(wǎng)絡(luò)傳輸,由用戶應(yīng)用指定傳輸數(shù)據(jù)的內(nèi)存區(qū)域;通過“零復(fù)制”內(nèi)存分配函數(shù)動(dòng)態(tài)分配內(nèi)存區(qū)域;通過操作系統(tǒng)中的零復(fù)制代理模塊,直接將數(shù)據(jù)從用戶的內(nèi)存區(qū)域傳輸至網(wǎng)絡(luò)設(shè)備,避免該傳輸數(shù)據(jù)在內(nèi)核與用戶態(tài)之間的多余復(fù)制,從而減少網(wǎng)絡(luò)傳輸?shù)目傮w時(shí)間;通過操作系統(tǒng)中的內(nèi)存保護(hù)模塊,對(duì)數(shù)據(jù)傳輸過程中用戶的內(nèi)存寫操作進(jìn)行寫時(shí)復(fù)制,從而保護(hù)數(shù)據(jù)的完整性。該方法可以有效提高云計(jì)算平臺(tái)應(yīng)用程序的網(wǎng)絡(luò)傳輸效率,較少對(duì)傳輸數(shù)據(jù)的不必要復(fù)制操作,從而減少服務(wù)器系統(tǒng)在運(yùn)行時(shí)的整體能量消耗。
文檔編號(hào)H04L29/08GK102629946SQ20121011795
公開日2012年8月8日 申請(qǐng)日期2012年4月22日 優(yōu)先權(quán)日2012年4月22日
發(fā)明者夏虞斌, 宋翔, 施繼成, 臧斌宇, 陳海波 申請(qǐng)人:復(fù)旦大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1