楊小琴,朱玉全
(1. 南京工業大學浦江學院,江蘇 南京 211134;2. 江蘇大學計算機科學與通信工程學院,江蘇 鎮江 212013)
信息網絡在運行、研發與演化的生存周期過程,特別是運行前期與研發中,數據架構可能需要調整,需要將數據從開發環境遷移到運行環境。對于不加任何修改的完全遷移,通過數據庫管理系統就能夠完全實現,但是大部分企業內部都擁有大量的電子數據,這些數據對企業來說都是至關重要的,因此這些電子數據大多都實現了加密,在企業的信息系統升級或進行工程管理時,加密數據遷移就變得非常重要,同時由于數據屬性不一,遷移過程繁瑣,耗時長,怎樣快速、正確地實現加密數據的跨平臺遷移,確保原始加密數據的完整性是非常關鍵的問題。
然而,大多數的數據遷移算法,并沒有考慮數據遷移過程中的數據清理問題,因此不能保證加密數據遷移之后對源網絡產生的影響與遷移后數據的質量。針對上述問題,本文依靠分析網絡環境,組建服務控制器,同時分析客戶訴求,挑選當前負載較輕的服務器作為響應,組建自適應決策模型,以此實現對網絡加密數據的跨平臺遷移。
網絡服務控制器負責管理整體服務器的網絡,其負責動態采集整體網絡內的所有數據[1],隨后對接收到的客戶需求進行分析,選取目前工作負載最輕的服務器來響應客戶的需求,進而可以充分利用數據資源。要實現上述提到的任務,擬定服務器控制器就需要考慮以下幾點問題:
1)怎樣有效地量度所有網絡服務器的工作負載;
2)怎樣采集和交換每個服務器之間的負載信息;
3)怎樣有效地分配各個服務器。
在每個服務器負載信息交換與采集的過程中,服務器只和服務控制器進行通訊[2],遷移控制器憑借得到的目前網絡內每個服務器的負載信息,決定通過哪個服務器去運行目前客戶的請求。
在存在很多用戶進行加密數據請求的時間段中,網絡內所有服務器都會較為繁忙,而這個時候因為很多加密數據只是單獨地儲存在某個或一些網絡服務器內,而這些服務器因為響應用戶的請求處于阻塞的情況,因此不能響應其他用戶的請求,而唯一的解決方式就是把這些用戶需要的加密數據從這些服務器內遷移出去。然而一邊供給服務,一邊再把大量的加密數據從一個服務器跨平臺地遷移到另一個網絡服務器內,勢必會提高網絡的阻塞程度[3,4],同時也很容易被惡意攻擊者有目的性的攻擊。因此,要避免這種狀況的產生,本文在網絡提供服務的時候只單純地對每個服務器進行統計操作,在服務器空閑的時候再進行數據遷移操作。
對于重復率較大的加密數據跨平臺遷移,需要考慮以下幾個問題,例如,是通過周期幅值還是即到即復制的形式或其它形式;什么時間開始對加密數據進行復制,使用哪個服務器當作源服務器,哪個當作目標服務器等。
本文選擇合適的時間進行加密數據的復制,使用的算法即擬定閾值的算法,擬定存在n種加密數據,第r個服務器目前還可以接受用戶請求的能力擬定成Cr,目前該服務器的工作負載是Lr,最大服務器能力是Cmax,服務器的最大平均服務能力是Cagv,那么:
Cr=Cmax-Lr
(1)
擬定所有網絡服務器的閾值是Rr。只有在Cr>Rr時,會對加密數據進行復制,這個時候才會產生加密數據的跨平臺遷移,或是服務器自動產生遷移。因為加密數據的遷移是跨平臺的,還需要考慮新復制的加密數據對該服務器帶來的負載影響[5],因此需要挑選適合的目標服務器,其選用原理需遵守以下原則:
如果擬定所挑選的目標服務器是T,那么

