王文波+唐成華
摘 要:涉密網絡與外界必須物理隔離,這使其成為名副其實的信息孤島,光閘等數據單向傳輸系統提供了一種有效的解決信息孤島的方案,這源于其采用了基于無反饋的數據傳輸協議。在無反饋傳輸協議中,如何確保文件被正確傳輸到目標網絡中,成為單向傳輸系統可靠性的一個重要評估標準。本文總結了目前主流的無反饋數據傳輸方案的利與弊,并在此基礎上提出一種新的可靠性解決方案,確保文件被完整、正確地傳輸到目標網絡。
關鍵詞:文件傳輸 單向傳輸 可靠性
中圖分類號:TP309 文獻標識碼:A 文章編號:1672-3791(2014)01(b)-0000-00
隨著計算機網絡技術的發展,網絡成為人們生活發展中必不可少的工具之一。但在一些涉密網絡中,由于密級要求的原因,往往需要隔離外界網絡,這逐漸形成涉密網絡的信息“孤島”效應[1]。因此需要有一種手段,可以使人們可以將一些無安全風險的信息、文件等,安全、完整地從非涉密網絡傳輸到涉密網絡,同時保證涉密網絡的信息絕對不會流出到外界網絡。使用傳統協議的文件、信息傳輸系統并不能滿足這個需要。單向傳輸系統就是為解決這個問題而出現的。
單向傳輸系統主要由三個主要組成部分:外網服務器、單向傳輸模塊以及內網服務器,如圖1所示。
單向傳輸模塊是單向傳輸系統能否達標的重要環節。如何將文件完全、完整地傳輸至涉密內部網絡,同時形成可追溯的歷史記錄,成為解決這個問題的一大關鍵技術。本文主要針對單向傳輸模塊的可靠性進行探討。
1 單向傳輸協議的可靠性
單向傳輸協議的可靠性,在很早之前就已經受到業界學者的廣泛關注。Saitoh提出了一種單向字節流的檢錯與糾錯編碼技術[2],Vaidya在Fault-Tolerant Computing會議上也提出了類似錯誤編碼的思路[3],但這些僅僅局限于通用的單向協議本身的檢錯與糾錯技術,并不能完全適合于單向文件傳輸本身。2004年出現的FLUTE[4]提供了一種單向文件傳輸協議,成為單向傳輸系統使用最多的協議之一,但仍有局限性,其為文件單向傳輸提供了完整的解決方案,使用并向糾錯碼解決了文件本身的完整性驗證問題,但并不能完全發現信道上的問題,以及實際應用中審計與可靠性需求。Jeffrey在其專利中介紹了一種類似同步信號的機制[5],服務器定時發布同步信號,接收機器定時獲取服務器發布的同步信號,以確保傳輸信道的通信正常,但是這種機制的提出,并不是專門為單向傳輸系統所設計的,且僅提供了一種檢測信道正常的方案,也不能完全滿足需求。之后相繼出現了多種完整的解決方案,包括以下幾種:
1.1 日志比對方案
該方案是最簡單最直接的方案,發送模塊與接收模塊分別在發送成功與接收成功時,各記錄一份日志,人為將兩份日志文件進行人工比對或程序自動化比對。該方案的主要缺點就是需要太多的人工干預,無論是進行人工比對還是進行程序自動化比對,需要人工從外網服務器將日志帶入內網服務器。
1.2 雙機冗余方案
該方案是采用兩個單向傳輸硬件冗余方式,采用兩套一模一樣的發送設備,發送模塊與接收模塊分別各自記錄一份發送日志與接收日志。通過定期的人為方式,將兩份發送日志與兩份接收日志進行人工比對還是進行程序自動化比對,同時將發送日志與接收日志進行比對,得到遺漏清單。
該方案解決了需要人工將日志帶入內網進行比對的缺點,但存在硬件資源嚴重浪費的問題,也不是最佳的解決方案。
1.3 分流冗余方案
該方案采用單個單向傳輸硬件加分流方式,通過數據包分流方式,將傳輸的數據復制一份,同時發給本地,將已發送的日志與分流得到的日志進行比對,得出遺漏信息,同時定時比對發送日志與接收日志,得到遺漏清單。
該方案是上一方案的一種變體,解決了硬件資源浪費的問題,但是并沒有在根源上解決可靠性的問題,反而可能造成重要信息的遺漏。因為該方案只能在外網服務器保證文件已傳出,但是并不能檢測到傳輸線路上、或者接收模塊上的錯誤,造成不必要的損失。
1.4 定時同步信號方案
該方案包括兩部分內容:首先,外網服務器會定時發送一個同步信號,使得內網機器能夠判斷單向通信線路的連通性;同時,在文件傳輸時,會生成一個連續的流水號,內網服務器能夠根據這個流水號的連續性,判斷文件傳輸過程中是否產生信息丟失,若發生丟失,則產生報警。
該方案解決基本上解決了需要人工參與的缺點,但是該方案有一個使用上的局限性:由于其依賴流水號的連續性來判斷文件傳輸的正確性,因此該方案只適用于使用單進程、單根光纖的情況。
2 方案設計
本文在總結現有的幾種解決方案的基礎上,提出一種無需人工參與比對過程,且適用于多進程、并發、多光纖傳輸線路的可靠性解決方案。
本方案主要包含四個模塊,分別為發送模塊、外網同步模塊、接收模塊、內網同步模塊,如圖2所示。
2.1 發送模塊
外網發送模塊主要負責如下任務:
(1)接收新文件,獲取文件名、文件大小、文件哈希校驗值(md5)等內容;
(2)發送文件;
(3)若文件發送成功,則將步驟(1)的內容添加到發送清單;
(4)否則,記錄發送失敗日志。
2.2 外網同步模塊
外網同步模塊除了具備上述1.4方案中的功能之外,還負責如下任務:
(1)新建同步文件;
(2)將上次同步時間與當前時間分別寫入上一步的同步文件;
(3)從發送模塊中的發送清單中,獲取上次同步時間與當前時間內所有發送成功的文件信息,并寫入步驟(1)的同步文件內;
(4)將同步文件交給發送模塊傳輸到內部網絡。endprint
2.3 接收模塊
接收模塊主要負責如下任務:
(1)接收文件;
(2)檢驗文件完整性;
(3)若文件正確,則獲取文件名,計算文件大小、文件哈希校驗值(md5)等內容,并將這些內容添加到接收清單中;
(4)否則,記錄接收失敗日志。
2.4 內網同步模塊
內網同步模塊負責如下任務:
(1)接收同步文件;
(2)解析接收到的同步文件,獲取該文件指定的時間范圍與對應的時間范圍內成功發送的文件清單;
(3)從接收模塊獲取步驟(2)的時間范圍內成功接收的文件清單;
(4)將步驟(2)與步驟(3)獲得的兩份清單進行比對,獲得遺漏的文件清單與文件校驗值不匹配的文件清單;
(5)若步驟(4)中發現錯誤,則向管理員發出報警信息(如短信、郵件通知等)。
同時,該模塊還負責啟動一個定時器,當超過指定時間還未接收到新的同步文件,則可認為當前傳輸線路存在問題,則會向管理員發出報警信息。
3 總結
表1列出了本方案與當前主流方案之間在是否需要人工比對、是否滿足低成本以及是否支持并發傳輸三方面的對比:
本文雖然提出一個新的可靠性設計思想,但是并未涉及到傳輸本身數據包完整性的問題。今后工作可以將本方案與現有的數據包檢驗技術結合,并可結合方案1.3中的設計思想,進一步實現單向傳輸系統的可靠性保證。
參考文獻
[1] 孔斌,杜虹,馬朝斌.安全隔離與信息交換技術發展及應用.計算機安全: 2003,7:39-42.
[2] Saitoh Y, Imai H. Some codes for correcting and detecting unidirectional byte errors, IEEE Transactions on Computers, 1993, Vol 42, Issue 5.
[3] Vaidya N F. Unidirectional error control codes, The Twenty-Third International Symposium on Digest of Papers, 22-24 June 1993, pp.120-129.
[4] T Paila, M Luby, R Lehtonen, V Roca, et al. FLUTE - File Delivery over Unidirectional Transport, Internet Engineering Task Force, RFC 3926, Oct. 2004.
[5] Jeffrey C Smith, J C Bandini. Electronic document delivery system in which notification of said electronic document is sent a recipient thereof, US6487599 B1. Nov 26, 2002.endprint
2.3 接收模塊
接收模塊主要負責如下任務:
(1)接收文件;
(2)檢驗文件完整性;
(3)若文件正確,則獲取文件名,計算文件大小、文件哈希校驗值(md5)等內容,并將這些內容添加到接收清單中;
(4)否則,記錄接收失敗日志。
2.4 內網同步模塊
內網同步模塊負責如下任務:
(1)接收同步文件;
(2)解析接收到的同步文件,獲取該文件指定的時間范圍與對應的時間范圍內成功發送的文件清單;
(3)從接收模塊獲取步驟(2)的時間范圍內成功接收的文件清單;
(4)將步驟(2)與步驟(3)獲得的兩份清單進行比對,獲得遺漏的文件清單與文件校驗值不匹配的文件清單;
(5)若步驟(4)中發現錯誤,則向管理員發出報警信息(如短信、郵件通知等)。
同時,該模塊還負責啟動一個定時器,當超過指定時間還未接收到新的同步文件,則可認為當前傳輸線路存在問題,則會向管理員發出報警信息。
3 總結
表1列出了本方案與當前主流方案之間在是否需要人工比對、是否滿足低成本以及是否支持并發傳輸三方面的對比:
本文雖然提出一個新的可靠性設計思想,但是并未涉及到傳輸本身數據包完整性的問題。今后工作可以將本方案與現有的數據包檢驗技術結合,并可結合方案1.3中的設計思想,進一步實現單向傳輸系統的可靠性保證。
參考文獻
[1] 孔斌,杜虹,馬朝斌.安全隔離與信息交換技術發展及應用.計算機安全: 2003,7:39-42.
[2] Saitoh Y, Imai H. Some codes for correcting and detecting unidirectional byte errors, IEEE Transactions on Computers, 1993, Vol 42, Issue 5.
[3] Vaidya N F. Unidirectional error control codes, The Twenty-Third International Symposium on Digest of Papers, 22-24 June 1993, pp.120-129.
[4] T Paila, M Luby, R Lehtonen, V Roca, et al. FLUTE - File Delivery over Unidirectional Transport, Internet Engineering Task Force, RFC 3926, Oct. 2004.
[5] Jeffrey C Smith, J C Bandini. Electronic document delivery system in which notification of said electronic document is sent a recipient thereof, US6487599 B1. Nov 26, 2002.endprint
2.3 接收模塊
接收模塊主要負責如下任務:
(1)接收文件;
(2)檢驗文件完整性;
(3)若文件正確,則獲取文件名,計算文件大小、文件哈希校驗值(md5)等內容,并將這些內容添加到接收清單中;
(4)否則,記錄接收失敗日志。
2.4 內網同步模塊
內網同步模塊負責如下任務:
(1)接收同步文件;
(2)解析接收到的同步文件,獲取該文件指定的時間范圍與對應的時間范圍內成功發送的文件清單;
(3)從接收模塊獲取步驟(2)的時間范圍內成功接收的文件清單;
(4)將步驟(2)與步驟(3)獲得的兩份清單進行比對,獲得遺漏的文件清單與文件校驗值不匹配的文件清單;
(5)若步驟(4)中發現錯誤,則向管理員發出報警信息(如短信、郵件通知等)。
同時,該模塊還負責啟動一個定時器,當超過指定時間還未接收到新的同步文件,則可認為當前傳輸線路存在問題,則會向管理員發出報警信息。
3 總結
表1列出了本方案與當前主流方案之間在是否需要人工比對、是否滿足低成本以及是否支持并發傳輸三方面的對比:
本文雖然提出一個新的可靠性設計思想,但是并未涉及到傳輸本身數據包完整性的問題。今后工作可以將本方案與現有的數據包檢驗技術結合,并可結合方案1.3中的設計思想,進一步實現單向傳輸系統的可靠性保證。
參考文獻
[1] 孔斌,杜虹,馬朝斌.安全隔離與信息交換技術發展及應用.計算機安全: 2003,7:39-42.
[2] Saitoh Y, Imai H. Some codes for correcting and detecting unidirectional byte errors, IEEE Transactions on Computers, 1993, Vol 42, Issue 5.
[3] Vaidya N F. Unidirectional error control codes, The Twenty-Third International Symposium on Digest of Papers, 22-24 June 1993, pp.120-129.
[4] T Paila, M Luby, R Lehtonen, V Roca, et al. FLUTE - File Delivery over Unidirectional Transport, Internet Engineering Task Force, RFC 3926, Oct. 2004.
[5] Jeffrey C Smith, J C Bandini. Electronic document delivery system in which notification of said electronic document is sent a recipient thereof, US6487599 B1. Nov 26, 2002.endprint