網絡多硬盤復制機綜述
時間:2022-05-24 09:05:00
導語:網絡多硬盤復制機綜述一文來源于網友上傳,不代表本站觀點,若需要原創文章可咨詢客服老師,歡迎參考。
1概述
隨著計算機犯罪的不斷增加,作為計算機科學、信息安全科學、法學和刑事偵查學交叉學科的計算機取證(ComputerForensics)技術[1]越來越受到人們的關注。計算機犯罪使得公眾蒙受重大損失,而電子數據證據不同于傳統犯罪證據在于它們更加容易消失和被破壞,因此,打擊計算機犯罪的重點在于找到充分可靠的電子證據。計算機取證是個技術性復雜性要求都比較高的工作,包括物理證據獲取和信息發現2個階段[2]:(1)物理證據獲取是指司法調查人員來到計算機犯罪現場,尋找并扣留相關的計算機軟件和硬件,要確保原始證據不受到任何破壞;(2)信息發現是指從原始數據中,尋找可以用來證明或者反駁什么的證據,主要由計算機證據的固定保存、計算機證據的提取、計算機證據的鑒定分析,以及計算機證據的表達構成[3],在整個過程中,必須保證電子證據的真實、可靠、完整并且符合法律規定。上述電子證據的固定保存、提取、分析等過程都是分立的,而目前基于硬盤到硬盤復制的取證保全模式,一般是一對一或者一對多的形式,具體來說就是通過硬盤復制機將源硬盤的數據克隆到另一個或者多個目標硬盤上。但是遇到某些案件需要保存分析很多硬盤時,一個一個復制未免耗費大量的時間與人力,這就需要鑒定工作室配備大量的復制機及空白硬盤,其次克隆好的目標硬盤在鑒定完成后,需要備份備查,這樣就造成設備的閑置和浪費。綜上考慮,由于上述電子取證模式存在著操作復雜、效率低的缺點,并且需要人工干預,自動化、智能化水平很低,因此本文設計并實現一個基于網絡的多對多硬盤復制機。
2網絡多硬盤復制機的系統架構
網絡多硬盤復制機的系統架構如圖1所示,其在物理上是由高速大容量存儲網絡、12路熱插拔硬盤托架、網絡多硬盤復制機、鑒定終端等子系統組成。由圖1可知,所有子系統通過交換機連接到千兆以太網絡環境中。大容量存儲設備主要用于存儲電子介質的鏡像,存儲服務器管理著存儲設備的讀寫,網絡多硬盤復制機通過網絡將硬盤托架上需要鑒定的多個源硬盤分別做成文件鏡像,并通過高速存儲網絡保存到存儲設備中,在該復制過程中,硬盤復制機會實時地顯示運行狀態,在復制完成后,將文件鏡像的校驗碼記錄在日志中;當硬盤鏡像復制完成后,鑒定終端用于對存儲設備上的硬盤鏡像文件進行數據恢復和鑒定分析等。
3系統設計與實現
3.1高速存儲網絡設計
因為網絡硬盤復制機對傳輸速度要求很高,所以高速存儲網絡的結構設計非常關鍵。如圖1所示硬盤復制機、鑒定終端、存儲服務器通過存儲區域網絡(StorageAreaNetwork,SAN)連接到交換機上。存儲服務器主要將SAN環境中的磁盤陣列和磁帶庫統一管理起來并形成一個共享文件系統,于是每個直連在SAN網絡的主機都可以以光纖的高速度訪問文件系統,這樣不必通過網絡在主機間拷貝文件提高系統性能,而且降低磁盤存儲成本。硬盤復制機通過存儲網絡將數據鏡像保存到磁盤陣列中,鑒定終端通過存儲網絡讀取存儲設備中的數據鏡像進行鑒定分析處理。用戶無須在網絡上的主機間復制或移動文件,從而實現內容的高速提取、快速并行處理及異構環境下的數據共享。
3.2復制機和硬盤托架的通信協議選擇
iSCSI(InternetSCSI)[4]是基于IP協議的技術標準,在TCP/IP協議上傳輸SCSI命令,實現SCSI和TCP/IP協議的連接。網絡硬盤復制機、硬盤托架通過iSCSI協議進行通信,在協議中,硬盤托架其實相當于一個iSCSITarget設備,而硬盤復制機充當著iSCSIInitiator設備。硬盤托架將接收到的iSCSI命令包解析成對磁盤設備的操作,并將結果傳送回硬盤復制機。于是在硬盤復制機上,通過iSCSI發送Login命令后掛載硬盤托架上的磁盤后,使用托架上的硬盤就像訪問本地的SCSI設備一樣簡單。上述內容的完成都無需用戶干預,而且對終端用戶是完全透明的。
3.3硬盤托架的硬件設計
硬盤托架在iSCSI協議中,扮演著Target的角色。設計的硬盤托架同時支持4個復制單元共12個硬盤插拔,硬盤復制單元結構示意圖如圖2所示。由圖2可知,每個單元共有3個硬盤接口(支持IDE及SATA硬盤接口、USB接口、多功能讀卡器接口),硬盤通過一個特制的硬盤轉接卡插到硬盤托架上。為確保硬盤插進硬盤托架后數據不能被修改,要對每個硬盤接口進行寫保護。另外還需要對每塊硬盤能進行編號描述處理,這可以通過iSCSI目標命名方式來實現。
3.4網絡硬盤復制機的設計與實現
網絡硬盤復制機在iSCSI協議中,扮演著Initiator的角色,負責將對磁盤設備的操作封裝成iSCSI命令包然之后,通過iSCSI協議發送給硬盤托架。復制機通過IP地址連接上硬盤托架并且將插槽位置上的硬盤加載到本地,于是在復制機上,可以操縱硬盤托架上的硬盤了。圖3描述網絡硬盤復制機的工作職能。在用戶與界面進行交互指定硬盤后,復制機根據用戶選擇的硬盤進行復制,在復制工作中,界面上還會實時的顯示硬盤復制進度、即時復制速度、已用時間等相關信息。除此以外,用戶還可以對硬盤復制任務進行控制,包括暫停、恢復甚至取消復制等。所有的這一切都通過用戶與界面的交互來完成。復制任務完成后,系統會將鏡像和相關的校驗碼保存到存儲設備中以供后續的分析。
3.4.1主界面通過iSCSI協議,由于用戶可以在網絡硬盤復制機的界面上對硬盤托架上的硬盤進行操作,因此知道界面上模擬硬盤與實際硬盤架上硬盤的對應關系是必不可少的。設計中硬盤復制機的邏輯主界面模擬硬盤托架的物理架構,即每一個硬盤都與遠程硬盤托架上具體的插槽相對應。由于在硬盤托架的設計過程中,對每個插槽的硬盤進行相應的iSCSI命名,因此在復制機上可以獲知每個硬盤的在iSCSI協議下的名稱。圖4為盤復制機的模擬硬盤托架主界面。由圖4可知,指示燈顯示硬盤的工作狀態。當指示燈為綠時,顯示該位置的硬盤正處于工作狀態,對應于硬盤托架上的同等位置上的插槽位置安放了硬盤;而指示燈熄滅則表示硬盤托架上的相應插槽位置沒有硬盤或者硬盤已經拔除。通過這樣的對應關系,用戶可以方便地對硬盤進行辨識和一系列操作。
3.4.2硬盤復制任務硬盤復制機的主要任務在于對硬盤進行原始鏡像。傳統的硬盤復制機主要將其原始數據寫入另一個空白硬盤中,然而這勢必造成資源的浪費。本文硬盤復制機與之不同,將鏡像寫入磁盤陣列,并且記錄相對應的哈希校驗碼。這樣做,一方面可以方便的對檢材進行備案,另一方面也被用作后續的鑒定任務。支持的硬盤鏡像有2種:(1)DD文件,也就是硬盤原始二進制數據的完全克隆;(2)EWF(EncaseWitnessFormat)文件[5],EWF通過二進制模式復制原始硬盤或媒介計算MD5哈希值驗證相關鏡像文件,另外,計算CRC校驗值確定證據是否被改變。EWF是電子取證領域中的證據文件,文件包含有3個組成部分,即文件頭、校驗值和數據塊,這3個部分可有效防止數據被篡改,并可重新恢復成數據的原始狀態。而DD鏡像文件不包含文件頭和校驗值。傳統的硬盤復制機每次只能復制一個硬盤,而本文設計的網絡多硬盤復制機可以支持多個硬盤同時復制。在復制過程中,同時進行MD5、SHA128和SHA256多種哈希校驗。在界面上會實時顯示復制進度,包括完成百分比和即時速度等。此外用戶可控制復制進程包括暫停、恢復和取消復制等。為最大化的利用資源并且提升復制速度,在每個硬盤的復制任務中采用多線程。系統預先分配一個線程池,主線程負責處理及與用戶的交互,在線程池中的線程主要處理硬盤的復制任務。之所以設計這樣的線程池,是為防止系統頻繁的創建線程造成內存碎片和復制速度的顛簸。每當用戶指定一個硬盤復制任務,主線程將該任務放到任務隊列中,并通知線程池中的對應線程進行處理。每個硬盤復制任務又具體分為3個線程,即讀取硬盤數據,對硬盤數據進行哈希校驗,寫鏡像文件到磁盤陣列中。圖5具體描述這3個線程之間的同步算法。借鑒生產者消費者的線程模式[6],系統分配一個環形緩沖區,讀線程首先檢測緩沖區中是否有空閑的緩沖塊,如果緩沖區滿了就等待,否則循環讀取一定數目的硬盤塊數據到緩沖塊中,并且喚醒相應的校驗線程;校驗線程對緩沖塊的數據進行哈希校驗,完之喚醒寫線程;寫線程主要取出對應的緩沖塊,將其數據寫進鏡像文件中,并且通知讀線程該緩沖塊的數據已經清空。讀、校驗、寫這3個線程之間互相同步競爭,可以保證復制任務的順利進行。
3.4.3硬盤托架的實時監控當用戶在硬盤架上插入新的硬盤,或者在某個插槽位置拔掉硬盤時,在復制機界面上,必須實時反映這個熱插拔情況。設置一個定時器用于查詢硬盤托架上的硬盤變動情況。由于硬盤復制機的主要任務是克隆硬盤鏡像,因此如果將這個定時查詢器放在前端,勢必與復制機主程序爭端資源。具體來說,一方面會造成復制速度的降低,另一方面還會造成復制機主界面的“假死”。將其設計成一個系統服務,在與復制機主程序分離之后放在后端,一旦發現硬盤托架上的硬盤變動情況,發送相應的消息給復制機主程序。復制機主程序監聽該服務,一旦接收到新的消息,隨時更新硬盤狀態。
4實驗結果與性能分析
4.1系統軟硬件配置
存儲服務器與硬盤復制機的硬件配置分別為IntelXeonE5420CPU2.50GHz,16GB內存。硬盤托架的硬件配置為IntelXeonE5506CPU2.13GHz,4GB內存。磁盤陣列則由12個SAS硬盤擴展到6.7TB。硬盤復制機和存儲服務器都用過QLogicHBA卡連接到光纖交換機上。交換機為千兆。復制機采用支持跨平臺編譯的Qt軟件包[7]實現,這樣可運行在Windows和Linux2種操作系統平臺上。實驗機器軟硬件配置如表1所示,其中CPU都為IntelXeon。
4.2存儲系統性能分析
衡量存儲系統的性能有許多評價指標[8],本文主要采用吞吐率和響應時間。在實驗中采用Iometer工具[9],設置3種模式,分別為連續讀、連續寫、以及讀/寫混合操作,并且針對不同的I/O請求數據量的大小進行測試,能反映存儲系統在處理不同大小數據包時的性能差異。吞吐率曲線如圖6所示和平均響應時間曲線如圖7所示。由圖6、圖7可知,隨著每個I/O請求的數據量增加,單位時間提交的I/O請求會越少,這樣存儲系統在單位時間內用于處理I/O請求的時間就會減少,從而提高數據傳輸速度。另外從數據的讀寫來看,明顯的讀操作的處理速度比寫操作要快大約20%。
4.3復制機的性能分析
首先比較與傳統硬盤復制機的復制速度,表2列出市面上3種常見的硬盤復制機以及本文的網絡多硬盤復制機(簡稱本文)的各種性能參數(包括復制方式、哈希類型等)比較。由表2可知,本文復制機速度是在只對單個硬盤進行復制時測試得到,其他復制機的速度都是從官方說明書上獲取的數據(由于傳統復制機要將硬盤備份到空白硬盤上,為了節約成本,因此對這些復制機沒有進行實驗,只是簡單的列出了說明書上的官方數據)。由此可見,本文復制機在只復制一個硬盤時的速度上與主流復制機不相上下,另外在硬盤接口上,哈希校驗類型上也與主流復制機大致相同。從表2的硬盤復制方式這一列可以看出,傳統的復制機的復制方式是一對一或者一對多,即將源每次只能將一個硬盤數據寫入到另一個或者多個目標硬盤上,而網絡多硬盤復制機的復制方式是多對多,同時對多個硬盤進行復制,并將這些硬盤的鏡像數據分別保存到每個鏡像文件中。接下來分析復制機在多個硬盤同時復制下的性能。實驗采用一個U盤、4個IDE接口、7個SATA接口共12個硬盤(容量總大小為5.71TB),表3是多個硬盤同時復制的時間和平均復制速度,其中,BB表示平均復制速度。由表3可知,網絡多硬盤復制機同時復制多個硬的性能明顯比只復制單個硬盤要好,此外SATA硬盤的復制速度也相比IDE硬盤要快。隨著硬盤并行復制數目的增多,總復制速度也相應的提升,當硬盤復制的并行數為5時,速度達到5.12GB/min。在這之后,平均復制速度會隨著硬盤復制的并行數的增多而下降,比如在并行數為7時,速度為5.03GB/min。表3的最后2行是針對所有12個硬盤進行復制,但是最大的并行數并有設置成12,原因在前面已經描述。復制機維護復制隊列和就緒等待2個隊列,所有請求復制的硬盤按照一定規則進行排序并提交給系統,先來的硬盤進入復制隊列,當復制隊列的數目多于系統支持的最大硬盤復制的并行數時,硬盤則相應地進入就緒等待狀態。只要復制隊列中有硬盤完成復制,系統就會喚醒處于就緒隊列的一個硬盤使其進入復制狀態。實驗結果表明,所有12個硬盤大約在15h完成,復制速度大約在6.5GB/min左右,這接近了千兆帶寬網絡的80%。
5結束語
本文設計并實現一種面向電子取證的網絡多硬盤復制機。該復制機通過網絡對遠程硬盤托架上的多個硬盤進行數據備份,并將鏡像文件保存到大容量存儲設備中,以方便鑒定終端挖掘存儲設備中的鏡像信息。實驗結果表明,在最佳配置下,能夠快捷、高速地對多個硬盤進行取證,達到硬盤復制機領域的領先水平。今后的研究方向是利用網絡帶寬提升復制速度。
- 上一篇:全縣尾菜處理工作方案
- 下一篇:市人口優生服務方案