(2)
通過式(2)能夠看出,目標服務器的挑選是需要其工作負載不能超過最大負載服務器的50%。因此本文挑選目前工作負載最小的網絡服務器當作目標服務器[6]。在同時存在多種加密數據需要復制時就需要融入競爭機制,需要搜索目前工作負載最小的服務器,最簡單的方式即,通過遷移控制器對這些服務器的負載按照從大至小的方式進行排序,隨后從T內分別挑選工作負載最小到最大的服務器當作目標服務器,這種方法較為隨機,選擇相對復雜,卻更能充分利用網絡資源。
對于每個用戶的每個加密數據的遷移請求,遷移控制器需要對該請求進行分析,按照其復雜程度將其量化為工作負載指數,同時遵照目前每個服務器的負載狀況來進行任務分配,挑選的原則即將工作負載最輕的服務器作為用戶服務,隨后通過遷移控制器把該操作疊加在目標服務器負載內,在任務完成時,再通過遷移控制器把該服務器的目前工作負載減去其已經實現的用戶遷移請求的負載指數,這樣可以更為精確地的監控所有服務器的目前工作負載情況,以便更為有效地響應用戶的遷移請求。
與加密數據[7]活躍度與價值存在關聯的要素分析,是本文研究的關鍵之一。對加密數據的活躍度與價值分析是決定加密數據跨平臺遷移策略方法有效性程度的重要因素,只有將加密數據的活躍度與關鍵性進行精確地排序之后,才可以把關鍵程度較高的加密數據與訪問頻率較高的加密數據儲存在服務器內,以提高決策模型的整體可靠性與性能。另外,加密數據的尺寸也是挑選遷移加密數據的重要因素。比如,某個網絡服務器的容量較小,假如把較大的加密文件跨平臺遷移到這個服務器內,就會占用大量的空間,而大量的加密數據隨機讀寫的問題就得不到較好的解決,且在這些加密數據進行I/O隊列之后,其余的加密數據就需要等較長的時間,所以需要優先向高性能的網絡服務器進行跨平臺遷移。下面對挑選遷移加密數據相應的參數設置、因素與提取算法等問題進行描述。
1)加密數據的用戶數量:如果一個加密數據被訪問的用戶數量越多,那么這個數據的價值就越高,所以假如一個加密數據被多個用戶訪問,那么其訪問性能就會干擾到更多的用戶。加密數據X的用戶總量通過V進行描述。在網絡內,客戶與服務器都需要被明確標注,除了客戶在申請使用網絡時臨時產生的客戶標識符以外,所有用戶都存在一個唯一的用戶名,使用過加密數據X的客戶名總量就是V。
2)對比度,對不同網絡服務器的讀寫性能差距進行測量,通過參數θ進行描述。其目標就是依靠設備的讀寫能力減少加密文件的價值,以防止剛遷移到目標服務器內的加密數據被馬上遷回,產生抖動。針對不同性能的兩種服務器,其讀寫性能的比例也是不同的。讀對比度與寫對比度分別依靠θr與θw進行表示。加密數據的讀寫速率分別使用FR與FW進行描述,FRA,FWB分別為在A與B兩種不同性能的服務器內持續讀加密數據時的速度,對應的FWA,FWB分別代表在A和B兩種性能不同的服務器上持續寫加密數據時的速度。加密數據通過服務器B向服務器A跨平臺遷移時,B內加密數據與A內加密數據的對比度計算公式為

(3)

(4)
3)加密數據大小,憑借上述分析,加密數據更適合儲存在性能高且容量較小的服務器內,擬定加密數據大小的參數是S,單位是KB。
加密數據X的價值計算模型是

(5)
為了免除運算過于復雜,本模型把半年之前的訪問頻率關鍵性同等考慮。Wi和Ri代表在ei至ei-1分鐘里加密數據X的訪問頻率。
加密數據跨平臺遷移決策模型的主要目的即憑借遷移協作模塊可利用的資源狀況、預設的目標函數、網絡運行對資源的要求與網絡性能的要求,如時間期限等,決定網絡內所有加密數據遷移任務的執行坐標[8],在源網絡服務器運行或目標服務器運行。加密數據遷移模型主要由四個基本部分構成,加密數據監控模塊、可用加密數據預估模塊,加密數據需求預估模塊與負載遷移決策引擎。圖1描述了模型的構成與每個模塊之間存在的相互關聯。
1)加密數據監控模塊,主要負責監控加密數據的可用狀況,定期收集性能數據,例如網絡服務器的負載狀況,網絡服務器的連接質量,目標服務器的負載狀況等。

