1 引言
近年來,隨著網絡和通信技術的發展,Internet已成為人們日常生活不可缺少的信息交流平臺,進而促進網絡數字內容業的快速發展,也為數字內容產業帶來前所未有的商機,據統計,截止2011年4月,亞馬遜電子書銷量首次超過了印刷書銷量,百度庫內文件接近2000萬份,并繼續保持高速增長,而有蘭登書屋等六大出版商人駐ihook,ipad銷量已超2000萬臺,但當前大多數數字內容提供商仍然采用傳統的C/S模式構建自己的數字內容服務系統,為眾多終端用戶提供內容服務,這種模式隨著Internet規模和用戶人數的增加會存在網絡熱點的問題,為此,一些數字內容提供商試圖采用新的技術來解決上述問題,如亞馬遜構建了自己的云服務系統(彈性計算云Elastic Compute Cloud,EC2),現實結果顯示,該系統適合亞馬遜的數字內容服務特點,極大促進了亞馬遜業務發展,云計算機的核心思想是通過虛擬技術將是將大量用網絡連接的計算資源統一管理和調度,構成一個計算資源池向用戶按需服務,從而為終端用戶提供靈活高效的服務,顯然,上述優勢的取得是通過在現有網絡上部署服務節點來實現的,服務節點位置選擇的合適與否,直接影響到云服務系統的服務質量和使用效率。
服務節點部署是傳統網絡和CDN網絡關注的熱點和難點,產生了很多有意義的成果,但計算機技術、網絡技術的飛速發展以及云計算技術的特點,使得傳統服務節點部署理論在解決云計算系統服務節點部署時需要解決眾多挑戰,包括網絡信息缺乏和已有部署理論的局限性,由于測量技術和測量設備的限制,設計者在復雜網絡環境下選擇部署點時會面臨不同程度的信息缺失,甚至會出現無法獲取建模需要的先驗知識的情況,同時,傳統基于圖論的服務節點選擇方案存在NP難喝和搜索效率隨樣本數增加快速下降的缺陷,此外,在現實應用中,設計者除了需要解決上述理論局限性外,還要考慮簡單實用等因素,針對上述問題及實際服務器部署的特點,本文提出一種基于網絡坐標系統的服務器部署方法,與傳統服務器部署相比,該方法可以較小的代價獲得較完整的互聯網時延信息,解決了傳統方法中無法獲得完整網絡信息的問題;同時該方法采用聚類方法,避免了傳統服務器部署存在的NP-hard和搜索效率低下的問題。
2 基于網絡坐標服務器部署方案
圖1為基于網絡坐標服務器部署方法整體框圖,可以看出,構建基于網絡坐標的服務器部署方案包括網絡信息獲取、部署方案形成和部署方案驗證等三部分,其中,網絡信息獲取主要解決服務器部署中信息獲取不完整的問題,其核心思想是通過ping測量技術,構建網絡坐標,從而以較少的測量成本獲取較為完整的網絡信息,包括網絡坐標基準點的選擇和網絡坐標的形成兩部分,本文采用中央控制網絡坐標的構成方式;部署方案形成部分在已構建好的網絡坐標的基礎上實現服務器部署方案,包括服務器選擇和服務資源分配等兩部分,前者在構建好的網絡坐標基礎上實現服務器選址工作,即根據得到的網絡坐標,將樣本點進行聚類,得到若干個邏輯節點,然后將獲得的邏輯節點轉換成現實中的IP值,并進一步獲得服務器部署的物理位置,在這里,文章對傳統分層聚類方法進行改進,使之在考慮測量樣本分布密度的同時,也考慮了服務器部署成本和服務性能等因素,能準確反映真實的網絡環境,并以此來獲得服務器部署方案,在部署方案驗證部分,文章通過將傳統服務器部署方案與基于網絡坐標的服務器部署方案的服務性能進行對比,以驗證基于網絡坐標的服務器部署方法的有效性。
圖1基于網絡坐標服務器部署方法框圖
3 基于網絡坐標的服務器部署的關鍵技術
由圖1可知,基于網絡坐標服務器部署方案的核心技術包括網絡基準點的選擇和分層聚類算法兩種。
3.1基準點選擇
在中央控制式網絡坐標體系中,網絡坐標的構建首先通過部署網絡探測點,通過網絡探測點獲得網絡節點的延遲信息,并選擇網絡基準點,構建網絡坐標系,然后,通過基準點的測量來獲取客戶端到網絡基準點的延遲,根據網絡基準點的坐標計算出該客戶端在網絡坐標系統中的坐標值,構建Internet的網絡結構圖,在上述過程中,網絡基準點具有三重作用:構建網絡坐標系的三要素(維度、坐標原點和刻度)、網絡延遲測量的主機和網絡坐標定位基礎,因此,基準點的選擇對網絡坐標的精度有重要的影響。
張輝,P.Francis和M. Rabinovich等人對網絡坐標系基準點做了研究,其中,張輝等人通過在已部署的探測節點中選擇坐標基準點,并提出了3條準則:
1)最大分離度準則;
2)N-Median準則;
3)N-cluster-Median.
在此基礎上,通過實驗證明了與三角坐標和IDMap網絡坐標系相比,GNP即使采用隨機選擇的網絡基準點,也具有更好的穩定性,且當基準點為6,坐標維度為5時,網絡坐標具有較好的準確性,在文獻〔7〕中,P. Francis等人詳細研究了IDMap系中探測點的選址問題,并將該問題模型化為已知網絡拓撲情況下的圖論問題,M. Rabinovich等人則通過對統計數據的分析,證實了在網絡坐標系中,選擇距離較遠的3個節點作為網絡基準點,對于大多數情況下,能夠獲取滿意的網絡坐標精度。
在服務器部署方案設計過程中,由于服務器部署方案中的節點位置選擇和資源部署都屬于靜態過程,而且在較長時間不會發生改變,因此,用于服務器部署應用的網絡坐標系統的基準點選擇需要定義一系列新的準則,因此,基準點選擇可采用如下3種準則:
1)被選擇的基準點間的網絡距離應該足夠大;
2)基準點的個數應該比網絡坐標維度數大;
3)基準點應盡量選擇靠近骨干網絡POP處.
在一個網絡坐標空間里,如果用N表示節點集,i,j表示空間中兩點,xi, xj分別表示點i和點j在坐標系統中的坐標向量,d(i,j)表示點i和點J間在坐標中的距離函數,則有
顯然,選擇的基準點間的網絡距離應該足夠大時,才能保證測量數據的精度。
一般來說,使用基準點構建網絡坐標系統時,基準點和網絡坐標維度存在如下關系:N>d+1,其中,N表示基準點個數,d表示網絡坐標系統的維度數。
此外,在基于網絡的服務器部署方法中,構建網絡坐標的核心任務是以盡量小的測量成本來獲取完整的網絡結構信息,便于實現服務器部署的選址和資源分配工作,因此,基準點的部署應該選擇能夠直接獲取較多網絡信息的位置,在Internet中,PoP( point-of-presence)位于不同ISP相互連接的位置,能夠直接獲取更多和更準確的網絡信息,是部署網絡基準點合適的地方。
3. 2 聚類算法
在已構建的網絡坐標基礎上,本文采用聚類方法來實現服務器部署.聚類是一門有著廣泛應用的技術,其目的是將一個數據集劃分為不相連的有相同屬性的簇,在許多方面都有著重要的應用,包括K一均值算法(k-Means)和分層聚類算法(Hierarchical Clustering),其中,k-means算法的算法復雜度O( ktn)依賴于初始聚類質心選擇,而分層聚類算法具有固定算法復雜度O(n2),與商業系統簡單穩定的思想較為穩合,故本文采用采用分層聚類算法,但O(n2)的算法復雜度在樣本數量巨大時顯然不適用,為此,文章利用網絡坐標系統中樣本具有空間屬性這一特點,先對樣本進行初聚類,以減少樣本數,從而達到降低系統運算復雜度,算法流程如下所示:
1)將所有樣本所在的空間H均勻的劃分為perk個區域,計算每個區域的樣本數P和質心點的坐標,即為P個初始樣本點;
2)設初始時共有P個類,每個類由一個對象類成,令順序號m=0,L(m)=0;
3)在D中尋找最小距離d[(r),(s)]=mind[(i).,(J)];
4)將兩個類(r)和(s)合并成一個新類(r,s);另m=m+1,L(m)=d[(r),(s)];
5)更新距離矩陣D:將表示類(r)和類(s)的行列刪除,同時加入表示新類(r,s)的行列;同時定義新類(r, s)與各舊類(k)的距離為d[(k),(r,s)〕=min d[(k),(r)],d[(k),(s)];
6)反復步驟2-4,直到所有對象合并成k個類,并找出這k個類對應的質心位置坐標;
7)根據服務器部署成本和用戶體驗,每個區域中選擇合適的服務節點;
8)分配服務器服務的用戶和需要的資源;
9)將邏輯節點按照服務用戶在物理位置的分布,進行重新選擇,并最終得到服務器部署方案
上述算法同時考慮到用戶在網絡的密度分布、服務器部署成本和用戶體驗(服務延遲)等3種因素,在該算法中,通過質心選擇,實現了現實中服務器部署需要考慮的用戶分布密度,保證網絡流量的本地化,基于聚類的結果,算法在服務器選擇過程中,考慮了傳統服務器部署設計中的兩個主要因素:用戶體驗和部署成本,如當系統需要盡量保證用戶服務質量時,可選擇離質心最近的網絡節點來部署服務器;當系統設計者追求部署成本最低時,可以選擇部署成本最低但離用戶較近的網絡節點來部署服務器,由于網絡坐標僅考慮了不同用戶在網絡中的邏輯距離(延遲),因此,對網絡坐標中的用戶采用聚類的方法來構建的服務器部署屬于邏輯部署,而現實中的服務器部署則需要在具體物理位置放置服務器,這一過程則通過步驟9來完成。
4 部署性能驗證
為了驗證基于網絡坐標服務器部署方案的可靠性和有效性,文章利用實際測量數據來網絡坐標部署方案與傳統服務器部署方案的相關性能進行了對比,在這里,針對不同服務器部署方法,文章用Ping測量數據來構建網絡坐標,將TraceRoute測量數據用于傳統服務器部署方法,其中,基于Ping的測量過程利用了分布在全國13個地方的13臺服務器,服務器每兩小時自動運行一次,對130萬個有效IP進行一次Ping測量,并記錄對應的測量數據測量時間持續了一周,Paris-traceroute測量程序則運行在中國22個省部署的30個服務器節中的228臺服務器上,然后通過這些服務器對130萬個有效IP做了為期3個月的TraceRoute的測量。
4.1坐標基準點選擇
圖2是幾種不同網絡基準點在同一時刻的測量數據下構建網絡坐標的性能對比圖,該圖采用網絡坐標構建性能采用文獻4所采用的相對誤差,其中,實線是依照文獻的方法選擇出的5個網絡基準點,然后構建的4維網絡坐標;單劃線表示依本文提出的網絡坐標基準點選擇原則選擇出的網絡坐標基準點構建的4維網絡坐標;而雙劃線則是根據文獻[4]網絡坐標選擇原則選擇出9個點,并構建的8維網絡坐標。
圖2幾種網絡基準點的網絡坐標誤差累計分布圖
從圖2可以看出,9(8)網絡坐標系統具有最好的準確性,而依據本文提出的網絡坐標基準點構建方式構建的網絡坐標系統雖然在準確性上要低于9(8)坐標,但卻優于利用同等網絡基準點數量構建的網絡坐標系統。
圖3和下頁圖4顯示了基于網絡坐標服務器部署方案的相關性能曲線,其中圖3展示了服務性能隨服務器部署數量變化趨勢,圖4顯示了部署成本隨服務器部署數量變化曲線,由圖3、圖4看出:
圖3聚類數量與響應延遲間的關系曲線
圖4聚類數量與部署成本間的關系曲線
1)部署成本隨聚類數增加而增加,響應延遲則隨聚類數量增加而減少,圖3和圖4都表明,無論在凌晨4時還是在晚上10點,服務性能曲線都隨聚類數量增加而減少,部署成本則隨聚類數量增加而增加;
2)響應延遲受網絡環境影響較大,而部署成本則受網絡環境變化不明顯,圖3表明,在任意時刻,晚上22時的響應延時都位于凌晨4時的響應延時之上,而圖4的兩天曲線則基本上重合,很難區分其優劣。
圖5是在基于網絡坐標的服務器部署方案下,服務性能與部署成本間的變化關系,顯然,服務性能隨部署成本增加而增加,且晚上22時的曲線變化更強烈因此,為了確保系統的服務性能,需要提高部署成本,這與現實生活中直觀印象較為穩合,同時,由圖5還可看出,雖然響應延遲隨部署成本增加而減少,但二者不是線性關系,在部署成本較低時,響應延遲隨部署成本增加急劇下降,而當部署成本增加到一定值時,響應延遲基本趨于穩定因此,可以找出全局的最佳性價比部署方案,具體方法為:對部署成本一響應延遲曲線求導數,并取絕對值,找出最大的絕對值導數值所在的點,即為最佳部署方案。
圖5部署成本與響應延遲曲線
4. 2服務器部署性能
為了驗證基于網絡坐標服務器部署方案的有效性,文章比較了基于網絡坐標部署方案的性能和傳統的服務器部署方案的性能,其中,傳統服務器部署模型式(2)所示:
由于上述服務器部署問題是一個NP-Hard問題,為了確保理論結果的準確性,文章分別在Maflab中采用經典的linear programming (LP)算法和直接使用lingo自帶的優化算法等兩種算法來獲取結果,如表1所示。
表1的理論分析中,為了獲取完整準確的網絡信息,節點間網絡延遲是通過Paris-uaceroute測量方法獲取的,對應區域的用戶分布則采用CNNIC的2009年年度報告數據,對比表1傳統理論模型的部署結果可知:無論是在部署點的選擇,還是部署成本和服務性能的估計中,上述兩種算法都相同,因此,有理由認為基于傳統部署理論模型獲得的部署方案具有較好的準確性。
表1基于網絡坐標的部署方案和傳統部署方案性能對比表
對比表1中基于網絡坐標的部署方案和基于傳統理論的部署方案,可以得出如下結論:
1)測量成本低:傳統服務器部署方案采用了228臺服務器,進行了為期1個月的Paris-traceroute測量,而基于網絡坐標的服務器部署方案只利用了5臺服務器進行了為期一周的ping測量,可以看出,與傳統服務器部署方法相比,基于網絡坐標的服務器部署方法投人成本更少,可以通過更少的網絡測量數據就能獲取準確的網絡信息。
2)部署方案展現直觀:基于網絡坐標的服務器部署方法可以通過圖的形式直觀表示出部署成本、服務性能(網絡延遲)和綜合部署成本隨最優部署方法的變化曲線,同時實現傳統服務器部署理論中的facility location和k-median兩種模型的優點。
3)取得優化的部署部署性能:表1分別給出基于網絡坐標的服務器部署在網絡條件最好和最差時刻的部署方案(包括部署成本、服務性能以及綜合性能等),理論分析給出相同備選節點情況下的服務器部署方案,可以看出,理論分析的部署服務性能要略優于網絡最差情況下的基于網絡坐標部署方案但劣于網絡最佳時刻的基于網絡坐標部署方案(基于網絡坐標服務方案選取的服務節點數為12,對應的最小部署成本值為1,最大部署成本為1.6,最小響應延遲為42ms最大響應延遲為60ms理傳統部署方案則選擇13個部署點,部署成本為1.65,響應延時為55. 8ms)。
4)能在整個網絡中實現節點選擇:基于網絡坐標確定了12個物理位置部署服務器,而基于傳統理論的部署方案則選擇了13個物理位置部署服務器,共同選擇的節點數為6,結合規律3可以看出,基于網絡坐標部署方案能以較少的節點部署數量獲得優化性能,即能實現服務器部署的全局優化。
這一現象是由傳統理論分析中數據不完整造成的,在傳統部署理論分析過程中,為了獲得較完整的網絡信息,利用30個不同節點的228臺測試服務器,進行為期3個月的數據測量,而部署理論構建模型的求解時也以上述30個節點為備選服務節點,顯然,這些備選節點不能覆蓋國內所有區域,而基于網絡坐標雖然僅僅利用5個節點作為網絡基準點,但通過網絡坐標的計算,可以獲得全國范圍的邏輯網絡結構信息圖,對應的部署方案可以選擇出任意物理位置,原則上可以獲得全局的最優,如表1中基于網絡坐標的部署方案包含三個傳統部署理論分析中備選節點之外的節點(陜西、云南和新疆),而在傳統部署理論分析過程中,只能從備選的22個節點選擇出最優的部署方案,從而改變可能存在的最優部署方案。
5 結論
服務器部署問題一直都是一個熱點問題,但傳統服務器部署存在網絡信息獲取不完整和搜索算法的效率隨樣本數量增加而急劇下降的缺陷,為了解決網絡信息獲取不完整的問題,本文引入網絡坐標的測量方法,利用網絡坐標方法來以少量測量成本獲得更完整的網絡信息,同時,針對網絡坐標系統的特性以及商用系統的特點,引入分層聚類算法并加以改進,使之更適合服務器部署實驗結果表明,與傳統的服務器部署方案相比,基于網絡坐標的服務器部署方案除了能在網絡全局范圍內獲得優化之外,還具有測量成本低,且部署方案直觀等特點。
核心關注:拓步ERP系統平臺是覆蓋了眾多的業務領域、行業應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業務領域的管理,全面涵蓋了企業關注ERP管理系統的核心領域,是眾多中小企業信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網http://m.hanmeixuan.com/
本文標題:一種新的服務器部署及其關鍵技術