王志男
國電南京自動化股份有限公司 江蘇 南京 211100
在傳統的電網系統方案中,主備機切換主要通過在機器間傳播代表本機節點進程運行狀態的心跳來體現節點是否正常工作。當心跳停止時備機進程激活,承擔相關工作。由于進程的特殊性,進程心跳判斷進程狀態是不盡合理的,如進程可能在某些資源死鎖的情況下依然存在心跳,但此時已經影響了系統正常運行。
可信計算[2]認為,當實體按照設計者預期運行時即為可信,而實體在特定條件下的狀態都是可預期的。TNC基本架構是基于可信計算思想,通過將本節點運行狀態的特征值加工為不可偽造、不可篡改的信任信息發送給目標節點,目標節點按照預期特征值在本節點同樣生成一份信任信息,將兩者作比較。若信任信息相符,目標節點認定該節點可信。當域內節點都彼此認定通過后,認為實現節點間互信。對于一次可信網絡連接,分為請求者(AR)、策略執行點(PEP)、策略決定點實體(PDP)。請求者這一實體,又可以按照所屬層次由下向上劃分為三層:網絡訪問請求者(NAR)是具體的網絡請求發出者,申請建立網絡連接;TNC客戶端(TNCC)是請求者內部對信任信息的總管理者,它負責收集和使用來自完整性度量收集器(IMC)的信任信息;IMC測量請求者內各個組件,測量內容包括但不限于組件資源、組件數據、組件內可執行程序等,IMC通過其他機制可以有效防止外部對生成信任信息的干擾。目標節點作為PDP包括由下向上的三個與請求者層次相對應的組件,網絡訪問授權者(NAA)對請求者的網絡訪問請求進行決策。NAA可以咨詢上層的可信網絡連接服務器(TNCS)來判斷請求者的信任信息是否與既定的安全策略一致,從而決定請求是否被允許;TNCS負責與TNCC之間的同層通信,并讀取來自完整性度量驗證器(IMV)的驗證結果,綜合研判后傳遞給NAA;IMV對傳遞過來的請求者各組件的信任信息進行驗證。在可信網絡連接中,PEP扮演了AR與PDP間的中間人,以及網絡連接的決策執行人。
本文提出的方案基于TNC結構,在機器節點中統一配置對應的網絡接入判定實體,同時為避免中間人PEP轉發等環節帶來的通信負擔和降低其作用,在本方案中省去了中間環節。方案思想上,將處理包括進程心跳、資源占用、環境狀態等能真實反映節點狀態關鍵信息的信任度量方法對應于IMC,從多方角度衡量進程是否正常工作,對應各進程生成各自特征值。TNCC使用從IMC獲知的特征值作為信任信息,實現與對端同層的信任信息交互事務。這里的對端既可以包括承擔相同角色的主備機,也可以包括其他需要接受主機轉發數據的其他職能機器。比如在一般的電網主站系統中,SCADA主服務器需與備服務器發送心跳報文,同時,主服務器需將嵌入式終端上送的部分采集信息進行轉發,主服務器進程是否正常工作,既影響備服務器進程是否喚醒,也影響系統內其他機器節點是否認可轉發數據。網絡層的對應關系則具體到涉及數據交互的應用進程級別,在不同的應用實現中會采用廣播、TCP等多種不同方式,這里不做具體分析。對端TNCS處理將信任信息解析,由IMV參考正常運行下的標準特征值對比信任信息,由此對請求者做出響應。
下面以主備冗余場景說明一次典型的網絡連接步驟:
(1)在進行網絡連接前,需要確保本節點和對端雙方的連接狀態已經初始化,內容包括基本的節點間通信,節點內工作進程正常工作,可信網絡連接組件正常運行等。
(2)當本節點中的組件因業務需求要加入某群體工作時,NAR需向NAA發送請求信息,申請NAA做出決策。在主備冗余場景中,主備機都可能各自扮演NAA和NAR的角色,在自身進程為主運行時向對方發出請求。對于使用廣播通信的業務,發送相關信息這一步驟也可能是同時向多個NAR發送請求。如,主機向數據下行方向其他節點廣播發送請求。
(4)如果NAR與NAA之間的用戶身份驗證成功,則NAA通知TNCS收到一個連接請求。這里的用戶身份可以指代節點的當前登錄用戶、操作用戶。
(5)TNCS和TNCC進行平臺身份驗證,證明各自當前節點是否為合法節點或進程實體,證明請求者有權限進行業務操作。在應用場景中為驗證節點是否具備某些進程的運行條件。
(6)如果上一步的驗證通過,TNCS通知上層的IMV進行信任信息驗證,從本地獲取各進程預期特征值,同時通知IMC準備提交相關信息。
(7)TNCC和TNCS交換由其上層IMC和IMV產生信任驗證相關信息。架構底層的NAR、NAA負責轉發,直到請求者的信任狀態滿足TNCS的要求。這一部分交互并沒有嚴格的先后順序,目的是實現TNCS對TNCC的信任驗證。
(8)當完成以上信任檢測后,TNCS將給NAA發送節點狀態驗證結論,由NAA決定下一步計劃。在此,當主機個別進程狀態未通過信任驗證時,備機將該進程切換為主運行。
本文提出了一種基于可信網絡連接架構的適用于電網系統主備切換的狀態驗證方案。通過多元特征對主機運行狀態做出評估,以此代替心跳作為其他節點驗證狀態的依據。本文僅提出了方案,在實施中關鍵在于確定代表節點運行狀態的特征值。該特征值為了滿足限定,需要是嚴格且靈活的,這是進一步的研究方向。