圖1 加密數據遷移模塊架構
2)可用加密數據預估模塊,憑借加密數據監控模塊的監控數據,通過可用加密數據預估模塊,預估未來一段時間里可用加密數據的供應狀況,例如未來6秒里網絡連接的帶寬[9]等。具體的預估模型取決于被監控的數據特性與種類,常見的模型有指數平均值與移動平均值等。
3)加密數據需求預估模塊,預估加密數據的需求情況,例如在目前網絡服務器負載的狀況下,該模塊能夠得到服務器的計算數據,服務器的運行時間,遠程運行需要傳輸的數據量等。需求預估模塊能夠通過讀取網絡運行資源需求,或記錄網絡運行歷史加密數據的消耗,例如最近幾次的網絡平均加密數據遷移運行時間等,為網絡加密數據需求建模。
4)負載遷移決策引擎即整體決策模型的核心模塊,憑借不同的決策策略[10],依靠事先擬定的效用函數,運算運行時間、設備負載等。決定網絡內每個可跨平臺遷移任務的運行坐標,同時通知執行器運行。
為了決定一個加密數據跨平臺遷移的執行坐標,在決策流程內,決策引擎首先需要預估網絡內可用加密數據的狀況,包括網絡服務器負載、服務器計算性能,設備至服務器的端到端網絡連接帶寬,移動設備自身運算性能、電池電量狀況等。隨后,決策引擎把跨平臺遷移加密數據的需求與當時網絡可用加密數據狀況進行匹配,預算任務的本地運行時間、遠程運行時間與對應設備的能量消耗。憑借網絡運行性能需求,如運行時間是否在擬定的時間期限內完成等,以及效用函數決定網絡的每一個加密數據遷移執行坐標[11]。如果效用函數即最小化網絡運行時間,那么決策引擎就會挑選本地運行時間與遠程運行時間內最小的運行坐標。在決策引擎生成運行方案之后,即通知遷移控制器運行。
加密數據跨平臺遷移過程模型的基礎結構如圖2所示。
加密文件遷移的過程是:在獲得遷移條件以后,組建遷移數據任務隊列與主線程,在遷移調度的控制下進行遷移。將決策模型內的監控模塊分成兩個子線程,其中子線程監控網絡在進行I/O操作以后,會改變遷移任務序列中的相關數據價值排序,同時把信息傳輸到遷移控制器子模塊內,使其可以利用最新的價值序列[12],決定是否調整任務隊列。另外一個子線程負責監控網絡服務器的工作負荷,進行周期采樣,同時把結果傳輸至遷移控制模塊內,以此來擬定遷移速率。圖3為遷移流程圖。

圖2 磁盤分級儲存模型

圖3 遷移流程結構
為了證明所提方法的實用性,進行實驗,擬定網絡服務器的功率為600kW/h×2,其每小時的耗電量為2.9度,那么24h耗電計算即:600kW/h×2×24h+2.9×24=97.8kW,使用本文所設計的模型對加密數據跨平臺遷移進行管理,其管理成本分析如圖4所示。
通過圖4能夠看出,本文設計的模型,在進行加密數據跨平臺遷移管理時,能夠大大縮減數據管理的成本,在遷移的過程中隨著數據量的提升,管理成本會出現微小的提升,這就證明,所提方法能夠以最小的成本,實現對加密數據的跨平臺遷移,其原因即:所提模型內存在加密數據價值評測模塊,該模型能夠評測加密數據的價值,并進行排序,以此縮減價值程度低與沒有價值的加密數據量。

圖4 加密數據遷移管理成本
為了進一步證明所提方法的優點,對跨平臺遷移的加密數據進行響應速度實驗,在進行加密數據跨平臺遷移時,需要從網絡內調動加密數據,這就必然會干擾加密數據的訪問速度,但是,在所提模型內會對數據的遷移進行計算評估,以減少大規模的加密數據從網絡上調動的幾率,確保了加密數據的訪問速度。通過所提模型對某網絡的加密數據進行遷移,并進行實時監控記錄,獲得的對比分析如圖5所示。
通過圖5能夠看出,使用本文所提的決策模型對加密數據進行跨平臺遷移之后,加密數據的訪問速度和沒有進行數據調動時的訪問速度曲線存在波動,但相差不大,能夠證明,所提方法進行遷移的過程中,不會導致源網絡產生訪問速率降低的問題。

圖5 加密數據跨平臺遷移訪問速度
為了縮減加密數據遷移時帶來的影響,本文提出一種網絡加密數據跨平臺遷移自適應決策模型構建,通過客戶需求、加密數據質量與函數等信息與模塊,構建自適應決策模型以實現加密數據的跨平臺遷移。但所提方法構建的服務控制器,其計算加密數據質量時,需要進行大量的計算,這就導致整體模型的數據遷移速度下滑,因此下一步需要研究的課題即:在所提模型的基礎上,進行效率優化,以此提高整體模型的遷移效率。